Three-way handshake là gì?
- ★
- ★
- ★
- ★
- ★
Trong thế giới thực, một cái bắt tay (handshake) là một lời chào thông lệ giữa hai người. Tương tự như vậy một cái bắt tay (handshake) trong máy tính đóng vai trò như một lời chào giữa hai hệ thống máy tính. Nó thường được sử dụng để khởi tạo kết nối mạng (network connection) giữa hai host.
Quá trình bắt tay có thể được hoàn thành giữa hai hệ thống bất kỳ giao tiếp với nhau trên cùng một giao thức (protocol). Hai hệ thống có thể là một máy khách (client) và máy chủ (server) hoặc đơn giản là hai máy tính trên mạng P2P. Bắt tay (handshake) xác nhận danh tính (identity) của các hệ thống kết nối và cho phép giao tiếp diễn ra.
Bắt tay (handshake) qua mạng (network) thường được gọi là bắt tay 3 bước (three-way handshake) hoặc "SYN-SYN-ACK." Một cái bắt tay thành công bao gồm bảy bước:
- Host A gửi một SYN packet đến Host B.
- Host B nhận được yêu cầu SYN của Host A.
- Host B gửi thông điệp synchronize acknowledgement (SYN-ACK) đến Host A.
- Host A nhận thông điệp SYN-ACK của Host B.
- Host A gửi thông điêp xác nhận (ACK) đến Host B.
- Host B nhận thông điệp ACK của Host A.
- Kết nối giữa hai hệ thống được thiết lập.
Ví dụ về các giao thức (protocol) sử dụng bắt tay (handshake) bao gồm TCP, TLS và SSL.
Learning English Everyday