【计算机网络复习 数据链路层】3.4.4 选择重传协议(SR)
选择重传协议(SR)
- 一、选择重传协议中的滑动窗口
- 二、SR发送方必须响应的三件事
- 三、SR接收方要做的事
- 四、滑动窗口长度
- 五、总结
一、选择重传协议中的滑动窗口
二、SR发送方必须响应的三件事
1、上层的调用
从上层收到数据后,SR发送方检查下一个可用于该帧的序号,如果序号位于发送窗口内,则发送数据帧;否则就像GBN一样,要么将数据缓存,要么返回给上层之后再传输。
2、收到了一个ACK
如果收到ACK,加入该帧序号在窗口内,则SR发送方将那个被确认的帧标记为已接收。如果该帧序号是窗口的下届(最左边第一个窗口对应的序号),则窗口向前移动到具有最小序号的未确认帧处。如果窗口移动了并且有序号在窗口内的未发送帧,则发送这些帧。
3、超时事件
每个帧都有自己的定时器,一个超时事件发生后只重传一个帧。
三、SR接收方要做的事
SR接收方将确认一个正确接收的帧而不管其是否按序。失序的帧将被缓存,并返回给发送方一个该帧的确认帧【收谁确认谁】,直到所有帧(即序号更小的帧)皆被收到为止,这时才可以将一批帧按序交付给上层,然后向前移动滑动窗口。
四、滑动窗口长度
发送窗口最好等于接收窗口。(大了会溢出,小了没意义)
五、总结
1、对数据帧逐一确认,收一个确认一个
2、只重传出错帧
3、接收方有缓存
【计算机网络复习 数据链路层】3.4.4 选择重传协议(SR)相关推荐
- 计算机网络之数据链路层:7、选择重传协议(SR)
数据链路层:7.选择重传协议 思维导图: 发送窗口和接收窗口: SR发送方必须响应的三件事: SR接收方必须响应的事: 例: 窗口大小的选择: 总结: 思维导图: 发送窗口和接收窗口: 这个仅作介绍, ...
- 【计算机网络】数据链路层 : 选择重传协议 SR ( 帧分类 | “发送方“ 确认帧、超时事件 | “接受方“ 接收帧机制 | 滑动窗口长度 | 计算示例 )★
文章目录 一. 选择重传协议 ( SR ) 引入 二. 选择重传协议 ( SR ) 帧分类 三. 发送方 事件 ( 确认帧.超时事件 ) 四. 接收方 事件 ( 接收帧 ) 五. 滑动窗口长度 五. ...
- 【计算机网络】数据链路层 : 流量控制 ( “流量控制“ 机制 | 停止-等待协议 | 滑动窗口协议 | 后退 N 帧协议 GBN | 选择重传协议 SR | 滑动窗口 与 流量控制、可靠传输 )
文章目录 一. 数据链路层 流量控制 二. 数据链路层 与 传输层 流量控制 机制 三. 数据链路层 流量控制 四. 数据链路层 流量控制 方法分类 五.停止等待协议 六.滑动窗口协议 七.滑动窗口协 ...
- 王道考研 计算机网络11 数据链路层 封装成帧 透明传输 流量控制 停止-等待协议 后退N帧协议GBN 选择重传协议SR
第三章知识 数据链路层的基本概念 数据链路层功能概述 封装成帧 透明传输 什么数据都能传输 数据链路层的流量控制 流量控制方法 滑动窗口协议: 每一个小格标识一个帧 发送窗口:发送端正在处理的发送的数 ...
- 3.4.4 选择重传协议(SR)
3.4.4 选择重传协议(SR)
- 3.4.1 计算机网络之流量控制(停止-等待协议、滑动窗口、后退N帧协议GBN、选择重传协议SR)、滑动窗口、可靠传输机制
文章目录 0.思维导图 1.什么是流量控制? 2.什么是可靠传输机制? 3.什么是滑动窗口机制? 4.可靠传输.流量控制.滑动窗口之间的关系 5.停止-等待协议 (1)为什么要有停止-等待协议? (2 ...
- 【计算机网络复习 数据链路层】3.5.5 CSMA-CA协议
CSMA-CA协议 CSMA/CA协议 一.CSMA/CA协议 二.CSMA/CD 与 CSMA/CA CSMA/CA协议 一.CSMA/CA协议 载波监听多点接入/碰撞避免 CSMA/CA(carr ...
- 【计算机网络复习 数据链路层】3.5.4 CSMA-CD协议
CSMA-CD协议 3.5.4 CSMA/CD协议 一.CSMA/CD协议 二.传播时延对载波监听的影响 三.截断二进制指数规避算法 四.最小帧长问题 3.5.4 CSMA/CD协议 一.CSMA/C ...
- 【计算机网络复习 数据链路层】3.5.3 CSMA协议
CSMA协议 3.5.3 CSMA协议 一.CSMA协议 1.1 1-坚持CSMA 1.2 非坚持CSMA 1.3 p-坚持CSMA 3.5.3 CSMA协议 一.CSMA协议 载波监听多路访问协议C ...
- 【计算机网络复习 数据链路层】3.5.2 ALOHA协议
一.纯ALOHA协议 纯ALOHA协议思想: 不监听信道,不按时间槽发送,随机重发.想发就发. 二.时隙ALOHA协议 时隙ALOHA协议的思想: 把时间分成若干个相同的时间片,所有用户在时间片开始时 ...
最新文章
- 34. Leetcode 234. 回文链表 (链表-双指针)
- 史上最简单的SpringCloud教程 | 第七篇: 高可用的分布式配置中心(Spring Cloud Config)
- php url无效,PHP解析URL并失去URL中的参数
- axure 素材_Axure原型:超漂亮的系统首页
- CSS border-radius边框圆角
- Cookie 解说(分类、用途、缺陷、功能 ...)
- linux防火墙能阻止cc攻击吗,linux csf 防火墙 防止少量的ddos cc攻击很有效
- css3滚动倾斜,jQuery 3D倾斜滚动页面效果
- 日出时的画面_摄影教学堂:如何拍摄日出日落?详解日出日落的摄影技巧
- 從零開始學 ReactJS:最完整的 React 生態系入門教程
- 机器学习实战1-1 KNN电影分类遇到的问题
- keil安装stm32系列
- 【C/C++】STL详解
- 部署asp.net mvc_在ASP.NET 2.0上部署ASP.NET MVC
- 【题解】选数字 [51nod1354]
- iOS9.0 新功能
- 自动化功能测试-Athrun—IOS学习之旅文档
- 字符串——OKR-Periods of Words(kmp求最短相同前后缀或者说求最长循环节)
- jquery事件代理
- The authenticity of host ‘XXXX‘ can‘t be established错误解决
热门文章
- MySQL 多表查询、连接查询(内连接、外连接)
- LeetCode 31. 下一个排列(线性扫描)
- LintCode 1677. 石头(自定义优先队列)
- LeetCode 1019. 链表中的下一个更大节点(单调栈)
- LeetCode 1030. 距离顺序排列矩阵单元格(排序Lambda表达式BFS)
- 【Python基础知识-pycharm版】第七节-函数
- Jquery练习题—实现分组添加功能
- liunx中udp服务器与客户端创建
- Oracle数据库物理存储结构管理遇到的问题与解决
- spring-test dao空指针异常_014、Java异常机制