Re: [Idr] draft-ietf-spring-segment-routing-policy

<bruno.decraene@orange.com> Thu, 17 October 2019 14:54 UTC

Return-Path: <bruno.decraene@orange.com>
X-Original-To: idr@ietfa.amsl.com
Delivered-To: idr@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 4C0C81207FF; Thu, 17 Oct 2019 07:54:11 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.597
X-Spam-Level:
X-Spam-Status: No, score=-2.597 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, UNPARSEABLE_RELAY=0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
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 fa95oa8qv-Yo; Thu, 17 Oct 2019 07:54:07 -0700 (PDT)
Received: from relais-inet.orange.com (relais-inet.orange.com [80.12.66.41]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 6F3D112004C; Thu, 17 Oct 2019 07:54:06 -0700 (PDT)
Received: from opfedar07.francetelecom.fr (unknown [xx.xx.xx.9]) by opfedar20.francetelecom.fr (ESMTP service) with ESMTP id 46vBy45349z8swV; Thu, 17 Oct 2019 16:54:04 +0200 (CEST)
Received: from Exchangemail-eme6.itn.ftgroup (unknown [xx.xx.13.48]) by opfedar07.francetelecom.fr (ESMTP service) with ESMTP id 46vBy43sdSz5vMw; Thu, 17 Oct 2019 16:54:04 +0200 (CEST)
Received: from OPEXCAUBM43.corporate.adroot.infra.ftgroup ([fe80::b846:2467:1591:5d9d]) by OPEXCAUBM32.corporate.adroot.infra.ftgroup ([::1]) with mapi id 14.03.0468.000; Thu, 17 Oct 2019 16:54:04 +0200
From: <bruno.decraene@orange.com>
To: "Ketan Talaulikar (ketant)" <ketant@cisco.com>
CC: idr wg <idr@ietf.org>, SPRING WG List <spring@ietf.org>
Thread-Topic: draft-ietf-spring-segment-routing-policy
Thread-Index: AdVIa5SmJroPUcCZR8q84NofG0DylwAap4eAClUZXxAEOkCQEAAIvrDwAF7CAUAAER9IMA==
Date: Thu, 17 Oct 2019 14:54:03 +0000
Message-ID: <17025_1571324044_5DA8808C_17025_479_8_53C29892C857584299CBF5D05346208A48C57362@OPEXCAUBM43.corporate.adroot.infra.ftgroup>
References: <18897_1564666804_5D42EBB4_18897_192_1_53C29892C857584299CBF5D05346208A48BCF785@OPEXCAUBM43.corporate.adroot.infra.ftgroup> <BYAPR11MB355899A67FBFBE1750E9A3A6C1D90@BYAPR11MB3558.namprd11.prod.outlook.com> <29418_1569256656_5D88F4D0_29418_238_1_53C29892C857584299CBF5D05346208A48C1A5D2@OPEXCAUBM43.corporate.adroot.infra.ftgroup> <MWHPR11MB1552147332CA921F6E5BC795C1930@MWHPR11MB1552.namprd11.prod.outlook.com> <6606_1571130975_5DA58E5F_6606_165_1_53C29892C857584299CBF5D05346208A48C53096@OPEXCAUBM43.corporate.adroot.infra.ftgroup> <CY4PR11MB15414289322C17B5184195A9C16D0@CY4PR11MB1541.namprd11.prod.outlook.com>
In-Reply-To: <CY4PR11MB15414289322C17B5184195A9C16D0@CY4PR11MB1541.namprd11.prod.outlook.com>
Accept-Language: fr-FR, en-US
Content-Language: fr-FR
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [10.114.13.247]
Content-Type: multipart/alternative; boundary="_000_53C29892C857584299CBF5D05346208A48C57362OPEXCAUBM43corp_"
MIME-Version: 1.0
Archived-At: <https://mailarchive.ietf.org/arch/msg/idr/d-jifixM6fw1K6Uos2wsLr7uBHA>
Subject: Re: [Idr] draft-ietf-spring-segment-routing-policy
X-BeenThere: idr@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Inter-Domain Routing <idr.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/idr>, <mailto:idr-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/idr/>
List-Post: <mailto:idr@ietf.org>
List-Help: <mailto:idr-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/idr>, <mailto:idr-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 17 Oct 2019 14:54:12 -0000

Hi Ketan,

My point was not related to the alignment of code points but to the fact that there is no provision taken to guarantee that in the future “Types” defined in [1] be unique/(a unique idenfitier).
This type may eventually be used in protocol, e.g. yang model [2], in which case collision would be an issue.

But if a collision of such SID types, as defined in [1], is acceptable for you, let it be. In which case, possibly [2] should use the names rather than the number (e.g. “SR-MPLS Label” rather than “segment-type-1”)

[1] https://tools.ietf.org/html/draft-ietf-spring-segment-routing-policy-03#section-4
[2] https://tools.ietf.org/html/draft-raza-spring-sr-policy-yang-01#section-4.2.1


--Bruno




From: Ketan Talaulikar (ketant) [mailto:ketant@cisco.com]
Sent: Thursday, October 17, 2019 8:27 AM
To: DECRAENE Bruno TGI/OLN
Cc: idr wg; SPRING WG List
Subject: RE: draft-ietf-spring-segment-routing-policy

Hi Bruno,

A codepoint is a number that is allocated by IANA and sent over the wire as part of a protocol encoding. It is protocol/registry specific. E.g. we can have the same Segment Type signalled by codepoint “9” in  https://tools.ietf.org/html/draft-ietf-idr-te-lsp-distribution-12#section-9.7 while it is signalled by codepoint “10” in https://tools.ietf.org/html/draft-ietf-idr-segment-routing-te-policy-07#section-8.4 – there is no issue functionally. It would be nice to have those aligned across the two since they have semantic similarity but it is not necessary.

A reference is just that – a short form instead of using a long descriptive name. So a segment of “Type 9” that is referred in https://tools.ietf.org/html/draft-ietf-spring-segment-routing-policy-03#section-4 is what is signalled using codepoint 9 in BGP-LS while using codepoint 10 for SRTE. You will see places in the draft-ietf-spring-segment-routing-policy where these “types” are referred to – e.g. https://tools.ietf.org/html/draft-ietf-spring-segment-routing-policy-03#section-5.1.

Ideally, it would have been great to have the reference and codepoints (across registries) aligned – but it is not necessary.

In summary, besides the correction needed in draft-ietf-idr-segment-routing-te-policy in section 2.4.3.2 (and it’s sub-sections) as described in my email below, I do not see any issue here.

If you think we need some text changes to improve this clarity in any draft, please do suggest.

Thanks,
Ketan

From: bruno.decraene@orange.com <bruno.decraene@orange.com>
Sent: 15 October 2019 14:46
To: Ketan Talaulikar (ketant) <ketant@cisco.com>
Cc: idr wg <idr@ietf.org>rg>; SPRING WG List <spring@ietf.org>
Subject: RE: draft-ietf-spring-segment-routing-policy

Hi Keta,

Please check inline [Bruno2]

From: Ketan Talaulikar (ketant) [mailto:ketant@cisco.com]
Sent: Tuesday, October 15, 2019 6:56 AM
To: DECRAENE Bruno TGI/OLN; SPRING WG List
Cc: idr wg
Subject: RE: draft-ietf-spring-segment-routing-policy

Hi Bruno,

Please check inline below.

From: bruno.decraene@orange.com<mailto:bruno.decraene@orange.com> <bruno.decraene@orange.com<mailto:bruno.decraene@orange.com>>
Sent: 23 September 2019 22:08
To: Ketan Talaulikar (ketant) <ketant@cisco.com<mailto:ketant@cisco.com>>; SPRING WG List <spring@ietf.org<mailto:spring@ietf.org>>
Cc: idr wg <idr@ietf.org<mailto:idr@ietf.org>>
Subject: RE: draft-ietf-spring-segment-routing-policy

Hi Ketan,

Thanks for the complete answer. And sorry for my delay in responding.
More inline [Bruno]

From: Ketan Talaulikar (ketant) [mailto:ketant@cisco.com]
Sent: Friday, August 2, 2019 4:37 AM
To: DECRAENE Bruno TGI/OLN; SPRING WG List
Cc: idr wg
Subject: RE: draft-ietf-spring-segment-routing-policy

+ IDR WG since some of the affected documents are IDR WG drafts

Hi Bruno,

I agree that the draft-ietf-spring-segment-routing-policy [1] is the right place to normatively define the different segment types and perhaps would have been the right document to create an IANA registry for them.

I also agree that the draft-ietf-idr-segment-routing-te-policy [2] has a discrepancy between its IANA section 8.4 for the Segment-List sub-TLV space and section 2.4.3.2 (and it’s sub-sections) where the different Segment Types have been defined. I will request the authors of this draft to fix the text in section 2.4.3.2 (and it’s sub-sections) for the types 8 and above to adjust for the codepoint 9 allocated for the weight sub-TLV.

At this point, given the implementations available and already deployed for [2], I doubt if we can correct and map the segment types in that draft to what has been defined in [1].

There is also the https://tools.ietf.org/html/draft-ietf-idr-te-lsp-distribution-11#section-9.7 which creates the Segment Types IANA registry (aligned with [1]).

[Bruno] This IANA registry seems BGP-LS specific. (sub-registry under "Border Gateway Protocol - Link State (BGP-LS) Parameters")
On a side note,

>  “The registry contains the following codepoints (suggested values, to be assigned by IANA)”
Since you define a new registry, you can populate initial allocations at your own will. IOW :s/(suggested values, to be assigned by IANA)”/
[KT] Thanks. Fixed it in the version just posted.



And then I am not sure if draft-raza-spring-sr-policy-yang is able to benefit/leverage the IANA registry from [1].

So unless we can have the IANA registry created via [1] being consistently used in all dependent documents, I do not see much gain in setting up the Segment Type registry under IANA at this point.
[Bruno] Make sense, but brings three clarification questions:
Is there a need for draft-ietf-spring-segment-routing-policy to define numbers for the segment types (or is the name enough)?
[KT] The names are long and descriptive (as you can see) and hence the numbers allow for easy reference through the rest of the document.
[Bruno2] I’m fine with a number. But if the numbers are to be used as a useful reference, it looks like a number must only reference one type of segment.

IOW, if someone reference: Type 2: SRv6 SID: while someone else use the same number for a different reference: Type 2: SR-MPLS Label. then Type 2 doesn’t seem like a useful reference anymore.

  If yes, do we need such numbers of be unique (avoid collisions)?
[KT] The numbers in draft-ietf-spring-segment-routing-policy are not code-points today and just reference numbers. So there is no concept of collision with the code-points defined in other registries? Would it help if draft-ietf-spring-segment-routing-policy were to refer to segment types as A,B,C so as to avoid this confusion? 😊
[Bruno2] no, that would not help in any way.
I’m not sure what the difference you make between a code point and a reference. Is the former to be used by computer and the latter by humans? If so, don’t you think that human also deserve unambiguous reference?

     If yes, how do you propose to avoid code point collisions in the future? (Or do you assume that there won’t be future ones?)
[KT] I would not rule out future segment types.

 [Bruno2] That seem to answer the second question in brackets, but not the main one.

Let’s take an example: would you be fine with a document defining Type 2: SRv6+ SID: ?

        If so, what’s the purpose of a reference (type 2) which does not uniquely identify something?

If not, how do you propose to avoid collision between reference numbers?



Taking another example, lets reference “coffee” as type 2 and “tea” as type 2. Could you please bring me a cup of type 2?



Thanks,

--Bruno






Thanks,
Ketan

Thanks,
Bruno




Thanks,
Ketan

From: spring <spring-bounces@ietf.org<mailto:spring-bounces@ietf.org>> On Behalf Of bruno.decraene@orange.com<mailto:bruno.decraene@orange.com>
Sent: 01 August 2019 19:10
To: SPRING WG List <spring@ietf.org<mailto:spring@ietf.org>>
Subject: [spring] draft-ietf-spring-segment-routing-policy

Hi authors,

Speaking as individual contributor.

This document seems to define multiple types of segments (1 to 11).
May be this document would be the right place to define them normatively and creates the IANA registry for them. And this seems like a work for spring.
Otherwise, there is a risk that other documents redefine them, possibly in a non-consistent manner. (1) E.g.  the BGP draft is not using the same type numbers/name, which may bring confusion. I would expect YANG models to also need these types.
BTW is there any chance to align the types in the BGP document or is this too late? (alternatively may be changing the types in the sr-policy document)

Thanks,
Regards,
Bruno

(1)
SR-policy:

   Type 1: SR-MPLS Label:

   Type 2: SRv6 SID:

   Type 3: IPv4 Prefix with optional SR Algorithm:

   Type 4: IPv6 Global Prefix with optional SR Algorithm for SR-MPLS:

   Type 5: IPv4 Prefix with Local Interface ID:

   Type 6: IPv4 Addresses for link endpoints as Local, Remote pair:

   Type 7: IPv6 Prefix and Interface ID for link endpoints as Local, Remote pair for SR-MPLS:

   Type 8: IPv6 Addresses for link endpoints as Local, Remote pair for SR-MPLS:

   Type 9: IPv6 Global Prefix with optional SR Algorithm for SRv6:

   Type 10: IPv6 Prefix and Interface ID for link endpoints as Local, Remote pair for SRv6:

   Type 11: IPv6 Addresses for link endpoints as Local, Remote pair for SRv6:


BGP:
   1     MPLS SID sub-TLV                            This document
   2     SRv6 SID sub-TLV                            This document
   3     IPv4 Node and SID sub-TLV                   This document
   4     IPv6 Node and SID for SR-MPLS sub-TLV       This document
   5     IPv4 Node, index and SID sub-TLV            This document
   6     IPv4 Local/Remote addresses and SID sub-TLV This document
   7     IPv6 Node, index for remote and local pair  This document
         and SID for SR-MPLS sub-TLV
   8     IPv6 Local/Remote addresses and SID sub-TLV This document
   9     Weight sub-TLV                              This document
   10    IPv6 Node and SID for SRv6 sub-TLV          This document
   11    IPv6 Node, index for remote and local pair  This document
         and SID for SRv6 sub-TLV
   12    IPv6 Local/Remote addresses and SID for     This document
         SRv6 sub-TLV


_________________________________________________________________________________________________________________________



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.

_________________________________________________________________________________________________________________________



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.

_________________________________________________________________________________________________________________________



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.

_________________________________________________________________________________________________________________________

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.