基于RTP协议的IP电话QoS监测及提高策略
发布时间:2008/5/29 0:00:00 访问次数:482
1 引言
随着internet和多媒体技术的飞速发展,internet已由早期的单一数据传输网向多媒体数据(视频、音频、文本等)综合传输网发展。但internet提供的只是尽力而为的服务,不能满足多媒体应用程序对传输延迟、包丢失、抖动控制等要求,为了能在传统的ip网上运行多媒体程序,必须考虑服务质量(ouality of service,qos)。qos可用延迟、抖动、吞吐量、丢包率等参数来描述。为了支持网络的实时传输服务,互联网工作组(internet engineering task force,ietf)制定了实时传输协议(real-time transport protocol,rtp)。rtp是专门为交互式音频、视频、仿真数据等实时媒体应用而设计的轻型传输协议,已广泛应用于各种多媒体传输系统中。ip电话作为一种新兴业务,因其低廉的话费受到广大用户的欢迎。但ip电话中的通话时延、话音失真一直是制约ip电话迅速发展的“瓶颈”。如何确保ip电话的qos,是ip电话成功与否的关键。
结合ip电话系统,从音频实时传输和控制两方面来讨论rtp及实时传输控制协议(real-time transportcontrol protocol,rtcp)应用技术,分析影响媒体流实时传输的因素。最后从实际实验、应用的角度,讨论如何获得当前internet可行的qos监测,并针对qos质量保证提出切实可行的解决方案。
2 实时传输协议rtp
rtp是用于internet上针对多媒体数据流的一种传输协议,被定义为在一对一或一对多的传输情况下工作,其目的是提供时间信息和实现流同步。rtp通常使用用户数据报协议(user datagram protocol,udp)来传送数据,但rtp也可以在传输控制协议(transmission control protocol,tcp)或异步传输模式(asynchronous transfer mode,atm)等其他协议之上工作。当应用程序开始一个rtp会话时将使用2个端口:1个给rtp,1个给rtcp。rtp本身并不能为按顺序传送数据包提供可靠的传送机制,也不提供流量控制或拥塞控制,它依靠rtcp提供这些服务。通常rtp算法并不作为一个独立的网络层来实现,而是作为应用程序代码的一部分,rtcp和rtp一起提供流量控制和拥塞控制服务。在rtp会话期间,参与者周期性地传送rtcp包,rtcp包中含有已发送的数据包的数量、丢失的数据包的数量等统计资料,因此,服务器可以利用这些信息动态地改变传输速率,甚至改变有效载荷类型。rtp和rtcp配合使用能以有效的反馈和最小的开销使传输效率最佳化,因而特别适合传送网上的实时数据。
2.1 rtp数据包
rtp数据包由12个字节的固定rtp头和不定长的连续媒体数据(视频帧或音频帧)组成。rtp协议的数据包格式如图1所示。
rtp报文头部分各个参数的意义如下:
(1)版本(v):2bit版本号置2。
(2)扩展位(extension-x):由使用的rtp框架定义。
(3)填充(p):用以说明包尾是否附有非负荷信息。
(4)负载类型(pt):对音频或视频等数据类型予以说明,并说明数据的编码方式。
(5)标志位(marker-m):标志位由具体的应用框架定义。
(6)序列号(sequence number):为了安全,服务器从一个随机初始化值开始,每发送一个rtp数据包序列号增加1。客户端可根据序列号重新排列数据包的顺序,并对丢失、损坏和重复的数据包进行检测。
(7)时间戳(timestamp):rtp时间戳为同步不同的媒体流提供采样时间,用于重新建立原始音频或视频的时序。另外,它还可以帮助接收方确定数据到达时间的一致性或变化(有时被称为抖动)。
(8)同步源标识(ssrg):帮助接收方利用发送方生成的唯一的数值来区分多个同时的数据流。ssrc必须是一个严格的随机数。
(9)作用标识(csrc):网络中使用混合器时,混合器会在rtp报文头部之后插入新的同步源标识,其作用是区分多个同时的数据流。
2.2 rtp控制协议——rtcp
在rtp会话中,rtcp周期性地给所有参与者发送控制包,应用程序或第三方监控者接受rtcp控制包,从中获取控制信息,估计当前qos,以便进行传输控制、拥塞处理、错误诊断等。
rtcp报文头部参数首先要区别携带不同控制信息的rtcp报文的类型,rtcp报文的类型主要有以下几种:(1)sr:发送报告,当前活动发送者发送、接收统计;(2)rr:接收报告,非活动发送者接收统计;(3)sdes:源描述项,包括cname;(4)byb:表示结束;(5)app:应用特定函数。其中最主要的rtcp报文是sr和rr。通常sr报文占总rtcp包数量的25%,rr报文占75%。
通过这5种控制包,rtcp协议实现了以下4个主要功能:
(1)提供数据发布的质量反馈,这是rtcp最主要的功能。作为rtp传输协议的一部分,与其他传输协议的流和阻塞控制有关。反馈对自适应编码控制直接起作用。反馈功能由rtcp发送者和接收者报告执行。
(2)送带有称作规范
1 引言
随着internet和多媒体技术的飞速发展,internet已由早期的单一数据传输网向多媒体数据(视频、音频、文本等)综合传输网发展。但internet提供的只是尽力而为的服务,不能满足多媒体应用程序对传输延迟、包丢失、抖动控制等要求,为了能在传统的ip网上运行多媒体程序,必须考虑服务质量(ouality of service,qos)。qos可用延迟、抖动、吞吐量、丢包率等参数来描述。为了支持网络的实时传输服务,互联网工作组(internet engineering task force,ietf)制定了实时传输协议(real-time transport protocol,rtp)。rtp是专门为交互式音频、视频、仿真数据等实时媒体应用而设计的轻型传输协议,已广泛应用于各种多媒体传输系统中。ip电话作为一种新兴业务,因其低廉的话费受到广大用户的欢迎。但ip电话中的通话时延、话音失真一直是制约ip电话迅速发展的“瓶颈”。如何确保ip电话的qos,是ip电话成功与否的关键。
结合ip电话系统,从音频实时传输和控制两方面来讨论rtp及实时传输控制协议(real-time transportcontrol protocol,rtcp)应用技术,分析影响媒体流实时传输的因素。最后从实际实验、应用的角度,讨论如何获得当前internet可行的qos监测,并针对qos质量保证提出切实可行的解决方案。
2 实时传输协议rtp
rtp是用于internet上针对多媒体数据流的一种传输协议,被定义为在一对一或一对多的传输情况下工作,其目的是提供时间信息和实现流同步。rtp通常使用用户数据报协议(user datagram protocol,udp)来传送数据,但rtp也可以在传输控制协议(transmission control protocol,tcp)或异步传输模式(asynchronous transfer mode,atm)等其他协议之上工作。当应用程序开始一个rtp会话时将使用2个端口:1个给rtp,1个给rtcp。rtp本身并不能为按顺序传送数据包提供可靠的传送机制,也不提供流量控制或拥塞控制,它依靠rtcp提供这些服务。通常rtp算法并不作为一个独立的网络层来实现,而是作为应用程序代码的一部分,rtcp和rtp一起提供流量控制和拥塞控制服务。在rtp会话期间,参与者周期性地传送rtcp包,rtcp包中含有已发送的数据包的数量、丢失的数据包的数量等统计资料,因此,服务器可以利用这些信息动态地改变传输速率,甚至改变有效载荷类型。rtp和rtcp配合使用能以有效的反馈和最小的开销使传输效率最佳化,因而特别适合传送网上的实时数据。
2.1 rtp数据包
rtp数据包由12个字节的固定rtp头和不定长的连续媒体数据(视频帧或音频帧)组成。rtp协议的数据包格式如图1所示。
rtp报文头部分各个参数的意义如下:
(1)版本(v):2bit版本号置2。
(2)扩展位(extension-x):由使用的rtp框架定义。
(3)填充(p):用以说明包尾是否附有非负荷信息。
(4)负载类型(pt):对音频或视频等数据类型予以说明,并说明数据的编码方式。
(5)标志位(marker-m):标志位由具体的应用框架定义。
(6)序列号(sequence number):为了安全,服务器从一个随机初始化值开始,每发送一个rtp数据包序列号增加1。客户端可根据序列号重新排列数据包的顺序,并对丢失、损坏和重复的数据包进行检测。
(7)时间戳(timestamp):rtp时间戳为同步不同的媒体流提供采样时间,用于重新建立原始音频或视频的时序。另外,它还可以帮助接收方确定数据到达时间的一致性或变化(有时被称为抖动)。
(8)同步源标识(ssrg):帮助接收方利用发送方生成的唯一的数值来区分多个同时的数据流。ssrc必须是一个严格的随机数。
(9)作用标识(csrc):网络中使用混合器时,混合器会在rtp报文头部之后插入新的同步源标识,其作用是区分多个同时的数据流。
2.2 rtp控制协议——rtcp
在rtp会话中,rtcp周期性地给所有参与者发送控制包,应用程序或第三方监控者接受rtcp控制包,从中获取控制信息,估计当前qos,以便进行传输控制、拥塞处理、错误诊断等。
rtcp报文头部参数首先要区别携带不同控制信息的rtcp报文的类型,rtcp报文的类型主要有以下几种:(1)sr:发送报告,当前活动发送者发送、接收统计;(2)rr:接收报告,非活动发送者接收统计;(3)sdes:源描述项,包括cname;(4)byb:表示结束;(5)app:应用特定函数。其中最主要的rtcp报文是sr和rr。通常sr报文占总rtcp包数量的25%,rr报文占75%。
通过这5种控制包,rtcp协议实现了以下4个主要功能:
(1)提供数据发布的质量反馈,这是rtcp最主要的功能。作为rtp传输协议的一部分,与其他传输协议的流和阻塞控制有关。反馈对自适应编码控制直接起作用。反馈功能由rtcp发送者和接收者报告执行。
(2)送带有称作规范
深圳服务热线:13751165337 13692101218
粤ICP备09112631号-6(miitbeian.gov.cn)

深圳市碧威特网络技术有限公司
付款方式