⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rfc2733.txt

📁 中、英文RFC文档大全打包下载完全版 .
💻 TXT
📖 第 1 页 / 共 4 页
字号:
   for the stream. There is no static payload type assignment for FEC,   so dynamic payload type numbers MUST be used. The binding to the   number is indicated by an rtpmap attribute. The name used in this   binding is "parityfec".   The presence of the payload type number in the m line of the media it   is protecting does not mean the FEC is sent to the same address and   port as the media. Instead, this information is conveyed through an   fmtp attribute line. The presence of the FEC payload type on the m   line of the media serves only to indicate which stream the FEC is   protecting.   The format for the fmtp line for FEC is:   a=fmtp:<number> <port> <network type> <addresss type> <connection   address>   where 'number' is the payload type number present in the m line. Port   is the port number where the FEC is sent to. The remaining three   items - network type, address type, and connection address - have the   same syntax and semantics as the c line from SDP. This allows the   fmtp line to be partially parsed by the same parser used on the cRosenberg & Schulzrinne     Standards Track                    [Page 20]RFC 2733                      Generic FEC                  December 1999   lines. Note that since FEC cannot be hierarchically encoded, the   <number of addresses> parameter MUST NOT appear in the connection   address.   The following is an example SDP for FEC:   v=0   o=hamming 2890844526 2890842807 IN IP4 126.16.64.4   s=FEC Seminar   c=IN IP4 224.2.17.12/127   t=0 0   m=audio 49170 RTP/AVP 0 78   a=rtpmap:78 parityfec/8000   a=fmtp:78 49172 IN IP4 224.2.17.12/127   m=video 51372 RTP/AVP 31 79   a=rtpmap:79 parityfec/8000   a=fmtp:79 51372 IN IP4 224.2.17.13/127   The presence of two m lines in this SDP indicates that there are two   media streams - one audio and one video. The media format of 0   indicates that the audio uses PCM, and is protected by FEC with   payload type number 78. The FEC is sent to the same multicast group   and TTL as the audio, but on a port number two higher (49172). The   video is protected by FEC with payload type number 79. The FEC   appears on the same port as the video (51372), but on a different   multicast address.11.2 Use with Redundant Encodings   When the FEC stream is being sent as a secondary codec in the   redundant encodings format, this must be signaled through SDP. To do   this, the procedures defined in RFC 2198 are used to signal the use   of redundant encodings. The FEC payload type is indicated in the same   fashion as any other secondary codec. An rtpmap attribute MUST be   used to indicate a dynamic payload type number for the FEC packets.   The FEC MUST protect only the main codec. In this case, the fmtp   attribute for the FEC MUST NOT be present.   For example:   m=audio 12345 RTP/AVP 121 0 5 100   a=rtpmap:121 red/8000/1   a=rtpmap:100 parityfec/8000   a=fmtp:121 0/5/100Rosenberg & Schulzrinne     Standards Track                    [Page 21]RFC 2733                      Generic FEC                  December 1999   This SDP indicates that there is a single audio stream, which can   consist of PCM (media format 0) , DVI (media format 5), the redundant   encodings (indicated by media format 121, which is bound to red   through the rtpmap attribute), or FEC (media format 100, which is   bound to parityfec through the rtpmap attribute). Although the FEC   format is specified as a possible coding for this stream, the FEC   MUST NOT be sent by itself for this stream. Its presence in the m   line is required only because non-primary codecs must be listed here   according to RFC 2198. The fmtp attribute indicates that the   redundant encodings format can be used, with DVI as a secondary   coding and FEC as a tertiary encoding.11.3 Usage with RTSP   RTSP [7] can be used to request FEC packets to be sent as a separate   stream. When SDP is used with RTSP, the Session Description does not   include a connection address and port number for each stream.   Instead, RTSP uses the concept of a "Control URL". Control URLs are   used in SDP in two distinct ways.        1.   There is a single control URL for all streams. This is             referred to as "aggregate control". In this case, the fmtp             line for the FEC stream is omitted.        2.   There is a Control URL assigned to each stream. This is             referred to as "non-aggregate control". In this case, the             fmtp line specifies the Control URL for the stream of FEC             packets. The URL may be used in a SETUP command by an RTSP             client.   The format for the fmtp line for FEC with RTSP and non-aggregate   control is:   a=fmtp:<number> <control URL>   where 'number' is the payload type number present in the m line.   Control URL is the URL used to control the stream of FEC packets.   Note that the Control URL does not need to be an absolute URL. The   rules for converting a relative Control URL to an absolute URL are   given in RFC 2326, Section C.1.1.Rosenberg & Schulzrinne     Standards Track                    [Page 22]RFC 2733                      Generic FEC                  December 199912 Security Considerations   The use of FEC has implications on the usage and changing of keys for   encryption. As the FEC packets do consist of a separate stream, there   are a number of permutations on the usage of encryption. In   particular:     o The FEC stream may be encrypted, while the media stream is       not.     o The media stream may be encrypted, while the FEC stream is       not.     o The media stream and FEC stream are both encrypted, but using       different keys.     o The media stream and FEC stream are both encrypted, but using       the same key.   The first three of these would require any application level   signaling protocols to be aware of the usage of FEC, and to thus   exchange keys for it and negotiate its usage on the media and FEC   streams separately. In the final case, no such additional mechanisms   are needed. The first two cases present a layering violation, as FEC   packets should really be treated no differently than other RTP   packets. Encrypting just one may also make certain known-plaintext   attacks possible. For these reasons, applications utilizing   encryption SHOULD encrypt both streams.   However, the changing of keys becomes problematic. For example, if   two packets a and b are sent, and FEC packet f(a,b) is sent, and the   keys used for a and b are different, which key should be used to   decode f(a,b)? In general, old keys will likely need to be cached, so   that when the keys change for the media stream, the old key is kept,   and used, until it is determined that the key has changed on the FEC   packets as well.   Another issue with the use of FEC is its impact on network   congestion. Adding FEC in the face of increasing network losses is a   bad idea, as it can lead to increased congestion and eventual   congestion collapse if done on a widespread basis. As a result,   implementers MUST NOT substantially increase the amount of FEC in use   as network losses increase.Rosenberg & Schulzrinne     Standards Track                    [Page 23]RFC 2733                      Generic FEC                  December 199913 Acknowledgments   This work is based on an earlier draft on FEC, submitted by Budge and   Mackenzie in 1997. We would also like to thank Steve Casner, Mark   Handley, Orion Hodson and Colin Perkins for their comments. Thanks to   Anders Klemets who wrote the section on usage with RTSP.14 Authors' Addresses   Jonathan Rosenberg   dynamicsoft   200 Executive Drive   Suite 120   West Orange, NJ 07046   Email: jdrosen@dynamicsoft.com   Henning Schulzrinne   Columbia University   M/S 0401, 1214 Amsterdam Ave.   New York, NY 10027-7003   EMail: schulzrinne@cs.columbia.eduRosenberg & Schulzrinne     Standards Track                    [Page 24]RFC 2733                      Generic FEC                  December 199915 Bibliography   [1] J.C. Bolot and A. V. Garcia, "Control mechanisms for packet audio       in the internet," in Proceedings of the Conference on Computer       Communications (IEEE Infocom) , (San Francisco, California), Mar.       1996.   [2] Perkins, C. and O. Hodson, "Options for Repair of Streaming       media", RFC 2354, June 1998.   [3] Schulzrinne, H., Casner, S., Frederick, R. and V. Jacobson, "RTP:       A Transport Protocol for Real-Time Applications", RFC 1889,       January 1996.   [4] Bradner, S., "Key words for use in RFCs to indicate requirement       levels", BCP 14, RFC 2119, March 1997.   [5] Perkins, C., Kouvelas, I., Hodson, O., Hardman, V., Handley, M.,       Bolot, J.C., Vega-Garcia, A. and S. Fosse-Parisis, "RTP Payload       for Redundant Audio Data", RFC 2198, September 1997.   [6] Handley, M. and V. Jacobson, "SDP: Session Description Protocol",       RFC 2327, April 1998.   [7] Schulzrinne, H., Rao, A. and R. Lanphier, "Real Time Streaming       Protocol (RTSP)", RFC 2326, April 1998.Rosenberg & Schulzrinne     Standards Track                    [Page 25]RFC 2733                      Generic FEC                  December 199916.  Full Copyright Statement   Copyright (C) The Internet Society (1999).  All Rights Reserved.   This document and translations of it may be copied and furnished to   others, and derivative works that comment on or otherwise explain it   or assist in its implementation may be prepared, copied, published   and distributed, in whole or in part, without restriction of any   kind, provided that the above copyright notice and this paragraph are   included on all such copies and derivative works.  However, this   document itself may not be modified in any way, such as by removing   the copyright notice or references to the Internet Society or other   Internet organizations, except as needed for the purpose of   developing Internet standards in which case the procedures for   copyrights defined in the Internet Standards process must be   followed, or as required to translate it into languages other than   English.   The limited permissions granted above are perpetual and will not be   revoked by the Internet Society or its successors or assigns.   This document and the information contained herein is provided on an   "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING   TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING   BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION   HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF   MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.Acknowledgement   Funding for the RFC Editor function is currently provided by the   Internet Society.Rosenberg & Schulzrinne     Standards Track                    [Page 26]

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -