Re: [rtcweb] PPID, UTF-16 and DOMString (Re: RTCWEB Data Channel: Usage of PPID for protocol multiplexing)
"Makaraju, Maridi Raju (Raju)" <Raju.Makaraju@alcatel-lucent.com> Sat, 08 February 2014 01:15 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 99E081AD8F7 for <rtcweb@ietfa.amsl.com>; Fri, 7 Feb 2014 17:15:02 -0800 (PST)
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 Ky8-_X50XYE1 for <rtcweb@ietfa.amsl.com>; Fri, 7 Feb 2014 17:14:56 -0800 (PST)
Received: from ihemail3.lucent.com (ihemail3.lucent.com [135.245.0.37]) by ietfa.amsl.com (Postfix) with ESMTP id 9C3B21AD8F4 for <rtcweb@ietf.org>; Fri, 7 Feb 2014 17:14:56 -0800 (PST)
Received: from us70uusmtp4.zam.alcatel-lucent.com (h135-5-2-66.lucent.com [135.5.2.66]) by ihemail3.lucent.com (8.13.8/IER-o) with ESMTP id s181ErsM027292 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=FAIL); Fri, 7 Feb 2014 19:14:53 -0600 (CST)
Received: from US70UWXCHHUB01.zam.alcatel-lucent.com (us70uwxchhub01.zam.alcatel-lucent.com [135.5.2.48]) by us70uusmtp4.zam.alcatel-lucent.com (GMO) with ESMTP id s181EqDM006149 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=FAIL); Fri, 7 Feb 2014 20:14:52 -0500
Received: from US70UWXCHMBA02.zam.alcatel-lucent.com ([169.254.8.212]) by US70UWXCHHUB01.zam.alcatel-lucent.com ([135.5.2.48]) with mapi id 14.02.0247.003; Fri, 7 Feb 2014 20:14:52 -0500
From: "Makaraju, Maridi Raju (Raju)" <Raju.Makaraju@alcatel-lucent.com>
To: Christer Holmberg <christer.holmberg@ericsson.com>, Martin Thomson <martin.thomson@gmail.com>
Thread-Topic: [rtcweb] PPID, UTF-16 and DOMString (Re: RTCWEB Data Channel: Usage of PPID for protocol multiplexing)
Thread-Index: AQHPI5G5uqx5hsIOAEq9u24GTLgZVJqqTeJQgAB8IwCAAARsAP//vsSQ
Date: Sat, 08 Feb 2014 01:14:52 +0000
Message-ID: <E1FE4C082A89A246A11D7F32A95A17826DFD4581@US70UWXCHMBA02.zam.alcatel-lucent.com>
References: <7594FB04B1934943A5C02806D1A2204B1D15E955@ESESSMB209.ericsson.se> <74072016-DA11-41E8-9944-779428163EE4@lurchi.franken.de> <7594FB04B1934943A5C02806D1A2204B1D15ED94@ESESSMB209.ericsson.se> <E1FE4C082A89A246A11D7F32A95A17826DFCF6C8@US70UWXCHMBA02.zam.alcatel-lucent.com> <B304F67A-9EA2-44A0-86DD-9DD0E21CB86F@lurchi.franken.de> <52F4182F.60404@alvestrand.no> <E1FE4C082A89A246A11D7F32A95A17826DFD40C3@US70UWXCHMBA02.zam.alcatel-lucent.com>, <CABkgnnXMYt7teSpxm7chTvQPR8ThKzKQ_bq3Po_FNFv2tdBFGQ@mail.gmail.com> <7594FB04B1934943A5C02806D1A2204B1D163B26@ESESSMB209.ericsson.se>
In-Reply-To: <7594FB04B1934943A5C02806D1A2204B1D163B26@ESESSMB209.ericsson.se>
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
X-Scanned-By: MIMEDefang 2.57 on 135.245.2.37
Cc: "rtcweb@ietf.org" <rtcweb@ietf.org>
Subject: Re: [rtcweb] PPID, UTF-16 and DOMString (Re: RTCWEB Data Channel: Usage of PPID for protocol multiplexing)
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: Sat, 08 Feb 2014 01:15:03 -0000
That's good. Glad to see that no one liked the complex alternate option... yet! :-) I just put it there for completeness and some discussion. With "utf-8 on wire", which I too think is the right approach, there is some spec work todo: 1. Define IANA utf-8 ppid. Creating a new one is better instead of replacing existing DOMString as DOMString may be used by browsers for sometime to come and also to have backward compatibility/interworking. 2. Data channel core spec (http://tools.ietf.org/html/draft-ietf-rtcweb-data-channel-06#section-6.6) need to specify explictly the wire format is utf-8. Then browsers need to do the conversion from utf-16 DOMstring to utf-8 before writing on wire also in the reverse direction. -Raju > -----Original Message----- > From: Christer Holmberg [mailto:christer.holmberg@ericsson.com] > Sent: Friday, February 07, 2014 6:01 PM > To: Martin Thomson; Makaraju, Maridi Raju (Raju) > Cc: rtcweb@ietf.org > Subject: RE: [rtcweb] PPID, UTF-16 and DOMString (Re: RTCWEB Data Channel: > Usage of PPID for protocol multiplexing) > > > + 1 > > Regards, > > Christer > > ________________________________________ > From: rtcweb [rtcweb-bounces@ietf.org] on behalf of Martin Thomson > [martin.thomson@gmail.com] > Sent: Saturday, 08 February 2014 1:45 AM > To: Makaraju, Maridi Raju (Raju) > Cc: rtcweb@ietf.org > Subject: Re: [rtcweb] PPID, UTF-16 and DOMString (Re: RTCWEB Data Channel: > Usage of PPID for protocol multiplexing) > > I don't think that we need any complication here. It's a string. > > Strings are UTF-8 on the wire. > > Strings are UTF-16 (mostly) in JavaScript. > > Anything else would generate pain. > > On 7 February 2014 14:01, Makaraju, Maridi Raju (Raju) > <Raju.Makaraju@alcatel-lucent.com> wrote: > >> >> Also, I think "DOMString" PPID is too specific to Javascript, instead > it > >> should probably have a generic name like "UTF-16 String". The send API > can > >> still use DOMString as this is Javascript API. > >> > Any comments from others? > >> > >> Note: The WebSockets protocol defines the transferred strings as UTF-8. > >> http://tools.ietf.org/html/rfc6455#section-5.6 > >> > >> As far as I can tell, we've always intended to follow that example. > >> > >> The fact that Javascript implementations currently choose to represent > >> text strings as UTF-16 at their API is sad, but not an argument for > >> sending that particular text representation over the wire, or reflecting > >> the name in the API. > > > > [Raju] I agree that using UTF-8 is desired and more appropriate! Then, > should the PPID be changed from "DOMString" to "UTF-8"? Javascript based > apps have to use some library to do the conversion of DOMString/UTF-16 to > UTF-8. Alternatively, browsers can do this conversion under the APIs (send > and onmessage) before sending and after receiving UTF-8 PPID data. > > Without such conversion webrtc interworking between browsers and native > clients will be problematic (basically, will not work). > > > > Another option, which is more flexible, is to define PPIDs for different > encodings like "UTF-8", "UTF-16" (or even "base64" for binary to text > instead of using "binary" directly); then pass this encoding information to > send() and onmessage() calls, which will use these PPIDs. Passing encoding > information might be implicit (like Javavscript DOMString) in most languages > by the type of the argument to send. This way it is upto the application to > deal with the encoding conversions as it see fits. > > > > The latter approach is best suitable for interworking between clients of > similar type (web or native); but it is bit painful (to do conversions) for > clients of different types. > > > > I am wondering what kind of API calls native WebRTC API stacks (e.g. > Google Chrome's http://www.webrtc.org/webrtc-native-code-package) provide > for data channel send/onmessage ()? UTF-16 strings? Or UTF-8? > > > > -Raju > > > > _______________________________________________ > > rtcweb mailing list > > rtcweb@ietf.org > > https://www.ietf.org/mailman/listinfo/rtcweb > _______________________________________________ > rtcweb mailing list > rtcweb@ietf.org > https://www.ietf.org/mailman/listinfo/rtcweb
- [rtcweb] RTCWEB Data Channel: Usage of PPID for p… Christer Holmberg
- Re: [rtcweb] RTCWEB Data Channel: Usage of PPID f… Peter Thatcher
- Re: [rtcweb] RTCWEB Data Channel: Usage of PPID f… Makaraju, Maridi Raju (Raju)
- Re: [rtcweb] RTCWEB Data Channel: Usage of PPID f… Peter Thatcher
- Re: [rtcweb] RTCWEB Data Channel: Usage of PPID f… Michael Tuexen
- Re: [rtcweb] RTCWEB Data Channel: Usage of PPID f… Makaraju, Maridi Raju (Raju)
- Re: [rtcweb] RTCWEB Data Channel: Usage of PPID f… Michael Tuexen
- Re: [rtcweb] RTCWEB Data Channel: Usage of PPID f… Paul Kyzivat
- Re: [rtcweb] RTCWEB Data Channel: Usage of PPID f… Makaraju, Maridi Raju (Raju)
- Re: [rtcweb] RTCWEB Data Channel: Usage of PPID f… Makaraju, Maridi Raju (Raju)
- Re: [rtcweb] RTCWEB Data Channel: message interle… Paul Kyzivat
- Re: [rtcweb] RTCWEB Data Channel: message interle… Makaraju, Maridi Raju (Raju)
- Re: [rtcweb] RTCWEB Data Channel: Usage of PPID f… Christer Holmberg
- Re: [rtcweb] RTCWEB Data Channel: message interle… Michael Tuexen
- Re: [rtcweb] RTCWEB Data Channel: Usage of PPID f… Michael Tuexen
- Re: [rtcweb] RTCWEB Data Channel: Usage of PPID f… Christer Holmberg
- Re: [rtcweb] RTCWEB Data Channel: message interle… Christer Holmberg
- Re: [rtcweb] RTCWEB Data Channel: Usage of PPID f… Michael Tuexen
- Re: [rtcweb] RTCWEB Data Channel: message interle… Michael Tuexen
- Re: [rtcweb] RTCWEB Data Channel: Usage of PPID f… Makaraju, Maridi Raju (Raju)
- Re: [rtcweb] RTCWEB Data Channel: Usage of PPID f… Christer Holmberg
- Re: [rtcweb] RTCWEB Data Channel: message interle… Makaraju, Maridi Raju (Raju)
- Re: [rtcweb] RTCWEB Data Channel: message interle… Paul Kyzivat
- Re: [rtcweb] RTCWEB Data Channel: Usage of PPID f… Paul Kyzivat
- Re: [rtcweb] RTCWEB Data Channel: Usage of PPID f… Michael Tuexen
- Re: [rtcweb] RTCWEB Data Channel: Usage of PPID f… Michael Tuexen
- Re: [rtcweb] RTCWEB Data Channel: Usage of PPID f… Christer Holmberg
- Re: [rtcweb] RTCWEB Data Channel: Usage of PPID f… Christer Holmberg
- Re: [rtcweb] RTCWEB Data Channel: Usage of PPID f… Harald Alvestrand
- Re: [rtcweb] RTCWEB Data Channel: message interle… Makaraju, Maridi Raju (Raju)
- Re: [rtcweb] RTCWEB Data Channel: Usage of PPID f… Michael Tuexen
- Re: [rtcweb] RTCWEB Data Channel: Usage of PPID f… Christer Holmberg
- Re: [rtcweb] RTCWEB Data Channel: Usage of PPID f… Michael Tuexen
- [rtcweb] PPID, UTF-16 and DOMString (Re: RTCWEB D… Harald Alvestrand
- Re: [rtcweb] RTCWEB Data Channel: message interle… Justin Uberti
- Re: [rtcweb] RTCWEB Data Channel: Usage of PPID f… Christer Holmberg
- Re: [rtcweb] PPID, UTF-16 and DOMString (Re: RTCW… Makaraju, Maridi Raju (Raju)
- Re: [rtcweb] PPID, UTF-16 and DOMString (Re: RTCW… Martin Thomson
- Re: [rtcweb] PPID, UTF-16 and DOMString (Re: RTCW… Christer Holmberg
- Re: [rtcweb] PPID, UTF-16 and DOMString (Re: RTCW… Makaraju, Maridi Raju (Raju)
- Re: [rtcweb] PPID, UTF-16 and DOMString (Re: RTCW… Michael Tuexen
- Re: [rtcweb] PPID, UTF-16 and DOMString (Re: RTCW… Christer Holmberg
- Re: [rtcweb] PPID, UTF-16 and DOMString (Re: RTCW… Christer Holmberg
- Re: [rtcweb] PPID, UTF-16 and DOMString (Re: RTCW… Michael Tuexen
- Re: [rtcweb] PPID, UTF-16 and DOMString (Re: RTCW… Makaraju, Maridi Raju (Raju)
- Re: [rtcweb] PPID, UTF-16 and DOMString (Re: RTCW… Christer Holmberg
- Re: [rtcweb] PPID, UTF-16 and DOMString (Re: RTCW… Makaraju, Maridi Raju (Raju)
- Re: [rtcweb] PPID, UTF-16 and DOMString (Re: RTCW… Randell Jesup
- Re: [rtcweb] PPID, UTF-16 and DOMString (Re: RTCW… Michael Tuexen
- Re: [rtcweb] RTCWEB Data Channel: Usage of PPID f… Paul Kyzivat
- Re: [rtcweb] PPID, UTF-16 and DOMString (Re: RTCW… Harald Alvestrand
- Re: [rtcweb] PPID, UTF-16 and DOMString (Re: RTCW… Makaraju, Maridi Raju (Raju)