section 2.3 of rfc1323 says:

TCP determines if a data segment is "old" or "new" by testing
whether its sequence number is within 2**31 bytes of the left
of the window, and if it is not, discarding the data as "old".
insure that new data is never mistakenly considered old and vice-
versa, the left edge of the sender's window has to be at most
2**31 away from the right edge of the receiver's window.
Similarly with the sender's right edge and receiver's left edge.
Since the right and left edges of either the sender's or
receiver's window differ by the window size, and since the sender
and receiver windows can be out of phase by at most the window
size, the above constraints imply that 2 * the max window size
must be less than 2**31, or

max window < 2**30

i cannot understand these constraints.

why isn't this stated as "the left edge of the sender window has to be
at most 2**31 bytes from the left edge of the receive window", and
that's it.

it sounds like with the discussed constraints, a window of data is left
as a "margin". but i'm not sure what's the rationale for that. (why one
window and not, say, two?)