- 1、本文档共74页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
在发送结点 (1) 从主机取一个数据帧,送交发送缓存。 (2) V(S)←0。 (3) N(S)←V(S)。 (4) 将发送缓存中的数据帧发送出去。 (5) 设置超时计时器。 (6) 等待。 {等待以下(7)和(8)这两个事件中最先出现的一个} (7) 收到确认帧 ACKn, 若 n = 1 – V(s),则: 从主机取一个新的数据帧,放入发送缓存; V(S)←[1 ? V(S)],转到 (3)。 否则,丢弃这个确认帧,转到(6)。 (8) 若超时计时器时间到,则转到(4)。 在接收结点 (1) V(R)←0。 (2) 等待。 (3) 收到一个数据帧; 若 N(S) = V(R),则执行(4); 否则丢弃此数据帧,然后转到(6)。 (4) 将收到的数据帧中的数据部分送交上层软件 (也就是数据链路层模型中的主机)。 (5) V(R)←[1 ? V(R)]。 (6) n←V(R); 发送确认帧 ACKn,转到(2)。 停止等待协议的要点 只有收到序号正确的确认帧 ACKn 后,才更新发送状态变量 V(S)一次,并发送新的数据帧。 接收端接收到数据帧时,就要将发送序号 N(S) 与本地的接收状态变量 V(R) 相比较。 若二者相等就表明是新的数据帧,就收下,并发送确认。 否则为重复帧,就必须丢弃。但这时仍须向发送端发送确认帧 ACKn,而接收状态变量 V(R) 和确认序号 n 都不变。 停止等待协议的要点(续) 连续出现相同发送序号的数据帧,表明发送端进行了超时重传。连续出现相同序号的确认帧,表明接收端收到了重复帧。 发送端在发送完数据帧时,必须在其发送缓存中暂时保留这个数据帧的副本。这样才能在出差错时进行重传。只有确认对方已经收到这个数据帧时,才可以清除这个副本。 停止等待协议的要点(续) 实用的 CRC 检验器都是用硬件完成的。 CRC 检验器能够自动丢弃检测到的出错帧。因此所谓的“丢弃出错帧”,对上层软件或用户来说都是感觉不到的。 发送端对出错的数据帧进行重传是自动进行的,因而这种差错控制体制常简称为 ARQ (Automatic Repeat reQuest),直译是自动重传请求,但意思是自动请求重传。 2.6 停止等待协议的定量分析 设 tf 是一个数据帧的发送时间,且数据帧的长度是固定不变的。显然,数据帧的发送时间 tf 是数据帧的长度 lf (bit)与数据的发送速率 C (bit/s)之比,即 tf = lf /C = lf /C (s) (3-1) 发送时间 tf 也就是数据帧的发送时延。 数据帧沿链路传到结点B还要经历一个传播时延 tp。 结点 B 收到数据帧要花费时间进行处理,此时间称为处理时间 tpr,发送确认帧 ACK 的发送时间为 ta。 停止等待协议中数据帧和确认帧的发送时间关系 A B DATA DATA ACK 传播时延 tp 处理时间 tpr 确认帧发送时间 ta 传播时延 tp 处理时间 tpr tT 时间 两个成功发送的 数据帧之间的 最小时间间隔 数据帧的 发送时间 tf 设置的 重传时间 tout 重传时间 重传时间的作用是:数据帧发送完毕后若经过了这样长的时间还没有收到确认帧,就重传这个数据帧。 为方便起见,我们设重传时间为 tout = tp + tpr+ ta + tp + tpr (3-2) 设上式右端的处理时间 tpr 和确认帧的发送时间 ta 都远小于传播时延 tp,因此可将重传时间取为两倍的传播时延,即 tout = 2tp (3-3) 简单的数学分析 两个发送成功的数据帧之间的最小时间间隔是 tT = tf + tout = tf + 2tp (3-4) 设数据帧出现差错(包括帧丢失)的概率为 p,但假设确认帧不会出现差错。 设正确传送一个数据帧所需的平均时间 tav tav = tT ( 1 + 一个帧的平均重传次数) 简单的数学分析(续) 一帧的平均重传次数 = {1 ? P[重传次数为 1] + 2 ? P[重传次数为 2] + 3 ? P[重传次数为 3] +…} = {1 ? P[第 1 次发送
文档评论(0)