On 19 mei 2009, at 20:51, Joe Touch wrote:
Assuming that we can predict if and how well a certain flow will
compress, we could also simply drop a) and send back a too big with
the
size that will compress to what fits inside the MTU and just send b)
through the tunnel.
Your solution tells the endpoint that all packets have to be smaller,
even when subsequent packets with the large MTU would have headers
that
compressed enough to make space for the ROHC header.
No, what I mean is that if you get a packet that is 1500 bytes, your
IPsec is 50 and ROHC for this packet at this time is +1 but we know
that subsequent packets will be -30, then we return an MTU of 1500 -
50 - -30 = 1480. Next packet is 1480, we do ROHC and it's 1450 and
then IPsec = 1500 and we're in business.
Interesting question about what we do with packets that conform to the
compressable MTU. In this case, 1480. Too big is unnecessary because
the source is already sending small enough, but we'd have to drop (the
data) anyway. With TCP, fast retransmit will catch this. Are there any
corner cases we should worry about?