This may be pretty similar to the question here, however, I think it was either in the wrong place, or it wasn't clear enough, so it hasn't got to the right audience. Thus, I have re-formulated it here:
TCP Receive Window is the size of the buffer on the receiving end of a TCP connection. According to (RFC7323 - Section-1.1) the TCP standard has a
16-bit field to denote the size (
2^16 = 65,536 Bytes max). However, this has been seen to limit performance in high latency networks (RFC7323). Thus, a field has been included in the TCP options/extensions called the "Window Scale" (RFC7323 - Section-2) in order to improve performance by increasing the Receive Window size by multiplying it by a scaling factor, thus
Scaling Factor = 2 ^ Window Scaling Factor Value. So in essence the
TCP Receive Window Size = TCP Receive Window Value * (2 ^ Window Scaling Factor Value) (Haven't fully understood how the scaling factor actually works, so this might not be entirely accurate).
The essence of this question is, according to RFC7323 - Section 2.1, it seems that the TCP stack implemented in different operating systems has a different default initial value. What is the default initial TCP Receive Window size in Android? Has it changed over the different versions?
RFC 7323 - https://tools.ietf.org/html/rfc7323