Minggu, 22 Januari 2012

Prinsip Kerja IP dan TCP

Prinsip kerja InterNet Protokol (IP).

          Fungsi dari InterNet Protokol secara sederhana dapat diterangkan seperti cara kerja kantor pos pada proses pengiriman surat. Surat kita masukan ke kotak pos akan diambil oleh petugas pos dan kemudian akan dikirim melalui route yang random, tanpa si pengirim maupun si penerima surat mengetahui jalur perjalanan surat tersebut. Juga jika kita mengirimkan dua surat yang ditujukan pada alamat yang sama pada hari yang sama, belum tentu akan sampai bersamaan karena mungkin surat yang satu akan mengambil route yang berbeda dengan surat yang lain. Di samping itu, tidak ada jaminan bahwa surat akan sampai ditangan tujuan, kecuali jika kita mengirimkannya menggunakan surat tercatat.
          Prinsip di atas digunakan oleh InterNet Protokol, "surat" diatas dikenal dengan sebutan datagram. InterNet protokol (IP) berfungsi menyampaikan datagram dari satu komputer ke komputer lain tanpa tergantung pada media kompunikasi yang digunakan. Data transport layer dipotong menjadi datagram-datagram yang dapat dibawa oleh IP. Tiap datagram dilepas dalam jaringan komputer dan akan mencari sendiri secara otomatis rute yang harus ditempuh ke komputer tujuan. Hal ini dikenal sebagai transmisi connectionless. Dengan kata lain, komputer pengirim datagram sama sekali tidak mengetahui apakah datagram akan sampai atau tidak.
          Untuk membantu mencapai komputer tujuan, setiap komputer dalam jaringan TCP/IP harus diberikan IP address. IP address harus unik untuk setiap komputer, tetapi tidak menjadi halangan bila sebuah komputer mempunyai beberapa IP address. IP address terdiri atas 8 byte data yang mempunyai nilai dari 0-255 yang sering ditulis dalam bentuk [xx.xx.xx.xx] (xx mempunyai nilai dari 0-255).
          Pada header InterNet Protokol selain IP address dari komputer tujuan dan komputer pengirim datagram juga terdapat beberapa informasi lainnya. Informasi ini mencakup jenis dari protokol transport layer yang ditumpangkan diatas IP. Tampak pada gambar 2 ada dua jenis protokol pada transport layer yaitu TCP dan UDP. Informasi penting lainnya adalah Time-To-Live (TTL) yang menentukan berapa lama IP dapat hidup didalam jaringan. Nilai TTL akan dikurangi satu jika IP melalui sebuah komputer. Hal ini penting artinya terutama karena IP dilepas di jaringan komputer. Jika karena satu dan lain hal IP tidak berhasil menemukan alamat tujuan maka dengan adanya TTL IP akan mati dengan sendirinya pada saat TTL bernilai nol. Disamping itu juga tiap IP yang dikirimkan diberikan identifikasi sehingga bersama-sama dengan IP address komputer pengirim data dan komputer tujuan, tiap IP dalam jaringan adalah unik.
          Khususnya untuk pemakai jaringan komputer hal yang terpenting untuk dipahami secara benar-benar adalah konsep IP address. Lembaga yang mengatur IP address adalah Network Information Center (NIC) di Department of Defence di US yang beralamat di hostmaster@nic.ddn.mil. Pengaturan IP address penting, terutama pada saat mengatur routing secara otomatis. Sebagai contoh jaringan komputer di amatir radio mempunyai IP address kelas yang mempunyai address [44.xx.xx.xx]. Khusus untuk amatir radio di Indonesia IP address yang digunakan adalah [44.132.xx.xx]. Sedangkan penulis di Canada mempunyai IP address [44.135.84.22]. Hal ini terlihat dengan jelas bahwa IP address di amatir radio sifatnya geografis. Dari IP address penulis dapat dibaca bahwa mesin penulis berada di network 44 di InterNet yang dikenal sabagai AMPRNet (ampr.org). 135 menandakan bahwa penulis berada di Canada. 84 memberitahukan bahwa penulis berada di kota Waterloo di propinsi Ontario, sedang 22 adalah nomor mesin penulis. Dengan konsep IP address, route perjalanan IP dalam jaringan komputer dapat dilakukan secara otomatis. Sebagai contoh, jika sebuah komputer di InterNet akan mengirimkan IP ke [44.135.84.22], pertama-tama IP yang dilepas di network akan berusaha mencari jalan ke network 44.135.84, setelah mesin yang mengubungkan network 44.135.84 tercapai IP tersebut akan mencoba menghubungi mesin 22 di network tersebut. Kesemuanya ini dilakukan secara otomatis oleh program.
          Tentunya sukar bagi manusia untuk mengingat sedemikian banyak IP address. Untuk memudahkan, dikembangkan Domain Name System (DNS). Sebagai contoh mesin penulis di AMPRNet dengan IP address [44.135.84.22], penulis beri nama (hostname) ve3.yc1dav.ampr.org. Terlihat bahwa hostname yang digunakan penulis sangat spesifik dan sangat memudahkan untuk mengetahui bahwa penulis berada di AMPRNet dari kata ampr.org. Mesin tersebut berada di Kanada dan propinsi Ontario dari ve3 sedang yc1dav adalah penulis sendiri. Contoh lain dari DNS adalah sun1.vlsi.waterloo.edu yang merupakan sebuah Sun SPARC workstation (sun1) di kelompok peneliti VLSI di University of Waterloo, Kanada (waterloo.edu) tempat penulis bekerja dan belajar. Perlu dicatat bahwa saat ini NIC belum memberikan domain untuk Indonesia. Mudah-mudahan dengan berkembangnya jaringan komputer TCP/IP di Indonesia ada saatnya dimana kita di Indonesia perlu meminta domain tersendiri untuk Indonesia.


Prinsip kerja Transmission Control Protocol (TCP).
 
          Berbeda dengan InterNet Protokol (IP), TCP mempunyai prinsip kerja seperti "virtual circuit" pada jaringan telepon. TCP lebih mementingkan tata-cara dan keandalan dalam pengiriman data antara dua komputer dalam jaringan. TCP tidak perduli dengan apa-apa yang dikerjakan oleh IP, yang penting adalah hubungan komunikasi antara dua komputer berjalan dengan baik. Dalam hal ini, TCP mengatur bagaimana cara membuka hubungan komunikasi, jenis aplikasi apa yang akan dilakukan dalam komunikasi tersebut (misalnya mengirim e-mail, transfer file dsb.) Di samping itu, juga mendeteksi dan mengoreksi jika ada kesalahan data. TCP mengatur seluruh proses koneksi antara satu komputer dengan komputer yang lain dalam sebuah jaringan komputer.
          Berbeda dengan IP yang mengandalkan mekanisme connectionless pada TCP mekanisme hubungan adalah connection oriented. Dalam hal ini, hubungan secara logik akan dibangun oleh TCP antara satu komputer dengan komputer yang lain. Dalam waktu yang ditentukan komputer yang sedang berhubungan harus mengirimkan data atau acknowledge agar hubungan tetap berlangsung. Jika hal ini tidak sanggup dilakukan maka dapat diasumsikan bahwa komputer yang sedang berhubungan dengan kita mengalami gangguan dan hubungan secara logik dapat diputus.
          TCP mengatur multiplexing dari data yang dikirim/diterima oleh sebuah komputer. Adanya identifikasi pada TCP header memungkinkan multiplexing dilakukan. Hal ini memungkinkan sebuah komputer melakukan beberapa hubungan TCP secara logik. Bentuk hubungan adalah full duplex, hal ini memungkinkan dua buah komputer saling berbicara dalam waktu bersamaan tanpa harus bergantian menggunakan kanal komunikasi. Untuk mengatasi saturasi (congestion) pada kanal komunikasi, pada header TCP dilengkapi informasi tentang flow control.
          Hal yang cukup penting untuk dipahami pada TCP adalah port number. Port number menentukan servis yang dilakukan oleh program aplikasi diatas TCP. Nomor-nomor ini telah ditentukan oleh Network Information Center dalam Request For Comment (RFC) 1010 [10]. Sebagai contoh untuk aplikasi File Transfer Protokol (FTP) diatas transport layer TCP digunakan port number 20 dan masih banyak lagi.
          Prinsip kerja dari TCP berdasarkan prinsip client-server. Server adalah program pada komputer yang secara pasif akan mendengarkan (listen) port number yang telah ditentukan pada TCP. Sedang client adalah program yang secara aktif akan membuka hubungan TCP ke komputer server untuk meminta servis yang dibutuhkan.
          State diagram kerja TCP diperlihatkan pada gambar 3. Pada state diagram gambar 3, client akan secara aktif membuka hubungan (active open) dengan mengirimkan sinyal SYN (state SYN SENT) ke komputer server tujuan. Jika server menerima sinyal SYN maka server yang saat itu berada pada state LISTEN akan mengirimkan sinyal SYN dan ke dua komputer (client & server) akan ke state ESTAB. Jika tidak ada tanggapan dari komputer yang dituju, maka program akan kembali pada state CLOSE. Setelah servis yang dilakukan telah selesai maka salah client akan mengirimkan sinyal FIN dan komputer client akan berada pada state FIN WAIT sampai sinyal FIN dari server diterima. Pada saat menerima sinyal FIN, server akan ke state CLOSE WAIT hingga hubungan diputus. Akhirnya kedua komputer akan kembali pada state CLOSE.

2 comments:

Posting Komentar