On 19 mei 2009, at 22:26, Joe Touch wrote:

The problem is that when a 1480 packet arrives and you do ROHC, it's
1450 only most of the time; sometimes it's 1481 because it needs the
full original header and the ROHC stream ID. Those "big" packets are
required by ROHC to resync, and would be dropped after IPsec.

In those cases the packet would be truncated so there's enough for ROHC to resync but obviously the receiver doesn't get the original packet so the sender will have to retransmit. This is not a problem if the retransmitted packet does compress so it fits.

So as long as we can accurately predict which packets will compress enough to fit upon retransmission it's safe to drop them if they do and we send a too big if they don't.

Even if TCP does fast retransmit, at some point the stream needs to get
through a payload of 1481, which will never get through. The result is
that ROHC will never resync, and *everything* will get thrown on the
floor...

Didn't you just suggest to just send enough of the original packet to make ROHC do its thing? That piece of the packet should be small enough to always fit.

Reply via email to