停止等待协议

在实际的数据传输过程中,由于传输信道特性的不理想和外界干扰的存在,出现传输差错是不可避免的。传输差错导致接收的数据帧错误,接收方要求发送方重发数据帧。严重的传输差错还导致数据帧或应答帧丢失,使发送操作不能继续进行,或接收方重复接收数据。

超时重发技术:

结点A发送完一个数据帧时,就启动一个超时计时器。此计时器又称为定时器。

若到了超时计时器所设置的重传时间 tout而仍收不到结点 B 的任何确认帧,则结点 A 就重传前面所发送的这一数据帧。

一般可将重传时间选为略大于“从发完数据帧到收到确认帧所需的平均时间”。

重传若干次后仍不能成功,则报告差错。

重复帧问题:

如果是接收方的应答帧丢失,会导致发送方重复发送,出现重复帧。

每个数据帧带上不同的发送序号。每发送一个新的数据帧就把它的发送序号加 1。

若结点 B 收到发送序号相同的数据帧,就表明出现了重复帧。这时应丢弃重复帧,因为已经收到过同样的数据帧。

但此时结点 B 还必须向 A 发送确认帧ACK,以保证协议正常执行。

帧的编号问题:

任何一个编号系统的序号所占用的比特数一定是有限的。因此,经过一段时间后,发送序号就会重复。

序号占用的比特数越少,数据传输的额外开销就越小。

对于停止等待协议,由于每发送一个数据帧就停止等待应答,因此用一个比特来编号就够了。

帧的发送序号:

一个比特可表示0和1两种不同的序号。数据帧中的发送序号 N(S) 以 0 和 1 交替的方式出现在数据帧中。

每发一个新的数据帧,发送序号就和上次发送的不一样。用这样的方法就可以使收方能够区分开新的数据帧和重传的数据帧了。

停止等待方式的性能分析 :

由于发送端口或传输信道的速率限制,发送一帧需要一定的时间:“发送时延”。

接收一帧的时间和发送一帧的时间相同。发送应答帧,也有“发送时延”。

由于电磁波传输速率的存在,帧在信道中的传送,具有“传播时延”。

接收方收到帧后,差错检验、转交处理,发送方收到应答后,准备发送下一帧,都需要“处理时延” 。

t P = t2 – t0 = t3 – t1 = L / v 传播时延

t F = t1 – t0 = t3 – t2 = F / C 发送时延

t A = t5 – t4 = A / C 应答帧发送时延

t proc= t4 – t3 处理时延

L 节点A 与 B 之间的距离

v 信号传播速率 (3× 108 m / s)

F 数据帧长度 = H + D (帧头+数据)

A 应答帧长度

C 数据发送速率 bits/s

正常情况信道利用率

U = t D / (tF + tA + 2tP + 2tproc)

t D = D/C ,t F = F/C, t A = A/C

U = D /(F+A+2C( tP + tproc ))

不考虑处理时延和传播时延,及应答帧的开销,则U仅与帧结构相关;当传播时延较大时,信道利用率很低。

非正常情况

忽略应答时延和处理时延,则重传时间为

tout > = 2tP

则成功发送一帧的间隔为 tT = tF + 2tP

考虑传输可能出现差错的情况,则正确传送一个数据帧的平均时间为tav = tT(1 + 1个帧的平均传送次数)

设数据帧出错的概率为p,则tav = tT+(1-p) Σ ipi tT = tT (1-p)

设每帧平均重发次数为 R = p/(1-p)

发送一个帧所需要的信道容量为Q0=R(F+CT)+(F+A+2CI)

有传输差错影响时,信道利用率为

以上公式说明,信道利用率与控制信息长度、信道误码率、控制开销有关。

停止等待协议的优缺点:

优点:比较简单 。

缺点:通信信道的利用率不高,也就是说,信道还远远没有被数据比特填满。

虽然物理层在传输比特时会出现差错,但由于数据链路层的停止等待协议采用了有效的检错重传机制,数据链路层对上面的网络层可以提供可靠传输服务。

您可能还喜欢...

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据