计算机网络基础 - 传输层(2)


大家好呀!我是小笙,本章我主要分享计算机网络基础 - 传输层(2)学习总结,希望内容对你有所帮助!!

传输层

可靠数据传输的原理

滑动窗口协议

发送缓冲区

内存中的一个区域,落入缓冲区的分组可以发送

  • 未发送的分组:落入缓冲区的分组可以连续发送出去
  • 已经发送出去的但未确认的分组:只有得到确认之后才可以删除

容量:一次最多可以发送多少个未经确认的分组

  • 停止等待协议可以发送 1 个
  • 流水线协议可以发送多个(不能很大,链路利用率不能超过 100%)
发送窗口

发送缓冲区的一个范围(发送缓冲区是可以发送的范围,发送窗口是已经发送但未确认的分组)

发送窗口发送数据过程

  • 当发送窗口没有数据的时候,后沿和前沿会重叠在一起

  • 当有一个分组已经发送但是还没有确认的时候,前沿会往前移动一格

    image-20241103113255812

  • 当发送窗口已经发送完全部数据(最大不能超过缓冲区的大小)

    image-20241103113358869

  • 当发送的数据已经被确认,则后沿向前移动(后沿移动不能超过前沿)

    image-20241103113503770

注意:真实发送情况是发送缓冲区不动,分组在动;以下为了好理解,相对而言等价于缓冲区在动,分组不动

接收窗口

接收窗口大小等于接收缓冲区,接收窗口用于控制哪些分组可以接收

  • 只有收到的分组序号落入接收窗口内才允许接收
    • 接收窗口尺寸 Wr = 1,则只能顺序接收
    • 接收窗口尺寸 Wr > 1,则可以乱序接收(但提交给上层的分组,要按序)
  • 若序号在接收窗口之外,则丢弃

滑动:低序号的分组到来,接收窗口移动;高序号分组乱序到,缓存但不交付(因为提交给上层的数据不允许失序),不滑动

发送确认

  • 累计确认:发送连续收到的最大的分组的确认(接收窗口尺寸 Wr = 1)
  • 非累计确认:收到并缓存下哪个分组,就发送那个分组的确认(接收窗口尺寸 Wr > 1)

流水线协议

允许发送方在未得到对方确认的情况下一次发送多个分组

  • 必须增加序列号的范围
  • 在发送方和接收方之间要有缓冲区域(最低限度应当能缓存下那些已经发送但是未确认的分组)

两种通用的流水线协议:回退 N 步(GBN)和选择重传(SR)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

罗念笙

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值