滑動窗口協議中的窗口是什麼意思????我一直不能理解

解决方案 »

  1.   

    滑动窗口本质上是描述接受方的TCP数据报缓冲区大小的数据,发送方根据这个数据来计算自己最多能发送多长的数据。如果发送方收到接受方的窗口大小为0的TCP数据报,那么发送方将停止发送数据,等到接受方发送窗口大小不为0的数据报的到来。
    关于滑动窗口协议,还有三个术语,分别是:窗口合拢:当窗口从左边向右边靠近的时候,这种现象发生在数据被发送和确认的时候。 
    窗口张开:当窗口的右边沿向右边移动的时候,这种现象发生在接受端处理了数据以后。 
    窗口收缩:当窗口的右边沿向左边移动的时候,这种现象不常发生。 
    TCP就是用这个窗口,慢慢的从数据的左边移动到右边,把处于窗口范围内的数据发送出去(但不用发送所有,只是处于窗口内的数据可以发送。)。这就是窗口的意义。窗口的大小是可以通过socket来制定的,4096并不是最理想的窗口大小,而16384则可以使吞吐量大大的增加。