TCP网络编程
网络通信之TCP通信 其实和UDP通信步骤差不多,只是前面多了个连接的过程。整体流程: 服务器端 一、建立连接阶段 调用socket(),分配文件描述符,即监听套接字 调用bind(),将套接字与本地IP地址和端口绑定 调用listen(),监听特定端口,socket()创建的套接字是主动的,调用listen()使得该文件描述符为监听套接字,变主动为被动 调用accept(),阻塞等待客户端连接 二、数据交互阶段 调用recv(),阻塞等待客户端发送的请求,收到请求后从recv()返回,处理客户端请求 调用send(),将处理结果发送给客户端,然后继续调用recv()等待客户端请求 三、关闭连接 当recv()返回0的时候,说明客户端发来了FIN数据包,即关闭连接,也会调用close()关闭连接套接字和监听套接字 客户端 一、建立连接阶段 调用socket(),分配文件描述符 调用connect(),向服务器发送建立连接请求 二、数据交互阶段 调用send(),将请求发送给服务器 调用recv(),阻塞等待服务器应答 三、关闭连接 与服务器端一致 具体代码如下: s....