From: Vladislav Yasevich <vladislav.yasevich@hp•com>
To: netdev@vger•kernel.org, davem@davemloft•net,
Wei Yongjun <yjwei@cn•fujitsu.com>,
Sridhar Samudrala <sri@us•ibm.com>,
linux-sctp@vger•kernel.org
Subject: Re: [PATCH] sctp: Enforce maximum retransmissions during shutdown
Date: Wed, 29 Jun 2011 10:58:41 -0400 [thread overview]
Message-ID: <4E0B3DA1.9060200@hp.com> (raw)
In-Reply-To: <20110629143649.GC10085@canuck.infradead.org>
On 06/29/2011 10:36 AM, Thomas Graf wrote:
> On Wed, Jun 29, 2011 at 10:20:01AM -0400, Vladislav Yasevich wrote:
>> I think in this particular case, the receiver has to terminate, not the sender.
>> Look at how tcp_close() handles this.
>>
>> As long as receiver is available, the sender should continue to try
>> sending data.
>
> The receiver does not know that the sender wishes to shutdown the
> association. No shutdown request has been sent yet.
>
> I don't think we should be relying on the behaviour of the sender for
> the receiver to be able to ever free its ressources. We will be
> retransmitting data and keeping an association alive _forever_ for no
> purpose.
>
> If there is no reliable way of _ever_ doing a graceful shutdown then
> the only alternative is to just ABORT in the first place.
>
> The difference in TCP is that we can close the connection half-way,
> something we can't do in sctp.
>
But what you are proposing violates the protocol. Zero-window probes do
not count against max retransmissions, even when you are in shutdown pending
state.
You'll come out of this one of 2 ways:
1) receiver wakes up and processes data. This will allow for graceful termination.
2) receiver dies. Since receive window is full, we have data queued, and this will
trigger an ABORT to be sent to the sender.
What you patch is doing is taking a perfectly valid scenario and putting a time limit
on it in violation of the spec.
-vlad
next prev parent reply other threads:[~2011-06-29 14:58 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-06-29 13:57 [PATCH] sctp: Enforce maximum retransmissions during shutdown Thomas Graf
2011-06-29 14:20 ` Vladislav Yasevich
2011-06-29 14:36 ` Thomas Graf
2011-06-29 14:58 ` Vladislav Yasevich [this message]
2011-06-29 15:48 ` Thomas Graf
2011-06-29 16:14 ` Vladislav Yasevich
2011-06-30 8:49 ` Thomas Graf
2011-06-30 14:08 ` Vladislav Yasevich
2011-06-30 16:17 ` Thomas Graf
2011-07-04 13:50 ` [PATCHv2] sctp: Enforce retransmission limit " Thomas Graf
2011-07-06 7:24 ` David Miller
2011-07-06 12:15 ` Neil Horman
2011-07-06 13:16 ` Thomas Graf
2011-07-06 14:19 ` Neil Horman
2011-07-06 13:42 ` Vladislav Yasevich
2011-07-06 14:18 ` Thomas Graf
2011-07-06 14:31 ` Vladislav Yasevich
2011-07-06 15:49 ` Thomas Graf
2011-07-06 16:23 ` Vladislav Yasevich
2011-07-06 21:58 ` Thomas Graf
2011-07-07 10:28 ` [PATCHv3] " Thomas Graf
2011-07-07 13:36 ` Vladislav Yasevich
2011-07-07 21:09 ` David Miller
2011-06-30 13:31 ` [PATCH] sctp: ABORT if receive queue is not empty while closing socket Thomas Graf
2011-06-30 14:11 ` Vladislav Yasevich
2011-06-30 16:19 ` Thomas Graf
2011-06-30 16:27 ` Vladislav Yasevich
2011-07-08 10:57 ` [PATCHv2] " Thomas Graf
2011-07-08 13:49 ` Vladislav Yasevich
2011-07-08 14:29 ` Thomas Graf
2011-07-08 14:37 ` [PATCHv3] sctp: ABORT if receive, reassmbly, or reodering " Thomas Graf
2011-07-08 16:37 ` David Miller
2011-07-08 16:43 ` Vladislav Yasevich
2011-07-08 16:53 ` David Miller
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4E0B3DA1.9060200@hp.com \
--to=vladislav.yasevich@hp$(echo .)com \
--cc=davem@davemloft$(echo .)net \
--cc=linux-sctp@vger$(echo .)kernel.org \
--cc=netdev@vger$(echo .)kernel.org \
--cc=sri@us$(echo .)ibm.com \
--cc=yjwei@cn$(echo .)fujitsu.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox