1.TCP
TCP:传输控制协议(TCP,Transmission Control Protocol)是一种面向连接的、可靠的、基于字节流的传输层通信协议,是为了在不可靠的互联网络上提供可靠的端到端字节流而专门设计的一个传输协议。使用三次握手协议建立连接
2.TCP的三次握手
在TCP协议中,通信双方将通过三次TCP报文实现对以上信息的了解,并在此基础上建立一个TCP连接,而通信双方的三次TCP报文段的交换过程,也就是通常所说的TCP连接建立实现的三次握手(Three-Way Handshake)过程。
第一次握手
客户端给服务器端发送一个SYN(SEQ=x)报文(在 TCP 标头中 SYN 位字段为 1 的 TCP/IP 数据包), 进入SYN_SEND状态。
SYN:同步序列编号(Synchronize Sequence Numbers)是TCP/IP建立连接时使用的握手信号。在客户端和服务器端之间建立正常的TCP网络连接时,客户机首先发出一个SYN消息。
第二次握手
服务器端收到SYN报文,返回客户端 一个SYN (SEQ=y)ACK(ACK=x+1)报文(在 TCP 标头中SYN和ACK位字段都为 1 的 TCP/IP 数据包), 来表示确认已收到客户端的 SYN报文,服务器进入SYN_RECV状态。
ACK : 确认字符(Acknowledge character),在数据通信中,接收站发给发送站的一种传输类控制字符。表示发来的数据已确认接收无误。
第三次握手
客户端收到服务器端的SYN报文确认无误后,给服务器端响应一个ACK(ACK=y+1)报文(在 TCP 标头中 ACK 位字段为 1 的 TCP/IP 数据包), 进入Established状态。
三次握手完成后客户端和服务器端就可以正常进行数据传送。