Apa Itu TCP Handshake? Memahami SYN, SYN-ACK dan ACK
Sebelum browser mengirim request HTTP melalui koneksi TCP, ada satu proses kecil yang biasanya terjadi lebih dulu: TCP handshake. Proses ini memakai tiga pertukaran utama yang sering ditulis sebagai SYN → SYN-ACK → ACK.
Kelihatannya sederhana, tetapi handshake punya fungsi penting. Client dan server perlu memastikan bahwa keduanya siap berkomunikasi serta menyinkronkan informasi awal yang dibutuhkan TCP sebelum data aplikasi mulai dikirim.
Karena itu ketika sebuah website terasa timeout, proxy tidak bisa connect, firewall memblokir koneksi, atau port server tidak aktif, sering kali masalah sebenarnya terjadi bahkan sebelum HTTP request pertama dikirim.
Kalau belum membaca dasar perbedaan TCP dan UDP, kamu bisa mulai dari artikel TCP vs UDP terlebih dahulu.
Apa Itu TCP Handshake?
TCP handshake adalah proses pembentukan koneksi antara dua TCP endpoint sebelum pertukaran data berlangsung secara normal.
Proses yang paling dikenal adalah three-way handshake:
SYN
SYN-ACK
ACK
Setelah tahap tersebut selesai, koneksi masuk ke state ESTABLISHED dan kedua sisi dapat bertukar data.
RFC 9293 menjelaskan bahwa TCP menggunakan three-way handshake untuk menyinkronkan initial sequence number dari kedua peer sebelum koneksi dianggap terbentuk.
Kenapa TCP Membutuhkan Handshake?
TCP merupakan protocol connection-oriented. Jadi sebelum data dikirim seperti stream biasa, kedua peer perlu membangun state koneksi.
Handshake membantu beberapa hal penting:
- memastikan peer tujuan dapat dijangkau,
- memastikan server memang siap menerima koneksi,
- menyinkronkan initial sequence number,
- membentuk state TCP di kedua sisi,
- menegosiasikan beberapa TCP option.
Tanpa proses tersebut, client dan server tidak mempunyai konteks yang cukup untuk mempertahankan reliable byte stream.
Apa Arti SYN?
SYN berasal dari kata Synchronize.
Paket SYN digunakan untuk memulai proses pembentukan koneksi TCP dan membawa initial sequence number milik pengirim.
Misalnya client memilih sequence number awal:
Client mengirim:
Secara konsep client mengatakan:
Apa Arti SYN-ACK?
Server menerima SYN lalu merespons menggunakan SYN dan ACK sekaligus.
Misalnya server memilih initial sequence number:
Server dapat mengirim:
ACK bernilai 101 karena SYN milik client menggunakan satu sequence number dalam ruang sequence TCP.
Secara sederhana server berkata:
Apa Arti ACK?
Client menerima SYN-ACK dan mengirim acknowledgement untuk SYN milik server.
Setelah itu kedua peer sudah saling mengetahui initial sequence number masing-masing dan koneksi dapat masuk ke state ESTABLISHED.
ESTABLISHED
ESTABLISHED
Contoh Three-Way Handshake Lengkap
Kalau dibuat lebih ringkas:
Contoh ini mirip dengan ilustrasi dasar pada RFC 9293 mengenai TCP connection synchronization.
Kenapa Sequence Number Penting?
TCP harus bisa mengetahui posisi byte dalam stream supaya data:
- bisa disusun kembali sesuai urutan,
- bisa diketahui mana yang sudah diterima,
- bisa diketahui mana yang perlu dikirim ulang,
- tidak tertukar dengan data dari koneksi lama.
Sequence number menjadi bagian penting dari mekanisme tersebut.
Apa Itu Initial Sequence Number?
Initial Sequence Number atau ISN adalah sequence number awal yang dipilih oleh masing-masing TCP peer ketika koneksi dibentuk.
Client mempunyai ISN sendiri:
server juga mempunyai ISN sendiri:
Three-way handshake membuat kedua peer mengetahui dan mengakui nilai tersebut.
| Peer | Initial Sequence |
|---|---|
| Client | X |
| Server | Y |
Kenapa Tidak Cukup Dua-Way Handshake?
Karena kedua arah komunikasi perlu saling menyinkronkan sequence number.
Client perlu tahu bahwa server menerima sequence awal miliknya, sementara server juga perlu memastikan client menerima sequence awal server.
RFC 9293 menjelaskan bahwa three-way handshake membantu menghindari kebingungan akibat connection initiation lama atau duplicate SYN.
Dengan tiga langkah, kedua peer mendapatkan konfirmasi dua arah yang cukup sebelum koneksi dianggap sinkron.
Apa Itu TCP State?
TCP mempunyai sejumlah state untuk menggambarkan kondisi koneksi.
Saat handshake dasar berlangsung, beberapa state penting antara lain:
| State | Arti Sederhana |
|---|---|
| LISTEN | Server menunggu koneksi baru. |
| SYN-SENT | Client sudah mengirim SYN. |
| SYN-RECEIVED | Server menerima SYN dan menunggu acknowledgement. |
| ESTABLISHED | Koneksi sudah terbentuk. |
State Client Saat Handshake
Client biasanya bergerak dari:
Client mulai dari kondisi tidak punya koneksi, mengirim SYN, lalu setelah menerima SYN-ACK dan mengirim ACK masuk ke state ESTABLISHED.
State Server Saat Handshake
Server biasanya:
Server menunggu koneksi, menerima SYN, membalas SYN-ACK, lalu menunggu ACK terakhir.
Apakah Data Aplikasi Baru Bisa Dikirim Setelah Handshake?
Dalam penggunaan TCP yang umum, data aplikasi mulai mengalir setelah koneksi terbentuk.
Namun spesifikasi TCP modern mencatat bahwa secara protocol data dapat muncul bersama SYN dalam mekanisme tertentu seperti TCP Fast Open.
Untuk memahami alur biasa web, anggap saja:
Pada koneksi HTTPS tradisional melalui TCP, handshake TCP terjadi sebelum TLS negotiation dan request HTTP aplikasi. MDN juga menjelaskan urutan tersebut dalam gambaran cara browser membuat koneksi. :chatgpt-content-reference{index="1"}
Apa Hubungan DNS dengan TCP Handshake?
Sebelum browser bisa mengirim SYN ke sebuah hostname, browser biasanya perlu mengetahui IP tujuan lebih dulu.
Contohnya:
Jadi pada alur web umum, DNS lookup terjadi terlebih dahulu.
Kalau ingin memahami proses tersebut, baca artikel Cara Kerja DNS.
Apa Hubungan TCP Handshake dengan HTTPS?
HTTPS tradisional yang menggunakan TCP membutuhkan dua tahap koneksi yang berbeda:
- TCP handshake.
- TLS handshake.
TCP handshake membuat transport connection.
TLS handshake kemudian membentuk koneksi terenkripsi dan melakukan proses keamanan seperti autentikasi server serta negosiasi parameter cryptographic.
SYN / SYN-ACK / ACK
Secure Session
HTTP Data
TCP Handshake Menambah Latency?
Ya, karena client harus menunggu pertukaran jaringan sebelum koneksi dianggap terbentuk.
Pada kondisi normal:
proses ini memerlukan setidaknya perjalanan jaringan antara client dan server.
Semakin besar round-trip time atau RTT, semakin terasa biaya pembentukan koneksi baru.
Apa Itu RTT?
RTT atau Round-Trip Time adalah waktu yang dibutuhkan informasi bergerak dari satu endpoint menuju endpoint lain lalu respons kembali.
Misalnya:
RTT = 100 ms
Maka pembuatan koneksi yang membutuhkan round trip akan memiliki biaya latency yang lebih besar dibanding koneksi ke server dengan RTT 10 ms.
Kenapa Website Jauh Bisa Terasa Lebih Lambat?
Salah satu faktornya adalah latency jaringan.
Bayangkan server berada sangat jauh secara jaringan.
Sebelum HTTP data dikirim, browser bisa melalui:
- DNS lookup,
- TCP handshake,
- TLS handshake,
- baru HTTP request.
Semakin besar RTT, semakin mahal proses pembentukan koneksi baru.
Connection Reuse Membantu Mengurangi Handshake
Karena membuat koneksi baru mempunyai biaya, aplikasi sering menggunakan koneksi yang sudah ada jika masih valid.
Contohnya HTTP keep-alive memungkinkan beberapa request menggunakan TCP connection yang sama.
Jadi tidak setiap resource website harus selalu membuat TCP connection baru.
Ingin Menguji Proxy dan Koneksi TCP?
GudangProxy menyediakan daftar proxy gratis yang dapat difilter berdasarkan negara, protokol, anonimitas, dan status koneksi. Kamu bisa menguji koneksi TCP melalui endpoint proxy dan membandingkan latency maupun keberhasilan koneksi.
Lihat Daftar Proxy Gratis →Apa Hubungan TCP Handshake dengan Proxy?
Proxy menambahkan satu atau lebih koneksi ke jalur komunikasi.
Tanpa proxy:
Dengan proxy:
Client perlu membuat koneksi menuju proxy. Kemudian proxy membuat koneksi lain menuju server tujuan jika koneksi tersebut belum tersedia.
TCP Handshake Client ke Proxy
Misalnya proxy:
Client terlebih dahulu membuat TCP connection menuju endpoint tersebut.
Kalau tahap ini gagal, request bahkan belum sampai ke proses HTTP proxy.
Proxy Kemudian Membuat Koneksi ke Website
Setelah client berhasil terkoneksi ke proxy, proxy mungkin harus membuat TCP connection ke destination.
Karena itu latency proxy dipengaruhi dua bagian:
| Jalur | Dampak |
|---|---|
| Client → Proxy | Latency antara pengguna dan proxy. |
| Proxy → Website | Latency antara proxy dan destination. |
Kenapa Proxy Jauh Bisa Terasa Lambat?
Misalnya pengguna berada di Asia, tetapi proxy berada sangat jauh secara jaringan.
Setiap connection establishment harus melewati jalur tersebut.
Jika proxy kemudian menghubungi website di lokasi lain lagi, total path bisa menjadi lebih panjang.
Karena itu memilih proxy hanya berdasarkan negara belum tentu cukup. Routing dan latency juga penting.
Apa Hubungan HTTP CONNECT dengan TCP Handshake?
Pada HTTPS melalui HTTP proxy, ada beberapa tahap.
Pertama client membuat TCP connection ke proxy.
Kemudian client meminta:
Proxy lalu membuat koneksi TCP menuju:
Setelah berhasil, proxy memberikan respons seperti:
Barulah TLS handshake antara client dan destination berjalan melalui tunnel.
Jadi ada perbedaan antara:
- TCP handshake,
- HTTP CONNECT,
- TLS handshake.
TCP Handshake vs HTTP CONNECT
| Proses | Layer / Tujuan |
|---|---|
| TCP Handshake | Membentuk TCP connection. |
| HTTP CONNECT | Meminta HTTP proxy membuat tunnel. |
| TLS Handshake | Membentuk secure TLS session. |
Kenapa Port Closed Menghasilkan Connection Refused?
Misalnya client mengirim SYN ke:
tetapi host tidak memiliki service yang mendengarkan pada port tersebut.
Sistem target dapat merespons dengan TCP RST.
Dari sisi aplikasi, kondisi seperti ini sering muncul sebagai:
Apa Itu TCP RST?
RST berarti Reset.
RST digunakan untuk menunjukkan bahwa koneksi harus di-reset atau tidak dapat diteruskan dalam kondisi tertentu.
Contohnya:
- client menghubungi port yang tidak mempunyai listener,
- koneksi sudah tidak valid,
- endpoint ingin membatalkan koneksi secara paksa.
Connection Refused vs Connection Timeout
Dua error ini sering dianggap sama padahal indikasinya berbeda.
| Error | Gambaran Umum |
|---|---|
| Connection Refused | Host merespons tetapi koneksi ditolak, sering karena tidak ada listener. |
| Connection Timeout | Client tidak mendapatkan response yang dibutuhkan dalam waktu tertentu. |
Kenapa TCP Handshake Bisa Timeout?
Misalnya client mengirim:
tetapi tidak pernah menerima SYN-ACK.
Kemungkinan penyebab:
- server offline,
- firewall drop packet,
- routing bermasalah,
- network congestion,
- destination IP salah,
- provider memblokir port,
- proxy tidak dapat dijangkau.
TCP dapat melakukan retransmission SYN sesuai algoritma implementasinya sebelum akhirnya koneksi dinyatakan gagal.
Drop dan Reject pada Firewall Bisa Terlihat Berbeda
Firewall dapat memblokir connection attempt dengan cara berbeda.
Rule yang reject dapat memberikan respons langsung sehingga client lebih cepat mengetahui koneksi ditolak.
Rule yang drop bisa membuang packet tanpa response.
Akibatnya client menunggu sampai timeout atau melakukan retransmission.
Apa Itu SYN Retransmission?
Kalau SYN tidak mendapatkan response, TCP dapat mengirim SYN kembali setelah interval tertentu.
Jumlah retry dan timing bergantung pada implementasi sistem operasi dan konfigurasi networking.
Cara Melihat TCP Handshake dengan tcpdump
Kalau kamu mengelola server sendiri, tcpdump sangat berguna.
Misalnya ingin melihat traffic TCP port 443:
Kemudian buat koneksi HTTPS ke server tersebut.
Kamu bisa melihat paket dengan flag seperti:
Dalam output tcpdump, representasi flag dapat berbeda, tetapi konsepnya menunjuk SYN, SYN-ACK, dan ACK.
Filter Hanya SYN dengan tcpdump
Contoh umum untuk melihat SYN:
Gunakan hanya pada jaringan atau sistem yang memang kamu kelola atau punya izin untuk monitor.
Cara Melihat TCP State dengan ss
Di Linux:
Untuk socket yang listening:
Output dapat menunjukkan state seperti:
Apa Arti SYN-SENT?
SYN-SENT berarti endpoint aktif sudah mengirim SYN dan sedang menunggu response yang sesuai.
Kalau banyak connection tertahan lama di SYN-SENT, kamu bisa mengecek:
- firewall,
- routing,
- destination port,
- server availability.
Apa Arti SYN-RECV?
SYN-RECV atau SYN-RECEIVED menunjukkan server sudah menerima SYN dan mengirim SYN-ACK, tetapi belum menyelesaikan handshake.
Kalau jumlahnya sangat banyak, salah satu kemungkinan adalah banyak client sedang membuka koneksi.
Dalam konteks keamanan, state ini juga sering dikaitkan dengan SYN flood, walaupun tingginya SYN-RECV tidak otomatis berarti serangan.
Apa Itu SYN Flood?
SYN flood adalah pola serangan denial-of-service yang mengirim banyak SYN sehingga server mempertahankan banyak koneksi setengah terbuka atau menggunakan resource untuk handshake yang tidak pernah selesai.
Konsep sederhananya:
Server menunggu penyelesaian koneksi.
Sistem modern mempunyai berbagai mitigasi terhadap pola seperti ini.
Apa Itu SYN Cookie?
SYN cookie adalah salah satu teknik yang dapat digunakan untuk membantu server menghadapi kondisi SYN flood dengan mengurangi kebutuhan menyimpan state tertentu sebelum ACK valid diterima.
Implementasi dan konfigurasi berbeda antar operating system.
Apakah TCP Handshake Selalu Sama pada Semua Koneksi?
Three-way handshake merupakan mekanisme dasar TCP, tetapi TCP mempunyai extension dan option yang dapat membuat detail connection establishment lebih kompleks.
Contohnya:
- TCP options,
- window scaling,
- timestamps,
- Selective Acknowledgment support,
- TCP Fast Open.
Apa Itu TCP Options?
SYN dan SYN-ACK sering membawa TCP option untuk menegosiasikan kemampuan tertentu.
Contohnya:
- Maximum Segment Size,
- Window Scale,
- SACK Permitted,
- Timestamps.
Jadi handshake bukan hanya soal “apakah server hidup”, tetapi juga bisa membawa parameter penting untuk koneksi.
Apa Itu MSS?
MSS atau Maximum Segment Size menunjukkan jumlah maksimum data TCP yang ingin diterima peer dalam satu segment, tidak termasuk header IP dan TCP.
MSS biasanya dinegosiasikan melalui TCP option pada SYN.
Apa Itu Window Scaling?
Window scaling membantu TCP menggunakan receive window lebih besar daripada batas window field dasar.
Ini berguna pada jaringan dengan bandwidth dan latency tinggi karena lebih banyak data dapat berada dalam flight.
Apa Itu SACK Permitted?
SACK atau Selective Acknowledgment membantu receiver memberi informasi lebih spesifik tentang blok data yang sudah diterima.
Dengan begitu sender tidak harus selalu mengirim ulang data yang sebenarnya sudah sampai.
Apa Itu TCP Fast Open?
TCP Fast Open adalah extension yang memungkinkan data tertentu dikirim lebih awal pada proses pembentukan koneksi untuk mengurangi latency pada koneksi yang memenuhi kondisi yang diperlukan.
RFC 9293 mencatat bahwa data pada SYN memang diperbolehkan oleh TCP dan fitur seperti T/TCP serta TCP Fast Open memanfaatkan kemampuan tersebut.
Apakah HTTPS HTTP/3 Masih Menggunakan TCP Handshake?
Tidak untuk koneksi HTTP/3 utama.
HTTP/3 menggunakan QUIC di atas UDP, bukan TCP.
Jadi connection establishment HTTP/3 menggunakan mekanisme QUIC, bukan SYN → SYN-ACK → ACK TCP.
Ini salah satu alasan penting memahami perbedaan TCP dan UDP.
Kenapa Browser Bisa Fallback dari HTTP/3 ke TCP?
Jika QUIC/UDP tidak tersedia atau diblokir, browser dan server dapat tetap menggunakan HTTP/2 atau HTTP/1.1 melalui TCP tergantung kemampuan dan negosiasi.
Contohnya firewall:
koneksi web masih bisa berjalan melalui HTTPS berbasis TCP, meskipun HTTP/3 tidak digunakan.
TCP Handshake dan Port
SYN dikirim menuju kombinasi alamat dan port tertentu.
Contohnya:
Berbeda dengan:
Walaupun IP sama, kedua endpoint tersebut bisa menjalankan service berbeda.
Untuk pembahasan lengkap, baca artikel Port 80, 443, 8080, 3128 & 1080.
Kenapa Ping Berhasil tapi TCP Connection Gagal?
Ping umumnya menggunakan ICMP, bukan TCP.
Jadi kondisi seperti:
bisa terjadi kalau:
- host aktif tetapi port 443 tertutup,
- firewall mengizinkan ICMP tapi memblokir TCP 443,
- service HTTPS tidak berjalan,
- routing policy berbeda.
Ping Gagal tapi Website Bisa Dibuka?
Bisa juga.
Server atau firewall bisa memblokir ICMP echo tetapi tetap mengizinkan TCP 443.
Jadi ping bukan satu-satunya indikator apakah service TCP dapat diakses.
Kenapa nc atau telnet Sering Dipakai untuk Tes Port?
Tool seperti Netcat dapat mencoba membuka TCP connection sederhana.
Contoh:
Kalau handshake berhasil, kamu mengetahui bahwa TCP endpoint setidaknya dapat dijangkau.
Tetapi ini belum menjamin aplikasi di atas TCP berfungsi normal.
TCP Connect Berhasil tapi Website Tetap Error
Handshake hanya membuktikan transport connection berhasil.
Masih ada tahap lain:
Contohnya TCP 443 terbuka tetapi certificate TLS invalid. TCP connection tetap berhasil, namun browser menampilkan error TLS.
TCP Handshake vs TLS Handshake
| Aspek | TCP Handshake | TLS Handshake |
|---|---|---|
| Tujuan | Membentuk transport connection. | Membangun secure session. |
| Protocol | TCP. | TLS. |
| Contoh pesan | SYN, SYN-ACK, ACK. | ClientHello, ServerHello, certificate, key negotiation. |
| Enkripsi | Tidak. | Ya, setelah parameter secure terbentuk. |
TCP Handshake dan Connection Pooling
Application server, HTTP client, database driver, dan proxy sering menggunakan connection pooling.
Alih-alih membuat koneksi baru untuk setiap request:
aplikasi dapat menjaga beberapa koneksi tetap terbuka:
Hal ini mengurangi overhead handshake.
Proxy Juga Bisa Menggunakan Connection Pooling
Proxy tidak selalu membuat koneksi upstream baru untuk setiap request.
Tergantung implementasinya, proxy bisa melakukan connection reuse atau pooling ke destination.
Ini dapat membantu performa terutama jika banyak request menuju origin yang sama.
TCP Handshake dan Load Balancer
Dalam arsitektur modern, client mungkin tidak langsung berbicara ke application server.
Contohnya:
TCP connection client dapat terminate pada load balancer, sementara load balancer membuat koneksi lain ke backend.
Konsep ini mirip dengan banyak reverse proxy.
TCP Handshake dan Reverse Proxy
Reverse proxy seperti Nginx atau HAProxy dapat menerima koneksi dari client kemudian membuat atau menggunakan koneksi ke upstream server.
Artinya dari perspektif TCP bisa ada lebih dari satu connection berbeda dalam satu perjalanan request.
Forward Proxy vs Reverse Proxy dari Sisi TCP
| Jenis | Koneksi Pertama | Koneksi Berikutnya |
|---|---|---|
| Forward Proxy | Client → Proxy | Proxy → Destination |
| Reverse Proxy | Client → Reverse Proxy | Reverse Proxy → Backend |
Untuk konsep arsitekturnya, baca artikel Forward Proxy vs Reverse Proxy.
Bagaimana Cara Troubleshooting TCP Handshake?
1. Pastikan DNS Benar
Hostname harus resolve ke IP yang sesuai.
2. Pastikan Routing Ada
Client harus mempunyai jalur menuju server.
3. Cek Port
Pastikan service listen pada port yang benar.
4. Cek Firewall
Pastikan SYN tidak diblokir.
5. Tes dengan Netcat
6. Gunakan tcpdump
Lihat apakah:
7. Jika Menggunakan Proxy, Tes Proxy Terlebih Dahulu
Pastikan client dapat membangun koneksi TCP ke IP dan port proxy.
Membaca Gejala dari Handshake
| Yang Terlihat | Kemungkinan |
|---|---|
| SYN → SYN-ACK → ACK | Handshake berhasil. |
| SYN → RST | Connection refused / port tidak menerima. |
| SYN → tidak ada jawaban | Drop, routing problem, host down, atau filter. |
| SYN → SYN-ACK → tidak ada ACK | Masalah pada jalur balik/client atau handshake tidak diselesaikan. |
| Banyak SYN-RECV | Banyak koneksi setengah terbuka; perlu investigasi lebih lanjut. |
Kesalahan Umum tentang TCP Handshake
- Menganggap handshake sama dengan TLS.
- Menganggap SYN adalah HTTP request.
- Menganggap port terbuka berarti aplikasi pasti sehat.
- Menganggap ping sukses berarti TCP pasti sukses.
- Menganggap connection refused sama dengan timeout.
- Mengira ACK selalu membawa data aplikasi.
- Menganggap TCP handshake mengenkripsi traffic.
- Mengira HTTP/3 memakai TCP handshake.
- Menganggap satu request melalui proxy hanya mempunyai satu koneksi TCP.
Ringkasan TCP Three-Way Handshake
| Tahap | Pesan | Tujuan |
|---|---|---|
| 1 | SYN | Client memulai koneksi dan mengirim initial sequence number. |
| 2 | SYN-ACK | Server mengakui SYN client sekaligus mengirim initial sequence number server. |
| 3 | ACK | Client mengakui SYN server dan koneksi menjadi established. |
FAQ TCP Handshake
Apa itu TCP handshake?
TCP handshake adalah proses pembentukan koneksi TCP antara dua endpoint sebelum data normal dipertukarkan. Mekanisme dasarnya menggunakan SYN, SYN-ACK, dan ACK.
Apa arti SYN?
SYN berarti synchronize dan digunakan untuk memulai connection establishment serta membawa initial sequence number.
Apa arti SYN-ACK?
SYN-ACK merupakan response server yang mengakui SYN client sekaligus mengirim SYN dan initial sequence number milik server.
Apa fungsi ACK terakhir?
ACK terakhir mengonfirmasi SYN milik server sehingga kedua peer telah menyinkronkan sequence number dan koneksi dapat masuk ke state ESTABLISHED.
Kenapa TCP memakai three-way handshake?
Karena kedua peer perlu menyinkronkan initial sequence number masing-masing dan memastikan connection initiation valid sebelum koneksi dianggap terbentuk.
Apakah TCP handshake terenkripsi?
Tidak. TCP handshake bukan encryption protocol. Untuk HTTPS, TLS handshake berjalan setelah koneksi TCP terbentuk.
Apa beda TCP handshake dan TLS handshake?
TCP handshake membentuk transport connection, sedangkan TLS handshake membangun secure cryptographic session di atas koneksi tersebut.
Kenapa TCP handshake timeout?
Penyebabnya bisa berupa firewall drop, server offline, routing bermasalah, port diblokir, packet loss, atau destination yang tidak dapat dijangkau.
Apa arti SYN-SENT?
SYN-SENT berarti client sudah mengirim SYN dan sedang menunggu response untuk melanjutkan pembentukan koneksi.
Apa hubungan TCP handshake dengan proxy?
Client harus membentuk koneksi TCP menuju proxy, dan proxy biasanya membentuk atau menggunakan koneksi lain menuju destination. Jadi penggunaan proxy dapat melibatkan beberapa TCP connection terpisah.
