[spring] draft-voyer-spring-sr-replication-segment-03

bruno.decraene@orange.com Wed, 08 July 2020 15:08 UTC

Return-Path: <bruno.decraene@orange.com>
X-Original-To: spring@ietfa.amsl.com
Delivered-To: spring@ietfa.amsl.com
Received: from localhost (localhost []) by ietfa.amsl.com (Postfix) with ESMTP id 581913A0D7B; Wed, 8 Jul 2020 08:08:08 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.095
X-Spam-Status: No, score=-2.095 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, UNPARSEABLE_RELAY=0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=orange.com
Received: from mail.ietf.org ([]) by localhost (ietfa.amsl.com []) (amavisd-new, port 10024) with ESMTP id 2l4wY7H9R2lr; Wed, 8 Jul 2020 08:08:06 -0700 (PDT)
Received: from relais-inet.orange.com (relais-inet.orange.com []) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 668FA3A0D75; Wed, 8 Jul 2020 08:07:42 -0700 (PDT)
Received: from opfednr03.francetelecom.fr (unknown [xx.xx.xx.67]) by opfednr26.francetelecom.fr (ESMTP service) with ESMTP id 4B22jS6HqGz10Jn; Wed, 8 Jul 2020 17:07:40 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=orange.com; s=ORANGE001; t=1594220860; bh=TtePkrTq4Jd/oFcd8AIu3cqsXA8uGK1Wcwn7/Av2grQ=; h=From:To:Subject:Date:Message-ID:Content-Type:MIME-Version; b=AOJ4yZfM5gXnn31LE3dE6FysIlc0eIaV5MLWYCIppTnq1AfxZ6jliGacE4S8FXEVZ rzfA1TiAJaRWmpayvGssfq18Qpf2ZZwxKXRZWmxifG+cuhj3zrkFHFNueTWuHfek4Z MmY9O2cUfo5tMdtKGAZojOSlUmQeRa8V2c0LbaJWb6BLXM4dzm6Q7G3J29x/Ou47HP HMoKmrg1OV3AIKojwR9E5hK1PwjbC3w5gVhSb0EaW10uCCWamMk5aHo7cO8ZsdRrYE d2lVF8xuXk2XKdKJgZZHe0b1UnCjTjRG27OthuytkMwiledUAUcxCWf9C5cAdgVOeT LPQLbihtfUOwA==
Received: from Exchangemail-eme6.itn.ftgroup (unknown [xx.xx.13.32]) by opfednr03.francetelecom.fr (ESMTP service) with ESMTP id 4B22jS5TvrzDq7W; Wed, 8 Jul 2020 17:07:40 +0200 (CEST)
From: <bruno.decraene@orange.com>
To: "draft-voyer-spring-sr-replication-segment@ietf.org" <draft-voyer-spring-sr-replication-segment@ietf.org>
CC: "spring@ietf.org" <spring@ietf.org>
Thread-Topic: draft-voyer-spring-sr-replication-segment-03
Thread-Index: AdZVOM6FG3P/ZK+TQvOwxKQKuoVaGg==
Date: Wed, 8 Jul 2020 15:07:40 +0000
Message-ID: <3632_1594220860_5F05E13C_3632_134_1_53C29892C857584299CBF5D05346208A48ECD7AA@OPEXCAUBM43.corporate.adroot.infra.ftgroup>
Accept-Language: fr-FR, en-US
Content-Language: fr-FR
x-originating-ip: []
Content-Type: multipart/alternative; boundary="_000_53C29892C857584299CBF5D05346208A48ECD7AAOPEXCAUBM43corp_"
MIME-Version: 1.0
Archived-At: <https://mailarchive.ietf.org/arch/msg/spring/Qfcl8pkREPZw2oE3M0w7Xvv_aD4>
Subject: [spring] draft-voyer-spring-sr-replication-segment-03
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: Wed, 08 Jul 2020 15:08:08 -0000


As an individual contributor, please find below some proposed comments.


"A SR Replication segment allows a packet to be replicated from a replication node to downstream nodes."
May be adding "Each downstream node is reached by using a unicast segment or SR policy."
(otherwise, the building of a multicast tree seem possibly within the scope)

"a Replication segment is a logical segment"
- I'm not sure what you mean by "logical".
- My understanding is that the replication is a local segment as per RFC8402. i.e. it is instantiated on one single node. Can you make this clear in the document?


"A Downstream Node could be
   represented by the node's Node SID (i.e. it does not matter how
   traffic gets to the Downstream Node, whether it's directly connected
   or not), or in case of a directly connected node it could be
   represented by the Adjacency SID (for the interface connecting to the
   directly connected Leaf Node).  Alternatively, a Downstream Node
   could be represented by a SID-list or a Segment Routing Policy
   [I-D.ietf-spring-segment-routing-policy] that partially/fully
   specifies the explicit path from the Replication Node to the
   Downstream Node, or even represented by another Replication segment."

This definition uses only "could", "alternatively", "or even".
Would it be possible to phrase it to describe what _it is_ ?
On the list, Andrew proposed the following text "downstreamIngressReplicationSid and SID Path". Which may be could be phrased as: a unicast SR policy, (possibly) followed by a replication segment. And if you extend the SR-Policy to include the use of a Replication segment, may be specification of a branch could simply be 'one SR policy'.

"  For the root of a Multi-point service, the Replication SID
   SHOULD be considered to be the equivalent of Binding SID
   [I-D.ietf-spring-segment-routing-policy] of a Segment Routing Policy.
   At a downstream node of the Multi-point service, the Replication SID
   MAY be used to identify that portion of the Multi-point service."

>From this text, it's not clear whether the replication SID/segment is a local segment, or a global segment, or something new to be defined.
Why not replacing the above text with
" the Replication SID
   SHOULD be considered to be the equivalent of Binding SID
   [I-D.ietf-spring-segment-routing-policy] of a Segment Routing Policy."

" o  When the Active Segment [RFC8402] is the Replication SID.  In this
      case, the operation for a replicated copy is CONTINUE."

"CONTINUE" would mean that the segment is not a local segment.
So the document really needs to clarify whether the replication SID/segment is a local segment, or a global segment, or something new to be defined.

"  o  On the root of a Multi-point service, based on local policy-based
      routing.  In this case, the operation for a replicated copy is

Introduction states that the building of a tree (hence the root) is out of scope of this document.

Could the section 2 "Replication Segment" of this document be focused on the definition and specification of this local replication segment?

"  If a Downstream Node is an egress (aka leaf) of the Multi-point
   service, i.e. no further replication is needed, then that leaf node's
   Replication segment will not have any Replication State and the
   operation is NEXT.  Notice that the segment on the leaf node is still
   referred to as a Replication segment for the purpose of

   A node can be a bud node, i.e. it is a replication node and a leaf
   node of a Multi-point service at the same time
   [I-D.voyer-pim-sr-p2mp-policy].  In this case, the Replication
   segment's Replication State includes a branch with the Downstream
   Node being itself and the operation for the replicated copy is NEXT."

same comment: Could the section 2 "Replication Segment" of this document be focused on the definition and specification of this local replication segment?

"Replication segments apply equally to both SR-MPLS and SRv6 instantiations of Segment Routing."

May be, but there are differences between both data planes and the draft does not talk about those differences.
e.g. for SR-MPLS, labels are local to a node (including labels of global segments). Hence it's not crystal clear to me if/how a segment/label can follow a replication segment. Because that label would be received by N nodes, which may understand it differently (different FEC). How is this handled? In essence, the situation is similar to the use of anycast SID. So this seems possible to handle it, but may be not trivial up to the point of not mentioning it. (some options are using upstream allocated labels with context forwarding tables, enforcing that all receivers use the same FEC for the label. cf the spring anycast draft)

e.g. for SRv6, the use of binding SID implies the use of new (another) IPv6 encapsulation [1]. So if N consecutive replication segments are used along the path, N IPv6 encapsulation are performed. I'm not seen a provision for performing the N de-encapsulations. How is this handled, on which node(s)?

[1] https://tools.ietf.org/html/draft-ietf-spring-srv6-network-programming-16#section-5


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.