[Babel-users] [babel] About Babel-RTT

Justin Kilpatrick justin at althea.net
Tue Jul 28 20:56:45 BST 2020


I'll take a (very informal and amateurish) crack at it. 

Assuming that RTT for all links is any non-negative fixed value, then RTT is just another monotonic metric and no loops will be formed.

Assuming RTT can vary arbitrarily we can contrive an example that produces a loop. It just takes some abnormal (but by no means impossible) values.

    A
  /    \
 B   C
  \    /
    D

Lets say our update interval is 1 second and the latency of all links varies between 1 second and 10 seconds. A sends a packet with destination D to node B. During this packets 2 second flight the RTT between B and D increased to 10 seconds with the other links remaining at 1 second, so now on receipt B will send that same packet back to A. If the randomly varying latency happens to swap by the time the packet makes it's way back to A we will have one repetition of a loop as the same packet is sent back to B. 

This isn't a stable routing loop, it will end after some probabilistic period of time, but it's definitely a possible loop. A more realistic construction might involve 20 hops and 10ms to 1s variance in latency, but it's the same problem.

I think the core question becomes

1) can we bound RTT variance to prevent this? 
2) are there any other possible loop conditions? 

If we can do (1) and (2) is false then we can reach the conclusion that RTT is as theoretically safe as any monotonic metric.

I hope I'm on the right track with this.

-- 
  Justin Kilpatrick
  justin at althea.net

On Tue, Jul 28, 2020, at 2:09 PM, Juliusz Chroboczek wrote:
> > In my opinion, without a theoretical understanding, it is difficult to
> > provide adequate guidance to implementers.
> 
> Since I'm in a chatty mood, I'll give another example.
> 
> While both RFC 2328 and Moy's book are written in a very simple engineering
> style, there is some reasonably solid theory behind OSPF, which at least
> some OSPF specialists don't appear to fully appreciate.  For example, the
> topological restrictions on area adjacency are pretty much the weakest
> conditions that avoid counting to infinity, and the extreme care given to
> the flooding subprotocol indicates a good understanding of the consequences
> of desynchronised LSDBs.
> 
> I'm deeply convinced that there is no such thing as sound engineering
> without a solid theoretical base.
> 
> -- Juliusz
> 
> _______________________________________________
> Babel-users mailing list
> Babel-users at alioth-lists.debian.net
> https://alioth-lists.debian.net/cgi-bin/mailman/listinfo/babel-users



More information about the Babel-users mailing list