Python socket programming 2: socket and tcp three-way handshake, pythonsocket
To establish a TCP connection, you must go through the "three-way handshake ":
The first handshake: the client sends the syn Packet (syn = j) to the server and enters the SYN_SEND status, waiting for confirmation from the server;
The second handshake: when the server receives the syn packet, it must confirm the customer's SYN (ack = j + 1) and send a SYN Packet (syn = k), that is, the SYN + ACK packet, the server enters the SYN_RECV status;
The third handshake: the client receives the server's SYN + ACK package and sends the ACK (ack = k + 1) Confirmation package to the server. After the package is sent, the client and server enter the ESTABLISHED status, complete three handshakes.
Which step of the socket has undergone three handshakes? See:
That is, it occurs in the client, address = server. in accept () and client connect (), a connection object is generated after three handshakes. Subsequent recv () and send () are the real data receiving/sending.