[MMUSIC] How to offer a constituent media description
worley@ariadne.com (Dale R. Worley) Thu, 07 March 2013 22:37 UTC
Return-Path: <worley@shell01.TheWorld.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 7D40721F8C7C for <mmusic@ietfa.amsl.com>; Thu, 7 Mar 2013 14:37:10 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.906
X-Spam-Level:
X-Spam-Status: No, score=-2.906 tagged_above=-999 required=5 tests=[AWL=0.074, BAYES_00=-2.599, RCVD_IN_DNSWL_LOW=-1, RCVD_IN_SORBS_WEB=0.619]
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 HnbXI+NCJ0-u for <mmusic@ietfa.amsl.com>; Thu, 7 Mar 2013 14:37:09 -0800 (PST)
Received: from TheWorld.com (pcls6.std.com [192.74.137.146]) by ietfa.amsl.com (Postfix) with ESMTP id 73E6721F8A6E for <mmusic@ietf.org>; Thu, 7 Mar 2013 14:37:09 -0800 (PST)
Received: from shell.TheWorld.com (svani@shell01.theworld.com [192.74.137.71]) by TheWorld.com (8.14.5/8.14.5) with ESMTP id r27MaMYN025731 for <mmusic@ietf.org>; Thu, 7 Mar 2013 17:36:24 -0500
Received: from shell01.TheWorld.com (localhost.theworld.com [127.0.0.1]) by shell.TheWorld.com (8.13.6/8.12.8) with ESMTP id r27MaLA03269656 for <mmusic@ietf.org>; Thu, 7 Mar 2013 17:36:22 -0500 (EST)
Received: (from worley@localhost) by shell01.TheWorld.com (8.13.6/8.13.6/Submit) id r27MaLdw3250567; Thu, 7 Mar 2013 17:36:21 -0500 (EST)
Date: Thu, 07 Mar 2013 17:36:21 -0500
Message-Id: <201303072236.r27MaLdw3250567@shell01.TheWorld.com>
From: worley@ariadne.com
Sender: worley@ariadne.com
To: mmusic@ietf.org
Subject: [MMUSIC] How to offer a constituent media description
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: Thu, 07 Mar 2013 22:37:10 -0000
There are a lot of fussy details about how to offer a constituent media description. I've counted six different methods so far. I've written up an analysis of the pros and cons of the various methods. The least troublesome methods (IMHO) are to offer a real address and unique, non-zero port, with the offerer's choice of whether or not to provide TURN candidates. (Offering TURN candidates requires preallocating TURN relays for the constituents which will not be needed if the answerer supports bundling; not offering TURN candidates requires an SDP update to communicate with a non-supporting answerer.) Following is the text version of the comparison. The HTML version is accessible at https://svn.resiprocate.org/rep/ietf-drafts/worley/draft-worley-sdp-bundle-04a.html#rfc.section.7.10 (You can also use the http: form of that URL, but for some reason, the response won't be tagged as text/html.) Dale 7.10. How the Constituent MDs Are Offered There are a number of alternative ways that the offerer can configure the constituent media descriptions. +------------+------+--------+--------+---------+---------+---------+ | Method | 1 | 2 | 3 | 4 | 5 | 6 | +------------+------+--------+--------+---------+---------+---------+ | Offered | null | null | real | real | real | real | | address | | | | | | | | | | | | | | | | Offered | zero | non- | zero | non- | non- | non- | | port | | zero | | zero, | zero, | zero, | | | | | | unique | unique | shared | | | | | | | | | | TURN candi | no | no | no | no | yes | yes | | dates? | | | | | | | | | | | | | | | | Supporting | yes | yes | yes | yes | yes | yes | | answerer | | | | | | | | accepts? | | | | | | | | | | | | | | | | Update | no | no | possib | yes | yes | no | | needed for | | | ly | | | | | supporting | | | | | | | | answerer? | | | | | | | | | | | | | | | | Non- | no | probab | no | yes | yes | yes | | supporting | | ly | | | | | | answerer | | | | | | | | accepts? | | | | | | | | | | | | | | | | Update | yes | yes | yes | yes | no | no | | needed for | | | | | | | | non- | | | | | | | | supporting | | | | | | | | answerer? | | | | | | | | | | | | | | | | Disadvanta | ACE | CD | ABCE | BC | BG | BFG | | ges | | | | | | | +------------+------+--------+--------+---------+---------+---------+ Offered address This is the address offered for the MD. There are two choices, a null address (0.0.0.0 for IPv4 or "invalid." for IPv6 or mixed IPv4/IPv6) or a real address of the offerer. Offered port This is the port that is offered. It can be either non-zero or zero (which indicates a stream that is not being offered). If the offered port is non-zero and the offered address is real, the port can be either unique, or shared with the other media descriptions in the bundle. TURN candidates? If the offered address is real, are TURN candidates for the address provided (if they are needed)? Supporting answerer accepts? If the answerer supports bundling, does it accept this media description? We assume the answer is Yes, so that acceptance of the constituent media descriptions can be signaled to the offerer. Update needed for supporting answerer? Is an SDP update needed to complete session setup if the answerer supports bundling? If an update is needed, it is needed to inform intermediaries that there will be no media sent based on the connection information in this media description; the update is not needed to establish communications and does not delay the application. Non-supporting answerer accepts? If the answerer does not support bundling, does it accept this media description (without a further update)? Update needed for non-supporting answerer? Is an SDP update needed to complete session setup if the answerer does not support bundling? If an update is needed, in all cases, it is needed to establish communication. Flaws The disadvantages of each alternative: A Media descriptions that are rejected (have zero ports) are not allowed to be members of a group (in the offer).[RFC5888] B An SDP update is needed for a supporting answerer to prevent intermediaries from timing out the multimedia session. C An SDP update is needed for a non-supporting answerer to establish communications. D Although a media description with a non-zero port but a null address is formally offered (although shown as on-hold via the old method), it is possible that the answerer will not consider it to be offered and many not accept it even if it otherwise wood. E If the offered port is zero, the media description is not formally offered and the answerer should not accept it. F SDP offers with multiple media descriptions that use the same port number (for the same real address) may be rejected by intermediaries. G A TURN relay must be allocated for the constituent media description before the offer is sent. In my estimation, the worst disadvantages are A (zero port in offer), E (acceptance of offer with zero port), and F (duplicate port numbers), because they involve violations of [RFC4566] or are known to trigger limitations of large numbers of intermediate devices. Disadvantage D (offering a MD with a null address) is nearly as severe, as we expect it to cause undesired behavior in many non- supporting answerers. Disadvantages C (update needed to communicate with non-supporting answerer) and G (TURN relay must be preallocated) are moderate, and disadvantage B (updated needed to prevent intermediaries from timing out) is the least severe (because it never delays the establishment of communication). Applying these priorities to the possible solutions, methods 4 and 5 (offer real address, non-zero unique port, with/without TURN candidates) are tied for the best choices, with the choice made based on the relative importance of minimizing preallocation of TURN relays compared to quickly establishing communication with non-supporting answerers.
- [MMUSIC] How to offer a constituent media descrip… Dale R. Worley