TCP三次握手过程

三次握手源码
下面是ns3里三次握手整体过程的源码,和上面图解一一对应:
TCP socket的状态枚举:
整体过程:
-
客户端首先connect:tcp-socket-base::connect
调用DoConnect发送syn
-

-
服务端tcp-socket-base::DoForwardUp 收到包后去拆解,
-

-
仅当接收到的数据包包含 SYN 标志,并且服务器应用同意连接请求时,才会克隆一个新的套接字,同时安排后续处理以完成连接建立
-
ProcessListen
-
CompleteFork
-
客户端接收 SYN+ACK 并发送 ACK 阶段:
-

-

-
服务器接收 ACK 并完成连接阶段
-

-

-
