Recently, I want to write about the server again. I flipped through the first volume of TCP/IP over the weekend and summarized some of the things I found.
ARP
IP address to link address query
ICMP
Ping is implemented using ICMP echo requests and responses.
Traceroute uses icmp ttl timeout and port unavailability. The TTL timeout package table is still in the intermediate router. The port unavailability table has arrived at the host.
TTL increases from 1
TCP has made many optimizations to ensure reliability and maximum network utilization, such as four timers, slow start, and Nagle algorithms.
4 timers
Timeout retransmission Timer: used for timeout retransmission
How long is the calculation time-out, through RTT and RTO
RTT calculation starts timing when sending packets. If a timing process is not completed, other packets will not be timing.
2msl Timer
The time Wait Status is used to ensure that the last packet is received by the other party.
Continuous Timer
When the available window of the recipient's notification is 0, the notification is not 0. If the available Notification Packages in the window are lost, mutual waits will occur.
Therefore, this timer is used to regularly query whether the recipient has a window available.
The retention timer takes effect when the application process selects the so_keepalive option of the plug-in. If the consecutive idle time of the connection exceeds 2 hours, the timer times out and sends the connection detection packet segment to the peer end to force the Peer to respond. If you receive the expected response, TCP can determine that the Peer host is working normally. TCP will not perform a life-saving test until the connection is idle for more than two hours. If other responses are received, TCP determines that the Peer host has restarted. If no response is received for several active standbys, TCP assumes that the Peer host has crashed, even though it cannot be distinguished from host failure (for example, the system has crashed but has not been restarted ), or connection failure (for example, the middle router transmission failure or the telephone line is broken ).
TCP backlog
1: The backlog completes three handshakes to connect to the application layer.
2: When the backlog is full, the server ignores the subsequent sync requests without any processing. If no reset packet is returned, the client will see sync timeout and then try again, if the server's backlog has space, you can process the sync request.
This article is from the "author" blog, please be sure to keep this source http://changshizhe.blog.51cto.com/6250833/1558999
TCP review Summary