Re: [rtcweb] New usecase & requirement for media forking in browser

Ravindran Parthasarathi <pravindran@sonusnet.com> Thu, 03 November 2011 11:56 UTC

Return-Path: <pravindran@sonusnet.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 0E1C311E80F9 for <rtcweb@ietfa.amsl.com>; Thu, 3 Nov 2011 04:56:28 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.634
X-Spam-Level:
X-Spam-Status: No, score=-2.634 tagged_above=-999 required=5 tests=[AWL=-0.035, 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 7ppl8ogitFTt for <rtcweb@ietfa.amsl.com>; Thu, 3 Nov 2011 04:56:27 -0700 (PDT)
Received: from mail-ma01.sonusnet.com (sonussf2.sonusnet.com [208.45.178.27]) by ietfa.amsl.com (Postfix) with ESMTP id EF42711E8088 for <rtcweb@ietf.org>; Thu, 3 Nov 2011 04:56:26 -0700 (PDT)
Received: from sonusmail05.sonusnet.com (sonusmail05.sonusnet.com [10.128.32.155]) by sonuspps2.sonusnet.com (8.14.3/8.14.3) with ESMTP id pA3Bv0dB022725; Thu, 3 Nov 2011 07:57:00 -0400
Received: from sonusinmail02.sonusnet.com ([10.70.51.30]) by sonusmail05.sonusnet.com with Microsoft SMTPSVC(6.0.3790.4675); Thu, 3 Nov 2011 07:55:57 -0400
Received: from INBA-HUB01.sonusnet.com ([10.70.51.86]) by sonusinmail02.sonusnet.com with Microsoft SMTPSVC(6.0.3790.4675); Thu, 3 Nov 2011 17:26:01 +0530
Received: from INBA-HUB02.sonusnet.com (10.70.51.87) by inba-hub01.sonusnet.com (10.70.51.86) with Microsoft SMTP Server (TLS) id 14.1.339.1; Thu, 3 Nov 2011 17:26:01 +0530
Received: from INBA-MAIL01.sonusnet.com ([fe80::8d0f:e4f9:a74f:3daf]) by inba-hub02.sonusnet.com ([fe80::80b9:dc60:caf7:7dfc%11]) with mapi id 14.01.0339.001; Thu, 3 Nov 2011 17:25:59 +0530
From: Ravindran Parthasarathi <pravindran@sonusnet.com>
To: Harald Alvestrand <harald@alvestrand.no>
Thread-Topic: New usecase & requirement for media forking in browser
Thread-Index: AQHMl9BWsWD0kT8xzE+tFIa2IMhSLJWWQH+AgAQBaACAAFtrgIAAYp8g
Date: Thu, 03 Nov 2011 11:56:00 +0000
Message-ID: <387F9047F55E8C42850AD6B3A7A03C6CD31E@inba-mail01.sonusnet.com>
References: <20111024224257.28459.65554.idtracker@ietfa.amsl.com><6EB8679A-13D5-4AD7-97F2-BC35FC0966F0@acmepacket.com><2E239D6FCD033C4BAF15F386A979BF51159C32@sonusinmail02.sonusnet.com><CALiegfnVaZjh1K+brd180Z9Ufheau3v6OJe6Ejv8P7wzw6ROQw@mail.gmail.com> <2E239D6FCD033C4BAF15F386A979BF51159D7A@sonusinmail02.sonusnet.com> <4EAAF413.8030501@alvestrand.no> <2E239D6FCD033C4BAF15F386A979BF51159D7B@sonusinmail02.sonusnet.com> <247FFE2C-DB2C-4280-A219-BE1503662F92@acmepacket.com> <387F9047F55E8C42850AD6B3A7A03C6CB953@inba-mail01.sonusnet.com> <4EAEC609.1040707@alvestrand.no> <387F9047F55E8C42850AD6B3A7A03C6CD0B4@inba-mail01.sonusnet.com> <4EB26EE5.40703@alvestrand.no>
In-Reply-To: <4EB26EE5.40703@alvestrand.no>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [10.70.54.32]
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-OriginalArrivalTime: 03 Nov 2011 11:56:01.0503 (UTC) FILETIME=[8EA95EF0:01CC9A1F]
Cc: "<rtcweb@ietf.org>" <rtcweb@ietf.org>
Subject: Re: [rtcweb] New usecase & requirement for media forking in browser
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, 03 Nov 2011 11:56:28 -0000

Harald,

Please read inline.

Thanks
Partha

>-----Original Message-----
>From: Harald Alvestrand [mailto:harald@alvestrand.no]
>Sent: Thursday, November 03, 2011 4:07 PM
>To: Ravindran Parthasarathi
>Cc: <rtcweb@ietf.org>
>Subject: Re: New usecase & requirement for media forking in browser
>
>On 11/03/2011 12:55 AM, Ravindran Parthasarathi wrote:
>> Harald,
>>
>> Thanks for your clarification. Some of the usecase which comes
>immediately to my mind for media forking are as follows:
>>
>> 1) Whisper call scenario:  Telemarketing Agent makes the call to the
>customer and the same call is forked to Supervisor for
>support/monitoring. Here, Customer will not realize that Supervisor&
>Agent has side conversation.
>This does not need forking. The caller (the agent) is the one setting up
>2 connections.
>He will also have to relay media from the customer to the supervisor.
>> 2) Remote Recording: The call is forked towards remote peer as well as
>recording server. This usecase is already covered in usecase document
>Again, this does not need forking. The client creating 2 connections is
>the one deciding to do so.

<partha> I'll take this usecase because it is very common usecase. Client (browser) is not required to create two connection in this scenario if recording request is going as metadata and WebRTC Server forks the request to remote peer and recorder. Please note that client is not required to know the recorder destination till get the answer. </partha>

>> 3) Interworking SIP parallel forking with RTCWeb client:
>"Because SIP does it" is not an use case.
<partha> Agree with you as RTCWeb client is not the only way to solve this interworking usecase. Interworking itself could be the usecase for RTCWeb but it is not as we interested in Freedom world. The point to be noted is that SIP parallel forking (media) infrastructure helps for the above two usecases as well. </partha>

>> Please let me know your opinion on addition of this usecase now.
>I still do not see an use case from this description.
>> Thanks
>> Partha
>>> -----Original Message-----
>>> From: Harald Alvestrand [mailto:harald@alvestrand.no]
>>> Sent: Monday, October 31, 2011 9:30 PM
>>> To: Ravindran Parthasarathi
>>> Cc:<rtcweb@ietf.org>
>>> Subject: Re: New usecase&  requirement for media forking in browser
>>>
>>> On 10/31/2011 06:23 AM, Ravindran Parthasarathi wrote:
>>>> Usecase:  Media forking in browser
>>>>
>>>> Description: User forks local stream/stream components to multiple
>>> peers simultaneously and able to receive multiple streams from
>multiple
>>> peers.
>>> Ravindran,
>>>
>>> I see this as an implementation description, and not an use case.
>>>
>>> Could you rephrase this in terms that make it clear what the user
>will
>>> be trying to do, and that this technology (forking) is the
>appropriate
>>> solution for that problem?
>>>
>>> That will also help uncover more requirements that the use case will
>>> imply. For instance, if the idea is that the user talks to multiple
>>> persons simultaneously, and they are able to hear each other without
>a
>>> direct connection to each other, there is an added requirement that
>the
>>> user be able to mix audio from local and remote sources.
>>>
>>> Thank you!
>>>
>>>       Harald Alvestrand
>>>
>>>> Functional requirement: F11, F12, (any new requirement has to be
>added
>>> ?)
>>>> API requirement:   The Web API MUST provide means for the web
>>> application to initiate sending/receiving of stream/stream components
>to
>>> a multiple peer simultaneously and relate each of these streams
>>> individually by web application.
>>>> Having said that, I'm not very sure whether this usecase falls under
>>> the category of remote-recording by John.
>>>> Hadriel,
>>>>
>>>> Thanks for the clarification on the current status and practical
>>> usecases.
>>>> Thanks
>>>> Partha
>>>>
>>>>
>>>>> -----Original Message-----
>>>>> From: Hadriel Kaplan [mailto:HKaplan@acmepacket.com]
>>>>> Sent: Saturday, October 29, 2011 1:58 AM
>>>>> To: Ravindran Parthasarathi
>>>>> Cc: Harald Alvestrand; Iñaki Baz Castillo;<rtcweb@ietf.org>
>>>>> Subject: Re: [rtcweb] RTCWeb Forking usecase [was RE:draft-kaplan-
>>>>> rtcweb-sip-interworking-requirements-00]
>>>>>
>>>>>
>>>>> We've debated serial and parallel forking a number of times but I
>>> don't
>>>>> know if there's been consensus.
>>>>>
>>>>> But your email is really two different questions/topics:
>>>>> 1) Is there a use-case for forking within WebRTC?
>>>>> 2) Does supporting SIP forking mean the Browser has to handle the
>>>>> SDP/media behavior of it, vs. the Web-server/Interworking-function
>>>>> handling it?
>>>>>
>>>>> For the first question, I can certainly envision a Web-app wanting
>to
>>>>> let Alice press a single button on her Browser and end up
>>> communicating
>>>>> with Bob no matter where he may be, or letting her single button-
>>> press
>>>>> end up communicating with Bob first and then Charlie, or letting
>her
>>>>> single button-press end up communicating with Bob and Charlie at
>the
>>>>> same time.  But I think such things can be accomplished through
>>> clever
>>>>> Web-app code without needing the Browser to be aware it's a forked
>>>>> ROAP/SDP scenario.
>>>>> [Note: though this may depend on what W3C decides the user-consent
>UI
>>>>> model is relative to PeerConnections, MediaStreams and ROAP]
>>>>>
>>>>> With regards to the second question, there was a long email thread
>on
>>>>> this which started here I think:
>>>>> http://www.ietf.org/mail-archive/web/rtcweb/current/msg01354.html
>>>>>
>>>>> -hadriel
>>>>>
>>>>>
>>>>> On Oct 28, 2011, at 3:14 PM, Ravindran Parthasarathi wrote:
>>>>>
>>>>>> Harald,
>>>>>>
>>>>>> Thanks for the clarification. "Fedex IVR" usecase is under browser
>>> to
>>>>> GW/server section (sec 4.3) which is a SIP based forking
>requirement.
>>> If
>>>>> you look at carefully, "Fedex IVR non-final response" scenario
>could
>>>>> have be achieved cleanly using two separate offer/answer exchange&
>>> two
>>>>> final responses (INVITE/200/ACK, RE-INVITE/200/ACK) :
>>>>>> 1) customer - fedex IVR offer/answer exchange
>>>>>> 2) fedex agent - Customer offer/answer exchange
>>>>>>
>>>>>> but it may be avoided in legacy for billing reasons which should
>not
>>>>> be major concern for RTCWeb. In case of SIP forking, it is assumed
>>> that
>>>>> 2nd answer override the 1st answer in the media plane.
>>>>>> As I mentioned earlier, SIP (serial) forking requirement shall be
>>> met
>>>>> by gateway signaling and no extra requirement for browser. Also,
>>>>> switching media stream from one responder to other responder in
>Fedex
>>>>> IVR usecase is not so easy because of legacy media handling (ICE,
>>> RTCP)
>>>>> differences as mentioned in draft-kaplan-rtcweb-sip-interworking-
>>>>> requirements-00.
>>>>>> ISTM, we don't have RTCWeb specific forking usecase till now.
>>>>>>
>>>>>> Thanks
>>>>>> Partha
>>>>>>
>>>>>>> -----Original Message-----
>>>>>>> From: Harald Alvestrand [mailto:harald@alvestrand.no]
>>>>>>> Sent: Friday, October 28, 2011 11:58 PM
>>>>>>> To: Ravindran Parthasarathi
>>>>>>> Cc: Iñaki Baz Castillo; rtcweb@ietf.org; Hadriel Kaplan
>>>>>>> Subject: Re: [rtcweb] RTCWeb Forking usecase [was RE: draft-
>kaplan-
>>>>>>> rtcweb-sip-interworking-requirements-00]
>>>>>>>
>>>>>>> On 10/28/2011 10:56 AM, Ravindran Parthasarathi wrote:
>>>>>>>> By looking at draft-ietf-rtcweb-use-cases-and-requirements-06, I
>>>>> could
>>>>>>> not see any specific requirement for RTCWeb forking. In case SIP
>>>>> forking
>>>>>>> is the only requirement for RTCWeb and also, RTCWeb does not have
>>> any
>>>>>>> specific forking requirement, then the gateway between RTCWeb&
>>> SIP
>>>>>>> shall take care of the functionality. I'm asking this question to
>>> get
>>>>>>> the clarity on whether SIP forking feature has to impact RTCWeb
>>>>> client
>>>>>>> requirement or not.
>>>>>>> I believe the "Fedex IVR" case was specifically intended to
>surface
>>>>> the
>>>>>>> requirement for "non-final responses" (switching a media stream
>>> from
>>>>> the
>>>>>>> initial responder to a next responder).
>>>>>>> That's one form of forking ("serial fork"?)
>>>>>>>
>>>>>>> I haven't understood forking to be a requirement in any other use
>>>>> case.
>>