Re: [Detnet-dp-dt] Using MS-PW concept for the d-pw

Jouni Korhonen <jouni.korhonen@broadcom.com> Thu, 23 February 2017 17:49 UTC

Return-Path: <jouni.korhonen@broadcom.com>
X-Original-To: detnet-dp-dt@ietfa.amsl.com
Delivered-To: detnet-dp-dt@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 433E4129A6E for <detnet-dp-dt@ietfa.amsl.com>; Thu, 23 Feb 2017 09:49:35 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.7
X-Spam-Level:
X-Spam-Status: No, score=-2.7 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=broadcom.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 AoSpm-wNLqza for <detnet-dp-dt@ietfa.amsl.com>; Thu, 23 Feb 2017 09:49:33 -0800 (PST)
Received: from mail-qk0-x230.google.com (mail-qk0-x230.google.com [IPv6:2607:f8b0:400d:c09::230]) (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 9E19012998D for <detnet-dp-dt@ietf.org>; Thu, 23 Feb 2017 09:49:33 -0800 (PST)
Received: by mail-qk0-x230.google.com with SMTP id x71so38569313qkb.3 for <detnet-dp-dt@ietf.org>; Thu, 23 Feb 2017 09:49:33 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google; h=mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=9UBy2Nm2MnOAB+njC86RrXzIREGyv7rlsmXpgG7EQB8=; b=SJQbCdD4bS/YcWgu2dxA3daob0VGc9DjfNid5NYrs2A8Ec1SwolhAGuwZnw8rth8Vx bZDL/hibmfQ7PpQin1zUE/R6/7/zdTqBUyeyuqRodhZnioufyrVIwiVEGDKlfCjNGXPO c60TMa9K3LrJC4B909ywTlCHY5r0byKMl1tNU=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=9UBy2Nm2MnOAB+njC86RrXzIREGyv7rlsmXpgG7EQB8=; b=JAqSs5dGz2RFNwoGNbAqvFJCsRw+GsBgCOTWoa+BI1+SFDiLbBIyfgBF286WS/ZhLI 4J0sdISimKgFw7b6qB4AT2Stt4H6I3mcSeUHFATFVcsLQPmhsJrTW5Z6vQ5hUyJKpolK di+ZzYPJIqmmzEbyzQuR8fuUwHP4Zp9WEN/WM78qFDSLrchU6HrnyA/36EVD86J4T9P2 eTlsK+xRayzGJYycsWjzI/mdtZRI7SMEWOHIp1uXRdnCCZS20UxSYwExf0H4aWJmhQeF rbQGwbu8Jm6/HCbW3poMldqY+Zeur8VYtXGXkPosyKpfCmvbs2wuKUlOPr5ztCqj24jj jlHQ==
X-Gm-Message-State: AMke39nGOl5vgqpGjGEIpl9bRoqFMT8tzSaz8acAI9jSoFfZPtWyNemwuKSltXCuotN3eNlD
X-Received: by 10.55.121.194 with SMTP id u185mr37412621qkc.56.1487872172462; Thu, 23 Feb 2017 09:49:32 -0800 (PST)
Received: from [192.168.89.94] ([216.31.219.19]) by smtp.gmail.com with ESMTPSA id c41sm3097017qta.65.2017.02.23.09.49.30 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 23 Feb 2017 09:49:31 -0800 (PST)
Content-Type: text/plain; charset=utf-8
Mime-Version: 1.0 (Mac OS X Mail 10.2 \(3259\))
From: Jouni Korhonen <jouni.korhonen@broadcom.com>
In-Reply-To: <DBXPR07MB128C5BF67FE7AC3266D868BAC530@DBXPR07MB128.eurprd07.prod.outlook.com>
Date: Thu, 23 Feb 2017 09:49:29 -0800
Content-Transfer-Encoding: quoted-printable
Message-Id: <E315AFEC-7C20-4A1D-BE50-8ABD19B595EF@broadcom.com>
References: <DBXPR07MB128EDEE38C28B6C894DE489AC500@DBXPR07MB128.eurprd07.prod.outlook.com> <7FF14334-F3A3-4051-BAFF-750C6F70FE1A@broadcom.com> <DBXPR07MB128C5BF67FE7AC3266D868BAC530@DBXPR07MB128.eurprd07.prod.outlook.com>
To: =?utf-8?Q?Bal=C3=A1zs_Varga_A?= <balazs.a.varga@ericsson.com>
X-Mailer: Apple Mail (2.3259)
Archived-At: <https://mailarchive.ietf.org/arch/msg/detnet-dp-dt/2PxiewipmMStBeh4BbQBNsGa0Kk>
Cc: "detnet-dp-dt@ietf.org" <detnet-dp-dt@ietf.org>
Subject: Re: [Detnet-dp-dt] Using MS-PW concept for the d-pw
X-BeenThere: detnet-dp-dt@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: DetNet WG Data Plane Design Team <detnet-dp-dt.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/detnet-dp-dt>, <mailto:detnet-dp-dt-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/detnet-dp-dt/>
List-Post: <mailto:detnet-dp-dt@ietf.org>
List-Help: <mailto:detnet-dp-dt-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/detnet-dp-dt>, <mailto:detnet-dp-dt-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 23 Feb 2017 17:49:35 -0000

Balazs,

Thanks for the below sequence. A very good way to interpret my figures. Yes, you are correct there seems to be no difference in processing steps as whole. I assumed 2b had L-labels already popped and did not count those as part of the FRER processing ;)

One thing still remains. The “virtual label” solution needs the “local-id” mapping information for 1b step, which means more entries in an LFIB and a “wider” lookup (which can also be an issue).

Last, assuming the pipeline implementation would be the same for all x-PE nodes (which it typically is, just that the actions and tables are programmed differently). The 1d replication step would likely need additional/different logic compared to 1+1 protection logic that 2d uses. It might be a tiny tweak but still a change.

- Jouni

-- 
Jouni Korhonen, Broadcom Ltd., Core Switching Group
M: +1-408-391-7160

> On Feb 23, 2017, at 6:46 AM, Balázs Varga A <balazs.a.varga@ericsson.com> wrote:
> 
> Hi,
>  
> Thanks for the details, the “virtual label” is a good visualization of the problem.
> The “virtual label” is practically the local-ID of the detnet-(compound)-flow.
>  
> So, if I understand it correctly, You intend to use the d-pw as local-ID to have 
> less label operation cycle. However counting the number of label operations 
> I do not see the difference, please correct me if I have not counted correctly.
>  
> S-PE packet processing tasks:
> Solution-1, MS-PW case, no “l-label”
>   a, ingress packet has single label “d-pw1”
>   b, label operation: swap “d-pw1” -- > “virtual-label1” = local-ID
>   c, duplicate elimination using the local-ID
>   d, replication + swap “virtual-label1” -- > “d-pw2”
>   e, push outgoing labels (t-label)
>  
> Solution-2, Globally unique d-pw scenario
>   a, ingress packet has two labels “d-pw + l1”
>   b, label operation: pop “l1” -- > “d-pw” = local-ID
>   c, duplicate elimination using the local-ID
>   d, replication + push “l2”
>   e, push outgoing labels (t-label)
>  
> The differences are:
> - 1b vs. 2b: it a swap vs. pop operation (they lasting equally)
> - 1d vs. 2d: it a swap vs. push operation (they lasting equally)
>  
> So these differences does not cause label processing cycle differences.
> Have I missed something?
>  
> Cheers
> Bala’zs
>  
>  
> -----Original Message-----
> From: Jouni Korhonen [mailto:jouni.korhonen@broadcom.com] 
> Sent: Wednesday, February 22, 2017 8:21 PM
> To: Balázs Varga A <balazs.a.varga@ericsson.com>om>; detnet-dp-dt@ietf.org
> Subject: Re: [Detnet-dp-dt] Using MS-PW concept for the d-pw
>  
> Hi,
>  
> Thank you for this. It is very useful. Few comments inline.
>  
> > On Feb 22, 2017, at 8:08 AM, Balázs Varga A <balazs.a.varga@ericsson.com> wrote:
> > 
> > Hi,
> >  
> > d-pw collision can be solved if the MS-PW concept is used for the DetNet-PW.
>  
> Am I missing something here.. We have been talking about MS-PW with required DetNet modifications from the beginning. What has changed since apart excluding the L-labels (no need to pop those to expose d-pw in this proposal) and using s2s d-pw labels instead of e2e d-pw label value?
>  
> > d-pws between x-PE nodes have their own d-pw label. X-PE nodes do d-pw label swap.
> > Replicas of a detnet flow have to use different d-pw label.
> >  
> > I have attached a simplified figure:
> > - detnet-flow1: A -- > D (B is just a segment-stitching point, C does
> > elimination)
> > - detnet-flow2: F -- > G (E is just a segment-stitching point, B does
> > elimination)
> >  
> > There is no d-pw label collision at B as it allocates the d-pw label
> > for the segments of the DetNet-PW. So B can ensure that no collision occurs.
> >  
> > You can treat as a drawback that you need a state for each segment,
> > but that is the same as for “normal” MS-PW scenarios.
>  
> Except that you need more state than in a “normal” MS-PW scenario. Each x-PE has to have an additional many-to-one mapping of d-pw labels to be able to associate a single seqnum & duplicate elimination function to a set of incoming PWs. For this purpose I added a ‘virtual label’ column.
>  
> I hope I got the following drawings correct ;)
>  
> Sketching LFIB for S-DetNet-PE (for detnet-flow2):
>  
> +========+================+===============+=============================+===+
> |        |                |  Elimination  |     Forwarding Semantics       |
> | Device | Incoming-Label |---------------|--------------------------------|
> |        |                | Virtual-label | Outgoing-Label | Outgoing-Link |
> +========+================+===============+================+============+===+
> | F      | N/A (from AC)  | d-pw0 (2)     | swap d-pw4 (3) | F->E          |
> |        |                |               | swap d-pw3     | F->B          |
> +========+================+===============+================+============+===+
> | E      | d-pw4          | d-pw4 (1)     | swap d-pw7     | E->B          |
> +========+================+===============+================+============+===+
> | B      | d-pw4          | d-pw3 (1)     | swap d-pw8     | B->G          |
> |        | d-pw3          | d-pw3         |                |               |
> +========+================+===============+================+============+===+
> | G      | d-pw8          | d-pw8 (1)     | N/A (to   AC)  | G->AC         |
> +========+================+===============+================+============+===+
>  
> (1) For elimination purposes we need to associate all incoming d-pw labels
>     that belong to the same detnet flow to a single “virtual label”. Here the
>     “virtual label” to which the seqnum and elimination book keeping is
>     associated with is just one of the active d-pw labels, for example, the
>     first that gets configured in the device for a detnet flow (i.e., the master
>     label). The label could also be truly a virtual label value that is never
>     seen on wire..
> (2) The ‘virtual label’ the seqnum etc logic is associated with for a
>     given detnet flow.
> (3) Replication is more or less equivalent to existing 1+1 protection. One
>     replica of the packet is done and outgoing labels are swapped accordingly.
>  
> So, if we had a “global” e2e d-pw label for each detnet flow, the ‘elimination’
> label mapping column would not be needed -> smaller LFIB and and less processing step.
> Also, the ‘outgoing-label’ column would not be needed, however, there would not be any
> LFIB savings since the same amount of information would be needed for d-pw to L-Labels
> mapping. Basically the LFIB for e2e d-pws would look like this (slide 4 from detnet-frer-loa.pptx):
>  
> +========+================+=================================+
> |        |                |      Forwarding Semantics       |
> | Device | Incoming-Label |---------------------------------|
> |        |                | Outgoing-Label  | Outgoing-Link |
> +========+================+=================+===============+
> | A      | N/A (from AC)  | create d-pw     |               |
> |        |                | push L1         | A->B          |
> |        |                | push L3         | A->C          |
> +========+================+=================+===============+
> | B      | d-pw           | push L2         | B->D          |
> |        | (L1/L6 popped) | push L5         | B->C          |
> +========+================+================+===============+
> | C      | d-pw           | push L6         | C->B          |
> |        | (L3/L5 popped) | push L4         | C->D          |
> +========+================+=================+===============+
> | D      | d-pw           | N/A (to   AC)   | G->AC         |
> |        | (L2/L7 popped) |                 |               |
> +========+================+=================+===============+
>  
>  
> > As a side effect l-labels are not needed at all. Comments are welcome.
>  
> I could like this (one less label layer and somewhat cleaner), however, is there a deployment scenario or an overlay topology that we cannot get working without L-label-layer?
>  
> - JOuni
>  
>  
>  
> >  
> > Cheers
> > Bala’zs
> > <detnet-frer-balazs_v0222.pptx>_______________________________________
> > ________
> > Detnet-dp-dt mailing list
> > Detnet-dp-dt@ietf.org
> > https://www.ietf.org/mailman/listinfo/detnet-dp-dt