从TCP协议之滑动窗口分析应用性能

去年我师傅推荐了两本林沛满写的关于wireshark抓包的书,分别是《wireshark就是这么简单》和《wireshark分析的艺术》,写的真心不错。

TCP协议是一个很有意思的内容,这半年对TCP协议有了更多的认识,于是想重新更新一些对TCP协议的内容。今天先从TCP协议里面的滑动窗口说起。

1、先说原理

就发送端来说,一般如下所示:
从TCP协议之滑动窗口分析应用性能_第1张图片
主要分为:已发送已确认的包(应用层未读取)。发送未确认的包,未发送可发送的包,未发送不可发送的包。其中,滑动窗口指的是发送未确认和未发送可发送区域的大小。

2、滑动窗口

通常情况下,在wireshark抓包中看到的 win 表示向对方声明自己的接收窗口的大小,对方收到以后,会把自己的[发送窗口]限制在 指定大小之内。如果自己的处理能力有限,导致自己的接收缓冲区满,接收窗口大小为 0时发送端应该停止发送数据。

比如,使用模拟工具产生的TCP报文,其中客户端窗口声明为20,抓包如下:

你可能感兴趣的:(网络实战,后端,rpc)