码迷,mamicode.com
首页 > 其他好文 > 详细

学习笔记——TCP“三次握手”和“四次挥手”,简单介绍

时间:2017-09-30 15:15:44      阅读:137      评论:0      收藏:0      [点我收藏+]

标签:soc   完成   需要   简单   tcp/ip   可靠   执行   数据   客户端   

TCP/IP协议中,TCP协议提供可靠的连接服务,采用“三次握手”建立一个连接。

(1)第一次握手:客户端发送SYN包(SYN=j)到服务器,并进入SYN_SEND状态,等待服务器确认。

(2)第二次握手:服务器收到SYN包,必须确认客户的SYN(ACK=j+1),同时自己也发送一个SYN包(SYN=k),即SYN+ACK包,此时服务器进入SYN_RECV状态。

(3)第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ACK=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。

完成三次握手,客户端与服务器开始传送数据

 

由于TCP连接是全双工的,连接的拆除需要发送四个包,因此称为“四次挥手”。客户端或服务器均可主动发起挥手动作,在socket编程中,任何一方执行close()操作即可产生挥手操作。

(1)第一次挥手:客户端发送一个FIN,用来关闭客户到服务器的数据传送。 

(2)第二次挥手:服务器收到这个FIN,它发回一个ACK,确认序号为收到的序号加。

(3)第三次挥手:服务器关闭与客户端的连接,发送一个FIN给客户端。 

(4)第四次挥手:客户端发回ACK报文确认,并将确认序号设置为收到序号加1。

 

学习笔记——TCP“三次握手”和“四次挥手”,简单介绍

标签:soc   完成   需要   简单   tcp/ip   可靠   执行   数据   客户端   

原文地址:http://www.cnblogs.com/shouzhong/p/7614520.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!