Re: [sip-overload] A modest (and new) proposal on multiple algorithms for overload control

<phil.m.williams@bt.com> Fri, 22 July 2011 10:44 UTC

Return-Path: <phil.m.williams@bt.com>
X-Original-To: sip-overload@ietfa.amsl.com
Delivered-To: sip-overload@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id F1E3B21F869E for <sip-overload@ietfa.amsl.com>; Fri, 22 Jul 2011 03:44:20 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.746
X-Spam-Level:
X-Spam-Status: No, score=-2.746 tagged_above=-999 required=5 tests=[AWL=-0.300, BAYES_00=-2.599, HELO_MISMATCH_COM=0.553, J_CHICKENPOX_82=0.6, RCVD_IN_DNSWL_LOW=-1]
Received: from mail.ietf.org ([64.170.98.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 4Ry40rF9ZsdS for <sip-overload@ietfa.amsl.com>; Fri, 22 Jul 2011 03:44:19 -0700 (PDT)
Received: from smtpe1.intersmtp.com (smtp61.intersmtp.COM [62.239.224.234]) by ietfa.amsl.com (Postfix) with ESMTP id 6FF0D21F85CA for <sip-overload@ietf.org>; Fri, 22 Jul 2011 03:44:19 -0700 (PDT)
Received: from EVHUB70-UKRD.domain1.systemhost.net (10.36.3.153) by RDW083A005ED61.smtp-e1.hygiene.service (10.187.98.10) with Microsoft SMTP Server (TLS) id 8.3.159.2; Fri, 22 Jul 2011 11:44:18 +0100
Received: from EVMHT01-UKBR.domain1.systemhost.net (193.113.108.42) by EVHUB70-UKRD.domain1.systemhost.net (10.36.3.153) with Microsoft SMTP Server (TLS) id 14.1.323.0; Fri, 22 Jul 2011 11:44:18 +0100
Received: from EMV04-UKBR.domain1.systemhost.net ([169.254.2.170]) by EVMHT01-UKBR.domain1.systemhost.net ([193.113.108.42]) with mapi; Fri, 22 Jul 2011 11:44:16 +0100
From: <phil.m.williams@bt.com>
To: <volker.hilt@alcatel-lucent.com>
Date: Fri, 22 Jul 2011 11:44:03 +0100
Thread-Topic: [sip-overload] A modest (and new) proposal on multiple algorithms for overload control
Thread-Index: AcxA8eXEigFNFdZDRXy77kULRIEu9gHZfQkQ
Message-ID: <E4B3F0DC6D953D4EBEC223BC86FE322C4A48EC8865@EMV04-UKBR.domain1.systemhost.net>
References: <4E08FA57.7040807@bell-labs.com> <98176208-B87E-4D73-A84B-0E625132F4C9@acmepacket.com> <4E1C5366.6070306@alcatel-lucent.com> <E4B3F0DC6D953D4EBEC223BC86FE322C4A48C1B7C1@EMV04-UKBR.domain1.systemhost.net> <4E1CE376.4090204@alcatel-lucent.com>
In-Reply-To: <4E1CE376.4090204@alcatel-lucent.com>
Accept-Language: en-US, en-GB
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
acceptlanguage: en-US, en-GB
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
Cc: sip-overload@ietf.org
Subject: Re: [sip-overload] A modest (and new) proposal on multiple algorithms for overload control
X-BeenThere: sip-overload@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: SIP Overload <sip-overload.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/sip-overload>, <mailto:sip-overload-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/sip-overload>
List-Post: <mailto:sip-overload@ietf.org>
List-Help: <mailto:sip-overload-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/sip-overload>, <mailto:sip-overload-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 22 Jul 2011 10:44:21 -0000

Thanks Volker,

Comment below. I aim to try and attend the Quebec meeting remotely,

Regards,

Phil 

> -----Original Message-----
> From: Volker Hilt [mailto:volker.hilt@alcatel-lucent.com]
> Sent: 13 July 2011 01:15
> To: Williams,PM,Phil,DEV6 R
> Cc: sip-overload@ietf.org
> Subject: Re: [sip-overload] A modest (and new) proposal on multiple
> algorithms for overload control
> 
> Phil,
> >
> > I pointed out in [1] that the server needs to determine the algorithm
> > to be used, otherwise it has to use an overload control method that
> > will support a mix of restriction algorithms on the client, which
> > would be significantly more complex for the server than the client
> > having to support two restriction algorithms (which I view as
> > relatively straightforward to specify and implement).
> 
> For a server it is fairly easy to convert a loss value into a rate (or
> vice versa) if it has the data available that is needed for rate-based
> controls (current call rate, number of upstream neighbors,...).

[PhilW] Whilst it is possible to map between loss based and rate-based per client-server stream by measuring the applied parameter and the arrival rate at the server, this requires measuring the arrival rate from each client individually, and there will be implications for update frequency and control stability because some of these traffic streams will be relatively small, particularly if the number of upstream neighbours is large. With a pure loss-based or pure rate-based schemes it is possible to design the server algorithm to have some nice/useful properties whilst only measuring the total arrival rate and not that from each upstream client. For example with loss-based method one can use the same loss proportion for every source, which makes both adaptation simple and will satisfy one interpretation of fairness. On the other hand for rate-based restriction one can get some nice behaviours (and satisfying another interpretation of fairness) with clients derived from minimum guarantees plus use of unused rate in a precise way, again by only measuring the total arrival rate (some clients may send at below the max control rate received).

To re-iterate my concern: if the two restriction algorithms are not made mandatory for the clients, my suggestion is that it puts a greater burden on the design of the server algorithm than that of the clients.
> 
> > Because the
> > draft spec does not specify the server algorithm, it gives the
> > illusion that most complexity is in the client, whereas in reality it
> > is most likely to be on the server.
> >
> With the current proposal it is possible to build a simple client and
> server with effective overload control and to go for a more complex
> mechanism depending on the targeted scenario and use case.
> 
> > In [2] I gave an example modification of the draft whereby the client
> > algorithms are mandatory, which removes the complexity of the
> > negotiation as well.
> >
> I believe it is fairly simple for client and server to agree. There are
> four cases:
> - Client and Server support A and B.
>    * Client sends AB to server.
>    * Server responds with A or with B (e.g., depending on
> configuration).
> - Client supports A and B. Server supports A.
>    * Client sends AB to server
>    * Server responds with A.
> - Client supports A. Server supports A and B
>    * Client sends A to server.
>    * Server responds with A.
> - Client supports A. Server supports A
>    * same as above.

[PhilW] OK, but not if the server wants B but the client only supports A!
> 
> Thanks,
> 
> Volker (as individual)
> 
> 
> 
> 
> 
> 
> 
> > -----Original Message----- From: sip-overload-bounces@ietf.org
> > [mailto:sip-overload-bounces@ietf.org] On Behalf Of Volker Hilt Sent:
> > 12 July 2011 15:00 To: sip-overload@ietf.org Subject: Re:
> > [sip-overload] A modest (and new) proposal on multiple algorithms for
> > overload control
> >
> > Hadriel,
> >
> > the idea is to have a mandatory algorithm in the base draft and, at
> > the same time, to leave the draft open for extensions to other
> > algorithms. The second draft will then specify such an algorithm.
> >
> > That way RFC A is the common denominator supported by all devices
> > and advanced devices can implement RFC A and B.
> >
> > Thanks,
> >
> > Volker (as individual)
> >
> >
> >
> >
> >
> > On 7/12/2011 9:09 AM, Hadriel Kaplan wrote:
> >>
> >> So in summary you're proposing to resolve the issue that having two
> >> mechanisms is a bad idea, by specifying the two mechanisms in two
> >> separate docs??
> >>
> >> OK, well if we have to have two ways of doing the same thing, then
> >> I suggest we MANDATE BOTH, by putting them in the same document and
> >> a "MUST implement both" written right in it. Otherwise, if you have
> >> RFC A and RFC B, then some devices will do A and others B and there
> >> won't be interop.
> >>
> >> -hadriel
> >>
> >>
> >> On Jun 27, 2011, at 5:47 PM, Vijay K. Gurbani wrote:
> >>
> >>> Folks: I am trying to close the conversation on SIP overload
> >>> control algorithms.
> >>>
> >>> To recap, we had a decision on making loss-based as the default
> >>> mandatory-to-implement algorithm and had agreed to allow the
> >>> choice of rate- and windows-based algorithms.
> >>>
> >>> This is what's currently reflected in the protocol draft [1].
> >>>
> >>> During the Prague IETF, it was suggested that we revisit this
> >>> decision and use only one algorithm.  This suggestion lead to a
> >>> subsequent thread [2] about which algorithm should be chosen ---
> >>> loss-, rate- or windows-based one.
> >>>
> >>> I think we have to be realistic here in recognizing that the
> >>> relative performance of all the algorithms is about the same. So
> >>> therefore, if the relative performance is the same then there may
> >>> be certain network deployments where the choice of one algorithm
> >>> seems better than the other.
> >>>
> >>> Rate-based one will work well in managed networks where the set
> >>> of upstream clients sending requests is bounded and rather
> >>> static; this also makes it easier to apply capacity guarantees.
> >>> Loss-based one works well where the set of upstream clients
> >>> sending traffic is unbounded and frequently changing.
> >>>
> >>> The loss-based algorithm is less complex than the rate-based one
> >>> or the windows-based one.
> >>>
> >>> Phil Williams has put out a proposal [3] to support all three
> >>> algorithms simultaneously, thereby eliminating the need for
> >>> protocol machinations to choose one.  However, issues still
> >>> remain: first, this will force implementations to implement all
> >>> of the algorithms, and this I believe is a heavy burden.
> >>>
> >>> Second, it does not eliminate the need or the desire to change
> >>> algorithms mid stream, and finally, this decision forces an
> >>> overloaded server to maintain considerable state as to which
> >>> particular algorithm has been chosen with the paired upstream
> >>> client.
> >>>
> >>> It seems that we are at an impasse.
> >>>
> >>> So, let me suggest another concrete proposal, which will help
> >>> move the work forward expeditiously if all agree.
> >>>
> >>> I propose that draft-ietf-soc-overload-control continue as it is
> >>> now with the following exception:
> >>>
> >>> 1) Take window class out of the mix, leaving rate and loss.  No
> >>> one is explicitly championing the windows-based one; it could be
> >>> added later if desired.
> >>>
> >>> 2) Invite Phil Williams, Eric Noel, or Janet Gunn to start
> >>> working on a rate-based draft that uses the agreement mechanisms
> >>> defined in draft-ietf-soc-overload-control and fleshes out how
> >>> rate-based mechanism will function.
> >>>
> >>> 3) Move draft-ietf-soc-overload-control and the new draft in (2)
> >>> as a bundle so that no one algorithm gets an undue advantage of
> >>> being specified first.
> >>>
> >>> Note that (2) and (3) effectively mitigate Phil's concern that
> >>> "proceeding with a single mandated algorithm would result in
> >>> non-adoption of the other algorithms by suppliers and in effect
> >>> the alternatives would become redundant."
> >>>
> >>> Personally I do not think that the market will favour a
> >>> sub-optimal algorithm and if loss-based does not work I am sure
> >>> it will be replaced in short order.  But I do empathize with the
> >>> perceived advantage that loss-based one seems to benefit from if
> >>> it is made the only mandatory-to-implement algorithm in [1].
> >>> Therefore, (2) and (3) above should mitigate this particular
> >>> concern.
> >>>
> >>> I suspect what will end up happening is that implementations
> >>> geared to managed network providers will end up supporting both
> >>> loss- and rate-based algorithms while other implementations can
> >>> support only the loss-based one.
> >>>
> >>> Do folks think that this is an agreeable compromise?  It is no
> >>> worse off than what we had agreed to before, and in fact it is
> >>> much better since we have eliminated windows-based one and are
> >>> moving loss-based and rate-based ahead at the same time.
> >>>
> >>> I do note that the chairs may have to re-negotiate the charter
> >>> deliverables with the ADs, but modifying the charter or deciding
> >>> to make the rate-based draft as an extension to the second
> >>> deliverable ("2. A specification for an SIP overload control
> >>> mechanism based on implicit/explicit feedback.") is a minor
> >>> detail once everyone agrees to this proposal.
> >>>
> >>> Please comment.  Thank you.
> >>>
> >>> [1]
> >>> http://tools.ietf.org/html/draft-ietf-soc-overload-control-02 [2]
> >>> http://www.ietf.org/mail-archive/web/sip-
> overload/current/msg00616.html
> >>>
> >>>
> [3] http://www.ietf.org/mail-archive/web/sip-
> overload/current/msg00629.html
> >>>
> >>> - vijay -- Vijay K. Gurbani, Bell Laboratories, Alcatel-Lucent
> >>> 1960 Lucent Lane, Rm. 9C-533, Naperville, Illinois 60566 (USA)
> >>> Email: vkg@{bell-labs.com,acm.org} /
> >>> vijay.gurbani@alcatel-lucent.com Web:
> >>> http://ect.bell-labs.com/who/vkg/
> >>> _______________________________________________ sip-overload
> >>> mailing list sip-overload@ietf.org
> >>> https://www.ietf.org/mailman/listinfo/sip-overload
> >>
> >> _______________________________________________ sip-overload
> >> mailing list sip-overload@ietf.org
> >> https://www.ietf.org/mailman/listinfo/sip-overload
> > _______________________________________________ sip-overload mailing
> > list sip-overload@ietf.org
> > https://www.ietf.org/mailman/listinfo/sip-overload