TCP接收窗口何时发布?

阿克拉斯

我正在尝试了解TCP 3方式握手和流控制。我正在阅读此书,并且我了解,通过3种方式的握手,发送方和接收方就序列号和确认号达成了一致。

此外,文章中提到了接收窗口通告时,在建立连接:

假设我们要从节点A向节点B发送一个150000字节的文件。TCP可以将该文件分解为100个数据包,每个1500个字节。现在,假设在节点A和B之间建立连接时,节点B会通告一个45000字节的接收窗口,因为它确实想在这里帮助我们进行数学计算。

我的问题是何时首次建立接收窗口?3次握手期间还是3次握手之后

戴维·波斯蒂尔

是在3次握手期间还是3次握手之后?

它由应用程序在握手之前设置:

应用程序确定初始窗口大小,您可以在初始同步(三向握手)时看到每个设备的此大小。Windows默认情况下将8760字节用于以太网,尽管可以在注册表中进行更改。数字8760是6 x 1460,这是一个完整的以太网帧可以承载的数据量,默认情况下是用于以太网的MSS,在同步过程中共享该MSS。调整窗口大小时,数据包大小的6-8倍被认为是最有效的。在Internet的早期(1980年代初期),诸如X.25之类的协议盛行,通常建议用户采用更小的数据报大小576(来自RFC 791),尽管不再需要,您可能会遇到较小的数据报。结果是MSS和窗口大小设置。

在网络上发生的错误越少,则允许的窗口越大,并且用于数据的带宽就越大。大窗口大小的唯一问题是,如果在任何点出现传输失败,则必须重新发送整个段,从而无论如何都要占用带宽。

TCP协议要注意的一件事是窗口大小的缓慢增加。例如,如果使用FTP发送10Mb文件,则可能需要1Mb的传输时间,然后才能以最佳速度进行传输。这是因为窗口大小开始时很小,因此很多初始流量是标头而不是数据。使用FTP下载小文件不能达到最佳的数据下载速度,下载大文件效率更高。此机制称为慢启动,在RFC 2001中概述。

传输控制协议,三向握手,TCP滑动窗口

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

TCP接收器和传输窗口之间的区别

来自分类Dev

TCP RENO MSS、发送器窗口、阈值和接收器窗口

来自分类Dev

TCP套接字服务器如何判断从客户端接收到的数据何时完成?

来自分类Dev

GIL何时发布?

来自分类Dev

JavaScript 密钥何时发布

来自分类Dev

Wireshark在Follow TCP Stream窗口中的不同位置显示发布参数

来自分类Dev

Python TCP接收

来自分类Dev

C++ | TCP - 接收

来自分类Dev

即将何时发布即将发布的Ubuntu版本?

来自分类Dev

即将何时发布即将发布的Ubuntu版本?

来自分类Dev

Entity Framework 7.0何时发布?

来自分类Dev

Findbugs 3.0.0 FINAL何时发布?

来自分类Dev

Lubuntu 14何时最终发布

来自分类Dev

Findbugs 3.0.0 FINAL何时发布?

来自分类Dev

Entity Framework 7.0何时发布?

来自分类Dev

如何接收发布时间

来自分类Dev

接收用ajax发布的数据

来自分类Dev

Android何时认为窗口泄漏?

来自分类Dev

确定何时移动WPF窗口

来自分类Dev

Android何时考虑窗口泄漏?

来自分类Dev

TCP拥塞窗口大小

来自分类Dev

降低TCP / IP接收速度

来自分类Dev

通过TCP / IP接收对象

来自分类Dev

DroidScript-随时接收TCP

来自分类Dev

TCP / IP接收数据下降

来自分类Dev

接收其他窗口的消息

来自分类Dev

如何检测udpclient何时接收数据?

来自分类Dev

如何检测udpclient何时接收数据?

来自分类Dev

在发送少量数据几分钟后,Windows机器上的TCP发送方机器的接收器窗口大小缩小为0