zoukankan      html  css  js  c++  java
  • TCP/IP详解(二)

    首先,不得不吐槽一下中文版的翻译,把英文版的很多部分的删除了。中文版的pdf只有400多页,英文版有1000多页。迫于时间,只有先将就着看中文版,但是遇到不懂的地方,一定要对照英文版来看。

    滑动窗口协议

    对于TCP的任何一端,都可以接受和发送数据,因此任何一端都维护着两个窗口,发送窗口和接收窗口。

    发送窗口:

    发送窗口的大小是对端回发的TCP报文首部里的通告窗口大小(offered window)。

    发送窗口的左边(Left Edge以左)是对端已经确认过的bytes(注意不是packets),

    从Left Edge到SND.NXT是已经发送但还没有被确认的bytes,

    SND.NXT到Right Edge是可以立即发送的bytes,

    Right Edge右边是当前不可发送的bytes.

    值得注意的是已经发送但还没有确认的bytes也被包含在发送窗口中,因为有可能需要重发这些bytes。发送端获取对端的通告窗口后,首先计算可用窗口。并非能马上发送通告窗口大小的报文,只能发可用窗口大小的报文。

    接收窗口:

    接收窗口比发送窗口更简单。窗口左边是已经确认过的bytes,右边是不能接收的bytes。

    当窗口内的报文到达后,可以被接收。但只有窗口最左边的byte到达以后,ACK的序号才会增加。

  • 相关阅读:
    HTML编写需要注意的事项
    Java中this、super用法
    多态性的表现形式
    面向对象
    用java实现冒泡排序法
    第一堂java web课
    mysql 复制中的 paxso 的两阶段和事务两阶段的区别
    github删除仓库
    git的介绍及使用
    github的介绍
  • 原文地址:https://www.cnblogs.com/johnsblog/p/3978943.html
Copyright © 2011-2022 走看看