On 5/26/2016 9:40 AM, Templin, Fred L wrote:
> Hi Joe,
>
>> -----Original Message-----
>> From: Joe Touch [mailto:[email protected]]
>> Sent: Thursday, May 26, 2016 9:34 AM
>> To: Templin, Fred L <[email protected]>; Tom Herbert 
>> <[email protected]>
>> Cc: [email protected]
>> Subject: Re: [Int-area] Call for adoption of draft-xu-intarea-ip-in-udp-03
>>
>>
>>
>> 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.
> Tom's proposal unambiguously differentiates raw IPv4 and IPv6 from
> all other encapsulations. If it is raw IPv4 or IPv6, the GUE 4-byte header
> is not present. Otherwise, the GUE 4-byte header is present.
>
The only way the proposal "unambiguously" knows the difference is when
the first 4 bits are 4 or 6, but those are valid configurations of the
first 4 bits of other protocols (notably ICMPv4).

So if you see 4 or 6, you can't just assume that the GUE header is not
present.

Joe


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

Reply via email to