RFC3550_RTP协议中文版

阅读: 评论:0

RFC3550 RTP 中文
RFC 3550 - RTP: A Transport Protocol for Real-Time Applications
RFC3550
摘要
本文描述RTP(real-time transport protocol),实时传输协议。RTP在多点传送(多播)或单点传送(单播)的网络服务上,提供端对端的网络传输功能,适合应用程序传输实时数据,如:音频,视频或者仿真数据。RTP没有为实时服务提供资源预留的功能,也不能保证QoS(服务质量)。数据传输功能由一个控制协议(RTCP)来扩展,通过扩展,可以用一种方式对数据传输进行监测控制,该协议(RTCP)可以升级到大型的多点传送(多播)网络,并提供最小限度的控制和鉴别功能。RTP和RTCP被设计成和下面的传输层和网络层无关。协议支持RTP标准的转换器和混合器的使用。
本文的大多数内容和旧版的RFC1889相同。在线路里传输的数据包格式没有改变,唯一的改变是使用协议的规则和控制算法。为了最小化传输,发送RTCP数据包时超过了设定的速率,而在这时,很多的参与者同时加入了一个会话,在这样的情况下,一个新加入到(用于计算的可升级的)计时器算法中的元
素是最大的改变。
目录(Table of Contents)
1.  引言(Introduction)
1 1  术语(Terminology)
2 RTP使用场景(RTP Use Scenarios)
2 1  简单多播音频会议(Simple Multicast Audio Conference)
微拟球藻2 2  音频和视频会议(Audio and Video Conference)
2 3  混频器和转换器(Mixers and Translators)
2 4  分层编码(Layered Encodings)
3 定义(Definitions)
4 字节序,校正和时间格式(Byte Order, Alignment, and Time Format)
5 RTP数据传输协议(RTP Data Transfer Protocol)
5 1  RTP固定头域(RTP Fixed Header Fields)
5 2  多路复用RTP会话(Multiplexing RTP Sessions)
5 3  RTP头的配置文件详细变更(Profile-Specific Modifications to the RTP Header)
5 3 1  RTP报头扩展(RTP Header Extension)
6 RTP控制协议(RTP Control Protocol)-- RTCP
6 1  RTCP包格式(RTCP Packet Format)
6 2  RTCP传输间隔(RTCP Transmission Interval)
6 2 1  维护会话成员数目(Maintaining the number of session members)
6 3  RTCP包的发送与接收规则(RTCP Packet Send and Receive Rules)
6 3 1  计算RTCP传输间隔(Computing the RTCP Transmission Interval)
6 3 2  初始化(Initialization)
6 3 3  接收RTP或RTCP(非BYE)包(Receiving an RTP or Non-BYE RTCP Packet)
6 3 4  接收RTCP(BYE)包(Receiving an RTCP BYE Packet)
6 3 5  SSRC计时失效(Timing Out an SSRC)
6 3 6  关于传输计时器的到期(Expiration of Transmission Timer)
6 3
7  传输一个BYE 包(Transmitting a BYE Packet)
6 3 8  更新we_sent(Updating we_sent)
6 3 9  分配源描述带宽(Allocation of Source Description Bandwidth)
6 4  发送方和接收方报告(Sender and Receiver Reports)
6 4 1  SR:发送方报告的RTCP包(SR: Sender report RTCP packet)
6 4 2  RR:接收方报告的RTCP包(RR: Receiver Report RTCP Packet)
6 4 3  扩展发送方和接收方报告(Extending the Sender and Receiver Reports )
6 4 4  分析发送方和接收方报告(Analyzing Sender and Receiver Reports )
6 5  SDES:源描述RTCP包(SDES: Source description RTCP packet)
6 5 1  CNAME:规范终端标识符的SDES数据项(CNAME: Canonical End-Point Identifier SDES Item)
6 5 2  NAME:用户名的SDES数据项(NAME: User name SDES item)
6 5 3  EMAIL:地址的SDES数据项(EMAIL: Electronic Mail Address SDES Item)
6 5 4  PHONE:电话号码的SDES数据项(PHONE: Phone Number SDES Item)
6 5 5  LOC:地理用户地址的SDES数据项(LOC: Geographic User Location SDES Item)
6 5 6  TOOL:应用程序或工具名字的SDES数据项(TOOL: Application or Tool Name SDES Item)
6 5
7  NOTE:通知/状态的SDES数据项(NOTE: Notice/Status SDES Item)
6 5 8  PRIV:私有扩展的SDES数据项(PRIV: Private Extensions SDES Item)
6 6  BYE:Goodbye RTCP包(BYE: Goodbye RTCP packet)
6 7  APP:定义应用程序的RTCP包(APP: Application-Defined RTCP Packet)
7 RTP转换器和混频器(RTP Translators and Mixers)
黑刚玉磨料7 1  概述(General Description )
7 2  在转换器中的RTCP数据处理(RTCP Processing in Translators)
7 3  在混频器中的RTCP数据处理(RTCP Processing in Mixers )
7 4  级联混频器(Cascaded Mixers)
8 SSRC标识符的分配和使用(SSRC Identifier Allocation and Use)
8 1  冲突概率(Probability of Collision )
8 2  冲突解决和循环检测(Collision Resolution and Loop Detection)
8 3  在分层编码中使用(Use with Layered Encodings)
9 安全(Security )
9 1  机密性(Confidentiality)
改锥头9 2  身份验证和消息完整性(Authentication and Message Integrity)
10  拥塞控制(Congestion Control)
11  网络和传输协议之上的RTP(RTP over Network and Transport Protocols)
12  协议常量摘要(Summary of Protocol Constants)
12 1 RTCP 包类型(RTCP Packet Types)
12 2 SDES 类型(SDES Types)
13  RTP概况和负载格式详细说明
(RTP Profiles and Payload Format Specifications)
14  安全考虑(Security Considerations)
15  IANA考虑(IANA Considerations)
16  知识产权声明(Intellectual Property Rights Statement)
17  鸣谢(Acknowledgments)
附录A    算法(Algorithms)
附录A 1  RTP数据头有效性检查(RTP Data Header Validity Checks )
附录A 2  RTCP数据头有效性检查(RTCP Header Validity Checks)
附录A 3  确定RTP包预期数目和丢失数目(Determining Number of Packets Expected and Lost)
定时药盒
附录A 4  生成SDES RTCP包(Generating RTCP SDES Packets)
附录A 5  解析RTCP SDES包(Parsing RTCP SDES Packets)
附录A 6  生成32位随机标识符(Generating a Random 32-bit Identifier
附录A 7  计算RTCP传输间隔(Computing the RTCP Transmission Interval)
附录A 8  估测两次到达间隔的抖动(Estimating the Interarrival Jitter)
附录B 与RFC1889不同之外(Changes from RFC 1889)
参考书目(References)
标准化引用(Normative References )
资料性引用(Informative References)
作者地址
完整的版权声明
声波驱散器1.绪论
本文详细的介绍实时传输协议RTP,RTP提供带有实时特性的端对端数据传输服务,传输的数据如:
交互式的音频和视频。那些服务包括有效载荷类型定义,序列号,时间戳和传输监测控制。应用程序在UDP上运行RTP来使用它的多路技术和checksum服务。2种协议都提供传输协议的部分功能。不过,RTP可能被其他适当的下层网络和传输协议使用(见11节)。如果下层网络支持,RTP支持数据使用多播分发机制转发到多个目的地。
注意RTP本身没有提供任何的机制来确保实时的传输或其他的服务质量保证,而是由低层的服务来完成。它不保证传输或防止乱序传输,它不假定下层网络是否可靠,是否按顺序传送数据包。RTP包含的序列号允许接受方重构发送方的数据包顺序,但序列号也用来确定一个数据包的正确位置,例如,在视频解码的时候不用按顺序的对数据包进行解码。
但是RTP原先的设计是用来满足多参与者的多媒体会议的需要,它没有限定于专门的应用。连续数据的储存,交互分布式仿真,动态标记,以及控制和测量应用程序也可能会适合使用RTP。该文档定义RTP,由2个密切联系的部分组成:
○实时传输协议RTP,用于实时传输数据。
○RTP控制协议RTCP,用于监控服务质量和传达关于在一个正在进行的会议中的参与者的信息。后者对―宽松控制‖的会议可能已经足够,但是并没有必要去支持一个应用程序所有的通讯控制条件。这个功能可能充分的或者部分的被一个单独的会议控制协议所包含,这超过了本文档的范围。
RTP表现了协议的一种新的类型,该类型由Clark和Tennenhouse提出[10],遵循应用级(framing)框架和(integrated layer processing)统一层处理的原则。就是说,RTP被规定为可扩展的,用来提供一个专门的应用程序需要的信息,并将会经常性的被归并到应用程序
的处理中,而不是作为一个单独的层被实现。RTP只是一个故意不完成的协议框架。本文档详细说明那些功能,希望这些功能能够普遍贯穿于所有适合使用RTP的应用程序。和常规的协议不同,额外的功能可能通过完善协议本身或者增加一个可能需要分析的选项机制来增加,RTP
被规定为可以根据需要通过修改和/或增加操作,―剪裁‖到报头。具体的例子见5.3和6.4.3节。
因此,除了本文档,用于专门应用程序的RTP完整的说明将还需要一个或者更多的同类文档(见13节):
○一个框架(大致轮廓)的说明文档,该文档定义了一系列的有效载荷类型编码和它们与有效载荷格式之间的映射(例如,媒体编码)。一个框架可能也定义了应用程序对RTP的一些扩展和修改,详细到一个专门的类。典型的情况,一个应用程序将在一个框架下运行。一个用于音频和视频数据的框架可以在同类RFC3551[1]文档里到。
○有效载荷格式说明文档,该文档定义了一个像一个音频或者视频编码的特殊载荷,在RTP 里是如何被传输的。
一个关于实时服务和算法如何实现的讨论和关于一些RTP设计结果的后台讨论能够在[11]中到。
1.1术语
在这个文档里的关键词―一定要‖,―一定不能‖,―必需的‖,―会‖,―不会‖,―应该‖,―不应该‖,―推荐‖,―可能‖和―可选‖ 将会像在BCP 14(Basic Control Program,基本控制程序),RFC2119[2]里描述一样的解释。并指出适合RTP实现的需要的级别。
2.  RTP使用场景(RTP Use Scenarios)
2.1  简单多播音频会议(Simple Multicast Audio Conference)
2.2  音频和视频会议(Audio and Video Conference)钢碗
2.3  混频器和转换器(Mixers and Translators)
2.4  分层编码(Layered Encodings)
以下章节描述了用到RTP的一些方面。所举例子用来说明RTP应用的基本操作,但RTP 的用途不限于此。在这些例子中,RTP运行于IP和UDP之上,并且遵循RFC3551所描述的音频和视频的配置文件中的约定。
2.1 简单多播音频会议(Simple Multicast Audio Conference)
IETF的一个工作组开会讨论最新协议草案时,使用Internet的IP多播服务来进行语音通讯。工作组中心分配到一个多播的组地址和一对端口。一个端口用于音频数据,另一个端口用于控制(RTCP)数据包。该地址和端口信息发布给预定的参与者。如果有私密性要求,则可用章节9.1中说明的方法,对数据和控制包进行加密,这时就需要生成和发布加密密钥。分配和发布机制的精确细节不在RTP的讨论范围之内。
每个与会者所使用的音频会议应用程序,都以小块形式(比方说持续20秒时间)来发送音频数据。每个音频数据块都前导RTP报头;RTP报头和数据依次包含在UDP包里。RTP报头指明了各个包里音频编码的类型(如PCM,ADPCM,LPC),这样发送方可以在会议过程中改变编码方式,以适应状况的变化,例如,要加进一个低带宽接入的参与者,或是要应付网络拥塞。
Internet,像其他的报文分组网络一样,偶而会丢失和重排包,造成时长不等的延迟。为弥补这个不足,RTP报头里包含计时信息和一个序列号,允许接收方重建来自源的计时信息,比如前文例子中音频块以20s的间隔在扬声器中连续播放。会议中,对每个RTP包的源,单独地实施计时重建。序列号还被接收方用来评估丢失包数目。
由于会议期间不断有工作组成员加入或离开,因此有必要知道任一时刻的实际参与者及他们接收音频
数据的状况好坏。出于这个目的,会议中每个音频应用程序的实例,都在RTCP(控制)端口上周期性地多播一个附加用户名的接收报告。接收报告指明了当前说话者被收听到的状况,

本文发布于:2023-05-22 04:24:33,感谢您对本站的认可!

本文链接:https://patent.en369.cn/patent/4/108972.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:传输   协议   应用程序
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 369专利查询检索平台 豫ICP备2021025688号-20 网站地图