2024年4月25日发(作者:)
1. RTP数据包格式
RTP报文头格式(见RFC3550 Page12):
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 |
| .... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
-+
版本(V):2比特此域定义了RTP的版本.此协议定义的版本是2.
填料(P):1比特若填料比特被设置,此包包含一到多个附加在末端的填充比特,不是负载
的一部分.填料的最后一个字节包含可以忽略多少个填充比特.填料可能用于某些具有固定
长度的加密算法,或者在底层数据单元中传输多个RTP包.
扩展(X):1比特 若设置扩展比特,固定头(仅)后面跟随一个头扩展.
CSRC计数(CC):4比特 CSRC计数包含了跟在固定头后面CSRC识别符的数目.
标志(M):1比特 标志的解释由具体协议规定.它用来允许在比特流中标记重要的事件,
如帧范围.规定该标志在静音后的第一个语音包时置位.
负载类型(PT):7比特 此域定义了负载的格式,由具体应用决定其解释.协议可以规定负
载类型码和负载格式之间一个默认的匹配.其他的负载类型码可以通过非RTP方法动态定
义.RTP发射机在任意给定时间发出一个单独的RTP负载类型;此域不用来复用不同的媒体
流.
序列号(sequence number):16比特 每发送一个RTP数据包,序列号加一,接收机
可以据此检测包损和重建包序列.序列号的初始值是随机的(不可预测),以使即便在源本身不
加密时(有时包要通过翻译器,它会这样做),对加密算法泛知的普通文本攻击也会更加困难.


发布评论