Re: [clue] Subject matter for Monday's call

Stephan Wenger <stewe@stewe.org> Sun, 02 December 2012 18:45 UTC

Return-Path: <stewe@stewe.org>
X-Original-To: clue@ietfa.amsl.com
Delivered-To: clue@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 27BA421F86E5 for <clue@ietfa.amsl.com>; Sun, 2 Dec 2012 10:45:35 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.598
X-Spam-Level:
X-Spam-Status: No, score=-4.598 tagged_above=-999 required=5 tests=[AWL=-1.000, BAYES_00=-2.599, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-1]
Received: from mail.ietf.org ([64.170.98.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id P9p3WEnHtI4Q for <clue@ietfa.amsl.com>; Sun, 2 Dec 2012 10:45:34 -0800 (PST)
Received: from ch1outboundpool.messaging.microsoft.com (ch1ehsobe004.messaging.microsoft.com [216.32.181.184]) by ietfa.amsl.com (Postfix) with ESMTP id A10AE21F86D2 for <clue@ietf.org>; Sun, 2 Dec 2012 10:45:33 -0800 (PST)
Received: from mail96-ch1-R.bigfish.com (10.43.68.226) by CH1EHSOBE015.bigfish.com (10.43.70.65) with Microsoft SMTP Server id 14.1.225.23; Sun, 2 Dec 2012 18:45:32 +0000
Received: from mail96-ch1 (localhost [127.0.0.1]) by mail96-ch1-R.bigfish.com (Postfix) with ESMTP id 5FD453802CE; Sun, 2 Dec 2012 18:45:32 +0000 (UTC)
X-Forefront-Antispam-Report: CIP:157.56.240.133; KIP:(null); UIP:(null); IPV:NLI; H:BL2PRD0710HT003.namprd07.prod.outlook.com; RD:none; EFVD:NLI
X-SpamScore: -19
X-BigFish: PS-19(zz98dIc85eh14ffIzz1de0h1202h1d1ah1d2ah1082kzz1033IL8275bh8275dh18c673hz2fh2a8h668h839hd25hf0ah1288h12a5h12bdh137ah1441h1504h1537h153bh15d0h162dh1631h1155h)
Received-SPF: pass (mail96-ch1: domain of stewe.org designates 157.56.240.133 as permitted sender) client-ip=157.56.240.133; envelope-from=stewe@stewe.org; helo=BL2PRD0710HT003.namprd07.prod.outlook.com ; .outlook.com ;
Received: from mail96-ch1 (localhost.localdomain [127.0.0.1]) by mail96-ch1 (MessageSwitch) id 1354473929654951_21991; Sun, 2 Dec 2012 18:45:29 +0000 (UTC)
Received: from CH1EHSMHS015.bigfish.com (snatpool2.int.messaging.microsoft.com [10.43.68.235]) by mail96-ch1.bigfish.com (Postfix) with ESMTP id 9E11C8004A; Sun, 2 Dec 2012 18:45:29 +0000 (UTC)
Received: from BL2PRD0710HT003.namprd07.prod.outlook.com (157.56.240.133) by CH1EHSMHS015.bigfish.com (10.43.70.15) with Microsoft SMTP Server (TLS) id 14.1.225.23; Sun, 2 Dec 2012 18:45:28 +0000
Received: from BL2PRD0710MB349.namprd07.prod.outlook.com ([169.254.2.9]) by BL2PRD0710HT003.namprd07.prod.outlook.com ([10.255.102.38]) with mapi id 14.16.0245.002; Sun, 2 Dec 2012 18:45:28 +0000
From: Stephan Wenger <stewe@stewe.org>
To: Ron Even <ron.even.tlv@gmail.com>
Thread-Topic: [clue] Subject matter for Monday's call
Thread-Index: AQHNz+TJKeMbGzPb7kq5dxCz2/S00pgFyE4A//+MKYA=
Date: Sun, 02 Dec 2012 18:45:27 +0000
Message-ID: <FDBFA77C7400C74F87BC297393B53E352BAF3E97@BL2PRD0710MB349.namprd07.prod.outlook.com>
In-Reply-To: <CAHy0fzBzBdO-U27EJfYO_a4=W1QeGgvbfdraQM1eipFsDpVwEQ@mail.gmail.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [10.255.102.5]
Content-Type: multipart/alternative; boundary="_000_FDBFA77C7400C74F87BC297393B53E352BAF3E97BL2PRD0710MB349_"
MIME-Version: 1.0
X-OriginatorOrg: stewe.org
Cc: "clue@ietf.org" <clue@ietf.org>
Subject: Re: [clue] Subject matter for Monday's call
X-BeenThere: clue@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: CLUE - ControLling mUltiple streams for TElepresence <clue.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/clue>, <mailto:clue-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/clue>
List-Post: <mailto:clue@ietf.org>
List-Help: <mailto:clue-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/clue>, <mailto:clue-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sun, 02 Dec 2012 18:45:35 -0000

Hi Roni,
Inline.
S.


From: Ron Even <ron.even.tlv@gmail.com<mailto:ron.even.tlv@gmail.com>>
Date: Sunday, 2 December, 2012 09:39
To: Stephan Wenger <stewe@stewe.org<mailto:stewe@stewe.org>>
Cc: "clue@ietf.org<mailto:clue@ietf.org>" <clue@ietf.org<mailto:clue@ietf.org>>
Subject: Re: [clue] Subject matter for Monday's call

Hi,
The general flow is ok and the new point here is that after the advertise config there will always be a new offer answer that will establish the media and can be used for defining the SSRCs of all streams. This is important for static mapping and will also be used to support simulcast which is not supported in CLUE.
I also assume that step 1 and 2 will include m-lines for allowing initial audio and video this will allow ICE negotiation and having audio and video early in the process. This is required also for interoperability with non CLUE systems

SW: yes and no. As you wrote, steps 1 and 2 can negotiate media using m-lines for initial media for fast startup, legacy support, and similar purposes.  However, the use of those I consider an optimization that CLUEful systems may or may not implement.  In other words, I think it MUST be possible that only a CLUE channel is established early, but the CLUEful systems reject the initial media channels.  In this case, all the ICE for the "real" media channels is being done in those new steps 7 and 8.  (the likelihood of success for dealing with ICE at that stage rather than early on appears to me to be the same—we are just talking about timing here))  Also, it MUST be possible that , after the CLUE negotiation is done, the initial channels be torn down in favor of those new channels, for example in such cases where certain codecs is only made available to CLUEful applications and not elsewhere, and the originally negotiated channels not using those codecs would be redundant.  It MAY be possible to "overload" the negotiated channels with the new media as negotiated in CLUE, but again, that is an optimization problem.

As for step 3 and 4 overlap, this may not always be the case, example is an endpoint calling to the MCU who may want to see the advertisement first.

True.

Roni

On Saturday, December 1, 2012, Stephan Wenger wrote:
Hi all,

Mark, Andy, and myself had a bit of brainstorming how to most productively use our time during the Monday morning call.  Due to travel and vacation schedule, our coordination was finalized call only late Friday.  Which may serve as an explanation, if not as an excuse, for the late timing of this email.

In our opinion, the most pressing issue we have with the framework document is it being agnostic to the protocol elements used to convey the various messages that are part of the framework.  Clearly, the framework was written from a perspective where a CLUE protocol channel would be established, and (all?) further signaling would be dealt with over that channel.  So is, more or less, the call flow doc.  We believe that there was sufficient pushback against that idea to make rapid progress based on this assumption unlikely.  Accordingly, we believe that we probably best spend most of our time by discussing a strawman for a split-up between SDP-represented, SIP-ish, Offer-Answer, …, that type of traditional messages, and (XML-coded) messages sent over the CLUE.  The focus of our Monday call would be on the initial exchange, rather than any updates that may happen during a call.

With reference to the call flow 02 doc (https://datatracker.ietf.org/doc/draft-romanow-clue-call-flow/?include_text=1) that exchange could look as follows:

  1.  Invite from Alice, just like A.1 in call-flow-02
  2.  200 OK from Bob, A.2
  3.  CLUE Advertisement Alice A.3, covering geometry stuff, encoding groups, etc.
  4.  CLUE Advertisement Bob A.4; note that 3 and 4 would in practice overlap in time
  5.  CLUE Response from Alice A.5, with the difference that these reposes DO NOT have the side effect of initiating any media channel related activity; they are pure signaling
  6.  CLUE Response from Bob, A.6, same remark.. 5 and 6 could overlap in time.
  7.  Re-invite from Alice and Bob, respectively, with media channels as CLUE-"negotiated"
  8.  200 OK from Bob, Alice.  As the endpoints have already established their operation points through CLUE, this step will not fail except if an entity not involved in the CLUE negotiation intervenes—i.e. a middle box doesn't like that call.

The reason for the existence of step 7, rather than setting up media channels as side effect of steps 3 through 6 (as assumed in call flow and in the current framework doc) is twofold: easier integration into the source base of media codecs that currently use SDP for the selection of their parameters, and making middlebox people happy.

The reason for the existence of steps 3 through 6 is our agreement that not all useful protocol elements envisioned in the framework can be reasonably and meaningfully implemented in SDP extensions.  This is certainly true for the geometry stuff.

The reason for keeping an encoding group concept in CLUE is that a representation of the information that can be conveyed through individual encoding descriptions, encoding groups, and the association of media captures with encoding groups (section 7 and 8 of the framework) purely through grouped m-lines would lead to bloated (if not exploded :-) SDP, quite possibly well beyond a reasonable size (i.e. MTU size); the high level of abstraction offered by concepts such as encoding groups, simultaneous transmission sets, and so on, makes for a very compact representation compared to listing all possible permutations of alternative choices in grouped m-lines.

Does such a mechanism make at least initial sense?  Should it be fleshed out and put into the framework?

Stephan