Re: [siprec] CS hold/resume clarification in protocol draft
Paul Kyzivat <pkyzivat@alum.mit.edu> Fri, 10 May 2013 02:37 UTC
Return-Path: <pkyzivat@alum.mit.edu>
X-Original-To: siprec@ietfa.amsl.com
Delivered-To: siprec@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id BFF9621F8FDF for <siprec@ietfa.amsl.com>; Thu, 9 May 2013 19:37:13 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 0.834
X-Spam-Level:
X-Spam-Status: No, score=0.834 tagged_above=-999 required=5 tests=[AWL=-0.529, BAYES_00=-2.599, FH_RELAY_NODNS=1.451, HELO_MISMATCH_NET=0.611, J_CHICKENPOX_15=0.6, J_CHICKENPOX_18=0.6, J_CHICKENPOX_54=0.6, RDNS_NONE=0.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 yh07W5FeEQmy for <siprec@ietfa.amsl.com>; Thu, 9 May 2013 19:37:09 -0700 (PDT)
Received: from qmta14.westchester.pa.mail.comcast.net (qmta14.westchester.pa.mail.comcast.net [IPv6:2001:558:fe14:44:76:96:59:212]) by ietfa.amsl.com (Postfix) with ESMTP id 1253621F85E8 for <siprec@ietf.org>; Thu, 9 May 2013 19:37:08 -0700 (PDT)
Received: from omta23.westchester.pa.mail.comcast.net ([76.96.62.74]) by qmta14.westchester.pa.mail.comcast.net with comcast id a00w1l00J1c6gX85E2d7AZ; Fri, 10 May 2013 02:37:07 +0000
Received: from Paul-Kyzivats-MacBook-Pro.local ([50.138.229.164]) by omta23.westchester.pa.mail.comcast.net with comcast id a2d71l0053ZTu2S3j2d7Aq; Fri, 10 May 2013 02:37:07 +0000
Message-ID: <518C5D53.30101@alum.mit.edu>
Date: Thu, 09 May 2013 22:37:07 -0400
From: Paul Kyzivat <pkyzivat@alum.mit.edu>
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:17.0) Gecko/20130328 Thunderbird/17.0.5
MIME-Version: 1.0
To: siprec@ietf.org
References: <E92E67B176B8B64D8D3A8F5E44E9D8F41EBCE9DF@xmb-aln-x05.cisco.com>
In-Reply-To: <E92E67B176B8B64D8D3A8F5E44E9D8F41EBCE9DF@xmb-aln-x05.cisco.com>
Content-Type: text/plain; charset="ISO-8859-1"; format="flowed"
Content-Transfer-Encoding: 7bit
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=comcast.net; s=q20121106; t=1368153427; bh=tPLwVvq1ir/6vw+O2sXYhpOjyOH5hsUQrZu0Kzvor5E=; h=Received:Received:Message-ID:Date:From:MIME-Version:To:Subject: Content-Type; b=lK1QbPvE2Hy/GWks7n7jdIcqg0P6hqPR4xTbKL3gQzZb8QFjZ0chWNwwckql9hfV/ O0F4hoi/Dd7y0cxHO/DfDq/wPGPIkYjsb9MXFuomTaD0hyeh0In/CG1DpRv5jXLTr8 Mi0yHN6m+w1qcpBV6YQewMPDSBwealCSd83rw53rXAev7PJYsUy9rBKcdHeRbRVx/p sOlnCvCOoW8rLgm1iuSGzXL3XS276L/FLfo0ksqVYr13y36bx4Xk5UTGf/ROuLLCXd PMMJ1okB+VkaFUzstfEx7sd5r5MdHOdifOnAtgDSYLLtseQKW9PvVgRuG4/dVpOur+ sfdc05rhN/0Nw==
Subject: Re: [siprec] CS hold/resume clarification in protocol draft
X-BeenThere: siprec@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: SIP Recording Working Group Discussion List <siprec.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/siprec>, <mailto:siprec-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/siprec>
List-Post: <mailto:siprec@ietf.org>
List-Help: <mailto:siprec-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/siprec>, <mailto:siprec-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 10 May 2013 02:37:14 -0000
WFM On 5/9/13 2:30 AM, Ram Mohan R (rmohanr) wrote: > Hi Charles, > > Sorry for delay. Please see inline > >> On 04/05/13 10:09 AM, "Charles Eckel (eckelcu)" <eckelcu@cisco.com> >> wrote: > >> Hi Ram, >> >> My thinking on this is that we should use changing of the direction of >> media descriptions in the RS from sendonly to inactive and vice versa to >> indicate stopping/starting the recording of the associated media stream >> as a whole. This does not imply anything about the state of the media in >> the CS. > > I gave some thought about this and I tend to agree with you that we could > use the SDP direction attribute of RS to indicate stop/re-start the > recording of media represented by that m-line. Now how an SRC decides to > start/stop should be left outside the scope of SIPREC and may be dictated > by a policy. > >> A hold/resume of the CS could result in the SRC deciding to stop the >> recording, but this is not necessarily the case. The SRC could let the >> recording continue, and indicate in XML which participants in the CS are >> actively contributing media. > > To represent hold/resume or any other change in CS media, we could still > do with the existing metadata XML. We could use the <send> and <recv> XML > elements of a <participant> to indicate whether a participant is sending > media/not sending a particular media stream whose properties are > represented by <stream> element. Note with this we only convey if a > participant is sending/not sending media but an SRC still cannot convey > why a CS participant is not sending media(like hold e.t.c). I don't think > an SRC can really know this, all it can leo is by looking at CS signaling > SDP and learn the direction attributes of media and send a snapshot > metadata which has the information on participant sending/not sending a > particular media stream. > > For example, in your below case for a two party call if one participant > Alice puts the call on hold by sending a SDP with a=sendonly and Bob > responds with a=recvonly then a snapshot of metadata at that instance from > SRC to SRS would look as below. Assume here a snapshot was sent initially > with both participants having <send> to the two streams: > > Snapshot sent from SRC to SRS after initial RS setup. > > F1 INVITE SRC --------------> SRS > > Content-Type: application/SDP > ... > m=audio 49170 RTP/AVP 0 > a=rtpmap:0 PCMU/8000 > a=label:96 > a=sendonly > ... > > m=audio 51372 RTP/AVP 0 > a=rtpmap:0 PCMU/8000 > a=label:97 > a=sendonly > > .... > <?xml version="1.0" encoding="UTF-8"?> > <recording xmlns='urn:ietf:params:xml:ns:recording'> > <datamode>complete</datamode> > <session session_id="hVpd7YQgRW2nD22h7q60JQ=="> > <start-time>2010-12-16T23:41:07Z</start-time> > </session> > <participant > participant_id="srfBElmCRp2QB23b7Mpk0w=="> > <nameID aor=sip:Alice@atlanta.com> > <name xml:lang="it">Alice</name> > </nameID> > </participant> > <participantsessionassoc > participant_id="srfBElmCRp2QB23b7Mpk0w==" > session_id="hVpd7YQgRW2nD22h7q60JQ=="> > <associate-time>2013-05-09T23:41:07Z</associate-time> > </participantsessionassoc> > <participantstreamassoc > participant_id="srfBElmCRp2QB23b7Mpk0w=="> > <send>i1Pz3to5hGk8fuXl+PbwCw==</send> > <recv>8zc6e0lYTlWIINA6GR+3ag==</recv> > </participantstreamassoc> > <participant > participant_id="zSfPoSvdSDCmU3A3TRDxAw=="> > <nameID aor=sip:Bob@biloxy.com> > <name xml:lang="it">Bob</name> > </nameID> > </participant> > <participantsessionassoc > participant="zSfPoSvdSDCmU3A3TRDxAw==" > session_id="hVpd7YQgRW2nD22h7q60JQ=="> > <associate-time>2013-05-09T23:42:07Z</associate-time> > </participantsessionassoc> > <participantstreamassoc > participant="zSfPoSvdSDCmU3A3TRDxAw=="> > <send>8zc6e0lYTlWIINA6GR+3ag==</send> > <recv>i1Pz3to5hGk8fuXl+PbwCw==</recv> > </participantstreamassoc> > <stream id="i1Pz3to5hGk8fuXl+PbwCw==" > session="hVpd7YQgRW2nD22h7q60JQ=="> > <label>96</label> > </stream> > <stream id="8zc6e0lYTlWIINA6GR+3ag==" > session="zSfPoSvdSDCmU3A3TRDxAw=="> > <label>97</label> > </stream> > </recording> > > > > Partial metadata Snapshot sent when Alice puts Bob on hold: > > F2 INVITE SRC --------------> SRS > > Content-Type: application/SDP > ... > m=audio 49170 RTP/AVP 0 > a=rtpmap:0 PCMU/8000 > a=label:96 > a=sendonly > ... > > m=audio 51372 RTP/AVP 0 > a=rtpmap:0 PCMU/8000 > a=label:97 > a=sendonly > > > > Partial Snapshot after Alice resumes with Bob > <?xml version="1.0" encoding="UTF-8"?> > <recording xmlns='urn:ietf:params:xml:ns:recording'> > <dataMode>partial</dataMode> > <participantstreamassoc > participant_id="srfBElmCRp2QB23b7Mpk0w=="> > <send>i1Pz3to5hGk8fuXl+PbwCw==</send> > </participantstreamassoc> > <participantstreamassoc > participant="zSfPoSvdSDCmU3A3TRDxAw=="> > <recv>i1Pz3to5hGk8fuXl+PbwCw==</recv> > </participantstreamassoc> > </recording> > > Here in the above snapshot the absence of <recv> for participant_id > srfBElmCRp2QB23b7Mpk0w== (Alice) could be used to indicate that Alice is > only sending media and not receiving any thing. Same way for Bob. > > Partial metadata Snapshot sent when Alice resumes call with Bob: > > F3 INVITE SRC --------------> SRS > > Content-Type: application/SDP > ... > m=audio 49170 RTP/AVP 0 > a=rtpmap:0 PCMU/8000 > a=label:96 > a=sendonly > ... > > m=audio 51372 RTP/AVP 0 > a=rtpmap:0 PCMU/8000 > a=label:97 > a=sendonly > > <?xml version="1.0" encoding="UTF-8"?> > <recording xmlns='urn:ietf:params:xml:ns:recording'> > <dataMode>partial</dataMode> > <participantstreamassoc > participant_id="srfBElmCRp2QB23b7Mpk0w=="> > <send>i1Pz3to5hGk8fuXl+PbwCw==</send> > <recv>8zc6e0lYTlWIINA6GR+3ag==</recv> > </participantstreamassoc> > <participantstreamassoc > participant="zSfPoSvdSDCmU3A3TRDxAw=="> > <send>8zc6e0lYTlWIINA6GR+3ag==</send> > <recv>i1Pz3to5hGk8fuXl+PbwCw==</recv> > </participantstreamassoc> > </recording> > > > Here in the above snapshot both Alice and Bob send and recv streams. > > Note the above approach would work for all cases (stream mixed from SRC to > SRS or one of the endpoint is Focus in which case SRC received mixed > streams e.t.c). In all the flows the presence /absence of <send> and > <recv> tags could be used to indicate whether a participant is > contributing to a stream or not and whether it is receiving a stream or > not. > > Let me know if this approach is fine and if this works for every one in > the WG. > > Regards, > Ram > >> As an example, if the CS is a two party call, a hold of the CS might >> result in the SRC stopping/pausing the recording. If it is a conference >> call, one party going on hold would have might have no effect on the >> direction of the media descriptions in the RS, but may result in the >> generation of some XML indicating that a specific participant is no >> longer contributing any media. I thought the existing XML allowed for >> this, but perhaps I am mistaken about that? >> >> Cheers, >> Charles >> >>> -----Original Message----- >>> From: siprec-bounces@ietf.org [mailto:siprec-bounces@ietf.org] On >>> Behalf Of Ram Mohan R (rmohanr) >>> Sent: Wednesday, May 01, 2013 8:21 PM >>> To: siprec@ietf.org >>> Subject: Re: [siprec] CS hold/resume clarification in protocol draft >>> >>> A question here: >>> >>> In the current metadata draft to indicate CS hold/resume from SRC to >>> SRS >>> we re-use the SIP/SDP semantics and indicate the same with >>> a=inactive/a=sendonly respectively. >>> In the below discussion, I see we want to give a special meaning for >>> a=inactive/a=sendonly sent from SRC to SRS. This would mean CS >>> hold / >>> resume cannot be indicated using SDP semantics from SRC to SRS as >>> the SRS >>> cannot differentiate between CS hold/resume and Recording >>> stop/resume if >>> we use the same semantics for both. >>> >>> The current metadata XML draft does not have any means to indicate >>> CS >>> hold/resume in XML. The general approach followed in the metadata >>> (as a >>> result of past feedback received) is to re-use SIP/SDP semantics >>> wherever >>> possible to represent metadata attributes and have XML >>> representation for >>> only those attributes that does not have a semantics in SIP/SDP to >>> represent. And hence the current draft re-uses SDP semantics to >>> represent >>> CS HOLD/RESUME. >>> >>> I want to hear feedback on - if the WG wants CSC hold/resume to be >>> represented in XML ? >>> >>> Ram >>> >>> >>>> On 01/05/13 1:10 PM, "Hutton, Andrew" >>>> <andrew.hutton@siemens-enterprise.com> wrote: >>> >>>> My view is that this is enough of an issue to make it a MUST as you >>> say >>>> the fact that this would result in a misunderstanding and therefore >>>> probably a trouble ticket being raised against the implementation >>> is >>>> reason enough. >>>> >>>> Andy >>>> >>>> >>>> >>>>> -----Original Message----- >>>>> From: Henry Lum [mailto:Henry.Lum@genesyslab.com] >>>>> Sent: 01 May 2013 05:39 >>>>> To: Alan Johnston; Hutton, Andrew >>>>> Cc: siprec@ietf.org >>>>> Subject: Re: [siprec] CS hold/resume clarification in protocol draft >>>>> >>>>> The only interop issue this can cause is an SRS would mistaken a >>> hold >>>>> as pause/resume. Would there be any harm done in this case? >>> It's >>>>> undesirable but I dont think it's broken as there should be >>>>> corresponding metadata to note the media stream change. >>>>> >>>>> Henry >>>>> >>>>> >>>>> -------- Original message -------- >>>>> From: Alan Johnston <alan.b.johnston@gmail.com> >>>>> Date: 04-30-2013 11:00 AM (GMT-05:00) >>>>> To: "Hutton, Andrew" <andrew.hutton@siemens-enterprise.com> >>>>> Cc: Henry Lum <Henry.Lum@genesyslab.com>,siprec@ietf.org >>>>> Subject: Re: [siprec] CS hold/resume clarification in protocol draft >>>>> >>>>> >>>>> We definitely want to discourage this behavior, but MUSTs relate >>> to >>>>> interop failures. Is that what we are trying to avoid? >>>>> >>>>> Another thought - If an implementer used 1 RS for each CS, would >>> this >>>>> hold/resume behavior be wrong? >>>>> >>>>> - Alan - >>>>> >>>>> >>>>> >>>>> On Apr 30, 2013, at 8:19 AM, "Hutton, Andrew" >>> <andrew.hutton@siemens- >>>>> enterprise.com> wrote: >>>>> >>>>>> Hi Henry, >>>>>> >>>>>> Only question I have is whether the "SHOULD NOT" in the >>> following >>>>> text could be a "MUST NOT" >>>>>> >>>>>> "The SRC SHOULD NOT modify the media stream in the RS to >>> convey media >>>>> stream direction changes in the CS" >>>>>> >>>>>> What does everybody think? >>>>>> >>>>>> Regards >>>>>> Andy >>>>>> >>>>>> >>>>>> >>>>>> >>>>>>> -----Original Message----- >>>>>>> From: siprec-bounces@ietf.org [mailto:siprec- >>> bounces@ietf.org] On >>>>>>> Behalf Of Henry Lum >>>>>>> Sent: 18 April 2013 05:15 >>>>>>> To: siprec@ietf.org >>>>>>> Subject: [siprec] CS hold/resume clarification in protocol draft >>>>>>> >>>>>>> Following up on the clarification in the protocol draft, I >>> propose >>>>> to >>>>>>> re-word the last paragraph in section 7.1.1.1. I removed >>> mentions on >>>>>>> the word mute/unmute: >>>>>>> >>>>>>> >>>>>>> >>>>>>> The SRC can temporarily discontinue streaming and collection >>> of >>>>>>> recorded media from the SRC to the SRS for reason such as >>> masking >>>>>>> the >>>>>>> recording. In this case, the SRC sends a new SDP offer and >>> sets >>>>> the >>>>>>> >>>>>>> media stream to inactive (a=inactive) for each recorded >>> stream to >>>>> be >>>>>>> paused, as per the procedures in >>>>>>> [RFC3264<http://tools.ietf.org/html/rfc3264>]. To resume >>> streaming >>>>> and >>>>>>> collection of recorded media, the SRC sends a new SDP offer >>> and >>>>> sets >>>>>>> the media streams with a=sendonly attribute. >>>>>>> >>>>>>> >>>>>>> Note that a CS itself may change the media stream direction >>> by >>>>>>> updating >>>>>>> >>>>>>> the SDP, for example, by setting a=inactive for SDP hold. Media >>>>>>> stream >>>>>>> >>>>>>> direction changes in CS are conveyed in the metadata by the >>> SRC. >>>>> The >>>>>>> SRC >>>>>>> >>>>>>> SHOULD NOT modify the media stream in the RS to convey >>> media >>>>> stream >>>>>>> >>>>>>> direction changes in the CS, as media stream direction >>> changes in >>>>>>> the RS >>>>>>> >>>>>>> are reserved for pausing and resuming the recorded media. >>>>>>> >>>>>>> >>>>>>> >>>>>>> Thanks >>>>>>> >>>>>>> Henry >>>>>>> >>>>>>> _______________________________________________ >>>>>>> siprec mailing list >>>>>>> siprec@ietf.org >>>>>>> https://www.ietf.org/mailman/listinfo/siprec >>>>>> _______________________________________________ >>>>>> siprec mailing list >>>>>> siprec@ietf.org >>>>>> https://www.ietf.org/mailman/listinfo/siprec >>>> >>>> _______________________________________________ >>>> siprec mailing list >>>> siprec@ietf.org >>>> https://www.ietf.org/mailman/listinfo/siprec >>>> >>> >>> >>> _______________________________________________ >>> siprec mailing list >>> siprec@ietf.org >>> https://www.ietf.org/mailman/listinfo/siprec >> > > > _______________________________________________ > siprec mailing list > siprec@ietf.org > https://www.ietf.org/mailman/listinfo/siprec >
- [siprec] CS hold/resume clarification in protocol… Henry Lum
- Re: [siprec] CS hold/resume clarification in prot… Hutton, Andrew
- Re: [siprec] CS hold/resume clarification in prot… Alan Johnston
- Re: [siprec] CS hold/resume clarification in prot… Paul Kyzivat
- Re: [siprec] CS hold/resume clarification in prot… Henry Lum
- Re: [siprec] CS hold/resume clarification in prot… Hutton, Andrew
- Re: [siprec] CS hold/resume clarification in prot… Ram Mohan R (rmohanr)
- Re: [siprec] CS hold/resume clarification in prot… Charles Eckel (eckelcu)
- Re: [siprec] CS hold/resume clarification in prot… Parthasarathi R
- Re: [siprec] CS hold/resume clarification in prot… Henry Lum
- Re: [siprec] CS hold/resume clarification in prot… Ram Mohan R (rmohanr)
- Re: [siprec] CS hold/resume clarification in prot… Ram Mohan R (rmohanr)
- Re: [siprec] CS hold/resume clarification in prot… Paul Kyzivat
- Re: [siprec] CS hold/resume clarification in prot… Ram Mohan R (rmohanr)
- Re: [siprec] CS hold/resume clarification in prot… Henry Lum
- Re: [siprec] CS hold/resume clarification in prot… Charles Eckel (eckelcu)
- Re: [siprec] CS hold/resume clarification in prot… Hutton, Andrew