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

Iñaki Baz Castillo <ibc@aliax.net> Tue, 13 September 2011 18:20 UTC

Return-Path: <ibc@aliax.net>
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 1A03721F8C60 for <rtcweb@ietfa.amsl.com>; Tue, 13 Sep 2011 11:20:43 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.649
X-Spam-Level:
X-Spam-Status: No, score=-2.649 tagged_above=-999 required=5 tests=[AWL=0.028, BAYES_00=-2.599, FM_FORGED_GMAIL=0.622, MIME_8BIT_HEADER=0.3, RCVD_IN_DNSWL_LOW=-1]
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 x+fbLrDqh-5O for <rtcweb@ietfa.amsl.com>; Tue, 13 Sep 2011 11:20:42 -0700 (PDT)
Received: from mail-qy0-f172.google.com (mail-qy0-f172.google.com [209.85.216.172]) by ietfa.amsl.com (Postfix) with ESMTP id F2C7A11E808E for <rtcweb@ietf.org>; Tue, 13 Sep 2011 11:20:41 -0700 (PDT)
Received: by qyk32 with SMTP id 32so2958164qyk.10 for <rtcweb@ietf.org>; Tue, 13 Sep 2011 11:22:48 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.229.67.105 with SMTP id q41mr2150039qci.216.1315938167568; Tue, 13 Sep 2011 11:22:47 -0700 (PDT)
Received: by 10.229.79.207 with HTTP; Tue, 13 Sep 2011 11:22:47 -0700 (PDT)
In-Reply-To: <2E239D6FCD033C4BAF15F386A979BF510F0B37@sonusinmail02.sonusnet.com>
References: <CALiegfk6BhtzErXOQM8iSV7FC6isYUwOS1KPYCw_M1vEcNP6eQ@mail.gmail.com> <2E239D6FCD033C4BAF15F386A979BF510F0B37@sonusinmail02.sonusnet.com>
Date: Tue, 13 Sep 2011 20:22:47 +0200
Message-ID: <CALiegf=R7MLVTSyYv=x9sJ3rRhD2pyQWBKXb84eZF7NGNkYxzQ@mail.gmail.com>
From: Iñaki Baz Castillo <ibc@aliax.net>
To: Ravindran Parthasarathi <pravindran@sonusnet.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
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: Tue, 13 Sep 2011 18:20:43 -0000

2011/9/13 Ravindran Parthasarathi <pravindran@sonusnet.com>:
> Hi Inaki,
>
> I like the idea of using SIP between browser & server.
>
> I really don't know the strong reason for tunneling SIP message within websocket. In fact, we are discussing SIP vs websocket in http://www.ietf.org/mail-archive/web/rtcweb/current/msg01071.html mail thread as signaling protocol for RTCweb. Could you please mention the technical advantage in going in the path of SIP over websocket rather than having plain SIP connection over TCP or TLS or (UDP or DTLS).

Hi Ravindran,

SIP is a complex protocol and there are numerous extensions and
features in many RFC's extending the SIP protocol. Having to rely on
the features implemented in a native SIP stack within the web-browser
seems not enough flexible IMHO. I also expect many limitations and
lack-of-features in the different SIP implementations of each browser
(and each version of the browser).

In the other side, if the SIP stack is coded within a JavaScript
library and makes usage of the WebSocket protocol, innovation depends
on the developer and not on the browser native capabilities. A web
page could offer a minimal SIP stack just implementing basic outgoing
calls (i.e. "Click2Call" buttons in the web), while another web page
could prefer to provide a powerful SIP stack implementing
blink/attended transfer, subscription to presence and dialogs/calls,
conference features, call-pickup, SIP messaging and so on (imagine
such phone integrated within an enterprise intranet). I don't expect
that the SIP stack integrated within *every* existing web-browsers
would implement all those SIP features in a correct way (because that
does not happen neither when using expensive SIP desktop phones or
softphones).

Also, the specification defined in the draft solves NAT issues (at
signaling level) without requiring server side solutions for fixing
NAT in clients.

WebSocket protocol is becoming a new "transport" protocol.
Implementing SIP protocol on top of it can only bring advantages and
new possibilities. The specification in the draft is an adaptation of
SIP to make use of WebSocket, as it already does with UDP, TCP and
SCTP transports.


BTW, as said in the first mail, we have published the draft after
having a working prototype making usage of the specification described
in the document. After that, we see no real advantage on having a
native SIP stack within a web browser. The prototype will be shown
soon.

Best regards.

-- 
Iñaki Baz Castillo
<ibc@aliax.net>