Re: [spring] WG Last Call for draft-ietf-spring-segment-routing-mpls-13
Chris Bowers <chrisbowers.ietf@gmail.com> Mon, 05 November 2018 02:26 UTC
Return-Path: <chrisbowers.ietf@gmail.com>
X-Original-To: spring@ietfa.amsl.com
Delivered-To: spring@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 4074A129619; Sun, 4 Nov 2018 18:26:30 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.998
X-Spam-Level:
X-Spam-Status: No, score=-1.998 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, NORMAL_HTTP_TO_IP=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
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 fl1VweyukP2f; Sun, 4 Nov 2018 18:26:24 -0800 (PST)
Received: from mail-qk1-x730.google.com (mail-qk1-x730.google.com [IPv6:2607:f8b0:4864:20::730]) (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 6D56013102C; Sun, 4 Nov 2018 18:25:35 -0800 (PST)
Received: by mail-qk1-x730.google.com with SMTP id 131so12329232qkd.4; Sun, 04 Nov 2018 18:25:35 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=wHGLwCP4VxY9ckoEKQgz308IueM7CVYaYgoWpY+BFns=; b=jaNIq1/0SFLZ/msXjjQsMgrFWRvArZDWNleH3K/0wsqXeEacHOraypa7WV+ASdI3cS WdMCTs95V4SEYMSr6zV8XaYP5Lhhy2c/9XrYtU+y67zgW0Ncc7uhJcLBfcCHnHDNa6nJ g1GQfVKubrIKte2VFNmNG0I67SLTLzE3sq7NwMJhjUrQVcRu+ySJtv3CZTEkMeVY8PWS wTApjgRSYKdM8ElEq1GoNgYXbSqnwphV2/1BiGE6r9YkzSwU4uh6v+LT9c/P4/tzQQx4 z5KZWTvlTR+jpZY7h6sHBOSE2wU4DNzpP6ERjCreGGJMTasCc6CbgV2pazNaDNa3tycD PeJA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=wHGLwCP4VxY9ckoEKQgz308IueM7CVYaYgoWpY+BFns=; b=Wm7nYee9uM7xYN1lqduRq4ri0pMYb5UXVLlYt9zvqeI0yCYIPw4cZqZHxbLLR+Pzjw AXxFOkepbbshg4QhL5QhbJO6C6aO397Eeu6CzAZ9cq4Jh09AZdwgoiGCdkXrpU58bo4X 0vXkRORopfdbTVkT4JAAv4aYvKd0fAUbMli9mayd0RAbnAXoNoc4ZeZOhS1I/jMdJhuk RMu9kjZuXjIee/D7vX+ATFTbn9lid9WhJownWL+4GABrEvndwQWiuNYa6RzqcHxrDQ/C iyUNLHGDM0+3jay6wODRji0dKizwLl86OW0FTwufrjLZm0T4IaFASs3uSXcQYn2dxeK4 rsmA==
X-Gm-Message-State: AGRZ1gJsBur9M7OrhnkcBj6WWTA36mABMhF95bbB9TBNPi5UcYVy6UVe PkpgKsWh0N/qe8O7yM4uxC5+R/3B9LYlh4omF50=
X-Google-Smtp-Source: AJdET5d4n/fBkqRGsu5dZwDxt2fy/uG/D5H3eqDvZpAjfzHBfKwUw5wWoIsB3qXNK9i1LzlRSgNfDLR2FOphi9Wkej0=
X-Received: by 2002:a37:455:: with SMTP id 82mr19008500qke.60.1541384734291; Sun, 04 Nov 2018 18:25:34 -0800 (PST)
MIME-Version: 1.0
References: <28960_1527182067_5B06F2F3_28960_194_1_53C29892C857584299CBF5D05346208A47A53592@OPEXCLILM21.corporate.adroot.infra.ftgroup> <CAHzoHbtfjZQXivEXutZir5Uxdk5U1LH5SEKQJkHrPQWKVmdTfQ@mail.gmail.com> <cb7634df-856a-dd4c-d807-676a58ca3b77@gmail.com>
In-Reply-To: <cb7634df-856a-dd4c-d807-676a58ca3b77@gmail.com>
From: Chris Bowers <chrisbowers.ietf@gmail.com>
Date: Sun, 04 Nov 2018 20:24:46 -0600
Message-ID: <CAHzoHbt1ty_SxgGara5_k+EVK5mXZiQytjpd0KMrMNr-FEvBRg@mail.gmail.com>
To: abashandy.ietf@gmail.com
Cc: SPRING WG List <spring@ietf.org>, Bruno Decraene <bruno.decraene@orange.com>, draft-ietf-spring-segment-routing-mpls@ietf.org
Content-Type: multipart/alternative; boundary="0000000000008cbba40579e1991d"
Archived-At: <https://mailarchive.ietf.org/arch/msg/spring/-MbY6wjMrP1_vOrf4HzHZLuuHzg>
Subject: Re: [spring] WG Last Call for draft-ietf-spring-segment-routing-mpls-13
X-BeenThere: spring@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "Source Packet Routing in NetworkinG \(SPRING\)" <spring.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/spring>, <mailto:spring-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/spring/>
List-Post: <mailto:spring@ietf.org>
List-Help: <mailto:spring-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/spring>, <mailto:spring-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 05 Nov 2018 02:26:30 -0000
Ahmed, Thanks for including the examples and modifying where needed. I have comments on a few of your comments, shown below with [CB]. Thanks, Chris On Sat, Oct 27, 2018 at 5:04 PM Ahmed Bashandy <abashandy.ietf@gmail.com> wrote: > Thanks a lot for the examples. > > Version 15 of the document incorporates all of the examples in the > appendix (all examples have been moved to appendix), except the examples > where > - Incoming label=1009 > - Incoming label=1018 > - Incoming label=1019 > - Binding-SID label=1023 > > See my comments at "#Ahmed" under each of these 4 examples > > > I have a response for your comment right after the examples that use > "Incoming label=1008" and "Incoming label=1015" > > > Ahmed > > > > On 6/8/18 11:14 AM, Chris Bowers wrote: > > SPRING WG, > > I generally support publication of > draft-ietf-spring-segment-routing-mpls. However, I think > that the text in sections 2.5 and 2.6 (on incoming label collisions) > needs some work before publication. This text was added to > the draft a few months ago, and has not gotten much review > from the WG as a whole. The review and proposed text below > focuses on these sections. > > As I understand the current text of the draft, the general > approach to resolving incoming label collisions seems > well-reasoned and complete. However, it is possible that > my interpretation of these tie-breaking rules is > not what the authors intended. > > I'd like to propose the examples below to be included > in the draft to help clarify the tie-breaking rules > for incoming label collisions described in section 2.5. > I have highlighted several cases in these examples, > where I think the rules in section 2.5 need > to be clarified in order to unambiguously determine > the winning FEC in an example. > > It may also be the case that the authors or other > WG participants will disagree with the interpretation of the > rules used to choose a winning FEC in some of these > examples. In that case, we should discuss > what is the correct interpretation, and clarify the > text in the draft to make the correct interpretation > clear. > > > Incoming label collision examples > ========= > > Node A > OSPF default admin distance for implementation=50 > ISIS default admin distance for implementation=60 > > ========= > Example incoming label conflict for label=1005 on node A > > FEC1) > OSPF prefix sid advertisement from node B for 198.51.100.5/32 with index=5 > OSPF SRGB on node A = [1000,1999] > Incoming label=1005 > > FEC2) > ISIS prefix sid advertisement from node C for 203.0.113.105/32 with > index=5 > ISIS SRGB on node A = [1000,1999] > Incoming label=1005 > > FEC1 and FEC2 both use dynamic SID assignment. Since neither of > the FEC types is SR Policy, we use the default admin distances of 50 > and 60 to break the tie. So FEC1 wins. > > ========= > Example incoming label conflict for label=1006 on node A > > FEC1) > OSPF prefix sid advertisement from node B for 198.51.100.6/32 with index=6 > OSPF SRGB on node A = [1000,1999] > Incoming label=1006 > > FEC2) > ISIS adjacency sid advertisement from node A with label=1006 > Incoming label=1006 > Node A allocates this adjacency SID dynamically, > and it may differ across router reboots. > > FEC1 and FEC2 both use dynamic SID assignment. Since neither of > the FEC types is SR Policy, we use the default admin distances of 50 > and 60 to break the tie. So FEC1 wins. > > ========= > Example incoming label conflict for label=1007 on node A > > FEC1) > OSPF prefix sid advertisement from node B for 198.51.100.7/32 with index=7 > OSPF SRGB on node A = [1000,1999] > Incoming label=1007 > > FEC2) > ISIS adjacency sid advertisement from node A with label=1007 > Incoming label=1007 > Node A assigns this adjacency SID explicitly via configuration, > so the adjacency SID survives router reboots. > > FEC1 uses dynamic SID assignment, while FEC2 uses explicit SID > assignment. So FEC2 wins. > > ========= > Example incoming label conflict for label=1008 on node A > > FEC1) > OSPF prefix sid advertisement from node B for 198.51.100.8/32 with index=8 > OSPF SRGB on node A = [1000,1999] > Incoming label=1008 > > FEC2) > SR Policy advertisement from controller to node A > Endpoint = 192.0.2.208, color = 100, SID-List = <S1, S2> > Binding-SID label = 1008 > > FEC1 and FEC2 both use dynamic SID assignment. > Since one of the FEC types is SR Policy, default admin > distance is not used to break the tie. > /* The text in Section 2.5.1 needs to be clarified to specify > whether SR Policy always loses or always wins in this case. */ > > #Ahmed: > Section 2.5.1 in page 9 clearly says > The default FEC administrative distance order starting from the > lowest value SHOULD be > and then lists the FECs > Hence the list specifies the default admin distance starting from the > "lowest" > The Binding SID appears in the 2nd sub-bullet of the second > bullet. Hence the binding SID of a policy receives the maximal default > admin distance. Hence FEC1 should win > I adapted this example so that it shows the the default admin distance > of a binding SID is always higher than the default admin distances of > other FECs > > ------------- [CB] I suggest the following text to clarify the ordering of administrative distance in section 2.5.1. o Dynamic SID assignment: o For all FEC types except for SR policy, the FEC types are ordered using the default administrative distance ordering defined by the implementation. o The Binding SID [RFC8402 <https://tools.ietf.org/html/rfc8402>] assigned using SR Policy always has a higher administrative distance than any other FEC type. -------------- > > ========= > Example incoming label conflict for label=1009 on node A > > FEC1) > OSPF adjacency sid advertisement by node A with label=1009 > Incoming label=1009 > Node A assigns this adjacency SID explicitly via configuration, > so the adjacency SID survives router reboots. > > FEC2) > ISIS adjacency sid advertisement by node A with label=1009 > Incoming label=1009 > Node A assigns this adjacency SID explicitly via configuration, > so the adjacency SID survives router reboots. > > FEC1 and FEC2 both use explicit SID assignment. This kind of > incoming label collision should never occur, since an > implement of explicit SID assignment MUST guarantee > collision freeness on the same router. > > #Ahmed > The example is not clear. If the adjacency SIDs for ISIS and OSPF are > out of the same interface towards the same neighbor, then there is no > collision > If they are out of different interfaces and/or towards different > neighbors, then this is an example of a faulty > implementation. Implementation must not allow multiple MCCs on the > same box to assign the same local label to two different FECs > > Although assigning the same label to more than one FEC is a problem from > the MPLS point of view, in version 15, I added a paragraph in page 8 to > prohibit that for completeness > ------ [CB] The new paragraph on page 8 addresses this well. ------ > > ======== > Example incoming label conflict for label=1010 on node A > > FEC1) > ISIS prefix sid advertisement from node B for 203.0.113.110/32 with > index=10 > ISIS SRGB on node A = [1000,1999] > Incoming label=1010 > > FEC2) > ISIS adjacency sid advertisement by node A with label=1010 > Incoming label=1010 > Node A allocates this adjacency SID dynamically, > and it may differ across router reboots. > > FEC1 and FEC2 both use dynamic SID assignment. Since both FECs > are from the same MCC, they have the same default admin distance. > So we compare FEC type code-point. FEC1 has FEC type > code-point=120, while FEC2 has FEC type code-point=130. > Therefore, FEC1 wins. > > ========= > Example incoming label conflict for label=1011 on node A > > FEC1) > ISIS prefix sid advertisement from node B for 203.0.113.111/32 with > index=11 > ISIS SRGB on node A = [1000,1999] > Incoming label=1011 > > FEC2) > ISIS prefix sid advertisement from node C for 2001:DB8:1000::11/128 with > index=11 > ISIS SRGB on node A = [1000,1999] > Incoming label=1011 > > FEC1 and FEC2 both use dynamic SID assignment. Since both FECs > are from the same MCC, they have the same default admin distance. > So we compare FEC type code-point. Both FECs have FEC type > code-point=120. So we compare address family. Since IPv4 is > preferred over IPv6, FEC1 wins. > > ========= > Example incoming label conflict for label=1012 on node A > > FEC1) > ISIS prefix sid advertisement from node B for 203.0.113.112/32 with > index=12 > ISIS SRGB on node A = [1000,1999] > Incoming label=1012 > > FEC2) > ISIS prefix sid advertisement from node C for 203.0.113.128/30 with > index=12 > ISIS SRGB on node A = [1000,1999] > Incoming label=1012 > > FEC1 and FEC2 both use dynamic SID assignment. Since both FECs > are from the same MCC, they have the same default admin distance. > So we compare FEC type code-point. Both FECs have FEC type > code-point=120. So we compare address family. Both are IPv4 address > family, so we compare prefix length. FEC1 has prefix length=32, > and FEC2 has prefix length=30, so FEC2 wins. > > ========= > Example incoming label conflict for label=1013 on node A > > FEC1) > ISIS prefix sid advertisement from node B for 203.0.113.113/32 with > index=13 > ISIS SRGB on node A = [1000,1999] > Incoming label=1013 > > FEC2) > ISIS prefix sid advertisement from node C for 203.0.113.213/32 with > index=13 > ISIS SRGB on node A = [1000,1999] > Incoming label=1013 > > FEC1 and FEC2 both use dynamic SID assignment. Since both FECs > are from the same MCC, they have the same default admin distance. > So we compare FEC type code-point. Both FECs have FEC type > code-point=120. So we compare address family. Both are IPv4 address > family, so we compare prefix length. Prefix lengths are the same, > so we compare prefix. FEC1 has the lower prefix, so FEC1 wins. > > ========= > Example incoming label conflict for label=1014 on node A > > FEC1) > ISIS prefix sid advertisement from node B for 203.0.113.114/32 with > index=14 > Routing Instance ID = 1000 > ISIS SRGB on node A = [1000,1999] > Incoming label=1014 > > FEC2) > ISIS prefix sid advertisement from node C for 203.0.113.114/32 with > index=14 > Routing Instance ID = 2000 > ISIS SRGB on node A = [1000,1999] > Incoming label=1014 > > These two FECs match all the way through the prefix length and prefix. > So Routing Instance ID breaks the tie, with FEC1 winning. > > ========= > Example incoming label conflict for label=1015 on node A > > FEC1) > ISIS prefix sid advertisement from node B for 203.0.113.115/32 with > index=15 > Routing Instance ID = 1000 > ISIS Multi-topology ID = 50 > ISIS SRGB on node A = [1000,1999] > Incoming label=1015 > > FEC2) > ISIS prefix sid advertisement from node C for 203.0.113.115/32 with > index=15 > Routing Instance ID = 1000 > ISIS Multi-topology ID = 40 > ISIS SRGB on node A = [1000,1999] > Incoming label=1015 > > These two FECs match all the way through the prefix length, prefix, and > Routing Instance ID. We compare ISIS Multi-topology ID, so FEC2 wins. > > /* There appears to be a typo in section 2.5.1, with two different > orderings shown for a prefix-based FEC: > Prefix, Routing Instance, Topology, Algorithm > and > (Prefix Length, Prefix, SR Algorithm, routing_instance_id, Topology) > This needs to be corrected. */ > > #Ahmed: > This is not a mistake. This bullet illustrates how to encode a > prefix and hence it separates the prefix into its two components: > "prefix length" and "prefix" > ----------- [CB] The ambiguity is with the placement of SR Algorithm in the ordering. In the first list, algorithm appears _before_ the routing instance and the topology. In the second list, algorithm appears _after_ the routing instance and the topology. ----------- > > ========= > Example incoming label conflict for label=1016 on node A > > FEC1) > ISIS prefix sid advertisement from node B for 203.0.113.116/32 with > index=16 > Routing Instance ID = 1000 > ISIS Multi-topology ID = 50 > SR algorithm = 0 > ISIS SRGB on node A = [1000,1999] > Incoming label=1016 > > FEC2) > ISIS prefix sid advertisement from node C for 203.0.113.116/32 with > index=16 > Routing Instance ID = 1000 > ISIS Multi-topology ID = 50 > SR algorithm = 22 > ISIS SRGB on node A = [1000,1999] > Incoming label=1016 > > These two FECs match all the way through the prefix length, prefix, and > Routing Instance ID, and Multi-topology ID. We compare SR algorithm ID, so > FEC1 wins. > > ========= > Example incoming label conflict for label=1017 on node A > > FEC1) > ISIS prefix sid advertisement from node B for 203.0.113.117/32 with > index=17 > ISIS SRGB on node A = [1000,1999] > Incoming label=1017 > > FEC2) > ISIS mapping server advertisement (SID/Label Binding TLV) from node D: > Range=100, Prefix = 203.0.113.1/32 > This mapping server advertisment generates 100 mappings, one of which > maps 203.0.113.17/32 to index=17. > ISIS SRGB on node A = [1000,1999] > Incoming label=1017 > > The fact that FEC1 comes from a normal prefix sid advertisement and > FEC2 is generated from a mapping server advertisement is not > used as a tie-breaking parameter. Both FECs use dynamic SID assignment, > are from the same MCC, have the same FEC type code-point=120. Their prefix > lengths are the same as well. FEC2 wins based on lower numerical prefix > value, > since 203.0.113.17 is less than 203.0.113.117. > > ========= > Example incoming label conflict for label=1018 on node A > > FEC1) > ISIS IPv4 adjacency sid advertisement from node A with label=1018 > corresponding to next-hop interface address=192.0.2.100, outgoing > interface ID=5 > Incoming label=1018 > Node A allocates this adjacency SID dynamically, > and it may differ across router reboots. > > FEC2) > ISIS IPv6 adjacency sid advertisement from node A with label=1018 > corresponding to 2001:DB8:2000::100/128, outgoing interface ID=6. > Incoming label=1018 > Node A allocates this adjacency SID dynamically, > and it may differ across router reboots. > > Both FECs use dynamic SID assignment, are from the same MCC, > and have the same FEC type code-point=130. FEC1 wins > because IPv4 address family is preferred over IPv6. > > > #Ahmed: > This is another example of a faulty implementation because the > implementation of ISIS must not allow allocating the same local label > to two different adj-SIDs on the same node A > > ------- [CB] OK. Since example 6 already covers the case of using address family to break the tie, we can do not need to fix this example, and can omit it instead. ------- > > ========= > Example incoming label conflict for label=1019 on node A > > FEC1) > ISIS IPv4 adjacency sid advertisement from node A with label=1019 > corresponding to next-hop interface address=192.0.2.220, outgoing > interface ID=7 > Incoming label=1019 > Node A allocates this adjacency SID dynamically, > and it may differ across router reboots. > > FEC2) > ISIS IPv4 adjacency sid advertisement from node A with label=1019 > corresponding to next-hop interface address=192.0.2.230, outgoing > interface ID=8 > Incoming label=1019 > Node A allocates this adjacency SID dynamically, > and it may differ across router reboots. > > Both FECs use dynamic SID assignment, are from the same MCC, > and have the same FEC type code-point=130. Both FECs have to > same address family. FEC1 wins based on having the lowest next-hop > interface address. > > /* It is not clear how to construct an example that > would result in using the outgoing interface ID as a tie-breaker. > It would be useful to understand why this is and clarify > it in the text. */ > > #Ahmed: > This is a third example of a faulty implementation because the > implementation of ISIS must not allow allocating the same local label > to two different adj-SIDs on the same box > -------- [CB] The example above using label=1019 was an attempt to construct an example to exercise the "next-hop" as the tie-breaker. Since this example is not valid, I think the text needs an example that illustrates how "next-hop" should be used as a tie-breaker. Can you add such an example to the text? Similarly, the text needs an example of how "outgoing interface" should be used as a tie-breaker. -------- > ========= > Example incoming label conflict for label=1020 on node A > > FEC1) > SR Policy advertisement from controller to node A > Endpoint address=2001:DB8:3000::100, color=100, SID-List=<S1, S2> > Binding-SID label=1020 > > FEC2) > SR Policy advertisement from controller to node A > Endpoint address=192.0.2.60, color=100, SID-List=<S3, S4> > Binding-SID label=1020 > > The FECs match through the tie-breaks up to and including > having the same FEC type code-point=140. > FEC2 wins based on IPv4 address family being preferred > over IPv6. > > ========= > Example incoming label conflict for label=1021 on node A > > FEC1) > SR Policy advertisement from controller to node A > Endpoint address=192.0.2.70, color=100, SID-List=<S1, S2> > Binding-SID label=1021 > > FEC2) > SR Policy advertisement from controller to node A > Endpoint address=192.0.2.71, color=100, SID-List=<S3, S4> > Binding-SID label=1021 > > The FECs match through the tie-breaks up to and including > having the same address family. FEC1 wins by having the > lower numerical endpoint address value. > > ========= > > I'd like to propose the examples below to be included > in the draft to help clarify section 2.6 > (currently entitled "Outgoing Label Collision"). > > > Examples of the Effect Incoming Label Collision on Outgoing Label > Programming > ==================================== > > Example of effect of incoming label collision for label=1022 > on outgoing label programming on node A > > FEC1) > ISIS prefix sid advertisement from node B for 203.0.113.122/32 with > index=22 > ISIS SRGB on node A = [1000,1999] > Incoming label=1022 > > FEC2) > ISIS prefix sid advertisement from node C for 203.0.113.222/32 with > index=22 > ISIS SRGB on node A = [1000,1999] > Incoming label=1022 > > FEC1 wins based on lowest numerical prefix value. This means that node A > installs a transit MPLS forwarding entry to SWAP incoming label=1022, with > outgoing label N, > and use outgoing interace I. N is determined by the index associated with > FEC1 (index=22) and > the SRGB advertised by the next-hop node on the shortest path to reach > 203.0.113.122/32. > > Node A will generally also install an ingress MPLS forwarding entry > corresponding to FEC1 for > incoming prefix=203.0.113.122/32 pushing outgoing label N, and using > outgoing interace I. > > The rule in section 2.6 means that node A MUST NOT install an ingress MPLS > forwarding entry > corresponding to FEC2 ( which would be for incoming prefix= > 203.0.113.222/32). > ======== > > Example of effect of incoming label collision for label=1023 > on outgoing label programming on node A > > FEC1) > SR Policy advertisement from controller to node A > Endpoint address=192.0.2.80, color=100, SID-List=<S1, S2> > Binding-SID label=1023 > > FEC2) > SR Policy advertisement from controller to node A > Endpoint address=192.0.2.81, color=100, SID-List=<S3, S4> > Binding-SID label=1023 > > FEC1 wins by having the lower numerical endpoint address value. This means > that node A > installs a transit MPLS forwarding entry to SWAP incoming label=1023, with > outgoing labels > and outgoing interface determined by the SID-List for FEC1. > Node A will generally also install an ingress MPLS forwarding entry > corresponding to FEC1 for > incoming prefix=192.0.2.80/32 pushing outgoing labels and using the > outgoing interface > determined by the SID-List for FEC1. > > The rule in section 2.6 means that node A MUST NOT install an ingress MPLS > forwarding entry > corresponding to FEC2 ( which would be for incoming prefix=192.0.2.81/32). > > > #Ahmed > It seems like there is a misunderstanding here. A policy is identified by > a color and an IP address. What gets installed in the FIB is the MPLS label > representing the binding SID. A packet arriving with the top label equal to > the binding SID gets forwarded into the policy. The endpoint and color are > unique identifier of the policy on the box > The IP address is the address of an endpoint, NOT a prefix. So the > instantiation or advertisement of a policy does not result in installing > any prefixes in FIB > ---------- [CB] I added some text to the example to use the commonly understood case of recursive next-hop resolution for BGP VPN routes. Please use this modified example. Illustration of the effect of incoming label collision resolution on outgoing label programming on node A FEC1: o SR Policy advertisement from controller to node A o Endpoint address=192.0.2.80, color=100, SID-List=<S1, S2> o Binding-SID label=1023 FEC2: o SR Policy advertisement from controller to node A o Endpoint address=192.0.2.81, color=100, SID-List=<S3, S4> o Binding-SID label=1023 FEC1 wins by having the lower numerical endpoint address value. This means that node A installs a transit MPLS forwarding entry to SWAP incoming label=1023, with outgoing labels and outgoing interface determined by the SID-List for FEC1. In this example, we assume that node A receives two BGP/VPN routes: R1 with VPN label=V1, BGP next-hop = 192.0.2.80 <http://192.0.2.80/32>, and color=100, R2 with VPN label=V2, BGP next-hop = 192.0.2.81 <http://192.0.2.80/32>, and color=100, We also assume that A has a BGP policy which matches on color=100 that allows that its usage as SLA steering information. In this case, node A will install a VPN route with label stack = <S1,S2,V1> (corresponding to FEC1). The rule described in section 2.6 means that node A MUST NOT install a VPN route with label stack = <S3,S4,V1> (corresponding to FEC2.) ---------- > > ======== > > General comment: > > section 2.6 title: > existing: > Outgoing Label Collision: > proposed: > Effect of Incoming Label Collision on Outgoing Label Programming : > -------------------------------------- > > > Thanks, > Chris > > > On Thu, May 24, 2018 at 12:14 PM, <bruno.decraene@orange.com> wrote: > >> Hello Working Group, >> >> >> >> This email starts a Working Group Last Call on draft-ietf-spring-segment-routing-mpls-13 [1] which is considered mature and ready for a final working group review. >> >> >> >> Please read this document if you haven't read the most recent version yet, and send your comments to the list, no later than *June 08*. >> >> >> >> As a reminder, this document had already passed a WGLC more than a year ago on version -06 [2], had been sent to the AD but then returned to the WG. >> >> Since then, the document has significantly changed, so please read it again. In particular, it now includes the resolution in case of incoming label collision. Hence it killed draft-ietf-spring-conflict-resolution. >> >> >> >> Both co-chairs co-author this document, hence: >> >> - Shraddha has agreed to be the document shepherd.. Thank you Shraddha. >> >> - Martin, our AD, has agreed to evaluate the WG consensus. >> >> >> >> Thank you, >> >> Bruno, Rob >> >> >> >> [1] https://tools.ietf.org/html/draft-ietf-spring-segment-routing-mpls-13 >> >> [2] https://mailarchive.ietf.org/arch/msg/spring/STiYsQJWuVXA1C9hK4BiUnyMu7Y >> >> >> >> _________________________________________________________________________________________________________________________ >> >> Ce message et ses pieces jointes peuvent contenir des informations confidentielles ou privilegiees et ne doivent donc >> pas etre diffuses, exploites ou copies sans autorisation. Si vous avez recu ce message par erreur, veuillez le signaler >> a l'expediteur et le detruire ainsi que les pieces jointes. Les messages electroniques etant susceptibles d'alteration, >> Orange decline toute responsabilite si ce message a ete altere, deforme ou falsifie. Merci. >> >> This message and its attachments may contain confidential or privileged information that may be protected by law; >> they should not be distributed, used or copied without authorisation. >> If you have received this email in error, please notify the sender and delete this message and its attachments. >> As emails may be altered, Orange is not liable for messages that have been modified, changed or falsified. >> Thank you. >> >> >> _______________________________________________ >> spring mailing list >> spring@ietf.org >> https://www.ietf.org/mailman/listinfo/spring >> >> > >
- Re: [spring] WG Last Call for draft-ietf-spring-s… bruno.decraene
- Re: [spring] WG Last Call for draft-ietf-spring-s… Adrian Farrel
- Re: [spring] WG Last Call for draft-ietf-spring-s… bruno.decraene
- Re: [spring] WG Last Call for draft-ietf-spring-s… 徐小虎(义先)
- Re: [spring] WG Last Call for draft-ietf-spring-s… Chris Bowers
- Re: [spring] WG Last Call for draft-ietf-spring-s… Przemyslaw Krol
- Re: [spring] WG Last Call for draft-ietf-spring-s… Przemyslaw Krol
- Re: [spring] WG Last Call for draft-ietf-spring-s… Ahmed Bashandy
- [spring] WG Last Call for draft-ietf-spring-segme… bruno.decraene
- [spring] FW: WG Last Call for draft-ietf-spring-s… bruno.decraene
- Re: [spring] WG Last Call for draft-ietf-spring-s… bruno.decraene
- Re: [spring] WG Last Call for draft-ietf-spring-s… Adrian Farrel
- Re: [spring] WG Last Call for draft-ietf-spring-s… Zafar Ali (zali)
- Re: [spring] WG Last Call for draft-ietf-spring-s… Ahmed Bashandy
- Re: [spring] WG Last Call for draft-ietf-spring-s… bruno.decraene
- Re: [spring] WG Last Call for draft-ietf-spring-s… Ahmed Bashandy
- Re: [spring] WG Last Call for draft-ietf-spring-s… Ahmed Bashandy
- Re: [spring] WG Last Call for draft-ietf-spring-s… Ahmed Bashandy
- Re: [spring] WG Last Call for draft-ietf-spring-s… Ahmed Bashandy
- Re: [spring] WG Last Call for draft-ietf-spring-s… Ahmed Bashandy
- Re: [spring] WG Last Call for draft-ietf-spring-s… bruno.decraene
- Re: [spring] WG Last Call for draft-ietf-spring-s… bruno.decraene
- Re: [spring] WG Last Call for draft-ietf-spring-s… Acee Lindem (acee)
- Re: [spring] WG Last Call for draft-ietf-spring-s… Chris Bowers