Re: quick failover in SCTP

Preethi Natarajan <preethi.cis@gmail.com> Fri, 10 December 2010 16:30 UTC

Return-Path: <preethi.cis@gmail.com>
X-Original-To: tsvwg@core3.amsl.com
Delivered-To: tsvwg@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 796713A6CBC for <tsvwg@core3.amsl.com>; Fri, 10 Dec 2010 08:30:08 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -0.103
X-Spam-Level:
X-Spam-Status: No, score=-0.103 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, J_CHICKENPOX_28=0.6, J_CHICKENPOX_43=0.6, J_CHICKENPOX_48=0.6, MIME_8BIT_HEADER=0.3, MIME_QP_LONG_LINE=1.396, RCVD_IN_DNSWL_LOW=-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 eYigIj18Vbc9 for <tsvwg@core3.amsl.com>; Fri, 10 Dec 2010 08:30:07 -0800 (PST)
Received: from mail-fx0-f43.google.com (mail-fx0-f43.google.com [209.85.161.43]) by core3.amsl.com (Postfix) with ESMTP id CA9FB28C0E5 for <tsvwg@ietf.org>; Fri, 10 Dec 2010 08:30:03 -0800 (PST)
Received: by fxm18 with SMTP id 18so3829315fxm.16 for <tsvwg@ietf.org>; Fri, 10 Dec 2010 08:31:34 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:user-agent:date:subject:from :to:cc:message-id:thread-topic:thread-index:in-reply-to:mime-version :content-type:content-transfer-encoding; bh=oziLbQbZG95UCzShVVeF2dznxcOY9t/V95bwbY99wlw=; b=x/of1RAQQg5XPBFYN827fkZQ/R60FaLZ3Tl1IEf+qc+Zg/8PE/37uXUzbKOIDswtzj KIzAb9c3zyNwFCC/UL2Wa2+FLJA4nPJt887k5y+OZtAw+/5O3ibmJQCofk6ztq5t0Cvk btNz18wlAIOPMOMWdFLEX4a6RlMZ+ypoedv3M=
DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=user-agent:date:subject:from:to:cc:message-id:thread-topic :thread-index:in-reply-to:mime-version:content-type :content-transfer-encoding; b=eyYi/tZ8n6yfPThJ069xFPunFSOHL+JfR2fw3gmchKN76lzf19GxItJiMNU36OYcj2 Qp3oMokhec08hiQBXb0PHHlPHMmTq3/zKxJvU0eXn+HXkbPt7U+YPRqFLffIDBJm8G27 iNY4qF8T+UjAgGDWehOt8tfwd+tTIW44GMLYQ=
Received: by 10.223.86.65 with SMTP id r1mr1106871fal.24.1291998694741; Fri, 10 Dec 2010 08:31:34 -0800 (PST)
Received: from [10.21.146.75] (128-107-239-234.cisco.com [128.107.239.234]) by mx.google.com with ESMTPS id c11sm952900fav.2.2010.12.10.08.31.27 (version=SSLv3 cipher=RC4-MD5); Fri, 10 Dec 2010 08:31:31 -0800 (PST)
User-Agent: Microsoft-Entourage/12.26.0.100708
Date: Fri, 10 Dec 2010 08:31:34 -0800
Subject: Re: quick failover in SCTP
From: Preethi Natarajan <preethi.cis@gmail.com>
To: Michael Tüxen <Michael.Tuexen@lurchi.franken.de>, tsvwg@ietf.org
Message-ID: <C92795E6.B4C4%preethi.cis@gmail.com>
Thread-Topic: quick failover in SCTP
Thread-Index: AcuYh7VOqsxNYn1pSU6kV9xX/Jl6ow==
In-Reply-To: <73957417-9AE7-4C7E-A042-BC29033E9865@lurchi.franken.de>
Mime-version: 1.0
Content-type: text/plain; charset="ISO-8859-1"
Content-transfer-encoding: quoted-printable
X-BeenThere: tsvwg@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: Transport Area Working Group <tsvwg.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/tsvwg>, <mailto:tsvwg-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/tsvwg>
List-Post: <mailto:tsvwg@ietf.org>
List-Help: <mailto:tsvwg-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tsvwg>, <mailto:tsvwg-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 10 Dec 2010 16:30:08 -0000

Hello all,

A new version of the quick failover draft
(draft-nishida-tsvwg-sctp-failover-02) is now available at
http://www.ietf.org/id/draft-nishida-tsvwg-sctp-failover-02.txt.
 
The failover algorithm (Section 4.3) has been updated based on
comments/feedback from TSVWG.
 
Please let us know if you have questions/comments.

Thanks,
Preethi

On 10/11/10 10:01 AM, "Michael Tüxen" <Michael.Tuexen@lurchi.franken.de>
wrote:

> Hi Preethi,
> 
> comments in-lne.
> 
> Best regards
> Michael
> 
> On Oct 11, 2010, at 6:02 PM, Preethi Natarajan wrote:
> 
>> Michael,
>> 
>> Thanks for the insightful comments/suggestions. Please see my responses
>> below.
>> 
>> 
>> On 10/9/10 5:34 AM, "Michael Tüxen" <Michael.Tuexen@lurchi.franken.de>
>> wrote:
>> 
>>> On Oct 9, 2010, at 12:04 PM, Yoshifumi Nishida wrote:
>>> 
>>>> Hello Michael,
>>>> 
>>>> Thanks for your response.
>>>> 
>>>> 2010/10/8 Michael Tüxen <Michael.Tuexen@lurchi.franken.de>:
>>>>> Hello Nishida-san,
>>>>> 
>>>>> OK, I thought about this some time and think it would be good
>>>>> to specify a way for a quick failover which can be implemented
>>>>> at the sender only.
>>>>> I would like to see some extensions to you suggestion:
>>>>> * Introduce a threshold (call it PFMR for now).
>>>>> Then use
>>>>> if (error counter > PMR)
>>>>>    the path is inactive.
>>>>> if (error counter <= PMR) && (error counter > PFMR)
>>>>>    the path is potentially failed.
>>>>> Using PFMR = 0 is what you suggest, PFMR=PMR gives
>>>>> the old behavior.
>>>> 
>>>> I thought similar thing and I agree with providing a way to disable PF.
>>>> I tend to agree with this idea, but one thing I'm not very sure is how
>>>> PFMR != 0 && PFMR < PMR can be useful.
>>> I could image someone wanting to call a path potentially failed
>>> after 2 consecutive timer based retransmission instead of 1.
>>> Just being a bit more conservative. This might help deploying
>>> such a feature in SIGTRAN networks where CMT is not deployed.
>>> For CMT traffic, PFMR==0 is the right choice, I guess.
>>> But I think PF is also very helpful in non-CMT scenarios.
>> 
>> Preethi: Good point. What you are suggesting is a tunable PFMR threshold
>> while the current draft always assumes PFMR=0, the most aggressive behavior.
>> I don't see how conservative PFMR values can be helpful but it may be a good
>> idea to have it just in case.
>> 
>> 
>>>>> * Specify that you start sending HBs when the path is
>>>>> PF. Explicitly allow PFHB.interval=0, which
>>>>> I think is a good choice. Maybe we can just remove PFHB.interval.
>>>> 
>>>> Hmm. Sorry. I might not quite follow this point.
>>>> Does PFHB.interval=0 mean suppress sending HB during PF state?
>>> No. I mean just to send them every RTO.
>>> Having a specific interval allows this by setting PFHB.interval=0.
>>> I was just thinking whether one can remove the parameter and send
>>> the HB every RTO (and doubling it)... The same as using PFHB.interval=0.
>> 
>> Preethi: I agree. I don't think we need a PFHB.interval. In PF state, HBs
>> are sent once every RTO.
>> 
>> 
>>>>> * Make sure that the following works: The application disabled HBs.
>>>>> When a path enters PF (or failed) HB are sent to get the path
>>>>> active again. If it is active, no HB should be send (since
>>>>> the application disables them).
>> 
>> Preethi: Michael can you clarify this a bit? Looks like we want to confirm
>> the following -- apps can control only those HBs that get sent (or not sent)
>> during path failure. Apps do not have control over PF HBs; i.e., apps cannot
>> enable/disable PF HBs. Is that right?
> The socket API allows to configure the HB.interval and to enable/disable
> HBs at all. What I suggest is the no matter if the HB are disabled, they
> are sent for
> * initial path verification (not within the scope of your ID, but noted
>   to make things clear)
> * getting a path out of potentially failed or failed.
> In other words: If the application disables HBs, it only enables the
> ones which do path supervision when the path is active and not potentially
> failed.
> 
> Does this clarify things?
>> 
>>>>> * Provide a way that applications are not bothered with
>>>>> state change notification related to PF when not explicitly
>>>>> subscribed.
>> 
>> Preethi: Good point. To clarify: when PF is on, apps will be notified only
>> about PF-to-failure and failure-to-active state changes. Apps will not be
>> notified about active-to-PF state change.
> Yes. This means that we can enable PF system wide without apps seeing
> any difference.
>> 
>>>>> 
>>>>> * Make clear what to do when all paths are PF.
>>>>> 
>>>>> * Make clear what to do when all paths are failed.
>>>>> 
>> 
>> Preethi: I agree with both points. We can clarify these in the draft.
>> 
>> Thanks,
>> Preethi
>> 
>> 
>