Subject: [spring] clarification of text in draft-ietf-spring-segment-routing-09

From: Chris Bowers <[email-masked]>
Date: Wed, 3 Aug 2016 14:24:19 +0000

SPRING WG,

The following paragraph in section 3.2.1 of draft-ietf-spring-segment-routing-09 is confusing.

   The ingress node of an SR domain validates that the path to a prefix,
   advertised with a given algorithm, includes nodes all supporting the
   advertised algorithm.  In other words, when computing paths for a
   given algorithm, the transit nodes MUST compute the algorithm X on
   the IGP topology, regardless of the support of the algorithm X by the
   nodes in that topology.  As a consequence, if a node on the path does
   not support algorithm X, the IGP-Prefix segment will be interrupted
   and will drop packet on that node.  It's the responsibility of the
   ingress node using a segment to check that all downstream nodes
   support the algorithm of the segment.

I interpret the first, third, and fourth sentences in this paragraph
as saying that an ingress node should make sure that transit nodes on a path 
install transit forwarding entries for prefix-SIDs for a given algorithm by looking that 
the SR-Algorithm (sub)-TLV advertised by the transit nodes before sending traffic on that path.   

However, the second sentence in the paragraph confuses this interpretation.  

                                              "In other words, when computing paths for a
   given algorithm, the transit nodes MUST compute the algorithm X on
   the IGP topology, regardless of the support of the algorithm X by the
   nodes in that topology."

This sentence could be interpreted as saying that transit nodes must compute 
all algorithms advertised by any node in the topology, even if the transit node doesn't
support the algorithm.  This sentence doesn't make sense to me. 

A simple solution would be to delete this second sentence.  However, 
other clarifying text would be another solution.

Thanks,
Chris