[xcp] Embedding XCP signalling in IP header
John Wroclawski
jtw at lcs.mit.edu
Thu Aug 19 09:06:34 PDT 2004
At 11:05 AM -0400 8/19/04, Tim Shepard wrote:
>> - any "odd" IP thing, such as use of a per-hop next-header mechanism
>> borrowed from v6, will kick the packet out of the fast path.
>
>A per-hop next header machanism borrowed from IPv6 and used over IPv4
>would not, I expect, cause packets to be slow-pathed in non-XCP aware
>routers. (A different example: I would not expect SCTP/IPv4 packets
>to be slow-pathed in non-SCTP-aware routers. Likewise ESP/IPv4.)
I think the question is whether an XCP next-header story is part of
some larger next-header story, or not.
One might imagine that if there was a larger next-header story (ie,
the things became more broadly used in the internet) then there would
be two kinds defined - hop-by-hop options (sorry, headers) and
end-to-end ones.
This seems at first to simplify the router design because the first
thing a router would do is look at the next-header field of its IP
packet, and decide whether it had to think about the next header at
all based on whether it was HBH or not. If it was not hbh, it would
just ignore it. If it was, it might slow-path the pkt to decide what
to do.
So, should XCP be a HBH next-header, or not? At first glance, it
seems so. Unlike your SCTP example, it's something you're expecting
routers to look at, after all.
But if you make it a HBH header, then, by my argument above, it might
well result in auto-slowpath for routers that understood the overall
HBH vs not distinction, but not XCP.
On the other hand, if you _don't_ make it HBH, then XCP aware routers
have to special-case it, but things probably work better overall,
because nothing bad happens for non-XCP-aware routers.
A way to deal with this is to insist that router actions on
next-headers be based on, in the fast path, explicitly looking up the
next-header protocol in a table and deciding what to do, rather than
designing in any helpful shortcuts like HBH vs not. IE, no structure
at all. Perhaps a good idea, but maybe not immediately obvious to
folks not thinking about XCP.
john
More information about the xcp
mailing list