Cơ BảnNetwork iconNetwork

TCP 3-way handshake hoạt động thế nào? Tại sao cần 3 bước?

TCP 3-way handshake (SYN→SYN-ACK→ACK) thiết lập kết nối bằng cách đồng bộ sequence numbers của cả hai phía.

Ba bước gồm:

  1. Client gửi SYN với sequence number ngẫu nhiên X
  2. Server trả SYN-ACK với ACK=X+1 và sequence number Y của server
  3. Client gửi ACK=Y+1 xác nhận nhận được Y. Sau đó kết nối được thiết lập và dữ liệu có thể truyền

Cần đủ 3 bước vì cả hai phía cần đồng bộ sequence number của nhau: 2 bước chỉ đảm bảo server nghe được client, bước 3 đảm bảo client nghe được server. Khi đóng kết nối có 4-way handshake (FIN/ACK/FIN/ACK) vì hai hướng đóng độc lập. Trong thực tế, 3-way handshake là một nguồn latency đáng kể — đó là lý do HTTP/2 multiplexing và QUIC (HTTP/3) ra đời để giảm số lần handshake.

Xem toàn bộ Network cùng filter theo level & chủ đề con.

Mở danh sách Network