Re: [Detnet-dp-dt] Providing unique Flow-ID

Jouni Korhonen <jouni.korhonen@broadcom.com> Wed, 22 February 2017 02:58 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 B9589129518 for <detnet-dp-dt@ietfa.amsl.com>; Tue, 21 Feb 2017 18:58:09 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.001
X-Spam-Level:
X-Spam-Status: No, score=-2.001 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_NONE=-0.0001, SPF_PASS=-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 nkniQEZFMXEP for <detnet-dp-dt@ietfa.amsl.com>; Tue, 21 Feb 2017 18:58:07 -0800 (PST)
Received: from mail-pg0-x234.google.com (mail-pg0-x234.google.com [IPv6:2607:f8b0:400e:c05::234]) (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 B192512952B for <detnet-dp-dt@ietf.org>; Tue, 21 Feb 2017 18:58:07 -0800 (PST)
Received: by mail-pg0-x234.google.com with SMTP id 1so27278423pgi.1 for <detnet-dp-dt@ietf.org>; Tue, 21 Feb 2017 18:58:07 -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=r5t0YvrPnHGatfTlBti78xvDDAQnfIjazAVIV792XJA=; b=IBpbAl2Jt8+yFlscJ+fyB9VYWJwv8aRHlzWdY0zQl88yAKHk447tDpmy9kmpYbMUGp kJaWZiDvHSsnR2R7i6/Hmjw3vWBpNkTZzrXJOnprRIw2mgpmAfoyRu1Dl4DmAdajDduX gDqwiKF+rUCadV+/A5MRFbVetbRhwLBhqs5zc=
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=r5t0YvrPnHGatfTlBti78xvDDAQnfIjazAVIV792XJA=; b=rzD8pdZJnFmtF6xRpaNOeTgMkxpf+1pZOWG38eZ44biGOup1DM06Gn+XXjvjw86KSW y154lc0hQxeoGvAwgbxaD5rAUI22oIJUVswMfIWQ6+TWSRt41FbMhG9FHfMB8PwML6RA HRtCneKWmPErBVWlauy7pc7Pi6JtGWpqxv0aOzSB8CT4ZCx+ikyzhNxI9HJhQGH+YIv0 5Lwxu+YLH/C9mjGJhtQExepIYA+0WU5hl91Vzj9tNPvQ2fYsManAJdrFaZzUmsZn2Gt6 deErfQOwazFjy3J9kgPlwcNCUhfQf37iJEdXKvOPCUcuWZ4hvV1q1+P3KLSi1G/d3rVs w1Rg==
X-Gm-Message-State: AMke39ldbz3jklO+JQL+fCRJqSE3zUPNlEjQhMzyIkpVOiT1sWBKTCbmnaxRCp0IxqzNeONj
X-Received: by 10.84.232.134 with SMTP id i6mr44777321plk.101.1487732287054; Tue, 21 Feb 2017 18:58:07 -0800 (PST)
Received: from ?IPv6:2601:647:4200:e520:1937:f73:b500:623? ([2601:647:4200:e520:1937:f73:b500:623]) by smtp.gmail.com with ESMTPSA id c72sm856915pfj.77.2017.02.21.18.58.05 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 21 Feb 2017 18:58:06 -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: <1487730493.29054.41.camel@it.uc3m.es>
Date: Tue, 21 Feb 2017 18:58:04 -0800
Content-Transfer-Encoding: quoted-printable
Message-Id: <485436A3-D66B-4F63-BC4E-96CD35B3DB62@broadcom.com>
References: <DBXPR07MB12832861ED58D86FD3D0A09AC510@DBXPR07MB128.eurprd07.prod.outlook.com> <F278A381-1E43-4607-8015-5CFDE871D382@broadcom.com> <1487730493.29054.41.camel@it.uc3m.es>
To: cjbc@it.uc3m.es
X-Mailer: Apple Mail (2.3259)
Archived-At: <https://mailarchive.ietf.org/arch/msg/detnet-dp-dt/TaTXUyI-eM6YyGEBSBPASWLwgQE>
Cc: =?utf-8?Q?Bal=C3=A1zs_Varga_A?= <balazs.a.varga@ericsson.com>, "detnet-dp-dt@ietf.org" <detnet-dp-dt@ietf.org>
Subject: Re: [Detnet-dp-dt] Providing unique Flow-ID
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: Wed, 22 Feb 2017 02:58:09 -0000

Carlos,


Many pops here..

>>>  
>>> We can distinguish 3 node types:
>>> - T-PE: d-pw starts/terminates here
>>> - S-PE: place of detnet specific function (e.g., FRER)
>>> - P: intermediate node (transport only functions)
>>>  
>>> T-PE and S-PE nodes are fully aware of both the DetNet service and
>>> transport layers.
>>> In case of PHP, they receive only "d-pw + l-label", so the x-PE
>>> node should recognize
>>> the DetNet flow based on these labels. DetNet specific functions
>>> are driven by the
>>> "d-pw label" and "l-label" pair. The "d-pw"+"l-label" pairs have to
>>> be locally unique
>>> on the x-PE.
>> 
>> I have an issue what “pair” means here. L-labels should only have
>> simple rules and actions like
>> pop, label swap, etc:
>> 
>> In the context of DetNet and L-labels, popping it would expose the d-
>> pw label to the system, which would then do PW (+FRER) thing based on
>> the top d-pw label. Label swap for L-label would allow making desired
>> x-PW nodes to behave as transit nodes in the DetNet context.
>> 
>> Combining L-label into DetNet specific processing is IMHO a bad
>> decision. Even if the hardware could be able to look up multiple
>> labels in parallel, the next hop and action decisions would still be
>> per label, not as a single result. Keeping this in mind, the system
>> would also work as such when L-labels are not present i.e., the x-PE
>> just receives a packet with d-pw label or T-label+d-pw label.. the
>> assumption here is that the configuration at this point is such there
>> is no ambiguity..
> 
> I share Jouni's view on this. One clarifying question (for Jouni): you
> mean here the action decision would still be per __d-pw__ label, right?

Yes.. if I understood you question correctly.

- JOuni


> 
>> 
>>> The problematic points are the intermediate "P" nodes. Their detnet
>>> role is limited to
>>> ensure congestion protection from the above listed DetNet
>>> functions. Additionally OAM
>>> functions are also nice to have at each hop (as usual).
>>>  
>>> We have two options for P nodes:
>>> - Option-A, P node can recognize only "t-label" and cannot consider
>>> the whole label
>>> stack for flow recognition. This is the scenario, where we have
>>> pre-established
>>> tunnels over the network, where the DetNet flows are mapped to
>>> appropriate tunnels to
>>> be transported over the network. This can be treated as a form of
>>> aggregation as many
>>> DetNet flows may use the same tunnel. Of course with this
>>> aggregation we lost per flow
>>> identification, that is the price for scalability.
>>> - Option-B, P-nodes can consider the whole label stack and they can
>>> identify each
>>> individual flow. That represents additional requirement on P nodes,
>>> which may not be
>>> acceptable in some network scenarios.
> 
> Wouldn't this (Option-B) make P nodes "DetNet service aware"?
> 
>>>  
>>> So, what labels should be unique and how should we allocate labels?
>>> - d-pw: allocated by egress PE node. Label value is unique on that
>>> particular PE node.
>>> Other PE nodes may allocate the same label value for a different
>>> detnet flow.
>>> - l-label: allocated by the S-PE node. Label value is unique on
>>> that particular S-PE
>>> node.
>> 
>> How would the L-label assignment work in our A,B,C,D x-PE example? B
>> would do downstream assignment to A and upstream assignment to D?
>> 
>>> - t-label: allocated by P node. Refer to the tunnel endpoint node
>>> (FEC) and the
>>> tunnel-ID. Value locally unique on the P node.
>>>  
>>> Such an allocation scheme ensure that all nodes in the network are
>>> able to identify
>>> uniquely the DetNet flows (or aggregate flows) and support the
>>> above listed
>>> functions:
>>> - T-PE (egress): DetNet flow(s) identified based on the "d-pw"
>>> value.
>>> - S-PE: DetNet flow(s) identified based on the “l-label" value
>> 
>> How do you do the flow to seqnum pairing? It does not make sense to
>> map multiple L-labels to a single seqnum counter & duplicate
>> elimination function. A solution like this would need us to introduce
>> kind of master and slave label relationships, or virtual labels that
>> L-labels point at.
>> 
>>> - P-node (option-A): aggregated DetNet flow(s) identified based on
>>> the "t-label"
>>> - P-node (option-B): DetNet flow(s) identified based on the "l-
>>> label + t-label" (no
>>> need to look for the “d-pw" label, unless “l-label” is not present)
>>>  
>>> Note, that as shown above globally unique “d-pw" labels are
>>> optional!
>> 
>> I realize that detnet domain wide global d-pw labels are a pain in a
>> neck. It would, for example, required each ingress T-detnet-PE to
>> have their own d-pw label ranges they assign labels to detnet flows
>> (assuming upstream label assignment). However, I still think global
>> d-pw labels are cleaner from the forwarding point of view.
> 
> I agree.
> 
> Carlos
> 
>> 
>>>  
>>> Good night and see You tomorrow early morning
>>> Bala'zs
>>>  
>>> _______________________________________________
>>> Detnet-dp-dt mailing list
>>> Detnet-dp-dt@ietf.org
>>> https://www.ietf.org/mailman/listinfo/detnet-dp-dt
>> 
>> _______________________________________________
>> Detnet-dp-dt mailing list
>> Detnet-dp-dt@ietf.org
>> https://www.ietf.org/mailman/listinfo/detnet-dp-dt