[MMUSIC] M-line philosophy (Re: Wisdom sought: Prioritization of codecs)

Harald Alvestrand <harald@alvestrand.no> Mon, 19 November 2012 05:13 UTC

Return-Path: <harald@alvestrand.no>
X-Original-To: mmusic@ietfa.amsl.com
Delivered-To: mmusic@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 100EB21F8477 for <mmusic@ietfa.amsl.com>; Sun, 18 Nov 2012 21:13:06 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -110.251
X-Spam-Level:
X-Spam-Status: No, score=-110.251 tagged_above=-999 required=5 tests=[AWL=0.349, BAYES_00=-2.599, RCVD_IN_DNSWL_HI=-8, USER_IN_WHITELIST=-100]
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 cGC9bb4kiX12 for <mmusic@ietfa.amsl.com>; Sun, 18 Nov 2012 21:13:05 -0800 (PST)
Received: from eikenes.alvestrand.no (eikenes.alvestrand.no [158.38.152.233]) by ietfa.amsl.com (Postfix) with ESMTP id 4E29321F8466 for <mmusic@ietf.org>; Sun, 18 Nov 2012 21:13:04 -0800 (PST)
Received: from localhost (localhost [127.0.0.1]) by eikenes.alvestrand.no (Postfix) with ESMTP id DC1FD39E15B for <mmusic@ietf.org>; Mon, 19 Nov 2012 06:12:55 +0100 (CET)
X-Virus-Scanned: Debian amavisd-new at eikenes.alvestrand.no
Received: from eikenes.alvestrand.no ([127.0.0.1]) by localhost (eikenes.alvestrand.no [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id wxe1p8Nj0541 for <mmusic@ietf.org>; Mon, 19 Nov 2012 06:12:54 +0100 (CET)
Received: from [192.168.1.107] (unknown [188.113.88.47]) by eikenes.alvestrand.no (Postfix) with ESMTPSA id 9D44B39E091 for <mmusic@ietf.org>; Mon, 19 Nov 2012 06:12:54 +0100 (CET)
Message-ID: <50A9BFD4.3000601@alvestrand.no>
Date: Mon, 19 Nov 2012 06:12:52 +0100
From: Harald Alvestrand <harald@alvestrand.no>
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:16.0) Gecko/20121028 Thunderbird/16.0.2
MIME-Version: 1.0
To: mmusic@ietf.org
References: <50A4AC20.5030306@alvestrand.no> <50A4AE7F.4040403@alvestrand.no> <50A51F04.5090502@alum.mit.edu> <50A54895.7030006@nostrum.com>
In-Reply-To: <50A54895.7030006@nostrum.com>
Content-Type: text/plain; charset="ISO-8859-1"; format="flowed"
Content-Transfer-Encoding: 7bit
Subject: [MMUSIC] M-line philosophy (Re: Wisdom sought: Prioritization of codecs)
X-BeenThere: mmusic@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Multiparty Multimedia Session Control Working Group <mmusic.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/mmusic>, <mailto:mmusic-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/mmusic>
List-Post: <mailto:mmusic@ietf.org>
List-Help: <mailto:mmusic-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/mmusic>, <mailto:mmusic-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 19 Nov 2012 05:13:06 -0000

On 11/15/2012 08:55 PM, Adam Roach wrote:
> On 11/15/12 10:57, Paul Kyzivat wrote:
>> The whole notion of codec preference breaks down even more for 
>> multiplexed streams. You may very explicitly prefer/require different 
>> streams to use different codecs.
>>
>> So I don't think we can rely too much on parsing the existing text 
>> for guidance on how to use SDP to represent multiplexed sessions. 
>> (Unless of course we use bundle, with a separate m-line for each 
>> stream.) AFAIK we are breaking new ground here.
>
> This kind of "we fixed this problem once and get to fix it all over 
> again" issue is exactly the kind of thing I was speaking to at the 
> microphone in MMUSIC in Atlanta. The further we drift from the 
> established semantics of SDP, the less applicable previously developed 
> mechanisms become. Bundle and similar approaches that maintain one m= 
> line per stream allow us to leverage 14 years of extensions and 
> clarifications. If we decide to split from that (rather fundamental, 
> IMHO) characteristic of SDP, we are effectively forking the protocol, 
> and throwing away years of prior work.
actually my caricature of the history of SDP is 4 years of multicast, 
where multiple streams per RTP session was the norm, 10 years of 
telephony, with only one stream of each type that mattered in each 
direction, and 12 months of trying to get multiple streams working again.

While beating down the resistance of the RTP people against having 
different media types in one RTP session, I've been told over and over 
again that having multiple media streams of the *same* media type in one 
RTP session is just fine and dandy "because that's what we designed RTP 
to do", and now we're finally getting explicit about addressing the idea 
of whether we tolerate more than one media stream per <control surface 
unit> - where the only control surface unit that's been used for the 10 
years of telephony is the M-line.

The M-line is problematic because it binds together multiple things:

- A top level media type
- A set of parameters for media transmission *in all directions* (bound 
to payload type)
- Transport information (the "RTP session" data)


SDP M-lines are already problematic as soon as you want different 
parameters in the two directions. It only goes downhill from there when 
one does multiple flows with varying characteristics.

As I said in Atlanta: SDP M-lines have been walking with one foot on the 
"I'm an RTP session" bank of the canal and with the other foot on the 
"I'm a media stream description" bank of the canal.

The canal is growing wider. Fast.