Re: [Dime] DOIC M-Bit usage (was Re: WLGC #2 for draft-ietf-dime-ovli-06)

Ben Campbell <ben@nostrum.com> Fri, 23 January 2015 15:13 UTC

Return-Path: <ben@nostrum.com>
X-Original-To: dime@ietfa.amsl.com
Delivered-To: dime@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 48AB31A90F2 for <dime@ietfa.amsl.com>; Fri, 23 Jan 2015 07:13:05 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.91
X-Spam-Level:
X-Spam-Status: No, score=-1.91 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, T_RP_MATCHES_RCVD=-0.01] autolearn=ham
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 5-HbY-qr_PzI for <dime@ietfa.amsl.com>; Fri, 23 Jan 2015 07:13:03 -0800 (PST)
Received: from nostrum.com (raven-v6.nostrum.com [IPv6:2001:470:d:1130::1]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 3C5BA1A90EB for <dime@ietf.org>; Fri, 23 Jan 2015 07:13:02 -0800 (PST)
Received: from [10.0.1.23] (cpe-173-172-146-58.tx.res.rr.com [173.172.146.58]) (authenticated bits=0) by nostrum.com (8.14.9/8.14.7) with ESMTP id t0NFCua5010460 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Fri, 23 Jan 2015 09:12:57 -0600 (CST) (envelope-from ben@nostrum.com)
X-Authentication-Warning: raven.nostrum.com: Host cpe-173-172-146-58.tx.res.rr.com [173.172.146.58] claimed to be [10.0.1.23]
Content-Type: text/plain; charset="us-ascii"
Mime-Version: 1.0 (Mac OS X Mail 8.1 \(1993\))
From: Ben Campbell <ben@nostrum.com>
In-Reply-To: <5BCBA1FC2B7F0B4C9D935572D90006681523FC6A@DEMUMBX014.nsn-intra.net>
Date: Fri, 23 Jan 2015 09:12:56 -0600
X-Mao-Original-Outgoing-Id: 443718776.246937-d4f87098103d09b03f45704b2bd399b9
Content-Transfer-Encoding: quoted-printable
Message-Id: <E72C1B92-4B57-4F2E-A910-23FE07013364@nostrum.com>
References: <54B5399D.3020600@gmail.com> <AEE2E3C8-9ADF-4D0F-9793-B1F15A0EFDBA@nostrum.com> <54BEA19E.80309@usdonovans.com> <444F5015-38E2-4D19-A5F8-EBC32BAD38F6@nostrum.com> <54BEC3E7.40703@usdonovans.com> <54C10B60.7010405@usdonovans.com> <087A34937E64E74E848732CFF8354B92098ADD13@ESESSMB101.ericsson.se> <56CE9F81-1BE9-489A-9C80-52D0DBAD2609@nostrum.com> <5BCBA1FC2B7F0B4C9D935572D90006681523FC6A@DEMUMBX014.nsn-intra.net>
To: "Wiehe, Ulrich (NSN - DE/Munich)" <ulrich.wiehe@nsn.com>
X-Mailer: Apple Mail (2.1993)
Archived-At: <http://mailarchive.ietf.org/arch/msg/dime/8tAVHgT1APprq_Pmda7lZZuWNx0>
Cc: "dime@ietf.org" <dime@ietf.org>
Subject: Re: [Dime] DOIC M-Bit usage (was Re: WLGC #2 for draft-ietf-dime-ovli-06)
X-BeenThere: dime@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Diameter Maintanence and Extentions Working Group <dime.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/dime>, <mailto:dime-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/dime/>
List-Post: <mailto:dime@ietf.org>
List-Help: <mailto:dime-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/dime>, <mailto:dime-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 23 Jan 2015 15:13:05 -0000

> On Jan 23, 2015, at 3:28 AM, Wiehe, Ulrich (NSN - DE/Munich) <ulrich.wiehe@nsn.com> wrote:
> 
> Ben,
> 
> for my clarification:
> this issue seems to be a general thing and not related specifically to DOIC. 
> 
> Any potential modification, addition, clarification,... would not impact DOIC but RFC6733.
> Is this the correct understanding?

Not really. I think the way 6733 describes things was as intended for the general case. It's there so that the recipient doesn't have to recurse all the way through a bunch of nested group AVPs just to make sure there aren't any M-bits set.  

DOIC is unusual here, in that we are piggybacking info onto an existing application. We don't want to induce a failure in that application because of an error in DOIC.


> 
> Ulrich
> 
> -----Original Message-----
> From: DiME [mailto:dime-bounces@ietf.org] On Behalf Of ext Ben Campbell
> Sent: Thursday, January 22, 2015 10:34 PM
> To: Maria Cruz Bartolome
> Cc: dime@ietf.org
> Subject: [Dime] DOIC M-Bit usage (was Re: WLGC #2 for draft-ietf-dime-ovli-06)
> 
> Signed PGP part
> 
> On Jan 22, 2015, at 10:41 AM, Maria Cruz Bartolome <maria.cruz.bartolome@ericsson.com> wrote:
> 
> A) About 'M' bit:
> 
> My understanding of RFC6733:
> 
>      The 'M' bit, known as the Mandatory bit, indicates whether the
>      receiver of the AVP MUST parse and understand the semantics of the
>      AVP including its content.  The receiving entity MUST return an
>      appropriate error message if it receives an AVP that has the M-bit
>      set but does not understand it.  An exception applies when the AVP
>      is embedded within a Grouped AVP.  See Section 4.4 for details.
> 
>       4.4:
>   Receivers of a Grouped AVP that
>   does not have the 'M' (mandatory) bit set and one or more of the
>   encapsulated AVPs within the group has the 'M' (mandatory) bit set
>   MAY simply be ignored if the Grouped AVP itself is unrecognized.  The
>   rule applies even if the encapsulated AVP with its 'M' (mandatory)
>   bit set is further encapsulated within other sub-groups, i.e., other
>   Grouped AVPs embedded within the Grouped AVP.
> 
> 
> If the Grouped AVP does not have the 'M' bit set, but one (or more) of its sub-AVPs do have it, then the grouped AVP may be ignored (instead of sending an error) if the Grouped AVP itself is "unrecognized"
> But what "unrecognized" mean in this context? In my opinion, the grouped AVP is not recognized as long as mandatory sub-AVPs are missed, this includes conditionally mandatory (up to negotiation) sub AVPs.
> Then I would proposed a variant to your proposal 2 below:
> 
> That's not what "unrecognized" typically means in IETF specs. The common usage is to mean that the recipient doesn't recognize it, or doesn't know what it means. This is  distinct from "malformed" meaning it wasn't constructed correctly.  Missing mandatory sub-AVPs would fall into the "malformed" category, not the "unrecognized" category. .
> By definition, a DOIC cannot claim OC-Supported-Features or OC-OLR as unrecognized.
> 
> 
> 3) sub-AVPs of DOIC grouped AVPs MUST NOT  have the m-bit set unless the sub-avp is mandatory or conditionally mandatory (i.e. part of an extension explicitly negotiated in the feature vector).
> 
> Also, the M-bit doesn't mean the avp is mandatory to be present, just mandatory to be understood. By definition, you can't set the M-bit on an AVP that is not actually there.  (Other things may make it mandatory to be present, such as the feature or application definition, but that still doesn't necessarily mean it's mandatory to understand.) It's also possible that some new feature will involve an AVP that is not there all the time, but mandatory to understand when it is there..
> 
> 
> 
> _______________________________________________
> DiME mailing list
> DiME@ietf.org
> https://www.ietf.org/mailman/listinfo/dime