Re: [Dime] [dime] #29: OC-Sequence-Number in OC-Supported-Features

Jouni Korhonen <jouni.nospam@gmail.com> Fri, 07 February 2014 08:01 UTC

Return-Path: <jouni.nospam@gmail.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 BBE131A0058 for <dime@ietfa.amsl.com>; Fri, 7 Feb 2014 00:01:37 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2
X-Spam-Level:
X-Spam-Status: No, score=-2 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, SPF_PASS=-0.001] 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 idTkUoTzEOhJ for <dime@ietfa.amsl.com>; Fri, 7 Feb 2014 00:01:35 -0800 (PST)
Received: from mail-lb0-x22f.google.com (mail-lb0-x22f.google.com [IPv6:2a00:1450:4010:c04::22f]) by ietfa.amsl.com (Postfix) with ESMTP id E40211A027D for <dime@ietf.org>; Fri, 7 Feb 2014 00:01:34 -0800 (PST)
Received: by mail-lb0-f175.google.com with SMTP id p9so2336874lbv.20 for <dime@ietf.org>; Fri, 07 Feb 2014 00:01:32 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=content-type:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=njHOf4ctb7uRzo9JBI55R0TJSlIw/kYCpDEGrVh40dM=; b=P3mQ+qombkngQ88vEj6U1DmIHHQXdWLD9U3pfPSRiXRNyLoNZpc5XZL1jC++yLT9Sb Hv0FJi3aWnvHA4YqdtE2kHiIqWlEZtU0iQvECQMv4zPFqIj/BThPMJ2tlaKNXeXLLYln 5Cs1IDSbvAj+QLHvy1mMDtszcjUwPFdJBobmhXH28ml+3IEDfOoScOBOrjzoBCwDsTC7 r4lt8oL4VymgvQEaAGQ3JSlVSYfDvXjeYZqbCJN/hhkS2u18+kWSJi32GZ3kkoci3DTa 3JCXxSzfo9Rvygc2YAaAO7OzitoSZS3zSppqkJUSEu7aah6hyS9xs6ZyOVwl8Tirxyeu zlkg==
X-Received: by 10.152.27.100 with SMTP id s4mr9090907lag.18.1391760092744; Fri, 07 Feb 2014 00:01:32 -0800 (PST)
Received: from [192.168.250.18] ([194.100.71.98]) by mx.google.com with ESMTPSA id qx7sm3962307lbb.9.2014.02.07.00.01.19 for <multiple recipients> (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Fri, 07 Feb 2014 00:01:19 -0800 (PST)
Content-Type: text/plain; charset="us-ascii"
Mime-Version: 1.0 (Mac OS X Mail 6.6 \(1510\))
From: Jouni Korhonen <jouni.nospam@gmail.com>
In-Reply-To: <074.f935b422e3c04ea6cc7d5a8fbf9fb3b3@trac.tools.ietf.org>
Date: Fri, 07 Feb 2014 10:01:20 +0200
Content-Transfer-Encoding: quoted-printable
Message-Id: <78300994-0C77-47B5-B28E-D03048916AF3@gmail.com>
References: <074.f935b422e3c04ea6cc7d5a8fbf9fb3b3@trac.tools.ietf.org>
To: dime@ietf.org
X-Mailer: Apple Mail (2.1510)
Cc: lionel.morand@orange-ftgroup.com
Subject: Re: [Dime] [dime] #29: OC-Sequence-Number in OC-Supported-Features
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, 07 Feb 2014 08:01:37 -0000

Finally catching up with these.. see inline.


On Feb 4, 2014, at 10:46 AM, dime issue tracker <trac+dime@trac.tools.ietf.org> wrote:

> #29: OC-Sequence-Number in OC-Supported-Features
> 
> According to the current definition of the OC-Supported-Features AVP in
> the -01 draft, the OC-Supported-Features AVP contains an OC-Sequence-
> Number AVP.
> The author of this document believes that OC-Sequence-Number within OC-
> Supported-Feature is  not needed, is useless and could be misleading and
> therefore proposes to remove OC-Sequence-Number from OC-Supported-Feature.
> 
> The -01 draft says in clause 4.1:
>    The OC-Sequence-Number AVP is used to indicate whether the contents
>    of the OC-Supported-Features AVP has changed since last time the node
>    included the OC-Supported-Features AVP (see Section 4.4).  Although
>    sending the OC-Sequence-Number AVP is mandatory in the OC-Supported-
>    Features AVP, the receiving node MAY always choose to ignore the
>    sequence number if it can determine the feature support changes
>    otherwise.
> 
> The text seems to imply that the reporting DOIC endpoint, when receiving
> an application request message that contains an OC-Supported-Features AVP,
> needs to determine whether a feature support change occured (either by
> checking the value of the received sequence-number (probably) against a
> stored value, or by other unspecified means). However,  this is not
> correct. The reporting DOIC endpoint may  ignore the sequence-number even
> if it cannot determine whether or not a feature support change occured:
> The reporting DOIC endpoint simply takes the value of the OC-Feature-
> Vector as received in the request  into account (if absent the default
> value applies) when processing the request.  There is no need for the
> reporting DOIC endpoint to know whether a previous request contained the
> same or a different value in OC-Feature-Vector, i.e. whether there was a
> recent change.

This is true for the current default algorithm. May not be true in the
future. Note, in IETF space versioning Diameter applications is not that
straight forward as in 3GPP, thus I would rather have forward looking
solution, even if that in places would mean "placeholder" AVPs.

> It has been argued that the reporting DOIC endpoint may (optionally)
> benefit from the presence of a Sequence-Number within OC-Supported-
> Features: The reporting DOIC endpoint may have stored the Sequence-Number
> and Feature-Vector as received in a previous request, and when receiving a
> new request the reporting DOIC endpoint would compare the received
> Sequence-Number from the new request  with the stored Sequence-Number;  If
> they match (i.e. no change of supported features occured) the reporting
> DOIC endpoint would ignore the received Feature-Vector from the new
> request and use the stored Feature-Vector for further processing; if they
> don't match (i.e. a change of supported features occured), the reporting
> DOIC endpoint would update the stored Sequence-Number and Feature-Vector
> with the received values from the new request and use the updated Feature-
> Vector for further processing. While it is debatable whether the described
> usecase is reasonable, the following issues have not been addressed:
> In configurations where the client does not support DOIC, an agent (A1) on
> a path from client to reporting DOIC endpoint (e.g. server) may take the
> role of a reacting DOIC endpoint and insert an OC-Supported-Features AVP
> in the (first) request message indicating its supported features.  A
> subsequent request message sent from the same client to the same server
> may take another path on which another agent (A2) takes the role of the
> reacting DOIC endpoint. A2 then inserts an OC-Supported-Features AVP in
> the subsequent request message indicating its supported features (which
> may be different from A1's supported features but may have the same
> sequence number).  Since the reporting DOIC endpoint (e.g.server) - when

Since seq-no is NTP time, this would not happen, excluding cases
where clocks either in A1 or A2 are wrong. But that is a different
issue then..

> receiving the subsequent request - cannot know whether the the reacting
> DOIC endpoint that inserted the OC-Supported-Features AVP in the
> subsequent request is identical to or different from the reacting DOIC
> endpoint that inserted the OC-Supported-Features AVP in the first request,

Right.

> it may frequently occure that the reporting DOIC endpoint receives request
> messages containing an OC-Supported-Features AVP with a Sequence-Number
> valuelower than the stored value (which may be interpreted as error), or
> equal to the stored value but with a different associated Feature Vector,
> or higher than the stored value but unmodified Feature Vector.

See the above comment on the NPT.

> In summary, the Sequence-Number within OC-Supported-Features is of no
> earthly use since the reporting DOIC endpoint cannot associate a received
> Sequence-Number (within OC-Supported-Features) with the identity of the
> reacting DOIC endpoint that sent the Sequence-Number.  Even when such
> association was possible by enhancing the OC-Supported-Features AVP with
> the Diameter Identity of the reacting DOIC endpoint that generated the
> Sequence-Number,  it would still simply not be needed as the reporting
> DOIC endpoint can base its processing on the received Feature-Vector
> (rather than on a stored Feature Vector).

I buy the reasoning for the lack of binding between the reacting node
identity and the supported features AVP.

However, we should not assume that _all_ implementations will behave
as expected above i.e. not storing the feature vector.

> It is therefore proposed to remove the OC-Sequence-Number AVP from the OC-
> Supported Features AVP.

I have no (more) strong view here. If folks are OK to remove
the seq-no, so be it.

- Jouni



> 
> -- 
> ----------------------------------------------+--------------------------
> Reporter:  lionel.morand@orange-ftgroup.com  |      Owner:  Ulrich Wiehe
>     Type:  defect                            |     Status:  new
> Priority:  major                             |  Milestone:
> Component:  draft-docdt-dime-ovli             |    Version:  2.0
> Severity:  Active WG Document                |   Keywords:
> ----------------------------------------------+--------------------------
> 
> Ticket URL: <http://trac.tools.ietf.org/wg/dime/trac/ticket/29>
> dime <http://tools.ietf.org/wg/dime/>
> 
> _______________________________________________
> DiME mailing list
> DiME@ietf.org
> https://www.ietf.org/mailman/listinfo/dime