Re: [spring] Beyond SRv6.

Robert Raszuk <robert@raszuk.net> Sun, 01 September 2019 20:28 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 EE2B71200B8 for <spring@ietfa.amsl.com>; Sun, 1 Sep 2019 13:28:16 -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 gp--FZ8aLKko for <spring@ietfa.amsl.com>; Sun, 1 Sep 2019 13:28:13 -0700 (PDT)
Received: from mail-qk1-x72f.google.com (mail-qk1-x72f.google.com [IPv6:2607:f8b0:4864:20::72f]) (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 68FE41200B3 for <spring@ietf.org>; Sun, 1 Sep 2019 13:28:13 -0700 (PDT)
Received: by mail-qk1-x72f.google.com with SMTP id g17so10851378qkk.8 for <spring@ietf.org>; Sun, 01 Sep 2019 13:28:13 -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=cx5rKsJy/y2Gn9gBhzIGMZ2LxV511pxLlgd3VoyFV7E=; b=J5D2Rk78ZwjctUN2vUZIpkDeYT4Xi8P39QfuUjB/FQFTn9z3xuohE0fZ/xQn9ozDUw 1mvTfhoepr0P3ycVdNMZCGvYfSUr3imALlQuwH3ECaRasbUiMeOL9eCnYVtfYffpmWcB C/aBTcaKSpCvUiuvAd0bprWp9syeTcngA/tUNs6W/GolBoFBCPgih3hTPFr4zAcEd8Oa nzwtLwSFi7ayJwLV0qilcujS0bPij8IP0M43+2UccIw3DHDCgaBq2c9LGzLffJiA+2TS NLhSlHk03ZmxsO8b+At6xbsi3GZOkfAezz9saWMDJc3ym7Ip/PX9ZvDuuWZdcTl7FvTG 0gBw==
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=cx5rKsJy/y2Gn9gBhzIGMZ2LxV511pxLlgd3VoyFV7E=; b=XhDP4T58sG/vj2RPSnKivozL5S/+mtE3IlkV3PdE2WQsEmkwUhLO7MQjEb9pYSLVND ZWbCJf9+T8I5lKizIrToNrEBtZ0oqPH5yX+muzN3Vxe0D/Vn0lWETlfbgmEoFiIOFneW dcMtkxQ7OgdQOlmkqzjwqWctpkhyxXrg6mn3nmkwR/qKXmuf+CJqmQ5baSqYvJ/B7/An dDzcdo27Go4TGefrJu+al0FMA1OCJYlQMWmUWQAjRnEHwo8340lzhhZJCYhNllF7wQn6 74T0bhDhOKuZABnjJmK3Gla8OI3djk2yXwQ20bB24rzvyDkrAWpFtuX3mXHzrXDfdVsm iuYA==
X-Gm-Message-State: APjAAAU3vI4JWVZZsk1zXcDFtwvEyZjUBLweju1k0EN+Y3aJsFBmtQ2t 7FS1ifTFeThFrmC57SDov1WdTm2gjmKcAim9Qaaong==
X-Google-Smtp-Source: APXvYqz9zLUjA0hxwSI4ZF0n2PyyhtLkfxssM61UdjFDG+836nQn3mgpykB8XP0HaZK/zw97qduuQRD6vv0Kit22Jx0=
X-Received: by 2002:ae9:dd82:: with SMTP id r124mr24984524qkf.134.1567369692368; Sun, 01 Sep 2019 13:28:12 -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> <AA7A2297-5E96-4071-B96F-DE3B4F0FDBE3@liquidtelecom.com>
In-Reply-To: <AA7A2297-5E96-4071-B96F-DE3B4F0FDBE3@liquidtelecom.com>
From: Robert Raszuk <robert@raszuk.net>
Date: Sun, 01 Sep 2019 22:28:03 +0200
Message-ID: <CAOj+MMG_kYM+N-nvASTa0UzUQzJP7Aqm4acjb4SJ674psuQpcQ@mail.gmail.com>
To: Andrew Alston <Andrew.Alston@liquidtelecom.com>
Cc: Ron Bonica <rbonica=40juniper.net@dmarc.ietf.org>, Rob Shakir <robjs@google.com>, SPRING WG List <spring@ietf.org>, "6man@ietf.org" <6man@ietf.org>
Content-Type: multipart/alternative; boundary="000000000000bee4fa059183b129"
Archived-At: <https://mailarchive.ietf.org/arch/msg/spring/CKbgTgW_KBtqOXjF2t96SwMpGQY>
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 20:28:17 -0000

Hi Andrew,

Looking at your network topology
https://www.liquidtelecom.com/about-us/network-map.html yes indeed you need
to pass via number of countries, but keep in mind that SR is not a routing
protocol.

Even focusing on your longest data paths say from Cairo to Cape Town I
really see no use for more then optimally chosen 3 or 4 SIDs to well
diversify the flows to traverse different end to end paths then your routed
default.

Now if your desire is to provide for all the possible data flows per each
ECMP link group forwarding control then I see counting adj SIDs you can get
to 10 SIDs or more. But is SRv6 then optimal tool in the toolkit to
accomplish that ?

But assume it is how about use of uSID combination with SRH such that you
can have your requirements well satisfied in the current network regardless
if alternative design or alternate network architecture exists or not ?

Thx,
Robert.


On Sun, Sep 1, 2019 at 9:47 PM Andrew Alston <
Andrew.Alston@liquidtelecom.com> wrote:

> I can state categorically that we have a solid case to use 8 to 12 SID’s –
>
>
>
> Let me put it this way – If I cross my own network – To get to certain
> countries I have to pass through no less than 5 separate countries in
> certain scenarios – and it’s not practically possible to avoid this.  When
> I add the various paths we need to steer across and the numbers of devices
> to do this in a granular way – with the amount of meshing we have to do to
> achieve redundancy – yes – it gets complex – and yes – the node depth gets
> deep.
>
>
>
> Our case of needing granular steering here – without necessarily going
> lose – is ironclad – and I can say that right now, 10 node steering for
> certain cases is 100% a reality for what we need.
>
>
>
> Andrew
>
>
>
>
>
> *From: *spring <spring-bounces@ietf.org> on behalf of Ron Bonica <rbonica=
> 40juniper.net@dmarc.ietf.org>
> *Date: *Sunday, 1 September 2019 at 21:00
> *To: *Robert Raszuk <robert@raszuk.net>
> *Cc: *Rob Shakir <robjs@google.com>, SPRING WG List <spring@ietf.org>, "
> 6man@ietf.org" <6man@ietf.org>
> *Subject: *Re: [spring] Beyond SRv6.
>
>
>
> 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
>
>