Re: [rtcweb] Sending of zero-length messages over data channels

"Makaraju, Maridi Raju (Raju)" <Raju.Makaraju@alcatel-lucent.com> Wed, 23 July 2014 14:57 UTC

Return-Path: <Raju.Makaraju@alcatel-lucent.com>
X-Original-To: rtcweb@ietfa.amsl.com
Delivered-To: rtcweb@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 8A3061B28C4 for <rtcweb@ietfa.amsl.com>; Wed, 23 Jul 2014 07:57:51 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.9
X-Spam-Level:
X-Spam-Status: No, score=-6.9 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_HI=-5] autolearn=ham
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 1bMrxk5IO4jJ for <rtcweb@ietfa.amsl.com>; Wed, 23 Jul 2014 07:57:49 -0700 (PDT)
Received: from ihemail1.lucent.com (ihemail1.lucent.com [135.245.0.33]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id A53841B28C8 for <rtcweb@ietf.org>; Wed, 23 Jul 2014 07:57:48 -0700 (PDT)
Received: from us70tusmtp1.zam.alcatel-lucent.com (h135-5-2-63.lucent.com [135.5.2.63]) by ihemail1.lucent.com (8.13.8/IER-o) with ESMTP id s6NEvkAH010730 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Wed, 23 Jul 2014 09:57:46 -0500 (CDT)
Received: from US70UWXCHHUB01.zam.alcatel-lucent.com (us70uwxchhub01.zam.alcatel-lucent.com [135.5.2.48]) by us70tusmtp1.zam.alcatel-lucent.com (GMO) with ESMTP id s6NEviZX010155 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=FAIL); Wed, 23 Jul 2014 10:57:45 -0400
Received: from US70UWXCHMBA02.zam.alcatel-lucent.com ([169.254.8.175]) by US70UWXCHHUB01.zam.alcatel-lucent.com ([135.5.2.48]) with mapi id 14.02.0247.003; Wed, 23 Jul 2014 10:57:44 -0400
From: "Makaraju, Maridi Raju (Raju)" <Raju.Makaraju@alcatel-lucent.com>
To: Michael Tuexen <Michael.Tuexen@lurchi.franken.de>
Thread-Topic: [rtcweb] Sending of zero-length messages over data channels
Thread-Index: AQHPpipfEWtPO6jXOES6Y6R7CwNaxJutiTxggABiGoD//9LzQA==
Date: Wed, 23 Jul 2014 14:57:44 +0000
Message-ID: <E1FE4C082A89A246A11D7F32A95A17828E4BF620@US70UWXCHMBA02.zam.alcatel-lucent.com>
References: <CAOJ7v-0F9pysYLehjTVDv1Sxz3TKaxi2y6J7RrpGqMdA=tiR_g@mail.gmail.com> <E1FE4C082A89A246A11D7F32A95A17828E4BCC13@US70UWXCHMBA02.zam.alcatel-lucent.com> <D865CFF8-1656-49EB-A55B-184670BECB59@lurchi.franken.de>
In-Reply-To: <D865CFF8-1656-49EB-A55B-184670BECB59@lurchi.franken.de>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [135.5.27.16]
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
Archived-At: http://mailarchive.ietf.org/arch/msg/rtcweb/8YgBiM5yOiIGeU20GZTuEC322n0
Cc: "rtcweb@ietf.org" <rtcweb@ietf.org>
Subject: Re: [rtcweb] Sending of zero-length messages over data channels
X-BeenThere: rtcweb@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Real-Time Communication in WEB-browsers working group list <rtcweb.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/rtcweb>, <mailto:rtcweb-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/rtcweb/>
List-Post: <mailto:rtcweb@ietf.org>
List-Help: <mailto:rtcweb-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/rtcweb>, <mailto:rtcweb-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 23 Jul 2014 14:57:51 -0000

> > In the existing data channel protocol, it's not possible to send zero-
> length messages, because SCTP prohibits it.
> >
> > While this may seem to be an academic point, it does represent a
> divergence from WebSockets, and this difference could be meaningful to
> applications who use empty messages for keepalives. Or maybe the Yo app.
> >
> > Since we can't send a zero-length SCTP message, I propose we add a
> PPID_EMPTY value or something similar to indicate a message with empty
> content.
> > [Raju] There is a genuine need for this and the proposal is good.
> > However, I am thinking of an alternate proposal to achieve the same but in
> a generic way.
> > Define a PPID_OOB (out of band) or something similar.
> > Apps can use this to send a message of non-zero length. For the "Yo" kind
> of app or empty stream-level heartbeat purpose, app can send a 1 byte length
> message, which other end's app ignores.
> What do you want to check with the heartbeat purpose? If you can talk to the
> peer?
> That doesn't need to be done for every data channel, but only once for all
> of them.
> As far as I understand, this is done by ICE...
<Raju2> 
Yes, heartbeats to the peer will be taken care by SCTP heartbeats and/or DTLS heartbeats and/or ICE.
But, that does not guarantee data channel level liveliness.
Generic heartbeats are just one of the use cases for PPID_OOB proposal. Other use cases for this include... app can send low-frequency OOB data to the peer within the same data channel instead of creating a new one. This way the OOB will not interfere with syntax+semantics of the main app protocol used in that data channel.
</Raju2>

BR
Raju