1,TCP是面向连接的协议,建立的过程使用三次握手协议,大概过程是客户机发送数据请求给服务机,告诉服务机,我有数据需要发送,服务机收到请求,发送一个确认请求回复,告诉客户机你发的请求我已经收到,客户机收到该请求也向服务机发送一个确认请求回复,告诉服务机我收到了。具体的socket编程流程如下所示:
服务器端:
socket() 建立socket连接,生成一个socket文件描述符,此时未分配ip和端口号
bind() 服务器端绑定需要监听的ip和端口号
listen() 对服务器绑定的ip和端口进行监听,看是否有客户端的请求
accept() 客户端发送connect请求,请求连接,服务器accept接受客户端连接请求,此时又分配ip和端口号用于客户端和服务器进行通信,之前分配的主要用于监听
rec() 接收客户端发送的需要处理的数据
send() 数据处理完返回给客户端进行显示处理等操作
close() 数据传输完成,关闭socket连接
客户端:
socket() 建立socket连接,生成一个socket文件描述符,此时未分配ip和端口号
connect() 当客户端有连接请求时,发送connect给服务器请求建立连接
send() 连接建立发送数据
rec() 接收服务器处理完成的数据
close() 数据传输完成,关闭socket连接
以上是TCP基于连接的三次握手协议流程,接下来介绍基