第05章 网络多媒体主要传输协议
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2010-12-5
lzh@fudan.edu.cn
网络与多媒体技术
5.1实时传输协议RTP
RTP协议头部格式--Payload Type
Examples of Static Payload Type Assignments
Payload Type Number Payload Format 0 AUDIO/PCMU 3 AUDIO/GSM 8 AUDIO/PCMA 12 AUDIO/QCELP 14 AUDIO/MPA 26 VIDEO/JPEG 31 VIDEO/H261 32 VIDEO/MPV
TCP/IP模型 应用层 (application) 传输层 RTP UDP IP 数据链路层(data link) 物理层(physical)
2010-12-5
图 RTP是传输层上的协议
5
lzh@fudan.edu.cn
网络与多媒体技术
第五章 网络多媒体传输协议
5.1实时传输协议RTP
TCP/IP模型 应用层 (application) 传输层 RTP UDP IP 数据链路层(data link) 物理层(physical)
Design goals:
Flexible provide mechanisms, do not dictate algorithms! ⇒ instantiations for H261, MPEG1/2/... protocol neutral UDP/IP, private ATM networks... Scalable unicast, multicast, from 2 to ∞ separate control/data some functions may betaken over by conference control protocol (e.g. RTSP)
网络与多媒体技术
5.1实时传输协议RTP
RTP协议头部格式
Sequence Number ―顺序号。 每发送一个 RTP 数 据包,序列号增加1。接收方可以依次检测数据包的 丢失并恢复数据包序列。 Timestamp ― 反映 RTP 数据包中的第一个八位组 的采样时间。采样时间必须通过时钟及时提供线性 无变化增量获取,以支持同步和抖动计算。 SSRC ― 同步源。该标识符随机选择,旨在确保在 同一个 RTP 会话中两个同步源具有相同的 SSRC 标识符。 CSRC ― 贡献源标识符。识别该数据包中的有效载 荷的贡献源。
lzh@fudan.edu.cn
网络与多媒体技术
第五章 网络多媒体传输协议
5.1实时传输协议RTP
2010-12-5
12
lzh@fudan.edu.cn
网络与多媒体技术
5.1实时传输协议RTP
RTP协议头部格式
V ― 版本。识别 RTP 版本。 P ― 填充位(Padding)。设置时,数据包包含一个或多 个附加间隙位组,其中这部分不属于有效载荷。 X ― 扩展位。设置时,在固定头后面,根据指定格式设置 一个扩展头。 CSRC Count ― 包含 CSRC 标识符(在固定头后)的编 号。 可以有0-15项,每项32bits。最多只能标志出15个。 M ― 标记。标记由 Profile 文件定义。允许重要事件如帧 边界在数据包流中进行标记。 Payload Type ― 识别 RTP 有效载荷的格式,并通过应用 程序决定其解释。Profile 文件规定了从 Payload 编码到 Payload 格式的缺省静态映射。另外的 Payload Type 编 码可能通过非 RTP 方法实现动态定义。 13
2010-12-5
version (V) padding (P) extension (X)
CSRC count (CC) marker (M) payload type (PT)
10
lzh@fudan.edu.cn
网络与多媒体技术
第五章 网络多媒体传输协议
5.1实时传输协议RTP RTP header... (cont’)
Sequence number field
incremented for each RTP packet
Synchronization SouRCe (SSRC) field
uniquely identifies the source in the session chosen randomly ⇒ detect and solve collisions
RTP协议原理和协议数据格式 RTCP协议原理和协议数据格式 RSVP协议原理
2010-12-5
2
lzh@fudan.edu.cn
网络与多媒体技术
第五章 网络多媒体传输协议
5.1实时传输协议RTP
RTP(Real-time Transport Protocol)是用于Internet上针对 多媒体数据流的一种传输协议。RTP被定义为在一对一或一 对多的传输情况下工作,其目的是提供时间信息和实现流同 步。 RTP定义在RFC 1889中,被广泛应用在单目标广播和多目 标广播网络中实时传输多媒体数据。(流媒体、H.323视频 会议) RTP通常使用UDP来传送数据,但RTP也可以在TCP或ATM 等其他协议之上工作。当应用程序开始一个RTP会话时将使 用两个端口:一个给RTP,一个给RTCP。 RTP本身并不能为按顺序传送数据包提供可靠的传送机制, 也不提供流量控制或拥塞控制,它依靠RTCP提供这些服务。 通常RTP算法并不作为一个独立的网络层来实现,而是作为 应用程序代码的一部分。
复旦大学软件学院 工程硕士课程 网络与多媒体技术
吕智慧 博士 lzh@fudan.edu.cn 计算机科学技术学院 2010-12
网络与多媒体技术
第五章 网络多媒体传输协议RTP/RTCP/RSVP
本章学习目标
本章主要讲解网络多媒体传输协议:RTP/RTCP/ RSVP协议的主要原理、数据格式,使学习者了解在计 算机网络上多媒体视音频数据是如何打包进行传递的。 通过对这些基础知识的学习,读者应该掌握以下内容:
14
lzh@fudan.edu.cn
网络与多媒体技术
5.1实时传输协议RTP
RTP协议头部格式--Payload Type
2010-12-5
15
lzh@fudan.edu.cn
网络与多媒体技术
Hale Waihona Puke Baidu
5.1实时传输协议RTP
RTP协议头部格式--Payload Type
2010-12-5
16
lzh@fudan.edu.cn
its companion control protocol, just here to get some feedback does not guaranty anything either!
2010-12-5
7
lzh@fudan.edu.cn
网络与多媒体技术
第五章 网络多媒体传输协议
5.1实时传输协议RTP Overview… (cont’)
2010-12-5 17
lzh@fudan.edu.cn
网络与多媒体技术
5.1实时传输协议RTP
RTP协议头部格式
同步源(SSRC,Synchronization source):RTP包流的 源,用RTP报头中32位数值的SSRC标识符进行标识, 使其不依赖于网络地址。一个同步源的所有包构成了相 同计时和序列号空间的一部分,这样接收方就可以把一 个同步源的包放在一起,来进行重放。 举些同步源的例子,像来自同一信号源的包流的发送 方,如麦克风、摄影机、RTP混频器(见下文)就是同 步源。 一个同步源可能随着时间变化而改变其数据格式,如音 频编码。SSRC标识符是一个随机选取的值,它在特定 的RTP会话中是全局唯一(globally unique)的。参与 者并不需要在一个多媒体会议的所有RTP会话中,使用 相同的SSRC标识符;SSRC标识符的绑定通过RTCP。 如果参与者在一个RTP会话中生成了多个流,例如来自 多个摄影机,则每个摄影机都必须标识成单独的同步源。
2010-12-5 3
lzh@fudan.edu.cn
网络与多媒体技术
第五章 网络多媒体传输协议
5.1实时传输协议RTP
从开发者角度,RTP是应用层的一部分。 在发送端,开发人员必需把执行RTP协议的程序写入到 创建RTP信息包的应用程序中,然后应用程序把RTP信 息包发送到UDP的套接接口(socket interface)。
Real-Time Protocol (RTP)
understand: « a framing protocol for real-time applications » does not define any QoS mechanism for real-time delivery!
Real-Time Control Protocol (RTCP)
TCP/IP模型 应用层 (application) RTP 套接接口
UDP IP 数据链路层(data link) 物理层(physical)
2010-12-5
图 RTP和UDP之间的接口
4
lzh@fudan.edu.cn
网络与多媒体技术
第五章 网络多媒体传输协议
5.1实时传输协议RTP
RTP可以看成是传输层的子层。由多媒体应用程序生成的音频 和视频数据块被封装在RTP信息包中,每个RTP信息包被封装 在UDP消息段中,然后再封装在IP数据包中。
2010-12-5
Specification Description RFC 1890 RFC 1890 RFC 1890 RFC 2658 RFC 2250 RFC 2435 RFC 2032 RFC 2250 ITU G.711 µ-law audio GSM full-rate audio ITU G.711 A-law audio PureVoice QCELP audio MPEG audio (e.g., MP3) Motion JPEG video ITU H.261 video MPEG I/II video
2010-12-5 8
lzh@fudan.edu.cn
网络与多媒体技术
第五章 网络多媒体传输协议
5.1实时传输协议RTP
RTP header
2010-12-5
9
lzh@fudan.edu.cn
网络与多媒体技术
第五章 网络多媒体传输协议
5.1实时传输协议RTP
RTP header
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |V=2|P|X| CC |M| PT | sequence number | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | timestamp | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | synchronization source (SSRC) identifier | +=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ | contributing source (CSRC) identifiers | | .... | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | payload (audio, video...) | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ...| padding | count | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Contributing SouRCe (CSRC) and CC fields
used by a mixer to identify the contributing sources size of the list given by the CSRC Count (CC) field
2010-12-5 11
图 RTP是传输层上的协议
2010-12-5
6
lzh@fudan.edu.cn
网络与多媒体技术
第五章 网络多媒体传输协议
5.1实时传输协议RTP Overview
IETF Audio/Video Transport WG
RTPv1 RTPv2 RFC 1889 (January 1996) draft-ietf-avt-rtp-new-09.txt (March 2001)