During a TCP session the client and server announce to each other the amount of data they can manage. This buffer size is called window size.
This window size change all the time to optimize the data flow according to the network capacities. If one participant cannot manage more data (client or server), it sends a TCP zero windows (0-win) to indicate that TCP buffer is full.
These zero windows happen when datagrams are sent out faster than receiving device can process, this is TCP flow control using windowing.
The transmission can resume when the 0-win generator send a window size superior to …