Turns out that this is what I was asking about:
“When a client (or server – but it is usually the client) advertises a zero value for its window size, this indicates that the TCP receive buffer is full and it cannot receive any more data. It may have a stuck processor or be busy with some other task, which can cause the TCP receive buffer to fill. Zero Windows can also be caused by a problem within the application, where the TCP buffer is not being retrieved.
A TCP Zero Window from a client will halt the data transmission from the server side, allowing time for the problem station to clear its buffer. When the client begins to digest the data, it will let the server know to resume the data flow by sending a TCP Window Update packet. This will advertise an increased window size and the flow will resume.”
Size of my buffer is equal to TCP buffer, through the stream.GetBufferSize property, so explicitly created.
So, if I’m stuck somewhere else, and I’m not reading my stream, will I lose some information, or something else will happen? That was the question.