When reading a fragmented message, Protocol.parse decrements max_size as fragments are read.
This can cause a confusing error in Frame.parse:
ConnectionClosedError: sent 1009 (message too big) over size limit (1048576 > 0 bytes); no close frame received