Re: [maitai] Roles of Sender and Receiver

Peter Musgrave <peter.musgrave@magorcorp.com> Sat, 04 December 2010 16:29 UTC

Return-Path: <peter.musgrave@magorcorp.com>
X-Original-To: maitai@core3.amsl.com
Delivered-To: maitai@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id B47063A6AEE for <maitai@core3.amsl.com>; Sat, 4 Dec 2010 08:29:31 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -103.189
X-Spam-Level:
X-Spam-Status: No, score=-103.189 tagged_above=-999 required=5 tests=[AWL=0.410, BAYES_00=-2.599, RCVD_IN_DNSWL_LOW=-1, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Y6J1041Id97l for <maitai@core3.amsl.com>; Sat, 4 Dec 2010 08:29:30 -0800 (PST)
Received: from mail-iw0-f172.google.com (mail-iw0-f172.google.com [209.85.214.172]) by core3.amsl.com (Postfix) with ESMTP id A2B593A6AAC for <maitai@ietf.org>; Sat, 4 Dec 2010 08:29:30 -0800 (PST)
Received: by iwn40 with SMTP id 40so13184114iwn.31 for <maitai@ietf.org>; Sat, 04 Dec 2010 08:30:50 -0800 (PST)
Received: by 10.231.176.75 with SMTP id bd11mr3423874ibb.48.1291480248575; Sat, 04 Dec 2010 08:30:48 -0800 (PST)
Received: from [192.168.1.105] ([204.237.32.134]) by mx.google.com with ESMTPS id z4sm2854335ibg.7.2010.12.04.08.30.46 (version=TLSv1/SSLv3 cipher=RC4-MD5); Sat, 04 Dec 2010 08:30:47 -0800 (PST)
Mime-Version: 1.0 (Apple Message framework v1082)
Content-Type: text/plain; charset="us-ascii"
From: Peter Musgrave <peter.musgrave@magorcorp.com>
In-Reply-To: <4CF9975D.4060903@cisco.com>
Date: Sat, 04 Dec 2010 11:30:44 -0500
Content-Transfer-Encoding: quoted-printable
Message-Id: <F7377176-D185-4FC6-B012-C776783D5871@magorcorp.com>
References: <928969B1-F60B-47B8-A526-676E86BA7061@magorcorp.com> <4CF9975D.4060903@cisco.com>
To: Paul Kyzivat <pkyzivat@cisco.com>
X-Mailer: Apple Mail (2.1082)
Cc: maitai@ietf.org
Subject: Re: [maitai] Roles of Sender and Receiver
X-BeenThere: maitai@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: Multi-stream Attributes for Improving Telepresence Application Interoperability <maitai.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/maitai>, <mailto:maitai-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/maitai>
List-Post: <mailto:maitai@ietf.org>
List-Help: <mailto:maitai-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/maitai>, <mailto:maitai-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sat, 04 Dec 2010 16:29:31 -0000

Hi Paul, 

I too gravitate towards concrete examples...so I am happy to go down the rabbit hole.

<rabbit_hole>
One of Charles points was that an endpoint might not be able to select a specific video feed, but rather say something like "I only receive one stream, please use voice activity to decide which stream to send me".  So the answering EP might not know which of three streams this should be....

It's also starting to seem like either end potentially could be the one who makes the decision. 

In the SIP context you present, it is therefore not clear to me that the answering endpoint is always the one making the decision about which media stream to get (as would be "normal" in SIP) and the offeror can't make any decisions until it knows about the receivers configuration. 

In fact in the first exchange we also need to provide some information about media asymmetry (e.g. I may have three screens, but 4 cameras or three screens and two cameras). so my video m lines do not necessarily imply anything my ability to send that many videos....

I am not sure how best to do capability exchange. I suspect the description we end up with will be of non-trivial size. Perhaps it is a new Content body type - and these capabilities are exchanged instead of SDP in the first exchange? It would work - but it creeps me out - since I expect it breaks when going through most middle boxes. The other tools in the toolbox which could apply are SUBSCRIBE, NOTIFY, PUBLISH etc. Perhaps there is a role for them. If OPTIONS went end-to-end it could be a candidate...

Ok - out of the rabbit hole!
</rabbit_hole>

Let me ask more questions: 

Does the capability exchange need to be part of dialog establishment? 
Could it be done as a precursor exchange?
Could an endpoint reasonably cache capabilities of EPs it has prior contact with? [This may be important if our data representation requires a certain amount of "interpretation"] ?

Peter

On 2010-12-03, at 8:20 PM, Paul Kyzivat wrote:

> 
> 
> On 12/2/2010 7:53 AM, Peter Musgrave wrote:
>> Hi,
>> 
>> I have been pondering possible ways of representing a room configuration - but I think I need to back up and ask a question about basic interop architecture.
>> 
>> In the selection of content on a stream, who is the active decision making entity, sender - or receiver - or both?
>> 
>> Consider a three display, 3 camera (3d3c) room A sending to a 1d1c room B.
>> 
>> Does A offer all three streams to B and let B pick? (This leads in the direction of dynamic changes based on B, which is powerful but leads us into continuous control...)
>> Does A determine B has only one display and select which video B should get and send only one stream?
>> 
>> IHMO an approach which lets B have control over what it gets is more powerful. e.g. If I have heard the pitch from the speaker 100 times, I want to watch the customer and see if they are engaged, rather than watch the active speaker blather on....
> 
> Interesting question.
> 
> Maybe good to start considering this in purely sip terms without regard to telepresence specifics.
> 
> In that context I guess A might be sending an offer with three video m-lines, and would not initially know whether the recipient could deal with them all or not. (I'll ignore the audio to keep things simpler.) In a pure sip context it also may not be apparent what the roles are for the three media streams.
> 
> Then B would have to answer. If it can't handle three video m-lines, then it will have to choose one, though it may not have any basis to pick one over another. Perhaps it would just take the first.
> 
> So then we end up with a session having one video stream, with B having chosen *which* of the streams it was, and with A choosing *what* is transmitted on that stream.
> 
> And of course the challenge of maitai is to improve on that situation.
> 
> A minimalist improvement is for A to label the offered streams with the roles they play, so that B has a basis for choosing.
> 
> For maitai it will be necessary to do more than the above, so there is need for more description. But ideally it will be "backward compatible" to the extent that a dumb device will be able to make *some* sense of what it is offered and end up doing something as reasonable as it makes sense for a dumb device to do in that context.
> 
> 	Thanks,
> 	Paul
> _______________________________________________
> maitai mailing list
> maitai@ietf.org
> https://www.ietf.org/mailman/listinfo/maitai