TCP/IP 三次握手与四次挥手
2016-06-11 11:17
375 查看
三次握手
在TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手建立一个连接。第一次握手:建立连接时,客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认;
SYN: 同步序列编号(Synchronize Sequence Numbers)
第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态;
第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。
完成三次握手,客户端与服务器开始传送数据。
四次挥手
第一次挥手A端向B端请求断开连接是会向B端发送一个带有FIN标记的报文段,这里的FIN是FINISH的意思
第二次挥手
B端接受到A发送的FIN后,B端现在可能还有数据没传输完,所以B端不会马上像A端发送FIN,而是线发送一个确认序号ACK,意思是说,你发的断开请求我收到了,但我现在还有数据没w完,请等一下
第三次挥手
当B端的事情忙完了,那么此时B端就可以断开连接了,此时B端向A端发送FIN序号,意思是可以断开连接了
第四次挥手
A端收到B端发送的FIN后,会向B端发送确认ACK然后经过两个MSL时长后断开连接.
MSL是Maximum Segmeng Lifetime,最大报文段生存时间,2个MSL是是报文段发送和接收的最长时间
相关文章推荐
- python快速搭建HttpServer
- VMware虚拟机NAT模式的具体配置
- Android网络图片处理——Picasso与HttpUrlConnection比较
- 第一章 简介和TCP/IP
- okhttp
- Android OkHttp完全解析
- Android平台访问https 双向认证(下)
- HttpClient4.5.2 快速API
- HttpClient4.5.2 HTTP认证
- 笨笨的电话网络
- HttpClient4.5.2 连接管理
- Asp.net使用HttpModule压缩并删除空白Html请求
- 【C++】 网络编程 01
- 欧拉路径
- 你的数据安全吗
- http://119.145.255.64:10010/repositories/
- 电路交换和分组交换
- HTTP的GET和POST格式解析
- HttpServletRequest获取URL get变量
- C++ Qt多线程 TcpSocket服务器实例