Re: [rtcweb] draft-ibc-rtcweb-sip-websocket -- WebSocket Transport for Session Initiation Protocol (SIP)

<Markus.Isomaki@nokia.com> Thu, 15 September 2011 18:47 UTC

Return-Path: <Markus.Isomaki@nokia.com>
X-Original-To: rtcweb@ietfa.amsl.com
Delivered-To: rtcweb@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 6569A21F8AFE for <rtcweb@ietfa.amsl.com>; Thu, 15 Sep 2011 11:47:01 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.599
X-Spam-Level:
X-Spam-Status: No, score=-2.599 tagged_above=-999 required=5 tests=[AWL=0.000, BAYES_00=-2.599]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id f9O47HCdY+eq for <rtcweb@ietfa.amsl.com>; Thu, 15 Sep 2011 11:46:59 -0700 (PDT)
Received: from mgw-sa02.nokia.com (smtp.nokia.com [147.243.1.48]) by ietfa.amsl.com (Postfix) with ESMTP id 1EAA121F8AFD for <rtcweb@ietf.org>; Thu, 15 Sep 2011 11:46:58 -0700 (PDT)
Received: from vaebh101.NOE.Nokia.com (vaebh101.europe.nokia.com [10.160.244.22]) by mgw-sa02.nokia.com (Switch-3.4.4/Switch-3.4.3) with ESMTP id p8FIn9oN004902; Thu, 15 Sep 2011 21:49:09 +0300
Received: from smtp.mgd.nokia.com ([65.54.30.5]) by vaebh101.NOE.Nokia.com over TLS secured channel with Microsoft SMTPSVC(6.0.3790.4675); Thu, 15 Sep 2011 21:49:04 +0300
Received: from 008-AM1MMR1-003.mgdnok.nokia.com (65.54.30.58) by NOK-am1MHUB-01.mgdnok.nokia.com (65.54.30.5) with Microsoft SMTP Server (TLS) id 8.2.255.0; Thu, 15 Sep 2011 20:49:03 +0200
Received: from 008-AM1MPN1-043.mgdnok.nokia.com ([169.254.3.204]) by 008-AM1MMR1-003.mgdnok.nokia.com ([65.54.30.58]) with mapi id 14.01.0323.007; Thu, 15 Sep 2011 20:49:03 +0200
From: Markus.Isomaki@nokia.com
To: roman@telurix.com, tim@phonefromhere.com
Thread-Topic: [rtcweb] draft-ibc-rtcweb-sip-websocket -- WebSocket Transport for Session Initiation Protocol (SIP)
Thread-Index: AQHMclbXOUIKXflnkES/7qO+qcO8OJVOFtUAgAB+RoCAADJxMA==
Date: Thu, 15 Sep 2011 18:49:02 +0000
Message-ID: <E44893DD4E290745BB608EB23FDDB7620B39D8@008-AM1MPN1-043.mgdnok.nokia.com>
References: <CABw3bnO+85i-TtuqS+P4n+rYgyxyoASc8HXpADhy4QPTC0_szA@mail.gmail.com> <6F469757-6B5C-4DC9-BC34-026F34C7E508@phonefromhere.com> <CAD5OKxvCSJWS+F72P_WOFapmtffkLCSSe3A-rDEUOhNjWcoh4A@mail.gmail.com>
In-Reply-To: <CAD5OKxvCSJWS+F72P_WOFapmtffkLCSSe3A-rDEUOhNjWcoh4A@mail.gmail.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [88.114.26.217]
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-OriginalArrivalTime: 15 Sep 2011 18:49:04.0387 (UTC) FILETIME=[242B9D30:01CC73D8]
X-Nokia-AV: Clean
Cc: rtcweb@ietf.org
Subject: Re: [rtcweb] draft-ibc-rtcweb-sip-websocket -- WebSocket Transport for Session Initiation Protocol (SIP)
X-BeenThere: rtcweb@ietf.org
X-Mailman-Version: 2.1.12
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: Thu, 15 Sep 2011 18:47:01 -0000

Hi,

This is an important point. But why do you think it is necessary for a Javascript based implementation, using HTTP or websockets, to send keepalives more often than a regular SIP UA would? If both are running on TCP, the NAT and firewall and such timers will be the same for both, and this gives an upper bound to the keepalive interval. (SIP over UDP is out of the question due to too short timers.)

RTCWeb HTTP or websocket servers should be designed so that they do not require some kind of hearbeat or pingpong or keepalive too often by themselves, and especially they should not interfere but let the clients do them. 

The trend has been that a lot of asynchronous communication is nowadays agregated to apps via some kind of "notification service" (several companies run them), so that not all apps need to do keepalives by themselves. It would be useful if the browser/web environment could also make use of these services. Unfortunately they are all proprietary and bound to a particular OS or vendor.

Markus


From: rtcweb-bounces@ietf.org [mailto:rtcweb-bounces@ietf.org] On Behalf Of ext Roman Shpount
Sent: 15 September, 2011 20:34
To: Tim Panton
Cc: rtcweb@ietf.org
Subject: Re: [rtcweb] draft-ibc-rtcweb-sip-websocket -- WebSocket Transport for Session Initiation Protocol (SIP)

The only potential problem with mobile applications and javascript based signaling code is the effect of maintaining registrations for long periods of time while waiting for a call on battery life and network utilization. A regular SIP library can be designed is such a way that the device will go into sleep mode and will wake up when a SIP packet is received. JavaScript will need to open a connection to a server and send ping messages at regular, fairly short, intervals, that will cause device to wake up every time ping message needs to be sent and to consume both power and network capacity. Such applications, running for the long periods of time can seriously decrease battery lifetime. On the other hand, doing this during an active call has a negligible effect on both power consumption or network utilization, since device is already running and sending media. 
_____________
Roman Shpount

On Thu, Sep 15, 2011 at 6:02 AM, Tim Panton <tim@phonefromhere.com> wrote:

On 13 Sep 2011, at 21:50, José Luis Millán wrote:


On Tue, Sep 13, 2011 at 9:25 PM,  <Markus.Isomaki@nokia.com> wrote:
> Hi Inaki,
>
> Fully agree about everything you say below.

Hi,

Sorry if this mail arrives out of the original mail thread.

>
> It would be interesting to understand the performance differences of the native vs. Javascript SIP stack, if there is anything we should be worried about. This is my only concern when (perhaps one day) applying RTCWeb in devices like smartphones. If the JS stack works in (any of) today's high end smartphones without problems, we should be fine.

The are no meaningful performance penalties at all using the JavaScript SIP stack in our prototype. In fact, multiple SIP stack instances can run in a single Web browser freshly.  BTW, is there any WebSocket capable web browser for smartphones?

As an additional datapoint, The Phono.com javascript XMPP stack performs fine on android and iOS within a Phonegap app.
Native browser javascript engines tend to be slightly better optimized than the ones available to mobile apps,
so I doubt that performance would be an issue.

Tim.


_______________________________________________
rtcweb mailing list
rtcweb@ietf.org
https://www.ietf.org/mailman/listinfo/rtcweb