本经验是本人结合自己的经验和学习经历进行编写的,适用于socket编程的新手!
工具/原料
计算机
方法/步骤
1、TCP的连接建立TCP是面向连接的协议,TCP连接经过3次握手(1)服务器必须准备好接收来自客户端的连接请求,通过socket,bind和listem函数来实现。客户通过调用connect函数进行主动打开,这引起客户端发送一个SYN分节到服务器端。注解:服务器调用socket,bind和listem函数,使其进入listen状态客户通过调用connect函数进行主动打开,这引起客户端发送一个SYN分节到服务器端,其状态为SYN_SEND状态
2、(2)服务器收到客户端发来的SYN分节之后,必须发送ACK对其进行确认,同时发送-个自己的SYN分节给客户端,表示接受客户端建立连接的请求注解:服务端:当收到SYN分节,并且发送ACK和SYN的时候,它的状态转变为SYN_RECV状态。客户端:当收到服务端的ACK之后,其状态变为ESTABLISHED
3、(3)客户端发送ACK确认服务端的SYN,连接建立成功。注解:当服务端收到客户端的ACK时候,就转为数据状态ESTABLISHED直观一点可以参照一下下面的图片: