Re: What if? [was Re: Extension Header Insertion]

Gyan Mishra <hayabusagsm@gmail.com> Tue, 10 December 2019 05:56 UTC

Return-Path: <hayabusagsm@gmail.com>
X-Original-To: ipv6@ietfa.amsl.com
Delivered-To: ipv6@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 94E441200FE for <ipv6@ietfa.amsl.com>; Mon, 9 Dec 2019 21:56:21 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.997
X-Spam-Level:
X-Spam-Status: No, score=-1.997 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, 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 aEXg5Lmq2240 for <ipv6@ietfa.amsl.com>; Mon, 9 Dec 2019 21:56:18 -0800 (PST)
Received: from mail-io1-xd35.google.com (mail-io1-xd35.google.com [IPv6:2607:f8b0:4864:20::d35]) (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 DDD3A1200CD for <6man@ietf.org>; Mon, 9 Dec 2019 21:56:17 -0800 (PST)
Received: by mail-io1-xd35.google.com with SMTP id z193so17508068iof.1 for <6man@ietf.org>; Mon, 09 Dec 2019 21:56:17 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=HDWlHUd0pVRn6PGWy/oLF80X5i9S9eAgIspJ3nG6dd8=; b=ITOdZqT5qacftXgQbTHLXikCfyNdhUNCXjawdRV9r26q3r6D1Wt/rER5bfg2hqUmqd UH36M+Ks2Xa4b+0wcsfOv0dfjcG5At1SzFt+GR8LRFI3YljeL/WRaPzFo5peLJAtiNfO Y2AkMRoprr42Ta/Pyrml4Vb3M7PLx6MRjOgC37FmV+GP9n821O/PeiqlZmW4tlfDblgj 7/kDAAMRgOG1Y9wKOuev37gO4tyFxVFqe53My7S8D8WuMuMX/woUbiHNGtt89WfC4nP4 r9B8W8U3vUJeepZD/O4oqCvtHUCpPwj19IClN/6FWzvGCqdZEcGDn+EGeIstLdL88Bo2 JA4w==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=HDWlHUd0pVRn6PGWy/oLF80X5i9S9eAgIspJ3nG6dd8=; b=r4Za7yZkcLNqcrvDkow9ctmYZPaucmnw5s25MURLtK9e0/NpPv8TjRjgvP9+/jaeMJ 4qzrbS3ZOXYkE0zPS/cPh9BS9I+av+hOWkwVebhQPOaM/loRLHZ5HyZNL/LD+PISTp6U 9KEuEEhSpfxh/h+2JVANnNUcJV4r/xlCcjJi+YlYNEGqWDxWHRKuNtqSHBQyAjYIyG/v p39XI7EINfAk1PL0fn0gYRwqCsmaoY5xFUpE+2SXCRmk9kAdPoMwuiN3+7CoqKbAeXC4 383l1Pv/mIBui/5f1te9aRmDUqFx0+JlhuyoIiRh+B6SCN5DPWfqTfrp5yVA7NFE+3Bk 8qLg==
X-Gm-Message-State: APjAAAWXl7gOwSe6NWHXbyWwoIf6VbCiZX1B/jYbRz0dugtlR5G8wwCb Pb19ie/wBW2NWJLtsxlAnL2AL7kNdIMUKHNWpDk=
X-Google-Smtp-Source: APXvYqzUzREFQ46jg0ZKnqVRibsMNP6CWViwt3KBEU3bbUzDBnWOQJt23Jna+ueVGz3+kRZkk4j+oYzkeOlFJYACEhI=
X-Received: by 2002:a02:7301:: with SMTP id y1mr24443092jab.52.1575957376961; Mon, 09 Dec 2019 21:56:16 -0800 (PST)
MIME-Version: 1.0
References: <BN7PR05MB5699D9BA988F96E2F41CD390AE580@BN7PR05MB5699.namprd05.prod.outlook.com> <00dc01d5ae73$c361b450$4a251cf0$@olddog.co.uk> <dbcdeb1a-0091-da2b-20df-d991e6c06091@gmail.com> <9bc47200-4fea-37ce-0ede-cbf6a5f70ea9@gmail.com> <CABNhwV0ePOEpT57jksKTJf==N0rwnuV5U-xJ4xM9gQGR_GPx=w@mail.gmail.com>
In-Reply-To: <CABNhwV0ePOEpT57jksKTJf==N0rwnuV5U-xJ4xM9gQGR_GPx=w@mail.gmail.com>
From: Gyan Mishra <hayabusagsm@gmail.com>
Date: Tue, 10 Dec 2019 00:56:06 -0500
Message-ID: <CABNhwV2y1d4Or_gNU8QSBcg1NjMqDSbYk=pW7czixjA1QKQJjg@mail.gmail.com>
Subject: Re: What if? [was Re: Extension Header Insertion]
To: Brian E Carpenter <brian.e.carpenter@gmail.com>
Cc: 6man <6man@ietf.org>, Ron Bonica <rbonica=40juniper.net@dmarc.ietf.org>, adrian@olddog.co.uk
Content-Type: multipart/alternative; boundary="000000000000a292670599532bbc"
Archived-At: <https://mailarchive.ietf.org/arch/msg/ipv6/ITt6k-OI539Y7nBgzLtkmwXvnRU>
X-BeenThere: ipv6@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "IPv6 Maintenance Working Group \(6man\)" <ipv6.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/ipv6>, <mailto:ipv6-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/ipv6/>
List-Post: <mailto:ipv6@ietf.org>
List-Help: <mailto:ipv6-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ipv6>, <mailto:ipv6-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 10 Dec 2019 05:56:22 -0000

Confirming below that SRv6 TI-LFA does not require Remote LFA or DLFA so
their is no additional 6in6 encapsulation done as with MPLS ldp remote LFA
where a MPLS label is added to tunnel the flow to the PQ node.

https://tools.ietf.org/pdf/draft-ietf-rtgwg-segment-routing-ti-lfa-01.pdf

So with SRv6 TI-LFA we would definitely have in flight SRH EH insertion
anywhere in the network where their is a failure and fast reroute pre
programmed backup SRH path exists.

IPv6 header
  * SRH -SRv6 source node
  * SRH -TI-LFA PLR node
IPv6 header -L3 services TLV
  * Upper-layer header

Gyan

On Tue, Dec 10, 2019 at 12:28 AM Gyan Mishra <hayabusagsm@gmail.com> wrote:

>
> Brian
>
>
> I would like to put this into proper context for SRv6 and how it would be
> deployed in a real world scenario so we can fully connect all the dots of
> this puzzle.
>
> So with SRv6 the 1st SRH eh insertion would never be in flight eh
> insertion in the middle of the network.
>
> Providing some context below.
>
> The topology is identical to a typical service provider MPLS core where
> you have a PE-CE link to customers.  So in the MPLS scenario the Ingress PE
> would add L3 VPN MBGP bottom of stack label for the customer VRF PE-CE
> attachment circuit.
>
> With SRv6 the L3 VPN MBGP is encapsulated in IPv6 and sits in the overlay
> as the inner header payload since now with SRv6 we have an IPv6 data plane
> as our underlay 6in6 outer header instead of MPLS ldp topmost label.
> Essentially we are swapping MPLS ldp topmost label for SRv6 IPv6 data plane
> underlay with all BGP services overlay remaining as-is intact AFI/SAFI
> riding on top of SRv6 sitting in the 6in6 payload.
>
> The SRv6 source node ingress PE of the SR domain would now encapsulate the
> SRv6 L3 services TLV and at the same time inserts SRH header routing type 4
> for the hop by hop traffic engineering of the flow through the controlled
> SRv6 operators domain.
>
> So from the big picture standpoint the 1st SRH eh insertion is most
> definitely not in the middle of the network and not in flight eh insertion
> since the BGP services TLV originating from the external CE edge is
> tunneled over the SRv6 IPv6 data plane controlled operator domain.
>
> BESS WG draft depicts the L3 vpn services TLV that is 6in6 tunneled sits
> in the overlay.
>
> https://tools.ietf.org/html/draft-dawra-bess-srv6-services-02
>
>
> 2
> <https://tools.ietf.org/html/draft-dawra-bess-srv6-services-02#section-2>.
> SRv6 Services TLVs
>
>    This document extends the BGP Prefix-SID attribute
>    [I-D.ietf-idr-bgp-prefix-sid <https://tools.ietf.org/html/draft-dawra-bess-srv6-services-02#ref-I-D.ietf-idr-bgp-prefix-sid>] to carry SRv6 SIDs and associated
>    information.
>
>    The SRv6 Service TLVs are defined as two new TLVs of the BGP Prefix-
>    SID Attribute to achieve signaling of SRv6 SIDs for L3 and L2
>    services.
>
>    o  SRv6 L3 Service TLV: This TLV encodes Service SID information for
>       SRv6 based L3 services.  It corresponds to the equivalent
>       functionality provided by an MPLS Label when received with a Layer
>       3 service route.  Some behaviors which MAY be encoded, but not
>       limited to, are End.DX4, End.DT4, End.DX6, End.DT6, etc.
>
>    o  SRv6 L2 Service TLV: This TLV encodes Service SID information for
>       SRv6 based L2 services.  It corresponds to the equivalent
>       functionality provided by an MPLS Label1 for EVPN Route-Types as
>       defined in[RFC7432].  Some behaviors which MAY be encoded, but not
>       limited to, are End.DX2, End.DX2V, End.DT2U, End.DT2M etc.
>
>    When an egress PE is enabled for BGP Services over SRv6 data-plane,
>    it MUST signal one or more SRv6 Service SIDs enclosed in SRv6 Service
>    TLV(s) within the BGP Prefix-SID Attribute attached to MP-BGP NLRIs
>    defined in [RFC4760 <https://tools.ietf.org/html/rfc4760>][RFC4659][RFC5549 <https://tools.ietf.org/html/rfc5549>][RFC7432][RFC4364 <https://tools.ietf.org/html/rfc4364>] where
>    applicable as described in section 3 <https://tools.ietf.org/html/draft-dawra-bess-srv6-services-02#section-3> and 4.
>
>    The 2nd SRH EH insertion with TI-LFA occurs at the PLR point of local
>
> Repair node to the loop free PQ node.
>
>
> So this addition SRH header is only inserted and   removed during a failure fast reroute.  I believe  but not sure if TI-LFA behaves the same as MPLS ldp
>
> Remote LFA where a MPLS label is added at the PLR
>
> Node and tunneled to the PQ node.  I am still      researching that one.
>
>
> With SRv6 the use cases are for wherever you use mpls public internet or
> private or enterprise scenario so you would always have the same SR source
> PE encapsulation of the edge CE L3 services TLV and so in any of those use
> cases would not be a middle of the network in flight EH insertion which is
> a violation of RFC 8200.
>
> Gyan
>
> On Mon, Dec 9, 2019 at 8:21 PM Brian E Carpenter <
> brian.e.carpenter@gmail.com> wrote:
>
>> So, let's assume that two consecutive SRH headers are allowed in the same
>> packet.
>>
>> So the first one (an example from
>> draft-ietf-6man-segment-routing-header-26) is:
>>
>>        Segments Left=2
>>        Last Entry=2
>>        Flags=0
>>        Tag=0
>>        Segment List[0]=S3
>>        Segment List[1]=S2
>>        Segment List[2]=S1
>>
>> and the second one is
>>
>>        Segments Left=1
>>        Last Entry=1
>>        Flags=0
>>        Tag=0
>>        Segment List[0]=S4
>>        Segment List[1]=S5
>>
>> I made that up and it's obviously nonsense, but if this is allowed why
>> aren't the rules for processing conflicting SRHs described in
>> draft-ietf-6man-segment-routing-header-26? Do we need to recall it from the
>> RFC Editor queue to be fixed?
>>
>> Regards
>>    Brian Carpenter
>>
>> On 10-Dec-19 14:02, Brian E Carpenter wrote:
>> > On 09-Dec-19 22:33, Adrian Farrel wrote:
>> >> Hi Ron,
>> >>
>> >> I think we can jump to a quick answer on this because
>> draft-ietf-spring-srv6-network-programming-05 says:
>> >>
>> >>    We assume that the SRH may
>> >>    be present multiple times inside each packet.
>> >>
>> >> Thus we may assume that the proponents of Extension Header insertion
>> do think that it is acceptable to insert a second routing header into a
>> packet that already has one.
>> >>
>> >> And 8200 is clear when it says:
>> >>    Each extension header should occur at most once, except for the
>> >>    Destination Options header, which should occur at most twice (once
>> >>    before a Routing header and once before the upper-layer header).
>> >
>> > That's "should", which in a non-RFC2119 document like RFC 8200, means
>> "should".
>> > It's not "must". So while I would prefer that the relevant SRH document
>> justifies
>> > the exception, there isn't a breach of a mandatory requirement.
>> >
>> >> So draft-ietf-spring-srv6-network-programming-05 includes a false
>> assumption which need to be either removed or secured through an update to
>> 8200.
>> >>
>> >> Ideally, I suppose, draft-ietf-6man-segment-routing-header would have
>> contained the clarification that the SRH could be present multiple times
>> >
>> > Yes
>> >
>> >> (updating 8200 as it went).
>> >
>> > Unnecessary, IMHO.
>> >
>> >     Brian
>> >
>> >>
>> >>
>> >>
>> >> Cheers,
>> >>
>> >> Adrian
>> >>
>> >>
>> >>
>> >> *From:*ipv6 <ipv6-bounces@ietf.org> *On Behalf Of *Ron Bonica
>> >> *Sent:* 09 December 2019 03:04
>> >> *To:* 6man <6man@ietf.org>
>> >> *Subject:* Extension Header Insertion
>> >>
>> >>
>> >>
>> >> Folks,
>> >>
>> >>
>> >>
>> >> This question is posed primarily to the proponents of Extension Header
>> insertion.
>> >>
>> >>
>> >>
>> >> Do you think that it is acceptable to insert a second routing header
>> into a packet that already has one, so the resulting packet looks like the
>> following:
>> >>
>> >>
>> >>
>> >>   * IPv6 header
>> >>   * SRH
>> >>   * SRH
>> >>   * Upper-layer header
>> >>
>> >>
>> >>
>> >> Would this be common in TI-LFA?
>> >>
>> >>
>> >>
>> >>
>> Ron
>> >>
>> >>
>> >>
>> >>
>> >>
>> >> Juniper Business Use Only
>> >>
>> >>
>> >> --------------------------------------------------------------------
>> >> 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
>> --------------------------------------------------------------------
>>
> --
>
> Gyan S. Mishra
>
> IT Network Engineering & Technology
>
> Verizon Communications Inc. (VZ)
>
> 13101 Columbia Pike FDC1 3rd Floor
>
> Silver Spring, MD 20904
>
> United States
>
> Phone: 301 502-1347
>
> Email: gyan.s.mishra@verizon.com
>
> www.linkedin.com/in/networking-technologies-consultant
>
> --

Gyan S. Mishra

IT Network Engineering & Technology

Verizon Communications Inc. (VZ)

13101 Columbia Pike FDC1 3rd Floor

Silver Spring, MD 20904

United States

Phone: 301 502-1347

Email: gyan.s.mishra@verizon.com

www.linkedin.com/in/networking-technologies-consultant