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

Justin Uberti <juberti@google.com> Tue, 21 May 2013 22:38 UTC

Return-Path: <juberti@google.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 047721F0D41 for <mmusic@ietfa.amsl.com>; Tue, 21 May 2013 15:38:20 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -101.031
X-Spam-Level:
X-Spam-Status: No, score=-101.031 tagged_above=-999 required=5 tests=[AWL=0.346, BAYES_00=-2.599, FM_FORGED_GMAIL=0.622, HTML_MESSAGE=0.001, J_CHICKENPOX_14=0.6, NO_RELAYS=-0.001, 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 QTCFbev4qWIL for <mmusic@ietfa.amsl.com>; Tue, 21 May 2013 15:38:18 -0700 (PDT)
Received: from mail-ie0-x22b.google.com (mail-ie0-x22b.google.com [IPv6:2607:f8b0:4001:c03::22b]) by ietfa.amsl.com (Postfix) with ESMTP id 9793C1F0D23 for <mmusic@ietf.org>; Tue, 21 May 2013 15:38:18 -0700 (PDT)
Received: by mail-ie0-f171.google.com with SMTP id e11so3460800iej.30 for <mmusic@ietf.org>; Tue, 21 May 2013 15:38:18 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-type; bh=azEp4F4aWbbzO3NjttZOftOkpRqpVhL0ov3J85F099Q=; b=OX13WsRPMDzaP9FacDG2gq34778LbT4ftBoLkmH0S1MsAwehtuBiVApjg9qqKzkba0 UVzmE7r7c/O31d7WHh+nOCwEOpK8RWvU2c5yJz0Kv+S+bMneR7Z65IaJT4Y8ScfawhZt M6bL/DtsAjqAJoDND7ytz1oYTlIUx9kHgk/x6obF9hBtmGt8u/Ocyp9dh8Evad34I2CW 61KxZ3SqJDqnbJY5BEwgOGCzJQOGv+KvefLPtVxwZQ9jx60zyPkzM+zODGlnkE9M3n9A qoxOWJB0tfyEM6qyaY39vpurn9LxVwMUDkrzI7vppVgThFpekzebTYBS17nuP/cXr8Td u3mQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-type:x-gm-message-state; bh=azEp4F4aWbbzO3NjttZOftOkpRqpVhL0ov3J85F099Q=; b=CC3Nn3KXfMLghUETFUcC/zKDWxYgaqv7tmLTECxUCfDwlPzDwvhrkxAGwUWXE+f6bX m1T+7YrSv9Dwd8glYYjpPXvN2o9Rk/A6xBacmAOmnlkAnaa+ru/4sNdiw2ru3Q2ASQKZ aIOxDz3bslqM3dBfWF0gSlVrlpdtUyFLgbooxCp6kOGfHt51+bDLi4/THLasVk3P5bHr 3BH2HauY03O4mKirVBLHvrSjL5OjREXe9r4nSwPfLsLVl5eSo97UPMJDkB5m9CJr1qdK kALRTVr0m6aZtCN9UPTwObu755f9Ui+hPiru8DHT+/E7CLWIdqB56CLwyrCVsSxFMIcy AjNQ==
X-Received: by 10.50.39.35 with SMTP id m3mr9391321igk.42.1369175898124; Tue, 21 May 2013 15:38:18 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.231.153.69 with HTTP; Tue, 21 May 2013 15:37:58 -0700 (PDT)
In-Reply-To: <519BF676.5070500@jitsi.org>
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> <519BF676.5070500@jitsi.org>
From: Justin Uberti <juberti@google.com>
Date: Tue, 21 May 2013 15:37:58 -0700
Message-ID: <CAOJ7v-3HjxmcFoNfUDg_M2wWiUaco=7GBJP8y2czUTaF4JEDbw@mail.gmail.com>
To: Emil Ivov <emcho@jitsi.org>
Content-Type: multipart/alternative; boundary=047d7bdca5ca0b04e404dd421b4b
X-Gm-Message-State: ALoCoQl0ulvTKU1xJXgPTmkGEdczOw7O6Dup1d2CBqUA4ORCr5/Dk3jruXafovcFl2ux6LnpzPjLK5or1HQRVyNjpt0hOs6pz2n6hmbdYIDEXn/9JGzC4U3wtn7cGRM4nGo6SPRqOYpf/qKKbOXYGH6LSlFvc58sWNc5NI7fdAJfAuu4cGySHRjsT2+CL4li8DtIr0rOvs3G
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:38:20 -0000

On Tue, May 21, 2013 at 3:34 PM, Emil Ivov <emcho@jitsi.org> wrote:

> Hey Paul,
>
> On 21.05.13, 20:57, Paul Kyzivat 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.
>
> Yes, sure. My point was that the party that unbundled the one m= line
> can receive it separately. The party that sent the offer can keep
> getting it on the same 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.
>
> No I don't and I suspect you misunderstood me.
>
> Also in all my comments I kept noting that we shouldn't be allowing the
> answer to unbundle a single m= line. In your response to Cullen you
> seemed to agree with this so I guess we are in agreement.
>
> >> 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.
>
> This makes me wonder: should we even allow for different c= addresses
> within a bundle? The reason to use different ports was a compromise, not
> a choice based on the necessity to give that option to applications.
> While falling back to different port numbers is defendable, I don't see
> how we would justify the possibility to fallback to different c= lines.
>
> > 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?
>
> The bundle suggestion started out by saying that all ports would be the
> same. We then moved to a version where we would use different ports, in
> order to prevent some non-bundle endpoints from fainting at the sight of
> port reuse. We still agreed that the first one is the bundle port and
> the others are there just for fall back. So far so good.
>
> Now we are discussing the possibility of saying: your bundle port will
> be the first one you offer, unless the answerer rejects that m= line, in
> which case it could be the port of the second m= line, or the third one ...
>
> I agree it wouldn't be the end of the world, but to me this doesn't
> sound particularly consistent.
>

Perhaps not the most elegant thing in the world, but it doesn't seem
inconsistent to me. I think this is the most practical choice.