WGLC for draft-rtgwg-mrt-frr-architecture
Stewart Bryant <stewart.bryant@gmail.com> Thu, 03 December 2015 18:03 UTC
Return-Path: <stewart.bryant@gmail.com>
X-Original-To: rtgwg@ietfa.amsl.com
Delivered-To: rtgwg@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 165BB1B2D2D for <rtgwg@ietfa.amsl.com>; Thu, 3 Dec 2015 10:03:06 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.999
X-Spam-Level:
X-Spam-Status: No, score=-1.999 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, SPF_PASS=-0.001] autolearn=ham
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id rrXlqr_J6478 for <rtgwg@ietfa.amsl.com>; Thu, 3 Dec 2015 10:03:00 -0800 (PST)
Received: from mail-wm0-x229.google.com (mail-wm0-x229.google.com [IPv6:2a00:1450:400c:c09::229]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 34C911ACD7F for <rtgwg@ietf.org>; Thu, 3 Dec 2015 10:03:00 -0800 (PST)
Received: by wmec201 with SMTP id c201so39579896wme.0 for <rtgwg@ietf.org>; Thu, 03 Dec 2015 10:02:58 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:subject:to:message-id:date:user-agent:mime-version :content-type; bh=DioWh0xha79xmeXh6Ra0j9Rsdm1Bhw3LDoDNhBzIr5o=; b=VNZP4fxAjBAO63tmyoHAZhZPQsTVmvS06Nq2E0cOvYwILLtTD2fZrTCOCbTNxFuo2q eKE6ti3Cpz/86eNn4CDTNgX1XRHTdg1sqakwtqwQ44AXKfADVeNE1ZqtY8De+4IjQfJu pTdG0YCgSKTSFiek/bDHZm5MuicQ46VPNkaqdgaNLfxFIL7978Anz7f3KdLknUbvyBsu NztN1NAVB9V7psG/RJRIcvq2ARHwvURQzbNmMQSmoODYIzcwIJ1gUuVvQCbzWFyz/dhJ CwswvDFzo7gSh7xSVetFjAsvHts5BwEL+/xIgyeX/fqDXsZya0KpkwDTTaXcCp6BXcY3 YMLQ==
X-Received: by 10.28.63.22 with SMTP id m22mr19061wma.58.1449165778835; Thu, 03 Dec 2015 10:02:58 -0800 (PST)
Received: from [10.55.98.184] ([173.38.220.33]) by smtp.gmail.com with ESMTPSA id t64sm36843035wmf.23.2015.12.03.10.02.57 (version=TLSv1/SSLv3 cipher=OTHER); Thu, 03 Dec 2015 10:02:57 -0800 (PST)
From: Stewart Bryant <stewart.bryant@gmail.com>
Subject: WGLC for draft-rtgwg-mrt-frr-architecture
To: draft-rtgwg-mrt-frr-architecture@tools.ietf.org, "rtgwg@ietf.org" <rtgwg@ietf.org>, Alvaro Retana <aretana@cisco.com>
Message-ID: <566083D0.1020607@gmail.com>
Date: Thu, 03 Dec 2015 18:02:56 +0000
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:38.0) Gecko/20100101 Thunderbird/38.3.0
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="------------050009070601010309040306"
Archived-At: <http://mailarchive.ietf.org/arch/msg/rtgwg/ZwWkfGvEpG5lk7w6SgTxKiSkJuw>
X-BeenThere: rtgwg@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Routing Area Working Group <rtgwg.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/rtgwg>, <mailto:rtgwg-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/rtgwg/>
List-Post: <mailto:rtgwg@ietf.org>
List-Help: <mailto:rtgwg-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/rtgwg>, <mailto:rtgwg-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 03 Dec 2015 18:03:06 -0000
Hi, I am sorry that this review is late, but a number of personal matters needed priority. Hopefully you can accept it still. Firstly my high order bit, and I suspect I will be in the rough on this. I am not convinced that this is the best solution that we can produce to this problem, and I am concerned about the operational issues that result from the non-intuitive repair paths when compared to other methods. I am also concerned about our ability to get a solution as complicated as this right first time in all of the corner cases. Thus I think that rather than recommend this to the industry as a standard, we should issue it as informational and see how it works out at scale. =========== 1. Introduction This document gives a complete solution for IP/LDP fast-reroute [RFC5714]. MRT-FRR creates two alternate trees separate from the primary next-hop forwarding used during stable operation. These two trees are maximally diverse from each other, providing link and node protection for 100% of paths and failures as long as the failure does not cut the network into multiple pieces. SB> I am concerned that this is an overstatement. SB> Firstly you cannot handle multiple concurrent failures in SB> even simple pathological cases. If the network is two SB> connected and you have both a red and blue failure SB> that you need to traverse, you (say) commit to the red SB> the you will fail at blue transition, even though the network is SB> is still connected at the link level. SB> The text should start with the invariants and assumptions to SB> correctly scope the claims in the introduction. SB> I think you have to say where the trees are routed since only SB> two mean you need a root, and you need to note that this is SB> different from the underlying IGP in which there is a tree SB> per node. Summary Comparison of IP/LDP FRR Methods +---------+-------------+-------------+-----------------------------+ | Method | Coverage | Alternate | Computation (in SPFs) | | | | Looping? | | +---------+-------------+-------------+-----------------------------+ | MRT-FRR | 100% | None | less than 3 | | | Link/Node | | | | | | | | | LFA | Partial | Possible | per neighbor | | | Link/Node | | | | | | | | | Remote | Partial | Possible | per neighbor (link) or | | LFA | Link/Node | | neighbor's neighbor (node) | | | | | | | Not-Via | 100% | None | per link and node | | | Link/Node | | | | | | | | | TI-LFA | 100% | Possible | per neighbor (link) or | | | Link/Node | | neighbor's neighbor (node) | +---------+-------------+-------------+-----------------------------+ SB> I really wonder how important the computational complexity is SB> given that we are moving to an SDN world where these calculations SB> can be offloaded? SB> SB> I think that it is fair to note that the other method use the SB> existing routing protocol and calculate alternate paths using SB> the methods of that routing protocol. Whereas with MRT you SB> really have a new routing protocol with all of the associated SB> operations overhead. ============ 1.1. Importance of 100% Coverage Fast-reroute is based upon the single failure assumption - that the time between single failures is long enough for a network to reconverge and start forwarding on the new shortest paths. That does not imply that the network will only experience one failure or change. SB> The above needs to be much earlier to qualify "complete" =========== 4. Maximally Redundant Trees (MRT) SB> Please remind me is there one red topology or one per failure. SB> There is just one - correct - so it would be useful to SB> explain what happens in a number of instances of failure. ============ 5. Maximally Redundant Trees (MRT) and Fast-Reroute When there is a link or node failure affecting, but not partitioning, SB> that should be "a single link or single node" ============ 6. Unicast Forwarding with MRT Fast-Reroute As mentioned before, MRT FRR needs multi-topology forwarding. Unfortunately, neither IP nor LDP provides extra bits for a packet to indicate its topology. Once the MRTs are computed, the two sets of MRTs can be used as two additional forwarding topologies. The same considerations apply for forwarding along the MRTs as for handling multiple topologies. SB> It would be good to explain how you solve the problem mentioned SB> in the previous para. Maybe a forward ref to a later section? ============= 6.1.1.1. Topology-scoped FEC encoded using a single label (Option 1A) [RFC7307] provides a mechanism to distribute FEC-Label bindings scoped to a given MPLS topology (represented by MPLS MT-ID). To use multi-topology LDP to create MRT forwarding topologies, we associate two MPLS MT-IDs with the MRT-Red and MRT-Blue forwarding topologies, in addition to the default shortest path forwarding topology with MT- ID=0. SB> Presumably you could MRT a topology other than default? SB> To be clear - you need 3 * the number of delivery labels in the SB> network, and in some cases these labels identify prefix or a SB> VPN exit point. SB> This is a lot more labels than some of the competing schemes SB> and so I think we really need a label table size comparison SB> in the comparison section earlier in the document. ============= 6.1.1.2. Topology and FEC encoded using a two label stack (Option 1B) With this forwarding mechanism, a two label stack is used to encode the topology and the FEC of the packet. The top label (topology-id label) identifies the MRT forwarding topology, while the second label (FEC label) identifies the FEC. The top label would be a new FEC type with two values corresponding to MRT Red and Blue topologies. When an MRT transit router receives a packet with a topology-id label, the router pops the top label and uses that it to guide the next-hop selection in combination with the next label in the stack (the FEC label). The router then swaps the FEC label, using the FEC- label bindings learned through normal LDP mechanisms. The router then pushes the topology-id label for the next-hop. As with Option 1A, this forwarding mechanism also has the useful property that the FEC associated with the packet is maintained in the labels at each hop along the MRT. This forwarding mechanism has minimal usage of additional labels, memory and LDP communication. It does increase the size of packets and the complexity of the required label operations and look-ups. This forwarding option is consistent with context-specific label spaces, as described in [RFC 5331]. However, the precise LDP behavior required to support this option for MRT has not been specified. SB> So I wonder if this should be normative text given that the underlying SB> control plane behavior is currently unknown? SB> You should comment on the impact on forwarding moving from SB> a one to a two label action at every hop along the repair path. SB> This is not an issue that the competing approaches have and so SB> should feature in the comparison section. ============ 6.1.2. MRT IP tunnels (Options 2A and 2B) IP tunneling can also be used as an MRT transit forwarding mechanism. Each router supporting this MRT transit forwarding mechanism announces two additional loopback addresses and their associated MRT color. Those addresses are used as destination addresses for MRT- blue and MRT-red IP tunnels respectively. The special loopback addresses allow the transit nodes to identify the traffic as being forwarded along either the MRT-blue or MRT-red topology to reach the tunnel destination. Announcements of these two additional loopback addresses per router with their MRT color requires IGP extensions, which have not been defined. SB> So help me understand here. How do you do this with just two SB> loopback addresses. If I have red to a, red to b etc how SB> do I distinguish them. Presumably you have to do this by SB> looking inside the tunnel to find the payload. Unlike MPLS SB> this is a much larger departure from the standard forwarding SB> process isn't it? Again this needs to go in the comparision. Either IPv4 (option 2A) or IPv6 (option 2B) can be used as the tunneling mechanism. Note that the two forwarding mechanisms using LDP Label options do not require additional loopbacks per router, as is required by the IP tunneling mechanism. This is because LDP labels are used on a hop- by-hop basis to identify MRT-blue and MRT-red forwarding topologies. 6.2. Forwarding LDP Unicast Traffic over MRT Paths In the previous section, we examined several options for providing MRT transit forwarding functionality, which is independent of the type of traffic being carried. We now look at the MRT ingress functionality, which will depend on the type of traffic being carried (IP or LDP). We start by considering LDP traffic. We also simplify the initial discussion by assuming that the network consists of a single IGP area, and that all routers in the network participate in MRT. Other deployment scenarios that require MRT egress functionality are considered later in this document. In principle, it is possible to carry LDP traffic in MRT IP tunnels. However, for LDP traffic, it is very desirable to avoid tunneling. Tunneling LDP traffic to a remote node requires knowledge of remote FEC-label bindings so that the LDP traffic can continue to be forwarded properly when it leaves the tunnel. This requires targeted LDP sessions which can add management complexity. SB> I have been thinking a lot about this problem just recently SB> whilst gardening, and you could take page from the SR playbook and use the SB> known offset approach. I guess that is a big change, but SB> I think we might be able to use it to avoid the longstanding distribution SB> issue - i.e. convert the problem to offset math. The two MRT LDP Label forwarding mechanisms have the useful property that the FEC associated with the packet is maintained in the labels at each hop Atlas, et al. Expires April 17, 2016 [Page 14] Internet-Draft MRT Unicast FRR Architecture October 2015 along the MRT, as long as an MRT to the originator of the FEC is used. The MRT IP tunneling mechanism does not have this useful property. Therefore, this document only considers the two MRT LDP Label forwarding mechanisms for protecting LDP traffic with MRT fast- reroute. SB> I do not understand the preceding text =========== 6.2.3. Other considerations for forwarding LDP traffic using MRT LDP Labels Note that forwarding LDP traffic using MRT LDP Labels requires that an MRT to the originator of the FEC be used. For example, one might find it desirable to have the PLR use an MRT to reach the primary next-next-hop for the FEC, and then continue forwarding the LDP packet along the shortest path tree from the primary next-next-hop. SB> Does this mean that the packet looses it's MRT marking at this point? SB> If so can't this result in a multi-failure repair loops? ============= 6.3. Forwarding IP Unicast Traffic over MRT Paths For IP traffic, there is no currently practical alternative except tunneling to gain the bits needed to indicate the MRT-Blue or MRT-Red forwarding topology. SB> Well isn't there a possible solution based on IPv6 options? The choice of tunnel egress MAY be flexible since any router closer to the destination than the next-hop can work. SB> Again isn't there an SRLG or other multiple failure issue with this? ========== 6.3.1.2. Tunneling IP traffic using MRT LDP Labels (Option 1B) The MRT LDP Label option 1B forwarding mechanism encodes the topology and the FEC using a two label stack as described in Section 6.1.1.2. When a PLR receives an IP packet that needs to be forwarded on the Red MRT to a particular tunnel endpoint, the PLR pushes two labels on the IP packet. The first (inner) label is the normal LDP label learned from the next-hop on the Red MRT, associated with a FEC originated by the tunnel endpoint. The second (outer) label is the topology-identification label associated with the Red MRT. For completeness, we note here a potential optimization. In order to tunnel an IP packet over an MRT to the destination of the IP packet (as opposed to an arbitrary tunnel endpoint), then we could just push a topology-identification label directly onto the packet. An MRT transit router would need to pop the topology-id label, do an IP route lookup in the context of that topology-id , and push the topology-id label. SB> What are you optimizing - certainly not the forwarding cycles. ============= 12.2. MRT Recalculation When a failure event happens, traffic is put by the PLRs onto the MRT topologies. After that, each router recomputes its shortest path tree (SPT) and moves traffic over to that. Only after all the PLRs have switched to using their SPTs and traffic has drained from the MRT topologies should each router install the recomputed MRTs into the FIBs. At each router, therefore, the sequence is as follows: 1. Receive failure notification 2. Recompute SPT 3. Install new SPT 4. If the network was stable before the failure occured, wait a configured (or advertised) period for all routers to be using their SPTs and traffic to drain from the MRTs. Atlas, et al. Expires April 17, 2016 [Page 34] Internet-Draft MRT Unicast FRR Architecture October 2015 5. Recompute MRTs 6. Install new MRTs. While the recomputed MRTs are not installed in the FIB, protection coverage is lowered. Therefore, it is important to recalculate the MRTs and install them quickly. SB> that is one way of doing it, anothey way is to have n MRTs running SB> ships in the night as each failure occurs and clean up later. I think SB> that this makes the migration timing less critical. I an not SB> sure whether you don't need some approach like "new labels" to make SB> this unconditionally safe. =========== 15. IANA Considerations Please create an MRT Profile registry for the MRT Profile TLV. The range is 0 to 255. The default MRT Profile has value 0. Values 1-200 are by Standards Action. Values 201-220 are for experimentation. Values 221-255 are for vendor private use. SB> I am suprised that this is not in a protocol documnet rather than the SB> architecture since you have no data structures or encodings in here. 16. Security Considerations This architecture is not currently believed to introduce new security concerns. SB> I suppose you could express this in terms of the parameters being SB> carried in the existing routing and thus you inherit their security SB> mechanisms, and that the topology boundary is set by their boundary SB> and thus you inherit their security and privacy characteristics. SB> I am supprised that the draft does not say anything about the SB> management of this new approach to FRR and the OAM that you will SB> need to test it. ===========
- WGLC for draft-rtgwg-mrt-frr-architecture Stewart Bryant
- WGLC for draft-rtgwg-mrt-frr-architecture Stewart Bryant
- Re: WGLC for draft-rtgwg-mrt-frr-architecture Stewart Bryant
- RE: WGLC for draft-rtgwg-mrt-frr-architecture Anil Kumar S N (VRP Network BL)
- Re: WGLC for draft-rtgwg-mrt-frr-architecture Stewart Bryant
- Re: WGLC for draft-rtgwg-mrt-frr-architecture Stewart Bryant
- Re: WGLC for draft-rtgwg-mrt-frr-architecture Stewart Bryant
- RE: WGLC for draft-rtgwg-mrt-frr-architecture Anil Kumar S N (VRP Network BL)
- RE: WGLC for draft-rtgwg-mrt-frr-architecture bruno.decraene
- RE: WGLC for draft-rtgwg-mrt-frr-architecture Anil Kumar S N (VRP Network BL)
- Re: WGLC for draft-rtgwg-mrt-frr-architecture Stewart Bryant
- Re: WGLC for draft-rtgwg-mrt-frr-architecture Stewart Bryant
- Re: WGLC for draft-rtgwg-mrt-frr-architecture Stewart Bryant
- Re: WGLC for draft-rtgwg-mrt-frr-architecture Alvaro Retana (aretana)
- Re: WGLC for draft-rtgwg-mrt-frr-architecture Stewart Bryant
- RE: WGLC for draft-rtgwg-mrt-frr-architecture bruno.decraene
- Re: WGLC for draft-rtgwg-mrt-frr-architecture Alvaro Retana (aretana)
- Re: WGLC for draft-rtgwg-mrt-frr-architecture Rob Shakir
- RE: WGLC for draft-rtgwg-mrt-frr-architecture Chris Bowers
- RE: WGLC for draft-rtgwg-mrt-frr-architecture Chris Bowers
- RE: WGLC for draft-rtgwg-mrt-frr-architecture Chris Bowers
- RE: WGLC for draft-rtgwg-mrt-frr-architecture Rob Shakir
- Re: WGLC for draft-rtgwg-mrt-frr-architecture Stewart Bryant
- Re: WGLC for draft-rtgwg-mrt-frr-architecture Stewart Bryant
- Re: WGLC for draft-rtgwg-mrt-frr-architecture Stewart Bryant
- RE: WGLC for draft-rtgwg-mrt-frr-architecture Chris Bowers
- Re: WGLC for draft-rtgwg-mrt-frr-architecture Stewart Bryant
- RE: WGLC for draft-rtgwg-mrt-frr-architecture Chris Bowers