TCP Flag
Sebuah segmen TCP dapat memiliki flag (tanda-tanda) khusus yang
mengindikasikan segmen yang bersangkutan, seperti yang disebutkan dalam tabel
berikut:
Struktur flag-flag TCP
Nama flag
|
Keterangan
|
URG
|
Mengindikasikan bahwa
beberapa bagian dari segmen TCP mengandung data yang sangat penting, dan
field Urgent Pointer dalam header TCP harus digunakan untuk menentukan lokasi
di mana data penting tersebut berada dalam segmen.
|
ACK
|
|
PSH
|
Mengindikasikan bahwa
isi dari TCP Receive buffer harus diserahkan kepada protokol lapisan
aplikasi. Data dalam receive buffer harus berisi sebuah blok data yang
berurutan (kontigu), dilihat dari ujung paling kiri dari buffer. Dengan kata
lain, sebuah segmen yang memiliki flag PSH diset ke nilai 1, tidak bolah ada
satu byte pun data yang hilang dari aliran byte segmen tersebut; data tidak
dapat diberikan kepada protokol lapisan aplikasi hingga segmen yang hilang
tersebut datang. Normalnya, TCP Receive buffer akan dikosongkan (dengan kata
lain, isi dari buffer akan diteruskan kepada protokol lapisan aplikasi)
ketika buffer tersebut berisi data yang kontigu atau ketika dalam
"proses perawatan". Flag PSH ini dapat mengubah hal seperti itu,
dan membuat akan TCP segera mengosongkan TCP Receive buffer. Flag PSH umumnya
digunakan dalam protokol lapisan aplikasi yang bersifat interaktif, seperti
halnya Telnet, karena setiap penekanan tombol dalam sesi terminal virtual
akan dikirimkan dengan sebuah flag PSH diset ke nilai 1. Contoh dari
penggunaan lainnya dari flag ini adalah pada segmen terakhir dari berkas yang
ditransfer dengan menggunakan protokol FTP. Segmen yang dikirimkan dengan
flag PSH aktif tidak harus segera di-acknowledge oleh penerima.
|
RST
|
Mengindikasikan bahwa
koneksi yang dibuat akan digagalkan. Untuk sebuah koneksi TCP yang sedang
berjalan (aktif), sebuah segmen dengan flag RST diset ke nilai 1 akan
dikirimkan sebagai respons terhadap sebuah segmen TCP yang diterima yang
ternyata segmen tersebut bukan yang diminta, sehingga koneksi pun menjadi
gagal. Pengiriman segmen dengan flag RST diset ke nilai 1 untuk sebuah
koneksi aktif akan menutup koneksi secara paksa, sehingga data yang disimpan
dalam buffer akan dibuang (dihilangkan). Untuk sebuah koneksi TCP yang sedang
dibuat, segmen dengan flag RST aktif akan dikirimkan sebagai respons terhadap
request pembuatan koneksi untuk mencegah percobaan pembuatan koneksi.
|
SYN
|
Mengindikasikan bahwa
segmen TCP yang bersangkutan mengandung Initial Sequence Number (ISN). Selama
proses pembuatan sesi koneksi TCP, TCP akan mengirimkan sebuah segmen dengan
flag SYN diset ke nilai 1. Setiap host TCP lainnya akan memberikan jawaban
(acknowledgment) dari segmen dengan flag SYN tersebut dengan menganggap bahwa
segmen tersebut merupakan sekumpulan byte dari data. Field Acknowledgment
Number dari sebuah segmen SYN diatur ke nilai ISN + 1.
|
FIN
|
Menandakan bahwa
pengirim segmen TCP telah selesai dalam mengirimkan data dalam sebuah koneksi
TCP. Ketika sebuah koneksi TCP akhirnya dihentikan (akibat sudah tidak ada
data yang dikirimkan lagi), setiap host TCP akan mengirimkan sebuah segmen
TCP dengan flag FIN diset ke nilai 1. Sebuah host TCP tidak akan mengirimkan
segmen dengan flag FIN hingga semua data yang dikirimkannya telah diterima
dengan baik (menerima paket acknowledgment) oleh penerima. Setiap host akan
menganggap sebuah segmen TCP dengan flag FIN sebagai sekumpulan byte dari
data. Ketika dua host TCP telah mengirimkan segmen TCP dengan flag FIN dan
menerima acknowledgment dari segmen tersebut, maka koneksi TCP pun akan
dihentikan.
|