Re: [MMUSIC] [rtcweb] Unified Plan for SDP Handling - Glare

Christer Holmberg <christer.holmberg@ericsson.com> Sat, 20 July 2013 09:51 UTC

Return-Path: <christer.holmberg@ericsson.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 65F3A21E8085 for <mmusic@ietfa.amsl.com>; Sat, 20 Jul 2013 02:51:31 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.172
X-Spam-Level:
X-Spam-Status: No, score=-5.172 tagged_above=-999 required=5 tests=[AWL=0.476, BAYES_00=-2.599, HELO_EQ_SE=0.35, HTML_MESSAGE=0.001, J_CHICKENPOX_56=0.6, RCVD_IN_DNSWL_MED=-4]
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 pnOIzdX-Kd9e for <mmusic@ietfa.amsl.com>; Sat, 20 Jul 2013 02:51:25 -0700 (PDT)
Received: from mailgw7.ericsson.se (mailgw7.ericsson.se [193.180.251.48]) by ietfa.amsl.com (Postfix) with ESMTP id 6040321E804D for <mmusic@ietf.org>; Sat, 20 Jul 2013 02:51:24 -0700 (PDT)
X-AuditID: c1b4fb30-b7ef76d000004bbc-56-51ea5d99232a
Received: from ESESSHC011.ericsson.se (Unknown_Domain [153.88.253.125]) by mailgw7.ericsson.se (Symantec Mail Security) with SMTP id 2A.99.19388.99D5AE15; Sat, 20 Jul 2013 11:51:21 +0200 (CEST)
Received: from ESESSMB209.ericsson.se ([169.254.9.45]) by ESESSHC011.ericsson.se ([153.88.183.51]) with mapi id 14.02.0328.009; Sat, 20 Jul 2013 11:51:21 +0200
From: Christer Holmberg <christer.holmberg@ericsson.com>
To: Adam Roach <adam@nostrum.com>, Paul Kyzivat <pkyzivat@alum.mit.edu>
Thread-Topic: [MMUSIC] [rtcweb] Unified Plan for SDP Handling - Glare
Thread-Index: Ac6FLNZDJiUB1pFYSza6h1JrrPeg6w==
Date: Sat, 20 Jul 2013 09:51:20 +0000
Message-ID: <7594FB04B1934943A5C02806D1A2204B1C3D918D@ESESSMB209.ericsson.se>
Accept-Language: en-US
Content-Language: fi-FI
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [153.88.183.148]
Content-Type: multipart/alternative; boundary="_000_7594FB04B1934943A5C02806D1A2204B1C3D918DESESSMB209erics_"
MIME-Version: 1.0
X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFrrKLMWRmVeSWpSXmKPExsUyM+Jvre7M2FeBBo9WKljs+buI3WLq8scs Fis2HGB1YPb4+/4Dk8eSJT+ZPGbtfMISwBzFZZOSmpNZllqkb5fAlbF1YTtbwdJuxopLL94z NjBOquhi5OSQEDCR+N3QzwJhi0lcuLeerYuRi0NI4DCjxLU9rewQzmJGiRt7pgJlODjYBCwk uv9pgzSICLhLnHpwmRkkzCygLnF1cRBIWFjAReLahQXMECWuEh9W/2GFsPUk5s/4xQJSziKg KvHvDw9ImFfAV2L5+S3sIDYj0AnfT61hArGZBcQlPhy8zgxxmoDEkj3noWxRiZeP/7FC2EoS jUuesELU50v0XF/EBDFTUOLkzCcsExiFZyEZNQtJ2SwkZRBxPYkbU6ewQdjaEssWvoaq15WY 8e8QC7L4Akb2VYzsuYmZOenl5psYgVFzcMtvgx2Mm+6LHWKU5mBREufdrHcmUEggPbEkNTs1 tSC1KL6oNCe1+BAjEwenVAOjuvTE9Qs6dyxYuv3rm/zgJsbitLtr1I5mxT50YOy07O4onWIo PT/5n4HL+vZjT2SmyS16HHO1UWHhvvUvE6cZHz3vJe3yJWtr2M0dfedtl0tUzz4RYrLqEOu1 1omsfy/HH28p+Rkcesnu59Zujvkl90T/GfCLbdn613NyZ9e6HfeOvvo8bcpfKSWW4oxEQy3m ouJEABwQkqxoAgAA
Cc: "mmusic@ietf.org" <mmusic@ietf.org>
Subject: Re: [MMUSIC] [rtcweb] Unified Plan for SDP Handling - Glare
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: Sat, 20 Jul 2013 09:51:31 -0000

Hi,

I do realize that the draft does not represent the complete glare solution.

Paul has raised some issues/questions, and I also have some. I'll leave the SDP low-level ones for now, and only raise a few high-level ones.

Q1: How essential part of the unified plan is having *A* working "partial o/a" solution? TECHNICALLY, the other parts of the unified plan do not depend on having a "partial o/a" solution, but I would like to know whether people (specially the draft authors) would be willing to move ahead with unified plan even if we would not manage to specify a working "partial o/a" solution.

Q2a: When sending a partial offer, the draft says that only the m= line explicitly signaled is affected. Note, however, that you will still signal information (e.g. the SDP version value, the group:BUNDLE attribute etc) which affect the whole SDP, and if you have multiple outstanding partial offers (for different m= lines) that can cause issues.

Q2b: In addition, when using BUNDLE, modifying an m= line might implicitly modify other m= lines, and there are rules (also indicated in the draft) mandating identical SDP attribute values etc. So, if you have multiple outstanding partial offers, you may end up with all kind of different "BUNDLE collisions".

Q3: If I send a partial offer, for a given m= line, can the answer only contain that given m= line? What if the partial offer causes other m= lines to be modified?


Regards,

Christer





Lähettäjä: mmusic-bounces@ietf.org [mailto:mmusic-bounces@ietf.org] Puolesta Adam Roach
Lähetetty: 17. heinäkuuta 2013 20:08
Vastaanottaja: Paul Kyzivat
Kopio: mmusic@ietf.org
Aihe: Re: [MMUSIC] [rtcweb] Unified Plan for SDP Handling

On 7/17/13 11:38, Paul Kyzivat wrote:
Adam,

While I see there can be some value to extending O/A to allow for smaller critical sections, I fear that it is going to be very messy to get "right". Some messy things:

- Glare between a partial O/A and a full O/A

...is glare. Resolve as normal. For SIP, that means timers.


- Is a partial O/A permitted in a sip reINVITE? Can you have
  an offerless reINVITE where the response contains a partial offer?
  Or can these only be done in UPDATE?

No, no, and no. In SIP, the protocol machinery would not allow INVITE or UPDATE to complete concurrently in opposite directions for any amount of overlap. We aren't proposing a change to SIP state machines here, only to the offer/answer model. This necessarily means that we need to carry partial offers and partial answers in something else -- probably INFO.


- In SIP, processing of concurrent reINVITEs/UPDATEs containing
  partial SDP updates. This seems to already be a

You left this unfinished, but I *think* it was going to make the same point I did in my response above.


- How to assign version numbers to the full SDP as a result
  of partial updates

Section 3.4.1: "... the SDP version is incremented by one..."



- I'm not sure your algorithm for resolving glare when adding
  streams works in all cases. (More below on this.)

These (and ones I haven't thought of) *may* all be resolvable. But this certainly complicates the already complex O/A process - maybe to the point that many get it wrong. (I don't want to write rfc6337bis!)

My concern with the glare resolution algorithm is that for it to work both sides must realize that glare occurred. And I think there are common sequences when one side won't realize it.

I'm not saying I didn't miss it, but I did work through as many permutations as I could think of, and none of them are left out by the algorithm described in section 3.4.1.

That said, I did my analysis in the context of WebRTC, and assumed a reliable, in-order delivery channel for messages. I recognize that we don't have that for SIP, and that messages in the same direction can be reordered. I admit that this does raise some interesting scenarios that may require additional work to resolve.


I'm reluctant to buy into a scheme that depends on this without knowing it it will be implementable.

I understand your reluctance, and don't want to gloss over it. This is but one plank in the overall plan, and it represents what we think is the best (but not only) solution to this specific requirement. If the issues prove intractable, we could fall back to an alternate scheme, such as the designated-offerer I describe in draft-roach-rtcweb-glareless-add-00, or the token-passing scheme described by Ted Hardie (cf. http://www.ietf.org/mail-archive/web/rtcweb/current/msg07361.html).

/a