UDP和TCP的区别
TCP三层握手
####1、第一次握手 # 建立连接时,客户端发送SYN包到服务器,其中包含客户端的初始序号seq=x,并进入SYN_SENT状态,等待服务器确认。 ####2、第二次握手 # 服务器收到请求后,必须确认客户的数据包。同时自己也发送一个SYN包,即SYN+ACK包,此时服务器进入SYN_RECV状态。 ####3、第三次握手 # 客户端收到服务器的SYN+ACK包,向服务器发送一个序列号(seq=x+1),确认号为ack(客户端)=y+1,此包发送完毕, # 客户端和服务器进入ESTAB_LISHED(TCP连接成功)状态,完成三次握手。
TCP四次挥手
#### 1、第一次挥手 # 首先,客户端发送一个FIN,用来关闭客户端到服务器的数据传送,然后等待服务器的确认。其中终止标志位FIN=1,序列号seq=u。 #### 2、第二次挥手 # 服务器收到这个FIN,它发送一个ACK,确认ack为收到的序号加一。 #### 3、第三次挥手 # 关闭服务器到客户端的连接,发送一个FIN给客户端。 #### 4、第四次挥手 # 客户端收到FIN后,并发回一个ACK报文确认,并将确认序号seq设置为收到序号加一。 # 首先进行关闭的一方将执行主动关闭,而另一方执行被动关闭。