TCP—Zero Window
Zero Window is something to investigate.
TCP Zero Window is when the Window size in a machine remains at zero for a specified
amount of time.
This means that a client is not able to receive further information at the moment, and the
TCP transmission is halted until it can process the information in its receive buffer.
TCP Window size is the amount of information that a machine can receive during a TCP
session and still be able to process the data. Think of it like a TCP receive buffer. When a
machine initiates a TCP connection to a server, it will let the server know how much data it
can receive by the Window Size.
In many Windows machines, this value is around 64512 bytes. As the TCP session is
initiated and the server begins sending data, the client will decrement it's Window Size as
this buffer fills. At the same time, the client is processing the data in the buffer, and is
emptying it, making room for more data. Through TCP ACK frames, the client informs the
server of how much room is in this buffer. If the TCP Window Size goes down to 0, the
client will not be able to receive any more data until it processes and opens the buffer up
again. In this case, Protocol Expert will alert a "Zero Window" in Expert View.
Troubleshooting a Zero Window For one reason or another, the machine alerting the Zero
Window will not receive any more data from the host. It could be that the machine is running
too many processes at that moment, and its processor is maxed. Or it could be that there is
an error in the TCP receiver, like a Windows registry misconfiguration. Try to determine
what the client was doing when the TCP Zero Window happened.
译文:
零窗口值得研究。
TCP零窗口是指机器中的窗口大小在指定的时间内保持为零的时间。
这意味着客户端此时无法接收更多信息,并且TCP传输将暂停,直到它可以处理其接收缓
冲区中的信息。
TCP窗口大小是计算机在TCP会话期间可以接收的信息量,并且仍然能够处理数据。可以
把它想象成TCP接收缓冲区。当一台机器启动到服务器的TCP连接时,它将让服务器知道它
可以通过窗口大小接收多少数据。
在许多Windows机器中,此值约为64512字节。当TCP会话启动并且服务器开始发送数据
时,客户端将在此缓冲区填充时减小其窗口大小。同时,客户端正在处理缓冲区中的数据,
并将其清空,为更多数据腾出空间。通过TCP ACK帧,客户端通知服务器此缓冲区中有多少
空间。如果TCP窗口大小下降到0,则客户端将无法再接收任何数据,直到它处理并再次打开
缓冲区。在这种情况下,Protocol Expert将在专家视图中提醒“零窗口”。
零窗口故障排除由于这样或那样的原因,提示零窗口的机器将不再从主机接收任何数
据。可能是机器当时正在运行太多进程,并且其处理器是最大的。或者可能是TCP接收
器中存在错误,例如Windows注册表配置错误。尝试确定TCP零窗口发生时客户端正在
做什么。