TCP Packet
Transmission Control Protocol (TCP) adalah suatu protokol
yang berada di lapisan transpor (baik
itu dalam tujuh lapis model
referensi OSI atau model DARPA) yang berorientasi
sambungan (connection-oriented) dan dapat diandalkan (reliable).
Karakteristik
dari TCP:
§
Berorientasi sambungan (connection-oriented):
Sebelum data dapat ditransmisikan antara dua host, dua proses yang berjalan
pada lapisan aplikasi harus melakukan negosiasi untuk membuat sesi koneksi
terlebih dahulu. Koneksi TCP ditutup dengan menggunakan proses terminasi
koneksi TCP (TCP connection termination).
§
Full-duplex:
Untuk setiap host TCP, koneksi yang terjadi antara dua host terdiri atas dua
buah jalur, yakni jalur keluar dan jalur masuk. Dengan menggunakan teknologi
lapisan yang lebih rendah yang mendukung full-duplex, maka data pun dapat
secara simultan diterima dan dikirim. Header TCP berisi nomor urut (TCP
sequence number) dari data yang ditransmisikan dan sebuah acknowledgment dari
data yang masuk.
§
Dapat diandalkan (reliable):
Data yang dikirimkan ke sebuah koneksi TCP akan diurutkan dengan sebuah nomor
urut paket dan akan mengharapkan paket positive acknowledgment dari
penerima. Jika tidak ada paket Acknowledgment dari penerima, maka segmen TCP
(protocol data unit dalam protokol TCP) akan ditransmisikan ulang. Pada
pihak penerima, segmen-segmen duplikat akan diabaikan dan segmen-segmen yang
datang tidak sesuai dengan urutannya akan diletakkan di belakang untuk mengurutkan
segmen-segmen TCP. Untuk menjamin integritas setiap segmen TCP, TCP
mengimplementasikan penghitungan TCP Checksum.
§
Byte stream:
TCP melihat data yang dikirimkan dan diterima melalui dua jalur masuk dan jalur
keluar TCP sebagai sebuah byte stream yang berdekatan
(kontigu). Nomor urut TCP dan nomor acknowlegment dalam setiap header TCP
didefinisikan juga dalam bentuk byte. Meski demikian, TCP tidak mengetahui
batasan pesan-pesan di dalam byte stream TCP tersebut. Untuk melakukannya, hal
ini diserahkan kepada protokol lapisan aplikasi (dalam DARPA Reference Model),
yang harus menerjemahkan byte stream TCP ke dalam "bahasa" yang ia
pahami.
§
Memiliki layanan flow
control: Untuk mencegah data terlalu banyak dikirimkan pada satu waktu,
yang akhirnya membuat "macet" jaringan internetwork IP, TCP mengimplementasikan
layanan flow control yang dimiliki oleh pihak pengirim yang
secara terus menerus memantau dan membatasi jumlah data yang dikirimkan pada
satu waktu. Untuk mencegah pihak penerima untuk memperoleh data yang tidak
dapat disangganya (buffer), TCP juga mengimplementasikan flow
control dalam pihak penerima, yang mengindikasikan jumlah buffer yang
masih tersedia dalam pihak penerima.
§
Melakukan segmentasi terhadap data
yang datang dari lapisan aplikasi (dalam DARPA Reference Model)
§
Mengirimkan paket secara "one-to-one":
hal ini karena memang TCP harus membuat sebuah sirkuit logis antara dua buah
protokol lapisan aplikasi agar saling dapat berkomunikasi. TCP tidak
menyediakan layanan pengiriman data secara one-to-many.
TCP umumnya digunakan ketika protokol lapisan aplikasi
membutuhkan layanan transfer data yang bersifat andal, yang layanan tersebut
tidak dimiliki oleh protokol lapisan aplikasi tersebut. Contoh dari protokol
yang menggunakan TCP adalah HTTP dan FTP.
Tidak ada komentar:
Posting Komentar