Re: [rtcweb] Future requirement: RTC-Web apps must work through interface switching
"DRAGE, Keith (Keith)" <keith.drage@alcatel-lucent.com> Fri, 07 October 2011 10:43 UTC
Return-Path: <keith.drage@alcatel-lucent.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 B581A21F8A35 for <rtcweb@ietfa.amsl.com>; Fri, 7 Oct 2011 03:43:20 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -105.853
X-Spam-Level:
X-Spam-Status: No, score=-105.853 tagged_above=-999 required=5 tests=[AWL=0.096, BAYES_00=-2.599, HELO_EQ_FR=0.35, MIME_8BIT_HEADER=0.3, RCVD_IN_DNSWL_MED=-4, USER_IN_WHITELIST=-100]
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 y5ADrYkgwVyr for <rtcweb@ietfa.amsl.com>; Fri, 7 Oct 2011 03:43:19 -0700 (PDT)
Received: from smail2.alcatel.fr (smail2.alcatel.fr [62.23.212.57]) by ietfa.amsl.com (Postfix) with ESMTP id 4CA9B21F88B6 for <rtcweb@ietf.org>; Fri, 7 Oct 2011 03:43:16 -0700 (PDT)
Received: from FRMRSSXCHHUB03.dc-m.alcatel-lucent.com (FRMRSSXCHHUB03.dc-m.alcatel-lucent.com [135.120.45.63]) by smail2.alcatel.fr (8.14.3/8.14.3/ICT) with ESMTP id p97AiU13006424 (version=TLSv1/SSLv3 cipher=RC4-MD5 bits=128 verify=NOT); Fri, 7 Oct 2011 12:46:26 +0200
Received: from FRMRSSXCHMBSC3.dc-m.alcatel-lucent.com ([135.120.45.45]) by FRMRSSXCHHUB03.dc-m.alcatel-lucent.com ([135.120.45.63]) with mapi; Fri, 7 Oct 2011 12:46:19 +0200
From: "DRAGE, Keith (Keith)" <keith.drage@alcatel-lucent.com>
To: Stefan Håkansson <stefan.lk.hakansson@ericsson.com>, "Markus.Isomaki@nokia.com" <Markus.Isomaki@nokia.com>
Date: Fri, 07 Oct 2011 12:46:17 +0200
Thread-Topic: [rtcweb] Future requirement: RTC-Web apps must work through interface switching
Thread-Index: AcyELrJcJEPtOXbTSYyDYS5GDAfcqgArzqLw
Message-ID: <EDC0A1AE77C57744B664A310A0B23AE220D4C410@FRMRSSXCHMBSC3.dc-m.alcatel-lucent.com>
References: <E44893DD4E290745BB608EB23FDDB7620D3782@008-AM1MPN1-043.mgdnok.nokia.com> <4E89AD52.5000402@ericsson.com> <E44893DD4E290745BB608EB23FDDB7620D5D62@008-AM1MPN1-043.mgdnok.nokia.com> <4E8DB1A5.1000800@ericsson.com>
In-Reply-To: <4E8DB1A5.1000800@ericsson.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
acceptlanguage: en-US
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-Scanned-By: MIMEDefang 2.69 on 155.132.188.80
Cc: "rtcweb@ietf.org" <rtcweb@ietf.org>
Subject: Re: [rtcweb] Future requirement: RTC-Web apps must work through interface switching
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: Fri, 07 Oct 2011 10:43:21 -0000
> I agree. For the time being, the requirement is on a higher > level - and quite badly phrased (I'm to blame): > "It MUST be possible to move from one network interface to > another one" > I think it can be better put, and later when the model is > decided it can be broken down (e.g to an event in the API). > When people end up phrasing something as "It MUST be possible... " what they normally mean is: "The mechanism MUST support ..." Rather than "Implementations MUST support ..." Or, else some form of use requirement. But choose which you want. Regards Keith > -----Original Message----- > From: rtcweb-bounces@ietf.org > [mailto:rtcweb-bounces@ietf.org] On Behalf Of Stefan Håkansson > Sent: 06 October 2011 14:48 > To: Markus.Isomaki@nokia.com > Cc: rtcweb@ietf.org > Subject: Re: [rtcweb] Future requirement: RTC-Web apps must > work through interface switching > > On 10/06/2011 03:04 PM, Markus.Isomaki@nokia.com wrote: > > Hi Stefan, > > > > Stefan Håkansson wrote: > >> > >> in terms of use case and reqs, do you see anything missing if you > >> look at > >> <http://datatracker.ietf.org/doc/draft-ietf-rtcweb-use-cases-and- > >> requirements/>, section 4.2.3? > >> > >> In terms of technology I thought ICE would be able to handle this. > >> > > > > I agree ICE has the mechanisms to handle it to some extent, as new > > candidates can be added on-the-fly, e.g. when a device gets > a new IP > > address via a newly connected interface. I guess the minimum > > requirement is that the entity generationg the ICE > signaling messages > > needs to be able to learn about the existence of the new candidates > > immediately, so it can generate the new ICE "offer". I'm not sure > > where this is supposed to happen, but if it is the JS app > that sends > > the "offers", there is a requirement that there needs to be > an event > > in the API indicating that the set of local candidates has changed. > > I agree. For the time being, the requirement is on a higher > level - and quite badly phrased (I'm to blame): > "It MUST be possible to move from one network interface to > another one" > I think it can be better put, and later when the model is > decided it can be broken down (e.g to an event in the API). > > Stefan > > > > > Markus > > > > > >> On 10/03/2011 01:58 PM, Markus.Isomaki@nokia.com wrote: > >>> Hi all, > >>> > >>> There is one important requirement, which may not be > critical today, > >>> but will > >> most likely be in the future. > >>> > >>> We can assume RTC-Web to be supported in devices like > tablets, pads > >>> or > >> smartphones, that people carry around. We can also assume > that when > >> such devices are carried around, their point of attachement to the > >> Internet will change, even so that the type of access network will > >> change, typically between something like HSPA/LTE and Wi-Fi. Today > >> this will always mean a change of IP address as well. In > the future > >> we may have technologies such as (Proxy)Mobile IP in use that will > >> provide IP address preservation, but we can't really count on that. > >>> > >>> How does this relate to RTC-Web? Interface switching > usually happens > >>> at the discretion of the OS or some kind of connection > manager. The > >>> browser or the web application environment has no control > over it. > >>> At best it, or the JS application running within, can get > some kind > >>> of signal of such event happening. For TCP-based client-server > >>> things (HTTP, Websocket) it is possible to react to this by > >>> re-establishing the lost TCP connections and state on top > of them. > >>> This is indeed what many (native) apps are able to do > today. There > >>> can be some smarter ways in the pipeline as well, such as > multipath > >>> TCP, which would make the process of "transitioning" a TCP > >>> connection from one interface/IP to another potentially > transparent > >>> to the application. But with peer-to-peer and interactive > real-time, > >>> things get more complicated. It may of course be that the > switching > >>> happens due to a sudden loss of coverage and is so slow, > that voice > >>> or video calls are broken anyway. However, in many cases th > >> e > >>> old interface can be up while the new one is being > established, and > >>> in > >> principle the total loss of connectivity can be avoided. In such > >> scenarios it would be realistically possible to update the ongoing > >> real-time sessions to a new IP address and port, if there > were some > >> kind of end-to-end or server- assisted mechanism for it. > Even a cut > >> of 1-2 seconds would not be as bad as a total loss of the session. > >>> > >>> What does this mean in terms of requirements? - The first-order > >>> requirement is that the browser and/or the JS app, > >> whoever needs to act, has to be able to get events of interface > >> switching in the same way as native apps can. If it were only the > >> browser who was required to get them, we could set > standards aside, > >> and declare that the browser does this as any other app. > But if it is > >> the JS app that needs to do something, then we may need > something new > >> as a JS API. I have no clue at the moment if the JS apps can learn > >> about this kind of events. And this is clearly not a > RTC-Web specific > >> requirement, but a generic one. I do know that browsers or HTTP > >> libraries can re-send requests etc. based on IP address > change, but I > >> don't know what a JS Websocket client can do, if anything. > >>> - The second requirement is that the media related APIs and > >>> transport > >> protocols (RTP) have to be flexible enough, that they can > at least be > >> extended to work so that they do not assume that the session is > >> forever bound to a certain IP address/port in either end. How this > >> affects the system depends on what is actually standardized, for > >> instance if the SDP offer/answer model is included or not. > But on the > >> generic level it could be something like this: > >>> - If the browser/JS app receives signaling/offer from its > peer that > >> peer's RTP/UDP IP address/port has changed, it has to be > able to set > >> these through the media API and re-run STUN checks or whatever is > >> required at that point. This has to be work so that the > media session > >> can be otherwise continued, after the process is completed. > >>> - If the browser/JS app receives an event that its own IP > >>> address/port > >> has changed (or is about to change), it has to be able to > >> re-initialize the RTP/UDP accordingly, re-establish its "signaling > >> connection and state" with its webserver, notify the peer > about the > >> change, and re-run STUN checks etc. as needed. > >>> > >>> This sounds quite complicated so it may be that we don't > want to add > >>> this as > >> a Day 1 requirement for RTC-Web. But I believe we should try to > >> design the APIs and protocols in such a way that this kind > of thing > >> can be added later on. There could be other ways too, like MPRTP > >> (http://datatracker.ietf.org/doc/draft-singh-avtcore-mprtp/), we > >> could look at. > >>> > >>> I suppose the less we standardize about the signaling and > >>> offer/answer, the > >> easier it might be to support these kinds of things as add-on. But > >> whatever we standardize, please keep the interface and IP address > >> change in mind. The outcome could be that we declare that > transport > >> (MPTCP, MPRTP) has to deal with it, but eventually I think > this will > >> have to work one way or the other. > >>> > >>> Regards, Markus _______________________________________________ > >>> 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 mailing list > rtcweb@ietf.org > https://www.ietf.org/mailman/listinfo/rtcweb >
- Re: [rtcweb] Future requirement: RTC-Web apps mus… Iñaki Baz Castillo
- Re: [rtcweb] Future requirement: RTC-Web apps mus… Olle E. Johansson
- [rtcweb] Future requirement: RTC-Web apps must wo… Markus.Isomaki
- Re: [rtcweb] Future requirement: RTC-Web apps mus… Olle E. Johansson
- Re: [rtcweb] Future requirement: RTC-Web apps mus… Iñaki Baz Castillo
- Re: [rtcweb] Future requirement: RTC-Web apps mus… Iñaki Baz Castillo
- Re: [rtcweb] Future requirement: RTC-Web apps mus… Stefan Håkansson
- Re: [rtcweb] Future requirement: RTC-Web apps mus… Randell Jesup
- Re: [rtcweb] Future requirement: RTC-Web apps mus… Harald Alvestrand
- Re: [rtcweb] Future requirement: RTC-Web apps mus… Markus.Isomaki
- Re: [rtcweb] Future requirement: RTC-Web apps mus… Harald Alvestrand
- Re: [rtcweb] Future requirement: RTC-Web apps mus… Markus.Isomaki
- Re: [rtcweb] Future requirement: RTC-Web apps mus… Markus.Isomaki
- Re: [rtcweb] Future requirement: RTC-Web apps mus… Magnus Westerlund
- Re: [rtcweb] Future requirement: RTC-Web apps mus… Markus.Isomaki
- Re: [rtcweb] Future requirement: RTC-Web apps mus… Markus.Isomaki
- Re: [rtcweb] Future requirement: RTC-Web apps mus… Stefan Håkansson
- Re: [rtcweb] Future requirement: RTC-Web apps mus… DRAGE, Keith (Keith)