Re: [Dime] issue #56 proposed conclusion

Steve Donovan <srdonovan@usdonovans.com> Wed, 26 March 2014 13:33 UTC

Return-Path: <srdonovan@usdonovans.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 84D411A0327 for <dime@ietfa.amsl.com>; Wed, 26 Mar 2014 06:33:37 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.12
X-Spam-Level:
X-Spam-Status: No, score=-1.12 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, SPF_NEUTRAL=0.779] autolearn=no
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 t_RMfHRJxW1g for <dime@ietfa.amsl.com>; Wed, 26 Mar 2014 06:33:28 -0700 (PDT)
Received: from biz131.inmotionhosting.com (biz131.inmotionhosting.com [23.235.209.16]) by ietfa.amsl.com (Postfix) with ESMTP id D247D1A00F9 for <dime@ietf.org>; Wed, 26 Mar 2014 06:33:28 -0700 (PDT)
Received: from cpe-76-187-100-94.tx.res.rr.com ([76.187.100.94]:62537 helo=SDmac.local) by biz131.inmotionhosting.com with esmtpsa (TLSv1:DHE-RSA-AES128-SHA:128) (Exim 4.82) (envelope-from <srdonovan@usdonovans.com>) id 1WSnxL-00054x-HI for dime@ietf.org; Wed, 26 Mar 2014 06:33:26 -0700
Message-ID: <5332D724.7080903@usdonovans.com>
Date: Wed, 26 Mar 2014 08:33:24 -0500
From: Steve Donovan <srdonovan@usdonovans.com>
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:24.0) Gecko/20100101 Thunderbird/24.4.0
MIME-Version: 1.0
To: dime@ietf.org
References: <5BCBA1FC2B7F0B4C9D935572D9000668151D1F0A@DEMUMBX014.nsn-intra.net> <E194C2E18676714DACA9C3A2516265D202672A0A@FR712WXCHMBA12.zeu.alcatel-lucent.com> <E194C2E18676714DACA9C3A2516265D202672A3D@FR712WXCHMBA12.zeu.alcatel-lucent.com> <5BCBA1FC2B7F0B4C9D935572D9000668151D202E@DEMUMBX014.nsn-intra.net> <E194C2E18676714DACA9C3A2516265D202679578@FR712WXCHMBA12.zeu.alcatel-lucent.com> <5BCBA1FC2B7F0B4C9D935572D9000668151D2462@DEMUMBX014.nsn-intra.net> <E194C2E18676714DACA9C3A2516265D20267A5EB@FR712WXCHMBA12.zeu.alcatel-lucent.com> <5332C7B4.4060805@usdonovans.com> <E194C2E18676714DACA9C3A2516265D20267A7FE@FR712WXCHMBA12.zeu.alcatel-lucent.com> <5332CD09.5050706@usdonovans.com> <E194C2E18676714DACA9C3A2516265D20267A82D@FR712WXCHMBA12.zeu.alcatel-lucent.com>
In-Reply-To: <E194C2E18676714DACA9C3A2516265D20267A82D@FR712WXCHMBA12.zeu.alcatel-lucent.com>
Content-Type: multipart/alternative; boundary="------------000703090103020203090605"
X-OutGoing-Spam-Status: No, score=-2.9
X-AntiAbuse: This header was added to track abuse, please include it with any abuse report
X-AntiAbuse: Primary Hostname - biz131.inmotionhosting.com
X-AntiAbuse: Original Domain - ietf.org
X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12]
X-AntiAbuse: Sender Address Domain - usdonovans.com
X-Get-Message-Sender-Via: biz131.inmotionhosting.com: authenticated_id: srdonovan@usdonovans.com
Archived-At: http://mailarchive.ietf.org/arch/msg/dime/G49t7hC2lwYKsNPEBJwah33_GzU
Subject: Re: [Dime] issue #56 proposed conclusion
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: Wed, 26 Mar 2014 13:33:37 -0000

JJ,

I agree, we need wording around extensibility.

My concern, however, was that adding wording around client specific
reports might mean we should also put wording around peer reports that
would be used for agent overload.

Is it ok to defer the extensibility wording to be addressed in -03 and
go with Ulrich's suggestion?  I have a good deal of work to do to get
the -02 draft published prior to next weeks CT4 meeting and this would
let me focus there.

Regards,

Steve

On 3/26/14 8:07 AM, TROTTIN, JEAN-JACQUES (JEAN-JACQUES) wrote:
>
> Steve
>
>  
>
> A sentence about extensibility of the OSC is for me necessary, not
> only on  the information it can store but also on the access keys (eg
> per reacting nodes), otherwise the OCS as currently described for
> which it should have a large appliance perimeter has already two
> exceptions, the specific client % reduction percentage  with the loss
> algorithm and your control rate case.
>
>  
>
> Best regards
>
>  
>
> JJacques
>
>  
>
>  
>
> *De :*DiME [mailto:dime-bounces@ietf.org] *De la part de* Steve Donovan
> *Envoyé :* mercredi 26 mars 2014 13:50
> *À :* dime@ietf.org
> *Objet :* Re: [Dime] issue #56 proposed conclusion
>
>  
>
> JJ,
>
> There is nothing in the draft that prevents extending the amount of
> state saved by a reporting node.
>
> We do probably need to add more on extensibility into the draft and
> one of the suggestions for any extension should be to expand on the
> discussion of how OCS is impacted by the extension.
>
> Regards,
>
> Steve
>
> On 3/26/14 7:37 AM, TROTTIN, JEAN-JACQUES (JEAN-JACQUES) wrote:
>
>     Hi Steve
>
>      
>
>     When reading your draft  about Rate control, we have
>
>             The server must allocate a portion of the
>
>        target Diameter request rate to each of its reacting nodes.  The
>
>        server may set the same rate for every reacting node, or may set
>
>        different rates for different reacting node.
>
>     I am OK with this statement. For me it implies  the reporting node
>     (server)  to have a n OCS per reacting node if the rates are
>     different .
>
>     So  I am a bit surprised you do not take this example  into
>     account in the draft that should be future proof in its wording
>     even if the OCS is not normative, but has a general meaning
>     applicable to various algorithm and not only to the loss algorithm.
>
>      
>
>     Best regards
>
>      
>
>     JJacques
>
>        
>
>      
>
>     *De :*DiME [mailto:dime-bounces@ietf.org] *De la part de* Steve
>     Donovan
>     *Envoyé :* mercredi 26 mars 2014 13:28
>     *À :* dime@ietf.org <mailto:dime@ietf.org>
>     *Objet :* Re: [Dime] issue #56 proposed conclusion
>
>      
>
>     JJ,
>
>     I am not in favor of your suggestion.  I won't restate -- its in
>     my previous email.
>
>     Steve
>
>     On 3/26/14 3:51 AM, TROTTIN, JEAN-JACQUES (JEAN-JACQUES) wrote:
>
>         Hi Ulrich
>
>          
>
>         1) I understand and agree it is good to have a text in v02 on OCS definition. #35 will deal on the protocol aspects about DOIC information transfer for client mitigation in te loss algorithm context .  But regarding OCS definition I prefer to have the OCS definition currently covering a larger scope that may be reviewed if needed in 03 than to do the reverse. For loss algorithm, in the dedicated part for loss that Ben mentioned, we can later add that the per client OCS case would be used for a specific client mitigation. For  other algorithms (eg rate control) we will see which type of OCS to apply , but it will remain compliant with the general definition. So I remain in favor of my proposal, why not to introduce it?
>
>          
>
>         2) about realm OCS, it is to identify the OCS associated to the generation of a realm OLR, as this OCS will store the 
>
>         Reduction percentage for the realm.
>
>          
>
>         Best regards
>
>          
>
>         JJacques   
>
>          
>
>          
>
>         -----Message d'origine-----
>
>         De : Wiehe, Ulrich (NSN - DE/Munich) [mailto:ulrich.wiehe@nsn.com] 
>
>         Envoyé : mercredi 26 mars 2014 09:26
>
>         À : TROTTIN, JEAN-JACQUES (JEAN-JACQUES); dime@ietf.org <mailto:dime@ietf.org>
>
>         Objet : RE: issue #56 proposed conclusion
>
>          
>
>         Hi JJacques,
>
>          
>
>         In order to meet Steve's deadline for the 02-draft I would like to close #56 as proposed by Steve.
>
>         This does not mean that we cannot improve text for 03.
>
>          
>
>         Ad 1) I don't think that the definition of OCS is Loss specific. Whether we need client-specific OCS should be discussed under #35. As we have it now there is one OCS shared for all reacting nodes with which the same algorithm was negotiated.
>
>         This of course limits agents taking the role of a reacting node for two clients C1 and C2 to advertize the same set of algorithm, and reacting nodes to select the algorithm based on the set of advertized algorithm and not based on the client.
>
>          
>
>         Ad 2) The current text assumes that a reporting node is located in just one realm. If that is not the case OCSs need to be maintained per realm. We may want to look at this when working on 03.
>
>          
>
>         Best regards
>
>         Ulrich
>
>          
>
>          
>
>         -----Original Message-----
>
>         From: DiME [mailto:dime-bounces@ietf.org] On Behalf Of ext TROTTIN, JEAN-JACQUES (JEAN-JACQUES)
>
>         Sent: Wednesday, March 26, 2014 8:59 AM
>
>         To: dime@ietf.org <mailto:dime@ietf.org>
>
>         Subject: Re: [Dime] issue #56 proposed conclusion
>
>          
>
>         Hi Ulrich
>
>          
>
>         1) My point is that the definition of OCS should be sufficiently generic so to apply to various algorithms. The current definition applies to the default algorithm, but will need to be extended to support the overload mitigation for a specific  client.
>
>         For other algorithms, I mentioned the rate control as we will work on it. And in my previous mail example, with all clients and the server supporting selecting the rate control, I currently do not see how to not introduce OCS per client somewhere (in the server or in a DA) to be able to run the rate control.
>
>          
>
>         So I propose  to evolve your definition
>
>            
>
>         A reporting node maintains per supported Diameter application, per
>
>             selected Abatement Algorithm and eventually per client if relevant an Overload
>
>             Control State
>
>          
>
>         Such a definition would be more generic and applicable to future algorithms. I think the draft should be future proof.
>
>          
>
>          
>
>         2) I am also questioning, if we have not the need to define an OCS per application  per selected algorithm and per realm for a reporting node (eg  in the DA that is generating Realm reports for request without destination hosts; realm OCS is only defined for reacting nodes in your proposal. Here again I would have  the additional question OCS eventually per client    
>
>          
>
>          
>
>         Best regards 
>
>          
>
>         JJacques 
>
>          
>
>         -----Message d'origine-----
>
>         De : Wiehe, Ulrich (NSN - DE/Munich) [mailto:ulrich.wiehe@nsn.com] Envoyé : mardi 25 mars 2014 09:24 À : TROTTIN, JEAN-JACQUES (JEAN-JACQUES); dime@ietf.org <mailto:dime@ietf.org> Objet : RE: issue #56 proposed conclusion
>
>          
>
>         Hi JJacques
>
>          
>
>         Your concern is related to issue #35. For #35 we almost reached the conclusion not to address client specific throttling in the 02-draft.
>
>          
>
>         The latest proposal to solve #35 was to let clients indicate in OC-Supported-Features that they are clients; agents taking the role of reacting nodes on behalf of clients would not indicate  so. Servers must not request client specific throtting from reacting nodes that did not indicate that they are clients.
>
>         With this (partial) solution of #35 there would not be any impact to my proposal for #56.
>
>          
>
>         Best regards
>
>         Ulrich
>
>          
>
>          
>
>          
>
>         -----Original Message-----
>
>         From: DiME [mailto:dime-bounces@ietf.org] On Behalf Of ext TROTTIN, JEAN-JACQUES (JEAN-JACQUES)
>
>         Sent: Monday, March 24, 2014 7:43 PM
>
>         To: dime@ietf.org <mailto:dime@ietf.org>
>
>         Subject: Re: [Dime] issue #56 proposed conclusion
>
>          
>
>         Hi Ulrich and all
>
>          
>
>         Still to complement my remark about question of the mitigation for a given client 
>
>          
>
>         Your description of state is defined per Application and Abatement, so not including the mitigation case of a state for a client (cf my previous mail)
>
>          
>
>         I al trying to se how it would apply to another abatement algorithm. There is the rate control algorithm that we will study, and here I am questioning if we will not be driven to have a state per client, as the requested rate will be rather specific to a client, some clients may have a small traffic  and others a large traffic, meaning to define a requested rate per client somewhere. 
>
>          
>
>         So I may again repeat myself that the normal state would be per client in general, which does not exclude to group all clients and consider a state common to all clients when relevant.
>
>          
>
>         This may require some more thinking, but I prefer to remind this point, but it also concern other tickets.
>
>          
>
>         Best regards 
>
>          
>
>         JJacques   
>
>          
>
>          
>
>         -----Message d'origine-----
>
>         De : DiME [mailto:dime-bounces@ietf.org] De la part de TROTTIN, JEAN-JACQUES (JEAN-JACQUES) Envoyé : lundi 24 mars 2014 19:08 À : dime@ietf.org <mailto:dime@ietf.org> Objet : Re: [Dime] issue #56 proposed conclusion
>
>          
>
>         Hi Ulrich
>
>          
>
>         In 5.5.1.2 you wrote:
>
>           A reporting node maintains per supported Diameter application and per
>
>             supported (and eventually selected) Abatement Algorithm an Overload
>
>             Control State
>
>          
>
>         but for another ticket, there is the conclusion that reporting node selects one algorithm,  so your wording would become
>
>          
>
>              ...per supported Diameter application and for the
>
>             selected Abatement Algorithm.... 
>
>          
>
>          
>
>         I have also the question of the mitigation for a given  client which may drives the reporting node to consider a state for a client 
>
>          
>
>         Interest of this text is that it clarifies the node behaviors.
>
>          
>
>         Best regards
>
>          
>
>         JJacques  
>
>          
>
>          
>
>         -----Message d'origine-----
>
>         De : DiME [mailto:dime-bounces@ietf.org] De la part de Wiehe, Ulrich (NSN - DE/Munich) Envoyé : lundi 24 mars 2014 18:24 À : Wiehe, Ulrich (NSN - DE/Munich); dime@ietf.org <mailto:dime@ietf.org> Objet : Re: [Dime] issue #56 proposed conclusion
>
>          
>
>         Dear all,
>
>          
>
>         I have received a further comment asking not to abbreviate "Overload Control State" as OCS is used for "Online Charging System".
>
>          
>
>         I'm fine with not abbreviating "Overload Control State".
>
>          
>
>         I shall close issue #56 to meet Steve's deadline for the 02-draft, unless I receive more comments by tomorrow.
>
>          
>
>         Ulrich
>
>          
>
>         -----Original Message-----
>
>         From: Wiehe, Ulrich (NSN - DE/Munich)
>
>         Sent: Thursday, March 20, 2014 2:08 PM
>
>         To: dime@ietf.org <mailto:dime@ietf.org>
>
>         Subject: issue #56 proposed conclusion
>
>          
>
>         #56: Bad Description of Overload Control State
>
>          
>
>          
>
>         Dear all,
>
>          
>
>         I have received comments from Steve, MCruz and Jouni.
>
>          
>
>         I believe all comments are covered by the following proposed text:
>
>          
>
>          
>
>          
>
>             5.5.1.  Overload Control State (OCS)
>
>          
>
>             5.5.1.1   Overload Control States for reacting nodes
>
>          
>
>             A reacting node maintains per supported Diameter application
>
>             - a host-type Overload Control State for each Destination-Host towards
>
>               which it sends host-type requests and
>
>             - a realm-type Overload Control State for each Destination-Realm towards
>
>               which it sends realm-type requests.
>
>          
>
>             A host-type Overload Control State may be identified by the pair of
>
>             Application-Id and Destination-Host.
>
>             A realm-type Overload Control State may be identified by the pair of
>
>             Application-Id and Destination-Realm.
>
>             The host-type/realm-type Overload Control State for a given pair of
>
>             Application and Destination-Host / Destination-Realm could include the
>
>             following information:
>
>             - Sequence number (as reveived in OC-OLR)
>
>             - Time of expiry  (deviated from validity duration as received in OC-OLR
>
>               and time of reception)
>
>             - Selected Abatement Algorithm (as received in OC-Supported-Features)
>
>             - Algorithm specific input data (as received within OC-OLR, e.g.
>
>               Reduction Percentage for Loss)
>
>          
>
>            
>
>             5.5.1.2   Overload Control States for reporting nodes
>
>          
>
>             A reporting node maintains per supported Diameter application and per
>
>             supported (and eventually selected) Abatement Algorithm an Overload
>
>             Control State. 
>
>          
>
>             An Overload Control State may be identified by the pair of Application-Id
>
>             and supported Abatement Algorithm.
>
>          
>
>             The Overload Control State for a given pair of Application and Abatement
>
>             Algorithm could include the information:
>
>             - Sequence number
>
>             - Validity Duration and Expiry Time
>
>             - Algorithm specific input data (e.g. Reduction Percentage for Loss)
>
>          
>
>             
>
>             5.5.1.3  Maintaining Overload Control States
>
>          
>
>             Reacting nodes create a host-type OCS identified by OCS-Id = (app-id,host-id) when receiving
>
>             an answer message of application app-id containing an Orig-Host of host-id and a
>
>             host-type OC-OLR AVP unless such host-type OCS already exists.
>
>          
>
>             Reacting nodes create a realm-type OCS identified by OCS-Id = (app-id,realm-id) when receiving
>
>             an answer message of application app-id containing an Orig-Realm of realm-id and a
>
>             realm-type OC-OLR AVP unless such realm type OCS already exists.
>
>          
>
>             Reacting nodes delete an OCS when it expires (i.e. when current time
>
>             minus reception time is greater than validity duration).
>
>          
>
>             Reacting nodes update the host-type OCS identified by OCS-Id = (app-id,host-id) when
>
>             receiving an answer message of application app-id containing an Orig-Host of
>
>             host-id and a host-type OC-OLR AVP with a sequence number higher than the
>
>             stored sequence number.
>
>          
>
>             Reacting nodes update the realm-type OCS identified by OCS-Id = (app-id,realm-id) when
>
>             receiving an answer message of application app-id containing an Orig-Realm of
>
>             realm-id and a realm-type OC-OLR AVP with a sequence number higher than the
>
>             stored sequence number.
>
>          
>
>             Reporting nodes create an OCS identified by OCS-Id = (app-id,Alg) when receiving a
>
>             request of application app-id containing an OC-Supported-Features AVP
>
>             indicating support of the Abatement Algorithm Alg (which the reporting
>
>             node selects) while being overloaded, unless such OCS already exists.
>
>          
>
>             Reporting nodes delete an OCS when it expires.
>
>          
>
>             Reporting nodes update the OCS identified by OCS-Id = (app-id,Alg) when they detect the
>
>             need to modify the requested amount of application app-id traffic reduction.
>
>          
>
>         Ulrich
>
>          
>
>          
>
>         _______________________________________________
>
>         DiME mailing list
>
>         DiME@ietf.org <mailto:DiME@ietf.org>
>
>         https://www.ietf.org/mailman/listinfo/dime
>
>          
>
>         _______________________________________________
>
>         DiME mailing list
>
>         DiME@ietf.org <mailto:DiME@ietf.org>
>
>         https://www.ietf.org/mailman/listinfo/dime
>
>          
>
>         _______________________________________________
>
>         DiME mailing list
>
>         DiME@ietf.org <mailto:DiME@ietf.org>
>
>         https://www.ietf.org/mailman/listinfo/dime
>
>          
>
>         _______________________________________________
>
>         DiME mailing list
>
>         DiME@ietf.org <mailto:DiME@ietf.org>
>
>         https://www.ietf.org/mailman/listinfo/dime
>
>          
>
>         _______________________________________________
>
>         DiME mailing list
>
>         DiME@ietf.org <mailto:DiME@ietf.org>
>
>         https://www.ietf.org/mailman/listinfo/dime
>
>          
>
>      
>
>
>
>
>     _______________________________________________
>
>     DiME mailing list
>
>     DiME@ietf.org <mailto:DiME@ietf.org>
>
>     https://www.ietf.org/mailman/listinfo/dime
>
>  
>
>
>
> _______________________________________________
> DiME mailing list
> DiME@ietf.org
> https://www.ietf.org/mailman/listinfo/dime