运输层—可靠传输的工作原理

来源:互联网 发布:红蜘蛛 软件 编辑:程序博客网 时间:2024/06/08 16:52

可靠传输需要满足这两个要求:第一、传输信道不产生差错,第二、不管发送方以多快的速度发送数据,接收方总是能够来得及处理收到的数据。但是实际上的网络都不具备这两个理想条件,我们需要通过一些可靠传输的协议来实现这两个要求,从而达到可靠传输。

我们先从最简单的停止等待协议说起,为了方便讲述这个协议,我们分为以下4种情况来说明:
1、无差错情况
发送方发送一个分组给接收方,然后接收方收到之后向发送方发送一个确认,发送方收到确认之后再发送下一个分组。
2、出现差错
这种情况下,接收方要丢弃分组,然后什么也不做,在发送方每次发送都会设置一个超时计时器,如果超过了时间还没有收到确认的话,那么发送方就再次发送,如果收到了确认,那么就撤销这个超时计时器。
在这里我们需要注意几点:
(1)发送方每次发送完分组之后需要暂时保留一下分组的副本,为重新发送做准备
(2)分组和确认分组都必须要进行编号
(3)超时计时器设置的时间应该比分组进行一个往返的时间多一点,以免造成确认分组还没有到达,就进行重新传输了,从而浪费资源
3、确认分组丢失
这时候超时计时器时间到,发送方要重新传送分组,接收方收到之后,发现是重复的,那么这时候就丢弃重复收到的这个分组,然后向发送方发送确认。
4、确认分组迟到
由于确认分组迟到,所以超时计时器的时间到,发送方重新发送分组,接收方收到之后,发现是重复的,丢弃这个分组,然后重新发送确认。但是在后续的某个时间,发送方又收到了这个迟到的分组,发现是重复的,那么直接丢弃。
0 0
原创粉丝点击