Re: [sip-overload] draft-ietf-soc-overload-control-02 and algorithm agility

Hadriel Kaplan <HKaplan@acmepacket.com> Tue, 29 March 2011 22:49 UTC

Return-Path: <HKaplan@acmepacket.com>
X-Original-To: sip-overload@core3.amsl.com
Delivered-To: sip-overload@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id DEA7A3A6AC5 for <sip-overload@core3.amsl.com>; Tue, 29 Mar 2011 15:49:14 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.271
X-Spam-Level:
X-Spam-Status: No, score=-1.271 tagged_above=-999 required=5 tests=[AWL=-0.777, BAYES_00=-2.599, FH_RELAY_NODNS=1.451, HELO_MISMATCH_COM=0.553, HTML_MESSAGE=0.001, RDNS_NONE=0.1]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id D+lPUoIlQoQb for <sip-overload@core3.amsl.com>; Tue, 29 Mar 2011 15:49:13 -0700 (PDT)
Received: from ETMail2.acmepacket.com (unknown [216.41.24.9]) by core3.amsl.com (Postfix) with ESMTP id 23C703A6A7B for <sip-overload@ietf.org>; Tue, 29 Mar 2011 15:49:12 -0700 (PDT)
Received: from mail.acmepacket.com (216.41.24.7) by ETMail2.acmepacket.com (216.41.24.9) with Microsoft SMTP Server (TLS) id 8.1.240.5; Tue, 29 Mar 2011 18:50:49 -0400
Received: from mailbox1.acmepacket.com ([216.41.24.12]) by mail ([127.0.0.1]) with mapi; Tue, 29 Mar 2011 18:50:49 -0400
From: Hadriel Kaplan <HKaplan@acmepacket.com>
To: Janet P Gunn <jgunn6@csc.com>
Date: Tue, 29 Mar 2011 18:50:46 -0400
Thread-Topic: [sip-overload] draft-ietf-soc-overload-control-02 and algorithm agility
Thread-Index: AcvuY7+t3l2Zm2PLQHeKnfdrXcspuA==
Message-ID: <77199F7F-CC15-4113-AAF6-11654FC5C76B@acmepacket.com>
References: <9AD888D2-CCED-4C4C-8F21-C3FA209538C3@acmepacket.com> <OF946E5F01.21612200-ON85257862.0062BFFD-85257862.0062C02A@csc.com>
In-Reply-To: <OF946E5F01.21612200-ON85257862.0062BFFD-85257862.0062C02A@csc.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
acceptlanguage: en-US
Content-Type: multipart/alternative; boundary="_000_77199F7FCC154113AAF611654FC5C76Bacmepacketcom_"
MIME-Version: 1.0
X-Brightmail-Tracker: AAAAAgAAAUAAAAFT
Cc: "sip-overload@ietf.org" <sip-overload@ietf.org>
Subject: Re: [sip-overload] draft-ietf-soc-overload-control-02 and algorithm agility
X-BeenThere: sip-overload@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: SIP Overload <sip-overload.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/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: Tue, 29 Mar 2011 22:49:15 -0000

But that to me argues we shouldn't pick the loss-based one to begin with.
Either they're all effectively the same, or they're not.  As far as I know, the results of the design-team were they were the same, so the loss based one was picked just because it's the simplest to implement.  If a rate-based is instead more effective, even if it's just for "corner cases", then we should pick that one instead.
No?

-hadriel


On Mar 29, 2011, at 1:58 PM, Janet P Gunn wrote:


I was one of the people pushing hard for the use of a rate based algorithm, either as well as or instead of a percentage loss based algorithm.

See, for instance, http://www.ietf.org/mail-archive/web/sip-overload/current/msg00403.html
http://www.ietf.org/mail-archive/web/sip-overload/current/msg00411.html

I know I discussed this in much greater detail at some point- but I can't find the specific message. Maybe it is in the minutes of the interim

While both loss based and rate based algorithms work well in a simulated environment, driven by random processes, there are a number  of highly probable real world scenarios (e.g. highly localized source of overload, or rapidly varying overload) in which a loss based algorithm is either ineffective or unfair.

Evidence of the greater robusness, fairness, and effectiveness of rate-based network management controls is found in the circuit switched PSTN where "Call Gapping" (rate based) has made the percentage-dropped network management controls all but obsolete.

There are, of course, many differences between the PSTN and a SIP network.  But this particular case seems to be a place where we can, and should, learn from the lessons learned in the PSTN.

Janet
-----sip-overload-bounces@ietf.org<mailto:-----sip-overload-bounces@ietf.org> wrote: -----

To: "sip-overload@ietf.org<mailto:sip-overload@ietf.org>" <sip-overload@ietf.org<mailto:sip-overload@ietf.org>>
From: Hadriel Kaplan <HKaplan@acmepacket.com<mailto:HKaplan@acmepacket.com>>
Sent by: sip-overload-bounces@ietf.org<mailto:sip-overload-bounces@ietf.org>
Date: 03/29/2011 12:09PM
Subject: [sip-overload] draft-ietf-soc-overload-control-02 and algorithm agility

Howdy,
in today's WG session the new oc-algo mechanism was described, and it was stated the WG had agreed to support multiple algorithms, with a pointer to this thread:
http://www.ietf.org/mail-archive/web/sip-overload/current/msg00436.html

I have read that thread, and there were actually few discussions about the need for multiple algorithms (most of it was about 100 response handling or how often algorithms would change, not the need for multiple algorithms).

2 people seemed to want to support multiple algorithms, but did not define what the "other" one would be.

So I'm going to try to argue for NOT doing this (at least not right now).  Here's why:

1) Every time we add something optional, interop issues happen.  The protocol gets more complicated, there's more to test, more to fail, etc.  ISTM that a overload control mechanism should be as simple as possible, with the greatest probability of success and interop.  For me, the bar would have to pretty darn high to add optionality - there would have to be a really good reason.

2) Currently, there is only one algorithm: loss.  Other algorithms were tested (rate and window), but since the results were effectively the same, it would seem rather foolish to add support for those other two.  So this would have to be a 4th, as yet unknown, algorithm.  That's fine, but we don't need to create a param or logic to handle unknown future algorithms *now*. Think about it - nothing prevents a future algorithm from adding this oc-algo param in a backwards-compatible manner.  Ergo, we don't need to do it now.  In fact, since we don't know the future algorithm(s), we have no idea if they could even use the other params we have.

3) Doing this is not as trivial as the draft currently has it.  You cannot just "negotiate" it by having *only* the client-side send the param again in the next request when it wants to re-negotiate it, because the client has no idea when its next-hop server has rebooted, or the next-hop server's had *its* config changed.  If that happens, the server would get a request form the client without the param, and thus think the client is using loss, even if they previously negotiated some new algo.

4) When you're the server-side, you'll now have to keep a negotiated algorithm setting pre previous hop client.  For some server systems that's easy, but for some servers that's untenable - they don't keep state per previous hop client.  And I believe our charter requires us to support a model of unknown previous-hop clients.

-hadriel



_______________________________________________
sip-overload mailing list
sip-overload@ietf.org<mailto:sip-overload@ietf.org>
https://www.ietf.org/mailman/listinfo/sip-overload