On 5/26/2016 9:16 AM, Templin, Fred L wrote:
>>>> There is an existing solution to the same problem. GUE allows
>>>> encapsulation of IPv4 and IPv6, as well as other IP protocols (the GUE
>>>> header indicates encapsulated protocol by IP number). The only
>>>> material between GUE encapsulation of IP and IP in UDP is additional
>>>> four byte header and associated processing of that. I don't think
>>>> we've seen a use case where avoiding that overhead is critical
>>>> motivation.
>>> I thought at one time we had come up with an idea for omitting the GUE
>>> header when the payload is a plain IPv4/IPv6 packet. There was a check
>>> of the first four bits following the UDP header to see if they encoded the
>>> value '4' or '6'. Did that not make it into the draft?
>>>
>> Yes, we had come up with the idea and I have implemented the
>> prototype. It is not in the draft. I believe the only discernible
>> benefit we could identify was that it saves 4 bytes of overhead. The
>> major drawback is that this only works specifically for IPv4 and IPv6.
> I don't see the drawback; I think those two IP protocol versions could
> carry us forward into the forseeable future. Are you thinking there
> could be another IP version on the near term horizon?

IMO, this is a bad idea unless the protocol is specifically limited to
having IP as a payload. Otherwise, there's no way to ensure that some
other protocol won't start off with those values.

In particular, ICMP for IPv4 isn't an IP packet but has no rule about
the first 4 bits. That field ought to be large enough to handle any
protocol that might need to share the path with IP.

Joe

_______________________________________________
Int-area mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/int-area

Reply via email to