RTP协议分析
RTP协议全解(H264码流和PS流)-2015-4-22
RTP协议全解(H264码流和PS流)写在前面:RTP的解析,网上找了很多资料,但是都不全,所以我力图整理出一个比较全面的解析,其中借鉴了很多文章,我都列在了文章最后,在此表示感谢。
互联网的发展离不开大家的无私奉献,我决定从我做起,希望大家支持。
原创不易,转载请附上链接,谢谢/chen495810242/article/details/392073051、RTP Header解析图11) V:RTP协议的版本号,占2位,当前协议版本号为22) P:填充标志,占1位,如果P=1,则在该报文的尾部填充一个或多个额外的八位组,它们不是有效载荷的一部分。
3) X:扩展标志,占1位,如果X=1,则在RTP报头后跟有一个扩展报头4) CC:CSRC计数器,占4位,指示CSRC 标识符的个数5) M: 标记,占1位,不同的有效载荷有不同的含义,对于视频,标记一帧的结束;对于音频,标记会话的开始。
6) PT: 有效荷载类型,占7位,用于说明RTP报文中有效载荷的类型,如GSM音频、JPEM图像等,在流媒体中大部分是用来区分音频流和视频流的,这样便于客户端进行解析。
7) 序列号:占16位,用于标识发送者所发送的RTP报文的序列号,每发送一个报文,序列号增1。
这个字段当下层的承载协议用UDP的时候,网络状况不好的时候可以用来检查丢包。
同时出现网络抖动的情况可以用来对数据进行重新排序,序列号的初始值是随机的,同时音频包和视频包的sequence是分别记数的。
8) 时戳(Timestamp):占32位,必须使用90 kHz 时钟频率。
时戳反映了该RTP报文的第一个八位组的采样时刻。
接收者使用时戳来计算延迟和延迟抖动,并进行同步控制。
9) 同步信源(SSRC)标识符:占32位,用于标识同步信源。
该标识符是随机选择的,参加同一视频会议的两个同步信源不能有相同的SSRC。
10) 特约信源(CSRC)标识符:每个CSRC标识符占32位,可以有0~15个。
实时传输协议——RTP协议详细介绍
实时传输协议——RTP协议详细介绍随着以太网音视频桥接(AVB)技术的引入,汽车可支持各种基于音频、视频的流媒体服务。
在流媒体数据传输过程中,为保障音视频流的实时传输,需采用RTP和RTCP协议。
接下来,我们一起来了解下实时传输协议吧!1、什么是RTP?RTP定义:Real-time Transport Protocol,是由IETF的多媒体传输工作小组于1996年在RFC 1889中公布的。
RTP为IP 上的语音、图像等需要实时传输的多媒体数据提供端对端的传输服务,但本身无法保证服务质量(QoS),因此,需要配合实时传输控制协议(RTCP)一起使用。
RTCP定义:Real-time Transport Control Protocol,监控服务质量并传送会话参与者信息,服务器可利用RTCP数据包信息改变传输速率、负载数据类型。
2、RTP相关概念介绍流媒体:使用流式传输技术的连续时基媒体。
使用流式传输可以边下载边播放,无需等待音频或视频数据信息全部下载完成后再播放。
混频器(Mixer):一种中间系统,将一个或多个源的RTP数据包合成一个新的RTP数据包,然后转发出去。
混频器可能会改变数据包的数据格式,并对各个流组合的新数据包生成一个新SSRC。
转换器(Translator):一种中间系统,转发RTP数据包但不改变数据包的同步源标识符,可用于通过IP多播无法直接到达的用户区,如在防火墙两端使用转换器,外侧转换器通过安全连接将数据传输到内侧转换器。
RTP利用混频器和转换器完成实时数据传输,混频器接收来自一个或多个发送方的RTP数据包,并把它们组合成一个新的RTP 数据包继续转发。
这个组合数据包使用新的SSRC标识,组合数据包将作为新的发送方加入到RTP传输中。
混频器将不同的媒体流组合在一起,需要通过转换器来对单个媒体流进行操作,可进行编码转换或协议翻译。
典型的RTP数据包传输流程如下图所示,其中S1、S2、S3、S4是数据源的发送端,R4是RTP 数据包的接收端。
RTP协议分析
RTP协议分析协议名称:实时传输协议(RTP)分析协议一、背景介绍实时传输协议(RTP)是一种用于在互联网上传输音频、视频和其他实时数据的协议。
它是由IETF(互联网工程任务组)制定的,并且被广泛应用于音视频通信、流媒体和实时数据传输领域。
本协议旨在对RTP协议进行分析,以便更好地理解其工作原理、性能特点和应用场景。
二、协议分析1. 协议定义RTP协议定义了一种标准的数据包格式,用于在互联网上传输实时数据。
它包括头部和有效载荷两部分。
头部包含了一些必要的信息,如版本号、序列号、时间戳等,用于数据包的重组和同步。
有效载荷部分则用于携带实际的音视频数据。
2. 协议特点RTP协议具有以下特点:- 实时性:RTP协议被设计用于传输实时数据,如音频和视频。
它采用UDP协议作为传输层协议,以提供较低的延迟和更好的实时性能。
- 可扩展性:RTP协议支持扩展头部,可以根据具体的应用需求添加自定义的扩展字段。
这使得RTP协议适用于各种不同的应用场景。
- 容错性:RTP协议支持重传和抗丢包机制,以提高数据传输的可靠性。
同时,它还支持前向纠错技术,可以在一定程度上修复数据包的丢失和损坏。
3. 协议应用RTP协议广泛应用于以下领域:- 音视频通信:RTP协议被用于实现音频和视频的实时传输,如VoIP(网络电话)、视频会议等。
- 流媒体:RTP协议是流媒体传输的基础,通过将音视频数据打包成RTP数据包进行传输,实现了高效的流媒体传输。
- 实时数据传输:RTP协议也可以用于传输其他实时数据,如传感器数据、实时游戏数据等。
4. 协议性能分析为了评估RTP协议的性能,可以从以下几个方面进行分析:- 延迟:RTP协议采用UDP传输,相比于TCP,具有较低的传输延迟。
但是,由于网络的不确定性,RTP协议仍然可能面临一定的延迟问题。
可以通过测量数据包的传输时间来评估延迟性能。
- 丢包率:RTP协议支持重传和抗丢包机制,但是在网络条件较差的情况下,仍然可能发生数据包丢失的情况。
RTP协议解析实时传输协议的通信流程
RTP协议解析实时传输协议的通信流程实时传输协议(Real-time Transport Protocol,简称RTP)是用于在计算机网络上传输音视频数据的一种网络传输协议。
通过对RTP协议的解析,可以更好地理解实时传输协议的通信流程。
本文将详细介绍RTP协议的通信流程,以帮助读者对其有更深入的了解。
一、RTP协议概述RTP协议是一种面向数据包的协议,用于在IP网络上实现实时音视频的传输。
它通过应用层协议和传输层协议,实现音视频数据的有效传输。
RTP协议具有相对较小的延迟和抖动,适用于对实时性要求较高的音视频传输场景。
二、RTP协议的通信流程1. 发送端准备数据在RTP协议的通信流程中,发送端首先需要准备需要传输的音视频数据。
该数据可以是声音、图像或视频等实时数据。
2. 封装RTP数据包发送端将准备好的数据进行RTP封装,将实时数据封装成RTP数据包。
RTP数据包包含了数据的负载(payload)和头部信息(header)。
头部信息中包括了与数据相关的信息,比如序列号、时间戳、同步信令等。
3. 选择传输协议发送端需要选择合适的传输协议来传输RTP数据包。
常用的传输协议包括用户数据报协议(UDP)和传输控制协议(TCP)。
UDP传输速度快,适合实时传输;而TCP具有可靠性,适合保证数据的可靠性传输。
4. 数据传输发送端将封装好的RTP数据包通过选择的传输协议发送到目的地。
在传输过程中,可能会经过多个路由器和网络节点。
5. 接收端接收数据接收端通过相应的传输协议接收到RTP数据包,并将其进行解析。
6. 解析RTP数据包接收端解析RTP数据包,提取出负载数据和头部信息。
头部信息中的序列号和时间戳可以用于实现数据的重构和同步。
7. 播放音视频接收端根据解析出的数据和头部信息对音视频进行播放或渲染。
通过解析RTP数据包和播放处理,接收端可以实现音视频的同步和实时性。
三、RTP协议的应用场景RTP协议在实时音视频传输领域具有广泛的应用。
网络协议知识:SIP协议和RTP协议的应用场景和优缺点
网络协议知识:SIP协议和RTP协议的应用场景和优缺点SIP协议和RTP协议是互联网电话和视频会议系统的两个基本协议。
本文将介绍它们的应用场景和优缺点。
一、SIP协议SIP(Session Initiation Protocol)是一种基于文本的控制协议,它被广泛用于实时通信和多媒体会话的控制。
它是目前最流行的互联网电话协议之一,能够实现信令传递、设备发现、媒体协商和会话维护等功能。
SIP协议的应用场景包括:1.语音通信:用户可以通过SIP协议在互联网上进行语音通话,无需使用传统的电话线路。
2.视频会议:SIP协议允许多个用户在互联网上进行视频会议,用户可以使用不同的设备和应用程序进行参与。
3.多媒体消息:使用SIP协议可以实现多媒体消息的传递,包括语音留言、传真等。
SIP协议的优点包括:1.灵活性:SIP协议可以使用不同的编解码器,支持各种语音和视频格式,使得用户可以选择适合自己的设备和应用程序。
2.应用广泛:SIP协议不仅可以用于互联网电话系统,还可以用于实时通信、视频会议、多媒体协作等场景。
3.开放性:SIP协议是公开的标准,用户可以开发自定义应用程序,扩展功能和自定义管理。
SIP协议的缺点包括:1.安全性问题:SIP协议存在安全性问题,例如SIP消息被篡改、假冒、重放攻击等。
2. NAT穿透:SIP协议需要实现NAT穿透,以支持用户在局域网或私有地址空间中创建通信会话。
3.需要额外的设备和软件:SIP协议需要额外的服务器和客户端软件,使得系统的复杂性增加。
二、RTP协议RTP(Real-time Transport Protocol)是一种实时传输协议,它被广泛应用于音视频通信系统中。
它通过UDP传输数据,提供实时性的传输服务。
RTP协议的应用场景包括:1.实时视频:RTP协议被广泛应用于实时视频系统中,例如监控、视频会议、视频直播等。
2.实时音频:RTP协议可以用于实时音频系统,例如互联网电话、网络广播和语音会议等。
RTP协议分析
RTP协议分析协议名称:RTP协议分析一、背景介绍RTP(Real-time Transport Protocol)是一种用于实时传输音视频数据的协议。
它被广泛应用于互联网电话、视频会议、流媒体等领域。
RTP协议的设计目标是提供实时传输的低延迟、高带宽利用率和可扩展性。
二、协议目标RTP协议的主要目标是提供以下功能:1. 实时传输:RTP协议能够将音视频数据以实时方式传输,保证传输的即时性。
2. 数据分包:RTP协议将音视频数据分成多个小包进行传输,以便在传输过程中能够更好地应对丢包和网络拥塞等问题。
3. 时序和时间戳:RTP协议通过序列号和时间戳来维护音视频数据的时序关系,确保接收端能够正确还原音视频数据。
4. 流同步:RTP协议通过同步源标识符(SSRC)来实现多个媒体流的同步播放。
5. 媒体传输:RTP协议支持传输多种媒体数据,包括音频、视频和其他自定义数据。
三、协议结构RTP协议的结构如下:1. RTP头部:RTP头部包含协议版本、填充位、扩展位、CSRC计数器、标记位、有效载荷类型、序列号、时间戳和同步源标识符等字段。
2. RTP有效载荷:RTP有效载荷是实际的音视频数据,可以是压缩或非压缩格式。
3. RTP扩展头部:RTP扩展头部是可选的,用于传输额外的信息。
四、协议流程RTP协议的传输流程如下:1. 发送端将音视频数据分包,并在每个包的RTP头部填充相应的字段,如序列号、时间戳和同步源标识符等。
2. 发送端通过网络将RTP包发送给接收端。
3. 接收端根据RTP头部的信息,对接收到的数据进行解析和处理。
4. 接收端根据序列号和时间戳等信息,还原音视频数据,并进行播放或处理。
五、协议优点RTP协议具有以下优点:1. 低延迟:RTP协议通过数据分包和实时传输等机制,能够实现低延迟的音视频传输。
2. 高带宽利用率:RTP协议通过将音视频数据分成小包进行传输,能够更好地利用网络带宽。
3. 可扩展性:RTP协议支持多种媒体数据的传输,并可以通过扩展头部传输额外的信息,具有良好的可扩展性。
RTP的原理及应用
RTP的原理及应用一、什么是RTPRTP(Real-time Transport Protocol)是一种用于在互联网上传输实时数据的协议。
它提供了一种标准化的方式来传输音频、视频和其他实时数据,以实现实时的交互性和连续性。
RTP通常用于音视频通信、流媒体传输和视频会议等应用场景。
二、RTP的原理RTP的原理基于对实时数据的分组和封装,以便在网络上进行传输。
下面是RTP的工作原理:1.数据分段:RTP将实时数据流分割为较小的数据段,称为RTP数据包。
每个RTP数据包包含一个头部和有效载荷。
2.标识和序列化:RTP为每个数据包分配一个唯一的标识符和一个序列号,以便接收端可以正确重组数据流。
序列号用于按顺序重组数据包。
3.时间戳:RTP在每个数据包上添加一个时间戳,以便接收端可以按正确的时间顺序播放数据。
4.数据头部:RTP数据包的头部包含了一些重要的信息,如有效载荷的类型(音频、视频等)、数据包的序列号、时间戳等。
5.封装和传输:RTP数据包使用UDP作为传输协议进行发送,UDP相比TCP具有更低的延迟,但也不保证数据包的到达顺序或可靠性。
三、RTP的应用RTP被广泛应用于实时音视频通信、流媒体传输和视频会议等场景。
下面是RTP的一些典型应用:1.音视频通信:RTP在音视频通信中扮演着重要的角色,如VoIP(Voice over IP)和视频电话通信。
RTP通过将音频和视频数据分割为小的数据包,并添加时间戳等元数据,实现了实时的音视频传输和同步播放。
2.流媒体传输:RTP也被广泛用于流媒体传输领域,如直播和点播。
通过将音视频数据分割为RTP数据包,可以有效地传输和播放媒体内容。
3.视频会议:RTP被广泛应用于视频会议系统中,实现多方参与的实时视频传输和音频协同。
RTP的分组和封装机制使得视频会议参与者能够实时接收和播放其他人的音视频数据。
4.视频监控:RTP可用于视频监控系统,传输和播放实时的监控视频数据。
SIP与RTP协议在VoIP通信中的信令与媒体传输分析
SIP与RTP协议在VoIP通信中的信令与媒体传输分析随着科技的不断发展,语音通信方式已经发生了翻天覆地的变化。
传统的电话网络正在被VoIP(Voice over Internet Protocol)通信所取代。
VoIP利用互联网传输语音数据,使得通信更加便捷高效。
在VoIP通信中,SIP(Session Initiation Protocol)和RTP(Real-time Transport Protocol)协议扮演着关键的角色。
本文将对SIP与RTP协议在VoIP通信中的信令与媒体传输进行分析。
1. SIP协议的信令分析SIP协议是一种建立、维护和终止多媒体会话的信令协议。
它使用电子信箱式的通信方式,类似于HTTP协议。
SIP协议主要负责处理呼叫的建立、保持和终止过程。
在VoIP通信中,SIP协议承担着信令传输的任务。
SIP协议的信令包含了一系列的消息,如INVITE、ACK、BYE等。
通信双方通过发送这些消息进行会话的建立和终止。
SIP消息中包含了呼叫相关的信息,如呼叫发起方和接收方的地址、媒体类型等。
通过分析SIP协议的信令消息,可以了解呼叫的流程和参数。
2. RTP协议的媒体传输分析RTP协议是一种传输实时数据的协议,如音频和视频。
RTP负责将数据分割成小的数据包,并在网络上传输。
在VoIP通信中,RTP协议用于传输语音数据。
RTP协议将语音数据划分成小的数据块,并为每个数据块添加了序列号和时间戳等信息。
这些信息可以保证数据在传输过程中的顺序和时序的准确性。
RTP还提供了丢失包检测和恢复机制,确保语音数据的可靠传输。
通过对RTP协议数据包的分析,可以了解语音数据在传输过程中的质量情况,如延迟、抖动等。
这对于优化语音通信的质量非常重要。
3. SIP与RTP协议的配合SIP和RTP协议在VoIP通信中密切配合,共同完成语音通信的建立、传输和终止。
首先,SIP协议负责呼叫的建立过程。
当一个通信请求发起时,SIP协议负责发送INVITE消息到目标终端。
RTP协议剖析
RTP协议背景及概述
RTP全名:Real-time Transport Protocol(实时传输协 议)。它是IETF提出的一个标准,对应的RFC文档为 RFC3550。
RFC3550定义了RTP,也定义了配套的实时传输控制协 议RTCP(Real-time Transport Control Protocol)。
流式传输分为两种
顺序流式传输 (Progressive Streaming) 实时流式传输 (Real time Streaming)
实时流式传输是实时传送,特别适合现场事件。“实时”是指在一
个应用中数据的交付必须与数据的产生保持精确的时间关系,这 需要相应的协议支持,这样RTP和RTCP就相应的出现了。
客户端都支持缺省的加密算法 ,RTCP包头随机附加前缀加以迷惑, CBC模式具有随机接入功能,实现加密的同时还能保证丢失的包不 被他自己或下一个包解密。
组播技术构建的网络,允许路由器一次将数 据包复制到多个通道上。采用组播方式,媒体服 务器只需要发送一个信息包,所有发出请求的客 户端即可同时收到连续数据流而无延时。
组播吸收了单播和广播两种发送方式的长处, 克服了上述两种发送方式的弱点。
RTP协议应用方案——组播(2)
优点:减少网络上传输的信息包的总量;网络利 用效率大大提高,成本大为下降。 缺点:当不同的用户同时点播同一个节目时,由 于点播总有先后顺序,后点播的用户依照网络中 同时点播此节目的其它用户的播放进度,这就造 成当前用户极有可能从节目的中间开始看起,很难 做到个性化。
时间戳(3)
因此,i和源j之间的相对时差可以表示为:
(RTP_tsi – tsi)-( RTP_tsj - tsj) = (NTPi –NTP'i) (NTPj—NTP'j) 由于NTP同步,差值可以反映出两个源的相对时差。因为 要同步不同来源的媒体流,必须使得同步他们的绝对时间 基准,而NTP时间戳正是这样的绝对时间基准。 应用RTP时间戳来保证同一来源的媒体流同步。
RTP协议分析和详解
RTP协议分析和详解⼀、RTP协议分析第1章. RTP概述1.1. RTP是什么RTP全名是Real-time Transport Protocol(实时传输协议)。
它是IETF提出的⼀个标准,对应的RFC⽂档为RFC3550(RFC1889为其过期版本)。
RFC3550不仅定义了RTP,⽽且定义了配套的相关协议RTCP(Real-time Transport Control Protocol,即实时传输控制协议)。
RTP⽤来为IP⽹上的语⾳、图像、传真等多种需要实时传输的多媒体数据提供端到端的实时传输服务。
RTP为Internet上端到端的实时传输提供时间信息和流同步,但并不保证服务质量,服务质量由RTCP来提供。
1.2. RTP的应⽤环境RTP⽤于在单播或多播⽹络中传送实时数据。
它们典型的应⽤场合有如下⼏个。
简单的多播⾳频会议。
语⾳通信通过⼀个多播地址和⼀对端⼝来实现。
⼀个⽤于⾳频数据(RTP),另⼀个⽤于控制包(RTCP)。
⾳频和视频会议。
如果在⼀次会议中同时使⽤了⾳频和视频会议,这两种媒体将分别在不同的RTP会话中传送,每⼀个会话使⽤不同的传输地址(IP地址+端⼝)。
如果⼀个⽤户同时使⽤了两个会话,则每个会话对应的RTCP包都使⽤规范化名字CNAME(Canonical Name)。
与会者可以根据RTCP包中的CNAME来获取相关联的⾳频和视频,然后根据RTCP包中的计时信息(Network time protocol)来实现⾳频和视频的同步。
翻译器和混合器。
翻译器和混合器都是RTP级的中继系统。
翻译器⽤在通过IP多播不能直接到达的⽤户区,例如发送者和接收者之间存在防⽕墙。
当与会者能接收的⾳频编码格式不⼀样,⽐如有⼀个与会者通过⼀条低速链路接⼊到⾼速会议,这时就要使⽤混合器。
在进⼊⾳频数据格式需要变化的⽹络前,混合器将来⾃⼀个源或多个源的⾳频包进⾏重构,并把重构后的多个⾳频合并,采⽤另⼀种⾳频编码进⾏编码后,再转发这个新的RTP包。
RTP协议分析
RTP协议分析协议名称:实时传输协议(RTP)分析协议1. 引言本协议旨在对实时传输协议(RTP)进行分析,以便了解其工作原理、特点和应用场景。
本协议详细介绍了RTP协议的定义、数据包格式、传输机制以及相关应用。
2. 定义实时传输协议(RTP)是一种用于实时传输音频和视频数据的协议。
它提供了一种标准化的方式,使得多媒体数据能够通过网络进行传输,并保证数据的实时性和准确性。
3. 数据包格式RTP协议使用数据包进行数据传输。
每个RTP数据包由两部分组成:头部和有效载荷。
头部包含了一系列的字段,用于描述数据包的相关信息,如序列号、时间戳、负载类型等。
有效载荷部分则包含了实际的音频或视频数据。
4. 传输机制RTP协议使用UDP协议进行数据传输。
UDP是一种无连接的传输协议,它提供了一种简单的、不可靠的数据传输方式。
RTP协议通过UDP传输数据,同时使用RTCP(实时传输控制协议)进行数据包的控制和反馈。
5. RTP会话RTP协议使用会话标识符(SSRC)来标识不同的RTP会话。
每个RTP会话都有一个唯一的SSRC,用于区分不同的数据流。
在一个RTP会话中,可以包含多个RTP流,每个RTP流都有自己的SSRC。
6. 应用场景RTP协议广泛应用于音视频通信领域。
例如,在网络电话和视频会议系统中,RTP协议被用于实时传输音频和视频数据。
此外,RTP协议还被用于流媒体传输、视频监控和实时游戏等领域。
7. RTP扩展RTP协议支持扩展头部,用于在RTP数据包中传输额外的信息。
扩展头部可以包含自定义的字段,用于传输应用特定的数据。
RTP扩展头部的使用可以根据具体的应用需求进行定制。
8. RTP安全性RTP协议本身不提供数据加密和身份验证功能。
为了保护数据的安全性,可以使用SRTP(安全实时传输协议)对RTP数据进行加密和身份验证。
SRTP使用对称加密算法和数字签名算法来保护RTP数据的机密性和完整性。
9. 总结RTP协议是一种用于实时传输音频和视频数据的协议。
RTP协议分析
RTP协议分析RTP的主要特点如下:1.实时传输:RTP被广泛应用于实时通信领域,如语音通话、视频会议、直播等。
它通过UDP协议传输数据,相比于TCP协议,UDP具有低延迟、无拥塞控制等特性,适合实时传输。
2.序列号和时间戳:RTP在每个数据包中添加了序列号和时间戳,用于保证数据包的有序接收和实时播放。
序列号用于重新排序接收到的数据包,时间戳用于计算数据包的播放时间。
3.负载类型:RTP支持多种不同的负载类型,如音频、视频、图像等。
每种负载类型都有对应的编解码器,用于将媒体数据压缩和解压缩。
RTP在报文头中的负载类型字段指示接收端如何处理数据。
4.扩展头部:RTP可以通过扩展头部传输额外的信息,如源地址、数据类型、音视频参数等。
这些扩展头部信息有助于接收端对数据进行正确解码和渲染。
RTP的工作流程如下:1.建立会话:发送方和接收方需要先建立一个RTP会话,包括IP地址、端口号等信息。
发送方将媒体数据和相关信息封装成RTP数据包,并通过UDP协议发送给接收方。
2.封装数据包:发送方使用RTP协议将媒体数据进行封装,包括添加序列号、时间戳、负载类型等信息。
然后将封装后的RTP数据包发送给接收方。
3.接收数据包:接收方通过UDP接收RTP数据包,并根据序列号和时间戳对数据包进行排序和组装。
接收方解析RTP头部信息,提取负载数据并进行解码。
4.解码和播放:接收方使用相应的解码器对接收到的负载数据进行解码,并将解码后的数据交给播放器进行播放。
总结:RTP协议是一种用于实时传输音频和视频数据的协议。
它基于UDP协议传输数据,提供了时间戳、序列号、负载类型等扩展信息,保证数据的实时传输和顺序播放。
RTP适用于实时通信领域,通过序列号和时间戳保证数据的有序接收和实时播放。
它支持多种负载类型,并可以通过扩展头部传输额外的信息,如源地址、数据类型等。
RTP协议实时传输协议的音视频通信机制
RTP协议实时传输协议的音视频通信机制RTP(Real-time Transport Protocol)是实时传输协议,用于音视频通信中的数据传输。
它提供了一种标准化的方式,使得音视频数据可以在网络上进行传输和同步。
本文将详细介绍RTP协议的音视频通信机制。
一、RTP协议概述RTP协议是IETF(Internet Engineering Task Force)制定的一种应用层协议,用于实时传输音频和视频等数据。
它定义了一套传输和同步音视频数据的机制,使得接收方可以按照发送方的时序顺序恢复出完整的音视频内容。
二、RTP报文结构RTP报文由固定头部和有效载荷组成。
头部包含了标识数据类型、时间戳、序列号等信息,而有效载荷则是音视频数据的实际内容。
RTP 报文的结构如下所示:(这里根据实际情况插入图示)三、RTP传输流程RTP协议的传输流程包括发送端和接收端两个环节。
发送端将音视频数据打包成RTP报文,然后通过UDP协议进行传输。
接收端则根据报文头部中的时间戳和序列号信息进行解包和同步,最终将音视频内容展示给用户。
四、实时性保障机制RTP协议主要通过以下几个机制来保障音视频数据的实时性:1. 时间戳:RTP报文头部包含了时间戳信息,用于指示音视频数据的播放时间。
接收端可以根据时间戳信息对音视频进行同步,以保证播放的实时性。
2. 序列号:RTP报文头部的序列号字段可以用于检测丢包情况。
接收端可以根据序列号判断是否有报文未到达,如果有,可以通过重传机制进行数据的重新获取。
3. 延迟控制:延迟是音视频通信中不可避免的问题,RTP协议可以通过一些手段对延迟进行控制。
例如,可以使用RTCP(RTP Control Protocol)来监测网络状况,及时调整视频的码率以适应带宽的变化,从而减少延迟。
五、RTP与RTCP的配合RTP协议通常与RTCP协议搭配使用。
RTCP是RTP的控制协议,用于传输音视频会话的控制信息。
rtp 协议
rtp 协议实时传输协议(RTP)是一种用于实时传输音频和视频数据的协议。
它既可以单独使用,也可以与其他协议(如RTSP)一起使用。
RTP的设计目标是提供一种低延迟、鲁棒性强的传输机制,以便实时应用程序(例如视频会议、流媒体)能够在网络中传输和接收音频和视频数据。
RTP使用UDP作为底层传输协议,这是因为UDP相比于TCP更适合实时数据传输。
UDP无连接、不可靠的特性使得RTP能够快速传递数据,并且不需要建立和维护复杂的连接。
RTP协议主要由两部分组成:RTP头和有效载荷。
RTP头包含了一些元数据信息,例如时间戳、序列号和负载类型。
时间戳用于同步媒体数据的播放,序列号用于保证数据的可靠传输。
负载类型指示了有效载荷的编码格式(例如PCM、MPEG)。
有效载荷部分是实际的音频或视频数据。
RTP协议本身并不负责对有效载荷进行编码或压缩,这是应用程序的责任。
RTP协议只负责将有效载荷封装在UDP数据包中,并添加一些元数据信息。
RTP协议还支持一些扩展功能,例如支持多路复用、混流和重传。
通过多路复用,可以在一个RTP流中传输多个音频或视频通道。
混流允许将多个RTP流合并成一个流,这对于实时会议和直播非常有用。
重传功能通过发送端发送冗余数据来提高数据传输的可靠性。
在RTP协议的传输过程中,需要注意一些问题。
首先是丢包问题,由于UDP的不可靠性,可能会导致数据包的丢失。
为了解决这个问题,可以使用前向纠错或重传机制。
其次是时延问题,由于RTP头的添加,会增加数据包的大小,导致延迟增加。
为了减少延迟,可以使用压缩和流水线技术。
总的来说,RTP协议是一种适用于实时传输音频和视频数据的协议。
它提供了一种低延迟、鲁棒性强的传输机制,能够满足实时应用程序对数据传输的需求。
但是,由于UDP的不可靠性,还需要在实际应用中采取一些措施来解决丢包和时延问题。
UDP-RTP协议解析
UDP-RTP协议解析UDP-RTP协议解析一、前言UDP-RTP协议是一种音视频流传输协议,被广泛应用于IP网络中。
在现代的通信网络中,多媒体数据的传输速率越来越高,并且多数的视频和音频都需要实现实时传输和播放,这个过程需要多方面的技术支持和协议配合,其中UDP-RTP协议就起到了重要的作用。
本文就为大家详细介绍UDP-RTP协议的原理和实现方法。
二、UDP-RTP协议基本介绍1.UDP协议简介UDP是用户数据报协议,它是传输层协议之一,与TCP协议相对应。
UDP协议的最大特点就是它是一种无连接协议,也就是发送端和接收端之间实现的是点对点的数据传输。
它不保证数据的可靠传输,这也是UDP协议的优点之一,因为UDP协议也就无需建立像TCP那样的连接和保持状态信息,所以在传输数据时也更加的简单快捷。
UDP协议主要应用于多媒体数据、DNS协议等等方面。
2.RTP协议简介RTP是实时传输协议,是在UDP协议的基础上发展而来的。
RTP协议主要用于在网络上传输音频和视频数据。
通过RTP协议,可以把音频、视频数据以流的形式传输,实现一种实时的、连续的、交互的数据传输。
RTP协议提供了时间戳、序列号等信息,用于保证数据的可靠性和正确性。
3.UDP-RTP协议的组成UDP-RTP协议是一种组合协议,也就是UDP协议和RTP协议共同组成的。
在网络上传输音视频数据时,主要采用UDP-RTP协议,其中UDP协议是位于传输层,而RTP协议是实现对音视频数据传输的重要协议之一。
三、UDP-RTP协议的基本原理1.UDP-RTP协议的通信原理UDP-RTP协议的通信原理比较简单,主要是指通过UDP协议的数据报,将音视频数据传输给接收端,并且实现多方面的数据交互和传输。
其具体流程如下:1)发送端将音视频数据压缩或编码,并将其封装为RTP 数据包,然后通过UDP协议将其发送出去。
2)接收端接收到UDP数据包,并将其解析成RTP数据包,然后根据RTP数据包中的信息,对音视频数据进行解码或解压缩,得到原始的音视频数据。
RTP协议分析
RTP协议分析协议名称:RTP协议分析一、介绍RTP(Real-time Transport Protocol)是一种用于实时传输音频和视频数据的协议。
它提供了一种标准化的方式,用于在网络中传输实时数据,以保证数据的实时性和可靠性。
本文将对RTP协议的结构、功能和特点进行详细分析。
二、协议结构RTP协议的结构包括头部和有效载荷两部分。
1. 头部(Header)RTP头部由12个字节组成,包含以下字段:- 版本(Version):占2位,用于指示RTP协议的版本号。
- 填充位(Padding):占1位,用于指示是否在RTP包的末尾添加填充字节。
- 扩展位(Extension):占1位,用于指示是否存在RTP头部扩展。
- CSRC计数器(CSRC Count):占4位,用于指示CSRC标识符的数量。
- 标记位(Marker):占1位,用于指示RTP包的重要性。
- 负载类型(Payload Type):占7位,用于指示有效载荷的类型。
- 序列号(Sequence Number):占16位,用于标识RTP包的顺序。
- 时间戳(Timestamp):占32位,用于指示RTP包的时间戳。
- 同步源(Synchronization Source):占32位,用于标识RTP流的同步源。
- CSRC列表(CSRC List):每个CSRC标识符占32位,用于标识参与混合的源。
2. 有效载荷(Payload)RTP协议的有效载荷部分用于传输音频和视频数据。
具体的有效载荷格式由负载类型字段决定,可以是原始音频/视频数据、压缩后的音频/视频数据或其他数据。
三、功能和特点RTP协议具有以下功能和特点:1. 实时传输RTP协议被设计用于传输实时数据,如音频和视频。
它通过提供时间戳和序列号字段,保证接收端可以按照正确的顺序和时间戳重构数据。
2. 流同步RTP协议使用同步源字段来标识RTP流的同步源。
这样,接收端可以根据同步源标识符对多个RTP流进行同步,确保音频和视频的同步播放。
RTP协议分析
RTP协议分析协议名称:RTP协议分析一、引言RTP(Real-time Transport Protocol)是一种用于在互联网上传输音频和视频数据的协议。
本协议旨在对RTP协议进行详细分析,包括其定义、特点、数据格式、协议栈结构、传输机制等方面的内容。
二、定义RTP协议是一种面向实时通信的传输协议,用于在IP网络上传输音频和视频数据。
它提供了时间戳和序列号等机制,以确保数据的实时性和顺序性。
三、特点1. 实时性:RTP协议被设计用于实时通信场景,具有低延迟和高实时性的特点。
2. 可扩展性:RTP协议支持多种编码格式和媒体类型,可以适应不同的应用需求。
3. 容错性:RTP协议可以通过重传和纠错等机制提高数据传输的可靠性。
4. 网络友好:RTP协议通过动态调整数据传输速率和质量,适应不同网络环境下的传输需求。
四、数据格式RTP协议定义了数据包的格式,包括头部和有效载荷两部分。
1. 头部:RTP头部包含了版本号、标志位、序列号、时间戳等字段,用于标识和管理传输的数据包。
2. 有效载荷:有效载荷部分存储了实际的音频或视频数据。
五、协议栈结构RTP协议在协议栈中位于传输层和应用层之间,与RTCP(Real-time Transport Control Protocol)协议一起组成RTP/RTCP协议栈。
1. 传输层:RTP协议使用UDP协议进行数据传输,保证了实时性和低延迟。
2. RTP协议:RTP协议负责音频和视频数据的传输和管理。
3. RTCP协议:RTCP协议用于传输控制信息,包括发送者和接收者的统计数据、网络质量反馈等。
六、传输机制RTP协议使用UDP协议进行数据传输,具有以下传输机制:1. 建立连接:RTP协议在传输前需要建立连接,通过握手过程协商传输参数,如端口号、编码格式等。
2. 数据传输:RTP协议将音频和视频数据按照一定的格式封装成数据包,并通过UDP协议进行传输。
3. 时序管理:RTP协议使用时间戳和序列号等机制,保证数据的实时性和顺序性。
rtp协议
rtp协议实时传输协议(Real-time Transport Protocol,简称RTP)是一种用于实时音视频传输的协议。
RTP协议主要用于音视频会议、流媒体传输、音视频直播等场景,能够提供实时传输、时延控制、容错机制等功能。
RTP协议是基于用户数据报协议(UDP)的,在IP协议上进行封装传输。
它利用UDP的无连接特性,不需要建立和维护复杂的连接状态,能够实现高效、实时的音视频传输。
同时,RTP协议还能够通过设置传输头部的各种参数,实现时延控制、报文顺序保证、容错恢复等功能。
RTP协议的数据包由固定长度的头部和变长的负载数据组成。
头部包含了多个字段,用于描述数据包的重要信息,如序列号、时间戳、负载类型等。
序列号用于保证数据包的顺序,时间戳用于实现时延控制和同步,负载类型指明了负载数据的类型,如音频、视频等。
RTP协议还支持扩展头部,用于传输额外的信息或控制命令。
扩展头部可以根据具体需求来定制,提供了较大的灵活性。
例如,可以通过扩展头部传输音频或视频的码率、分辨率等信息,以及一些定制的控制命令,如请求重传、帧丢弃等。
在传输过程中,RTP协议可以选择使用传输控制协议(TCP)或用户数据报协议(UDP)。
使用TCP可以确保数据的可靠传输,但带来较大的时延。
而使用UDP能够提供较低的时延,但可能会导致数据包的丢失或乱序。
因此,在选择传输协议时,需要根据具体应用场景的要求来进行权衡。
除了传输数据之外,RTP协议还需要与其他协议配合使用,来完成完整的音视频传输过程。
例如,在实时通信中,通常会使用会话发起协议(Session Initiation Protocol,简称SIP)来实现会话的建立和管理。
在流媒体传输中,可能还需要使用流媒体控制协议(Real-time Streaming Protocol,简称RTSP)来控制媒体资源的播放和暂停等操作。
总的来说,RTP协议是一种用于实时音视频传输的协议,能够提供实时传输、时延控制、容错机制等功能。
RTP协议详解-无水印版
RTP协议分析一.RTP协议背景 (2)二.RTP协议原理及工作机制 (3)2.1 RTP协议原理 (4)2.1.1 RTP协议原理 (4)2.1.2 RTCP协议原理 (4)2.2 RTP数据包格式 (5)2.2.1 RTP数据包格式 (5)2.2.2 RTCP数据包格式 (8)2.3 RTP工作机制 (12)2.3.1 RTP工作机制 (12)2.3.2 RTCP工作机制 (12)三.RTP协议关键技术指标 (13)3.1 时间戳 (13)3.2时延 (14)3.3 抖动 (15)3.4丢包率 (15)3.5 会话和流两级分用 (16)3.6 多种流同步控制 (16)四.RTP协议应用方案 (17)4.1 RTP协议应用方案之单播 (17)4.2 RTP协议应用方案之广播 (17)4.3 RTP协议应用方案之组播 (17)4.3.1 RTP协议组播方案总体概述 (18)4.3.2 RTP协议组播方案服务器端实现 (19)4.3. 3RTP协议组播方案客户端实现 (20)4.3. 4RTP协议视频帧率和质量调整策略 (21)五.RTP协议移植计划 (22)六.RTP协议安全方面考虑 (22)一.RTP协议背景流(Streaming)是近年在Internet上出现的新概念,其定义非常广泛,主要是指通过网络传输多媒体数据的技术总称。
流媒体包含广义和狭义两种内涵:广义上的流媒体指的是使音频和视频形成稳定和连续的传输流和回放流的一系列技术、方法和协议的总称,即流媒体技术;狭义上的流媒体是相对于传统的下载-回放方式而言的,指的是一种从Internet上获取音频和视频等多媒体数据的新方法,它能够支持多媒体数据流的实时传输和实时播放。
通过运用流媒体技术,服务器能够向客户机发送稳定和连续的多媒体数据流,客户机在接收数据的同时以一个稳定的速率回放,而不用等数据全部下载完之后再进行回放。
流式传输有顺序流式传输(Progressive Streaming)和实时流式传输(Realtime Streaming)两种方式。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
RTP协议分析第1章. RTP概述1.1. RTP是什么RTP全名是Real-time Transport Protocol(实时传输协议)。
它是IETF提出的一个标准,对应的RFC文档为RFC3550(RFC1889为其过期版本)。
RFC3550不仅定义了RTP,而且定义了配套的相关协议RTCP(Real-time Transport Control Protocol,即实时传输控制协议)。
RTP用来为IP网上的语音、图像、传真等多种需要实时传输的多媒体数据提供端到端的实时传输服务。
RTP为Internet上端到端的实时传输提供时间信息和流同步,但并不保证服务质量,服务质量由RTCP来提供。
1.2. RTP的应用环境RTP用于在单播或多播网络中传送实时数据。
它们典型的应用场合有如下几个。
简单的多播音频会议。
语音通信通过一个多播地址和一对端口来实现。
一个用于音频数据(RTP),另一个用于控制包(RTCP)。
音频和视频会议。
如果在一次会议中同时使用了音频和视频会议,这两种媒体将分别在不同的RTP会话中传送,每一个会话使用不同的传输地址(IP地址+端口)。
如果一个用户同时使用了两个会话,则每个会话对应的RTCP包都使用规范化名字CNAME(Canonical Name)。
与会者可以根据RTCP包中的CNAME来获取相关联的音频和视频,然后根据RTCP 包中的计时信息(Network time protocol)来实现音频和视频的同步。
翻译器和混合器。
翻译器和混合器都是RTP级的中继系统。
翻译器用在通过IP多播不能直接到达的用户区,例如发送者和接收者之间存在防火墙。
当与会者能接收的音频编码格式不一样,比如有一个与会者通过一条低速链路接入到高速会议,这时就要使用混合器。
在进入音频数据格式需要变化的网络前,混合器将来自一个源或多个源的音频包进行重构,并把重构后的多个音频合并,采用另一种音频编码进行编码后,再转发这个新的RTP包。
从一个混合器出来的所有数据包要用混合器作为它们的同步源(SSRC,见RTP的封装)来识别,可以通过贡献源列表(CSRC表,见RTP的封装)可以确认谈话者。
1.3. 相关概念1.3.1. 流媒体流媒体是指Internet上使用流式传输技术的连续时基媒体。
当前在Internet上传输音频和视频等信息主要有两种方式:下载和流式传输两种方式。
下载情况下,用户需要先下载整个媒体文件到本地,然后才能播放媒体文件。
在视频直播等应用场合,由于生成整个媒体文件要等直播结束,也就是用户至少要在直播结束后才能看到直播节目,所以用下载方式不能实现直播。
流式传输是实现流媒体的关键技术。
使用流式传输可以边下载边观看流媒体节目。
由于Internet是基于分组传输的,所以接收端收到的数据包往往有延迟和乱序(流式传输构建在UDP上)。
要实现流式传输,就是要从降低延迟和恢复数据包时序入手。
在发送端,为降低延迟,往往对传输数据进行预处理(降低质量和高效压缩)。
在接收端为了恢复时序,采用了接收缓冲;而为了实现媒体的流畅播放,则采用了播放缓冲。
使用接收缓冲,可以将接收到的数据包缓存起来,然后根据数据包的封装信息(如包序号和时戳等),将乱序的包重新排序,最后将重新排序了的数据包放入播放缓冲播放。
为什么需要播放缓冲呢?容易想到,由于网络不可能很理想,并且对数据包排序需要处理时耗,我们得到排序好的数据包的时间间隔是不等的。
如果不用播放缓冲,那么播放节目会很卡,这叫时延抖动。
相反,使用播放缓冲,在开始播放时,花费几十秒钟先将播放缓冲填满(例如PPLIVE),可以有效地消除时延抖动,从而在不太损失实时性的前提下实现流媒体的顺畅播放。
到目前为止,Internet 上使用较多的流式视频格式主要有以下三种:RealNetworks 公司的RealMedia ,Apple 公司的QuickTime 以及Microsoft 公司的Advanced Streaming Format (ASF) 。
上面在谈接收缓冲时,说到了流媒体数据包的封装信息(包序号和时戳等),这在后面的RTP封装中会有体现。
另外,RealMedia这些流式媒体格式只是编解码有不同,但对于RTP 来说,它们都是待封装传输的流媒体数据而没有什么不同。
第2章. RTP详解2.1. RTP的协议层次2.1.1. 传输层的子层RTP(实时传输协议),顾名思义它是用来提供实时传输的,因而可以看成是传输层的一个子层。
图1给出了流媒体应用中的一个典型的协议体系结构。
图 1 流媒体体系结构从图中可以看出,RTP被划分在传输层,它建立在UDP上。
同UDP协议一样,为了实现其实时传输功能,RTP也有固定的封装形式。
RTP用来为端到端的实时传输提供时间信息和流同步,但并不保证服务质量。
服务质量由RTCP来提供。
这些特点,在第4章可以看到。
2.1.2. 应用层的一部分不少人也把RTP归为应用层的一部分,这是从应用开发者的角度来说的。
操作系统中的TCP/IP等协议栈所提供的是我们最常用的服务,而RTP的实现还是要靠开发者自己。
因此从开发的角度来说,RTP的实现和应用层协议的实现没不同,所以可将RTP看成应用层协议。
RTP实现者在发送RTP数据时,需先将数据封装成RTP包,而在接收到RTP数据包,需要将数据从RTP包中提取出来。
2.2. RTP的封装一个协议的封装是为了满足协议的功能需求的。
从前面提出的功能需求,可以推测出RTP封装中应该有同步源和时戳等字段,但更为完整的封装是什么样子呢?请看图2。
图 2 RTP的头部格式版本号(V):2比特,用来标志使用的RTP版本。
填充位(P):1比特,如果该位置位,则该RTP包的尾部就包含附加的填充字节。
扩展位(X):1比特,如果该位置位的话,RTP固定头部后面就跟有一个扩展头部。
CSRC计数器(CC):4比特,含有固定头部后面跟着的CSRC的数目。
标记位(M):1比特,该位的解释由配置文档(Profile)来承担.载荷类型(PT):7比特,标识了RTP载荷的类型。
序列号(SN):16比特,发送方在每发送完一个RTP包后就将该域的值增加1,接收方可以由该域检测包的丢失及恢复包序列。
序列号的初始值是随机的。
时间戳:32比特,记录了该包中数据的第一个字节的采样时刻。
在一次会话开始时,时间戳初始化成一个初始值。
即使在没有信号发送时,时间戳的数值也要随时间而不断地增加(时间在流逝嘛)。
时间戳是去除抖动和实现同步不可缺少的。
同步源标识符(SSRC):32比特,同步源就是指RTP包流的来源。
在同一个RTP会话中不能有两个相同的SSRC值。
该标识符是随机选取的RFC1889推荐了MD5随机算法。
贡献源列表(CSRC List):0~15项,每项32比特,用来标志对一个RTP混合器产生的新包有贡献的所有RTP包的源。
由混合器将这些有贡献的SSRC标识符插入表中。
SSRC标识符都被列出来,以便接收端能正确指出交谈双方的身份。
2.3. RTCP的封装RTP需要RTCP为其服务质量提供保证,因此下面介绍一下RTCP的相关知识。
RTCP的主要功能是:服务质量的监视与反馈、媒体间的同步,以及多播组中成员的标识。
在RTP会话期间,各参与者周期性地传送RTCP包。
RTCP包中含有已发送的数据包的数量、丢失的数据包的数量等统计资料,因此,各参与者可以利用这些信息动态地改变传输速率,甚至改变有效载荷类型。
RTP和RTCP配合使用,它们能以有效的反馈和最小的开销使传输效率最佳化,因而特别适合传送网上的实时数据。
从图1可以看到,RTCP也是用UDP来传送的,但RTCP封装的仅仅是一些控制信息,因而分组很短,所以可以将多个RTCP分组封装在一个UDP包中。
RTCP有如下五种分组类型。
表 1 RTCP的5种分组类型上述五种分组的封装大同小异,下面只讲述SR类型,而其它类型请参考RFC3550。
发送端报告分组SR(Sender Report)用来使发送端以多播方式向所有接收端报告发送情况。
SR分组的主要内容有:相应的RTP流的SSRC,RTP流中最新产生的RTP分组的时间戳和NTP,RTP流包含的分组数,RTP流包含的字节数。
SR包的封装如图3所示。
图 3 RTCP头部的格式版本(V):同RTP包头域。
填充(P):同RTP包头域。
接收报告计数器(RC):5比特,该SR包中的接收报告块的数目,可以为零。
包类型(PT):8比特,SR包是200。
长度域(Length):16比特,其中存放的是该SR包以32比特为单位的总长度减一。
同步源(SSRC):SR包发送者的同步源标识符。
与对应RTP包中的SSRC一样。
NTP Timestamp(Network time protocol)SR包发送时的绝对时间值。
NTP的作用是同步不同的RTP媒体流。
RTP Timestamp:与NTP时间戳对应,与RTP数据包中的RTP时间戳具有相同的单位和随机初始值。
Sender’s packet count:从开始发送包到产生这个SR包这段时间里,发送者发送的RTP 数据包的总数. SSRC改变时,这个域清零。
Sender`s octet count:从开始发送包到产生这个SR包这段时间里,发送者发送的净荷数据的总字节数(不包括头部和填充)。
发送者改变其SSRC时,这个域要清零。
同步源n的SSRC标识符:该报告块中包含的是从该源接收到的包的统计信息。
丢失率(Fraction Lost):表明从上一个SR或RR包发出以来从同步源n(SSRC_n)来的RTP 数据包的丢失率。
累计的包丢失数目:从开始接收到SSRC_n的包到发送SR,从SSRC_n传过来的RTP数据包的丢失总数。
收到的扩展最大序列号:从SSRC_n收到的RTP数据包中最大的序列号,接收抖动(Interarrival jitter):RTP数据包接受时间的统计方差估计上次SR时间戳(Last SR,LSR):取最近从SSRC_n收到的SR包中的NTP时间戳的中间32比特。
如果目前还没收到SR包,则该域清零。
上次SR以来的延时(Delay since last SR,DLSR):上次从SSRC_n收到SR包到发送本报告的延时。
2.4. RTP的会话过程当应用程序建立一个RTP会话时,应用程序将确定一对目的传输地址。
目的传输地址由一个网络地址和一对端口组成,有两个端口:一个给RTP包,一个给RTCP包,使得RTP/RTCP 数据能够正确发送。
RTP数据发向偶数的UDP端口,而对应的控制信号RTCP数据发向相邻的奇数UDP端口(偶数的UDP端口+1),这样就构成一个UDP端口对。
RTP的发送过程如下,接收过程则相反。
1) RTP协议从上层接收流媒体信息码流(如H.263),封装成RTP数据包;RTCP从上层接收控制信息,封装成RTCP控制包。