注:最后有面试挑战,看看自己掌握了吗
🍃博主昵称:一拳必胜客
🌸博主寄语:欢迎点赞收藏关注哦,一起成为朋友一起成长;
特别鸣谢:木芯工作室 、Ivan from Russia
链路层
- 较高发送速度和较低接受能力的不匹配
- 流量控制也是数据链路层的一项重要工作
和传输层的流量控制区别
- 传输层—端到端流量控制-------接收端发送给一个窗口公告
- 链路层------点对点流量控制,相连结点之间--------接受不下就不回复确认
停止-等待协议
- 每发送完一个帧就停止发送,等待对方的确认,再确认后再发送下一个帧
- 效率低
为什么要有停止等待协议
- 除了比特出差错,底层还会出现丢包问题
无差错情况
- 发送0帧----------------回复ACK=0-------------确认帧0
- 发送1帧----------------回复ACK=1------------确认0帧
- 发送窗口-------连续的五六个帧组成发送窗口,连续发出去
- 等接收窗口接收到然后返回确认信息一个--------------发送窗口逐个往后滑动
- 其实 停止-等待---------------发送窗口为1的滑动窗口协议!
后退N帧协议GBN
- 发送窗口>1 , 接收窗口=1
- 可不可以只传出错的帧?
- 解决办法:设置单个确认同时加大接收窗口,设置接收缓存,缓存乱序到达的帧
- 每个帧都有自己的计时器
选择重传协议SR
- 发送窗口>1 , 接收窗口 >1
- 加上接收窗口
- -----------缓存--------收到且确认的
- 来者不拒(窗口内的帧)
- 一直到所有帧都被接受,这是才可以将一批帧按序号交付给上层(网络层)
- 然后向前移动窗口
- 超时重传
- 滑动窗口长度----------不大不小----发送窗口最好等于接收窗口
- 直冲传出错的真
- 接收方有缓存
可靠传输
- 发送端发啥,接收端收啥
- 帧的丢失,重复--------接收端都要进行控制,把丢掉的帧,失去的帧恢复到正常状态
流量控制
- 如果接收方收不下就不给确认-----------–滑动窗口--------------流量控制
- 发送方自动重传-------------------------------滑动窗口-------------可靠传输