Subject: Re: Fw: Question about Routing Headers

From: Lori Napoli <[email-masked]>
Date: Thu, 22 Apr 2004 09:55:09 -0400

Roy Brabson/Raleigh/IBM wrote on 04/22/2004 09:46:15 AM:

> > > The only problematic case, as far as I can see, would be ICMPv6 too
> > > big messages for path MTU discovery.  In this case, however, we can
> > > still update the MTU information gradually; we first update the MTU
> > > information to the intermediate destination stored in the 
destination
> > > address field of the inner IPv6 packet.  Then succeeding packets 
will
> > > go farther.  And, eventually, we can at least reach at the
> > > intermediate destination without seeing an ICMPv6 too big error. 
Then
> > > the IPv6 destination address will be updated to the next 
intermediate
> > > destination (which might be the final one), and we can still reach
> > > there by the similar steps. 
> > 
> > Thanks for your reply however I still think there is an issue with 
Path 
> > MTU.  If I send a packet outbound, typically I use the MTU associated 
> > with the destination to which I am sending the packet.  In the case of 

> > routing headers this will be the first hop (call it A).  Say that 
works 
> > fine, but now that node (A) sends the packet to another router (call 
it 
> > B) (so the destination address in the IP header has changed).  When 
this 
> > node tries to send the packet it out would need to fragment it so it 
> > generates an ICMPv6 msg back to the originator.  The inner IP header 
has 
> > the original source and some intermediate destination address (node B 
> > would have changed the destination address in the IP header when it 
> > processed the routing header before it realized it needed to fragment 
> > the packet so the destination address now would be C).  So when the 
> > originating host receives this it will adjust it's MTU to get to this 
> > intermediate node (node C).  But I don't think we will look at this 
> > information unless we are sending a packet to this node (node C) -- 
and 
> > in the case of routing headers we aren't - we're sending to some other 

> > node (in this case node A). 
> 
> When using a routing header, why not use the minimum of the PMTU for the 
initial 
> first-hop and every hop in the routing header?  You are, after all, 
sending the 
> packet to each of the intermediate destinations, albeit in a circuitous 
manner. 
> Doing that, you use the minimum of the PMTU to (A), (B) and (C).
> 

That is definitely doable albeit VERY expensive since you would need to 
lookup the MTU for ALL the entries in the routing header for EACH send 
since they could change.

Lori

---

From: Brian E Carpenter <[email-masked]>
Date: Fri, 23 Apr 2004 08:10:24 +0200

Lori Napoli wrote:
> > > > information to the intermediate destination stored in the destination
> > > > address field of the inner IPv6 packet.  Then succeeding packets will
> > > > intermediate destination without seeing an ICMPv6 too big error.  Then
> > > > the IPv6 destination address will be updated to the next intermediate
> > > Thanks for your reply however I still think there is an issue with Path
> > > routing headers this will be the first hop (call it A).  Say that works
> > > fine, but now that node (A) sends the packet to another router (call it
> > > B) (so the destination address in the IP header has changed).  When this
> > > generates an ICMPv6 msg back to the originator.  The inner IP header has
> > > information unless we are sending a packet to this node (node C) -- and
> > When using a routing header, why not use the minimum of the PMTU for the initial
> > first-hop and every hop in the routing header?  You are, after all, sending the
> > packet to each of the intermediate destinations, albeit in a circuitous manner.
> That is definitely doable albeit VERY expensive since you would need to lookup the MTU for ALL the entries in the routing
> header for EACH send since they could change.

Firstly there is a small misstatement above
     When this
     node tries to send the packet it out would need to fragment it so it
     generates an ICMPv6 msg back to the originator. 

Routers don't fragment packets in IPv6 (RFC 2460 section 4.5), so the node 
will drop it, not fragment it. And I don't see why it would return an ICMPv6
packet except during MTU discovery, in which case the problem doesn't
arise, because MTU discovery will tell you the MTU that *does* work end to end.

If you want to play safe, always use MTU 1280 when using a routing header.
That has to work in all cases (RFC 2460 section 5).

   Brian

--------------------------------------------------------------------
IETF IPv6 working group mailing list
[email-masked]
Administrative Requests: https://www1.ietf.org/mailman/listinfo/ipv6
--------------------------------------------------------------------