Re: [spring] PSP and a logical application of RFC8200

Brian E Carpenter <brian.e.carpenter@gmail.com> Mon, 02 March 2020 23:21 UTC

Return-Path: <brian.e.carpenter@gmail.com>
X-Original-To: spring@ietfa.amsl.com
Delivered-To: spring@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 43E533A13AA; Mon, 2 Mar 2020 15:21:58 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.098
X-Spam-Level:
X-Spam-Status: No, score=-2.098 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=unavailable autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
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 kAN2NngmzK1v; Mon, 2 Mar 2020 15:21:53 -0800 (PST)
Received: from mail-pj1-x102a.google.com (mail-pj1-x102a.google.com [IPv6:2607:f8b0:4864:20::102a]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id B2E813A13AC; Mon, 2 Mar 2020 15:21:53 -0800 (PST)
Received: by mail-pj1-x102a.google.com with SMTP id f2so408369pjq.1; Mon, 02 Mar 2020 15:21:53 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:to:references:from:message-id:date:user-agent:mime-version :in-reply-to:content-language:content-transfer-encoding; bh=nUlj7YWd7UFmBxVb+aydVKdDcZDcAOsNbhyldXBdmh4=; b=CPYRoWTmm6UeSPaduC3yAq70fndz0/TsS2J4OWTdAZV8rp/nfM7XNwTbflZMKq8Uj7 557m5j1ikp7IFlgwO8inUu4zh8OHiUtZYj8I6HsqlCIfC6OpFYbLsJ/Ihcb5myarXlp4 zsLol7+LT10KDG4A128yOeF0KAymIUdxHSA5NZtbeULFaVHKRcBOoDy7MedGG64LQ7S1 9bhDQswUPTgv4l5ZADivqGG7BMw2J5tkcCP63xHsf0aT2Db/6V5k3yRR4ZQFtIy1Z8Vn euuSWzMZqQGWdNwv+I0l04rJm4Rdrl7e8kr/+KhJ6dTi1CPWVl/1/93Hd0XXDGKjjUjJ MpLQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=nUlj7YWd7UFmBxVb+aydVKdDcZDcAOsNbhyldXBdmh4=; b=T52ZjJVP9KKe6REN6ZL5pf7opThVx6WJ8vLazwq9mZg742MmrkOLfkKB185zjJbaVu OUZnibNks0kg3kELVyPhPYPxjQOJucoYkxrrw5t+nbgr6bKpLrqchh8KOAn3qB5cmIf6 Kyy+zyWJDlgyW3CW22pp8IYFRcc/w9MOK4D40RxiGRrhBc+DAEFFXaMXXK670GfiHXq5 21wHPsaB+AHmzTpzJI2+Me0xFUB4zQh/xc/iiuZdegaqlQnB4XgnZqyHJwcH+9xBX6k5 nDq8iv8XzxDlXWgb2sFY9JUP3G4xMrDND4iDbGt18AY+Co8O1K+sPzvg8DuAHv/ODkaq V2fg==
X-Gm-Message-State: ANhLgQ0FJQ2EIf6uXmEYOE5hIM2RGuJACbM1wgGsUXYMfXWUg/zbH0W8 ypSVhO7+5XekWsiOZyOONIw7/mQo
X-Google-Smtp-Source: ADFU+vsIv6rcYHI56AWOoPrkdzXoVWHIDUAzf9U7jsBoeC8dxYuKVkk3JCI4/BFXYlRFywO0Xn1BRA==
X-Received: by 2002:a17:90b:d83:: with SMTP id bg3mr851941pjb.174.1583191312884; Mon, 02 Mar 2020 15:21:52 -0800 (PST)
Received: from [130.216.38.184] (sc-cs-567-laptop.uoa.auckland.ac.nz. [130.216.38.184]) by smtp.gmail.com with ESMTPSA id g9sm13195835pfi.37.2020.03.02.15.21.50 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 02 Mar 2020 15:21:52 -0800 (PST)
To: "Pablo Camarillo (pcamaril)" <pcamaril@cisco.com>, "Darren Dukes (ddukes)" <ddukes=40cisco.com@dmarc.ietf.org>, 6man WG <ipv6@ietf.org>, SPRING WG List <spring@ietf.org>
References: <39544C17-1AD0-412E-A8BD-E17376537FCF@cisco.com> <bf9d68e6-cbae-2b19-11e0-1e452f0bf654@gmail.com> <FD806998-8218-4C70-B383-332C5F934A73@cisco.com>
From: Brian E Carpenter <brian.e.carpenter@gmail.com>
Message-ID: <176e9bbf-41c8-8e8a-f26e-e0de5d89735f@gmail.com>
Date: Tue, 03 Mar 2020 12:21:47 +1300
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:60.0) Gecko/20100101 Thunderbird/60.9.1
MIME-Version: 1.0
In-Reply-To: <FD806998-8218-4C70-B383-332C5F934A73@cisco.com>
Content-Type: text/plain; charset="utf-8"
Content-Language: en-US
Content-Transfer-Encoding: quoted-printable
Archived-At: <https://mailarchive.ietf.org/arch/msg/spring/QVcsNS_XfRA927S3piCJ4SDYY3k>
Subject: Re: [spring] PSP and a logical application of RFC8200
X-BeenThere: spring@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "Source Packet Routing in NetworkinG \(SPRING\)" <spring.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/spring>, <mailto:spring-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/spring/>
List-Post: <mailto:spring@ietf.org>
List-Help: <mailto:spring-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/spring>, <mailto:spring-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 02 Mar 2020 23:21:58 -0000

On 03-Mar-20 09:02, Pablo Camarillo (pcamaril) wrote:
> Brian,
> 
> The PSP pseudocode is presented as a modification to the End pseudocode starting at line S14 of such.
> Please go through the PSP pseudocode in conjunction with the End pseudocode (Section 4.1). 
> You will see that the ingress state of the packet is (Segments Left == 1 and Destination Address == the PSP node's address).

Exactly my point. With SL == 1, you are not at the ultimate destination, so according to what I'll call "Fernando's reading" of RFC8200, you are not entitled to delete the header. That is the point that IMHO needs to be stated explicitly in the draft. You are using "Darren's reading" of RFC8200.

I really think you need to say so explicitly. Something like:

Note: this behavior does not contravene section 4 of [RFC8200]
because the current destination address of the incoming packet
is the address of the node executing the PSP behavior.

This will not change the argument, but it will make the issue clear so that we (the IETF) can decide whether to accept it or not. And that is orthogonal to whether RFC 8200 is wrong.

Regards
    Brian
> 
> Many thanks,
> Pablo.
> 
> -----Original Message-----
> From: ipv6 <ipv6-bounces@ietf.org> on behalf of Brian E Carpenter <brian.e.carpenter@gmail.com>
> Date: Monday, 2 March 2020 at 20:34
> To: "Darren Dukes (ddukes)" <ddukes=40cisco.com@dmarc.ietf.org>, 6man WG <ipv6@ietf.org>, SPRING WG List <spring@ietf.org>
> Subject: Re: PSP and a logical application of RFC8200
> 
>     Darren,
>     
>     Regardless of whether you accept Fernando's comment about the intention of RFC 8200, there is also the fact that the description of the PSP flavor cheats by considering the packet to have
>      (Segments Left == 0 and Destination Address == the PSP node's address).
>     In fact that is *never* the state of the packet on the wire, which is either
>      (Segments Left == 1 and Destination Address == the PSP node's address)
>     or
>      (Segments Left == 0 and Destination Address == the final node's address)
>     
>     OK, maybe it's not cheating, maybe it's only a side effect of the pseudocode, but the fact is that the test "S14.1.   If (Segments Left == 0) {" in section 4.16.1 is very confusing because it's applied to a packet that is half way through processing of the routing header (Segments Left has been updated, but Destination Address has not been updated). This makes it very unclear how the spec is claiming to interpret RFC 8200.
>     
>     Regards
>        Brian Carpenter
>     
>     On 03-Mar-20 03:52, Darren Dukes (ddukes) wrote:
>     > What follows has been made clear on the list for a while, 
>     > I am re-stating it.
>     > 
>     > The draft-ietf-spring-srv6-network-programming PSP behavior 
>     > strictly follows the letter of RFC 8200.
>     >  
>     >      RFC8200 section 4 says:
>     >  
>     >      Extension headers (except for the Hop-by-Hop Options header) are not
>     >      *processed, inserted, or deleted* by any node along a packet's delivery
>     >      path, until the packet reaches *the node* (or each of the set of nodes,
>     >      in the case of multicast) *identified in the Destination Address field*
>     >     * of the IPv6 header.*
>     >   
>     > 
>     > The processing, insertion and deletion restrictions only apply 
>     > “until the packet reaches the node identified in the Destination
>     > Address field of the IPv6 header”.
>     >  
>     > At the penuptimate segment of the segment list, the endpoint IS
>     > “the node identified in the Destination Address field of the IPv6
>     > header” and hence the PSP operation programmed by the source SR 
>     > node strictly follows the letter of RFC 8200.
>     > 
>     > 
>     > Thanks,
>     >   Darren
>     > 
>     > --------------------------------------------------------------------
>     > IETF IPv6 working group mailing list
>     > ipv6@ietf.org
>     > Administrative Requests: https://www.ietf.org/mailman/listinfo/ipv6
>     > --------------------------------------------------------------------
>     > 
>     
>     --------------------------------------------------------------------
>     IETF IPv6 working group mailing list
>     ipv6@ietf.org
>     Administrative Requests: https://www.ietf.org/mailman/listinfo/ipv6
>     --------------------------------------------------------------------
>     
>