3.4可靠数据传输协议
数据可靠:不错,不丢,不乱
rdt1.0 可靠信道传输协议
rdt2.0 只可能产生位错误的协议
*校验和检验位错误
*向发送方发送ACK,NCK显示告知错误,提示,重传
相较于rdt1.0 引入了 校验和 ACK,NAK 重传
rdt2.1 ACK/NAK 可能会出现错误
*为每个分组增加了序列号( 0 || 1 )
*增加了ACK/NAK校验
*状态数量翻倍
*
*判断分组是否重复
rdt2.2 无NAK消息协议
接收方通过ACK告知最后正确接收到的分组
在ACK中添加被确认的分组的序号
发送方接受到重复ACK后,采取与收到NAK相同的动作,重传当前分组??
rdt3.0 增加分组丢失的处理
发送方设置等待时间,超时未收到ACK,则重传。
网络协议极大的限制了速度。
3.5流水线机制与滑动窗口协议 GBN(Go Back to N),SR(Select Repeat)
GBN
使用流水线机制能大幅提高传输效率,但要使用流水线机制,rtd也必须要相应的改变:更大的序列号范围,发送方/接收方更大的存储空间。
GBN中的ACK是累计确认的,收到ACK(n)表示前n个都已收到。timer为某个序列号设计,timerout事件重传序列号大于等于n的所有分组。
SR
- 接收方对每个分组单独确认:设置缓存机制,缓存乱序到达的分组。
- 只重传没有收到ACK的分组:每个分组设置定时器。
- 发送方窗口无变化,但是多了接收方窗口
接收方和发送方窗口大小和应小于序列号
序列号位数k。