Hi Pekka,

On Jul 31, 2009, at 3:47 AM, Pekka Savola wrote:

On Thu, 30 Jul 2009, byzek wrote:
It's not about performance; a large percentage of the currently- deployed hardware can¹t do UDP checksum calculations during encapsulation because it doesn¹t have access to the entire packet. Most hardware is streamlined to only provide the first n bytes of a packet to the forwarding engine, where
typically n < 128.

I'm somewhat sympathetic to this concern, but I've been assured that it's possible to compute the outer checksum by doing an incremental checksum calculation (see e.g. RFC1624) using the inner packet's checksum. This would not require the access to the whole packet. This might work at least when encapsulating IPv4 over IPv6 UDP; I don't see how you could do this with IPv6 over IPv6 UDP due to the lack of "base" checksum. Any thoughts on how applicable this could be?

You would not be able to incrementally calculate the outer UDP checksum based on the inner IPv4 checksum, you would have to do it based on the inner UDP or TCP checksum by subtracting the inner IP pseudo-header checksum and adding the checksum for the outer IP pseudo- header, the UDP header and the inner IP header (all bytes, because it is being treated as UDP payload by the outer UDP header). You might run into problems with this approach, though, if you needed to encapsulate non-TCP/UDP packets and/or encapsulated IPv4 packets with a zero UDP checksum. In those cases, you'd have to checksum the whole packet.

From the point of view of AMT specification, I don't see the need for IPv6 UDP encapsulation, even if you buy the LAG argument (I'm not sure if I can see 10G+ of traffic being LISP encapsulated between a couple of routers), it doesn't apply to AMT due to different traffic patterns.

My understanding is that AMT is using UDP so that they can use different UDP ports for different AMT flows, similar to the LAG argument for LISP.

Margaret

--------------------------------------------------------------------
IETF IPv6 working group mailing list
ipv6@ietf.org
Administrative Requests: https://www.ietf.org/mailman/listinfo/ipv6
--------------------------------------------------------------------

Reply via email to