TCP传输的特点和原理是什么,有哪些要点
Admin 2022-06-09 群英技术资讯 865 次浏览
这篇文章主要介绍“TCP传输的特点和原理是什么,有哪些要点”,有一些人在TCP传输的特点和原理是什么,有哪些要点的问题上存在疑惑,接下来小编就给大家来介绍一下相关的内容,希望对大家解答有帮助,有这个方面学习需要的朋友就继续往下看吧。注意,TCP并不使用停止等待协议来实现可靠传输。
停止等待协议
传输层的数据传输单元称为段。下面,为了方便,都称为分组。
停止等待协议的原理非常简单,发送一个分组后就停止继续发送,等待收到上一个分组的确认后,再继续发送后面的分组。
下面通过几个不同情况来分析:
无差错情况
无差错情况非常简单,如下图。每发送完一个分组后,就停止发送,等待收到该分组的确认后,再继续发送后面的分组。

出现差错
出现差错分两种情况,第一种是发送的分组没有交付成功到目的地址,另一种情况是传送的数据包有差错。通过图例,我们来分析两种情况


首先来看看B的操作:A发送M1分组,该分组如果是错误的,B收到后会丢弃该数分组,然后什么也不做(不会通知A收到了错误分组)。如果B没有收到M1分组,那么它什么也不知道,也不会去做任何动作。
接下来看A是如何做的:A发完分组后,迟迟收不到B对M1分组的确认后,当等待的时间超时了,那么就需要重新发送该M1分组。要实现超时重传,就需要设置一个超时计时器,当发送的一个分组在超时时间前收到了确认,那么就重置超时计时器,否则的话就需要重传分组。
有几点是需要注意的:
A在发送完一个分组后,必须还要保存该分组的副本,以便超时重传。当收到这个分组的确认后,就可以丢弃该分组的副本了。
需要给每一个分组做编号,这样才知道是各个分组的到达情况。
超时时间应该设置的比平均传输时间稍长一些,以免引起不必要的重传。
确认丢失和确认迟到
除了分组在传送过程中会出现差错,在返回确认的时候,也会出现差错——确认丢失和确认迟到。

首先看确认丢失情况,A的分组B收到了,并给A发送了确认,但该确认丢失了,A没有收到。因为A没有收到M1的确认,那么等待超过超时后,就会向B重传M1。这个时候B收到了重复的分组M1,需要做两个操作:
将重复的分组M1丢弃
向A发送M1的确认。因为既然A重传了M1,就表示A没有收到M1的分组。所以B需要继续发送对M1的确认。

再来看另一种情况,对M1的分组确认迟到了(超过超时时间后才收到)。A在收到重复的确认后,会丢弃,其他什么也不做。
通过上述的超时重传机制,就可以实现在不可靠的网络传输上实现可靠的传输。
信道利用率
上述的停止等待协议简单,但它有一个非常大的缺点——信道的利用率太低。在等待收到确认的这段时间,信道是完全空闲的,十分浪费。

为了提高信道利用率,可以使用流水线传输,流水线传输可以连续发送多个分组,这样就可以大大提高信道利用率了。

采用流水线传输的协议有连续ARQ协议和窗口滑动协议。而TCP就是采用滑动窗口协议来完成可靠传输的。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
小编今天主要给大家介绍下“Linux系统如何重启apache”的相关内容,如果你对这方面比较感兴趣的话,不妨来看一看小编所整理的资料,或多或少能帮助大家解决问题。
CentOS中nginx负载均衡和反向代理的搭建
Centos 下离线rpm包安装mysql5.7
在Linux系统中调试分辩率的时候,怎样进行调整呢。想要清楚这方面的的操作内容,可以跟随小编来了解了解。希望这篇文章能帮助到朋友们。
在linux中,raid是“廉价磁盘冗余阵列”的意思;raid是“Redundant Array ofInexpensiveDisks”的缩写,其基本想法是把多个便宜的小磁盘组合到一起,称为一个磁盘组,使性能达到或者超过一个容量巨大、价格昂贵的磁盘。
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008