V4 via V6 and IGP routing protocols

Pascal Thubert (pthubert) pthubert at cisco.com
Mon Apr 4 07:41:56 UTC 2022


Hello Ohta-san

> it is hopeless.

If you look at it, LS - as OSPF and ISIS use it -  depends on the fact that all nodes get the same information and react the same way. Isn't that hopeless too?

Clearly, the above limits LS applicability to stable links and topologies, and powered devices. This is discussed at length in https://datatracker.ietf.org/doc/html/draft-ietf-roll-protocols-survey. OLSRv2 pushes the model to its limit, don't drive it any faster.

We have a panel of protocols and it's probably a question of selecting the best fit for a use case. And yes, probably for most people in this list, learning a stable topology with a link state protocol is the best choice available. To the point of this thread, BABEL thinks inside the same box as its DV predecessors, so I expect that the reasons for selecting LS inside your network would still apply.

RIFT (https://datatracker.ietf.org/doc/draft-ietf-rift-rift/) shows that evolution outside that box is possible. RIFT develops anisotropic routing concepts (arguably from RPL) and couples DV and LS to get the best of both worlds. So it's not definitely either/or LS/DV after all.

But none of the above allow an source router to decide once and for all what it will get. Because the routing decision is made again at each hop in a fashion that may contradict one of the previous hops. From there, it's either micro-loops or freezing, and in both cases, transient interruption of service. Isn't that hopeless too?

The real issues of that thinking inside the ususal box are 1) that packets should "follow the arrows" along a path which certainly leads to loss when one link or node is broken along the arrows, and 2) greediness. All the protocols above are greedy, meaning that every hop that a packet made has to be progress towards the destination, and this dramatically reduces the opportunity to forward packets to destination.

When you drive and the street is blocked, you can U-turn around the block and rapidly restore the shortest path. The protocols above will not do that; this is why technologies such as LFA were needed on top. But then the redundancy is an add-on as opposed to a native feature of the protocol. 

Thinking outside that box would then mean:
- To your end-to-end principle point, let the source decide the packet treatment (including path) based on packet needs
- congruence with shortest path when there is no breakage
- neither micro-loop nor freeze when there's a breakage, 
- something like LFA-inside to survive one breakage, and possibly multiple ones, along the way

While DV is capable to form Non-ECMP DAGs while inside-the-box LS is not, I will agree with you that DV is quite hopeless to achieve the goals above. This is why my personal favorite can be classified as an LS protocol done differently. 

What it does is:
- use the LSDB as is
- reverse SPF so the destination computes the tree "towards self" as opposed to "towards everybody else" - this just means use the incoming metric
- tweak SPF to stitch selected branches in the tree to build "LFA-like" alternates, forming arcs that end in other arcs till destination, as opposed to arrows to be followed
- add a step where the destination injects the path towards self along that path but reversed, using source routing in the control plane and tweaked to transport a serialized graph. 

Yet another sleeping beauty on the other side of the PM wall, waiting for the kiss of a sizable market. Hint, it's not the ill-fated U-Turn protocol, that one had its own issues.

Keep safe;

Pascal



  



> -----Original Message-----
> From: NANOG <nanog-bounces+pthubert=cisco.com at nanog.org> On Behalf Of
> Masataka Ohta
> Sent: dimanche 3 avril 2022 15:46
> To: nanog at nanog.org
> Subject: Re: V4 via V6 and IGP routing protocols
> 
> Dave Taht wrote:
> 
> > Periodically I still do some work on routing protocols. 12? years ago
> > I had kind of given up on ospf and isis, and picked the babel protocol
> > as an IGP for meshy networks because I felt link-state had gone as far
> > as it could and somehow unifying BGP DV with an IGP that was also DV
> > (distance vector) seemed like a path forward.
> 
> As DV depends other routers to choose the best path from several
> candidates updated asynchronously, which means it is against the E2E
> principle and decisions by other routers are delayed a lot to wait all the
> candidates are updated, it is hopeless.
> 
> OTOH, LS only allows routers distribute the current most link states
> instantaneously and let end systems of individual routers compute the best
> path, LS converges quickly.
> 
> BGP is DV because there is no way to describe policies of various domains
> and, even if it were possible, most, if not all, domains do not want to
> publish their policies in full detail.
> 
> > My question for this list is basically, has anyone noticed or fiddled
> > with babel?
> 
> No.
> 
> 						Masataka Ohta


More information about the NANOG mailing list