Hi Yoav,

First, the problem of IKE having too large packets in certain environments is a 
real problem.
We’ve already addressed it with fragmentation, and the TCP encapsulation draft 
proposes yet another way.

I don't think that compression is an alternative to TCP encapsulation. TCP encapsulation 
is a "last resort"
and compression would just make the necessity to use this "last resort" less 
frequent.

I think either of those can solve most of the bad router and noisy line issues. I also think that IKE is quite low-volume so the savings in number of bytes sent from, say, a mobile phone are not an issue. So the only scenario where compression
may have value is for an IoT device working on a battery and/or using a 
particularly slow network.

I think it could be useful even in "big world" (see above), but I agree that in "IoT world" the benefit would be more substantial.

Second, as I understand it, those battery-powered devices tend to use 802.15.4 
networks with 127-byte frames.
There’s 6LoWPAN to provide fragmentation support, but that’s similar to using 
IKE’s fragmentation for the same issue.
Can anything be done at all with 127-byte frames, that include the (IPv6?) 
headers, the 8-byte UDP header,
the 20-byte IKEv2 header in addition to all the payload headers? If we need fragmentation anyway, I don’t know if compression matters.

I'm not familiar with 6LoWPAN, but isn't IKE independent from the transport?
I mean that IKE messages would be composed (and compressed) regardless of how 
they are fragmented
by the lower level, wouldn't them?

Third, I haven’t tested this myself, so I may be all wrong here, but I question 
the value of compression on IKE.
IKE is a binary protocol with mostly compact binary payloads. Even the list of supported CAs is a list of hashes in IKEv2.
How much can compression help?

It depends on the particular content of the messages. Those payloads that 
contain
random (or randomly-looking) data like Nonce, KE, most VIDs are almost 
uncompressable.
However the content of SA payload contains so many zeroes that it can be 
compressed
of up to 90%. So, if your IKE_SA_INIT's SA payload contains only a couple of 
transforms,
the saving is minimal - about few tens of bytes. However if it contains a long 
list of transforms,
then you could make initial message 30% or even twice as small comparing to no 
compression.
And IKE_AUTH messages often contains a certificates, that is usually 
compressable by 30%.
Since certificates are large, you can save few hundreds of bytes even with a 
short list
of transforms in IKE_AUTH messages.

I can provide more detailed information on next week.

Yoav

Regards,
Valery.
_______________________________________________
IPsec mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/ipsec

Reply via email to