TCP三次握手
服务器接收到第三次通知后,accept 函数返回。
TCP 确认接收数据原理
通道中数据有先后顺序,先发先到,后发后到。并为每个数据流分配一个序号,经过延迟确认使接收缓冲区数据是顺序的。 例如: 先接收到序号6,延迟一定时间,如果收到5,先确认5已经收到,再将6存入缓冲区,确认6已经收到;如果5未收到,则认为5、6都未接收到,需要重新发送。
服务器listen 到 accept
内核为服务器准备了两个队列,不完全请求队列、等待accept建立socket队列。不完全请求队列是第一次请求连接时,服务器收到连接请求时使用的队列;accept 从队列中取出一个节点。
客户端send 数据,只是将数据发送到内核。