Martin hi!
Lots of thanks for a prompt response.

Please see some comments inline below.

Regards,
Sasha

Office: +972-39266302
Cell:      +972-549266302
Email:   [email protected]

From: Martin Horneffer [mailto:[email protected]]
Sent: Wednesday, January 06, 2016 5:21 PM
To: Alexander Vainshtein; [email protected]
Cc: [email protected]; [email protected]; 
[email protected]; [email protected]
Subject: Re: [spring] Last Call: <draft-ietf-spring-problem-statement-06.txt> 
(SPRING Problem Statement and Requirements) to Informational RFC

Hello everyone,

concerning the first comment: I don't think that a document needs to explicitly 
specify all out-of-scope topics in order to be self-contained. So not exactly a 
contradiction, just maybe confusing.
[[Sasha]] I fully agree that a document does not have to explicitly specify all 
out-of-scope issue. But IMHO  issues that are not mentioned in the document 
should not appear in the Abstract. It is up to you and your colleagues to 
decide whether you remove Multicast from the Abstract or add it to the 
document:).


Concerning the second comment: This is just another example of the frequent 
misunderstanding, that typical use cases for segment routing would required a 
lot of explicit path information.
[[Sasha]] The typical use cases may or may not require lots of explicit path 
information. But the draft explicitly mentions support of strict route option 
for Traffic Engineering (the first bullet in the long list of TE requirements 
in Section 3.3). And, to the best of my understanding, a strict route option  
means that all the links (or at least all the nodes) on the path are specified 
in the right order. Do I miss something?


There's more than enough analyses that show that in typical carrier topologies 
traffic engineering with segment routing can achieve almost everything with 
just adding one or maybe two segments (labels).
[[Sasha]] I have seen several such analyses but they mainly deal with TI-FRR. I 
have not seen any that say that one or two added segments address the typical 
traffic engineering needs - and I am not sure we can define what exactly the 
typical traffic engineering needs are- e.g., can you claim that a typical 
strict TE route with not exceed 10 hops/segments?

However those analyses are not neccessarily public, nor would I think an 
Internet Draft or RFC would be a good place for this kind of information.
[[Sasha]] May I suggest that that you take a look at Section 9 "Operation in 
Real World Topologies" of RFC 7490<https://www.rfc-editor.org/rfc/rfc7490.txt>? 
From my POV this is a valid counterexample to your approach. However, I do not 
expect to see such analysis in the Problem Statement document. I am asking to 
acknowledge a problem first of all. Once this is done, you can explain 
(possibly in another document) how it can be addressed. And to make it 
absolutely clear: from my POV the very fact that somebody has taken care to 
perform the analyses to which you refer is an indication that the problem 
exists and that the operators are aware of its existence.


Maybe we should add a section to draft-ietf-spring-segment-routing-mpls saying 
that the operators are responsible for understanding the capabilities of the 
hardware they use, and to consider those when setting up their specific 
traffic-engineering tricks.
[[Sasha]] Of course the operators are responsible for understanding the 
capabilities of the HW they use. The really interesting question, from my POV, 
is, whether the TE entities (e.g., the CSPF algorithms that would be used in 
conjunction with Segment Routing) should be also aware of these capabilities 
(or, rather, limitations)? From my POV the answer is "Definitely yes" - I would 
rather not encounter the situation when the PCE sends to the requesting NE a TE 
path that meets the operator-specified constraints (e.g., avoid over-utilized 
links and try to use under-utilized ones) but  the network cannot implement "as 
given".


Best regards, Martin


Am 05.01.16 um 20:59 schrieb Alexander Vainshtein:

Hi all,

I have read the Segment Routing Problem Statement and Requirements draft and I 
have a couple of comments  on it.



Editorial:

The Abstract states that "Multicast use-cases and requirements are out of scope 
of this document", but this (or equivalent) statement does not appear anywhere 
in the body of the document. IMHO and FWIW this contradicts the last para in 
Section 4.3 of RFC 7322 that states that "the RFC should be self-contained as 
if there were no Abstract".



Technical:

The draft requires, in Section 2, that "The SPRING architecture SHOULD leverage 
the existing MPLS dataplane without any modification...".

In addition, in Section 3.3 it requires that "The SPRING architecture SHOULD 
allow incremental and selective deployment without any requirement of flag day 
or massive upgrade of all network elements"  .



My reading (FWIW) of these two requirements is that SPRING with MPLS dataplane 
should work on existing MPLS forwarding HW.



If this understanding is correct, it is in potential conflict with another 
requirement formulated in the Section1 of the draft: "The SPRING architecture 
SHOULD allow optimal virtualization: put policy state in the packet header and 
not in the intermediate nodes along the path".



This conflict stems from the following (admittedly, naïve) observation:



1.       The policy state representing the desired source route must be pushed 
in its entirety onto the packet by the source (here source is interpreted in 
the same way as in the draft itself) and must be parsed by all the transit 
nodes.

2.       The amount of the policy state grows (linearly?) as the number of 
elements in the source route selected by the packet. In particular, the policy 
representing a strict route could be potentially quite large.

3.       In the nodes that use hardware-based forwarding, the size of the 
policy state that can be pushed and parsed with the expected throughput is 
inherently limited. These limits differ for different implementations but they 
usually cannot be exceeded without replacing the forwarding hardware.

4.       Passing "offending" packets for software handling could result in 
dramatic decrease of throughput. S



In the case of the MPLS dataplane, the policy state is expressed as the MPLS 
label stack where each segment is represented by a label stack entry. AFAIK, 
existing (and probably future) forwarding HW that supports MPLS is inherently 
limited (the limits differ for different implementations) both regarding the 
number of labels that could be pushed on the packet, and regarding the total 
depth of the label stack that it can parse.



Note: The limit on the number of labels that can be pushed on a packet by 
forwarding HW is obvious. The limit on  that can be parsed becomes essential in 
the scenarios when ECMP is used, because:

&#0;.                      As per RFC 7325, Section 2.4.5.1., "The most entropy 
is generally found in the label stack entries near the bottom of the label 
stack (innermost label, closest to S=1 bit)"

&#0;.                      As per Section 2.4.5.2 of the same RFC, "Inspecting 
the IP payload provides the most entropy in provider networks.  The practice of 
looking past the bottom of stack label for an IP payload is well accepted and 
documented in [RFC4928] and in other RFCs".

&#0;.                      Both these methods (hashing the label stack and 
hashing IP header) obviously require parsing the entire label stack.



The limits of forwarding HW could be considered an implementation problem, were 
it not for the draft requiring (and I fully agree with validity of this 
requirement) that SPRING could be used on existing MPLS-capable HW.



>From my POV the document should at least explicitly acknowledge this conflict 
>as part of the SPRING problem statement. Preferably it should also include 
>some guidelines for its resolution:

&#0;.                      One possibility that comes to mind could be a 
requirement to provide the information about hardware-specific limitations to 
traffic-engineering entities in order to avoid computation of paths that do not 
meet HW-imposed constraints.

&#0;.                      Another possibility is to clearly indicate that 
loose route options are preferable for using with SPRING. To the best of my 
understanding this could be translated into a requirement for a new type of 
constrained path computation algorithms that yield loose (rather than strict) 
routes

Of course there may be other (and, possibly, better) ways to resolve this 
conflict. But, from my POV, if it is not acknowledged explicitly, its 
resolution becomes much more problematic.



Hopefully, these LC comments would be useful.



Regards,

Sasha



Office: +972-39266302

Cell:      +972-549266302

Email:   
[email protected]<mailto:[email protected]>



-----Original Message-----
From: spring [mailto:[email protected]] On Behalf Of The IESG
Sent: Tuesday, December 15, 2015 8:11 PM
To: IETF-Announce
Cc: [email protected]<mailto:[email protected]>; 
[email protected]<mailto:[email protected]>; 
[email protected]<mailto:[email protected]>;
 [email protected]<mailto:[email protected]>; 
[email protected]<mailto:[email protected]>
Subject: [spring] Last Call: <draft-ietf-spring-problem-statement-06.txt> 
(SPRING Problem Statement and Requirements) to Informational RFC





The IESG has received a request from the Source Packet Routing in Networking WG 
(spring) to consider the following document:

- 'SPRING Problem Statement and Requirements'

  <draft-ietf-spring-problem-statement-06.txt> as Informational RFC



The IESG plans to make a decision in the next few weeks, and solicits final 
comments on this action. Please send substantive comments to the 
[email protected]<mailto:[email protected]> mailing lists by 2016-01-05. Exceptionally, 
comments may be sent to [email protected]<mailto:[email protected]> instead. In either 
case, please retain the beginning of the Subject line to allow automated 
sorting.



Abstract





   The ability for a node to specify a forwarding path, other than the

   normal shortest path, that a particular packet will traverse,

   benefits a number of network functions.  Source-based routing

   mechanisms have previously been specified for network protocols, but

   have not seen widespread adoption.  In this context, the term

   'source' means 'the point at which the explicit route is imposed' and

   therefore it is not limited to the originator of the packet (i.e.:

   the node imposing the explicit route may be the ingress node of an

   operator's network).



   This document outlines various use cases, with their requirements,

   that need to be taken into account by the Source Packet Routing in

   Networking (SPRING) architecture for unicast traffic.  Multicast use-

   cases and requirements are out of scope of this document.











The file can be obtained via

https://datatracker.ietf.org/doc/draft-ietf-spring-problem-statement/



IESG discussion can be tracked via

https://datatracker.ietf.org/doc/draft-ietf-spring-problem-statement/ballot/





No IPR declarations have been submitted directly on this I-D.





_______________________________________________

spring mailing list

[email protected]<mailto:[email protected]>

https://www.ietf.org/mailman/listinfo/spring




_______________________________________________

spring mailing list

[email protected]<mailto:[email protected]>

https://www.ietf.org/mailman/listinfo/spring

_______________________________________________
spring mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/spring

Reply via email to