Re: [Sipping] comments on draft-loreto-sipping-context-id-requirements-01.txt

Paul Kyzivat <pkyzivat@cisco.com> Mon, 23 March 2009 14:12 UTC

Return-Path: <pkyzivat@cisco.com>
X-Original-To: sipping@core3.amsl.com
Delivered-To: sipping@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id D25923A685C for <sipping@core3.amsl.com>; Mon, 23 Mar 2009 07:12:46 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.03
X-Spam-Level:
X-Spam-Status: No, score=-5.03 tagged_above=-999 required=5 tests=[AWL=1.569, BAYES_00=-2.599, RCVD_IN_DNSWL_MED=-4]
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 4QXmaZ9AzTXS for <sipping@core3.amsl.com>; Mon, 23 Mar 2009 07:12:45 -0700 (PDT)
Received: from sj-iport-3.cisco.com (sj-iport-3.cisco.com [171.71.176.72]) by core3.amsl.com (Postfix) with ESMTP id D88E63A693F for <sipping@ietf.org>; Mon, 23 Mar 2009 07:12:45 -0700 (PDT)
X-IronPort-AV: E=Sophos;i="4.38,408,1233532800"; d="scan'208";a="145545225"
Received: from sj-dkim-4.cisco.com ([171.71.179.196]) by sj-iport-3.cisco.com with ESMTP; 23 Mar 2009 14:13:36 +0000
Received: from sj-core-5.cisco.com (sj-core-5.cisco.com [171.71.177.238]) by sj-dkim-4.cisco.com (8.12.11/8.12.11) with ESMTP id n2NEDaVT016888 for <sipping@ietf.org>; Mon, 23 Mar 2009 07:13:36 -0700
Received: from xbh-rtp-211.amer.cisco.com (xbh-rtp-211.cisco.com [64.102.31.102]) by sj-core-5.cisco.com (8.13.8/8.13.8) with ESMTP id n2NEDY7L021506 for <sipping@ietf.org>; Mon, 23 Mar 2009 14:13:35 GMT
Received: from xfe-rtp-202.amer.cisco.com ([64.102.31.21]) by xbh-rtp-211.amer.cisco.com with Microsoft SMTPSVC(6.0.3790.1830); Mon, 23 Mar 2009 10:13:35 -0400
Received: from [161.44.174.105] ([161.44.174.105]) by xfe-rtp-202.amer.cisco.com with Microsoft SMTPSVC(6.0.3790.1830); Mon, 23 Mar 2009 10:13:35 -0400
Message-ID: <49C79910.1070204@cisco.com>
Date: Mon, 23 Mar 2009 10:13:36 -0400
From: Paul Kyzivat <pkyzivat@cisco.com>
User-Agent: Thunderbird 2.0.0.19 (Windows/20081209)
MIME-Version: 1.0
To: Jonathan Rosenberg <jdrosen@cisco.com>
References: <49C6DE1C.1090008@cisco.com>
In-Reply-To: <49C6DE1C.1090008@cisco.com>
Content-Type: text/plain; charset="ISO-8859-1"; format="flowed"
Content-Transfer-Encoding: 7bit
X-OriginalArrivalTime: 23 Mar 2009 14:13:35.0281 (UTC) FILETIME=[8DCCB210:01C9ABC1]
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; l=4727; t=1237817616; x=1238681616; c=relaxed/simple; s=sjdkim4002; h=Content-Type:From:Subject:Content-Transfer-Encoding:MIME-Version; d=cisco.com; i=pkyzivat@cisco.com; z=From:=20Paul=20Kyzivat=20<pkyzivat@cisco.com> |Subject:=20Re=3A=20[Sipping]=20comments=20on=09draft-loret o-sipping-context-id-requirements-01.txt |Sender:=20; bh=G77mcEFEFYxGUIRAzYWZkduyt5hePjV9YyhgOnU8Ido=; b=q8jAxUAFfqmvyD6f1y+96TSZOX1ql5RmOHzvK0I83AW5oNrPLFeDh70dHx Jq3iuh/DpAW1gnBlh0ph9R9ADBXF4u6BdrVX3xy9+4XoVF5+pEHpTkYGWPKy 6PaIKGoknj;
Authentication-Results: sj-dkim-4; header.From=pkyzivat@cisco.com; dkim=pass ( sig from cisco.com/sjdkim4002 verified; );
Cc: IETF Sipping List <sipping@ietf.org>
Subject: Re: [Sipping] comments on draft-loreto-sipping-context-id-requirements-01.txt
X-BeenThere: sipping@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: "SIPPING Working Group \(applications of SIP\)" <sipping.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/sipping>, <mailto:sipping-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/sipping>
List-Post: <mailto:sipping@ietf.org>
List-Help: <mailto:sipping-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/sipping>, <mailto:sipping-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 23 Mar 2009 14:12:46 -0000

I largely agree with Jonathan.

I even agree that an *ideal* solution will have the aggregated devices 
aware that the aggregation is present. But I think it is also important 
to be able to create such aggregations where only a subset of the 
aggregated devices are aware of the aggregation. This is just a 
recognition of the need to accommodate existing devices. It may be 
suboptimal, but still more optimal than not having the aggregation at 
all. For instance its easy to imagine this being orchestrated from one 
"smart" device and a variety of "dumb" devices. So I see 3pcc as *one* 
implementation, for which no additional standardization work is 
required. There could be additional standardization work to communicate 
the aggregation details among the cooperating devices.

Just in case it isn't obvious, the aggregation can occur at both ends of 
the call too. That is all the more reason for aggregation at one end to 
be hidden from the other end. The media may be disaggregated in 
different ways at the two ends. If each end must be aware of what is 
going on at the other end, then this becomes an O(n^2) problem.

	Thanks,
	Paul

Jonathan Rosenberg wrote:
> Thanks for continuing to work this, Salvatore.
> 
> My main comment, as others have commented, is that the draft provides a 
> great set of use cases. However, it makes the fundamental assumption 
> that the right way to solve this is by having multiple dialogs from user 
> A to user B, and then have them correlated. I am *far* from convinced 
> this is the right solution.
> 
> So, focusing strictly on requirements, I'd like to see this document 
> retitled to something like, "Requirements for Supporting Disaggregated 
> Media", and keep the use cases, except delete the bits that suggest that 
> the problem is multiple dialogs. For example, in section 2.1, the first 
> two paragraphs are good, but the last two *assume* the multiple dialog 
> solution.
> 
> Other suggestions for similar use cases:
> 
> * voice/video from a deskphone and application sharing from PC
> * voice from a deskphone and video to/from a TV attached to a set top 
> box with a camera
> * the UI for the call on a mobile phone but the audio coming out of a 
> speakerphone in a room
> 
> There are lots more. I think the draft just should enumerate these.
> 
> The requirement, then, is a mechanism which allows these use cases. I 
> personally think that the solution should be *completely invisible* to 
> the far end of the call. In all cases, all of the various devices under 
> Alice's control (where Alice is the one with a multiplicity of devices) 
> need some kind of enhancement to make this work; I would very much like 
> to avoid the need for Bob to do *anything* to make this work. The reason 
> is simple: its much, much easier for a user to upgrade (or their provier 
> to upgrade) the devices under their control to get a feature that 
> benefits them, than it is to require *everyone else* to upgrade in order 
> to get a feature to work which benefits me.
> 
> The document has this requiremnt:
> 
> REQ3  UAs that do not implement the correlation mechanism and, thus,
>       do not understand the correlation information they received should
>       be able to handle the individual SIP dialogs that were supposed to
>       be correlated as well as possible.  That is, the correlation
>       mechanism should not keep them from trying to handle the SIP
>       dialogs.
> 
> this is not nearly strong enough. I think the real requirement is:
> 
> REQ3: The mechanism should not require any changes to the far side of 
> the session.
> 
> I also don't think 3pcc is a particularly good solution either; besides 
> the issues raised in the threads about requiring one device to be 
> controller and the resulting complications, it also results in a really 
> suboptimal user experience because the slave phones think this is just a 
> normal call when its not. As a simple example, the caller ID on one of 
> the slave phones would probably show the controller and not the far end.
> 
> As another example, consider a PC doing video and audio on the 
> hardphone. What if the hardphone can also do video, and the user hits 
> the video button on the phone? Most likely this creates two video 
> streams. Ugh. Indeed, the hardphone would ideally indicate that there 
> already WAS video in progress, but on a PC. All of this means you can't 
> really just 'fool' the slave phone into sending media somewhere - you 
> really want it to be much smarter about this situation and be well aware 
> that there is disaggregated media.
> 
> Thanks,
> Jonathan R.