tcp: enforce receive buffer memory limits by allowing the tcp window to shrink