N7
TCP HANDSHAKE LAB NF-39 · TRANSPORT & PROTOKOL · RFC 793/6298
READY --:--:-- UTC
SPACE=PLAY · →=STEP · R=RESET
Segment Terkirim
0
Retransmisi
0
Paket Drop
0
Status Koneksi
SIAP
Diagram Sequence · Live ISN — / —
Narasi Protokol MODE NORMAL · SIAP
—
Segment Inspector TCP · IPv4 · 20B HEADER
—
State Machine RFC 793 · FIGURE 6
Klien
Server
Packet Capture iface eth0 · FILTER: tcp.port == 443
NoTime SourceDestination ProtoInfo
01Mengapa Harus Tiga Langkah?

Dua langkah tidak aman. SYN lama dari koneksi yang sudah mati bisa datang terlambat — server tidak punya cara membedakan SYN baru vs duplikat, dan akan membuka "koneksi hantu". Langkah ketiga (ACK dari klien) adalah bukti bahwa klien benar-benar hidup dan menerima ISN server. Rumusnya: dua arah × satu konfirmasi per arah = tiga pesan.

SYN lama (stale) ──▶ server buka koneksi? BAHAYA SYN ──▶ ◀── SYN,ACK ──▶ ACK : dua arah saling konfirmasi ISN = koneksi valid
02Aturan SEQ & ACK
  • SEQ = nomor byte pertama pada segmen ini
  • ACK = kumulatif — "byte berikutnya yang kuharapkan"
  • SYN & FIN masing-masing menghabiskan 1 nomor urut → data pertama selalu mulai di rel SEQ=1
  • Wireshark default menampilkan relative seq (mulai 0); aktifkan absolute untuk melihat raw ISN
  • ISN dipilih acak (32-bit) agar koneksi lama tidak bertabrakan dengan yang baru — juga melambatkan prediksi/pembajakan
03Flag TCP
SYNmembuka koneksi; sinkronisasi nomor urut
ACKfield acknowledgment valid (aktif setelah handshake)
FINpenutupan rapi — "saya selesai mengirim"
RSTputus paksa — koneksi tidak dikenal / error
PSHteruskan data ke aplikasi segera
URGdata prioritas (jarang dipakai modern)
04Kegagalan & Retransmisi
SYN hilangklien RTO habis → kirim ulang SYN (SEQ sama)
SYN,ACK hilangklien diam di SYN_SENT sampai RTO; server punya timer sendiri
ACK hilangserver retrans SYN,ACK → klien (ESTABLISHED) re-ACK

ACK final tidak pernah diretransmisikan secara independen — keandalannya ditutup oleh retransmisi dari sisi lawan.

05Half-Open & SYN Flood

Penyerang mengirim ratusan SYN tanpa ACK final → server menahan ribuan koneksi half-open (SYN_RCVD) hingga backlog penuh → layanan menolak klien sah. Mitigasi: SYN cookies, tuning backlog/retry, dan filtering di edge. Level awareness — detail di modul keamanan.

06Setelah Handshake
  • Data mengalir sebagai segmen PSH,ACK — SEQ/ACK terus berjalan
  • MSS & window scale dinegosiasi lewat opsi SYN / SYN,ACK
  • Penutupan: FIN,ACK empat langkah; sisi aktif masuk TIME_WAIT (2×MSL) sebelum benar-benar CLOSED