Subject: Re: [homenet] Prefix stability requirements in draft-arkko-homenet-prefix-assignment-00

From: Erik Nordmark <[email-masked]>
Date: Wed, 02 Nov 2011 10:58:16 -0700

Jari,

> The draft associates prefixes with interfaces because that is the only
> thing that it can do alone. But since it monitors prefix assignments by
> both neighboring routers and everyone else, routers are aware of the
> network topology _and_ network prefix assignments. A prefix assignment
> by your neighbor becomes your prefix assignment, too. You use the same
> prefix on the same network, not add another one. And next time if the
> two routers boot in a different order you will remember your neighbor's
> prefix for this network and use it. If the two routers are moved to
> different networks, there will be a collision, it is detected, and one
> of the routers selects a new prefix.

OK. There are probably some important details when there are multiple 
routers wanting to use different prefixes on the same link. If I've had 
the routers in the den happily working for a year, and I decide to bring 
in a router from the garage (which has been in use for a week) and 
connect it to the routers in the den, then a reasonable default behavior 
would be to keep the prefix that has in use on that link for a year.

Some notion of "first time advertised" could be useful for that type of 
tiebreakers.

Thanks,
   Erik

---

From: Jari Arkko <[email-masked]>
Date: Wed, 02 Nov 2011 20:33:16 +0200

Erik,

> OK. There are probably some important details when there are multiple routers wanting to use different prefixes on the same link. If I've had the routers in the den happily working for a year, and I decide to bring in a router from the garage (which has been in use for a week) and connect it to the routers in the den, then a reasonable default behavior would be to keep the prefix that has in use on that link for a year.
>
> Some notion of "first time advertised" could be useful for that type of tiebreakers.

I agree, both about the requirement and that we're probably still missing some of the important details.

But I'll just point out one additional thing. Since only devices (not networks) can have memory and identity, it is hard in general to decide what changed. Say, if you had just one router in the den and another one in the garage, both installed at the same time and then you move the garage router to the den. From a human perspective it would probably make sense to keep the den prefix unchanged, but how do the routers know this? Just looking at the situation locally may not help in this case. There's one router's opinion against the other router's opinion. The times are identical. You could of course inspect whether topology around you changed and infer which one of the devices got moved. But it is hard.

Jari

---

From: Jyrki Soini <[email-masked]>
Date: Thu, 03 Nov 2011 10:48:25 +0200

> But I'll just point out one additional thing. Since only devices (not networks) can have memory and identity, it is hard in general to decide what changed. Say, if you had just one router in the de…

How about calculating the shortest path to the router that has
originated the Usable Address LSA for the candidate prefixes?
Instead of having the highest number OSPFv3 router to select the
address give priority to the router with lower cost path to UA
originator. If both routers have the same path cost use OSPFv3
router-id as tie-breaker.

Router could detect movement if next hop towards UA originator has changed.

The drawback would be more complex computing when the prefix
would be allocated for the link.

--
Jyrki

---

From: Michael Richardson <[email-masked]>
Date: Thu, 03 Nov 2011 14:45:29 -0400

>>> OK. There are probably some important details when there are
    >>> multiple routers wanting to use different prefixes on the same
    >>> link. If I've had the routers in the den happily working for a
    >>> year, and I decide to bring in a router from the garage (which
    >>> has been in use for a week) and connect it to the routers in the
    >>> den, then a reasonable default behavior would be to keep the
    >>> prefix that has in use on that link for a year.

I just want to add, that if the (newly acquired) router in the garage
doesn't seem to be working right, perhaps due to too much snow, not
enough electrons, too thick walls (wifi), etc. that bringing it into the
Den to debug it is quite likely.  And it's likely to move again soon.

    >> same time and then you move the garage router to the den. From a
    >> human perspective it would probably make sense to keep the den
    >> prefix unchanged, but how do the routers know this? Just looking
    >> at the situation locally may not help in this case. There's one
    >> router's opinion against the other router's opinion. The times
    >> are identical. You could of course inspect whether topology
    >> around you changed and infer which one of the devices got
    >> moved. But it is hard.

If they were installed at the same time, then neither has really
corrupted more hosts with it's prefix than the other.   I think that it
really doesn't matter which prefix remains, and if you do care, then
it's not zero-conf.

    Jyrki> How about calculating the shortest path to the router that
    Jyrki> has originated the Usable Address LSA for the candidate
    Jyrki> prefixes?  Instead of having the highest number OSPFv3 router
    Jyrki> to select the address give priority to the router with lower
    Jyrki> cost path to UA originator. If both routers have the same
    Jyrki> path cost use OSPFv3 router-id as tie-breaker.

I generally like this better.
For many installations with mostly only two layers (router in basement
where internet comes in, routers in parts of the house where more ports
or stronger wifi signal is necessary), it turns out to be the same
effectively. 

Reading draft-arkko-homenet-prefix-assignment-00, I felt rather squemish
about the fact that the routers basically pick prefixes without
consulting the edge router who owns that prefix, but I grew to like it.

-- 
]       He who is tired of Weird Al is tired of life!           |  firewalls  [
]   Michael Richardson, Sandelman Software Works, Ottawa, ON    |net architect[
] [email-masked] http://www.sandelman.ottawa.on.ca/ |device driver[
   Kyoto Plus: watch the video <http://www.youtube.com/watch?v=kzx1ycLXQSE>
	               then sign the petition.

---

From: Russ White <[email-masked]>
Date: Sat, 05 Nov 2011 09:12:29 -0400

> router-id as tie-breaker.

This is an interesting idea... The main problems are:

1. How does this edge router know it's the edge router? There must be 
some signaling from "upstream" to tell it, "you have a connection to the 
outside world."

2. How do we resolve multiple devices at the same distance from the edge 
router? Should we include topological as well as physical distance (if 
possible)?

3. What if there are multiple edge devices? I assume the one device 
would/could have multiple addresses in this case?

:-)

Russ