Re: [Rtg-ooam-dt] [sfc] Identifying OAM in NSH

"Carlos Pignataro (cpignata)" <cpignata@cisco.com> Sat, 23 July 2016 23:34 UTC

Return-Path: <cpignata@cisco.com>
X-Original-To: rtg-ooam-dt@ietfa.amsl.com
Delivered-To: rtg-ooam-dt@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 5106512D633; Sat, 23 Jul 2016 16:34:15 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -15.808
X-Spam-Level:
X-Spam-Status: No, score=-15.808 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_HI=-5, RCVD_IN_MSPIKE_H4=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-1.287, SPF_PASS=-0.001, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.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 p5hjxe-Gth2k; Sat, 23 Jul 2016 16:34:13 -0700 (PDT)
Received: from rcdn-iport-8.cisco.com (rcdn-iport-8.cisco.com [173.37.86.79]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id CC49D12B02C; Sat, 23 Jul 2016 16:34:12 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=10170; q=dns/txt; s=iport; t=1469316852; x=1470526452; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-id:content-transfer-encoding: mime-version; bh=QOlawM/viQvQ6rJpdIngCIiUqfFD/zz3FXNHPadSsMg=; b=PqHSE6R2c30Ojo4dJYlcQqGhElMt0Y1qZJX6OSNVqKUuqpIzZvbotN+Y JOqJxK+5jrtfYHoVaOSK5SczjivCWKutjYiA1miqt4BEYMgHmLSI9B8rx niK7H8Y8r6d8HPS6JgjW8WPO9o4jLd/5LUpKnu/stuyjF+UFMdSx6ecr5 8=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: A0APAgBp/pNX/4QNJK1dgz9WfAa4XYF8I4V5AoEoOBQBAQEBAQEBXSeEXAEBBAEBASVABwQHBQsCAQgRBAEBAScHJwsUCQgCBA4FiCgIDrgRAQEBAQEBAQEBAQEBAQEBAQEBAQEBFwWGKoF4glWEQIMsgi8BBJkmAY5tgWyEWYh2kCABHjaCCxyBTG6Ga38BAQE
X-IronPort-AV: E=Sophos;i="5.28,411,1464652800"; d="scan'208";a="127440566"
Received: from alln-core-10.cisco.com ([173.36.13.132]) by rcdn-iport-8.cisco.com with ESMTP/TLS/DHE-RSA-AES256-SHA; 23 Jul 2016 23:34:11 +0000
Received: from XCH-RTP-018.cisco.com (xch-rtp-018.cisco.com [64.101.220.158]) by alln-core-10.cisco.com (8.14.5/8.14.5) with ESMTP id u6NNYAJI015584 (version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=FAIL); Sat, 23 Jul 2016 23:34:11 GMT
Received: from xch-rtp-020.cisco.com (64.101.220.160) by XCH-RTP-018.cisco.com (64.101.220.158) with Microsoft SMTP Server (TLS) id 15.0.1210.3; Sat, 23 Jul 2016 19:34:10 -0400
Received: from xch-rtp-020.cisco.com ([64.101.220.160]) by XCH-RTP-020.cisco.com ([64.101.220.160]) with mapi id 15.00.1210.000; Sat, 23 Jul 2016 19:34:10 -0400
From: "Carlos Pignataro (cpignata)" <cpignata@cisco.com>
To: "Joel M. Halpern" <jmh@joelhalpern.com>
Thread-Topic: [sfc] [Rtg-ooam-dt] Identifying OAM in NSH
Thread-Index: AQHR4/B/s+mJr49HL0uqnvaJ3glSK6AkcOaAgAIHwQCAACcwgIAAUL4A
Date: Sat, 23 Jul 2016 23:34:09 +0000
Message-ID: <83EF1E06-D242-4FE6-8C7A-B00AE858557B@cisco.com>
References: <7347100B5761DC41A166AC17F22DF11221ADA9CB@eusaamb103.ericsson.se> <9DBA673E-960C-49B0-9A90-4DB4828C08BE@cisco.com> <7347100B5761DC41A166AC17F22DF11221ADBCA5@eusaamb103.ericsson.se> <565E48DF-2D9E-43E6-BAB6-5376F926B609@cisco.com> <03e6e582-e85e-d09a-8ded-541820d9cc32@joelhalpern.com>
In-Reply-To: <03e6e582-e85e-d09a-8ded-541820d9cc32@joelhalpern.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-ms-exchange-messagesentrepresentingtype: 1
x-ms-exchange-transport-fromentityheader: Hosted
x-originating-ip: [10.61.165.229]
Content-Type: text/plain; charset="Windows-1252"
Content-ID: <280E1A9C04B8264390446A252808A401@emea.cisco.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
Archived-At: <https://mailarchive.ietf.org/arch/msg/rtg-ooam-dt/cBZW_fVvfP06Tf4MBxvnGkIeGKM>
Cc: Gregory Mirsky <gregory.mirsky@ericsson.com>, "rtg-ooam-dt@ietf.org" <rtg-ooam-dt@ietf.org>, "sfc@ietf.org" <sfc@ietf.org>
Subject: Re: [Rtg-ooam-dt] [sfc] Identifying OAM in NSH
X-BeenThere: rtg-ooam-dt@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: List is used by the Routing Area Overlay OAM Design team for internal coordination and discussion <rtg-ooam-dt.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/rtg-ooam-dt>, <mailto:rtg-ooam-dt-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/rtg-ooam-dt/>
List-Post: <mailto:rtg-ooam-dt@ietf.org>
List-Help: <mailto:rtg-ooam-dt-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/rtg-ooam-dt>, <mailto:rtg-ooam-dt-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sat, 23 Jul 2016 23:34:15 -0000

Hi, Joel,

> On Jul 23, 2016, at 7:45 PM, Joel M. Halpern <jmh@joelhalpern.com> wrote:
> 
> There is one situation that folks are asking for that seems not to be clearly covered in the spec, and appears to me to be clarified by Greg's proposal.
> 
> We have had a couple of requests for the ability to put OAM marking on user data packets.  The most obvious use is to monitor how long it takes NSH-aware service functions to process the user packets.
> 

Just to make sure I understand, you are talking about the case of “piggy-back OAM”, correct?

> If the only case where we will need this is for service function processing, the putting it in the TLVs, without additional markings, and allowing the service functions which understand the TLV to work with it seems sufficient.
> 
> But it is not clear to me that there is not a desire (whether it is a requirement is probably an important open question) for similar capability at SFF.  If we have situations where SFF, in passing user data packets, also need to perform OAM operations, then it seems to me that we need the OAM bit to tell the SFF to look at this.

If you set the O bit in a user data packet, how would a system infer that’s not an OAM packet?

Thanks,

— Carlos.

> Efforts with routers to do this with router alert options have been a mess. If we need the capability, it seems to me that we really want it in a standardized and efficient place.
> If we are very sure we don't need this, then we should write that down, and move on.
> 
> Yours,
> Joel
> 
> On 7/23/16 12:24 PM, Carlos Pignataro (cpignata) wrote:
>> Hi, Greg,
>> 
>>> On Jul 22, 2016, at 10:24 AM, Gregory Mirsky
>>> <gregory.mirsky@ericsson.com <mailto:gregory.mirsky@ericsson.com>> wrote:
>>> 
>>> Hi Carlos,
>>> thank you for sharing your comments. If I understand correctly, you
>>> suggest to expose protocol types of OAM as Next Protocol rather than
>>> to use single Active OAM protocol type and use OOAM Header to demux
>>> OOAM type. Then, the Next Protocol registry will have to allocate
>>> values for single-hop BFD, multi-hop BFD, multipoint BFD, S-BFD, Echo
>>> Request/Reply, AIS protocol, Active Performance Measurement protocol,
>>> and I’ve only listed some of AOM protocols that may be used to
>>> operate, administer and maintain SFP.
>> 
>> Yes, the protocol field ought to register the OAM protocols that will be
>> used and implemented and deployed — of course not all potential
>> variations and permutations of possible OAMs (what is AIS protocol?)
>> 
>>> Additionally, you’ve suggested that only O-bit value to be used to
>>> determine whether packet should be processed as OAM or data packet.
>>> Hence should I expect that O-bit is set for BFD, AIS, and Echo
>>> Request/Reply payload and should not be set if the Next Protocol is
>>> neither of protocols listed above? Should such situation, i.e. Next
>>> Protocol value is MPLS and O-bit set to 0x1, should be viewed as error
>>> and the packet dropped? Or you propose that the Next Protocol takes
>>> precedence and the packet treated as data? Or packet viewed as OAM and
>>> passed to the local OAM entity? Or how to interpret situation when
>>> O-bit is cleared and the Next Protocol value is one of OAM protocols?
>>> This is the situation that, in my view, is ambiguous and
>>> under-specified in the current NSH document. My proposal is an attempt
>>> to make relationship between OAM and data packets more deterministic.
>> 
>> Answering all those questions (which are really slight permutations of
>> the same question) in one shot: to me, O=0 is a data packet and O=1 is
>> an OAM packet. If the data processing does not have a handler for the
>> protocol in the PID, or it’s an undefined, drops to the bit bucket.
>> Equally, if the OAM handler does not support the protocol ID carried as
>> OAM, puff. IP can carry data or OAM for example by the way.
>> 
>> It does not get any simpler and unambiguous than that. What’s the
>> advantage of moving the OAM PID further inside?
>> 
>> And I do not believe there’s underspecification in NSH -> O=1, OAM
>> treatment, not detailed here.
>> 
>> Thanks,
>> 
>> — Carlos.
>> 
>>> 
>>>                Regards,
>>>                                Greg
>>> 
>>> *From:* Carlos Pignataro (cpignata) [mailto:cpignata@cisco.com]
>>> *Sent:* Friday, July 22, 2016 10:10 AM
>>> *To:* Gregory Mirsky <gregory.mirsky@ericsson.com
>>> <mailto:gregory.mirsky@ericsson.com>>
>>> *Cc:* sfc@ietf.org <mailto:sfc@ietf.org>; rtg-ooam-dt@ietf.org
>>> <mailto:rtg-ooam-dt@ietf.org>
>>> *Subject:* Re: [Rtg-ooam-dt] Identifying OAM in NSH
>>> 
>>> Greg,
>>> 
>>> 
>>> Please find some comments inline.
>>> 
>>> Thumb typed by Carlos Pignataro.
>>> Excuze typofraphicak errows
>>> 
>>> 
>>> On Jul 21, 2016, at 09:01, Gregory Mirsky <gregory.mirsky@ericsson.com
>>> <mailto:gregory.mirsky@ericsson.com>> wrote:
>>> 
>>>    Dear All,
>>>    we had very good discussion on OAM this week. We’ve touched on
>>>    Active, Passive and Something-in-between OAM. But can NSH indicate
>>>    which OAM type, if any, associated with a packet? I think that the
>>>    current version of draft-ietf-sfc-nsh does not allow that and may
>>>    be ambiguous in some cases. I propose change to interpretation and
>>>    applicability description of the O(AM) flag and allocation of the
>>>    new protocol type to be used in the Next Protocol field.
>>> 
>>> 
>>> 
>>> Active, passive and something-in-between are not OAM protocol types
>>> but rather they are measuring methods. Active OAM can include a
>>> plurality of OAM protocols, including BFD, S-BFD, something-over-ip, etc.
>>> 
>>> I also believe that the current OAM text in NSH is not ambiguous and
>>> allows enough processing of the header to understand something is OAM,
>>> without going the specifics of an OAM handler.
>>> 
>>> Therefore, I oppose this change.
>>> 
>>> 
>>>    RFC 7799 defines Active OAM as following:
>>>    An Active Metric or Method depends on a dedicated measurement
>>>    packet stream and observations of the stream.
>>>    Thus, regardless of encapsulation used by OAM, it is the packet
>>>    constructed solely for monitoring, measuring network’s metric and
>>>    should not leave given domain. And, I believe, such packets should
>>>    be identified by the protocol type of their own.
>>> 
>>> 
>>> Seems you are advocating for a single "OAM" protocol type for OAM
>>> packets. The functionality of identifying something as OAM is in the
>>> O-bit, so no need to waste bits in duplication.
>>> 
>>> Then, at some point, you have to differentiate if an OAM is, say, IP
>>> or "raw BFD" or something else. That's what the Protocol field is for.
>>> I do not see a need to add an indirection here to then have to have a
>>> protocol field inside the OAM.
>>> 
>>> 
>>>    OAM which behaves as much as Passive OAM or Something-in-between,
>>>    e.g. OAM appended to data packet either at the domain’s edge or
>>>    on-the-fly, identified by the protocol type of the data packet
>>>    carried in NSH.
>>> 
>>> 
>>> That's correct, with the O bit cleared; it's a data packet and not an
>>> OAM one.
>>> 
>>> 
>>>    Below are changes I’d like to propose:
>>>    Section 3.2 O-bit:
>>>    OLD
>>>       O bit: when set to 0x1 indicates that this packet is an Operations,
>>>       Administration and Maintenance (OAM) message.  The receiving
>>>    SFF and
>>>       SFs nodes MUST examine the payload and take appropriate action
>>>    (e.g.
>>>       return status information).  OAM message specifics and handling
>>>       details are outside the scope of this document.
>>>    END
>>>    NEW
>>>    O bit: when set to 0x1 indicates that data packet identified by
>>>    the Next
>>>    Protocol type has OAM metadata appended.
>>> 
>>> 
>>> No. If it is a data packet it does not have the O bit set (to 1 or to
>>> whichever other possible value for the bit :-)
>>> 
>>> The goal is that looking at a single but it can be understood if it is
>>> a data packet (which can be used, marked, etc. to be used for OAM
>>> purposes, or not).
>>> 
>>> We do not want OAM direct exception processing for data packets.
>>> 
>>> 
>>>    Definition of the format(s)
>>>    used by OAM metadata is outside the scope of this document.
>>>    END
>>> 
>>>    At the end of Section 3.2:
>>>    OLD
>>>       This draft defines the following Next Protocol values:
>>> 
>>>       0x1 : IPv4
>>>       0x2 : IPv6
>>>       0x3 : Ethernet
>>>       0x4: NSH
>>>       0x5: MPLS
>>>       0x6-0xFD: Unassigned
>>>       0xFE-0xFF: Experimental
>>>    END
>>>    NEW
>>>       This draft defines the following Next Protocol values:
>>> 
>>>       0x1 : IPv4
>>>       0x2 : IPv6
>>>       0x3 : Ethernet
>>>       0x4: NSH
>>>       0x5: MPLS
>>>       0x6: Active OAM
>>> 
>>> 
>>> As per above I do not believe there's a single OAM protocol.
>>> 
>>> 
>>>       0x7-0xFD: Unassigned
>>>       0xFE-0xFF: Experimental
>>>    END
>>> 
>>>    And, consequently, section 13.2.5 in IANA Considerations section
>>>    will request allocation of value 0x6 to be assigned to Active OAM
>>>    protocols.
>>> 
>>>    Greatly appreciate your consideration and comments.
>>> 
>>> 
>>> 
>>> My €0.02.
>>> 
>>> Thanks,
>>> 
>>> Carlos.
>>> 
>>> 
>>>                    Regards,
>>>                                    Greg
>>> 
>>> 
>>>    _______________________________________________
>>>    Rtg-ooam-dt mailing list
>>>    Rtg-ooam-dt@ietf.org <mailto:Rtg-ooam-dt@ietf.org>
>>>    https://www.ietf.org/mailman/listinfo/rtg-ooam-dt
>>> 
>> 
>> 
>> 
>> _______________________________________________
>> sfc mailing list
>> sfc@ietf.org
>> https://www.ietf.org/mailman/listinfo/sfc
>>