Re: [MMUSIC] Offer/Answer PT Questions - text proposal

Roman Shpount <roman@telurix.com> Thu, 03 March 2016 19:47 UTC

Return-Path: <roman@telurix.com>
X-Original-To: mmusic@ietfa.amsl.com
Delivered-To: mmusic@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 8D2361B4245 for <mmusic@ietfa.amsl.com>; Thu, 3 Mar 2016 11:47:59 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.278
X-Spam-Level:
X-Spam-Status: No, score=-1.278 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, FM_FORGED_GMAIL=0.622, HTML_MESSAGE=0.001, SPF_PASS=-0.001] autolearn=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 NPKavmeJNenu for <mmusic@ietfa.amsl.com>; Thu, 3 Mar 2016 11:47:57 -0800 (PST)
Received: from mail-io0-x233.google.com (mail-io0-x233.google.com [IPv6:2607:f8b0:4001:c06::233]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id B4A341B4247 for <mmusic@ietf.org>; Thu, 3 Mar 2016 11:47:53 -0800 (PST)
Received: by mail-io0-x233.google.com with SMTP id m184so39308296iof.1 for <mmusic@ietf.org>; Thu, 03 Mar 2016 11:47:53 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=telurix-com.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc; bh=r2B/H+GsPlTvGWDCSxPYvIeKcwqnSw3EeGeX46M6HwA=; b=Wu0+CetKhZ4+bKfK9ex7IGlZGrp15QV+kZp+Uk2uUmaHWijQLsl4+1b+HWR/wwdo5A EuNe87nnEkyxNdvtqnXXIxxgZddJd8C1Q+v7RRyddfR+KSBOH39fM/ovHAifqT9fk/3V e/lqvKSQupIp/mjQeF7894EII9gVLJ36pWcBe8IWeMx0BOzIhUkj+3ck/TRzeMwzwJcw ZyI+GUpbdgdkMzwXXKdrda+ymLy88cOJa5338OFDfJfWgfezG7ag0bF/E56ouFoV2KCO PbLA9vJiiD94dZ/V/ik0vcFFSTMCaqV6FzLr4t2vPUuSD4LTyqD7gP4YdM2kP1cqfw7L ZFlg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc; bh=r2B/H+GsPlTvGWDCSxPYvIeKcwqnSw3EeGeX46M6HwA=; b=e/0MXms/czfHFUCWxmmDedE6s5JIwhdaSgR0L6RIMEeR9O/1MODH4p7UT2/8Dqdth1 LXA/fWV8RAy15QJX3txX43smc+5J0M37W94BM1rdInaXBmPJTvEuNt1VIuHLpgDPE2sT qyEZefwDeEjTifU9X5fj7mHsuwsyE7LX8dNs8jZrKQ4Tg8nLTJi0Taqq1OK/fIjd78uf vTgQBH5TD4KPUyB1Bh9wxdYWiULbMEeGoGgVDW7UCFKzaTU7GiCghfQ/d6c1vg/SwKyZ j8J4WYarKnWDq2+ZVsVPOyCKkpeQV1JAk3AkwxWIVpUJHXH0y6aIVIIZKsI9DSiFGPBX nmHw==
X-Gm-Message-State: AD7BkJKsdNGOdX8hrmNUMrS8KGrB4Ek9crQXyiw84/0sCi7Gv2S41qyQf3VUMTwlXQoQsQ==
X-Received: by 10.107.158.20 with SMTP id h20mr4661693ioe.31.1457034473143; Thu, 03 Mar 2016 11:47:53 -0800 (PST)
Received: from mail-io0-f169.google.com (mail-io0-f169.google.com. [209.85.223.169]) by smtp.gmail.com with ESMTPSA id q188sm230608ioe.20.2016.03.03.11.47.50 for <mmusic@ietf.org> (version=TLSv1/SSLv3 cipher=OTHER); Thu, 03 Mar 2016 11:47:51 -0800 (PST)
Received: by mail-io0-f169.google.com with SMTP id m184so39307033iof.1 for <mmusic@ietf.org>; Thu, 03 Mar 2016 11:47:50 -0800 (PST)
MIME-Version: 1.0
X-Received: by 10.107.12.226 with SMTP id 95mr4902231iom.70.1457034470450; Thu, 03 Mar 2016 11:47:50 -0800 (PST)
Received: by 10.36.105.77 with HTTP; Thu, 3 Mar 2016 11:47:50 -0800 (PST)
In-Reply-To: <56D88BA8.3010303@alum.mit.edu>
References: <7594FB04B1934943A5C02806D1A2204B37E425AB@ESESSMB209.ericsson.se> <7594FB04B1934943A5C02806D1A2204B37E4BD38@ESESSMB209.ericsson.se> <56D463A3.8070007@alum.mit.edu> <7594FB04B1934943A5C02806D1A2204B37E4D5E9@ESESSMB209.ericsson.se> <56D4B1F1.2070706@alum.mit.edu> <7594FB04B1934943A5C02806D1A2204B37E4D951@ESESSMB209.ericsson.se> <66F2264B-3CA3-4650-88B6-89FC64D5FD29@csperkins.org> <7594FB04B1934943A5C02806D1A2204B37E4DB7C@ESESSMB209.ericsson.se> <56D4C0F5.50901@alum.mit.edu> <7594FB04B1934943A5C02806D1A2204B37E4EAD1@ESESSMB209.ericsson.se> <56D5CAA0.2060901@alum.mit.edu> <CAD5OKxtdmhW-opmp2TQou5wYbz70FdUvftr1PAZb9YiW4crevA@mail.gmail.com> <56D5E81F.2040306@alum.mit.edu> <CAD5OKxtXzhP9L-V6O5NVtCN4aQHy9X8Fpkc0_xKdWmtR03h4KQ@mail.gmail.com> <56D5EE38.2060706@alum.mit.edu> <C57049C8-BAFE-4FAB-847D-CF3640AACAE3@csperkins.org> <56D76811.6020502@alum.mit.edu> <CAD5OKxu7AaKxv=hDWzCNLhDmxpdXM1_VkiCuq2X7azShv6fCUg@mail.gmail.com> <56D88BA8.3010303@alum.mit.edu>
Date: Thu, 03 Mar 2016 14:47:50 -0500
X-Gmail-Original-Message-ID: <CAD5OKxtD4AwQ7NJxNYMrinAMEcXV2mdKg_91gCxKp9TgR--m4g@mail.gmail.com>
Message-ID: <CAD5OKxtD4AwQ7NJxNYMrinAMEcXV2mdKg_91gCxKp9TgR--m4g@mail.gmail.com>
From: Roman Shpount <roman@telurix.com>
To: Paul Kyzivat <pkyzivat@alum.mit.edu>
Content-Type: multipart/alternative; boundary="001a113f8f8e097755052d2a461a"
Archived-At: <http://mailarchive.ietf.org/arch/msg/mmusic/n7nJcP-nkI5t1mxLqhBwUNjTiS8>
Cc: "mmusic@ietf.org" <mmusic@ietf.org>
Subject: Re: [MMUSIC] Offer/Answer PT Questions - text proposal
X-BeenThere: mmusic@ietf.org
X-Mailman-Version: 2.1.15
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: Thu, 03 Mar 2016 19:47:59 -0000

On Thu, Mar 3, 2016 at 2:08 PM, Paul Kyzivat <pkyzivat@alum.mit.edu> wrote:

> On 3/2/16 5:56 PM, Roman Shpount wrote:
>
> My suggestion is to state that RTP session starts with initial O/A
>> exchange and ends when the call ends. On top of this, if end point
>> detects a PT collision on an offer, it should forget the old PT
>> assignment history, allocate new local transport and start the new RTP
>> session.
>>
>
> I see what you are trying to do. Assigning a new local transport allows
> the end point to disambiguate late packets sent prior to the O/A from those
> sent via the new O/A.
>
> But it doesn't necessarily start a new RTP session - not if the other end
> thinks it is still the old RTP session.
>
> ISTM the problem is that the notion of an RTP session seems to be an
> abstract one. The actual embodiment of it is as a database distributed
> among all the participants. I guess it is loosely synchronized. (I don't
> know enough about RTP here.)
>
> If one participant forgets all of the state for the RTP session, will it
> eventually all get filled in? If so, will it get filled in soon enough to
> properly interpret the stuff it is receiving?


This is no different then new participant joining an existing RTP session.
Joining an existing session as a result of 3pcc is the most likely cause
for this conflict and treating it as a new session is the best way to
resolve this.

In practice I want to restrict this even more:

1. If end point has the PT assignment history based on O/A session it
should honor this history when generating an offer

2. If end point receives an offer that has no conflicting PT assignments,
end point should generate an answer with PT assignments based on the O/A
session history

3. If end point receives an offer which has conflicting PT assignments
(normally as a result of 3pcc connecting this end point with another
session), end point should discard O/A PT assignment history, assign new
local transport (new local addr/port or whole new set of candidates in case
of ICE), and generate an answer as if it was an initial offer in the
session.

4. If end point receives an answer with conflicting PT assignment (normally
as a result of 3pcc sending an offer to a new end point which added PT to
the answer in a way incompatible with the O/A session history), end point
should discard O/A PT assignment history and treat the just completed O/A
exchange as an exchange that started a new session. Since PT assignment
conflict in the answer should only occur if communicating with a new end
point, sending media to this new end point using PT which was assigned to a
different codec profile in this session should not present problems.

With this we achieve backwards interop, since this end point works
according to existing RFC 3264 rules unless something else breaks these
rules. If the rules are broken, end point detects that this is a new
session and recovers.
_____________
Roman Shpount