Re: [MMUSIC] Bundle offer with different ports - where to expect media?

Eric Rescorla <ekr@rtfm.com> Tue, 21 May 2013 22:46 UTC

Return-Path: <ekr@rtfm.com>
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 3716821F90EA for <mmusic@ietfa.amsl.com>; Tue, 21 May 2013 15:46:48 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -98.298
X-Spam-Level:
X-Spam-Status: No, score=-98.298 tagged_above=-999 required=5 tests=[AWL=-1.133, BAYES_00=-2.599, FH_RELAY_NODNS=1.451, FM_FORGED_GMAIL=0.622, HTML_MESSAGE=0.001, J_CHICKENPOX_14=0.6, RDNS_NONE=0.1, RELAY_IS_203=0.994, SARE_HTML_USL_OBFU=1.666, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id tqi2rxX49PoZ for <mmusic@ietfa.amsl.com>; Tue, 21 May 2013 15:46:44 -0700 (PDT)
Received: from mail-qc0-x230.google.com (mail-qc0-x230.google.com [IPv6:2607:f8b0:400d:c01::230]) by ietfa.amsl.com (Postfix) with ESMTP id DCA2021F90DF for <mmusic@ietf.org>; Tue, 21 May 2013 15:46:43 -0700 (PDT)
Received: by mail-qc0-f176.google.com with SMTP id o10so708301qcv.35 for <mmusic@ietf.org>; Tue, 21 May 2013 15:46:43 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:x-originating-ip:in-reply-to:references:from:date :message-id:subject:to:cc:content-type:x-gm-message-state; bh=rrQrZ113FshSd1uT0KZgo9pRhWe+vCNcLZX/hVpQOpw=; b=bpsTogWHKUsQSmtnx7HKKaszcW7f/qv/TJdipAHLFmmZipTcbLZIC6U5m5JEaKevgW eS4Xne4zglQ146FfqXAYoKQcsuoszL5LCcvSfnu4WK0i3I3wC4EzlIdWU1qQ5UQIpiUl /OPs+FtDPAgIqHdEpTODed52DP6YuBaC+sK+wi2UeQDBR0048/j5o1xAyUOJDmOYPQzW VP0Gj9vgEwpfW4IpXuzSa5DsCEn+m+yac8IuYU4/AcbvHFlEpzbD7TJmeD/pbACw0Jr+ w8Jo4K/Vhf2H9/Ju3XiLhF6iLu2myG83FBJUAtsca9VtOwO5s/hzlLvEjk2ZpkRWEOaW PcdQ==
X-Received: by 10.49.95.231 with SMTP id dn7mr4887723qeb.63.1369176403246; Tue, 21 May 2013 15:46:43 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.49.52.33 with HTTP; Tue, 21 May 2013 15:46:03 -0700 (PDT)
X-Originating-IP: [203.69.99.17]
In-Reply-To: <CAOJ7v-398_MiXLWjexU0Z0xQju3A-zWuQFkWkJSLPA5UEGAu+g@mail.gmail.com>
References: <7594FB04B1934943A5C02806D1A2204B1C374357@ESESSMB209.ericsson.se> <519A1336.9010001@jitsi.org> <9F33F40F6F2CD847824537F3C4E37DDF1159D127@MCHP04MSX.global-ad.net> <519A229D.7090204@jitsi.org> <7594FB04B1934943A5C02806D1A2204B1C374463@ESESSMB209.ericsson.se> <519A2768.5010904@alum.mit.edu> <CAPvvaa+A=LkYp9A+wENAABwCYaQcD0HVeX4o+O_16iJRPXZfNw@mail.gmail.com> <7594FB04B1934943A5C02806D1A2204B1C3744DC@ESESSMB209.ericsson.se> <CAPvvaaJsPNk1DAJXYoc8aUgZ0ZayV_8q84W=Mm7vwuRRGuwC-g@mail.gmail.com> <7594FB04B1934943A5C02806D1A2204B1C374572@ESESSMB209.ericsson.se> <519A3883.8060006@jitsi.org> <519A3C8F.3040309@alum.mit.edu> <519B343A.30704@jitsi.org> <519BB598.1030909@alum.mit.edu> <CAOJ7v-398_MiXLWjexU0Z0xQju3A-zWuQFkWkJSLPA5UEGAu+g@mail.gmail.com>
From: Eric Rescorla <ekr@rtfm.com>
Date: Tue, 21 May 2013 15:46:03 -0700
Message-ID: <CABcZeBOfJZHKDZbtGt4jfAVVX6p=v+gS-mUd3zHL00YSVu3oMw@mail.gmail.com>
To: Justin Uberti <juberti@google.com>
Content-Type: multipart/alternative; boundary="047d7b6da4082694a704dd4239a1"
X-Gm-Message-State: ALoCoQk30Q38y0pEKqD0cFDTMWnvo1/UPZGgjROvQyGYbNHKJqf3DcGJDickSIIEXC+Sgs3iC0w8
Cc: mmusic <mmusic@ietf.org>, Paul Kyzivat <pkyzivat@alum.mit.edu>, Christer Holmberg <christer.holmberg@ericsson.com>
Subject: Re: [MMUSIC] Bundle offer with different ports - where to expect media?
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: Tue, 21 May 2013 22:46:48 -0000

That sounds good to me.


On Tue, May 21, 2013 at 3:38 PM, Justin Uberti <juberti@google.com> wrote:

> Lots of discussion here; is this an accurate summary of the discussed
> behavior?
>
> 1) BUNDLE offerers must be able to receive on any port (until they get a
> BUNDLE-compatible answer)
>  2) Once the answer is received, bundling is activated, and BUNDLEs use
> the port of the first non-rejected m= line in the offer
> 2a) at this point, the other ports can be discarded
> 3) All m= lines offered in a BUNDLE must be present in the answer, unless
> they are rejected
> 3a) no selective unbundling/BUNDLE splitting is permitted
>
>
> On Tue, May 21, 2013 at 10:57 AM, Paul Kyzivat <pkyzivat@alum.mit.edu>wrote:
>
>> On 5/21/13 4:45 AM, Emil Ivov wrote:
>>
>>> Hey Paul,
>>>
>>> On 20.05.13, 18:09, Paul Kyzivat wrote:
>>>
>>>> On 5/20/13 10:51 AM, Emil Ivov wrote:
>>>>
>>>>> Hey Christer,
>>>>>
>>>>> On 20.05.13, 17:16, Christer Holmberg wrote:
>>>>>
>>>>>> Hi,
>>>>>>
>>>>>>  What happens when the offerer knows the answerer has bundle
>>>>>>>>> support, sends all m-lines with the same port, then the
>>>>>>>>> answerer splits the first line away from the bundle? Would the
>>>>>>>>> answerer still send everything to the same port?
>>>>>>>>>
>>>>>>>>
>>>>>>>> We discussed this week,
>>>>>>>>
>>>>>>>>  Yes, sorry, I didn't follow this closely.
>>>>>>>
>>>>>>>  and the outcome (at least my read of it :) was that the answerer
>>>>>>>> is not allowed to split any m- lines away from the bundle in this
>>>>>>>> case. Instead the answerer will have to send a new offer for the
>>>>>>>> split, allowing new ports to be negotiated at both ends.
>>>>>>>>
>>>>>>>
>>>>>>> OK, so shouldn't the same thing happen in the case with different
>>>>>>> ports?
>>>>>>>
>>>>>>
>>>>>> I suggested that it should never be allowed to split an m- line from
>>>>>> a bundle group in an answer, but others had other opinions.
>>>>>>
>>>>>
>>>>> I don't see how we could allow it in one case and disallow it in the
>>>>> other. The only difference between the two cases is how informed the
>>>>> offerer is about the answerers bundle support capabilities and I don't
>>>>> really understand why this would influence the decision to allow
>>>>> splitting bundles one way or the other.
>>>>>
>>>>
>>>> It is a different case because the same port *can't* both be used as the
>>>> bundle port and a port for an unbundled m-line.
>>>>
>>>
>>> Why not? Obviously the offerer was prepared to demultiplex traffic
>>> there. Why wouldn't it be able to continue doing so even if the answerer
>>> would prefer to receive it separately?
>>>
>>
>> The point of wanting the one line unbundled is so that it can be
>> *received* on a different address/port. Perhaps there is a separate device
>> or process that will be supporting that one, that must be reached at its
>> own addr/port.
>>
>> Unless you expect that this would have a common addr/port on the offering
>> side and different addr/ports on the answering side. But we investigated
>> that approach early in the bundle discussions, and gave it up.
>>
>>
>>  Note that I am not defending such an approach. I'd much prefer that
>>> splitting is only allowed when re-offering.
>>>
>>>  HOWEVER, it would still not help in the case where the 1st m- line is
>>>>>> rejected.
>>>>>>
>>>>>
>>>>> Well, how about looking at it this way: the offerer specifies a bundle
>>>>> port in the first m=line. This also happens to be the port for the
>>>>> first
>>>>> media line but the two are different things and just happen to have the
>>>>> same value for reasons related to syntax and convenience.
>>>>>
>>>>> A bundle supporting answerer should understand this. After receiving
>>>>> the
>>>>> offer that answerer has learned the bundle port number. Rejecting the
>>>>> first m=line in the answer does not change this.
>>>>>
>>>>
>>>> There are many reasons that an answerer may reject an m-line.
>>>> It is *possible* that it is rejecting it because it has a problem with
>>>> the address (c=) for the m-line in the offer. If so, then if you insist
>>>> on using it as the bundle address, even if the m-line is refused, then
>>>> there is no way for the answerer to refuse it.
>>>>
>>>> (*Why* it would have a problem is an open question. Maybe its IPv6 and
>>>> the answerer can't use it, or maybe its an FQDN and it can't be
>>>> resolved. I realize this is unlikely. But making the assumption that the
>>>> address must be acceptable to the answerer is IMO not a good idea.)
>>>>
>>>
>>> Aha! That's a good point.
>>>
>>> Still, the thing that I don't quite understand is: if the answerer has a
>>> problem with the c= line, how could that problem only apply to the first
>>> m= line and not to the entire bundle?
>>>
>>
>> Presumably this would only happen if the c= for were not all the same in
>> the offer. Certainly that is possible. When allocating "ports" for each
>> m-line one might also end up with different addresses.
>>
>>
>>  Of course the answer would come with the first m=line having a 0 port
>>>>> but the offerer would then just learn the bundle port number at the
>>>>> first m=line with a non-zero port.
>>>>>
>>>>
>>>> I presume you must have a motivation for wanting to go this way.
>>>> Are you thinking this will simplify the implementation?
>>>>
>>>
>>> No. The implementation is going to be slightly more complicated indeed
>>> because instead of having one bundle demuxing socket and two regular
>>> ones (well ... if rtcp demuxing counts as regular) you would have three
>>> of them. I don't think this would be particularly horrifying in terms of
>>> complexity though.
>>>
>>> Still, I think being consistent about the ports where one could get
>>> multiplexed data is a good thing, and it could help (humans) when
>>> analysing traffic and debugging network issues.
>>>
>>
>> Consistency is good. But isn't it just as consistent to say that the
>> first *accepted* m-line defines the bundle addr/port as it is to say that
>> the first offered m-line?
>>
>>         Thanks,
>>         Paul
>>
>>
>> ______________________________**_________________
>> mmusic mailing list
>> mmusic@ietf.org
>> https://www.ietf.org/mailman/**listinfo/mmusic<https://www.ietf.org/mailman/listinfo/mmusic>
>>
>
>
> _______________________________________________
> mmusic mailing list
> mmusic@ietf.org
> https://www.ietf.org/mailman/listinfo/mmusic
>
>