Internet Engineering Task Force I. Bouazizi Internet-Draft Samsung Research America Intended status: Experimental March 21, 2016 Expires: September 22, 2016 SDP Descriptors for MMTP draft-bouazizi-sdp-descriptors-mmtp-01 Abstract This document specifies the use of SDP for the description of MPEG Media Transport protocol (MMTP) sessions. It defines the parameters required to begin, join, receive data from, and/or end MMTP sessions. Status of This Memo This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet- Drafts is at http://datatracker.ietf.org/drafts/current/. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." This Internet-Draft will expire on September 22, 2016. Copyright Notice Copyright (c) 2016 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License. Bouazizi Expires September 22, 2016 [Page 1] Internet-Draft SDPMMTP March 2016 Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 2. MMTP Descriptors . . . . . . . . . . . . . . . . . . . . . . 2 2.1. MMTP Protocol Identifier . . . . . . . . . . . . . . . . 3 2.2. Object Flow Semantics . . . . . . . . . . . . . . . . . . 3 2.3. Object Flow Descriptors . . . . . . . . . . . . . . . . . 4 3. SDP Syntax Examples . . . . . . . . . . . . . . . . . . . . . 4 4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 5 4.1. Transport Protocol . . . . . . . . . . . . . . . . . . . 5 4.2. Media Formats . . . . . . . . . . . . . . . . . . . . . . 5 4.3. Attribute Names . . . . . . . . . . . . . . . . . . . . . 5 5. Security Considerations . . . . . . . . . . . . . . . . . . . 6 6. References . . . . . . . . . . . . . . . . . . . . . . . . . 6 6.1. Normative References . . . . . . . . . . . . . . . . . . 6 6.2. Informative References . . . . . . . . . . . . . . . . . 7 Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 7 1. Introduction The MMTP protocol is an application layer transport protocol that is designed to transport different types of media objects under real- time delivery constraints. In particular, MMTP provides a delivery mode that is optimized for low-delay delivery of fragmented ISOBMFF media files. The Session Description Protocol (SDP) [RFC4566]) provides a general-purpose format for describing multimedia sessions in announcements or invitations. SDP uses an entirely textual data format (the US-ASCII subset of UTF-8 [RFC3629]) to simplify authoring and increase readability. SDP only defines the syntax to describe multimedia sessions with sufficient information to enable receivers to participate in the session. SDP does not restrict the way the session description is distributed to the receivers, so that potentially any transport protocol (e.g. HTTP [RFC2616], MMTP [draftMMTP], SAP [RFC2974], SIP [RFC3261]) may be used for this purpose. This document defines a new protocol identifier for the MPEG Media Transport Protocol (MMTP) as well as other SDP attributes for describing and initiating an MMTP session. The formal ABNF syntax [RFC5234] is used for defining the syntax of the new SDP attributes. The defined SDP descriptors apply independently of whether Any Source Multicast (ASM) or Source Specific Multicast (SSM) is used to route the media. 2. MMTP Descriptors The MMTP specification [draftMMTP] describes the required and optional parameters for describing an MMTP session. This document specifies the SDP parameters for MMTP sessions that can be used for Bouazizi Expires September 22, 2016 [Page 2] Internet-Draft SDPMMTP March 2016 the discovery of MMTP sessions. The required SDP parameters for describing an MMTP session are: The destination information, consisting of the destination IP address and port number. An indication that the session is an MMTP session The version number of the MMTP protocol used in the current MMTP session The optional SDP parameters are: The start and end time of the MMTP session Bandwidth specification Description of the object flows of the MMTP session An MMTP session consists of one or more object flows, each of which is identified by a unique packet identifier. The packets that belong to the same object flow use the same packet identifier and build a sub-flow of the MMTP flow. The description of the SDP parameters is provided in the following sections. 2.1. MMTP Protocol Identifier The ABNF syntax for the "m=" line as specified by [RFC4566] is defined as follows: media-field = "m=" media SP port {"/" integer] SP proto 1*(SP fmt) CRLF proto = "MMTP/UDP" The "MMTP/UDP" protocol identifier specifies that the the session being described will use the MMTP protocol [draftMMTP] on top of a UDP connection. The "fmt" list may be used to describe the object flows that are delivered as part of the MMTP session. 2.2. Object Flow Semantics An MMTP session consists of an MMTP flow that is delivered during a designated period of time that is indicated by the session start and end time or through external means. Each MMTP sub-flow carries objects of an object flow. An object flow is composed of a set of related objects that are meant to be consumed together by the receiver. An object flow may carry objects of one of the following types: media objects that are formatted as fragmented ISOBMFF files and that are meant to be consumed sequentially. In MMT terms, MPUs Bouazizi Expires September 22, 2016 [Page 3] Internet-Draft SDPMMTP March 2016 would constitute the objects of such an object flow, which is named as Asset. the object flow consists of generic objects that are meant to be consumed simultaneously or in sequence. the object flow consists of objects that carry signaling messages that are relevant to the consumption of the MMTP flow. the object flow carries FEC repair packets. The SDP descriptors enables providing basic descriptive information about the object flow. The related SDP parameters are described in the following section. 2.3. Object Flow Descriptors This internet draft specifies a set of SDP descriptors to describe the content of an MMTP session. It uses the "fmt" to identify the relevant object flows of an MMTP session and indicate its type. In addition, a textual description of the object flow may be provided separately. The ABNF syntax of the object flow description is defined as follows: of-descriptor = "a=of:" fmt SP of-identifier SP type-indicator CRLF of-identifier = "flowid=" 1*DIGIT type-indicator = "type=" type ["/" subtype] type = "MPU" / "GF" / "Signaling" / "FEC" The flowid is set to the packet_id of the MMTP subflow that carries the objects of this object flow. The type of the object flow corresponds to one of the object flow types described in Section 2.2. The subtype field is a type specific optional field that can be used to indicate a more specific type of the object flow. As an example, a subtype "MP" of type "signaling" may be used to indicate that the object flow carries (possibly among others) the MP tables of this MMTP session. 3. SDP Syntax Examples This section gives examples of the use of SDP attributes to describe an MMTP session. Bouazizi Expires September 22, 2016 [Page 4] Internet-Draft SDPMMTP March 2016 v=0 o=user 6431641313 1 IN IP4 10.10.52.13 s=An MMTP session t=1411639200 1427277600 a=source-filter: incl IN IP4 * 10.10.52.13 m=application 12345 MMTP/UDP 100 101 102 103 104 a=of:100 flowid=0 Signaling/PA a=of:101 flowid=7623 MPU a=of:102 flowid=7624 MPU a=of:103 flowid=7625 GF a=of:104 flowid=7626 FEC Figure 1: An example SDP describing an MMTP session Section 3 shows an example SDP instance for an MMTP session. The MMTP session declares a set of 5 object flows. The first object flow, which has the packet_id 0, is the flow that carries signaling messages and in particular PA messages that describe the MMT services. Object flows with packet_id 7623 and 7624 carry media data of 2 different assets using the MPU mode. Object flow with packet_id 7625 carries generic files that are carried using the GFD mode. Finally, object flow with packet_id 7626 carries FEC repair data for one or more other object flows. The description of the FEC protected object flows is provided through the FEC signaling message. 4. IANA Considerations 4.1. Transport Protocol The "proto" sub-field of media description field ("m=") describes the transport protocol used. This document registers the following value "MMTP/UDP" as the MMTP transport protocol [draftMMTP] over UDP/IP. 4.2. Media Formats This document registers the following "fmt" values: "Signaling", "MPU", "GF", and "FEC". These values correspond to the payload type fields of MMTP. The MMTP media line may use "*" as the "fmt" value. In that case, no specific indication of the contained object flows is made. 4.3. Attribute Names This document registers the following attribute: "of" with IANA, with the following information: Bouazizi Expires September 22, 2016 [Page 5] Internet-Draft SDPMMTP March 2016 SDP Attribute ("att-field") Attribute name: of Long form: MMTP Object Flow description Type of attribute: media level Subject to charset: No Purpose: See this document Reference: This document Values: See this document Figure 2 5. Security Considerations Refer to [RFC4566] for security considerations specific to the Session Description Protocol in general. For security considerations related to the MMTP protocol, refer to [draftMMTP]. 6. References 6.1. Normative References [draftMMTP] IETF, "MPEG Media Transport Protocol (MMTP)", 2014, . [isopart12] ISO/IEC, "Information technology High efficiency coding and media delivery in heterogeneous environments Part 12: File Format", 2008, . [MMTP] ISO/IEC, "Information technology High efficiency coding and media delivery in heterogeneous environments Part 1: MPEG media transport (MMT)", 2014, . [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, March 1997, . [RFC2616] Fielding, R., Gettys, J., Mogul, J., Frystyk, H., Masinter, L., Leach, P., and T. Berners-Lee, "Hypertext Transfer Protocol -- HTTP/1.1", RFC 2616, DOI 10.17487/RFC2616, June 1999, . [RFC2629] Rose, M., "Writing I-Ds and RFCs using XML", RFC 2629, DOI 10.17487/RFC2629, June 1999, . Bouazizi Expires September 22, 2016 [Page 6] Internet-Draft SDPMMTP March 2016 [RFC2974] Handley, M., Perkins, C., and E. Whelan, "Session Announcement Protocol", RFC 2974, DOI 10.17487/RFC2974, October 2000, . [RFC3023] Murata, M., St. Laurent, S., and D. Kohn, "XML Media Types", RFC 3023, DOI 10.17487/RFC3023, January 2001, . [RFC3261] Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston, A., Peterson, J., Sparks, R., Handley, M., and E. Schooler, "SIP: Session Initiation Protocol", RFC 3261, DOI 10.17487/RFC3261, June 2002, . [RFC3629] Yergeau, F., "UTF-8, a transformation format of ISO 10646", STD 63, RFC 3629, DOI 10.17487/RFC3629, November 2003, . [RFC3986] Berners-Lee, T., Fielding, R., and L. Masinter, "Uniform Resource Identifier (URI): Generic Syntax", STD 66, RFC 3986, DOI 10.17487/RFC3986, January 2005, . [RFC4566] Handley, M., Jacobson, V., and C. Perkins, "SDP: Session Description Protocol", RFC 4566, DOI 10.17487/RFC4566, July 2006, . [RFC5234] Crocker, D., Ed. and P. Overell, "Augmented BNF for Syntax Specifications: ABNF", STD 68, RFC 5234, DOI 10.17487/RFC5234, January 2008, . 6.2. Informative References [RFC3550] Schulzrinne, H., Casner, S., Frederick, R., and V. Jacobson, "RTP: A Transport Protocol for Real-Time Applications", STD 64, RFC 3550, DOI 10.17487/RFC3550, July 2003, . [RFC4301] Kent, S. and K. Seo, "Security Architecture for the Internet Protocol", RFC 4301, DOI 10.17487/RFC4301, December 2005, . Author's Address Bouazizi Expires September 22, 2016 [Page 7] Internet-Draft SDPMMTP March 2016 Imed Bouazizi Samsung Research America Richardson, TX US Phone: +1 972 763 7023 Email: i.bouazizi@samsung.com Bouazizi Expires September 22, 2016 [Page 8]