Re: [ippm] NodeLen in In-situ OAM trace option

Mickey Spiegel <mspiegel@barefootnetworks.com> Mon, 21 August 2017 06:56 UTC

Return-Path: <mspiegel@barefootnetworks.com>
X-Original-To: ippm@ietfa.amsl.com
Delivered-To: ippm@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id F39EE13226B for <ippm@ietfa.amsl.com>; Sun, 20 Aug 2017 23:56:01 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.9
X-Spam-Level:
X-Spam-Status: No, score=-1.9 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=barefootnetworks-com.20150623.gappssmtp.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 BwOhnhpSeIRU for <ippm@ietfa.amsl.com>; Sun, 20 Aug 2017 23:55:59 -0700 (PDT)
Received: from mail-wr0-x22f.google.com (mail-wr0-x22f.google.com [IPv6:2a00:1450:400c:c0c::22f]) (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 23450132116 for <ippm@ietf.org>; Sun, 20 Aug 2017 23:55:59 -0700 (PDT)
Received: by mail-wr0-x22f.google.com with SMTP id k46so15478659wre.2 for <ippm@ietf.org>; Sun, 20 Aug 2017 23:55:58 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=barefootnetworks-com.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=3somo0si8bvAqhSnlJHgTINs+NfTKTTnfcHOQhE3Vs8=; b=cr12rUy2q7OW8whOrIIsNEoc9AF04TQ3D6No6DIl0pylmXy0PTXUxt9Eccg1elzJI9 2sPYDQKsDKiiqilde0edlx07Lx+wtMUxwSKkpOpENFcG4HWr2bZEAfdTg4Ot0ZvIFJJD MbmZkjdjroBmbNzVsvXRaKg+TiwJIS/J+Bzp+hv0aw3VtIfkAMROggigY+iF+dfgrBIt /Uxg7vF+u90pwJAXgO6fDQoAY29ltG8miA8o21HDstcnWoKijW0JBj1WeauI/BjqTUxZ 4onMmIpnV2IRbsOb7c9z9PT9dmWl1jNazKJVo5udAb7d/Ck9pRtiEhkEOOmQLHxW1ibW HkPA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=3somo0si8bvAqhSnlJHgTINs+NfTKTTnfcHOQhE3Vs8=; b=fpAMKyWoFKYH4OgNvcYkLEleaI2tkg59qW5SLcaHhBzlg7PRN/0jAThScSe4dXvlL8 F1jHEQkmXs7iVbV0V7pqqabx3tln15QR8uwWxpSHPhcn259QA8uy+51y7pCSKsQgqhMp KQVQxNwMFS7foS73AODKv72WBQfxbzra6EzH0PcPTpSrkO1+Dv48jOS2y/BstH+JmqVi dLbXWzweL6cph2S3PNowjYQpXeMLv1zyK2ZtZPFsqsOkzlBnT5P+8p39+VVX1cTd5ZAx nE/2E80agj9L5C6yYzDwFQGyBvJoQZtc2fxi5fwWRVNtrxIgJ2QX+9VZtj3PSdvUVrBR M7Dg==
X-Gm-Message-State: AHYfb5iv2EZ7ucEk0nLdnAsdTprqAbEE/FVvExI2dW/8LID15Fm04fmN TLH8iMJJImGXsCx0h+LG1SXMVQH4T0mr
X-Received: by 10.28.5.136 with SMTP id 130mr5576350wmf.4.1503298557555; Sun, 20 Aug 2017 23:55:57 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.223.139.78 with HTTP; Sun, 20 Aug 2017 23:55:56 -0700 (PDT)
In-Reply-To: <AM5PR0501MB238759C9308AA5C7C5C0C833C6860@AM5PR0501MB2387.eurprd05.prod.outlook.com>
References: <AM5PR0501MB238759C9308AA5C7C5C0C833C6860@AM5PR0501MB2387.eurprd05.prod.outlook.com>
From: Mickey Spiegel <mspiegel@barefootnetworks.com>
Date: Sun, 20 Aug 2017 23:55:57 -0700
Message-ID: <CACYmcDoq2JoJKrpdONx3viAhJi4mvw+DS=HAxHAN0=DEQtLfbw@mail.gmail.com>
To: Aviv Kfir <avivk@mellanox.com>
Cc: "ippm@ietf.org" <ippm@ietf.org>
Content-Type: multipart/alternative; boundary="001a1144269483d40305573df87c"
Archived-At: <https://mailarchive.ietf.org/arch/msg/ippm/VJ0l7hip1bHNweVI6t6RLLe9cyE>
Subject: Re: [ippm] NodeLen in In-situ OAM trace option
X-BeenThere: ippm@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: IETF IP Performance Metrics Working Group <ippm.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/ippm>, <mailto:ippm-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/ippm/>
List-Post: <mailto:ippm@ietf.org>
List-Help: <mailto:ippm-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ippm>, <mailto:ippm-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 21 Aug 2017 06:56:02 -0000

On Sat, Aug 19, 2017 at 11:43 PM, Aviv Kfir <avivk@mellanox.com> wrote:

> Hi All,
>
>
>
> NodeLen described as the total length of data needed to be added by each
> node.
>
> It contains 4bits in 4B resolution which means 4B up to 60B.
>
>
>
> I see few issues with this field and want to open it to a discussion.
>
>
>
> 1.
>
> There is no consideration to bit[7] "Opaque State Snapshot" which has
> variable length
>

This points out that there is some ambiguity with respect to the meaning of
bit[7]. When bit[7] is set, this indicates that some "opaque state" must be
included in the IOAM trace node data list, but it does not indicate what
"opaque state" is intended to be captured. If there is more than one
possible "opaque state" field (i.e. more than one schema is supported),
then the node must determine which one to insert locally, perhaps based on
configuration.

If it is desired to keep the "Opaque State Snapshot" despite this issue,
then the NodeLen could be defined as the length of data added by each node
in multiples of 4-octets, excluding the length of the "Opaque State
Snapshot". If bit[7] is not set, then the NodeLen specifies the actual
length added by each node. If bit[7] is set, then the actual length added
by a node would be (NodeLen + Opaque Data Length), assuming that the Opaque
Data Length is changed to units of multiples of 4-octets.

2.
>
> Regardless bit[7], when all bits are set where some are short and some are
> wide, the current total is 14 where we have spare of 4 bits (12-15). If
> they will be used this field will not be able to show the total node length
>

Without considering bit[7], looking at the current bits there should be no
need for any combination with length greater than 11.
Why would anyone need both short (4-octets) and wide (8-octets) fields of
Hop_Lim and Node_id?
Or both short and wide fields of ingress_if_id and egress_if_id?
Or both short and wide fields of app_data?


> 3.
>
> Checks needs to be defined in case the NodeLen is not matching the number
> of bits in the trace type.
>
> Suggest to add text that trace type field has precedence and if a node
> decides to use the NodeLen it is required to do checks on the trace type.
>

This defeats the purpose of adding this field. In-situ OAM is designed to
record information within data packets, without significantly affecting the
processing of those data packets. As such, it is important that it be
specified in a manner that is hardware friendly.

By including the NodeLen, it eases the task of data plane processing. While
inclusion of node data fields must be driven only by the IOAM-Trace-Type
bits, it is also necessary to determine the length of data added by each
node. This length is used both to determine whether the Maximum Length
would be exceeded, and to adjust the length of encapsulating headers.

IOAM is meant to be used within a "network domain" operated by a single
administration. The IOAM administrator would specify the node data fields
that are desired. Nodes at the edge of the network domain insert the
appropriate IOAM Trace Option with the set of bits corresponding to the
node data fields specified by the IOAM administrator. A software driver can
determine the NodeLen based on the set of bits, i.e. the NodeLen is not
meant to be a user configurable field. NodeLen is just a value that can be
precomputed and communicated to each node along the path, easing the burden
of per packet data plane processing.

There have been offline suggestions that a translation table could be used
to determine this length, without having to do the arithmetic associated
with the individual bits. The issue with such an approach is that the
number of possible combinations is likely to be large. If only a subset of
combinations were to be included in the translation table, then this would
add an operational burden. The IOAM administrator would have to specify the
allowed combinations before the feature could be enabled, making IOAM more
difficult to use.

Mickey


>
> Thanks,
>
> Aviv
>