Re: [Dime] issue #56 proposed conclusion

"Wiehe, Ulrich (NSN - DE/Munich)" <ulrich.wiehe@nsn.com> Wed, 26 March 2014 08:26 UTC

Return-Path: <ulrich.wiehe@nsn.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 3FF9F1A0138 for <dime@ietfa.amsl.com>; Wed, 26 Mar 2014 01:26:46 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.901
X-Spam-Level:
X-Spam-Status: No, score=-6.901 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_HI=-5, 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 mg9ytaVJ6zU1 for <dime@ietfa.amsl.com>; Wed, 26 Mar 2014 01:26:42 -0700 (PDT)
Received: from demumfd002.nsn-inter.net (demumfd002.nsn-inter.net [93.183.12.31]) by ietfa.amsl.com (Postfix) with ESMTP id 7CE261A0121 for <dime@ietf.org>; Wed, 26 Mar 2014 01:26:42 -0700 (PDT)
Received: from demuprx017.emea.nsn-intra.net ([10.150.129.56]) by demumfd002.nsn-inter.net (8.14.3/8.14.3) with ESMTP id s2Q8Q5co000349 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=FAIL); Wed, 26 Mar 2014 08:26:05 GMT
Received: from DEMUHTC001.nsn-intra.net ([10.159.42.32]) by demuprx017.emea.nsn-intra.net (8.12.11.20060308/8.12.11) with ESMTP id s2Q8Q44d030577 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=FAIL); Wed, 26 Mar 2014 09:26:05 +0100
Received: from DEMUHTC011.nsn-intra.net (10.159.42.42) by DEMUHTC001.nsn-intra.net (10.159.42.32) with Microsoft SMTP Server (TLS) id 14.3.123.3; Wed, 26 Mar 2014 09:26:04 +0100
Received: from DEMUMBX014.nsn-intra.net ([169.254.14.91]) by DEMUHTC011.nsn-intra.net ([10.159.42.42]) with mapi id 14.03.0123.003; Wed, 26 Mar 2014 09:26:04 +0100
From: "Wiehe, Ulrich (NSN - DE/Munich)" <ulrich.wiehe@nsn.com>
To: "ext TROTTIN, JEAN-JACQUES (JEAN-JACQUES)" <jean-jacques.trottin@alcatel-lucent.com>, "dime@ietf.org" <dime@ietf.org>
Thread-Topic: issue #56 proposed conclusion
Thread-Index: Ac9EPXt5r7PuIO0xQGuIoXMHDH01dgDR2ZtAAAD7zKAAAWgNwAAcxQhgADDx3RAAAVklwA==
Date: Wed, 26 Mar 2014 08:26:04 +0000
Message-ID: <5BCBA1FC2B7F0B4C9D935572D9000668151D2462@DEMUMBX014.nsn-intra.net>
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>
In-Reply-To: <E194C2E18676714DACA9C3A2516265D202679578@FR712WXCHMBA12.zeu.alcatel-lucent.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [10.159.42.112]
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-purgate-type: clean
X-purgate-Ad: Categorized by eleven eXpurgate (R) http://www.eleven.de
X-purgate: clean
X-purgate: This mail is considered clean (visit http://www.eleven.de for further information)
X-purgate-size: 10739
X-purgate-ID: 151667::1395822365-0000137C-3FDCA1FB/0/0
Archived-At: http://mailarchive.ietf.org/arch/msg/dime/zrp_oK5fzrlG_J7-Ae3XuhcZmH0
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 08:26:46 -0000

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
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
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
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 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 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
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
https://www.ietf.org/mailman/listinfo/dime

_______________________________________________
DiME mailing list
DiME@ietf.org
https://www.ietf.org/mailman/listinfo/dime

_______________________________________________
DiME mailing list
DiME@ietf.org
https://www.ietf.org/mailman/listinfo/dime

_______________________________________________
DiME mailing list
DiME@ietf.org
https://www.ietf.org/mailman/listinfo/dime