Hi Dhruv,
"figure out if the act of downloading the replication segment is considered a
PCECC operation or a regular stateful operation"
Could you expand on how you see the fundamental difference of PCECC operation
vs regular stateful? Or correct the following statements if incorrect or
missing something (?):
PCECC : Explicit incoming/outgoing instructions on each hop end to end
for a LSP that is sourced at a headend
Regular Stateful: Explicit outgoing instruction(s) on a headend where
binding label could be used to help steer into that head end
The view I have of replication segment is it has a “family relation” to the
unicast SR Policy, and specifically it’s usage of binding label and egress
label stack. Key difference of course that replicating packets vs weighted ecmp
egress forwarding. PCE can deploy a unicast SR Policy with the intention of
using it on that targeted headend or even as a transit for an upstream headend
to achieve label stack reduction. A replication segment has the same philosophy
with the exception that a replication segment can be encoded to indicate if
it's shared or tied to a specific tree. Important encodings (binding label,
multi-path ero) are being leveraged from objects being delivered in the unicast
use case. I do consider leveraging these same encodings and mechanisms
consistent between unicast and replication segment, and also consistent whether
it’s a root, bud or leaf - without having to define new and reusing the
concepts defined in those related docs. Yes, PCECC defines similar concepts and
objects but appears to me like we’d have to define more-new things to leverage
it and have replication segment deviate from its unicast relative and in return
it would be picking only a very small part of what PCECC is accomplishing.
Thanks
Andrew
From: Pce <[email protected]> on behalf of Dhruv Dhody <[email protected]>
Date: Thursday, March 4, 2021 at 11:08 PM
To: Tarek Saad <[email protected]>
Cc: "[email protected]" <[email protected]>, "[email protected]" <[email protected]>
Subject: Re: [Pce] draft-hsd-pce-sr-p2mp-policy wiki comments and action.
Hi Tarek,
Thanks for your message.
As I said to Hooman, the key is for WG to figure out if the act of downloading
the replication segment is considered a PCECC operation or a regular stateful
operation.
Since the replication segment state needs to be programmed on the leaves and
the replication node; plus coordination is needed for SID/labels across these
instructions. I lean towards PCECC.
And the argument for using CCI for PCECC operations is consistency and the
ability to reuse concepts already defined. When an implementation supports
multiple of these PCECC use cases, there will be consistency in implementation.
But this is not written in stone and if the WG decides otherwise then that's
that!
Thanks!
Dhruv
On Thu, Mar 4, 2021 at 3:25 AM Tarek Saad
<[email protected]<mailto:[email protected]>> wrote:
Hi Dhuruv/WG,
From the RBNFs below (extracted from the bottom of this email), the difference
I see between the 2 proposals is that the PCE-CC approach requires a new P2MP
CCI object just to carry the resplication-sid (which can already be carried
today w/mechanisms in [draft-ietf-pce-binding-label-sid without the CCI].
Yes, both proposals I presume would work to signal the replication-segment.
However, IMO, we need not mandate an approach (especially that the difference
below is minimal and most vendors already have support for the “current”
proposal). Let me know, and apologies if I misunderstood the proposals below.
>>
Current:
<Common Header>
[<SRP>]
<LSP>
[<replication-sid>] as described in [draft-sivabalan-pce-binding-label-sid]
[(<PATH-ATTRIB><ERO>)...]
CCI-Object:
<Common Header>
<SRP>
[<LSP>] <- not included for shared case
<CCI> <- you can carry the replication-sid as TE-binding as a TLV here
[(<PATH-ATTRIB><ERO>)...] <- this is a list
To Recap
- you needed ERO and PATH-ATTRIB and you get that here!
- the unit of signaling is a programming instruction and not a Path for the
above case!
- aligns with other use cases in PCEP
<<
Regards,
Tarek
On 2/28/21, 5:24 PM, "Pce on behalf of Bidgoli, Hooman (Nokia - CA/Ottawa)"
<[email protected]<mailto:[email protected]> on behalf of
[email protected]<mailto:[email protected]>> wrote:
Hi Dhruv
As per draft-ietf-spring-sr-replication-segment, a replication segment allows a
node (henceforth called as Replication Node) to replicate packets to a set of
other nodes(called Downstream Nodes) or hosts in a Segment Routing Domain.
A Replication segment can replicate a packet to directly connected nodes/hosts
or to downstream nodes (without need for state on the transit routers). In some
use cases replication segments can be stitch directly “Tree” or via a unicast
segment routing domain “spraying”. In other use cases the replication segment
can be a stand alone resource and act as a root and the leaf on the same node.
In short a replication segment is a logical construct and behaves as a
standalone resource, as an example it can be thought of as a binding SID on
that particular node encoded via draft-ietf-pce-binding-label-sid
This is why the authors on this draft feel a replication segment does not fit
the PCE-CC Architecture Design, as each replication segment is really a
head-end resource or a root that does a form of replication regardless if it
plays the role classified as a root, bud or leaf to deliver a multicast
service. As well, the authors view is that encoding the data in a CCI object
does not add enhancements, however introduces further complexity with new
identifiers to be used in message exchange, new object codepoint and capability
allocations, when the existing proposal based on simply ERO encoding using
already defined objects achieves the intended goals consistently regardless if
one would consider the role a node plays in an overall tree.
In addition the concept of CCI object will create further complexity for the
protection paths of the replication segment. The replication segment outgoing
interfaces can be protected via a single protection ERO. The ERO object
combined with draft-koldychev-pce-multipath will create the perfect solution
for this.
In conclusion to repeats the original point since a replication segment is
stand alone resource on each node (as an example a shared replication segment
as per draft-ietf-pim-sr-p2mp-policy) with the function of providing a
replication instruction on that node it really does not break the PCE-CC
Architecture.
I hope above clarifies the questions about PCE-CC decision.
Thanks
Hooman
From: Dhruv Dhody <[email protected]<mailto:[email protected]>>
Sent: Thursday, February 11, 2021 9:00 PM
To: Bidgoli, Hooman (Nokia - CA/Ottawa)
<[email protected]<mailto:[email protected]>>
Cc: [email protected]<mailto:[email protected]>;
[email protected]<mailto:[email protected]>
Subject: Re: draft-hsd-pce-sr-p2mp-policy wiki comments and action.
Hi Hooman,
On Fri, Feb 12, 2021 at 5:36 AM Bidgoli, Hooman (Nokia - CA/Ottawa)
<[email protected]<mailto:[email protected]>> wrote:
[Dhruv]: I feel there is some misunderstanding here. The PCECC extensions
defined a new object called CCI, with different object-types to be defined for
various use-cases. There is common handling for all such instructions and it is
defined once and can be reused across multiple use cases. I understand that you
want to use the ERO object with multi-path, and that *is* fine, you could in
fact easily define the RBNF in such a way that both CCI and ERO are included
for the new CCI object type for SR-P2MP.
Hi Dhruv
I am not sure if I understand are you suggesting we include both CCI and ERO as
an option and vendor chooses? What benefit does this have? How would this
improve the interop?
No, I did not say "or", it is not a choice!
In PCEP when we communicate with the head-end we use Candidate Path as the unit
of signaling (with Policy as an association). For programming instructions (and
not paths) we use CCI Object. New CCI Object-type for each use case can be
defined.
I think your proposal to program the replication and leaf nodes as (section
3.4.2) -
<Common Header>
[<SRP>]
<LSP>
[<replication-sid>]
as described in [draft-sivabalan-pce-binding-label-sid]
[<ERO-Attributes Object>]
as per [draft-koldychev-pce-multipath]
* RBNF is not correct, but I get the idea! I.e. you are signaling this as a
path on the branches and leaves :(
=
What I suggested is that for programming the branch and leaf node, we should
use CCI as a unit of signaling and you can include the ERO and PATH-ATTRIB
along with the CCI. Note this is a new CCI Object-type and RBNF can be updated
for it -
<Common Header>
<SRP>
[<LSP>] <- not included for shared case
<CCI> <- you can carry the replication-sid as TE-binding as a TLV here
[(<PATH-ATTRIB><ERO>)...] <- this is a list
To Recap
- you needed ERO and PATH-ATTRIB and you get that here!
- the unit of signaling is a programming instruction and not a Path for the
above case!
- aligns with other use cases in PCEP
Hope I am able to explain myself clearly and this helps!
Thanks!
Dhruv
Thanks
Hooman
-----Original Message-----
From: Dhruv Dhody <[email protected]<mailto:[email protected]>>
Sent: Thursday, February 11, 2021 5:01 AM
To: Bidgoli, Hooman (Nokia - CA/Ottawa)
<[email protected]<mailto:[email protected]>>
Cc: [email protected]<mailto:[email protected]>;
[email protected]<mailto:[email protected]>
Subject: Re: draft-hsd-pce-sr-p2mp-policy wiki comments and action.
Hi Hooman,
Please see inline...
On Tue, Feb 9, 2021 at 8:36 PM Bidgoli, Hooman (Nokia - CA/Ottawa)
<[email protected]<mailto:[email protected]>> wrote:
>
> Hi Dhruv
>
> Much appreciate your reply, Inline
>
> Thanks
> Hooman
>
>
> -----Original Message-----
> From: Dhruv Dhody <[email protected]<mailto:[email protected]>>
> Sent: Tuesday, February 9, 2021 5:28 AM
> To: Bidgoli, Hooman (Nokia - CA/Ottawa)
> <[email protected]<mailto:[email protected]>>
> Cc: [email protected]<mailto:[email protected]>;
> [email protected]<mailto:[email protected]>
> Subject: Re: draft-hsd-pce-sr-p2mp-policy wiki comments and action.
>
> Hi Hooman,
>
> Apologies! Missed replying to this email...
>
> On Fri, Jan 22, 2021 at 12:27 AM Bidgoli, Hooman (Nokia - CA/Ottawa)
> <[email protected]<mailto:[email protected]>> wrote:
> >
> > Dear Chairs
> >
> >
> >
> > Looking at the wiki page there was a comment on the sr-p2mp-policy draft.
> >
> >
> >
> > draft-hsd-pce-sr-p2mp-policy
> >
> > 109; More work is needed - align to PCECC, text needs to aligned to
> > the PCE WG style
> >
> >
> >
> > The authors took an action to setup a meeting and discuss the alignment
> > with PCECC farther. The final outcome of this meeting was unanimous
> > agreement, by all the authors/vendors on the draft, to go forward with ERO
> > object.
> >
> >
>
> As an individual I-D, it is up to the co-authors to decide the content of the
> I-D.
>
> The comment (and earlier discussions) was to make sure we maintain
> consistency across all our documents that we produce. RFC 8283 describes the
> PCECC architecture, where the PCE needs to interact with not only the
> head-end routers (the usual stateful/stateless PCE case) but also with the
> egress and the internal P routers. The WG has just sent the first PCECC
> extension for MPLS label allocation along the path to the IESG. For other use
> cases such as SR/SRv6 SID allocation as well as for the branch node in the
> P2MP LSP and Native-IP, all are under the PCECC umbrella. So far all use
> cases where the PCE needs to interact with other nodes beyond the ingress and
> provide instructions to them are using PCECC architecture.
>
> So when the PCE is interacting with the head end for SR P2MP Policy, it can
> use the usual stateful PCE extensions but when the PCE is interacting with
> the branch nodes and leaf nodes for replication segment, we strongly feel it
> should be described under the PCECC architecture. So you could use the ERO
> object for encoding the full P2MP path (and SR P2MP Policy) when interacting
> with the root node.
> But when interacting with other nodes, use the PCECC technique i.e. a new CCI
> object type (which could be used with the ERO if needed). This would help you
> to not reinvent things as well as maintain consistency.
> To reconfirm, the PCECC comment is related to section 3.3.3 & 4.5 only and
> not the whole document. If you still disagree please list the technical
> reason why so that the WG can evaluate them.
>
> HB> As I am sure you do appreciate there are many ways to skin the cat.
> TreeSID can be connected via unicast SR path and not every node needs to be
> programmed. In addition as explained the PCECC did not provide the with
> flexibility to configure backup/fast reroute paths and the current methods
> does provide that capability.
> Again as mentioned we looked at PCECC very hard and tried to implement
> treeSID via this method but there were major short comings for backup and FRR
> paths.
> There are multiple implementation in the field that is using the ERO object
> for treeSID with success.
> Are the chairs suggesting that the working group is only dictating PCECC and
> is not open to any other option but PCECC for the purpose of programming the
> PCC and multicast?
> We have been asking for adaptation since 3 IETF ago and we keep getting
> pushback because our implementation does not follow the PCECC, why is PCECC
> the only choice on the table? Why isn't the working group open to other
> options to solve the multicast requirements? Given the fact that the ERO has
> been implemented and is in the field and in multiple providers labs being
> tested with successful outcome, I think the WG should have a open view to
> this implantation. Especially when multiple vendors and providers (Cisco,
> Juniper, Nokia, Ciena, Bell Canada) to name a few have agreed to this
> implementation.
>
>
[Dhruv]: I feel there is some misunderstanding here. The PCECC extensions
defined a new object called CCI, with different object-types to be defined for
various use-cases. There is common handling for all such instructions and it is
defined once and can be reused across multiple use cases. I understand that you
want to use the ERO object with multi-path, and that *is* fine, you could in
fact easily define the RBNF in such a way that both CCI and ERO are included
for the new CCI object type for SR-P2MP.
Thanks!
Dhruv
> >
> > The authors feel ERO object in addition to draft-koldychev-pce-multipath-04
> > - PCEP Extensions for Signaling Multipath Information
> > (ietf.org<http://ietf.org>) for backup paths is the easiest and the most
> > efficient way to address the programming of a replication segment on PCC
> > from to the PCE.
> >
> >
> >
> > The authors would like to move forward with the adaptation call please. In
> > addition the authors are open to discuss the ERO preference in an interim
> > open session with the chairs.
> >
> >
>
> The document has not been updated after 109, last we discussed this, we found
> that the document needed more work because it does not follow the way the
> PCEP extensions are usually defined. It follows a very unusual format (e.g.
> section 5) at places. It is good to provide examples but suggest it be done
> in a way that is more readable. Please follow the RBNF notations when
> specifying PCEP message changes (in a backward-compatible way). Some of your
> co-authors have vast experience in writing documents in this WG, I suggest
> taking their help. Hopefully, a more readable version will help you get more
> reviews.
>
> HB> sure this is cosmetics and we will follow the WG suggestion, that said
> this should not stop the adaptation call. The sooner we have adaptation call
> the sooner we can have input.
>
> HB> to close, as you mentioned some of the co-authors have vast experience in
> PCE WG and the same co-authors have agreed and recommended ERO
> implementation. As such I ask the chairs for adaptation call again ASAP. We
> will fix the cosmetics to be inline with WG recommendations asap.
>
>
>
> Hope this helps, and again accept our apologies for missing replying to this
> email earlier.
>
> Thanks!
> Dhruv & Julien
>
> >
> > Regards
> >
> > Hooman
> >
> >
> >
> >
Juniper Business Use Only
_______________________________________________
Pce mailing list
[email protected]<mailto:[email protected]>
https://www.ietf.org/mailman/listinfo/pce
_______________________________________________
Pce mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/pce