TCP三次握手成功后,会把连接放到全连接队列里,等待服务器端accept后移除。
如下图所示,图片转自:https://zhuanlan.zhihu.com/p/547279481
下图转自博客:https://zhuanlan.zhihu.com/p/340016138
TCP三次握手过程中,第一次握手server收到client的syn后,内核会把该连接存储到半连接队列中,同时回复syn+ack给client(第二次握手),第三次握手时server收到client的ack,如果此时全连接队列未满,内核会把连接从半连接队列移除,并将其添加到 accept 队列,等待应用进程调用 accept 函数取出连接,如果全连接队列已满,内核的行为取决于内核参数tcp_abort_on_overflow:
tcp_abort_on_overflow=0,server会丢弃client的ack。
tcp_abo