Re: [Dime] RFC4006bis - Subscription-Id-Extension AVP

Misha Zaytsev <misha.zaytsev.rus@gmail.com> Mon, 20 February 2017 07:58 UTC

Return-Path: <misha.zaytsev.rus@gmail.com>
X-Original-To: dime@ietfa.amsl.com
Delivered-To: dime@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 05C801298C0 for <dime@ietfa.amsl.com>; Sun, 19 Feb 2017 23:58:18 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.699
X-Spam-Level:
X-Spam-Status: No, score=-2.699 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, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.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 FHVbWUwdZo4W for <dime@ietfa.amsl.com>; Sun, 19 Feb 2017 23:58:14 -0800 (PST)
Received: from mail-lf0-x22a.google.com (mail-lf0-x22a.google.com [IPv6:2a00:1450:4010:c07::22a]) (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 1087E1298C3 for <dime@ietf.org>; Sun, 19 Feb 2017 23:58:13 -0800 (PST)
Received: by mail-lf0-x22a.google.com with SMTP id g134so2296403lfe.1 for <dime@ietf.org>; Sun, 19 Feb 2017 23:58:12 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=9TyPSI7ls2TylPVQNMrkjej1joemcvOgyU16hG3ojNE=; b=ryWcwhC/6flmDMNCI1i+U/6nWIKAqeOTyY966uT6lmQ/1z4eW4mVsXwAdVUkzseMbz 79/vTRH3aGbsvMw3+aANzV2PjAnJOKZFBnIKU4ti+l1JqBbFifan7hYJh/FuEAEHmUaV 7gTAE10pSP5BpZNl82Zf+pVdBwGwvd8h8n1NwxlBPknP0yQtfQk9J+qmW8lyguM6+ID1 lZ1DtOzAyX2j5xAG5ksUSIeAeIn+J9rvpYiIblzguHhCDVj1zU7PS6eos/6Z6Di/EK01 9L2OTnFeSTxNkKUVwFV/WQMeH72sEcBvOkoVRixfk6hC8QG+qgmrJD/mIEtcWKVGoSNa 5qrQ==
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=9TyPSI7ls2TylPVQNMrkjej1joemcvOgyU16hG3ojNE=; b=JKq9/5bdzRoxuG0vgTc1EzWTLSW2nlAQc3MpuLP29j4ejKBrXJDqcycaiyJBhzV9LL vmFs695dVWlQ6XcDLkkQuHg/WzKDCep2WZWwNk9GAXsTnLqBbykR2BDF8xvesejHyZLC Fvij2jZldRIejQRQwHvlZBaBatEO/PEfMyTxx4ZvlI/p+u/35QRgZVzDqW/QeWs4W1X9 OkuU4KHzbJpROCiatZ7co7IatqG0ohXDXLZdC30iT3NAzCRGUGKIbQ7ZXqKv9f4kxN3k 0Fp2GA3U1+IIJZfbaUZAHPAkeM7xiFF6e0zcrupFLowBfcLqAo+vhlx95FHz5Iz9E/8k DSgA==
X-Gm-Message-State: AMke39lJnzhXqRm79RUBJZn4biNYNKPL+BI2F3f6Lu6hEyRC0hzeVipS+Ob+e/af5VKVOvmVa75WAc61GHzQSA==
X-Received: by 10.25.29.211 with SMTP id d202mr2137546lfd.152.1487577490987; Sun, 19 Feb 2017 23:58:10 -0800 (PST)
MIME-Version: 1.0
Received: by 10.25.92.1 with HTTP; Sun, 19 Feb 2017 23:58:10 -0800 (PST)
In-Reply-To: <C43C255C7106314F8D13D03FA20CFE497004130B@wtl-exchp-1.sandvine.com>
References: <C43C255C7106314F8D13D03FA20CFE497000AF59@wtl-exchp-1.sandvine.com> <HE1PR0701MB28573F830861577D13DBC916FC750@HE1PR0701MB2857.eurprd07.prod.outlook.com> <C43C255C7106314F8D13D03FA20CFE497002AC18@wtl-exchp-1.sandvine.com> <CABPQr243oqJxrC52+FAJUaLv9K2aQEuO0sD8ouD49rr5kXR4xQ@mail.gmail.com> <C43C255C7106314F8D13D03FA20CFE497002D184@wtl-exchp-1.sandvine.com> <CABPQr24Y79vFg=ZW=xAPDi5NgBah2Mk2=ai0GzRg-zA5Z75-Gw@mail.gmail.com> <C43C255C7106314F8D13D03FA20CFE497002DB6B@wtl-exchp-1.sandvine.com> <CABPQr25sj_G-PN6aowSrbGfeYs_Wa-tNtmzsndXA+=Ca4U4qxw@mail.gmail.com> <CABPQr27D=Bga1by0c2+B=x5ZaE_a20GhL=R9h=QYagQE_+Nqqg@mail.gmail.com> <C43C255C7106314F8D13D03FA20CFE49700334DE@wtl-exchp-1.sandvine.com> <HE1PR0701MB2857C1123305ABCF88BD295BFC420@HE1PR0701MB2857.eurprd07.prod.outlook.com> <C43C255C7106314F8D13D03FA20CFE4970038B30@wtl-exchp-1.sandvine.com> <HE1PR0701MB28578B05AAA4390541E22F54FC590@HE1PR0701MB2857.eurprd07.prod.outlook.com> <C43C255C7106314F8D13D03FA20CFE497003A6FE@wtl-exchp-1.sandvine.com> <C43C255C7106314F8D13D03FA20CFE497003F238@wtl-exchp-1.sandvine.com> <HE1PR0701MB285704FE40A25057A8921300FC5A0@HE1PR0701MB2857.eurprd07.prod.outlook.com> <CABPQr250Kj02_DvMvwjou0LqtQX5RyO6ceUVs-c_kksmQZDgDA@mail.gmail.com> <C43C255C7106314F8D13D03FA20CFE497003FA03@wtl-exchp-1.sandvine.com> <CABPQr26eMg=zgaU+J4xgc==JX+CNW=8XOUO1uLN+FBHknV7pow@mail.gmail.com> <C43C255C7106314F8D13D03FA20CFE4970041192@wtl-exchp-1.sandvine.com> <CABPQr27QoMeCZP1ZDKPzXvBx5+a1XkBMNBchb+4dsF17i+fk5g@mail.gmail.com> <C43C255C7106314F8D13D03FA20CFE497004130B@wtl-exchp-1.sandvine.com>
From: Misha Zaytsev <misha.zaytsev.rus@gmail.com>
Date: Mon, 20 Feb 2017 10:58:10 +0300
Message-ID: <CABPQr260AzHA8KEgFZb2MQ5d65Q_azDwtS0KSsFh28BwCkG4Lw@mail.gmail.com>
To: Yuval Lifshitz <ylifshitz@sandvine.com>
Content-Type: multipart/alternative; boundary="001a11401c4ced22940548f19fd1"
Archived-At: <https://mailarchive.ietf.org/arch/msg/dime/U_FWqyGt09kp-ndVro665vqBy-M>
Cc: "dime@ietf.org" <dime@ietf.org>, "Gardella, Maryse (Nokia - FR)" <maryse.gardella@nokia.com>
Subject: Re: [Dime] RFC4006bis - Subscription-Id-Extension AVP
X-BeenThere: dime@ietf.org
X-Mailman-Version: 2.1.17
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: <https://mailarchive.ietf.org/arch/browse/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: Mon, 20 Feb 2017 07:58:18 -0000

Hi Yuval,

Here is my version of the Subscription-Id-Extension:

8.58.  Subscription-Id-Extension AVP



   The Subscription-Id-Extension AVP (AVP Code TBD7) is used to identify

   the end user's subscription and is of type Grouped.  The

   Subscription-Id-Extension AVP contains an included AVP holding the

   subscription identifier itself.  The type of this included AVP

   indicates the type of the subscription identifier. The existing
identifier types are listed in the Subscription-Id-Type

   AVP.



then the credit-control client SHOULD send the information in

   the Subscription-Id AVP, in addition to or instead of the

   Subscription-Id-Extension AVP.  If the Subscription-Id-Extension is sent
alongside

   the Subscription-Id AVP, its M-bit SHOULD NOT be set. This is in order

   to preserve backward compatibility with credit-control servers that
support only RFC4006.

   When a credit control server that supports both
Subscription-Id-Extension AVP

   and Subscription-Id AVP receives both AVPs, it SHOULD ignore the
Subscription-Id AVP.

   If the type of the identifier is not one of the types listed in the
Subscription-Id-Type

   AVP, the credit-control client MAY send the Subscription-Id-Extension
AVP

   with the M-bit set, causing a credit control server that supports

   RFC4006 only, to reply with DIAMETER_AVP_UNSUPPORTED. The credit

   control client MAY send the Subscription-Id-Extension AVP without
the M-bit set,

   in this case, an RFC4006 only credit control server, SHOULD ignore the

   Subscription-Id-Extension AVP.

   Exactly one AVP MUST be included inside the Subscription-Id-Extension

   AVP.



   It is defined as follows (per the grouped-avp-def of [RFC6733]):



         Subscription-Id-Extension ::= < AVP Header: TBD7 >

                             [ Subscription-Id-E164 ]

                             [ Subscription-Id-IMSI ]

                             [ Subscription-Id-SIP-URI ]

                             [ Subscription-Id-NAI ]

                             [ Subscription-Id-Private ]

                            *[ AVP ]


2017-02-19 14:03 GMT+03:00 Yuval Lifshitz <ylifshitz@sandvine.com>:

> Hi Misha,
>
> The spec has to be written in backward compatible manner, but giving the
> implementer the freedom on whether to do that or not, would make adoption
> of it easier. Note that, in case of DCCA, most actual implementations are
> not based directly on it. They are based on 3GPP TS 32.299, which sometimes
> modifies the IETF spec, and may decide to treat compatibility differently
> (3GPP release a major revision to their spec almost every year).
>
> Anyway, would appreciate if you send over your description of the AVP.
>
>
>
> Best Regards,
>
>
>
> Yuval
>
>
>
> *From:* Misha Zaytsev [mailto:misha.zaytsev.rus@gmail.com]
> *Sent:* Sunday, February 19, 2017 11:38 AM
>
> *To:* Yuval Lifshitz
> *Cc:* Gardella, Maryse (Nokia - FR); dime@ietf.org
> *Subject:* Re: [Dime] RFC4006bis - Subscription-Id-Extension AVP
>
>
>
> Hi Yuval,
>
>
>
> Thanks for the clarifications!
>
>
>
> In my head backward compatibility of CC server is a MUST - that's why I
> would follow the specified way.
>
> At least I would keep BC where possible with minimal efforts. In this
> particular case keeping BC seems natural for me.
>
>
>
> But if new spec has another intention, then you will have to consider
> where both legacy and future proof AVPs (carrying old and new types) may be
> included in the message.
>
>
>
> If you want, I could present my version of new AVP description, but I
> think you have all already to do it yourself :)
>
> Sometimes, I just noticed that it is useful to propose your view, since
> the formulations is of a matter or preference.
>
> In this case I think that only idea may be a matter of discussion (while
> it looks we have just come to agreement).
>
>
>
> Best regards,
>
>
>
> /Misha
>
>
>
> 2017-02-19 12:02 GMT+03:00 Yuval Lifshitz <ylifshitz@sandvine.com>:
>
> Hi Misha,
>
> If the spec says that the CC client has to send the Subscription-Id AVP
> for the existing types and Subscription-Id-Extension AVP for the new types,
> then the CC server will have to support both AVPs even if backward
> compatibility is not needed.
>
> Once the new spec is widely adopted, a CC server implementation could have
> a configuration parameter indicating that RFC4006-only CC clients are not
> supported anymore. In this case the Subscription-Id AVP will not be needed
> anymore, since the old types could be sent using the new AVP.
>
>
>
> Hope this clarify,
>
>
>
> Yuval
>
>
>
> *From:* Misha Zaytsev [mailto:misha.zaytsev.rus@gmail.com]
> *Sent:* Saturday, February 18, 2017 10:47 AM
>
>
> *To:* Yuval Lifshitz
> *Cc:* Gardella, Maryse (Nokia - FR); dime@ietf.org
> *Subject:* Re: [Dime] RFC4006bis - Subscription-Id-Extension AVP
>
>
>
> Hi Yuval,
>
>
>
> Thanks for your comments! But could you clarify this point?
>
>
>
> *[yuval] this simplifies the spec, but make it harder to implement. We
> should allow implementation of client server that uses the new AVP for the
> old types*
>
>
>
> What is the reason behind this? Why does it make harder to implement.
> Why should we allow to use new AVP for old types if this new AVP is future
> proof (for future use)?
>
>
>
> Thanks in advance!
>
>
>
> /Misha
>
>
>
>
>
> 2017-02-17 16:20 GMT+03:00 Yuval Lifshitz <ylifshitz@sandvine.com>:
>
> *inline*
>
>
>
> *From:* Misha Zaytsev [mailto:misha.zaytsev.rus@gmail.com]
> *Sent:* Friday, February 17, 2017 11:13 AM
> *To:* Gardella, Maryse (Nokia - FR)
> *Cc:* Yuval Lifshitz; dime@ietf.org
> *Subject:* Re: [Dime] RFC4006bis - Subscription-Id-Extension AVP
>
>
>
> Hi Yuval,
>
>
>
> To be honest, I find the Subscription-ID-Extension AVP description is a
> bit messy and hard to understand.
>
>
>
> Let me formulate the principles I would follow when describing it:
>
>
>
> - For old types the legacy Subscription-Id AVP (with M-bit set) SHOULD be
> used when communicating with both RFC4006 and/or RFC4006bis server. That
> will ensure a backward compatibility.
>
> *[yuval] this simplifies the spec, but make it harder to implement. We
> should allow implementation of client server that uses the new AVP for the
> old types*
>
>
>
> - For new types the newly defined Subscription-Id-Extension AVP (with
> M-bit set) SHOULD be used as a future proof one.
>
> Thus, only RFC4006bis server will handle this AVP, while the legacy one
> will reply with AVP_UNSUPPORTED answer.
>
> *[yuval] agree*
>
>
>
>
>
> All in all, future proof AVP - for future use, the legacy AVP - to keep BC.
>
> This interpretation will avoid any "playing" with M-bit and exclude
> potential new and legacy AVPs combinations from consideration.
>
> *[yuval] same comment as above – this makes it easier to implement*
>
>
>
> /Misha
>
>
>
>
>
> 2017-02-16 21:24 GMT+03:00 Gardella, Maryse (Nokia - FR) <
> maryse.gardella@nokia.com>:
>
> Hi Yuval,
>
>
>
> I think it is not needed to add text for the server side:  the text blue
> highlighted, this should be governed by M-bit Rule
>
>
>
> 1)      For
>
> If the Subscription-Id-Extension is sent alongside
>
>    the Subscription-Id AVP, its M-bit SHOULD NOT be set.
>
>       Is it clear that only the Subscription-Id-Extension should not have
> the M-bit set?
>
>
>
> 2) For new Types my proposal was to always have the M-bit set (I am not
> sure we can have scenario with new subscription types which can be handled
> by RFC4006 servers)
>
>
>
> If the type of the identifier is not one of the types listed in the
> Subscription-Id-Type
>
>    AVP, the credit-control client MAY send the Subscription-Id-Extension
> AVP
>
>    with the M-bit set, causing a credit control server that supports
>
>    RFC4006 only, to reply with DIAMETER_AVP_UNSUPPORTED. The credit
>
>    control client MAY send the Subscription-Id-Extension AVP without the M-bit set,
>
>    in this case, an RFC4006 only credit control server, SHOULD ignore the
>
>    Subscription-Id-Extension AVP.
>
>
>
>   To have:
>
>
>
> If the type of the identifier is not one of the types listed in the
> Subscription-Id-Type
>
>    AVP, the credit-control client SHOULD send the
> Subscription-Id-Extension AVP
>
>    with the M-bit set.
>
>
>
> 3) I also have an issue with:
>
>
>
> Exactly one AVP MUST be included inside the Subscription-Id-Extension
>
>    AVP.
>
>   And this is a more general comment to the text: there may be multiple
>  *[ Subscription-Id ], therefore more than one AVP can be present in
> Subscription-Id-Extension
>
>
>
>
>
> Thanks
>
> Maryse
>
>
>
> *From:* Yuval Lifshitz [mailto:ylifshitz@sandvine.com]
> *Sent:* jeudi 16 février 2017 17:41
>
> *To:* Gardella, Maryse (Nokia - FR) <maryse.gardella@nokia.com>; Misha
> Zaytsev <misha.zaytsev.rus@gmail.com>
> *Cc:* dime@ietf.org; Yuval Lifshitz <ylifshitz@sandvine.com>
> *Subject:* RE: [Dime] RFC4006bis - Subscription-Id-Extension AVP
>
>
>
> Any comment on the text below?
>
> If none, I’ll just move ahead with the changes.
>
>
>
> *From:* Yuval Lifshitz
> *Sent:* Monday, February 13, 2017 9:03 PM
> *To:* Gardella, Maryse (Nokia - FR); Misha Zaytsev
> *Cc:* dime@ietf.org; Yuval Lifshitz
> *Subject:* RE: [Dime] RFC4006bis - Subscription-Id-Extension AVP
>
>
>
> The clarification makes sense. Hopefully the text didn’t became too
> cumbersome - please let me know if you think I should remove any of the
> text.
>
> Following modified text includes clarifications on the topic of the M-bit
> as well as sending multiple AVPs.
>
>
>
> 8.58.  Subscription-Id-Extension AVP
>
>
>
>    The Subscription-Id-Extension AVP (AVP Code TBD7) is used to identify
>
>    the end user's subscription and is of type Grouped.  The
>
>    Subscription-Id-Extension AVP contains an included AVP holding the
>
>    subscription identifier itself.  The type of this included AVP
>
>    indicates the type of the subscription identifier.  If the type of
>
>    the identifier is one of the types listed in the Subscription-Id-Type
>
>    AVP, then the credit-control client SHOULD send the information in
>
>    the Subscription-Id AVP, in addition to or instead of the
>
>    Subscription-Id-Extension AVP.  If the Subscription-Id-Extension is
> sent alongside
>
>    the Subscription-Id AVP, its M-bit SHOULD NOT be set. This is in order
>
>    to preserve backward compatibility with credit-control servers that
> support only RFC4006.
>
>    When a credit control server that supports both
> Subscription-Id-Extension AVP
>
>    and Subscription-Id AVP receives both AVPs, it SHOULD ignore the
> Subscription-Id AVP.
>
>    If the type of the identifier is not one of the types listed in the
> Subscription-Id-Type
>
>    AVP, the credit-control client MAY send the Subscription-Id-Extension
> AVP
>
>    with the M-bit set, causing a credit control server that supports
>
>    RFC4006 only, to reply with DIAMETER_AVP_UNSUPPORTED. The credit
>
>    control client MAY send the Subscription-Id-Extension AVP without the M-bit set,
>
>    in this case, an RFC4006 only credit control server, SHOULD ignore the
>
>    Subscription-Id-Extension AVP.
>
>    Exactly one AVP MUST be included inside the Subscription-Id-Extension
>
>    AVP.
>
>
>
>    It is defined as follows (per the grouped-avp-def of [RFC6733]):
>
>
>
>          Subscription-Id-Extension ::= < AVP Header: TBD7 >
>
>                              [ Subscription-Id-E164 ]
>
>                              [ Subscription-Id-IMSI ]
>
>                              [ Subscription-Id-SIP-URI ]
>
>                              [ Subscription-Id-NAI ]
>
>                              [ Subscription-Id-Private ]
>
>                             *[ AVP ]
>
>
>
>
>
> *From:* Gardella, Maryse (Nokia - FR) [mailto:maryse.gardella@nokia.com
> <maryse.gardella@nokia.com>]
> *Sent:* Monday, February 13, 2017 7:19 PM
> *To:* Yuval Lifshitz; Misha Zaytsev
> *Cc:* dime@ietf.org
> *Subject:* RE: [Dime] RFC4006bis - Subscription-Id-Extension AVP
>
>
>
> Hi Yuval,
>
>
>
> I now realize the problem I have with the behavior for the RFC4006bis CC
> server, is more due to missing statements on the RFC4006bis CC client side
> (e.g. to allow this “robustness principle”).
>
> May be adding a clarification that when only old type(s) are needed to be
> sent, the CC client should send both: multiple Subscription-Id AVPs and
> corresponding multiple entries of Subscription-Id-Extension AVP, so that
> the RFC4006bis CC sever can decide to consider Subscription-Id-Extension
> AVP only when both are received. Do you think this could be added although
> it looks a bit heavy?
>
>
>
> BR
>
> Maryse
>
>
>
>
>
> *From:* Yuval Lifshitz [mailto:ylifshitz@sandvine.com
> <ylifshitz@sandvine.com>]
> *Sent:* dimanche 12 février 2017 08:19
> *To:* Gardella, Maryse (Nokia - FR) <maryse.gardella@nokia.com>; Misha
> Zaytsev <misha.zaytsev.rus@gmail.com>
> *Cc:* dime@ietf.org; Yuval Lifshitz <ylifshitz@sandvine.com>
> *Subject:* RE: [Dime] RFC4006bis - Subscription-Id-Extension AVP
>
>
>
> *inline*
>
>
>
> *From:* Gardella, Maryse (Nokia - FR) [mailto:maryse.gardella@nokia.com
> <maryse.gardella@nokia.com>]
> *Sent:* Wednesday, February 08, 2017 12:47 PM
> *To:* Yuval Lifshitz; Misha Zaytsev
> *Cc:* dime@ietf.org
> *Subject:* RE: [Dime] RFC4006bis - Subscription-Id-Extension AVP
>
>
>
> Hi Yuval,
>
>
>
> With the new Subscription-Id-Extension AVP to be marked with the M-bit as
> a “may”, the way I understand it :
>
>  -  For old types the CC Client would send both Subscription-Id and
> Subscription-Id-Extension AVPs: Subscription-Id with M-bit set and
> Subscription-Id-Extension with M-bit cleared, however the behavior for the
> RFC4006bis CC server when Subscription-Id-Extension is supported is unclear
> to me)
>
> *[yuval] will add following clarification: “RFC4006bis CC server receiving
> both Subscription-Id AVP and Subscription-Id-Extension AVP SHOULD ignore
> the Subscription-Id AVP.” IMO, this would be along the lines if the
> “robustness principal”*
>
>
>
> -  For new types the CC Client would send Subscription-Id-Extension AVP
> with M-bit set, so that RFC4006 and RFC4006bis server can reject by DIAMETER_AVP_UNSUPPORTED
> (5001) if not supported, would be the best approach.
>
> *[yuval] agree, will add clarification to the text*
>
>
>
> Maryse
>
>
>
>
>
> *From:* Yuval Lifshitz [mailto:ylifshitz@sandvine.com
> <ylifshitz@sandvine.com>]
> *Sent:* lundi 6 février 2017 21:31
> *To:* Misha Zaytsev <misha.zaytsev.rus@gmail.com>
> *Cc:* Gardella, Maryse (Nokia - FR) <maryse.gardella@nokia.com>;
> dime@ietf.org; Yuval Lifshitz <ylifshitz@sandvine.com>
> *Subject:* RE: [Dime] RFC4006bis - Subscription-Id-Extension AVP
>
>
>
> Hi Misha,
>
> RFC6733 gives the “{}” notation just as an example for a required AVP, it
> does not say it is the only trigger for the missing AVP error. There are
> AVPs that are marked as optional in ABNF, but are actually required in some
> cases (e.g. Termination-Cause AVP). Also, note that RFC4006 says:
>
> The Subscription-Id AVP SHOULD be included to identify the
>
>    end user in the credit-control server.
>
>
>
> Regardless of that, since it is not strictly defined in the spec I can
> rephrase my answer as:
>
> “
>
> In a case of a new type of subscription, not covered in RFC4006, the credit-control may send the new AVP with the M-bit set, causing any old server to reply with DIAMETER_AVP_UNSUPPORTED (5001). It may also send the new AVP without the M-bit set, here the server would just ignore the AVP, or, in the case that this AVP is required for its operation, reply with an error message (e.g. DIAMETER_MISSING_AVP)
>
> ”
>
>
>
> So far, I didn’t think the above clarification needs to be added to the
> spec, but I can add that if you and Maryse feel that it would make it
> easier to understand when to set the M-bit for these AVPs.
>
>
>
> Yuval
>
>
>
> *From:* Misha Zaytsev [mailto:misha.zaytsev.rus@gmail.com
> <misha.zaytsev.rus@gmail.com>]
> *Sent:* Monday, February 06, 2017 9:36 PM
> *To:* Yuval Lifshitz
> *Cc:* Gardella, Maryse (Nokia - FR); dime@ietf.org
> *Subject:* Re: [Dime] RFC4006bis - Subscription-Id-Extension AVP
>
>
>
> Hi Yuval,
>
>
>
> Just wondering what will be the outcome of this discussion?
>
> Have you concluded how it would be better to handle new future proof AVPs?
>
> If yes, are you going to update the draft with this info included?
>
>
>
> Thanks in advance!
>
>
>
> /Misha
>
>
>
>
>
> 2017-01-31 23:07 GMT+03:00 Misha Zaytsev <misha.zaytsev.rus@gmail.com>:
>
> Hi Yuval,
>
>
>
> I almost agree with your explanations that you sent to Maryse, except one
> bullet:
>
>
>
> In a case of a new type of subscription, not covered in RFC4006, it may
> send the new AVP with the M-bit set, causing any old server to reply with
> DIAMETER_AVP_UNSUPPORTED (5001). It may also send the new AVP without the
> M-bit set, here the server would just ignore the AVP, but would probably
> reply DIAMETER_MISSING_AVP (5005) as it will not have any subscription ID
>
>
>
> RFC4006 server should not reply with DIAMETER_MISSING_AVP (5005) result
> code according to RFC6733, since Subscription-Id AVP is *not* marked as
> required in CCR definition:
>
>
>
>       A received command that is missing AVPs that are defined as
>
>       required in the commands CCF; examples are AVPs indicated as
>
>       *{AVP}*.  The receiver issues an answer with the Result-Code set to
>
>       DIAMETER_MISSING_AVP and creates an AVP with the AVP Code and
>
>       other fields set as expected in the missing AVP.  The created AVP
>
>       is then added to the Failed-AVP AVP.
>
>
>
> The remaining part is according to the RFC6733 from my point of view.
>
>
>
> All in all, to set M-bit or not, depends on what reaction you want to see from RFC4006 server.
>
>
>
> /Misha
>
>
>
>
>
> 2017-01-30 11:29 GMT+03:00 Yuval Lifshitz <ylifshitz@sandvine.com>:
>
> Hi Misha,
>
> We didn’t consider the option of using a bitmap, but I’m open to this
> idea. IMO, it would be more difficult managing the addition of new values
> in the case of a bitmap than in the case of adding new AVPs.  OTOH, adding
> a bitmap will be less changes to the RFC.
>
> In our proposal the AVPs are marked as optional, and the M-bit **may** be
> set. I sent an explanation to Maryse on the M-bit – please see below, and
> let me know if you have comments on that.
>
> As ABNF cannot show the concept of “one and only one AVP” I will update
> the text to state that explicitly (added: https://github.com/lbertz02/
> rfc4006bis/issues/18)
>
>
>
> Yuval
>
>
>
> *From:* Misha Zaytsev [mailto:misha.zaytsev.rus@gmail.com]
> *Sent:* Sunday, January 29, 2017 8:21 PM
>
>
> *To:* Yuval Lifshitz
> *Cc:* Gardella, Maryse (Nokia - FR); dime@ietf.org
> *Subject:* Re: [Dime] RFC4006bis - Subscription-Id-Extension AVP
>
>
>
> Hi Yuval,
>
>
>
> Thanks a lot for your clarifications! Now it seems I see your concern.
>
>
>
> As I can see the problem is that there is no possibility to extend the
> defined AVPs of type Enumerated in a backward compatible way. For me it
> means that all enumerate AVPs defined in RFC4006 (listed in section 12) is
> a matter of your investigation. Not the grouped ones, but the ones that are
> used as indicators in these grouped AVPs.
>
>
>
> Following the recommendations in https://tools.ietf.org/
> html/rfc7423#section-5.6 that you pointed out, I think bitmask based AVPs
> may be a way out in the current situation. Such AVP will be marked as
> mandatory. While only one bit of this bitmask MUST be set.
>
>
>
>  Subscription-Id-Extension ::= < AVP Header: XXX >
>                              [ Subscription-Id-Type-Indicator ]
>                              [Subscrition-Id-Data]
>
>
> Have you considered this option? Or probably I'm missing something..
>
>
>
> However, if we follow the way you are proposing with several mutually
> exclusive AVPs, then these AVPs should be marked as not mandatory. While in
> the description of the appropriate grouped AVP it should be stated that
> only one of these AVPs MUST be present.
>
>
>
> /Misha
>
>
>
>
>
> 2017-01-29 11:29 GMT+03:00 Yuval Lifshitz <ylifshitz@sandvine.com>:
>
> Hi Misha,
> There is nothing “well known” in these issues and I’ll be happy to clarify!
>
> (1) During IETF96 a question came regarding the support of the IMEI user
> equipment type – currently not one of the enumerated types of the
> User-Equipment-Info-Type AVP (IMEISV is there but not IMEI). As a result of
> this discussion, and due to the enum extension limitations (see here:
> https://tools.ietf.org/html/rfc7423#section-5.6), we were asked to do an
> analysis on which enumerated AVPs requires extensibility. The results were
> captured in the following ticket: https://trac.ietf.org/trac/
> dime/ticket/95
> For better clarity I’m posting here the actual analysis of AVPs. Some of
> them didn’t need to be extensible (in our view), some of them were already
> extensible and the rest were added to the ticket:
>
>                      AVP  Section
>    Attribute Name    Code Defined Data Type
>    -----------------------------------------
>    CC-Money          413  8.22   Grouped    - not extensible, does not
> need to be
>    Cost-Information  423  8.7    Grouped    - not extensible, does not
> need to be
>    Final-Unit-       430  8.34   Grouped    - not extensible, will be
> replaced by QoS-Final-Unit-Indication that will be extensible
>      Indication
>    Granted-Service-  431  8.17   Grouped    - extensible
>      Unit
>    G-S-U-Pool-       457  8.30   Grouped    - not extensible, does not
> need to be
>      Reference
>    Multiple-Services 456  8.16   Grouped    - extensible
>     -Credit-Control
>    Redirect-Server   434  8.37   Grouped    - not extensible, has a
> problem similar to equipment type as it contains an enumerated type/value
> AVPs
>    Requested-Service 437  8.18   Grouped    - extensible
>      -Unit
>    Service-Parameter 440  8.43   Grouped    - not extensible, does not
> need to be
>      -Info
>    Subscription-Id   443  8.46   Grouped    - not extensible, has a
> problem similar to equipment type as it contains an enumerated type/value
> AVPs
>    Unit-Value        445  8.8    Grouped    - not extensible, does not
> need to be
>    Used-Service-Unit 446  8.19   Grouped    - extensible
>    User-Equipment    458  8.49   Grouped    - not extensible, will be
> replaced by an AVP that will be extensible
>      -Info
>
> Would appreciate your comments if you think differently about any of the
> AVPs above, or that we have missed other AVPs that needs to.
>
> (2) E.g adding new subscription ID.
>
> Unlike Subscription-Id-Type AVP which cannot be extended to a new type
> without a new application ID, a new AVP being proposed in RFC4006bis is:
>
>   Subscription-Id-Extension ::= < AVP Header: XXX >
>                              [ Subscription-Id-E164 ]
>                              [ Subscription-Id-IMSI ]
>                              [ Subscription-Id-SIP-URI ]
>                              [ Subscription-Id-NAI ]
>                              [ Subscription-Id-Private ]
>                            *[ AVP ]
>
> So, in order to add a new type (post RFC4006bis), you would need to submit
> draft with an AVP definition in it to could be added to the
> Subscription-Id-Extension as it is extensible.
> This new draft would be compliant with RFC4006bis and will therefore not
> require a new application ID.
>
> Best Regards,
>
> Yuval
>
>
> From: Misha Zaytsev [mailto:misha.zaytsev.rus@gmail.com]
> Sent: Saturday, January 28, 2017 11:07 PM
> To: Yuval Lifshitz
> Cc: Gardella, Maryse (Nokia - FR); dime@ietf.org
> Subject: Re: [Dime] RFC4006bis - Subscription-Id-Extension AVP
>
>
> Hi Yuval,
>
> May I ask you several questions to be able to understand the whole
> situation:
>
> 1. Why are you proposing to add new extendable AVPs only for some of the
> AVPs listed in section 12?
> I think the same concern is applicable for all these AVPs, isn't?
>
> 2. Could you clarify what official procedure to assign new available
> values is meant here?
> It is not working w/o defining new Application-ID as you mentioned above?
>
>
> 12.16.  Subscription-Id-Type AVP
>
>    As defined in Section 8.47, the Subscription-Id-Type AVP includes
>    Enumerated type values 0 - 4.  IANA has created and is maintaining a
>    namespace for this AVP.  All remaining values are available for
>    assignment by a Designated Expert [RFC2434].
>
> Excuse me in advance if what I'm asking about are well-known things.
> But still please clarify them at least for me...
>
> Thanks a lot in advance!
>
> /Misha
>
> 2017-01-25 11:29 GMT+03:00 Yuval Lifshitz <ylifshitz@sandvine.com>:
> Hi Maryse,
> The idea is the following:
> •         If the CC client want to work with RFC4006bis only CC server,
> and want to make sure that the subscription ID is understood by the server,
> it may set the M-bit. Any RFC4006 server will reply with
> DIAMETER_AVP_UNSUPPORTED (5001)
> •         If the CC client is not sure whether the CC servers are RFC4006
> or RFC4006bis, or have a mix of servers, and want to work with both, it may
> not set the M-bit
> o   In this case it would send both AVPs for the old types, so that the
> new AVP will be ignored by the RFC4006 servers
> o   In a case of a new type of subscription, not covered in RFC4006, it
> may send the new AVP with the M-bit set, causing any old server to reply
> with DIAMETER_AVP_UNSUPPORTED (5001). It may also send the new AVP without
> the M-bit set, here the server would just ignore the AVP, but would
> probably reply DIAMETER_MISSING_AVP (5005) as it will not have any
> subscription ID
>
> Yuval
>
> From: Gardella, Maryse (Nokia - FR) [mailto:maryse.gardella@nokia.com]
> Sent: Tuesday, January 24, 2017 5:25 PM
> To: Yuval Lifshitz; dime@ietf.org
> Subject: RE: RFC4006bis - Subscription-Id-Extension AVP
>
> Hi Yuval,
>
> Thanks for continuing on this.
> I am not sure to understand the difference between “may” and “must”, since
> with  “May” we can end having the M-bit set by the RFC4006bis CC client.
> I guess from the protocol’s perspective “may” and “must” makes no
> difference right?
>
> BR
> Maryse
>
> From: DiME [mailto:dime-bounces@ietf.org] On Behalf Of Yuval Lifshitz
> Sent: vendredi 13 janvier 2017 15:24
> To: dime@ietf.org
> Subject: [ALU] [Dime] RFC4006bis - Subscription-Id-Extension AVP
>
> Hi All,
> As part of the RFC4006bis work there are several AVPs that we plan on
> making future proof (See also: https://trac.ietf.org/trac/dime/ticket/95).
> For example, Subscription-Id AVP cannot be extended to new types without
> changing the enumeration in Subscription-Id-Type AVP, which in turn
> requires a new application ID (something we really want to avoid).
> To solve this issue we propose adding a new, extendable AVP. In this
> example:
>
> Subscription-Id-Extension ::= < AVP Header: XXX >
>                              [ Subscription-Id-E164 ]
>                              [ Subscription-Id-IMSI ]
>                              [ Subscription-Id-SIP-URI ]
>                              [ Subscription-Id-NAI ]
>                              [ Subscription-Id-Private ]
>                             *[ AVP ]
>
> When looking into Subscription-ID-Extension AVP  header flags I ran into a
> problem. The existing Subscription-ID AVP (and its sub-AVPs) are all marked
> with the M-bit as a “must”, probably because they hold the subscriber’s
> name which is critical information.
> However, in order for a RFC4006bis CC client to be able to communicate
> with an RFC4006 CC-server, they will have to be marked as “may”.
>
> Would appreciate your point of view on that topic?
>
> Best Regards,
>
> Yuval
>
>
> _______________________________________________
> DiME mailing list
> DiME@ietf.org
> https://www.ietf.org/mailman/listinfo/dime
>
>
>
>
>
>
>
>
>
>
>
>
>