Brian,

Inline.

Thank you,
Pablo.

-----Original Message-----
From: Brian E Carpenter <brian.e.carpen...@gmail.com>
Date: Saturday, 14 December 2019 at 21:04
To: "Pablo Camarillo (pcamaril)" <pcama...@cisco.com>, "spring@ietf.org" 
<spring@ietf.org>
Subject: Re: [spring] I-D Action: 
draft-ietf-spring-srv6-network-programming-06.txt

    Hi Pablo,
    
    See in line:
    
    On 14-Dec-19 22:34, Pablo Camarillo (pcamaril) wrote:
    > Brian,
    > 
    > Many thanks for having another look to the draft. Please see inline [PC].
    > 
    > Thank you,
    > Pablo.
    > 
    > -----Original Message-----
    > From: spring <spring-boun...@ietf.org> on behalf of Brian E Carpenter 
<brian.e.carpen...@gmail.com>
    > Date: Wednesday, 11 December 2019 at 23:06
    > To: "spring@ietf.org" <spring@ietf.org>
    > Subject: Re: [spring] I-D Action: 
draft-ietf-spring-srv6-network-programming-06.txt
    > 
    >     So, I've tried to look at this with fresh eyes, and thanks for the
    >     various updates and clarifications.
    >     
    >     (I'm still not on the SPRING list so please leave me in CC.)
    >     
    >     I remain a bit puzzled. First, a quote from the SRH specification
    >     (draft-ietf-6man-segment-routing-header-26):
    >     
    >     > 4.2.  Transit Node
    >     > 
    >     >    As specified in [RFC8200], the only node allowed to inspect the
    >     >    Routing Extension Header (and therefore the SRH), is the node
    >     >    corresponding to the DA of the packet.  Any other transit node 
MUST
    >     >    NOT inspect the underneath routing header and MUST forward the 
packet
    >     >    toward the DA according to its IPv6 routing table.
    >     
    >     Next, a quote from the current draft:
    >     
    >     >    SRH[n]: A shorter representation of Segment List[n], as defined 
in
    >     >    [I-D.ietf-6man-segment-routing-header].
    >     > 
    >     >    When a packet is intercepted on a wire, it is possible that 
SRH[SL]
    >     >    is different from the DA.
    >     
    >     Huh? That would be extremely unusual in the normal interpretation
    >     of a routing header, where is RH[SL] is by definition the next
    >     destination where the RH will be processed. Any other node is a 
transit
    >     node, and I don't see anything in 
draft-ietf-6man-segment-routing-header-26
    >     that allows for anything else. So it seems to me that the quoted 
statement
    >     needs an explanation of why it isn't a violation of
    >     draft-ietf-6man-segment-routing-header-26, not to mention why it's 
useful.
    > 
    > PC: This occurs when we use the reduced SRH as described in: 
https://tools.ietf.org/html/draft-ietf-6man-segment-routing-header-26#section-4.1.1

    OK, well that definitely needs to be added to the draft, since it is very 
far from
    obvious to a newcomer.

PC: I have removed this sentence from the latest revision of the draft. 
Unneeded, misleading and covered in the SRH. See rev07. Thank you for your 
comment.

    > If you think this sentence does not reflect that, I can edit it for the 
next revision of the draft. 
    >     
    >     That leads us back to:
    >     
    >     > 4.16.1.  PSP: Penultimate Segment Pop of the SRH
    >     > 
    >     >    The SRH processing of the End, End.X and End.T behaviors are
    >     >    modified: after the instruction "S14.  Update IPv6 DA with 
Segment
    >     >    List[Segments Left]" is executed, the following instructions 
must be
    >     >    executed as well:
    >     > 
    >     >  S14.1.   If (Segments Left == 0) {
    >     >  S14.2.      Update the Next Header field in the preceding header 
to the
    >     >                 Next Header value of the SRH
    >     >  S14.3.      Decrease the IPv6 header Payload Length by the Hdr Ext 
Len
    >     >                 value of the SRH
    >     >  S14.4.      Remove the SRH from the IPv6 extension header chain
    >     >  S14.5.   }
    >     
    >     This is clearly a breach of RFC8200, but it can never be reached if 
DA == SRH[SL]. 
    
    > PC: PSP executes at the segment that is the Destination Address.
    
    I am probably being stupid, but I don't understand what is "penultimate" 
about
    a condition where SL == 0 and the packet has reached the node that owns DA.
    Where will the packet be sent next, since it's already at the final DA?

PC: You are reading line 14 of a pseudocode. In the previous lines we have 
received a packet with Segments Left = 1, and we have decremented by one such 
value.
    
    (The example at
    
https://tools.ietf.org/html/draft-filsfils-spring-srv6-net-pgm-illustration-01#section-2.8.1
    doesn't help me in the least. Is there a conceptual discussion of the 
purpose
    of PSP?)
    
    If the packet is to be forwarded again, "Remove the SRH from the IPv6
    extension header chain" violates RFC 8200, as does "Decrease the IPv6 header
    Payload Length by the Hdr Ext Len value of the SRH".

PC: The node that executes the PSP behavior is identified in the IPv6 
Destination Address of the packet. This does not violate RFC8200.
    
    This objection doesn't seem to arise for USP, since presumably at that point
    the packet has reached the final DA and any mangling is internal to the 
host.
      
    >     The operation "4.16.2.  USP: Ultimate Segment Pop of the SRH" seems 
like
    >     a pointless variant on "4.16.3.  USD: Ultimate Segment 
Decapsulation", 
    >     since the packet has reached its destination anyway and will 
presumably
    >     be decapsulated anyway. 
    > 
    > PC: This has already been discussed in the past in the SPRING mailer. 
https://mailarchive.ietf.org/arch/msg/spring/Q3MYlGDQs5MO-dOFOZJUx2hHni4
    
    Yes, OK, the offload NIC as a use case is reasonable. As far as the network
    is concerned, that is internal to the host. But some hint about the purpose
    and value of these features is needed in the draft, IMHO.
    
    Regards
        Brian
    
    
    >     
    >     Regards
    >        Brian Carpenter
    >     
    >     On 12-Dec-19 08:54, internet-dra...@ietf.org wrote:
    >     > 
    >     > A New Internet-Draft is available from the on-line Internet-Drafts 
directories.
    >     > This draft is a work item of the Source Packet Routing in 
Networking WG of the IETF.
    >     > 
    >     >         Title           : SRv6 Network Programming
    >     >         Authors         : Clarence Filsfils
    >     >                           Pablo Camarillo Garvia
    >     >                           John Leddy
    >     >                           Daniel Voyer
    >     >                           Satoru Matsushima
    >     >                           Zhenbin Li
    >     >     Filename        : 
draft-ietf-spring-srv6-network-programming-06.txt
    >     >     Pages           : 39
    >     >     Date            : 2019-12-11
    >     > 
    >     > Abstract:
    >     >    The SRv6 Network Programming framework enables a network 
operator or
    >     >    an application to specify a packet packet processing program by
    >     >    encoding a sequence of instructions in the IPv6 packet header.
    >     > 
    >     >    Each instruction is implemented on one or several nodes in the
    >     >    network and identified by an SRv6 Segment Identifier in the 
packet.
    >     > 
    >     >    This document defines the SRv6 Network Programming concept and
    >     >    specifies the base set of SRv6 behaviors that enables the 
creation of
    >     >    interoperable overlays with underlay optimization (Service Level
    >     >    Agreements).
    >     > 
    >     > 
    >     > The IETF datatracker status page for this draft is:
    >     > 
https://datatracker.ietf.org/doc/draft-ietf-spring-srv6-network-programming/
    >     > 
    >     > There are also htmlized versions available at:
    >     > 
https://tools.ietf.org/html/draft-ietf-spring-srv6-network-programming-06
    >     > 
https://datatracker.ietf.org/doc/html/draft-ietf-spring-srv6-network-programming-06
    >     > 
    >     > A diff from the previous version is available at:
    >     > 
https://www.ietf.org/rfcdiff?url2=draft-ietf-spring-srv6-network-programming-06
    >     > 
    >     > 
    >     > Please note that it may take a couple of minutes from the time of 
submission
    >     > until the htmlized version and diff are available at tools.ietf.org.
    >     > 
    >     > Internet-Drafts are also available by anonymous FTP at:
    >     > ftp://ftp.ietf.org/internet-drafts/
    >     > 
    >     > _______________________________________________
    >     > I-D-Announce mailing list
    >     > i-d-annou...@ietf.org
    >     > https://www.ietf.org/mailman/listinfo/i-d-announce
    >     > Internet-Draft directories: http://www.ietf.org/shadow.html
    >     > or ftp://ftp.ietf.org/ietf/1shadow-sites.txt
    >     > 
    >     
    >     _______________________________________________
    >     spring mailing list
    >     spring@ietf.org
    >     https://www.ietf.org/mailman/listinfo/spring
    >     
    > 
    
    


_______________________________________________
spring mailing list
spring@ietf.org
https://www.ietf.org/mailman/listinfo/spring

Reply via email to