先决条件 –停止并等待,返回 N,选择性重复
所有协议的总结——
在开始提问之前,快速回顾一下所有协议。
停下来等待——
- 发件人窗口大小 (W s ) = 1
- 接收器窗口大小 (W r ) = 1
- 序号≥ 1 + 1
- 使用独立确认
- 丢弃乱序数据包
- 数据包丢失 ?超时后重传数据包
- 确认损失 ?超时后重新发送数据包
- 效率 = 1/(1+2a) 其中 a = T p / T t
返回 N –
- 发送窗口大小 W s = N
- 接收器窗口大小 W r = 1
- 序号≥N+1
- 可以使用累积或独立确认取决于确认计时器
- 丢弃乱序数据包
- 数据包丢失 ?从窗口限制内的最后一个数据包到丢失的数据包跟踪 N 大小并重新传输它们
- 确认损失 ?如果在超时前未收到,则重新发送整个窗口 N 大小
- 效率 = N/(1+2a) 其中 a = T p / T t
选择性重复——
- 发送窗口大小 W s = N
- 接收器窗口大小 W r = N
- 序号≥N+N
- 仅使用独立确认
- 可以接受乱序数据包
- 数据包丢失 ?超时后仅重发丢失的数据包
- 确认损失 ?超时前未收到则重发
- 效率 = N/(1+2a) 其中 a = T p / T t
练习题——
- 示例-1。在停止和等待协议中,每 4个数据包丢失一次,我们总共需要发送 10 个数据包,那么发送所有数据包需要多少次传输?
- 解释 –
1 2 3 4 5 6 7 8 9 10 (Initially) ^ 1 2 3 4 4 5 6 7 8 9 10 (Packet no. 4 retransmitted) ^ 1 2 3 4 4 5 6 7 7 8 9 10 (Packet no. 10 retransmitted) ^ 1 2 3 4 4 5 6 7 7 8 9 10 10 (Result)
所以,我们重传了数据包编号 4, 7, 10
总数 = 13 - 示例-2。在 S&W 协议中,如果错误概率为 p 和 no。要发送的数据包数为“n”。我们必须发送多少数据包?
- 解释 –
总重传
= n*p 0 + n*p 1 + n*p 2 + n*p 3 + n*p 4 + …
= n(1 + p + p 2 + p 3 + p 4 + …)
= n*(1 / (1-p)) 使用无限 GP 和公式 - 示例-3。在 GBN 中,发送方窗口大小 = 10 且 T p = 49.5ms & T t = 1ms。在给定带宽 = 1000 bps 的情况下,协议的效率和吞吐量是多少?
- 解释 –
效率 = N/(1+2a),N = 10(给定),a = T p /T t = 49.5
效率 = 10/(1 + 2 * 49.5) = 10/100 = 0.1 或 10%
吞吐量 = 效率 * 带宽
= 0.1 * 1000 = 100 - 示例-4。在 GB3 中,如果每 5 个数据包丢失并且我们需要发送 10 个数据包,那么需要多少次重传?
- 解释 –
1 2 3 4 5 6 7 | 8 9 10 ^ $ (packet no. 5 lost) 1 2 3 4 5 6 7 5 6 7 8 9 | 10 * ^ $ 1 2 3 4 5 6 7 5 6 7 8 9 7 8 9 10 * ^ $ 1 2 3 4 5 6 7 5 6 7 8 9 7 8 9 10 9 10 (count starts from * till ^) (from ^ to $ retranmission is done)
注意——从最后一个数据包是窗口大小到丢失的口袋,我们重新发送整个窗口。
总数传输数 = 18 - 示例-5。在 SR W s = 5 中,我们发送 10 个数据包,其中每 5 个数据包丢失一次,找到重传次数?
- 解释 –
1 2 3 4 5 6 7 8 9 10 ^ 1 2 3 4 5 5 6 7 8 9 10 ^ 1 2 3 4 5 6 7 8 9 9 10
我们在这里看到 SR 中没有窗口大小的作用,只有丢失的数据包被重新发送。
总传输数 = 12 - 示例-6。如果有 K 位序列号。为 S&W、GBN 和 SR 定义要求发送器窗口大小和接收器窗口大小?
解释 –
给定 K 位,对于 S&W W s = 1 和 W r = 1
对于 GBN,W s = 2 K -1 且 W r = 1
对于 SR,W s = 2 K-1和 W r = 2 (K-1)