Subject: Fwd: IPv6 Scoped Addresses and Routing Protocols

From: Margaret Wasserman <[email-masked]>
Date: Wed, 05 Jun 2002 13:50:36 -0400

I sent the attached message to the routing area discussion list.  I thought that people on
the IPv6 list might be interested in this discussion, so I will forward a message containing
the responses after this one.  I suppose I just should have cc:ed the IPv6 group in the
first place...

Margaret

>Date: Fri, 24 May 2002 12:17:04 -0400
>To: [email-masked]
>From: Margaret Wasserman <[email-masked]>
>Subject: IPv6 Scoped Addresses and Routing Protocols
>
>
>
>Hi All,
>
>I raised some questions with Bill Fenner in Minneapolis regarding IPv6 scoped 
>addressing and our current IPv6 routing protocol specifications, and Bill suggested 
>that I should send my questions to this list for discussion.  So, here they are.
>
>First, some background...
>
>As many of you probably know, IPv6 includes the concept of scoped unicast
>addressing -- a unicast address can have link-local scope, site-local scope
>or global scope.  The address scopes are defined in the IPv6 Addressing 
>Architecture:
>
>http://www.ietf.org/internet-drafts/draft-ietf-ipngwg-addr-arch-v3-07.txt
>
>Additional information can be found in the IPv6 Scoped Address
>Architecture:
>
>http://www.ietf.org/internet-drafts/draft-ietf-ipngwg-scoping-arch-03.txt
>
>I would suggest that all of you read the IPv6 Scoped Address Architecture
>document, if you haven't already, as it contains information regarding
>the expected configuration and forwarding behaviour of IPv6 routers.
>It also defines the concept of an IPv6 site, which is important to understanding
>the questions that I am about to raise.
>
>In IPv6, there is a concept of site-local addressing that is quite different
>from the concept of "net 10" addresses in IPv4.  Sites are administratively
>defined entities that must be "convex" (i.e. the best route between two nodes
>in the site must, at all scopes, fall completely within the site).  Sites boundaries
>run through routers, so a single router (called a site border router (SBR)) can 
>have interfaces in more than one site.  And, IPv6 site-local addresses can be 
>used for site-constrained communication, even when a site is globally 
>connected and global addresses are available. 
>
>Because all site-local addresses use the same well-known site-local prefix, the
>only way to tell that a particular site-local address belongs to a particular 
>site is to know which site originated the address.  SBRs will need
>to enforce site boundaries, not mixing site-local routing information, and not
>forwarding packets outside of a given site.  To do this, it is expected that 
>SBRs will need to maintain multiple "conceptual routing tables", including one 
>site-local routing table for each attached site, and one global routing table. 
>
>Unfortunately, I can't find any indication that these concepts have been reflected 
>in the current IPv6 routing protocols.  None of our IPv6 routing protocol documents
>deal with site-local boundaries or SBR behaviour explicitly.
>
>There are currently four standards for how IPv6 routes will be handled in BGP, OSPF, 
>IS-IS and RIP. I will refer to these documents as BGP-IPv6, OSPF-IPv6 and IS-IS-IPv6,
>and RIP-IPv6 respectively:
>
>Use of BGP-4 Multiprotocol Extensions for IPv6 Inter-Domain Routing:
>http://www.ietf.org/rfc/rfc2545.txt
>
>OSPF for IPv6 
>http://www.ietf.org/rfc/rfc2740.txt
>
>Routing IPv6 with IS-IS:
>http://www.ietf.org/internet-drafts/draft-ietf-isis-ipv6-02.txt
>
>RIPng for IPv6
>http://www.ietf.org/rfc/rfc2080.txt
>
>So here are my actual questions:
>
>(1) Are the statements regarding the routing system in the IPv6 Scoped Addressing Architecture 
>draft valid?  Will they work in real life?  Please read it, and comment to the IPv6 WG if you think that 
>there are any issues with what it says.
>
>(2) BGP-IPv6:
>
>BGP-IPv6 states:  "As this document makes no assumption on the characteristics of a particular 
>routing realm where BGP-4 is used, it makes no distinction between global and site-local addresses
>and refers to both as "global" or "non-link-local"."
>
>Would it ever be reasonable for BGP to propagate site-local routing information?  Why, under
>what circumstances?  Would it be reasonable to assume that an Inter-Domain Routing protocol
>shouldn't propagate site-local information at all?
>
>If BGP should be capable of propagating site-local information, will it be possible, using existing 
>BGP standards for a BGP SBR router with four interfaces (A, B, C & D), in two sites (A & B in S1, 
>and C & D in S2) to maintain two separate sets of information for prefix FEC0::/10, one that applies 
>to S1 (interfaces A & B) and one that applies to S2 (interfaces C & D), and to propagate that information 
>accordingly?  Is this really just an issue of configuring the router properly, as BGP-IPv6 implies?
>
>(3) OSPF-IPV6:
>
>In this specification, no distinction is made between site-local and global addresses.  Unlike the 
>previous specification (BGP-IPv6), this assumption is not stated up-front.  Instead, everywhere in
>the draft where either site-local or global addresses are mentioned they are both mentioned (i.e.
>"site-local or global IPv6 addresses").
>
>Again this specification makes no provision for separate sets of site local information.  There is
>also no mention of a boundary for site-local route propagation, and no mention of multiple conceptual
>sets of site-local routing information.  Would it make sense to tie the concept of an IPv6 site to 
>one of the existing propagation boundaries in OSPF, such as an OSPF area?  Or to assume that
>an OSPF AS will always be completely contained within one site -- which is what the current draft
>seems to assume?
>
>(4) IS-IS-IPv6:
>
>IS-IS-IPv6 makes no mention of site-local or scoped addressing at all. Is this appropriate?  How will IS-IS 
>SBRs know not to propagate site-local routing information between two attached sites?  I don't yet
>know enough about IS-IS to understand how site-local routing information would best be handled
>in IS-IS.  Any thoughts?
>
>(5) RIP-IPv6:
>
>The RIP-IPv6 document explicitly states that there is a single IPv6 routing table, and it makes no
>mention of sites.  I think it would be fine to constrain RIP to operating within a single IPv6
>site, but that should be explicitly stated somewhere.
>
>(6) Will the MIBs for any of these routing tables be capable of representing multiple independent,
>possibly overlapping sets of site-local routing information?  I looked them over quickly, and it
>wasn't immediately obvious to me how they could do this.
>
>(7) Do you think that there would be some utility to defining the actual routing architecture (as
>opposed to just the addressing architecture) for IPv6?  If so, what would be the best way to do
>that?
>
>(8) Should we mention link-local addresses anywhere in these specifications?  We certainly would
>not want to propagate routing information for link-local addresses.
>
>If there is some work that needs to be done here, I am very happy to provide some IPv6 expertise
>to that effort.  
>
>Margaret
>
>
>

--------------------------------------------------------------------
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-masked]
--------------------------------------------------------------------

---

From: [email-masked]
Date: Thu, 06 Jun 2002 07:22:10 +0900

>and RIP-IPv6 respectively:

	in my opinion, site border routers need to have ability to run
	separate entity of RIP/OSPFv3/IS-IS for each site (don't mix them up).
	there's no need for protocol modification, since there will be no
	interaction between routes in site A and site B.

	NEC IX router is the only implementation supporting this, as far as
	i know (i'm a bit embarrassed, KAME doesn't handle this - yet).

itojun

---

From: Margaret Wasserman <[email-masked]>
Date: Wed, 05 Jun 2002 23:48:55 -0400

Hi Itojun,

>         interaction between routes in site A and site B.

I am not quite sure what you mean...

Assume that I have a router with 4 interfaces (A, B, C and D) in two sites (S1 & S2), with
interfaces A & B in S1, and interfaces C & D in site 2, all on an OSPF network.  How many 
instances of OSPF would I need to run?

Your message seems to indicate that I would need to run two -- one for S1 and one for S2.
But, how would those two instance cooperate to calculate the global routing information for 
all four interfaces?

Alternatively, I could run three copies -- one for S1, one for S2 and one for the global routes.
But, how would that work?  I'd end up with two copies of OSPF running over each interface.
Would they have the same, or different peers?

>         i know (i'm a bit embarrassed, KAME doesn't handle this - yet).

Does the NEC implementation use multi-instance routing protocols?  Do you know anyone
on this team?  Could we get them to describe how they handle the site border router case
in detail?

I am very interested in understanding how this works.

Thanks,
Margaret

---

From: Jun-ichiro itojun Hagino <[email-masked]>
Date: Thu, 06 Jun 2002 15:12:32 +0900

>Would they have the same, or different peers?

	sorry, let me back up.  i guess you need to either:
	- run 3 instances of OSPF daemons, one for S1, one for S2, and one for
	  global.
	- run 1 instance of OSPF daemon, which is aware of site border.
	  (still, there's no need for protocol modification)

>on this team?  Could we get them to describe how they handle the site border router case

	they should be on the list so they should be able to comment.

itojun

---

From: Hiroki Ishibashi <[email-masked]>
Date: Thu, 06 Jun 2002 20:51:50 +0900

Hi Margaret,

>on this team?  Could we get them to describe how they handle the site 

Yes, I will describe how we handle sites on our IX5000 router shortly.

>I am very interested in understanding how this works.

Hiroki Ishibashi
[email-masked]

---

From: Hiroki Ishibashi <[email-masked]>
Date: Fri, 07 Jun 2002 11:58:26 +0900

Hi Margaret,

Here is the description of NEC IX router.

>I am very interested in understanding how this works.

Let me describe how sites are defined in IX router using diagram below, first.
This router has 8 logical interfaces.
By default, all logical interfaces belong to a site called "default_site".
Therefore, with this default site configuration, the router will not work as
SBR. All site-local address will be routed to any other logical interfaces
based on a routing table.
With this configuration, RIPng, OSPFv3 will propagate routing entries 
for site-local prefixes.  Currently, our implementation of BGP4+ does
not handle site-local prefixes.  Also, we don't have IS-IS on IX routers, yet.
                       
                            |        
                            |        
                   +--------+--------+
                   |       if1       |
                   |                 |
            -------|if4           if2|-------
                   |                 |
                   |       if3       |
                   +---+----+--------+
                            |
                            |
             Default Site Configuration (NOT SBR)
             ------------------------------------

To create sites (to configure a router as SBR),
	* 1st, define site-name.  eg. my_site.
        * add logical interfaces to "my_site".
          eg. add if1 and if2 to "my_site.
At this point, the router has 2 sites and acts as ABR.
        "default_site" has if3 and if4.
        "my_site" has if1 and if2.
So any packets destined to site-local addresses will never
forwarded across sites.

                                        Site Boundary
                            |            /
         (my_site)          |          /
                   +--------+--------+
                   |       if4     / |
                   |            /    |
            -------|if3      /    if1|-------
                   |       /         |
                   |    /  if2       |
                   +-/-+----+--------+   (default_site)
                   /        |
                 /          |

                SBR Configuration w/ 2 Sites
                ----------------------------

Now, to run RIPng on this router, simply enable RIPng on each interfaces.
Single RIPng process is running on this router.  Global prefixes will be
propagated to all interfaces; however, site-local prefix will be propagated
only to interfaces belongs to the same site.
     eg.  fec0:0:0:100::/64 from if1 will be propagated to if2, but not to
          neither if3 nor if4.
Now, OSPFv3.  Since it is much complicated than any RIPng, of course,  
and it has capability to run multiple processes by nature, we decided to 
run an OSPFv3 process per site.  Still, we could have handle site routing 
with single OSPFv3 process.  Complication is the most dominant factor in our
decision.  For example, what if someone is sending an Intra-Area-Prefix-LSA
which contains both global and site-local prefixes.  Receiving OSPFv3 router
might need to decompose LSA into two LSAs which contain global and site-local
separately.  BUT, this is not allowed.  I believe that we need to make 
agreements on this point.
One of our concerns on multi-process implementation is that
global prefixes need to be redistributed among OSPFv3 process once
sites are defined.

Also, IX router's PIM-SM for IPv6 is capable of sites.

Would this be of help?

----
Hiroki Ishibashi
[email-masked]

---

From: Brian Haberman <[email-masked]>
Date: Sun, 09 Jun 2002 10:33:05 -0400

Hi Margaret,
     I suppose that I should admit to being remiss in this area.  I
have done a fair amount of work in this area and just haven't had the
time to document routing protocol behavior changes to support site
local prefixes (even though I recall telling you I was going to do it).

     Anyway, I will start by saying that I have modified RIPng to
correctly handle the advertisement of site-locals.  In order to make
this efficient, I maintained the concept of a single instance of RIPng
running in the router.  In order to understand the changes to the
routing protocol, you also have to understand the changes to the
RIB for site locals.  So, how did I make it work?

     1. The RIB now contains an additional field, the zone ID.  I
        have done this in two different ways.  The first is to add
        the zone ID as a separate field.  The second is to embed
        the zone ID in the "unused" portion of the site local
        prefix.

     2. RIPng was changed to build its route advertisement messages
        on a per zone ID basis.  That is, it starts with adding all
        global prefixes to the message.  It then adds site local
        prefixes that are in the same zone ID as the interface that
        the advertisement will be transmitted.  It determines this
        by extracting the zone ID from the outgoing interface and
        using this find all site locals in the RIB with a matching
        zone ID.

     3. When RIPng receives a route advertisement from a peer, it
        takes the zone ID from the receiving interface and using
        that to add the site local prefixes to the RIB.

That, in a nutshell, allows a single instance of RIPng to control
the advertising of site local unicast prefixes.  Though I haven't
done the work, I would see OSPF as acting in a similar manner.

If someone wants me to describe the actual forwarding, just let me
know.

Regards,
Brian

---

From: Margaret Wasserman <[email-masked]>
Date: Sun, 09 Jun 2002 18:56:11 -0400

Hi Brian,

<snip>
>done the work, I would see OSPF as acting in a similar manner.

This does sound like it would work, and that similar changes would work
for other routing protocols.

I don't think that any rocket science is necessary to get site-local
addressing and routing to work.  However, there is additional specification
work required in the routing area to make the routing protocols consistent
with current IPv6 thinking on the use of site-local addresses.

I'm also concerned about the complexity that site-local addressing
adds to an IPv6 host.  Looking at the default address selection rules,
it appears that host implementations will be impacted by site-local
addressing (implementation size and complexity), even in cases 
where it isn't really used.

Margaret

---

From: JINMEI Tatuya / 神明達哉<[email-masked]>
Date: Mon, 10 Jun 2002 15:52:41 +0900

>>>>> On Sun, 09 Jun 2002 18:56:11 -0400, 
>>>>> Margaret Wasserman <[email-masked]> said:

> where it isn't really used.

Regarding the default address selection rules, I don't think
site-local adds much stuff.  We also need to handle link-local in the
selection rules, which could impact the host implementations enough.

In fact, in our implementation of the address selection, there is only
few additional code that is specific to site-local.

If the host implementation is *completely* unconscious of scoped
addresses (which would be the case for some "minimal" implementation),
it will be able to reduce much on the size and complexity.

					JINMEI, Tatuya
					Communication Platform Lab.
					Corporate R&D Center, Toshiba Corp.
					[email-masked]
--------------------------------------------------------------------
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-masked]
--------------------------------------------------------------------

---

From: Francis Dupont <[email-masked]>
Date: Mon, 10 Jun 2002 11:34:07 +0200

In your previous mail you wrote:

=> I fully agree : this is the key point. And we already have the answer
for RIP (no) and OSPFv3 (yes).

=> perhaps because you think (like me) that to use site-local addresses
for a connected organization is not a good idea. But we know we won't
get a consensus about this point so considering (mainly on the paper :-)
multi-sited routers is not so absurd...

Thanks

[email-masked]

---

From: Francis Dupont <[email-masked]>
Date: Mon, 10 Jun 2002 12:22:54 +0200

=> please put a warning in front of your message where there is nasty
idea like the "second way". It is lunch time and I shan't be enable
to eat something now...

Regards

PS: to put a random thing in the unused part of site-locals was proposed
twice and rejected twice...
--------------------------------------------------------------------
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-masked]
--------------------------------------------------------------------

---

From: Robert Elz <[email-masked]>
Date: Mon, 10 Jun 2002 18:40:15 +0700

Date:        Mon, 10 Jun 2002 12:22:54 +0200
    From:        Francis Dupont <[email-masked]>
    Message-ID:  <[email-masked]>

  | PS: to put a random thing in the unused part of site-locals was proposed
  | twice and rejected twice...

It was rejected once, when I made it, because it wasn't really a very
well thought out proposal (the rejection was largely based upon
administrative kinds of issues, rather than anything related to IPv6
as a protocol, etc).

The second time, I don't think it was rejected, it just sort of fizzled
out, or that's how it appeared to me.   I'm pretty sure the draft will
have long expired, but I still regard the proposal as open.

kre

---

From: Francis Dupont <[email-masked]>
Date: Tue, 11 Jun 2002 12:04:37 +0200

=> I believe Christian Huitema still reads this list so can comment.

=> the second time was more recent so I remember exactly what happened:
Paul Francis' proposal was killed by Steve Deering with an incredible unfair
question about "what is a site?"
As nobody withdraws drafts (we just let them expire) it is hard to analyze
old failures...

Regards

PS: my opinion is site-locals should be reserved to never connected (never =
today and at any time in the future) not-gigantic (i.e. one site is enough)
organizations. In fact for unicasts we don't need more than link-locals
and globals...
--------------------------------------------------------------------
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-masked]
--------------------------------------------------------------------

---

From: Vladislav Yasevich <[email-masked]>
Date: Thu, 13 Jun 2002 15:32:47 -0400

Brian

Wouldn't the Zone ID for a given site on all routers in that same site
have to be same for this to work?

-vlad

-- 
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Vladislav Yasevich	       Tru64 UNIX - IPv6 Project Lead
Hewlett Packard 	       Tel: (603) 884-1079
Nashua, NH 03062	       ZKO3-3/T07

---

From: Brian Haberman <[email-masked]>
Date: Thu, 13 Jun 2002 16:53:30 -0400

Vlad,
     Not at all.  The zone IDs are not included in the route
advertisement messages.  That simplifies things a great deal since
you don't have to coordinate the zone IDs across a site.  The zone
IDs only have meaning on the node in which they are used.

Brian