2.6. TCP :
Transmission Control Protocol
2.6.1. Pengertian TCP
Transmission Control Protocol
TCP merupakan salah satu protokol terpenting pada layer transport selain
User Datagram Protocol
UDP. TCP memiliki beberapa karakteristik, yaitu
connection oriented
,
reliable
dan
byte stream service
. TCP merupakan protokol yang bersifat
connection oriented
. Artinya sebelum memulai proses transmisi data terjadi, dua aplikasi TCP
harus melakukan pertukaran
control
informasi
handshaking
. TCP juga bersifat
reliable
karena menerapkan fitur deteksi kesalahan dan retransmisi apabila ada data yang rusak, sehingga keutuhan data dapat terjamin.
Sedangkan
byte stream
service artinya paket akan dikirimkan ke tujuan secara berurutan
sequencing
.
2.6.2. TCP
Header
Data TCP dirumuskan pada sebuah datagram IP seperti yang terdapat pada gambar 2.7 di bawah ini:
Gambar 2. 7 : Enkapsulasi TCP pada datagram IP
Ukuran normal dari TCP header itu sendiri adalah 20 bytes. Gambar 2.8 menunjukkan format
header
dari TCP.
Gambar 2. 8 : TCP Header
Format dari
header
TCP dilengkapi dengan ukuran pada masing-masing fieldnya seperti pada Tabel 2.1 di bawah ini.
Tabel 2. 1 : Tabel ukuran field pada TCP Header
Nama Field Ukuran
Keterangan
Source Port 16 bit 2 byte
Mengindikasikan sumber protokol lapisan aplikasi yang mengirimkan
segmen TCP yang bersangkutan.
Destination Port 16 bit 2 byte
Mengindikasikan tujuan protokol lapisan aplikasi yang menerima
segmen TCP yang bersangkutan.
Sequence Number 32 bit 4 byte
Mengindikasikan nomor urut dari oktet pertama dari data di dalam
sebuah segmen TCP yang hendak dikirimkan.
Acknowledgment Number
32 bit 4 byte Mengindikasikan nomor urut dari
oktet selanjutnya dalam aliran byte yang diharapkan untuk diterima oleh
pengirim
dari penerima
pada pengiriman selanjutnya.
Header Length
Data offset 4 bit
Mengindikasikan di mana data dalam segmen TCP dimulai. Field ini juga
berarti ukuran dari header TCP. Reserved
6 bit Direservasikan
untuk digunakan
pada masa depan. Pengirim segmen TCP akan mengeset bit-bit ini ke
dalam nilai nol.
Flags 6 bit
Mengindikasikan flag-flag TCP yang jumlahnya ada enam yaitu :
1. URG Urgent
2. ACK Acknowledgment
3. PSH Push
4. RST Reset
5. SYN Synchronize
6. FIN Finish
Window 16 bit 2 byte
Mengindikasikan jumlah byte yang tersedia yang dimiliki oleh buffer
host penerima
segmen yang
bersangkutan. Checksum
16 bit 2 byte Mampu
melakukan pengecekan
integritas segmen TCP. Urgent Pointer
16 bit 2 byte Menandakan
lokasi data
yang dianggap “urgent” dalam segmen.
Options 32 bit 4 byte
Berfungsi sebagai
penampung beberapa opsi tambahan TCP.
Data 32 bit 4 byte
Digunakan untuk memenuhi panjang header, merupakan kelipatan 32 bit.
Jika terdapat header yang kurang, maka akan ditambahkan sampai
berjumlah 32 bit.
2.6.3. TCP State Transition Diagram