[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4A924734.6000702@cn.fujitsu.com>
Date: Mon, 24 Aug 2009 15:54:28 +0800
From: Wei Yongjun <yjwei@...fujitsu.com>
To: Luo Chunbo <chunbo.luo@...driver.com>
CC: Vlad Yasevich <vladislav.yasevich@...com>, davem@...emloft.net,
netdev@...r.kernel.org, linux-sctp@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH] sctp: fix the check for path failure detection
Luo Chunbo 写道:
> On Fri, 2009-08-21 at 17:47 -0400, Vlad Yasevich wrote:
>
>> Chunbo Luo wrote:
>>
>>> The transport is marked DOWN immediately after sending the max+1 HB,
>>> which is equal to not sending the max+1 HB at all. We should wait
>>> a next period and make sure the last HB is not acknowledged.
>>>
>>>
>> I don't think this code does what you want either...
>>
>> Let's say path_max_rxt = 2. What we'll get is:
>> timeout:
>> err++ (1)
>> if (err > 2) false
>> send HB
>> reset timer
>> timeout:
>> err++ (2)
>> if (err > 2) false
>> send HB
>> reset timer
>> timeout:
>> err++ (3)
>> if (err > 2)
>> set transport DOWN
>> send HB
>> reset timer.
>>
>> We only had 2 unacknowledged HB when we should have had 3.
>>
>
> The error count is increment after the HB was sent, and the error count
> check is before sending HB.
>
> Let's say path_max_rxt =2 . What we really get is:
>
> timeout:
> if( err > 2) false
> send HB
> err++ (1)
> reset timer
> timeout:
> if( err > 2) false
> send HB
> err++ (2)
> reset timer
> timeout:
> if( err > 2) false
> send HB
> err++ (3)
> reset timer
> timeout:
> if( err > 2)
> set transport DOWN
> send HB
> reset timer
>
> Here We had 3 unacknowledged HBs
But with Vlad's advice, you just need to do little change to the kernel
codes, may be two lines's patch, and it can do the same thing.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists