From: Vlad Yasevich <vyasevich@gmail.com>
To: Chang <changxiangzhong@gmail.com>,
nhorman@tuxdriver.com, davem@davemloft.net
Cc: linux-sctp@vger.kernel.org, netdev@vger.kernel.org,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH] net: sctp: set chunk->tsn_gap_acked at the end of cycle
Date: Sat, 23 Nov 2013 14:37:59 -0500 [thread overview]
Message-ID: <52910417.3080803@gmail.com> (raw)
In-Reply-To: <52908E04.40200@gmail.com>
On 11/23/2013 06:14 AM, Chang wrote:
> Hi,
> Could you please why a **reneged** newly acked TSN doesn't qualify the
> highest_new_tsn? What's the wrongs of doing that?
>
> I've been thinking a few scenarios, but I couldn't figure out what's
> wrong with that.
>
The spec is a bit conflicting on this topic. Here is what it says
Section 7.2.4
Miss indications SHOULD follow the HTNA (Highest TSN Newly
Acknowledged) algorithm. For each incoming SACK, miss indications
are incremented only for missing TSNs prior to the highest TSN newly
acknowledged in the SACK. A newly acknowledged DATA chunk is one not
previously acknowledged in a SACK.
But section 6.2.1 says:
iii) If the SACK is missing a TSN that was previously acknowledged
via a Gap Ack Block (e.g., the data receiver reneged on the
data), then consider the corresponding DATA that might be
possibly missing: Count one miss indication towards Fast
Retransmit as described in Section 7.2.4, and if no
retransmit timer is running for the destination address to
which the DATA chunk was originally transmitted, then T3-rtx
is started for that destination address.
So, the question becomes does the reneged tsn update HTNA counter? It
has been acked by a previous SACK, but 6.2.1 says to treat as missing.
The more I look at this the more I think we should continue doing what
we are doing which is following section 6.2.1.
-vlad
prev parent reply other threads:[~2013-11-23 19:37 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-11-22 7:49 [PATCH] net: sctp: set chunk->tsn_gap_acked at the end of cycle Chang Xiangzhong
2013-11-22 12:10 ` Neil Horman
2013-11-22 14:27 ` Vlad Yasevich
2013-11-22 19:24 ` Chang
2013-11-22 22:48 ` Vlad Yasevich
2013-11-23 8:22 ` Chang
2013-11-23 11:14 ` Chang
2013-11-23 19:37 ` Vlad Yasevich [this message]
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=52910417.3080803@gmail.com \
--to=vyasevich@gmail.com \
--cc=changxiangzhong@gmail.com \
--cc=davem@davemloft.net \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-sctp@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=nhorman@tuxdriver.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
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;
as well as URLs for NNTP newsgroup(s).