Re: [tsvwg] Question about RFC 4960 (SCTP) - initial stream sequence number

Yutaka Takeda <yt0916@gmail.com> Fri, 08 February 2019 23:47 UTC

Return-Path: <yt0916@gmail.com>
X-Original-To: tsvwg@ietfa.amsl.com
Delivered-To: tsvwg@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 4BDB9130EBE for <tsvwg@ietfa.amsl.com>; Fri, 8 Feb 2019 15:47:58 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.748
X-Spam-Level:
X-Spam-Status: No, score=-1.748 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=no autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id h7THBj1MYQPO for <tsvwg@ietfa.amsl.com>; Fri, 8 Feb 2019 15:47:56 -0800 (PST)
Received: from mail-qt1-x834.google.com (mail-qt1-x834.google.com [IPv6:2607:f8b0:4864:20::834]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 25D9A130EB9 for <tsvwg@ietf.org>; Fri, 8 Feb 2019 15:47:56 -0800 (PST)
Received: by mail-qt1-x834.google.com with SMTP id l11so6034726qtp.0 for <tsvwg@ietf.org>; Fri, 08 Feb 2019 15:47:56 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=UNPXAvEIwuTEsbENRHCG9jhZWpwtIRQFq0RQplwzGSs=; b=Qo/+sXiBAyTXEELMlkTi/6GFtXCoefOvOXf6eRmOT5oyerCeH1eTMDj9YxQRTQCo66 Fl9tVB/fMO03w6n6g3HEt6AYglusFSJET+R6b2Jq5xUl0SIakOlp2qWvfSpkOoeiUySQ qHZmMkV++z3eQ5mvIvO4A4aVlJJ65FuonGQsgMf6sr782fLYKlpWSCOKpfMD4WQL5IFK rfPslRceahuDJXdv7R345Zepcenvdn5dUA7zyUWCRJzPGnxhD/HzZcsZblGUiFdlzOZy DY3ds/LSfA/fvC86bBVjnbVE0S3ulAF4ot1XKe2/BMaL/WCrZ/ng4JHG0A6uhxtMgZhw L6Kw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=UNPXAvEIwuTEsbENRHCG9jhZWpwtIRQFq0RQplwzGSs=; b=bnt05wRYBgGHeXe6U6++U0nBTx1mJ1GcrkdJqQZ/WoR7BydsutE2NVBSpkHs6i+XsK YhZHyBRZ0A7L2qP0N361Z2sx5Uk3gdn7ExRazqfUsN8S3xd2PAuIgywKPMuT0xnaXOLO A85KnHomsIp+sejrki2jAYKUpqS7yVonhnV1oQ/nw+Pkqefl/1axdyWKpHGl3urS63sv UNG5MQIDrzJq2Mm7tndnuRvEEKedk3gSBfuKCBcY8MIlkqIJL0G1pXueRx0VqZxvbXhU Wu4VYieRXJY453SwZ7qjGz4ilbtHefh4j+qn6Ffm8a1j8tYwOEAkzgFzQkdIwPYTW5g2 ZY+A==
X-Gm-Message-State: AHQUAuboY30THJDX5s1kJizlV6di/tmzZx33Qrbw3qIl1T0POfS2PfC/ aQ2vJldTC0zer0GgnP3hdzcxq7bdroyVhobdD8sVWw==
X-Google-Smtp-Source: AHgI3IZlpQycjKKg5a6AnTLgJXpq0Zn1tV1+H3JnRKutfgE+MGEo0vdYYtqrp2oEW6Dgs1Qg+ldJKpHmPCM2uZ1phno=
X-Received: by 2002:aed:22c6:: with SMTP id q6mr18849071qtc.145.1549669674990; Fri, 08 Feb 2019 15:47:54 -0800 (PST)
MIME-Version: 1.0
References: <CADozWMnCZMfgT9yHb0NyWEaWj7q0smi=0A4nduQKDUMZh-NTNQ@mail.gmail.com> <305683D2-2FE7-496A-AE35-2F53242B029B@lurchi.franken.de>
In-Reply-To: <305683D2-2FE7-496A-AE35-2F53242B029B@lurchi.franken.de>
From: Yutaka Takeda <yt0916@gmail.com>
Date: Fri, 08 Feb 2019 15:47:44 -0800
Message-ID: <CADozWMmg0pcBdKo_Ege7ZykuRtFkjSHzSxAMyQZit3nLXm2VWw@mail.gmail.com>
To: Michael Tuexen <Michael.Tuexen@lurchi.franken.de>
Cc: tsvwg@ietf.org
Content-Type: multipart/alternative; boundary="0000000000007f40f405816a96ce"
Archived-At: <https://mailarchive.ietf.org/arch/msg/tsvwg/It3JpZF1q1Zy-B3lNgScaTSTPbI>
Subject: Re: [tsvwg] Question about RFC 4960 (SCTP) - initial stream sequence number
X-BeenThere: tsvwg@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Transport Area Working Group <tsvwg.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tsvwg>, <mailto:tsvwg-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/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, 08 Feb 2019 23:47:58 -0000

Oh -! how did I miss that one...
Thank you Michael, my problem solved!


On Fri, Feb 8, 2019 at 3:40 PM Michael Tuexen <
Michael.Tuexen@lurchi.franken.de> wrote:

> > On 9. Feb 2019, at 00:22, Yutaka Takeda <yt0916@gmail.com> wrote:
> >
> > As I was reading RFC 4960 (also its errata-08), I was not able to find
> any text which explained
> > how the initial Stream Sequence Number, or SSN, of DATA chunk for a
> particular stream identifier,
> > or SI, is determined.
> This is specified in https://tools.ietf.org/html/rfc4960#section-6.5
>
>    The Stream Sequence Number in all the streams MUST start from 0 when
>    the association is established.  Also, when the Stream Sequence
>    Number reaches the value 65535 the next Stream Sequence Number MUST
>    be set to 0.
>
> Does that answer your question?
>
> Best regards
> Michael
> >
> > It is possible that a receiver of a stream can take the first DATA chunk
> that is "due" by Cumulative TSN,
> > however, waiting for the chunk to be due (everything else before the
> chunk was all received) could cause
> > a delay for delivering the already received chunk to the upper layer.
> >
> > Here's an example on the receiver side queue:
> >
> > TSN SI SSN BE status
> > --- -- --- -- -------
> > 100  2 10  11 missing  <== Cumulative TSN
> > 101  2 11  11 received (waiting for TSN:100)
> > 102  2 12  11 received (waiting for TSN:101)
> > 103  2 13  11 missing  (would wait for TSN:102)
> > 104  1 10  11 received <== should it wait for TSN:103?
> >
> > Initial TSN is 100 in the above example. For simplicity, both streams
> (SI=1 and 2) starts
> > with SSN=10.
> >
> > My first question is if the chunk (TSN:104) has to wait for arrivals of
> TSN 100 and 103.
> > If yes, then as I mentioned, it means there's a head-of-line blocking
> between the streams.
> > (SI=1 is blocked by SI=2 in the above case)
> >
> > If no, then we could pass the chunk at TSN=104 to "stream level"
> (reassembly queue, etc), but the
> > stream level would not know whether the SSN=10 is supposed to be the
> first chunk to be delivered to the
> > upper layer (of course, to guarantee the ordered delivery).
> >
> > To me, along with "unordered" delivery is implementation, it is natural
> to pass received chunks to stream level
> > right away regardless of "ordered" or "unordered" and guarantee the
> ordering at stream level (without being
> > blocked by other streams' retransmission), but doing so requires
> "initial SSN" agreed by both ends.
> >
> > I more than likely is missing something here.  It would be greatly
> appreciated if you could give me any insight
> > into this problem.
> >
> > Yutaka
>
>