1 | initial version |
I think you have a different perception of why there is a window size. It is to allow for more packets being send instead of waiting for an ACK on each data packet. So once the receiver has processed the packets it will send and ACK with a new window size as now has more room in the buffer.
It was never intended that client must fill a window size. It only tells you how much it can handle before the buffer is full. Explaining this on a whitebord with a real life example of loading sacks of grain by hand makes it so much clearer.
2 | No.2 Revision |
I think you have a different perception of why there is a window size. It is to allow for more packets being send sent instead of waiting for an ACK on each data packet.
So once the receiver has processed the packets packets, it will send and an ACK with a new window size as it now has more room in the its buffer.
It was never intended that a client must fill a window size. It only tells you how much it can handle before the buffer is full. Explaining this on a whitebord whiteboard with a real life example of loading sacks of grain by hand makes it so much clearer.