传输层协议有哪些(消息队列的使用场景)( 三 )
先简单说一个掌握比赛的算法 。很简单 。请看图片 。
文章插图
文章插图
这一章的总结很难:
1)为什么不握手两次来建立凝聚力?
这对于防止在两次握手突然被传输到服务器的情况下失败的连接请求消息段的失败是重要的 。考虑以下情况:客户端A向服务器b发送TCP连接请求的第一个请求,消息在网络上的某个节点停留了很长时间,A认为超时后消息丢失,所以再次重传 。收到消息后,B建立连接 。数据传输后,双方断开连接,此时之前滞留在网络中的连接需要到达服务器B,B以为A再次发送连接请求 。如果此时应用三次握手,那么B将向A返回一个确认消息段 。由于这是一个无效的请求,A将忽略它,并且无法建立连接 。如果采用两次握手,这种情况下,B认为传输连接已经建立,一直期待A传输数据,而A此时没有连接要求,所以忽略了,造成B的资源浪费 。
2)为什么不用三次握手释放连接,发送最后一次握手消息期待2MSL?
原因有二:(面试问不完)
1)保证A发送的最后一个确认段可以到达b,如果A不期待2MSL,如果A返回的最后一个确认段丢失,将无法进入正常关闭状态,此时关闭将无法重传 。
2)防止出现“无效连接请求报文段”a .发送完最后一个确认报文段后,2MSL可以保证在这个连续时间内发生的所有报文从网络中消失,导致的问题与下面描述的类似,无需两次握手即可建立连接 。
服务器停止TCP连接的时间比客户端早,因为客户端在最后等待2MSL后就可以进入CLOSED状态(简称TCP closed状态) 。
假设在一个互联网中,所有服务的传输都没有错误,所有节点都不会产生故障诗 。在这种情况下,可靠交付TCP的功效是否过剩?
1)每个IP数据包都是独立路由的,因此到达目的主机时可能会出现故障 。
2)由于路由计算的出现,IP包在互联网中盘旋,最后在包的头部生存时间的值降到零,包在中途丢失 。
3)路由器突然有大量流量,导致路由器没有时间处理到达的数据包,所以丢弃了一些数据包 。
这说明有必要依靠TCP可靠的传递效率,可以保证准确的消息被目标主机的目标进程吸收 。
推荐阅读
- 大文件如何快速传输(手机文件怎么导入电脑)
- 中国奇谭|《中国奇谭》一集封神之后评分下滑,深层次引发共鸣之后还是失望
- 基层党建包括哪些内容(基层党建工作主要内容)
- 银行|在工作中,每个人在不同的层次,都是在努力着
- 两台电脑如何传输文件(win7两台电脑传输)
- ps如何新建图层(ps让图层和背景图融合)
- ps如何插图(ps如何在图层添加图片)
- ps如何复制图层(ps如何粘贴图层)
- ps如何合并图层(ps图层合并了怎么分开)
- TVB|恭喜!吴君如前弟媳勇夺视后激动大哭,一度得罪高层被TVB封杀