APPLICATION LAYER
1. Peranan Application Layer
APPLICATION LAYER
Application
Layer, Layer tujuh, adalah lapisan paling atas baik di OSI maupun di TCP / IP
model. Application layer adalah lapisan yang menyediakan interface antara
aplikasi yang digunakan untuk berkomunikasi dan jaringan yang mendasarinya di
mana pesan akan dikirim. Protokol Application Layer digunakan untuk pertukaran
data antara program yang berjalan pada source dan host tujuan. Ada banyak
protokol Application Layer dan protokol terus dikembangkan. Application layer
berada pada ujung protocol stack TCP/IP. Application layer pada TCP/IP adalah
kumpulan dari beberapa komponen software yang mengirim dan menerima informasi
dari port TCP dan UDP. Beberapa komponen pada application layer hanya sebagai
alat untuk pengumpul informasi konfigurasi network dan beberapa lainnya
boleh jadi adalah
sebuah user interface atau Application Program Interface (API) yang
mendukung desktop operating environment.
OSI
dan TCP/IP Model
Fungsi yang terkait
dengan protokol Application Layer jaringan memungkinkan manusia untuk antarmuka
dengan jaringan data yang mendasarinya. Ketika kita membuka web browser atau
jendela instant messaging (IM), aplikasi dimulai, dan program ini dimasukkan
ke dalam perangkat memori di mana ia dieksekusi. Setiap program yang dieksekusi
dimuat pada perangkat yang disebut sebagai suatu proses. Dalam Application
Layer, ada dua bentuk program perangkat lunak atau proses yang menyediakan
akses ke jaringan: aplikasi dan layanan.
Application
Layer menggunakan protokol yang diimplementasikan dalam aplikasi dan layanan.
Sedangkan aplikasi menyediakan orang dengan cara untuk membuat pesan dan
layanan application layer membentuk sebuah antarmuka untuk jaringan, protokol
menyediakan aturan dan format yang mengatur bagaimana data diperlakukan. Ketiga
komponen dapat digunakan oleh program executable tunggal dan bahkan dapat
menggunakan nama yang sama. Misalnya, ketika membahas "Telnet" kita
bisa mengacu pada aplikasi, layanan, atau protokol.
Dalam model
OSI, aplikasi yang berinteraksi langsung dengan orang dianggap berada di atas
tumpukan, seperti masyarakat sendiri. Seperti semua lapisan dalam model OSI,
Application Layer bergantung pada fungsi dari lapisan bawah untuk menyelesaikan
proses komunikasi. Dalam Application Layer, protokol menentukan pesan apa yang
dipertukarkan antara host sumber dan tujuan, sintaks dari perintah kontrol,
jenis dan format data yang dikirim, dan metode yang sesuai untuk pemberitahuan
kesalahan dan pemulihan.
Protokol
Application Layer digunakan oleh kedua perangkat sumber dan tujuan selama sesi
komunikasi. Agar komunikasi berhasil, protokol Application Layer
diimplementasikan pada host sumber dan tujuan harus cocok. Protokol menentukan bagaimana
data di dalam pesan sudah terstruktur dan jenis pesan yang dikirim antara
sumber dan tujuan. Pesan-pesan ini dapat permintaan untuk layanan, pengakuan,
pesan data, pesan status, atau pesan kesalahan. Protokol juga mendefinisikan
dialog pesan, memastikan bahwa pesan yang dikirimkan adalah dipenuhi oleh
respon yang diharapkan dan jasa yang benar dipanggil ketika terjadi transfer
data.
Aplikasi
dan layanan juga dapat menggunakan beberapa protokol dalam perjalanan
percakapan tunggal. Salah satu protokol mungkin menetapkan bagaimana untuk
melakukan sambungan jaringan dan lain menggambarkan proses untuk transfer data
bila pesan dilewatkan ke lapisan berikutnya yang lebih rendah.
Application Layer merupakan salah
satu layer dalam OSI Layer model. Layer ini termasuk ke dalam kategori upper
layer atau layer yang berinteraksi dekat dengan pengguna. Secara urutan, layer
ini adalah layer yang berada di urutan paling atas, di atas Presentation Layer.
Secara umum layer ini menangani
user interface. Lebih spesifik, fungsi-fungsi yang ditangani layer ini adalah:
1. Sebagai layer yang digunakan aplikasi, terutama yang
dirancang untuk berjalan di atas jaringan.
2. Membuka peluang akses ke layanan jaringan yang mendukung
aplikasi
3. Merepresentasikan layanan yang secara langsung mendukung
applikasi user
4. Menangani akses jaringan,
pengontrolan alur, dan recovery error
Beberapa protokol yang menggunakan
layer ini adalah:
1. DNS (Domain Name Service)
2. FTP (File Transfer protocol)
3. TFTP (Trivial File Transfer Protocol)
4. BOOTP (BOOTstrap Protocol)
5. SNMP (Simple Network Management Protocol)
6. RLOGIN
7. SMTP (Simple Mail Transfer Protocol)
8. MIME
9. NFS (Netfork File System)
10. FINGER
11. TELNET
2. Penyediaan
Layanan di internet dan protocol
Protokol adalah sebuah aturan atau
standar yang mengatur atau mengijinkan terjadinya hubungan, komunikasi, dan
perpindahan data antara dua atau lebih titik komputer. Protokol dapat
diterapkan pada perangkat keras, perangkat lunak atau kombinasi dari keduanya.
Pada tingkatan yang terendah, protokol mendefinisikan koneksi perangkat keras.
Protocol digunakan untuk menentukan jenis layanan yang akan dilakukan pada
internet.
TCP/IP (singkatan dari Transmission Control Protocol/Internet Protocol)
Adalah standar komunikasi data yang digunakan oleh komunitas internet dalam
proses tukar-menukar data dari satu komputer ke komputer lain di dalam jaringan
Internet. Protokol ini tidaklah dapat berdiri sendiri, karena memang protokol
ini berupa kumpulan protokol (protocol suite). Protokol ini juga merupakan
protokol yang paling banyak digunakan saat ini. Data tersebut diimplementasikan
dalam bentuk perangkat lunak (software) di sistem operasi. Istilah yang
diberikan kepada perangkat lunak ini adalah TCP/IP stack
Protokol TCP/IP dikembangkan pada akhir dekade 1970-an hingga awal 1980-an
sebagai sebuah protokol standar untuk menghubungkan komputer-komputer dan
jaringan untuk membentuk sebuah jaringan yang luas (WAN). TCP/IP merupakan
sebuah standar jaringan terbuka yang bersifat independen terhadap mekanisme
transport jaringan fisik yang digunakan, sehingga dapat digunakan di mana saja.
Protokol ini menggunakan skema pengalamatan yang sederhana yang disebut sebagai
alamat IP (IP Address) yang mengizinkan hingga beberapa ratus juta komputer
untuk dapat saling berhubungan satu sama lainnya di Internet. Protokol ini juga
bersifat routable yang berarti protokol ini cocok untuk menghubungkan
sistem-sistem berbeda (seperti Microsoft Windows dan keluarga UNIX) untuk
membentuk jaringan yang heterogen.
UDP ( User Datagram Protokol)
UDP, singkatan dari User Datagram
Protocol, adalah salah satu protokol lapisan transpor TCP/IP yang mendukung
komunikasi yang tidak andal (unreliable), tanpa koneksi (connectionless) antara
host-host dalam jaringan yang menggunakan TCP/IP. Protokol ini didefinisikan
dalam RFC 768.
Domain Name System (DNS)
Domain Name System (DNS) adalah
distribute database system yang digunakan untuk pencarian nama komputer (name
resolution) di jaringan yang mengunakan TCP/IP (Transmission Control
Protocol/Internet Protocol). DNS biasa digunakan pada aplikasi yang terhubung
ke Internet seperti web browser atau e-mail, dimana DNS membantu memetakan host
name sebuah komputer ke IP address.
Point-to-Point Protocol
Point-to-Point Protocol (sering disingkat menjadi PPP) adalah sebuah protokol
enkapsulasi paket jaringan yang banyak digunakan pada wide area network (WAN).
Protokol ini merupakan standar industri yang berjalan pada lapisan data-link
dan dikembangkan pada awal tahun 1990-an sebagai respons terhadap
masalah-masalah yang terjadi pada protokol Serial Line Internet Protocol
(SLIP), yang hanya mendukung pengalamatan IP statis kepada para kliennya.
Dibandingkan dengan pendahulunya (SLIP), PPP jauh lebih baik, mengingat kerja
protokol ini lebih cepat, menawarkan koreksi kesalahan, dan negosiasi sesi
secara dinamis tanpa adanya intervensi dari pengguna. Selain itu, protokol ini
juga mendukung banyak protokol-protokol jaringan secara simultan. PPP
didefinisikan pada RFC 1661 dan RFC 1662.
Serial Line Internet Protocol
Serial Line Internet Protocol dianggap berkaitan erat dengan pengertian berikut
Disingkat dengan SLIP. Sebuah protokol yang memungkinkan pemindahan data IP
melalui saluran telepon. Alat bantu lainnya dalam SLIP adalah PPP yang
mendeteksi kesalahan dan konfigurasi. Sistem ini memerlukan satu komputer
server sebagai penampungnya, dan secara perlahan-lahan akan digantikan oleh
standar PPP yang memiliki kecepatan proses lebih tinggi.
Internet Control Message Protocol (ICMP)
adalah salah satu protokol inti dari keluarga. ICMP berbeda tujuan dengan TCP
dan UDP dalam hal ICMP tidak digunakan secara langsung oleh aplikasi jaringan
milik pengguna. salah satu pengecualian adalah aplikasi ping yang mengirim
pesan ICMP Echo Request (dan menerima Echo Reply) untuk menentukan apakah
komputer tujuan dapat dijangkau dan berapa lama paket yang dikirimkan dibalas
oleh komputer tujuan. protokol internet. ICMP utamanya digunakan oleh sistem
operasi komputer jaringan untuk mengirim pesan kesalahan yang menyatakan,
sebagai contoh, bahwa komputer tujuan tidak bisa dijangkau.
POP3 (Post Office Protocol)
POP3 adalah kepanjangan dari Post Office
Protocol version 3, yakni protokol yang digunakan untuk mengambil email dari
email server. Protokol POP3 dibuat karena desain dari sistem email yang
mengharuskan adanya email server yang menampung email untuk sementara sampai
email tersebut diambil oleh penerima yang berhak. Kehadiran email server ini
disebabkan kenyataan hanya sebagian kecil dari komputer penerima email yang
terus-menerus melakukan koneksi ke jaringan internet.
IMAP (Internet Message Access Protocol)
IMAP (Internet Message Access Protocol) adalah protokol standar untuk
mengakses/mengambil e-mail dari server. IMAP memungkinkan pengguna memilih
pesan e-mail yang akan ia ambil, membuat folder di server, mencari pesan e-mail
tertentu, bahkan menghapus pesan e-mail yang ada. Kemampuan ini jauh lebih baik
daripada POP (Post Office Protocol) yang hanya memperbolehkan kita
mengambil/download semua pesan yang ada tanpa kecuali.
SMTP (Simple Mail Transfer Protocol)
adalah suatu protokol yang umum digunakan untuk pengiriman surat
elektronik atau email di Internet. Protokol ini gunakan untuk mengirimkan data
dari komputer pengirim surat elektronik ke server surat elektronik penerima.
HTTP (Hypertext Transfer Protocol)
HTTP (Hypertext Transfer Protocol) suatu protokol yang digunakan oleh WWW
(World Wide Web). HTTP mendefinisikan bagaimana suatu pesan bisa diformat dan
dikirimkan dari server ke client. HTTP juga mengatur aksi-aksi apa saja yang
harus dilakukan oleh web server dan juga web browser sebagai respon atas
perintah-perintah yang ada pada protokol HTTP ini.
Contohnya bila kita mengetikkan suatu alamat atau URL pada internet browser
maka web browser akan mengirimkan perintah HTTP ke web server. Web server
kemudian akan menerima perintah ini dan melakukan aktivitas sesuai dengan
perintah yang diminta oleh web browser. Hasil aktivitas tadi akan dikirimkan
kembali ke web browser untuk ditampilkan kepada kita.
HTTPS
HTTPS adalah versi aman dari HTTP,
protokol komunikasi dari World Wide Web. Ditemukan oleh Netscape Communications
Corporation untuk menyediakan autentikasi dan komunikasi tersandi dan
penggunaan dalam komersi elektris.
Selain menggunakan komunikasi plain text, HTTPS menyandikan data sesi
menggunakan protokol SSL (Secure Socket layer) atau protokol TLS (Transport
Layer Security). Kedua protokol tersebut memberikan perlindungan yang memadai
dari serangan eavesdroppers, dan man in the middle attacks. Pada umumnya port
HTTPS adalah 443.
SSH (Sucure Shell)
SSH adalah protocol jaringan yang memungkinkan pertukaran data secara aman
antara dua komputer. SSH dapat digunakan untuk mengendalikan komputer dari
jarak jauh mengirim file, membuat Tunnel yang terrenkripsi dan lain-lain.
Protocol ini mempunyai kelebihan disbanding protocol yang sejenis seperti
Telnet, FTP, Danrsh, karena SSH memiliki system Otentikasi,Otorisasi, dan
ekripsinya sendiri. Dengan begitu keamanan sebuah sesi komunikasi melalui
bantuan SSH ini menjadi lebih terjamin. SSH memang lebih aman dibandingkan
dengan protocol sejenis, tetapi protocol SSH tatap rentan terhadap beberapa
jenis serangan tertentu. Pada umumnya serangan ini ditunjukan Pada SSH versi
pertama (SSH-1) yang memang memiliki tingkat keamanan yang lebih lemah daripada
SSH versi kedua (SSH-2). Salah satu serangan pada SSH versi pertama adalah
serangan MAN IN THE MIDDLE pada saat pertukaran kunci. Protocol SSH serta
algoritma yang digunakan pada kedua versi SSH, lalu serangan-serangan yang
terjadi pada SSH dan bagaimana SSH mengatasinya. Untuk meningkatkan keamanan
pada protocol SSH dapat dilakukan dengan cara menggunakan kartu Kriptografi
untuk autentifkasi.
Telnet (Telecommunication
network)
Adalah sebuah protokol jaringan yang digunakan di koneksi Internet atau
Local Area Network. TELNET dikembangkan pada 1969 dan distandarisasi sebagai
IETF STD 8, salah satu standar Internet pertama. TELNET memiliki beberapa
keterbatasan yang dianggap sebagai risiko keamanan.
FTP ( File Transfer Protocol )
FTP ( File Transfer Protocol ) adalah sebuah protocol internet yang berjalan di
dalam lapisan aplikasi yang merupakan standar untuk pentransferan berkas (file)
computer antar mesin-mesin dalam sebuah internetwork. FTP atau protocol
Transmission Control Protocol (TCP) untuk komunikasi data antara klien dan
server, sehingga diantara kedua komponen tersebut akan dibuatlah sebuah sesi
komunikasi sebelum transfer data dimulai. FTP hanya menggunakan metode
autentikasi standar, yakni menggunakan User name dan paswordnya yang dikirim
dalam bentuk tidak terenkripsi. Pengguana terdaftar dapat menggunakan username
dan password-nya untuk mengakses ,men-dawnload ,dan meng- updlot berkas- berkas
yang ia kehenaki. Umumnya, para pengguna daftar memiliki akses penuh terdapat
berapa direkotri , sehingga mereka dapat berkas , memuat dikotri dan bahkan
menghapus berkas. Pengguna yang belum terdaftar dapat juga menggunakan metode
anonymous login,yakni dengan menggunakan nama pengguna anonymous & password
yang diisi dengan menggunakan alamat e-mail. Sebuah server FTP diakses dengan
menggunakan Universal Resource Identifier (URI) dengan menggunakan format
ftp://namaserver. Klien FTP dapat menghubungi server FTP dengan membuka URI
tersebut.
LDAP
LDAP (Lightweight Directory Access
Protocol) adalah protokol perangkat lunak untuk memungkinkan semua orang
mencari resource organisasi, perorangan dan lainnya, seperti file atau printer
di dalam jaringan baik di internet atau intranet. Protokol LDAP membentuk
sebuah direktori yang berisi hirarki pohon yang memiliki cabang, mulai dari
negara (countries), organisasi, departemen sampai dengan perorangan. Dengan
menggunakan LDAP, seseorang dapat mencari informasi mengenai orang lain tanpa
mengetahui lokasi orang yang akan dicari itu.
SSL (Secure Socket Layer)
SSL (Secure Socket Layer) adalah arguably internet yang paling banyak digunakan
untuk enkripsi. Ditambah lagi, SSL sigunakan tidak hanya keamanan koneksi web,
tetapi untuk berbagai aplikasi yang memerlukan enkripsi jaringan end-to-end.
Secure Sockets Layer (SSL) merupakan sistem yang digunakan untuk mengenkripsi
pengiriman informasi pada internet, sehingga data dapat dikirim dengan aman.
Protokol SSL mengatur keamanan dan integritas menggunakan enkripsi,
autentikasi, dan kode autentikasi pesan. SSL protocol menyedian privasi komunikasi
di internet. SSL tidak mendukung fileencryption, access-control, atau proteksi
virus, jadi SSL tidak dapat membantu mengatur data sensitif setelah dan sebelum
pengiriman yang aman.
Protokol SSL terdiri dari dua sub-protokol: SSL record protocol dan SSL
handshake
protocol. SSL record protocol mendefinisikan format yang digunakan untuk
mentransmisikan data. Sedangkan SSL handshake protocol melibatkan SSL record
protocol untuk menukarkan serangkaian pesan antara SSL enabled server dan SSL
enable client ketika keduanya pertama kali melakukan koneksi SSL.
3. Paradigma Jaringan computer pada
Application Layer
· Client
server
· Peer
to Peer (P2P)
· Campuran
The Client/Server model
Dalam klien / server model, perangkat
yang meminta informasi disebut klien dan perangkat menanggapi permintaan
disebut server. Client dan server proses berada dalam Application Layer. Klien
mulai pertukaran dengan meminta data dari server, yang merespon dengan
mengirimkan satu atau lebih aliran data ke klien. Protokol Application Layer
menggambarkan format dari permintaan dan respon antara klien dan server. Selain
transfer data aktual, pertukaran ini juga mungkin membutuhkan informasi
kontrol, seperti otentikasi pengguna dan identifikasi file data yang
ditransfer.
Salah satu contoh klien / server jaringan
adalah lingkungan perusahaan dimana karyawan menggunakan sebuah perusahaan
e-mail server untuk mengirim, menerima dan menyimpan e-mail. Klien e-mail pada isu-isu
karyawan komputer permintaan ke server e-mail untuk setiap mail yang belum
dibaca. Server merespon dengan mengirim e-mail yang meminta kepada klien.
Meskipun data biasanya digambarkan
sebagai mengalir dari server ke client, beberapa data selalu mengalir dari
client ke server. Aliran data dapat sama di kedua arah, atau bahkan mungkin
lebih besar pada arah pergi dari klien ke server. Sebagai contoh, klien dapat
mentransfer file ke
server untuk tujuan penyimpanan. Transfer data dari client ke server disebut
sebagai meng-upload dan data dari server ke klien sebagai download.
Dalam konteks jaringan
umum, setiap perangkat yang menanggapi permintaan dari aplikasi
client
berfungsi sebagai server. Sebuah server biasanya merupakan komputer yang berisi
informasi untuk dibagikan dengan sistem klien banyak. Misalnya, halaman web,
dokumen, database, gambar, video, dan file audio semua dapat disimpan pada
server dan dikirimkan ke meminta klien. Dalam kasus lain, seperti printer
jaringan, print server memberikan permintaan klien cetak ke printer tertentu.
Selain itu, server biasanya memiliki beberapa klien meminta informasi pada saat
yang sama. Sebagai contoh, server Telnet mungkin memiliki banyak klien yang
meminta koneksi untuk itu. Permintaan ini klien harus ditangani secara
bersamaan dan secara terpisah untuk jaringan untuk berhasil. Proses Application
Layer dan layanan yang mengandalkan dukungan dari fungsi lapisan bawah untuk
berhasil mengelola beberapa percakapan.
The Peer-to-Peer Model
Selain client / server model untuk
jaringan, ada juga model peer-to-peer. Peer-to-peer jaringan melibatkan dua
bentuk yang berbeda: desain peer-to-peer jaringan dan aplikasi peer-to-peer
(P2P). Kedua bentuk memiliki fitur yang sama tetapi dalam praktik kerja yang
sangat berbeda.
Dalam sebuah jaringan peer-to-peer, dua
atau lebih komputer yang terhubung melalui jaringan dan dapat berbagi sumber
daya (seperti printer dan file) tanpa harus memiliki dedicated server. Setiap
perangkat dihubungkan akhir (dikenal sebagai peer) dapat berfungsi baik sebagai
server atau klien. Satu komputer bisa berperan sebagai server untuk satu
transaksi sekaligus berfungsi sebagai klien bagi orang lain. Peran klien dan
server ditetapkan pada basis per permintaan.
Sebuah jaringan rumah
sederhana dengan dua komputer yang terhubung berbagi printer adalah contoh dari
suatu jaringan peer-to-peer. Setiap orang dapat mengatur komputer nya untuk
berbagi file, memungkinkan game jaringan, atau berbagi koneksi Internet. Contoh
lain dari fungsionalitas jaringan peer-to-peer adalah dua komputer yang
terhubung ke jaringan besar yang menggunakan aplikasi software untuk berbagi
sumber daya antara satu sama lain melalui jaringan.
Sebuah aplikasi
peer-to-peer (P2P), tidak seperti jaringan peer-to-peer, memungkinkan sebuah
perangkat untuk bertindak sebagai klien dan server dalam komunikasi yang sama.
Dalam model ini, setiap client adalah server dan setiap server klien. Keduanya
dapat memulai komunikasi dan dianggap setara dalam proses komunikasi. Namun,
peer-to-peer aplikasi mengharuskan setiap perangkat akhir menyediakan antarmuka
pengguna dan menjalankan layanan latar belakang. Ketika Anda meluncurkan
spesifik aplikasi peer-to-peer itu memanggil antarmuka pengguna jasa yang dibutuhkan
dan latar belakang. Setelah itu perangkat dapat berkomunikasi secara langsung.
Beberapa
aplikasi P2P menggunakan sistem hibrida dimana pembagian sumber daya yang
terdesentralisasi tetapi indeks yang menunjukkan lokasi sumber disimpan dalam
direktori terpusat. Dalam sistem hibrida, setiap peer mengakses server indeks
untuk mendapatkan lokasi sumber daya yang tersimpan pada rekan lain. Server
indeks juga dapat membantu menghubungkan dua teman sebaya, tapi begitu
terhubung, komunikasi terjadi antara dua peer tanpa komunikasi tambahan ke
server indeks.
Gambar1
4. Application
Programming Interface.
Definisi
Definisi API (Application Programming Interface)
API (Application Programming Interface) adalah sekumpulan perintah, fungsi, komponen, dan protokol yang disediakan oleh sistem operasi ataupun bahasa pemrograman tertentu yang dapat digunakan oleh programmer saat membangun perangkat lunak.
Manfaat
. Probabilitas
API dapat digunakan untuk bahasa pemrograman ataupun untuk sistem operasi mana saja asalkan paket-paket API sudah terpasang.
· Lebih mudah di mengerti
API menggunakan bahasa yang lebih terstruktur dan mudah dimengerti daripada bahasa system call. Hal ini sangat penting dalam hal editing dan pengembangan.
· Mudah di kembangkan
Dengan adanya API, memudahkan programmer untuk mengembangkan suatu system.
5. Aplikasi-aplikasi standart client –
Server
· Www
dan http
WWW (WORLD WIDE WEB)
World wide web adalah sebuah sistem
informasi yang mengelola jaringan internet dengan menggunakan suatu set
protokol tertentu. world wide web atau yang biasa disingkat dengan WWW
ini diciptakan pada bulan Maret 1989 disaat sekelompok peneliti dan para ahli
bermaksud untuk menciptakan sebuah protokol baru untuk keperluan distribusi
informasi pada internet.Para peneliti ini kemudian menetapkan sebuah standar
baru yang merupakan cikal bakal terbentuknya sebuah consortium yang lazim
dikenal dengan nama W3C atau World Wide Web Consortium yang bertugas untuk
melanjutkan pengembangan standart tersebut. Dibawah naungan W3C inilah para
ahli dan peneliti berhasil melahirkan bahasa pemrograman yag dikenal sebagai
HTML (Hyper Text Markup Language).
Dengan sifatnya yang menjaring data-data
yang ada di internet. WWW bukan sekedar jaringan tetapi di dalamnya terdapat
suatu set aplikasi komunikasi dan sistem perangkat lunak yang memiliki
karakteristik sebagai berikut:
Umumnya teletak pada internet host dan client.
Umumnya menggunakan protocol TCP/IP.
Menggunakan HTML.
Mengikuti model client atau server untuk
komunikasi dua arah.
Memungkinkan client untuk mengakses server dengan berbagai
protocol seperti HTTP, FTP, Telnet dan Gopher.
Memungkinkan client untuk mengakses informasi dalam
berbagai media seperti teks, audio dan video.
Menggunakan model alamat Uniform
Resource Locators (URL).
HTTP
Protocol
Ketika sebuah alamat web (atau URL) yang
diketik ke dalam web browser, web browser melakukan koneksi ke web service yang
berjalan pada server menggunakan protokol HTTP. URL (atau Uniform Resource
Locator) dan URI (Uniform Resource Identifier) adalah nama kebanyakan orang
mengasosiasikan dengan alamat web. Web browser adalah aplikasi klien komputer
kita gunakan untuk terhubung ke World Wide Web dan sumber daya akses disimpan
pada server web. Sebagaimana dengan proses server yang paling, web server
berjalan sebagai sebuah layanan latar belakang dan membuat berbagai jenis file
yang tersedia.
Browser
dapat menafsirkan dan menyajikan berbagai jenis data, seperti teks biasa atau
Hypertext Markup Language (HTML, bahasa di mana halaman web dibangun). Data
jenis lain, bagaimanapun, mungkin memerlukan layanan lain atau program,
biasanya disebut sebagai plug-in atau add-ons. Untuk membantu browser
menentukan jenis file itu adalah menerima, server menentukan jenis data yang
berisi file.
Hypertext Transfer Protocol (HTTP), salah
satu protokol dalam suite TCP / IP, pada awalnya dikembangkan untuk
mempublikasikan dan mengambil halaman HTML dan sekarang digunakan
terdistribusi, sistem informasi kolaboratif. HTTP digunakan di World Wide Web
untuk transfer data dan merupakan salah satu protokol aplikasi yang paling
sering digunakan. GET permintaan klien untuk data. Sebuah web browser mengirimkan
pesan GET untuk meminta halaman dari server web. Seperti ditunjukkan dalam
gambar, setelah server menerima permintaan GET, akan meresponnya dengan baris
status, seperti HTTP/1.1 200 OK, dan pesan sendiri, tubuh yang mungkin
merupakan file yang diminta, pesan kesalahan, atau beberapa informasi lainnya.
POST
dan PUT digunakan untuk mengirim pesan yang meng-upload data ke web server.
Sebagai contoh, ketika pengguna memasukkan data ke dalam bentuk tertanam dalam
suatu halaman web, POST meliputi data dalam pesan yang dikirim ke server.
HTTPS adalah versi aman dari HTTP,
protokol komunikasi dari World Wide Web.
HTTPS menyandikan data sesi menggunakan
protokol SSL (Secure Socket
layer) atau protokol TLS (Transport
Layer Security). Pada umumnya port HTTPS
adalah 443.
Fungsi : HTTPS melakukan enkripsi
informasi antara browser dengan web server
yang menerima informasi. Memberikan
perlindungan yang memadai dari
serangan
eavesdroppers (penguping), dan man in the middle attacks.
· Telnet
dan SSH
Telnet Protocol
Setelah jaringan yang
tersedia, orang membutuhkan cara akses jarak jauh ke sistem komputer dengan
cara yang sama yang mereka lakukan dengan terminal langsung terpasang. Telnet
dikembangkan untuk memenuhi kebutuhan itu. Telnet tanggal kembali ke awal 1970-an
dan merupakan salah satu yang tertua dari protokol Application Layer dan
layanan di TCP / IP suite. Telnet menyediakan metode standar meniru perangkat
terminal berbasis teks melalui jaringan data. Kedua protokol itu sendiri dan
perangkat lunak client yang mengimplementasikan protokol yang sering disebut
sebagai Telnet. oneksi menggunakan Telnet disebut Virtual Terminal (vty) sesi,
atau koneksi. Alih-alih menggunakan perangkat fisik untuk terhubung ke server,
Telnet menggunakan perangkat lunak untuk membuat perangkat virtual yang
menyediakan fitur yang sama dari sesi terminal dengan akses ke server antarmuka
baris perintah (CLI).
SSH
SSH adalah
program yang menyediakan koneksi terenkripsi pada saat
melakukan login
ke suatu remote system. SSH merupakan suatu set program
yang digunakan
sebagai pengganti rlogin, rsh, dan rcp dalam segi keamanan.
SSH menggunakan
kriptografi kunci public untuk mengenkrip komunikasi
antara dua host,
sehingga juga melakukan autentikasi terhadap user. SSH
dapat digunakan
untuk mengamankan proses login ke suatu remote system
atau
menyalin data antar host, karena mencegah terjadinya pembajakan sesi.
SSH melakukan
kompresi data [ada koneksi yang terjadi, dan mengamankan
komunikasi X11
(untuk sistem berbasis Unix) antar host.
SSH dapat
digunakan dari workstation dengan sistem windows dengan server
berbasis unix.
Berikut ini
adalah cara-cara yang dapat dilakukan dalam mengenkripsi sebuah file di
sistem operasi
Microsoft Windows:
1. Klik kanan pada file yang ingin
dienkripsi
2. Klik Properties
3. Klik tab General
4. Tekan tombol Advanced
5. Beri tanda check pada Encrypt
contents to secure data
6. Kemudian
tekan tombol OK
Jika file hasil
enkripsi tersebut disalin dan dibuka oleh user lain, maka akan muncul
pesan error
seperti “Username does not have access privileges, atau
Error
copying file or folder”
· DHCP
DHCP Protocol
Dynamic Host Configuration Protocol
(DHCP) layanan memungkinkan perangkat pada jaringan untuk memperoleh alamat IP
dan informasi lainnya dari server DHCP. Layanan ini secara otomatis penugasan
alamat IP, subnet mask, gateway dan lain parameter jaringan IP. DHCP
memungkinkan sebuah host untuk mendapatkan alamat IP secara dinamis ketika
terhubung ke jaringan. Server DHCP dihubungi dan alamat diminta. Server DHCP
memilih alamat dari berbagai dikonfigurasi alamat.
Pada jaringan lokal yang lebih besar,
atau di mana perubahan populasi pengguna sering, DHCP lebih disukai. Pengguna
baru mungkin datang dengan laptop dan memerlukan suatu koneksi. Orang lain
telah workstation baru yang perlu dihubungkan. Daripada memiliki administrator
jaringan memberikan alamat IP untuk setiap workstation, lebih efisien untuk
memiliki alamat IP yang ditetapkan secara otomatis menggunakan DHCP. Alamat
DHCP didistribusikan tidak secara permanen ditugaskan untuk host tetapi hanya
disewa untuk jangka waktu tertentu.
DHCP bisa menimbulkan risiko keamanan
karena setiap alat yang terhubung ke jaringan dapat menerima alamat. Risiko ini
membuat keamanan fisik merupakan faktor penting ketika menentukan apakah akan
menggunakan alamat dinamis atau manual. Tanpa DHCP, pengguna
13
harus secara manual
memasukkan alamat IP, subnet mask dan pengaturan jaringan lain untuk bergabung
dengan jaringan.
· DNS
DNS Protocol
Dalam jaringan data, peralatan diberi
label dengan alamat IP numerik, sehingga mereka dapat berpartisipasi dalam mengirim
dan menerima pesan melalui jaringan. Namun, kebanyakan orang sulit mengingat
alamat numerik. Oleh karena itu, nama domain diciptakan untuk mengkonversi
alamat numerik menjadi nama, sederhana dikenali. Di internet nama domain ini,
seperti www.cisco.com, jauh lebih mudah bagi orang untuk diingat daripada
198.133.219.25, yang adalah alamat numerik sebenarnya untuk server ini. Juga,
jika Cisco memutuskan untuk mengubah alamat numerik, adalah transparan kepada
pengguna, karena nama domain akan tetap www.cisco.com. Alamat baru hanya akan
dihubungkan ke nama domain yang ada dan konektivitas dipertahankan. Ketika
jaringan masih kecil, itu adalah tugas sederhana untuk menjaga pemetaan antara
nama domain dan alamat mereka mewakili. Namun, karena jaringan mulai tumbuh dan
jumlah perangkat meningkat, ini sistem manual menjadi tidak bisa dijalankan.
Domain
Name System (DNS) adalah diciptakan untuk nama domain untuk alamat resolusi
jaringan ini. DNS didistribusikan menggunakan satu set server untuk
menyelesaikan nama-nama yang terkait dengan alamat nomor. Protokol DNS
mendefinisikan sebuah layanan otomatis yang cocok dengan nama sumber daya
dengan alamat jaringan yang dibutuhkan numerik. Hal ini termasuk format untuk
pertanyaan, tanggapan, dan format data. Komunikasi protokol DNS menggunakan
format tunggal yang disebut pesan. Format pesan ini digunakan untuk semua jenis
permintaan klien dan respon server, pesan kesalahan, dan transfer informasi
sumber daya catatan antara server.
Sistem operasi komputer juga memiliki
utilitas yang disebut nslookup yang memungkinkan pengguna untuk secara manual
query server nama untuk menyelesaikan nama host yang diberikan. Utilitas ini
juga dapat digunakan untuk memecahkan masalah resolusi nama dan untuk
memastikan status saat ini dari server nama.
· Socket
Socket adalah sebuah Class yang
disediakan oleh beberapa bahasa pemrograman. Dengan socket, sebuah
aplikasi di suatu komputer dapat Tentu saja aplikasi di komputer yang
dihubungi menerima koneksi juga
menggunakan socket. Dengan kata lain
socket adalah suatu Class yang digunakan oleh aplikasi untuk saling
berhubungan. berikut ini menunjukkan bagaimana suatu aplikasi berhubungan
dengan aplikasi lainnya.
Paradigma pada aplikasi jaringan berlaku
model client-server. Aplikasi yang menginisialisasi koneksi, disebut
aplikasi client. Sedangkan aplikasi yang menerima inisialisasi disebut
sebagai aplikasi server. Oleh karena itu, jika kita membangun suatu
aplikasi jaringan yang lengkap, maka kita harus membuat aplikasi client
maupun aplikasi server.
Lebih lanjut
mengenai socket, ada dua jenis socket yang bisa digunakan untuk membangun
aplikasi, yakni TCP Socket dan UDP Socket. Perbedaan utamanya adalah, di
model TCP digunakan konsep connection oriented dan reliable data transfer,
sedangkan di model UDP digunakan konsep connectionless oriented dan
unreliable data transfer. Sebuah aplikasi dapat menggunakan salah satu
dari jenis Socket tersebut disesuaikan dengan peruntukan aplikasi
tersebut. Aplikasi berbasis TCP biasanya adalah aplikasi yang membutuhkan
ketepatan data hingga 100% tapi tidak memperdulikan
lama pengiriman, sedangkan aplikasi
berbasis UDP biasanya adalah aplikasi yang tidak terlalu mempedulikan
ketepatan data tapi sangat peduli dengan delay pengiriman. Contoh aplikasi
TCP adalah web browser, sedangkan UDP adalah Video Converence.
Untuk membangun
aplikasi hal pertama yang perlu dilakukan adalah menganalisa jenis
aplikasi kita, kebutuhan bandwidth, kebutuhan ketersampaian data dan
sensitifitas terhadap delay. Berdasarkan hal ini kita bisa menentukan
protokol apa yang kita gunakan, entah TCP atau UDP.
2. Pemrograman Socket Menggunakan
TCP
Cara kerja aplikasi yang menggunakan TCP
dapat digambarkan oleh di bawah ini :
Detail dari proses tersebut adalah :
Untuk bisa melakukan koneksi client
server, program server harus berjalan terlebih dahulu
Di sisi server disediakan sebuah socket,
yang disebut welcoming socket yang fungsinya untuk mendeteksi adanya
permintaan koneksi dari sisi client.
Di sisi client terdapat client socket.
Jika ingin menghubungi server, maka melalui client socket-nya, client
membuat inisialisai koneksi ke welcoming socket milik server, dengan mode
three-way handshake.
Setelah welcoming socket menerima
inisialisasi koneksi dari client socket, aplikasi server akan membuat
connection socket di sisi server. Dengan connection socket ini, client
socket dan connection socket berinteraksi satu sama lain untuk mengirim
dan menerima data.
Client membaca data yang dikirim oleh
server dari client socket-nya. Kemudian menampilkan data tersebut di
monitor.
3. Pemrograman Socket Menggunakan UDP
Contoh aplikasi untuk UDP socket berikut
ini menggunakan kasus yang sama dengan kasus yang digunakan oleh TCP
socket, yaitu :
Client membaca inputan dari keyboard,
kemudian mengirimkan hasilnya ke server melalui socket-nya.
Server membaca data yang dikirim oleh
client di connection socket
Server mengubah data menjadi huruf besar
Server mengirimkan data yang telah
diubah menuju client melalui socket-nya.
Client membaca data yang dikirim oleh
server dari client socket-nya. Kemudian menampilkan data tersebut di
monitor
Perbedaan utama antara aplikasi berbasis
TCP dengan aplikasi berbasis UDP adalah di aplikasi UDP tidak ada
welcoming socket. Pada UDP tidak ada socket khusus untuk permintaan
inisialisai koneksi. Setiap data yang datang ditangani lansung oleh server
socket.
· FTP
FTP (File Transfer Protocol) Protocol
File Transfer Protocol (FTP) adalah
protokol lain Application Layer umum digunakan. FTP dikembangkan untuk
memungkinkan untuk transfer file antara klien dan server. Sebuah klien FTP adalah
sebuah aplikasi yang berjalan pada komputer yang digunakan untuk mendorong dan
menarik file dari dari server yang menjalankan daemon FTP (ftpd).
Untuk berhasil
mentransfer file, FTP membutuhkan dua koneksi antara klien dan server: satu
untuk perintah dan jawaban, yang lain untuk transfer file yang sebenarnya.
Klien menetapkan koneksi pertama ke server pada port TCP 21. Koneksi ini
digunakan untuk lalu lintas, yang terdiri dari perintah client dan server
balasan. Klien menetapkan kedua sambungan ke server melalui port TCP 20.
Koneksi ini adalah untuk transfer file aktual dan dibuat setiap kali ada file
yang ditransfer. Transfer file dapat terjadi dalam arah baik. Klien dapat
men-download (tarik) file dari server atau client dapat meng-upload (push) file
ke server.
SUMBER :
http://mzsay.blogspot.co.id/2012/04/pengertian-socket-dan-pemrogramman.html
http://dinda-rompas.blogspot.co.id/2012/11/pengertian-dan-jenis-jenis-protokol.html
https://joanmathilda.wordpress.com/2009/11/29/application-programming-interface-api/