Re: [rtcweb] Meaning of SHOULD support/use interleaving

Christer Holmberg <> Mon, 27 October 2014 20:05 UTC

Return-Path: <>
Received: from localhost ( []) by (Postfix) with ESMTP id C42411AD3F3 for <>; Mon, 27 Oct 2014 13:05:59 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -4.2
X-Spam-Status: No, score=-4.2 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_MED=-2.3, SPF_PASS=-0.001] autolearn=ham
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id hVP4avY92e13 for <>; Mon, 27 Oct 2014 13:05:56 -0700 (PDT)
Received: from ( []) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 177D11AD3D7 for <>; Mon, 27 Oct 2014 13:05:55 -0700 (PDT)
X-AuditID: c1b4fb2d-f79fc6d000001087-a0-544ea5a2b45f
Received: from (Unknown_Domain []) by (Symantec Mail Security) with SMTP id 85.21.04231.2A5AE445; Mon, 27 Oct 2014 21:05:54 +0100 (CET)
Received: from ([]) by ([]) with mapi id 14.03.0174.001; Mon, 27 Oct 2014 21:05:53 +0100
From: Christer Holmberg <>
To: Michael Tuexen <>
Thread-Topic: [rtcweb] Meaning of SHOULD support/use interleaving
Thread-Index: Ac/x55WTmtr0wn1FRpKkoOi9WMJX3////5gA///tr8CAAFjuAP//7KkQgAAtDgCAABO7Sw==
Date: Mon, 27 Oct 2014 20:05:52 +0000
Message-ID: <>
References: <> <> <> <> <>, <>
In-Reply-To: <>
Accept-Language: en-US
Content-Language: en-GB
Content-Type: multipart/alternative; boundary="_000_7594FB04B1934943A5C02806D1A2204B1D4CEBABESESSMB209erics_"
MIME-Version: 1.0
X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFmpikeLIzCtJLcpLzFFi42KZGfG3RnfRUr8Qgw33xCyO9XWxWVxsWsJo sfZfO7sDs8eVCVdYPZYs+cnksaFlB1MAcxSXTUpqTmZZapG+XQJXxoZZM9gLWiMrGjZfYmtg 3OfdxcjJISFgIrFp33JmCFtM4sK99WxdjFwcQgJHGCWu/9/LBOEsYZTYdWgdaxcjBwebgIVE 9z9tkAYRAVOJg8vnsYDYzALBEr1dk1lBbGEBB4mzOyexQ9Q4SrS9Pc8EYYdJLLwxG8xmEVCV mNC7gQ3E5hXwlWhYtokdYtcbJom+e5/AEpwCrhINDdfArmMEuu77qTVMEMvEJZq+rGSFuFpA Ysme81AfiEq8fPwP7E5mgXyJWRNVIOYLSpyc+YRlAqPILCTdsxCqZiGpgigxkPjy/jaUrS2x bOFrZghbX6L7/WkmZPEFjOyrGEWLU4uLc9ONjPVSizKTi4vz8/TyUks2MQIj7eCW37o7GFe/ djzEKMDBqMTD+6HGN0SINbGsuDL3EKM0B4uSOO+ic/OChQTSE0tSs1NTC1KL4otKc1KLDzEy cXBKNTDKL/qlb9vjydRoahHVv/ypyRv9pzG1udz2jU5FB/brMYs5yERYdTP/mT8xn4X9pbnc BM87F66sOfxtfz3/nNKJP1rVE932P736/Xd8mHv1mWtCIvZG7Y4cXF/82CelGGdzM4a08J/V K0urMv0jff9VpWu2cbspV1dZ+w21+SeDnn+35nmVpMRSnJFoqMVcVJwIANnUnb6VAgAA
Cc: "" <>
Subject: Re: [rtcweb] Meaning of SHOULD support/use interleaving
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Real-Time Communication in WEB-browsers working group list <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Mon, 27 Oct 2014 20:05:59 -0000


I am not suggesting different flavors - I am suggesting to make the usage of interleaving optional. Other SCTP features are also optional (including reliability, ordering etc).

We CAN write/reference guidelines on when it DOES make sense to use interleaving.



Sent from my Windows Phone
From: Michael Tuexen<>
Sent: ‎27/‎10/‎2014 21:55
To: Christer Holmberg<>
Cc: Harald Alvestrand<>;<>
Subject: Re: [rtcweb] Meaning of SHOULD support/use interleaving

On 27 Oct 2014, at 19:41, Christer Holmberg <> wrote:

> Hi,
>>>>> Within the CLUE WG, we had a discussion regarding the following statement in section 6.1 of draft-ietf-rtcweb-data-channel-12.txt:
>>>>> "The support for message interleaving as defined in
>>>>>                [I-D.ietf-tsvwg-sctp-ndata] SHOULD be used."
>>>>> First, it is a little unclear what "the support SHOULD be used" means.
>>>> My understanding is that SCTP implementations supporting the extension will use it.
>>>> This is negotiated during the setup of the SCTP association.
>>> If it's done on SCTP level, why do we need to talk about it in the data channel draft?
>>> Is there a reason why it is important to use it for data channels? If so, does it apply to data channels in general?
>> NDATA was added in order to avoid head-of-line blocking on the transport (if I understand this correctly, until
>> this was added, sending a huge message would block the delivery of small messages on all channels until the huge message was fully delivered).
>> Unlike Michael, I see no reason to make this a SHOULD; I think it should be a MUST, and the older
>> implementations in browsers should just be called out as non-conformant.
>> That said, I think that data channels ought to interoperate successfully with implementations that don't support the
>> extension - but data channel implementations in WebRTC endpoints should be under a "MUST implement, MUST offer" ruleset.
> First, keep in mind that I am NOT talking about WebRTC endpoints (which is one reason we shouldn't call it webrtc data channel to begin with, but that's another story...), but ANY type of endpoint that wants to use a data channel.
> Second, I am not talking about MUST support, but MUST use/offer.
> Assume I have a CLUE endpoint, which will use a data channel ONLY to transport CLUE messages. CLUE messages aren't that hugeto begin with, and there will be no blocking of small messages on other channels - as there are no other channels.
> So, why does the CLUE endpoint need to offer interleaving?
As far as I know we don't have different flavours of data channels. At least right now.

Best regards
> Regards,
> Christer
>> Whether messages are interleaved or not depends on the stream scheduler. This is a sender side only decision. The receiver has to deal with it.
>> It is not a MUST, since there are implementations now in use which don't support the extension.
>> Best regards
>> Michael
>>> Second, does it mean that any data channel protocol (e.g CLUE) SHOULD use interleaving, even if the characteristics of the protocol wouldn't require it?
>>> Regards,
>>> Christer
>>> _______________________________________________
>>> rtcweb mailing list
>> _______________________________________________
>> rtcweb mailing list
> --
> Surveillance is pervasive. Go Dark.
> _______________________________________________
> rtcweb mailing list
> _______________________________________________
> rtcweb mailing list