Re: [Pce] Comments on draft-ietf-pce-segment-routing-08

<stephane.litkowski@orange.com> Thu, 17 November 2016 05:03 UTC

Return-Path: <stephane.litkowski@orange.com>
X-Original-To: pce@ietfa.amsl.com
Delivered-To: pce@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 3544D129889 for <pce@ietfa.amsl.com>; Wed, 16 Nov 2016 21:03:14 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.096
X-Spam-Level:
X-Spam-Status: No, score=-3.096 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, FREEMAIL_FROM=0.001, FREEMAIL_REPLY=1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, RP_MATCHES_RCVD=-1.497, SPF_PASS=-0.001, UNPARSEABLE_RELAY=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 Rj95d-nx_6xs for <pce@ietfa.amsl.com>; Wed, 16 Nov 2016 21:03:11 -0800 (PST)
Received: from relais-inet.orange.com (mta135.mail.business.static.orange.com [80.12.70.35]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id EE13C129866 for <pce@ietf.org>; Wed, 16 Nov 2016 21:03:08 -0800 (PST)
Received: from opfednr05.francetelecom.fr (unknown [xx.xx.xx.69]) by opfednr24.francetelecom.fr (ESMTP service) with ESMTP id 7EE4940573; Thu, 17 Nov 2016 06:03:07 +0100 (CET)
Received: from Exchangemail-eme2.itn.ftgroup (unknown [xx.xx.31.24]) by opfednr05.francetelecom.fr (ESMTP service) with ESMTP id 5154C2006E; Thu, 17 Nov 2016 06:03:07 +0100 (CET)
Received: from OPEXCLILMA4.corporate.adroot.infra.ftgroup ([fe80::65de:2f08:41e6:ebbe]) by OPEXCLILM7D.corporate.adroot.infra.ftgroup ([fe80::9044:c5ee:4dd2:4f16%19]) with mapi id 14.03.0319.002; Thu, 17 Nov 2016 06:03:07 +0100
From: stephane.litkowski@orange.com
To: Cyril Margaria <cyril.margaria@gmail.com>
Thread-Topic: [Pce] Comments on draft-ietf-pce-segment-routing-08
Thread-Index: AQHSPoUGqKOABs9inkipMImcyolwlaDYvVewgALisoCAAP6ZwA==
Date: Thu, 17 Nov 2016 05:03:06 +0000
Message-ID: <21967_1479358987_582D3A0B_21967_1067_1_9E32478DFA9976438E7A22F69B08FF921DBB1D13@OPEXCLILMA4.corporate.adroot.infra.ftgroup>
References: <CADOd8-tG-7epsLP5MbWtVRt_QxZAS+T_A80YF_Q699Lks+fvtw@mail.gmail.com> <25467_1479146724_5829FCE4_25467_994_1_9E32478DFA9976438E7A22F69B08FF921DBA75F9@OPEXCLILMA4.corporate.adroot.infra.ftgroup> <CADOd8-spga8ZXtQWGBoUVkThUK11Y3J_i=wynxRKK8yBD-2=bA@mail.gmail.com>
In-Reply-To: <CADOd8-spga8ZXtQWGBoUVkThUK11Y3J_i=wynxRKK8yBD-2=bA@mail.gmail.com>
Accept-Language: fr-FR, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [10.168.234.3]
Content-Type: multipart/alternative; boundary="_000_9E32478DFA9976438E7A22F69B08FF921DBB1D13OPEXCLILMA4corp_"
MIME-Version: 1.0
Archived-At: <https://mailarchive.ietf.org/arch/msg/pce/8eGTnTKMg-5fVgnsvaO_LzEyVuQ>
Cc: "pce@ietf.org" <pce@ietf.org>
Subject: Re: [Pce] Comments on draft-ietf-pce-segment-routing-08
X-BeenThere: pce@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: Path Computation Element <pce.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/pce>, <mailto:pce-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/pce/>
List-Post: <mailto:pce@ietf.org>
List-Help: <mailto:pce-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/pce>, <mailto:pce-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 17 Nov 2016 05:03:14 -0000

Hi

More inline [SLI2]

From: Cyril Margaria [mailto:cyril.margaria@gmail.com]
Sent: Wednesday, November 16, 2016 23:37
To: LITKOWSKI Stephane OBS/OINIS
Cc: pce@ietf.org
Subject: Re: [Pce] Comments on draft-ietf-pce-segment-routing-08

Hi Stephane,

please see inline

On 14 November 2016 at 13:05, <stephane.litkowski@orange.com<mailto:stephane.litkowski@orange.com>> wrote:

From: Pce [mailto:pce-bounces@ietf.org<mailto:pce-bounces@ietf.org>] On Behalf Of Cyril Margaria
Sent: Monday, November 14, 2016 23:40
Dear PCE'ers

I reviewed the document and I have the following comments/questions:

1)              The document implies that the PCC has to /MUST do IP address to SID conversion, I  think that it would allow a more simpler PCC if that capability is optional  and negotiated with additional error codes to indicate that the NAI SR-EROs are not supported.

[SLI] Usage of NAI in the SR-ERO is already optional today but driven by PCE. Do you mean that the PCC should drive the PCE computation result behavior ?

I think the PCC should be able to indicate if it supports NAI->SID translation.
I see the following point missing :
  - There is no capability negotiation or specific error code to indicate that the PCC does not support S flag set to 0.
[SLI2] Yes this can be negotiated but must not prevent the session to go up if one speaker does not support it, in this case, they will just not use NAI->SID translation. But we can also think of PCE that are not capable of computing the label stack, so this may be negotiated also. And in case the two speaker does not have any match (NAI or SID), we may consider that SR extensions cannot be used.
  - if NAI->SID translation is supported, What is the procedure/error code if a PCC cannot  resolve a NAI to a SID?
[SLI2] At least we need a way to inform PCE why the path cannot get up. And as a reason PCC can give “Not possible to encode path”

 From PCE perspective this is a change in the format of the ERO, this does not influence the path computation.



A new object may be created for this purpose as a new path constraint. But you also may fall into situations where the PCE does not support this new constraint requested by PCC. Then, it would be good to impose one method to be supported and others to be optional, this will ensure a real interoperability between all implementations.
I agree, the draft should mandate one method for SR support, but the other should be negotiated..
[SLI2] Ok

I would also prefer to limit the options… (does mixing SID and NAI make sense ? I do not see the use case behind)

The ERO should (points below excluded) be consistent, mixing SID-Only and NAI-Only does not make much sense. Having both NAI and SID does make sense for troubleshooting though.

[SLI2] This should be crystal clear in the draft.

2)              One aspect of the SR-ERO processing is that,  when building the label stack, the PCC should have enough information to decide on the outgoing link (this can be provided by the PCE). It will be good if the document state could spell out this part of the procedure and indicates any specific SR-ERO procedure. For instance one solution could be  that the PCE may use IP address or Adjacency SID to indicate the outgoing link.

[SLI] Are you in the case of SID only used in ERO ? If NAI is used, outgoing if can be deduced from the first hop NAI, if NAI is not used, then it becomes not trivial and honestly I do not see how to deduce the interface (PCC cannot check its outgoing label database, as the same value may be used by multiple neighbors). NAI should be a MUST for the first hop ?
I think NAI is a must for the first hop.

[SLI2] Ok, so this is something to add in the draft.

3)              Taking the outgoing link selection into account, the Maximum Stack Depth (MSD) calculation may be not trivial: for instance if the first hop is a local Adjacency-SID, then the label will not be stacked, but it will if the first hop is a Prefix SID it may be counted (non-adjacent node or adjacent node without PHP) but it may not be counted (adjacent node, with PHP). I think the draft should clarify it.

[SLI] I do not see why the first hop could be a local Adj-SID… if the ERO represents the stack to be used for the push operation, and if it starts with an Adj-SID, the Adj-SID should represent the first real forwarding operation. Going back to oif point, if NAI isn’t used, how can a PCC know that the first Adj-SID is a local SID or a neighbor’s SID ?
 I agree, if the PCC does not support NAI->SID, the first hop MUST include a NAI for out interface selection.


If SID only is used and starts with an Adj-SID, the SR-ERO may be encoded using: NAI,Adj-SID,SID#1,SID#2,SID#3,…SID#n. The first hop defines only the oif.

In case the stack starts with a Node-SID, we may have:Node-SID+NAI,SID#1,SID#2,SID#3 …

Using this, we are always inline with MSD as we never send an ERO with more labels than supported.


This works if the first hop for outgoing link selection correspond to an ADj-SID, I am not sure on the Node SID, it believe it depends if its a neigbhor and PHP flag:


Following that for SID PCC only this would give the following stacks:
  - NAI,Adj-SID,SID#1,SID#2,SID#3: stack is SID#1,SID#2,SID#3 (stack size: 3)
[SLI2] Why a size of 3, while I see 4 SIDs ?

  - Node-SID+NAI,SID#1,SID#2,SID#3:
       -  if the Node is adjacent with PHP:      SID#1,SID#2,SID#3 (stack size: 3)
       -  if the Node is adjacent without PHP: Node-SID,SID#1,SID#2,SID#3 (stack size: 4)
       -  if the Node is  not adjacent :               Node-SID,SID#1,SID#2,SID#3 (stack size: 4)
[SLI2] I do not see why PHP matters here.
If I’m connected to the node that I need to forward to, I do not need any SID, I can just forward my traffic on the link with the next labels in the stack but I do not need to care about PHP as I’m not using an ILM->NHLFE action here that’s just a push.

For PCC supporting NAI translation:
  - NAI#0+(SID#0),NAI#1+(SID#1),NAI#2+(SID#2),NAI#3(+SID#3): stack is SID#1,SID#2,SID#3 (stack size: 3)
  - NAI#0+(Node-SID#0),NAI#1+(SID#1),NAI#2+(SID#2),NAI#3(+SID#3):
       -  if the Node is adjacent with PHP:      SID#1,SID#2,SID#3 (stack size: 3)
       -  if the Node is adjacent without PHP: Node-SID#0,SID#1,SID#2,SID#3 (stack size: 4)
       -  if the Node is  not adjacent :              Node-SID#0,SID#1,SID#2,SID#3 (stack size: 4)


Thanks,
Cyril







Thanks,

Cyril







_________________________________________________________________________________________________________________________



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.