(I'm resending the following message, since it has not been delivered
correctly.)
>>>>> On Tue, 23 Apr 2002 12:25:46 +0200,
>>>>> Francis Dupont <[EMAIL PROTECTED]> said:
> => there are two points:
> - how to determine the zone of the next destination (as addresses
> don't carry the id of the zone but only the scope, this is very useful).
> - do it only on the next destination address, no further
> (note this is a consequence of the previous point).
> Only the wording is questionable... (i.e. I can't see a concern for
> other thing than the form)
Since the issue is about wording (I think we've agreed on this point),
I won't try to respond to all questions in this thread. Instead, I'd
like to propose revised text (see below) with an additional rule that
Rich mentioned and an example of unusual (thus confusing) case.
If the text is still unclear, please point it out, and if possible,
suggest improvement (I'm not very good at describing complicated
notion in English...).
Thanks,
JINMEI, Tatuya
Communication Platform Lab.
Corporate R&D Center, Toshiba Corp.
[EMAIL PROTECTED]
9. Forwarding
When a router receives a packet addressed to a node other than
itself, it must take the zone of the destination and source addresses
into account as follows:
o The zone of the destination address is determined by the
scope of the address and arrival interface of the packet.
The next-hop interface is chosen by looking up the
destination address in a (conceptual) routing table
specific to that zone. That routing table is restricted
to refer only to interfaces belonging to that zone.
o After the next-hop interface is chosen, the zone of the
source address is considered. As with the destination
address, the zone of the source address is determined by
the scope of the address and arrival interface of the
packet. If transmitting the packet on the chosen next-hop
interface would cause the packet to leave the zone of the
source address, i.e., cross a zone boundary of the scope
of the source address, then the packet is discarded and an
ICMP Destination Unreachable message [RFC 2463] with Code
2 ("beyond scope of source address") is sent to the source
of the packet.
Note that the above procedure applies for addresses of all scopes,
including link-local. Thus, if a router receives a packet with a
link-local destination address that is not one of the router's own
link-local addresses on the arrival link, the router is expected to
try to forward the packet to the destination on that link (subject to
successful determination of the destination's link-layer address via
the Neighbor Discovery protocol [RFC 2461]). The forwarded packet may
be transmitted back out the arrival interface, or out any other
interface attached to the same link.
A node that receives a packet addressed to itself and containing a
Routing Header with more than zero Segments Left [RFC 2460, section
4.4] first checks the scope of the next address in the Routing
Header. If the scope of the next address is smaller than the scope
of the original destination address, the node MUST discard the
packet. Otherwise, it swaps the original destination address with
the next address in the Routing Header. Then the above forwarding
rules apply as follows:
o The zone of the new destination address is determined by
the scope of the next address in the Routing Header and
arrival interface of the packet. The next-hop interface
is chosen just like the first bullet of the rules above.
o After the next-hop interface is chosen, the zone of the
source address is considered just like the second bullet
of the rules above.
This check about the scope of the next address ensures that when a
packet arrives at its final destination, if that destination is
link-local then the receiving node can know that the packet
originated on-link. Similarly, if the destination is site-local then
the receiving node can know that the packet originated within the
site. And, as a result, this will help the receiving node send a
"response" packet with the final destination of the received packet
as the source address without breaking its source zone.
Note that it is possible, though generally inadvisable, to use
a Routing Header to convey a non-global address across its associated
zone boundary. For example, consider a case where a site-border node
receives a packet with the destination being a site-local address.
If the packet contains a Routing Header where the next address is a
global address, the next-hop interface to the global address may
belong to a different site than the site of the original destination.
This is allowed, because the scope of the next address is not smaller
than the scope of the original destination.
--------------------------------------------------------------------
IETF IPng Working Group Mailing List
IPng Home Page: http://playground.sun.com/ipng
FTP archive: ftp://playground.sun.com/pub/ipng
Direct all administrative requests to [EMAIL PROTECTED]
--------------------------------------------------------------------