Subject: Microloop protection as discussed in today's meeting

From: Stewart Bryant <[email-masked]>
Date: Tue, 19 Jul 2016 14:19:04 +0100

The RFC that had all of the generic methods that were known at the time 
of publication is RFC5715.

The two phase methods were in section 6.2 (near-side) and section 6.3 
(far-side). The first describing tunnelling the traffic towards the 
repair (and continue to use the repair), the second describing 
tunnelling traffic towards the destination. For the purposes of this 
discussion source routing of all flavours can be considered a type of 
tunnel.

If this approach is a new  genetric  two phase method, it would be 
useful to articulate it in general terms.

The type of topology that I was trying to explain in the meeting is as 
follows

A-B-C-D-E-F-H-I-J.....W
|                     |
|                     |
+------X-Y-Z----------+

All costs are 1 and Y has failed.

Traffic to Z can enter enywhere, and is protected by X.

When the network starts to converge ALL the routers A..J will need to 
update their fib to forward towards Z via W rather than towards X via A.

If they do this in a random order as would be the case without LF 
convergence then you may precipitate microlooping.

What you need to do is to force the packets toward either X or Z using a 
tunnel, or a source routed path, and as far as I can see you need to do 
that at every point of potential entry into the network, in the above 
case A..J, else you risk a microloop.

Now I suppose that if ALL packets were source routed, then you could 
consider that the network was constantly in the first phase, but I think 
that you would need to use strict source routing, rather than loose 
source routing else it reduces the the problem I describe above.

- Stewart