美文网首页
网络学习三

网络学习三

作者: opas | 来源:发表于2016-12-04 20:11 被阅读0次

关于TCP握手和挥手告别

tcp协议格式

clipboard.png

三次握手

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


clipboard.png

第一次握手:建立连接时,客户端发送 syn 包(tcp协议中syn位置1,序号为J)到服务器,并进入 SYN_SEND 状态,等待服务器确认;
第二次握手:服务器收到 syn 包,必须确认客户的 SYN,同时自己也发送一个 SYN 包,即 SYN+ACK包(tcp协议中syn位置1,ack位置1,序号K,确定序号为J+1),此时服务器进入 SYN_RECV 状态;
第三次握手:客户端收到服务器的 SYN+ACK 包,向服务器发送确认包 ACK(tcp协议中ack位置1,确认序号K+1),此包发送完毕,客户端和服务器进入 ESTABLISHED 状态,完成三次握手。


clipboard.png

通过这样的三次握手,客户端与服务端建立起可靠的双工的连接,开始传送数据。 三次握手的最主要目的是保证连接是双工的,可靠更多的是通过重传机制来保证的。

挥手告别

clipboard.png

1)客户端 A 在应用层调用close时会激发底层发送一个 FIN(tcp协议中FIN位置1、序号为M,结合上图分析)请求,用来关闭客户 A 到服务器 B 的数据传送,客户端A此时处于半关闭状态(应用层无法接收数据但底层还可以接收数据);
2)服务器 B 底层收到客户端A的FIN时会做两件事
2.1)第1件事:收到客户端A的FIN时底层会主动回发一个ACK(tcp协议中ACK位置1,确认序号M+1)
2.2)第2件事:收到客户端A的FIN时,导致服务器B的应用层read()返回0(告诉服务器B应用层:客户端A关闭了)
3)服务器B应用层调用close()激发底层给客户端 A 发送一个 FIN(tcp协议中FIN位置1、序号为N),这是服务器B已处于半关闭状态;
4)客户端 A 底层回发 ACK(tcp协议中ACK位置1,确认序号N+1) 给服务器B,这是客户端A、服务器B都处于完全关闭状态,回收相应的资源。

clipboard.png

这是因为服务端的 LISTEN 状态下的 SOCKET 当收到 SYN 报文的建连请求后,它可以把 ACK 和 SYN(ACK 起应答作用,而 SYN 起同步作用)放在一个报文里来发送。但关闭连接时,当收到FIN 报文通知时,如果能将ACK、FIN放在一个报文里那么就有了三次挥手,但是这是不可能,因为ACK是服务器B一收到FIN报文底层就回发的,而服务器B的FIN是应用层调用close()激发的,所以它这里的 ACK 报文和 FIN 报文在发送的时间上都是分开的,不可能同时发送。

相关文章

  • 网络学习三

    关于TCP握手和挥手告别 tcp协议格式 三次握手 在 TCP/IP 协议中,TCP 协议提供可靠的连接服务,采用...

  • 深度学习第二天--卷积神经网络

    昨天是学习深度学习的第二天,学习到了一个很重要的现代神经网络--卷积神经网络,就是它开启了对于现代神经网络的第三...

  • 为什么学生网络教育效果不好

    目录: 一、学习网络教育的感受; 二、、网络教育的优点! 三、网络教育效果不好的原因? 四、怎么改进网络教学效果 ...

  • 2018.3.21

    今天是嵌入式学习第九周周三。 今天主要学习了Linux系统的网络配置管理。包括网络命令,修改IP地址,显示主机网络...

  • 为什么要使用人人通空间?

    网络学习空间人人通,使教育部提出的“”三通两平台“”的中的一项重要内容。网络学习空间人人通,就是个人的网络...

  • 裕丰园小学英语组互联网下教师自主研讨活动讨论

    第三期 讨论话题: 如和利用网络学习平台提高学生的英语学习效率? 开篇语 参加网络学习, 对于我们一线教师来说, ...

  • 网络学习系列(三)Inception系列

    Inception v1 论文链接:Going deeper with convolutions 要解决的问题: ...

  • 机器学习(三):神经网络

    一、基本原理 神经网络(neural networks)模拟生物神经网络的一种机器学习模型。下面以三层神经网络为例...

  • HTTP网络协议(学习笔记三)

    HTTP网络协议(三) 8~12课 TCP的几个要点 可靠传输 流量控制 拥塞控制 连接管理-建立连接-释放连接 ...

  • 0404今日话题

    你报过多少种网络课程?学习情况如何? 报过三种网络课程 1,职业考试方面。报了东奥的中级职称考试网络学习班。张志凤...

网友评论

      本文标题:网络学习三

      本文链接:https://www.haomeiwen.com/subject/fcnhmttx.html