Re: [spring] Beyond SRv6.

Robert Raszuk <robert@raszuk.net> Sun, 01 September 2019 19:18 UTC

Return-Path: <robert@raszuk.net>
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 AB4661200BA for <spring@ietfa.amsl.com>; Sun, 1 Sep 2019 12:18:28 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.898
X-Spam-Level:
X-Spam-Status: No, score=-1.898 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, HTTPS_HTTP_MISMATCH=0.1, 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=raszuk.net
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 Dt9ZIdNGGjJ5 for <spring@ietfa.amsl.com>; Sun, 1 Sep 2019 12:18:24 -0700 (PDT)
Received: from mail-qk1-x731.google.com (mail-qk1-x731.google.com [IPv6:2607:f8b0:4864:20::731]) (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 C2BFF12007C for <spring@ietf.org>; Sun, 1 Sep 2019 12:18:23 -0700 (PDT)
Received: by mail-qk1-x731.google.com with SMTP id i78so9311725qke.11 for <spring@ietf.org>; Sun, 01 Sep 2019 12:18:23 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raszuk.net; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=EA61h2TXWNwt86GbqOfYtesDMEEEDy3jbRnUr+HHF38=; b=OUZr1VYDb8y58IjdLDw+tSABxZVi0YAzD4g4+OFqd5wdBMmNmQ0VBYlZu+CdFo7CfF EcQoOf3PaVA2UOagraUT4UpJXbKmt2bD9KCT755FyHUErY/feeQCKYOlnEr7YDVqvSLs /j2f2NtZfwIfeMasKFT2djaMRCgwPrINjf71fckXl5L1ymcjuXr4uFufDjb1wKyZh1nK GlFFptwN9R5Dyzssv0c6whaYjymrfPIcPaHPlBa4WWqM6JpRasjig4sjjGfnHq1OCKyR YoKWpuVn47YR0t3cxppK8xoLoCWn1D3ahARAPMigQIMbxxbi4Il40Yw90TFo+ZPHH55d yDaA==
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=EA61h2TXWNwt86GbqOfYtesDMEEEDy3jbRnUr+HHF38=; b=fBWDe1yEt9PTfR1zj+AkQO6wYmZpEVzN8sF6nP92DjkbSMz1m2XsMDOtTSGlvgLIpl 5Zb8XOp+f72mW8UW5AwgcdXX0WrgZlhFPDewSeuD1Go0apPru39bqHaAUqWmHSH/ue3c z89wOl4KaPglCbeOZJTFpLTe2sensMYlH+5DndSMkDHseY5URDvoJthRM62Jf5mpbehf IE+Fpk4da7OsYqqko7Tp6zZondP5O2beGwLlUKJknvcKlEPSMDIGte46jwrBw4ucEv1o SwhXLgMdsumEz+r208/umRmRPpOlQt8noy5/hOeAXaS/zPABnt3rQYedXtJj1IrcmjB0 gFWw==
X-Gm-Message-State: APjAAAUwN1sSvTsWWynuLhL0XHKVm2uv0Ojgy3lE139tDRzP1B2zhJnL eCIcO2pjA+MY3+dO2Nj+Ca+NZ/bWHyKtfe1GG7CopA==
X-Google-Smtp-Source: APXvYqzrYJ4MOVm8RF5ne+vvzZNI74wVve/rszS4eroz3boiVABNgplajy9dAOjwTtcg38Ht82fAWHESKgIydL1Ty+8=
X-Received: by 2002:a37:6144:: with SMTP id v65mr8663820qkb.465.1567365502521; Sun, 01 Sep 2019 12:18:22 -0700 (PDT)
MIME-Version: 1.0
References: <CAHd-QWtA21+2Sm616Fnw0D-eB7SNb_BeG8-A-MCLLFgTwSpOsg@mail.gmail.com> <BYAPR05MB54630831722DE1D3E6C7F872AEBC0@BYAPR05MB5463.namprd05.prod.outlook.com> <CAOj+MMEP66xVJoQrHjrT5+a_rxft1XWRM7Xsp5Lx3rECRnScpA@mail.gmail.com> <BL0PR05MB5458A73CB4E7DF390DE5E9EBAEBF0@BL0PR05MB5458.namprd05.prod.outlook.com>
In-Reply-To: <BL0PR05MB5458A73CB4E7DF390DE5E9EBAEBF0@BL0PR05MB5458.namprd05.prod.outlook.com>
From: Robert Raszuk <robert@raszuk.net>
Date: Sun, 01 Sep 2019 21:18:13 +0200
Message-ID: <CAOj+MMFKN9Fogw4OxVOSJ1KyHPdiOg0UjJUmx4rcjW2OTf9MKw@mail.gmail.com>
To: Ron Bonica <rbonica@juniper.net>
Cc: Rob Shakir <robjs@google.com>, SPRING WG List <spring@ietf.org>, "6man@ietf.org" <6man@ietf.org>
Content-Type: multipart/alternative; boundary="00000000000002e912059182b88b"
Archived-At: <https://mailarchive.ietf.org/arch/msg/spring/6MZJeu2oZpK3W8eiF2W9hOgpzLE>
Subject: Re: [spring] Beyond SRv6.
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: Sun, 01 Sep 2019 19:18:29 -0000

Hi Ron,

The SR architecture is common to SR-MPLS and SRv6 as far as path
engineering is concerned ie. number of SIDs to impose.

I explained one pretty common misconception of how some people treat SR as
1:1 replacement of RSVP-TE. In fact there may even float around some slides
or white papers stating so - but if anything they are fundamentally
incorrect.

So here in SPRING you either present valid and convincing to WG technical
explanation why in specific network you see a need for 8-12+ SIDs or that
point simply can not be used as "push" argument for CRH ;). .

On the other hand you know that the most difficult to introduce any new
technology is not even respining an ASIC .. it is education and assistance
to your customers to make sure new technology is really deployed in the
right way.

Cheers,
Robert.

PS. Talking in the context of SRv6 architecture to one of the most common
of the shelf forwarding vendor I was told their hardware reads 256 bytes of
the packet header for flexible processing. So with that I am even more
assured that the bottleneck in line rate packet processing even with your
stated size of SRH is rather limited to legacy hardware which will happen
all the time and is normal when someone defines new data plane
enhancements. After all no one obsoletes SR-MPLS - it can be used as smooth
transition path to SRv6.



On Sun, Sep 1, 2019 at 8:59 PM Ron Bonica <rbonica@juniper.net> wrote:

> Robert,
>
>
>
> I can only repeat what my customers’ requirements. They have asked for
> 8-12 SIDs in SR-MPLS and SRv6 and SRv6+.
>
>
>
> We didn’t question that requirement for SR-MPLS. Why should things be any
> different for SRv6 or SRv6+?
>
>
>
>                                                                       Ron
>
>
>
>
>
>
>
>
>
> *From:* Robert Raszuk <robert@raszuk.net>
> *Sent:* Sunday, September 1, 2019 11:03 AM
> *To:* Ron Bonica <rbonica@juniper.net>
> *Cc:* Rob Shakir <robjs@google.com>; SPRING WG List <spring@ietf.org>;
> 6man@ietf.org
> *Subject:* Re: [spring] Beyond SRv6.
>
>
>
> Dear Ron,
>
>
>
> > SR customers have stated a firm requirement to support SR paths that
> contain 8 to 12 segments.
>
>
>
> Let me make an observation that with 8 to 12 router hops I can reach most
> of my often visited destinations in the open Internet anywhere in
> the world.
>
>
>
> With that let's also notice that proposed SRv6 (or for that matter
> SR-MPLS) is applicable to networks under same administrative control.
>
>
>
> Therefor I do question the necessity to have such deep/long list of
> segments for any practical network application.
>
>
>
> Perhaps some customers (or vendors) are treating SRv6 verbatim as an
> analogy to RSVP-TE strict or loose ERO objects - but that is completely
> wrong way to think about it in light of segment routing architecture and
> its abilities.
>
>
>
> In RSVP-TE you nail down the path with hop by hop RESV-PATH msg signalling
> such that forwarding is using locally upstream assigned labels distributed
> by return RSVP-RESV msg.
>
>
>
> I would never suggest to do same with SR. The biggest advantage of SR
> (outside of its network programmability concept) is in the ability to
> encode very selected anchor node or nodes to which forwarding just flows
> natively using IPv6 address or domain wide MPLS label.
>
>
>
> So proper use of SR does require wise selection of such anchor points in
> the network. I am afraid CSPF is not the best tool for it. Much smarter
> algorithm is required to engineer your traffic using SR technology in any
> network especially in cases where the IGP topology is very dense and
> complex.
>
>
>
> Based on my personal experience with MPLS-TE deployments across biggest
> global networks I  can state that vast majority of true path steering can
> be easily accomplished with 1, 2 or max 3 properly selected anchor nodes
> across their domain(s). Add to that room for two SFC processing clusters
> and you get max 5.
>
>
>
> So even if some individual operators would like to use 8, 12 or maybe 16
> segments in their packets I do not see this as fundamentally sufficient
> justification to proceed with yet one more SRv6 encoding proposal.
>
>
>
> As both Rob & Bruno asked I will be looking for real technical
> justifications for such deep segment stacks. Note that we are at the end of
> 4 week pool window and there was none sent to the list so far.
>
>
>
> Kind regards,
>
> Robert.
>
>
>
>
>
> On Sat, Aug 31, 2019 at 10:34 PM Ron Bonica <rbonica=
> 40juniper.net@dmarc.ietf.org> wrote:
>
> Rob,
>
>
>
> The following are arguments for proceeding with SRv6+:
>
>
>
>    - Efficient forwarding with deep SID lists
>    - Operational Simplicity
>    - SRv6+ work may finish before SRv6
>
>
>
> Efficient forwarding with deep SID Lists
>
> ----------------------------------------------------
>
>
>
> SR customers have stated a firm requirement to support SR paths that
> contain 8 to 12 segments. They have also stated a requirement for
> implementations to forward at line speed  and without consuming excessive
> overhead bandwidth.
>
>
>
> SRv6, as defined in draft-ietf-6man-segment-routing-header, cannot satisfy
> these requirements. In order to support an SR path with 8 segments, SRv6
> would require a 128-byte SRH. Even if ASICs could process such a long SRH
> at line speed, the bandwidth overhead would be prohibitive.
>
>
>
> Therefore, one of the four solutions  that you mention below is required
> to make SRv6 deployable. While draft-ietf-6man-segment-routing-header is
> close to maturity, the four competing solutions mentioned below are equally
> mature and should be given equal consideration.
>
>
>
> The four solutions are SRv6+, uSID, draft-li and draft-mirsky.
>
>
>
> Operational Simplicity
>
> -----------------------------
>
> Network operators strive for operational simplicity. By loosely
> interpreting (and sometimes bending) the requirements of RFCs 4291 and RFC
> 8200, SRv6 introduces architectural quirks that introduce operational
> complexity. The following are architectural quirks of
>  draft-ietf-6man-segment-routing-header:
>
>
>
>    - The Segment Routing Header (SRH) serves purposes other than routing.
>    Therefore, the SRH is sometimes required for packets that traverse the
>    least-cost path from source to destination
>    - The SRH and the IPv6 Authentication Header are incompatible.
>    - The IPv6 destination address determines whether an SRH is valid and
>    how it is processed. For example, if the IPv6 destination address contains
>    one locally instantiated value, the SRH might be processed in one
>    particular way, while if the IPv6 destination address contains another
>    locally instantiated value, the SRH might be totally invalid.
>
>
>
> Draft-ietf-spring-srv6-network-programming  promises more architectural
> quirks. For example:
>
>
>
>    - Segment endpoints can insert and/or delete IPv6 extension headers
>    - An IPv6 packet can contain two Segment Routing headers
>    - IPv6 packets are no longer self-describing. For example, the Next
>    Header Field in the SRH can carry a value of No Next Header, even though
>    the SRH is followed by Ethernet payload.
>
>
>
> Other emerging drafts promise still more architectural quirks. For
> example, in draft-ali-6man-spring-srv6-oam, implementations need to examine
> the SRH even when Segment Left equals zero. This is because the SRH has
> been overloaded to carry OAM as well as routing information.
>
>
>
> Furthermore, draft-filsfils-spring-net-pgm-extension-srv6-usid requires
> network operators to obtain address space and number their networks in a
> particular way to make routing work.
>
>
>
> SRv6+ Work May Finish Before SRv6 work
>
> --------------------------------------------------------
>
> SRv6+  has been implemented on LINUX and is being implemented on JUNOS.
> Implementation experience demonstrates that specification is fairly
> complete. For example, there is no need for an SRv6+ OAM document. It’s
> just IPv6 and IPv6 OAM just works.
>
>
>
> Furthermore, the SRv6+ specifications adhere to a strict interpretation of
> RFC 8200. Therefore, as they progress through the working group, they won’t
> need to overcome the objections that are inevitably encountered when
> stretching the interpretation of a specification that is so fundamental as
> RFC 8200.
>
>
>
>
>                                                                                                Thanks,
>
>
>                                                                      Ron
>
>
>
>
>
>
>
>
>
>
>
>
>
> *From:* spring <spring-bounces@ietf.org> *On Behalf Of *Rob Shakir
> *Sent:* Sunday, August 4, 2019 5:04 PM
> *To:* SPRING WG List <spring@ietf.org>
> *Subject:* [spring] Beyond SRv6.
>
>
>
> Hi SPRING WG,
>
>
>
> Over the last 5+ years, the IETF has developed Source Packet Routing in
> NetworkinG (SPRING) aka Segment Routing for both the MPLS (SR-MPLS) and
> IPv6 (SRv6) data planes. SR-MPLS may also be transported over IP in UDP or
> GRE.
>
>
>
> These encapsulations are past WG last call (in IESG or RFC Editor).
>
>
>
> During the SPRING WG meeting at IETF 105, two presentations were related
> to the reduction of the size of the SID for IPv6 dataplane:
>
>    - SRv6+ / CRH --
>    https://tools.ietf.org/html/draft-bonica-spring-srv6-plus-04
>    <https://urldefense.proofpoint.com/v2/url?u=https-3A__tools.ietf.org_html_draft-2Dbonica-2Dspring-2Dsrv6-2Dplus-2D04&d=DwMFaQ&c=HAkYuh63rsuhr6Scbfh0UjBXeMK-ndb3voDTXcWzoCI&r=Fch9FQ82sir-BoLx84hKuKwl-AWF2EfpHcAwrDThKP8&m=ackZC9evRf_LWYu2a-1NaGRDJKdxnE2ieIC4dD_FL6s&s=KUhAfjVsx_wK645uJk0FHzs2vxiAVr-CskMPAaEhEQQ&e=>
>    - uSID --
>    https://tools.ietf.org/html/draft-filsfils-spring-net-pgm-extension-srv6-usid-01
>    <https://urldefense.proofpoint.com/v2/url?u=https-3A__tools.ietf.org_html_draft-2Dfilsfils-2Dspring-2Dnet-2Dpgm-2Dextension-2Dsrv6-2Dusid-2D01&d=DwMFaQ&c=HAkYuh63rsuhr6Scbfh0UjBXeMK-ndb3voDTXcWzoCI&r=Fch9FQ82sir-BoLx84hKuKwl-AWF2EfpHcAwrDThKP8&m=ackZC9evRf_LWYu2a-1NaGRDJKdxnE2ieIC4dD_FL6s&s=Aq1DK7fu73axZ1PXLIE8xnHE2AhTtNZy9LTHgWqx4CQ&e=>
>
>
>
>
> During the IETF week, two additional drafts have been proposed:
>
>    - https://tools.ietf..org/html/draft-li-spring-compressed-srv6-np-00
>    <https://urldefense.proofpoint.com/v2/url?u=https-3A__tools.ietf.org_html_draft-2Dli-2Dspring-2Dcompressed-2Dsrv6-2Dnp-2D00&d=DwMFaQ&c=HAkYuh63rsuhr6Scbfh0UjBXeMK-ndb3voDTXcWzoCI&r=Fch9FQ82sir-BoLx84hKuKwl-AWF2EfpHcAwrDThKP8&m=ackZC9evRf_LWYu2a-1NaGRDJKdxnE2ieIC4dD_FL6s&s=XWUDAD2FMhWLfeT5sgUb1lgthJhugcyT98GJ2N-CrKs&e=>
>
>    - https://tools.ietf.org/html/draft-mirsky-6man-unified-id-sr-03
>    <https://urldefense.proofpoint.com/v2/url?u=https-3A__tools.ietf.org_html_draft-2Dmirsky-2D6man-2Dunified-2Did-2Dsr-2D03&d=DwMFaQ&c=HAkYuh63rsuhr6Scbfh0UjBXeMK-ndb3voDTXcWzoCI&r=Fch9FQ82sir-BoLx84hKuKwl-AWF2EfpHcAwrDThKP8&m=ackZC9evRf_LWYu2a-1NaGRDJKdxnE2ieIC4dD_FL6s&s=gcbkHYxXm7FU7vblOB1vI58SDaaWf62pa7YvLmsP4nI&e=>
>
>
>
>
> As we expressed during the meeting, it is important for the WG to
> understand what the aims of additional encapsulations are. Thus, we think
> it is important that the WG should first get to a common understanding on
> the requirements for a new IPv6 data plane with a smaller SID - both from
> the perspective of operators that are looking to deploy these technologies,
> and from that of the software/hardware implementation.
>
>
>
> Therefore, we would like to solicit network operators interested in SR
> over the IPv6 data plane to briefly introduce their:
>
>    - use case (e.g. Fast Reroute, explicit routing/TE)
>    - forwarding performance and scaling requirements
>
>
>    - e.g., (number of nodes, network diameter, number of SID required in
>       max and average). For the latter, if possible using both SRv6 128-bit SIDs
>       and shorter (e.g. 32-bit) SIDs as the number would typically be different
>       (*).
>
>
>    - if the existing SRv6 approach is not deployable in their
>    circumstances, details of the requirement of a different solution is
>    required and whether this solution is needed for the short term only or for
>    the long term.
>
>
>
> As well as deployment limitations, we would like the SPRING community to
> briefly describe the platform limitations that they are seeing which limit
> the deployment of SRv6  In particular limitations related to the number of
> SIDs which can be pushed and forwarded and how much the use of shorter SIDs
> would improve the deployments .
>
>
>
> For both of these sets of feedback if possible, please post this to the
> SPRING WG. If the information cannot be shared publicly, please send it
> directly to the chairs & AD (Martin).
>
>
>
> This call for information will run for four weeks, up to 2019/09/03. As a
> reminder, you can reach the SPRING chairs via spring-chairs@ietf.org and
> ADs via spring-ads@ietf.org.
>
>
>
> Thank you,
>
> -- Rob & Bruno
>
>
>
> (*) As expressed on the mailing list, a 128 bit SID can encode two
> instructions a node SID and an adjacency SID hence less SID may be required.
>
>
>
>
>
> Juniper Business Use Only
>
> _______________________________________________
> spring mailing list
> spring@ietf.org
> https://www.ietf.org/mailman/listinfo/spring
> <https://urldefense.proofpoint.com/v2/url?u=https-3A__www.ietf.org_mailman_listinfo_spring&d=DwMFaQ&c=HAkYuh63rsuhr6Scbfh0UjBXeMK-ndb3voDTXcWzoCI&r=Fch9FQ82sir-BoLx84hKuKwl-AWF2EfpHcAwrDThKP8&m=CPqEXzKACLlLESk67mlmQv3ve6i6_Y5l7xESAiNA1Go&s=_k8da1IaBrm80LML0tO-Er3RL2Wn6nLIMFRTbWTtUTQ&e=>
>
>
>
> Juniper Business Use Only
>
>