Re: [MMUSIC] it's time to expel SDP from our lives

Paul Kyzivat <pkyzivat@alum.mit.edu> Tue, 13 June 2017 20:34 UTC

Return-Path: <pkyzivat@alum.mit.edu>
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 C6D8E129C4A for <mmusic@ietfa.amsl.com>; Tue, 13 Jun 2017 13:34:00 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.201
X-Spam-Level:
X-Spam-Status: No, score=-4.201 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, RP_MATCHES_RCVD=-0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id nFjBYv2Teoxw for <mmusic@ietfa.amsl.com>; Tue, 13 Jun 2017 13:33:59 -0700 (PDT)
Received: from alum-mailsec-scanner-7.mit.edu (alum-mailsec-scanner-7.mit.edu [18.7.68.19]) by ietfa.amsl.com (Postfix) with ESMTP id D3F78129AC7 for <mmusic@ietf.org>; Tue, 13 Jun 2017 13:33:58 -0700 (PDT)
X-AuditID: 12074413-d93ff7000000742e-d3-59404c33b009
Received: from outgoing-alum.mit.edu (OUTGOING-ALUM.MIT.EDU [18.7.68.33]) (using TLS with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by alum-mailsec-scanner-7.mit.edu (Symantec Messaging Gateway) with SMTP id 59.DE.29742.33C40495; Tue, 13 Jun 2017 16:33:56 -0400 (EDT)
Received: from [192.168.1.110] (c-24-62-227-142.hsd1.ma.comcast.net [24.62.227.142]) (authenticated bits=0) (User authenticated as pkyzivat@ALUM.MIT.EDU) by outgoing-alum.mit.edu (8.13.8/8.12.4) with ESMTP id v5DKXsGQ018884 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES128-SHA bits=128 verify=NOT) for <mmusic@ietf.org>; Tue, 13 Jun 2017 16:33:55 -0400
To: mmusic@ietf.org
References: <CABcZeBMd2BZgyeFnqafTVyGga4FMoK0xJkPCv0y_wvmBWsg+xg@mail.gmail.com> <CAD5OKxvwgvm3Q4HsCYsewZjRS9ty_g34n9+x87vfLW4Omcm8mw@mail.gmail.com> <CALiegfk_Oz5Vj5xxbO9v1XgGHyBYyzCqg1jp1Mv_aW0noWMchA@mail.gmail.com>
From: Paul Kyzivat <pkyzivat@alum.mit.edu>
Message-ID: <402e9b86-e28f-e2ab-d3b3-2f34e9dd0bff@alum.mit.edu>
Date: Tue, 13 Jun 2017 16:33:54 -0400
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:52.0) Gecko/20100101 Thunderbird/52.1.1
MIME-Version: 1.0
In-Reply-To: <CALiegfk_Oz5Vj5xxbO9v1XgGHyBYyzCqg1jp1Mv_aW0noWMchA@mail.gmail.com>
Content-Type: text/plain; charset="utf-8"; format="flowed"
Content-Language: en-US
Content-Transfer-Encoding: 8bit
X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFnrPIsWRmVeSWpSXmKPExsUixO6iqGvi4xBp8GC/msXU5Y9ZHBg9liz5 yRTAGMVlk5Kak1mWWqRvl8CVseaaVMF+5YrJ938wNjDOl+li5OSQEDCR2PnnK0sXIxeHkMAO Joknn/8zQjivmSTurdzPBFIlLGAkcen0NBYQW0RAWGLG279sEEX3GCUezX/LCJJgE9CSmHPo P1gRr4A9UMMSZhCbRUBV4ub9VjYQW1QgTeLPpRvMEDWCEidnPgGr5xQIlNj26xiYzSxgJjFv 80NmCFtc4taT+UwQtrxE89bZzBMY+WchaZ+FpGUWkpZZSFoWMLKsYpRLzCnN1c1NzMwpTk3W LU5OzMtLLdI118vNLNFLTSndxAgJS+EdjLtOyh1iFOBgVOLhffDePlKINbGsuDL3EKMkB5OS KO8SO4dIIb6k/JTKjMTijPii0pzU4kOMEhzMSiK8hzyAcrwpiZVVqUX5MClpDhYlcV61Jep+ QgLpiSWp2ampBalFMFkZDg4lCd6pXkCNgkWp6akVaZk5JQhpJg5OkOE8QMMngyzmLS5IzC3O TIfIn2LU5fg1c+sXJiGWvPy8VClxXilvoCIBkKKM0jy4ObB08opRHOgtYV4RkCoeYCqCm/QK aAkT0JLrV2xAlpQkIqSkGhhrIlZNPr/57Cv2iqL26wkrbWznrmxeYbyL8ZnS8+0cot+Utmpv 8ZjIeLZiTv/P9SbNH97eLDz3tGbZtYqeu88OyM8vf3ip+Pm+0NKLJgsDr4eFK4YzvtXd/Fau x5jzJtPafcnuR5/8W3FCu3+PyuqT906t7GJVDc6Tf8765WBFdoXrUR1VlfIsJZbijERDLeai 4kQApArMsQIDAAA=
Archived-At: <https://mailarchive.ietf.org/arch/msg/mmusic/Lz5NWFkZyYfwfpdX54Kf6sR-V_s>
Subject: Re: [MMUSIC] it's time to expel SDP from our lives
X-BeenThere: mmusic@ietf.org
X-Mailman-Version: 2.1.22
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: <https://mailarchive.ietf.org/arch/browse/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: Tue, 13 Jun 2017 20:34:01 -0000

Iñaki,

[Changing the subject, since it was *very* off-topic.]

I've added my comments at the end.

On 6/13/17 1:08 PM, Iñaki Baz Castillo wrote:
> 2017-06-02 20:02 GMT+02:00 Roman Shpount <roman@telurix.com>:
>> There was a discussion regarding the setup attribute value in subsequent
>> offers when establishing new DTLS association is not desired
> 
> Hi, I've silently read all this thread. In fact I already participated
> in this exact subject in some threads in the past (so long ago). But
> it seems that problems in SDP persist forever.
> 
> I think it's time to expel SDP from our lives, specially in WebRTC
> where we, the developers, can do media signaling much better than the
> SDP-way.
> 
> All this kinds of problems are because a full SDP blob must be
> generated and consumed by the remote party for *every* minor change in
> the multimedia session. So, if I want to add a video stream on top of
> the same ICE+DTLS transport, or if I want to pause it, or remove it,
> or whatever, I must send a full SDP and the remote peer must figure
> out whether such a SDP involves a ICE change, DTLS change, streams
> change, codecs change, etc etc. This means a "full re-inspection" of
> all the parameters (ICE, DTLS, RTP, RTCP, etc) for every SDP O/A
> renegotiation.
> 
> When SDP was about simple bidirectional audio it was just fine. But
> nowadays SDP is unsustainable.
> 
> Now we have a draft that defines a new a=tls-id attribute to avoid
> DTLS re-handshake on a SDP O/A renegotiation. That's a hack IMHO. We
> may also invent a new a=ice-id to avoid inspecting remote ICE
> ufrag/passwd/candidates every time a multimedia session change is
> desired. And also a=m-id attribute (per media section) so the receiver
> figures out whether something has changed in such a media section or
> not, etc. Ah, and we have BUNDLE so the "transport" is just defined in
> the first media section (or the first *active* one, who knows?).
> 
> 1) Transport => UDP or TCP or ICE
> 2) Security => DTLS or SRTP
> 3) Media => Parameters for independent send/recv media streams
> 
> That's all we need, nothing else: a clear layers separation so we can
> signal each layer parameters independently. Yes, that's similar to
> what ORTC provides, which is far from perfect, but it becomes much
> more comfortable to work with.
> 
> IMHO it's really sad that WebRTC 1.0 has been polluted with this
> legacy "media signaling" mechanism. WebRTC was born so many years ago
> and, in 2017 with spec 1.0.0 about to be released, we still have spec
> and implementation problems when it comes to "renegotiate" something
> in the session because the remote may attempt a new DTLS handshake...
> just LoL.
> 
> I do know that my complain is slightly off-topic given that this is
> MMUSIC, which is supposed to be 100% SDP related. But I wonder why the
> MMUSIC WG is still 100% tiled to SDP rather than just defining
> multimedia related parameters as it should (IMHO). The longer this WG
> defines multimedia stuff for just SDP, the longer the developers will
> suffer the SDP re-negotiation and its inherited "full re-inspection".

Everybody who has worked with SDP realizes that it is ill-suited to the 
tasks we use it for. Quite a long time ago there was an effort called 
SDPng that tried to define a new syntax. I wasn't involved in that, but 
it seemed like it was defining something reasonable (XML based IIRC). 
But it failed because (IIUC) nobody could see a viable migration plan to 
introduce it.

I think you are suggesting to do something new but limit its scope to 
WebRTC. Such a narrow scope would ease the migration effort. There would 
still be one but perhaps people would be willing to suffer through it.

BUT, WebRTC doesn't stand alone. Interworking with SIP is still 
important, and probably will be for a long time. Also, your description 
of what is needed is simplistic. What features (functionality, not 
syntax) of SDP O/A are not needed with WebRTC? AFAICT all the stuff that 
describes codecs is needed, and much of the rest. There is a lot of 
that, spread over many RFCs. All of that would have to be re-done.

Doing something new here may well be the right thing to do. But the 
first step is to carefully define the scope of applicability, and what 
interworking requirements there are with things outside that scope. Then 
perhaps the size of the effort can be estimated and the feasibility 
doing so assessed.

	Thanks,
	Paul