[MMUSIC] Encapsulation and demultiplexing
worley@ariadne.com (Dale R. Worley) Tue, 26 February 2013 20:19 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 81F2021F888C for <mmusic@ietfa.amsl.com>; Tue, 26 Feb 2013 12:19:25 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.754
X-Spam-Level:
X-Spam-Status: No, score=-2.754 tagged_above=-999 required=5 tests=[AWL=0.226, BAYES_00=-2.599, RCVD_IN_DNSWL_LOW=-1, RCVD_IN_SORBS_WEB=0.619]
Received: from mail.ietf.org ([64.170.98.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id PNvDhVtykNr7 for <mmusic@ietfa.amsl.com>; Tue, 26 Feb 2013 12:19:21 -0800 (PST)
Received: from TheWorld.com (pcls5.std.com [192.74.137.145]) by ietfa.amsl.com (Postfix) with ESMTP id 578DF21F8887 for <mmusic@ietf.org>; Tue, 26 Feb 2013 12:19:20 -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 r1QKIItf024146 for <mmusic@ietf.org>; Tue, 26 Feb 2013 15:18:20 -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 r1QKII8I2686484 for <mmusic@ietf.org>; Tue, 26 Feb 2013 15:18:18 -0500 (EST)
Received: (from worley@localhost) by shell01.TheWorld.com (8.13.6/8.13.6/Submit) id r1QKIFLP2658818; Tue, 26 Feb 2013 15:18:15 -0500 (EST)
Date: Tue, 26 Feb 2013 15:18:15 -0500
Message-Id: <201302262018.r1QKIFLP2658818@shell01.TheWorld.com>
From: worley@ariadne.com
Sender: worley@ariadne.com
To: mmusic@ietf.org
Subject: [MMUSIC] Encapsulation and demultiplexing
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, 26 Feb 2013 20:19:25 -0000
It turns out the demultiplexing STUN, RTP/RTCP/SRTP/SRTCP, SCTP, and DTLS (presumably encapsulating SCTP) is straightforward, as long as we ensure that SCTP (outside of DTLS) uses a restricted range of port numbers. There are two versions of encapsulation now on the table: The KUMQUAT encapsulation (draft-worley-sdp-bundle) adds four octets to the beginning of an RTP packet to make it into a new RTP packet. The new packet has a chosen PT to identify the encapsulation, and uses the 2-octet "sequence" field of the first word of the RTP header to carry the indexes of the constituent media description and of the transport flow (in case the MD has multiple transport flows). It's not clear that there is a need to have an encapsulation carefully reproduce the structure of an RTP packet. Indeed, the encapsulation doesn't need to be very careful to make packets that look like RTP packets: The fixed header of an RTP packet is only three 4-octet words, and the second and third words are 32-bit binary numbers, so KUMQUAT would be just as effective if it merely prepended a 4-octet word that resembled the first word of an RTP header. Using this simplified KUMQUAT encapsulation, encapsulation of SCTP is straightforward: Just prepend the KUMQUAT header word. If RTP is being encapsulated with KUMQUAT, there is no reason not to encapsulate SCTP or SCTP-over-DTLS with it also. Encapsulation allows demultiplexing without requiring distinct SCTP port numbers between media descriptions, and the octet savings of not encapsulating SCTP is small (given the relative size of the RTP). The SHIM encapsulation (draft-westerlund-avtcore-transport-multiplexing) uses a two-octet prefix containing a 14-bit "session ID". Each SDP media description has an attribute to specify the session IDs to be used to encapsulate RTP and the RTCP for that media description. The remaining two bits of the two-octet prefix are fixed as "10", presumably so the first octet values have the same range as those of RTP/RTCPv2. Although the draft does not say so, an SCTP packet stream can be a constituent session of a SHIM encapsulation in the same way as an RTP packet stream. One requirement question that should be examined is whether, if encapsulation is done, there is any value in making the encapsulated packet look like a RTP packet, or whether there is any benefit to preserving four-octet alignment of RTP fields. The major advantage of an encapsulated solution over an unencapsulated solution is that an encapsulated solution does not require the constituent media descriptions to have disjoint sets of payload types (or SCTP port numbers). Since previous uses of SDP have no interaction between the payload types of different media descriptions, existing entities may have difficulty coordinating payload types between media descriptions. E.g., if the entity is assembling its media streams from several sources, and thus assembling its SDP from several constituent SDPs, the disjointness restriction may require the entity to recode the payload type numbers of constituent transport flows in order to multiplex them. Dale
- [MMUSIC] Encapsulation and demultiplexing Dale R. Worley