美文网首页
初探 SOCKET TCP (C代码示例)

初探 SOCKET TCP (C代码示例)

作者: Atomas | 来源:发表于2020-07-23 16:03 被阅读0次

TCP SOCKET 的建立流程:

tcp-socket-flow-chart

通过代码来实践下:

tcp_server.c

以上的代码主要实现:

1. 建立连接(3次握手)

2. 通过accept监听已建立好的连接

3-way handshake process

1. 服务端收到客户端发出SYN的请求后,会返回ACK+SYN, 并将请求放入半连接SYN-Q队列

2. 客户端收到服务端发出ACK+SYN请求后,会发送ACK的确认请求

3. 服务端收到客户端的ACK请求后,表明3次握手已完成,将SYN-Q的R1取出,放入ACCEPT-Q的队列(可由tcp_server.c中backlog进行设置)

4. accept()发现有已完成的请求R1, 将其取出,并返回一个新建的socket供后续的数据传输操作(write/read)

相关文章

网友评论

      本文标题:初探 SOCKET TCP (C代码示例)

      本文链接:https://www.haomeiwen.com/subject/tmrhlktx.html