美文网首页
【基础】面试官:你解释一下什么是TCP的固定窗口和滑动窗口

【基础】面试官:你解释一下什么是TCP的固定窗口和滑动窗口

作者: 微思IT认证培训 | 来源:发表于2020-08-21 14:12 被阅读0次

固定窗口

TCP 还提供了流量控制机制。 流量控制可以调整给定会话中源和目的之间的数据流速,有助于保持 TCP 传输的可靠性。 流量控制的实施方法包括限制一次可以转发的数据段数量,并要求在发送更多数据段之前确认接收。要实施流量控制,TCP 要确定的第一件事是目的设备可以接受的数据段数量。 TCP 报头包括一个称为“窗口大小”的 16 位字段。 这是 TCP 会话的目的设备一次可以接受和处理的字节数。 通过源和目标之间的三次握手,会话开始时即可确定初始窗口大小。 一旦同意,源设备必须根据窗口大小限制发送到目的设备的数据段数量。 只有源设备收到数据段已接收的确认之后,才能继续发送更多会话数据。在接收确认的延迟过程中,发送方不会发送任何额外数据段。 如果网络拥堵,或者接收主机资源紧张,延迟时间可能就更长。 延迟时间越长,该会话过程的有效传输速率越低, 当运行多个会话时,减缓每个会话的数据传输有助于减少网络和目的设备上的资源冲突。 image

请参看上图中对窗口大小和确认消息的简易展示。 在本例中,TCP 会话的初始窗口大小为 3000 字节。 此会话的发送方在传输 3000 字节后等待这些数据的确认消息,以便继续传输更多数据段。 一旦发送方收到接收方发送的确认消息,它就可以传输另外 3000 字节的数据段。TCP 使用窗口大小尝试管理传输速率,将其调整为网络和目的设备可以支持的最大速度,同时最大限度减少损失和重新传输。

TCP滑动窗口

我们也可以通过动态窗口大小来控制数据流量。 当网络资源受到限制时,TCP 可以减小窗口的大小,这样,目的主机就需要更加频繁地确认所接收的数据段。 由于源主机需要更加频繁地等待数据确认,这便可以大大降低传输的速率。接收主机将窗口大小值发送到发送主机,表示其准备接收的字节数。 如果目的主机由于缓冲内存受限需要降低通信速率,那么它向源主机发送的确认信息中可以包含一个较小的窗口大小值。 image

如图所示,如果接收主机发生拥堵,它可以向发送主机发送指定了较小窗口大小的数据段。 图中显示,其中一个数据段丢失了。 接收方将返回数据段的 TCP 报头中的窗口字段值由 3,000 减为 1,500,即将窗口大小改为 1,500。在没有数据丢失或资源限制的情况下传输一段时间后,接收方开始增加窗口字段,这样可以减少网络开销,因为必须发送的确认减少。 窗口大小持续增加,直至出现数据丢失,然后窗口大小随之减少。窗口大小的这种动态增减是 TCP 中的一个持续不断的过程。 在高效网络中,由于不丢失数据,窗口可能会相当大。 在基层基础设施面临压力的网络中,窗口可能会很小。

相关文章

  • 【基础】面试官:你解释一下什么是TCP的固定窗口和滑动窗口

    固定窗口 TCP 还提供了流量控制机制。 流量控制可以调整给定会话中源和目的之间的数据流速,有助于保持 TCP 传...

  • 网络管理2

    一、孤儿连接 二、TCP超时重传 1.固定窗口 2.滑动窗口 三、拥塞控制 四、SP和DP 帧 TCP和IP 五、...

  • TCP三次握手(转)

    建立连接:理解:窗口和滑动窗口TCP的流量控制TCP使用窗口机制进行流量控制什么是窗口?连接建立时,各端分配一块缓...

  • 【技术】TCP 的固定窗口和滑动窗口

    固定窗口 ●TCP 还提供了流量控制机制。流量控制可以调整给定会话中源和目的之间的 数据流速,有助于保持 TCP ...

  • TCP/IP 协议(转)

    参考:TCP/IP 协议tcp窗口滑动以及拥塞控制解析TCP之滑动窗口(动画演示)

  • TCP的流量控制与拥塞控制机制

    参考:滑动窗口TCP的流量控制和拥塞控制 1 流量控制 利用滑动窗口机制实施流量控制 TCP协议里窗口机制有2种:...

  • TCP滑动窗口协议

    TCP协议里窗口机制有2种:一种是固定的窗口大小;一种是滑动的窗口。这个窗口大小就是我们一次传输几个数据。对所有数...

  • TCP 滑动窗口原理

    TCP 滑动窗口 TCP 使用滑动窗口做流量控制与乱序重排 RTT 和 RTO RTT发送一个数据包到收到对应的 ...

  • leetcode1052 爱生气的书店老板

    题目 分析 窗口大小固定的滑动窗口问题。 代码

  • TCP滑动窗口和流控

    TCP的滑动窗口是一个很重要的概念,也是很晦涩的一个知识点。下面就大概介绍下TCP滑动窗口为什么出现?它是怎么工作...

网友评论

      本文标题:【基础】面试官:你解释一下什么是TCP的固定窗口和滑动窗口

      本文链接:https://www.haomeiwen.com/subject/bupujktx.html