书痴者文必工,艺痴者技必良,以下是壶知道可爱的编辑帮家人们找到的文件传输协议范文(最新4篇),欢迎借鉴,希望能够帮助到大家。
关键词:流媒体;服务迁移;视频传输
中图分类号:tp37 文献标识码:a 文章编号:1009-3044(2013)09-2233-03
流媒体(streaming media),采用流式传输的方式在因特网与内联网播放的媒体格式。流媒体又叫流式媒体,它是用一个视频传送服务器把节目当成数据包发出,传送到网络上。然后通过解压设备对这些数据进行解压后,节目就会像发送之前那样的显示出来了。流媒体技术也不是一种单一的技术,它是将网络技术及视/音频技术的有机结合。在网络上实现流媒体技术,需要解决流媒体的制作、、传输及播放等多方面的问题。在网上进行流媒体传输的文件必须制作成适合流媒体传输的流媒体格式文件。因为我们通常格式存储的多媒体文件容量很大,假使要在现有的窄带网络上传输,就会花费很长的时间,如果遇到网络繁忙,还可能会造成传输中断。另外,通常格式的流媒体也不能按流媒体传输协议进行传输。因此,应首先对需要进行流媒体格式传输的文件进行预处理,将文件压缩生成流媒体格式文件。但是在处理过程中应注意两点:一是选用适当的压缩算法进行压缩,这样可以生成较小的文件容量。二是需要向文件中添加流式信息。
为了实现上述的解决方法,该文设计和实现了一个流媒体系统,利用rtp(实时传输协议) 作为流媒体传输协议,并且以sip(应用层的信令控制协议)来作为服务器和客户端之间信息传输的传输协议。而且为了让使用者在服务器和服务器之间的切换过程中不会察觉到视频有停顿或是画面有噪声的情形发生, 则必须要能够达到无缝切换(seamless handoff)的程度。
本文研究结合了sip 和rtp协议,设计出了基于服务迁移的流媒体系统。结果降低了包的延迟,增加了连接质量,减少了整体网络的负担利用rtp 作为流媒体传输协议,并且以sip 来作为服务器和客户端之间信息传输的传输协议。而且为了让使用者在服务器和服务器之间的切换过程中不会察觉到视频有停顿或是画面有噪声的情形发生,则必须要能够达到无缝切换(seamless handoff)的程度。
1 流媒体传输原理
我们都知道,在网络上实现流媒体技术是一个复杂的过程,因而当在网络上实现流媒体技术时,我们必须对其进行综合的考虑和分析,这就需要囊括制作、传输、、播放等多方面的问题。当数据在传输时,我们应尽量选择合适的传输协议,虽然tcp协议是一种可靠的数据传输协议, 但是tcp协议需要的带宽开销加大,在那些实时性要求比较高的时候,tcp协议有可能花费相对较高,这样就极其不合算,因此tcp协议并不适合实时性要求高的场合,这样一来,在实际的传输中,我们就采用效率更高的rtp/udp协议。
对于流式传输的理解,目前存在有很多种说法,最流行的一种说法就是,流式传输主要指通过网络传送多媒体信息(音视频)的总称。实现流式传输的两种方法:1. 实时流式传输(realtime streaming);2. 顺序流式传输(progressive streaming)。通常来说,如果视频为实时广播,或者采用流式媒体服务器,或者采用rtsp实时协议,则为实时流式传输; 如采用http服务器,则为顺序流式传输。采用何种方式,应据实用场合而定。当然,流式文件也支持缓冲到硬盘,支持流文件下载的下载器也有很多种,比如迅雷就是一个很好是事例;另外,更有甚者,可以将文件路径反解析出来,比如http:///. 用户只需要输入流媒体的地址,就能反解析到实际的媒体文件地址,然后点击右键的另存为,就圆满的完成了整个任务。目前有很多公司都会封掉流媒体服务,而采用此方法,直接将流媒体浏览变为http文件传输,将直接绕开公司防火墙。
2 流媒体传输系统的设计
为了验证该文所提出的方法是否可行,我们设计和实作了一个流媒体系统来作简单的实验,整个系统包含了客户端以及服务器二个部分。客户端和服务器之间信令传输的传输协议为sip,流媒体的传输协议为rtp。而程序主要的功能如下︰
1)用户经由客户端的软件连上服务端,在线观看想看的视频。
2)客户端软件会监视网络的状况(如包延迟时间、网络壅塞状况等)。当使用者四处漫游时,可能会使的和服务器之间的距离加大,导致连接品质变差,这时候客户端会自动的去和目前连接的服务器要求作服务迁移(service migration)的动作。
3)服务器收到客户端的要求后,会将相关的资料(如多媒体名称、播放进度、rtp 状态信息等)传送给客户端,客户端再将收到的资料传送给较近的服务器,改由较近的服务器来服务。
负责和服务端之间的信令往来, 以及管理draw_frame_thread 和rtp_recv_thread。分成二个部分:第一部份是基本的建立连接部分(不含服务迁移)。第二部分是服务迁移的过程。图1为流程图。
客户端连接到服务器,服务器目前不忙碌,产生子程序服务该客户端,并传送重新导向的信息给客户端。客户端收到后重新连接到该子程序,该子程序有找到客户端所要求的视频片段,并传送该视频的相关信息(如视频的高度、宽度、色彩深度、长度、帧数数等)给客户端,到此就算连接建立成功。客户端收到后,启动rtp_recv_thread 和draw_frame_thread,准备开始播放。开始播放后,使用者便可作基本的操作,如暂停、继续、结束、缩小或放大、服务迁移等。而连接失败的话,使用者可以重新输入,改连接到其他服务器或其他视频。
3 流媒体传输系统的实现
图2为程序实际执行的快照。共有三台计算机参与实验,二台负责服务器部分,一台负责客户端部分。我们在负责客户端的计算机上利用操作系统内附的远程连接程序,连接到那二台服务器来作控制和显示。在图2中,左上的远程连接窗口为服务器a(ip为140.127.112.12),而窗口内执行的程序为main。左下的远程连接窗口为服务器b(ip为140.127.112.96),窗口内执行的程序为main。右边中间为客户端程序(ip为140.127.112.118),上面为信息窗口,下面为播放器窗口。而程序的整个执行流程为:
1)客户端会先连接到服务器a。
2)过一段时间后迁移到服务器b,这时服务器a 和服务器b 会同时传送资料给客户端。
3)再过一段时间后客户端切断与服务器a 的连接,这时就剩下服务器b 与客户端连接。
4)最后视频传送完毕,服务器b 切断与客户端的连接。
4 总结
该文设计和实现了一套无线网络流媒体播放系统,并对服务器模块、客户端模块、以及传输模块进行了设计。实验证明系统有较好的网络适应性,并能获取良好的视觉质量。
参考文献:
[1] 季尉,丘洪江,肖振华,等。 cdn和p2p融合的流媒体内容分发平台[j].音响技术,2010(2).
[2] 马军,郑烇,殷保群。 基于cdn和p2p的分布式网络存储系统[j].计算机应用与软件,2010(2).
关键词:可靠udp;确认重传;滑动窗口
中图分类号:tp311 文献标识码:a 文章编号:1009-3044(2015)09-0071-03
abstract:in data transmission network, compared with the other protocol, udp protocol has certain advantages in speed, but there is also the transmission reliability is poor and the problem of lack of congestion control mechanism in this paper, on the basis of the udp protocol, by adding a simple three-way handshake, confirm the retransmission mechanism, the sliding window mechanism, designed a reliable transport protocol based on udp, make it between the reliability and efficiency to achieve a good unity and compromise, and implementation of the agreement of the main module has made a detailed description and the actual test.
key words: reliable udp; confirm the retransmission; the sliding window
由于传统的数据传输协议所针对的业务不同,在数据传输的速度和可靠性之间不能达到很好的平衡。车险理赔系统中采用的是移动理赔的思想,手持终端机通过移动通信网络和后台中心系统进行数据交互。目前国内的通信事业并不是很发达,信号覆盖率并不全面,移动通信网络的带宽和传输质量会受到地域的影响,为确保理赔现场与后台系统间数据的及时可靠传输,需要基于移动通信的网络环境设计高效可靠的数据传输功能。本章在udp传输协议基础上,通过应用层封装和可靠性设计的方法,采用数据包的确认重传、流量控制等机制,设计并实现基于udp协议的可靠数据传输功能。
1 tcp与udp的对比
tcp和udp都属于传输层协议,负责承担数据传输的任务[1]。两者之间的主要区别有:
(1) tcp和udp是传输层的两个协议,它们最大的区别是是否面向连接。tcp,在客户端和服务器端进行通信之前,首先要交换传输层控制信息,为双方的通信做好准备。udp是一个非连接的协议,传输数据之前双方不建立连接,当传送数据时,简单的抓取来自应用程序的数据,并尽可能快的把数据传送到网络上。
(2) udp协议的数据传输不需要维护收发状态和连接状态等,与tcp相比,网络有效利用率得到很大的提高。
(3) tcp协议提供数据确认重传、拥塞控制等可靠性保证,udp协议不提供可靠性保证,也不提供流量控制。
tcp协议由于需要确认的状态和对数据包的操作过多,数据传输的速度不高且网络延迟较大,所以虽然协议可靠但并不适合面向移动通信的数据传输;而udp协议由于不用建立连接,没有超时重发等可靠机制,网络延迟小且数据传输速度很快。本文设计的理赔系统面向移动通信网络实现理赔现场与后台系统间的数据传输,网络环境不如光纤接入网络稳定可靠,对数据的高效可靠传输有着很高的要求。因此,本章选用udp协议,并在其基础上,设计了连接确认、数据确认等可靠机制,满足了系统对于高效可靠传输功能的需求。
2基于udp 改进的可靠传输协议实现
2.1 主要功能模块及任务结构
综合文献【2】的可靠机制描述,可靠udp数据传输协议的模块结构如图1所示。
从模块结构上看,本模块主要由以下几个任务实现模块功能:
? 通信处理模块
1) 发送方发起数据传输请求,三次握手成功后,发送方进入数据包封装模块。
2) 超时定时器的启动和关闭。
3) 当数据传输结束时,接收方向发送方主动发起传输结束的请求。
? 数据包封装/解析模块
1) 发送方将要发送的的数据按照协商大小分块,排序。
2) 发送方将分块的数据协商的数据报文结构封装成要发送的消息包。
3) 接收方读取数据包后根据协商的数据报文结构拆分数据包,根据数据包的类型读取信息。
? 消息发送/接收模块
1) 发送方判断发送队列和消息队列是否为空后,将要发送的数据包处理后发送。
2) 接收方从接收队列中读取数据包。
? 数据重组模块
1) 由于网络问题,发送方按序发送的数据包不一定会按序到达,所以接收方在经过数据包解析模块读取数据后,根据该消息的字节序号判断是否为乱序的分组。
2) 若是顺序的分组,将分组与以前收到的消息按序排列;若是要求重传的分组,将该分组放入到所应在的位置中。
3) 如果满足重发条件,则向发送方发送重发包请求。
2.2 核心事件处理流程
2.2.1 通信处理进程
通信处理模块中的通信处理进程主要负责三次握手的发起和确认的请求,数据传输结束后结束连接等任务。具体流程见图2。首先,通信的接收方发起握手的请求,即建立一个虚连接,双方必须确保该连接成功建立后才可以进行下一步数据传输的操作。然后,在接收方一端启动定时器,接收方的数据处理进程接收发送方发送的数据,同时接收方根据定时计时器发送反馈消息;或判断接收到的报文数,当达到数据包累积计数器设定的数值时,向发送方发送反馈消息。
2.2.2 发送方发送报文
数据报文的发送,主要是发送方向接收方发送数据报文和消息报文,流程如图3所示,具体的算法为:
if(发送队列非空)
{
从队列中取出消息;
if (消息类型为数据包)
发送数据包;
else 发送确认包;
}
else if (消息队列非空)
{
打包要发送的数据并将数据放入发送队列中;
套接口处当前序号加1;
}
3 实验结果与分析
3.1 开发环境
系统的编程实现是在windows xp上进行的,使用的编程工具为visual c 6.0。
3.2 系统测试
3.2.1 测试环境
本测试是是在无线通信网络下进行的,配置了两台计算机用作数据间收发的测试,操作系统为windows xp。华为e261 3g上网卡两张,用于连接无线网络,测试拓扑结构如图4所示。
3.2.2 测试内容
本测试采用传输不同大小文件的方式来对数据速度进行测试,每次传输重复测试三次,然后取平均值作为参考数据,测试结果见表1和表2。其中,表1是在最大连接速率7.2mbps环境下的测试结果,表2是在连接速率为2.2mbps环境下的测试结果。
由表1可见,在移动通信的网络连接环境为7.2mbps时,当传输1mb的数据时,tcp协议测试耗时9.75s,平均传输速度约为105kb/s;可靠udp耗时8.25s,平均传输速度约为124kb/s。当传输数据为32mb时,tcp耗时295.89s,平均传输速度约为120kb/s;可靠udp耗时197.05s平均传输速度约为168kb/s。
由表2可见,在移动通信的网络连接环境为2.2mbps时,由于连接环境较差,测试文件并不大,当传输0..36s,平均传输速度约为21kb/s;可靠udp耗时190.81s,平均传输速度约为43kb/s。
由此可得出:
(1) 可靠udp传输协议的优势随着传输数据量的增大而越来越明显。
(2) 可靠udp传输协议的优势随着网络环境的变差而越来越明显。
参考文献:
[1] douglas er. 用tcp/ip进行网际互联――原理、协议与结构(第五版)[m]. 林瑶, 张娟, 王海,等译。 北京:电子工业出版社,2009.
[2] 王珏, 何秋燕, 王露凯。基于udp 改进的可靠传输协议设计[j].电子世界,2014(22).
[3] 王继刚, 顾国昌, 徐立峰,等。可靠udp数据传输协议的研究与设计[j].计算机工程与应用,2006(15):113-116.
[4] 靳海力。一种增强型可靠udp的设计及应用[d].合肥:中国科学技术大学,2009.
【关键词】自组网 路由协议 aodv olsr
1 引言
目前自组网(ad hoc network)是国内外研究的一个热点,它是一种以移动或静止的网络节点组成的多跳、无中心、不依赖基础设施,可临时快速布置的网络系统,正是由于自组网具有这些优点,所以适用于多种无线通信场景的应用。路由协议是自组网的重要组成部分,它的好坏将直接影响到网络的性能,对系统的传输时延、吞吐量、丢包率、开销有着直接的影响。本文分别在手持低速移动和车载高速移动的应用场景下,全方位分析对比了aodv(ad hoc on-demand distance vector routing)、olsr(optimized link state routing)两种具有代表性的路由协议的性能,探讨在不同的使用场景设计自组网时,关于路由协议的优选问题。
2 路由协议和性能指标
移动自组网的路由协议可分为基于拓扑和基于地理位置两类,如图1所示。基于拓扑的路由协议是根据节点间链路状态信息选择路由的协议,它往下可以分为平面路由协议和分层路由协议。平面路由一般用于功能单一和规模较小的网络场景。根据路由机制和运作方式的不同,平面路由协议又可分为主动式路由协议和被动式路由协议。
主动式路由协议在网络运行过程中,周期性地发送路由包,以维持和更新整个网络的路由表,当需要发送数据时,直接查表寻找可用路由,极大地减少了端到端时延。然而,主动式路由协议需要随时随地维持整个网络的路由信息,节点需要不停地交互控制信息,占据较多的信道资源和cpu资源。当网络规模加大或是网络拓扑快速变化时,路由开销将快速增加,使系统的性能减弱。
被动式路由协议则不需要对路由进行周期性的维护和更新,只有在需要发送数据时,才会“临时”寻找路由,极大地降低了路由开销。但是,“临时”寻找路由,增大了数据包的端到端时延。
olsr是一种具有代表性的主动式路由协议。olsr路由协议引入了mpr(多点中继)的概念,只有mpr节点才能转发路由信息,大大减少了网络中路由信息对信道资源的占用,相比传统的全网泛洪路由,开销更小。
aodv是一种使用较多的被动式路由协议。aodv在发送数据时,会全网广播路由寻找消息,节点收到路由寻找消息后,查看本节点是否是目的节点。若是,对路由请求应答响应;若不是,则将源节点地址加入本节点路由表并进行转发。
系统的平均传输时延、网络吞吐量、包成功传输率、路由开销是路由协议重点关注的性能指标,面向应用需求的设计具有较高的参考价值。平均传输时延定义为所有收到的数据包的接收时间和发送时间差的均值。网络吞吐量定义为单位时间内网络节点收到的数据包总量(不包括转发的数据包)。包成功传输率定义为网内节点收到的包的总量与发送的包总量的比值。路由开销定义为路由消息占总通信数据量(路由消息和数据消息)的比值。
3 仿真软件选择
目前比较常用的仿真软件有opnet、ns2、omnet、qualnet等。qualnet源于美国国防部,其仿真速度较快,性能强大,但由于价格昂贵,使用者较少。opnet和omnet属于商业软件,界面友好,操作方便,但不够灵活,同时免费供学术研究使用,但很多重要的模型库需要获得授权方可使用。ns2是免费开源的仿真软件,因代码开源,可扩展性强,速度和效率优势明显,可自由构造想要的节点等,具有较高的普及率。但是界面不如其他几款商业软件友好,一般较难入门。
针对本文需要使用到的ieee802.11p协议库在omnet和opnet中需要收费,因此选用最新版本的ns2.35进行仿真。
4 仿真实现过程
ns2中并没有olsr的源码,因此需要打补丁并嵌入olsr源码,过程如下:
cd ns-allinone-2.35/ns-2.35/
tar zxvf um-olsr-0.8.8.tgz
ln cs./um-olsr-0.8.8./olsr
patch-p1
在手持和车载的应用场景下,设定的单跳传输距离分别为1000 m和1500 m(ns2中默认的传输距离为250 m),因此需要调整节点发射功率和csthresh值以增大传输距离,同时为了更符合车载的实际情况,本仿真采用专为车载设计的mac协议802.11p。
本文仿真首先设计应用场景,编写tcl脚本文件。再将802.11p的物理层参数复制到tcl脚本中,并把物理层和mac层改为802.11p,运行脚本文件产生trace文件。编写awk程序提取trace中的节点发送和接收信息,生成各性能指标的原始数据。最后依据这些数据使用gnuplot进行绘图,得到仿真结果。
5 仿真场景和仿真结果
为了尽可能模拟真实环境中的应用场景,本次仿真中节点数为32个,手持电台自组网环境下,32个节点以2 m/s~4 m/s的速度向一个方向运动,单跳传输最远距离为1000 m。车载电台自组网环境下,32个节点以25 m/s~30 m/s的速度向一个方向移动,单跳传输最远距离为1500 m。32个节点组成的网络拓扑结构如图2所示。
考虑到多跳传输,节点间通信设置如图3所示,其中节点21和节点3,节点15和节点30处在网络中的两端,相互间的通信在mac层没有干扰。节点8和节点12的通信,节点6和节点17的通信,两队节点的链路处于一种交叉的拓扑状态,两对节点会在mac层竞争信道资源,在中间的节点可能发生碰撞。为了仿真系统整体的极限性能,将节点间传输速率设置的较高。场景1到场景3中,仿真时四对节点以100 kbps的速率同时步进递增,仿真结果中横轴只标示节点21和节点3的速率(另外三对节点速率同时在步进)。场景4中传输速率设置为场景1到场景3的起始速率,并且保持固定不变,32个节点以5 m/s的速度在0 m/s~50 m/s间步进,观察节点移动速度对各项性能指标的影响。
节点21――500 kbps节点3
节点8――100 kbps节点12
节点6――100 kbps节点17
节点15――500 kbps节点13
5.1 场景1(手持节点2 m/s~4 m/s)
(1)仿真条件设置
场景1仿真条件的设置如表1所示。
(2)场景1仿真结果
图4为场景1的仿真结果。
在设定的手持场景下,随着节点间传输速率的增加,数据包平均传输时延都递增。使用aodv时,数据包传输时延小于使用olsr,网络吞吐量远大于使用olsr,同时数据包成功传输率也大于使用olsr。使用olsr系统的路由开销随着节点传输速率的增加平稳减小,使用aodv系统开销变化较大,整体上是随着传输速率增大先增大后减小,路由开销小于使用olsr。
5.2 场景2(车载节点固定速度30 m/s)
(1)仿真条件设置
场景2仿真条件的设置如表2所示。
(2)场景2仿真结果《www.huzhidao.com》
图5为场景2的仿真结果:
网络中节点以固定速度高速移动时,平均传输时延都逐渐增加,olsr时延较大,aodv吞吐量和包成功传输率都大于olsr,低负载时aodv路由开销小于olsr,负载加大后,aodv开销急剧增加并超过olsr。
5.3 场景3(车载节点25 m/s~30 m/s)
(1)仿真条件设置
场景3仿真条件设置如表3所示。
(2)场景3仿真结果
图6为场景3的仿真结果:
场景2中节点高速移动,但相对位置没有变化,场景3将网络中节点设置为不同的速度,节点间的相对位置会发生变化。从仿真结果可以看到,和场景2相比,使用olsr时系统性能指标变化不大,使用aodv时系统各项指标性能优于场景2。除了路由开销,使用aodv的系统整体性能优于olsr。
5.4 场景4(速度对性能影响,节点速度从0 m/s开始递增,以5 m/s步进,直到50 m/s)
(1)仿真条件设置
场景4的仿真条件设置如表4所示:
(2)场景4仿真结果
图7为场景4的仿真结果:
在移动速度步进增加的情况下,使用aodv时平均传输时延低于olsr,网络吞吐量和包成功传输率远大于使用olsr,同时路由开销较低。从场景4可以看出,使用aodv时,移动速度对系统传输时延和开销有所影响,使用olsr时,移动速度对传输时延、网络吞吐量的影响很明显,但没有规律性,对路由开销影响不大。场景1到场景3与场景4综合对比,aodv路由协议开销随移动速度增加而波动,随着网络负载增大而急剧增大,到达峰值后有所减小,但仍维持在一个较高水平,olsr路由协议开销受移动速度影响较小,随着网络负载增大而平稳减小。
6 仿真结果分析与结论
从以上多个场景下的仿真结果可以看出,olsr和aodv的性能分析对比需在特定的场景下才有意义。很多研究者在少量节点低速率随机移动的情况下分析二者的性能,得出“olsr路由开销较大,传输时延较小”的结论,并依此在工程中选择路由协议,此种结论并不准确。分析仿真结果图表和产生的trace文件,可以看到在手持和车载情况下,由于网络中所有节点向一个方向移动,且速度相差不大,没有频繁的节点入网和退网。通信节点在开始寻找到路由后,通信中断几率较小,无需重新寻找路由,因此节点间传输时延使用aodv反而优于使用olsr。在轻负载情况下,aodv路由开销远小于olsr,当网络负载逐渐加大,信道资源有限,竞争导致路由中断,下次发送需要重新寻找路由,因此aodv开销急剧增大,并逐渐超过olsr,到达一个峰值后逐渐减小,但仍维持在一个较高的水平。olsr在没有数据发送时也维持着全网路由信息,在网络负载较小时,路由开销较大,当网络负载较重时,即使数据发生碰撞,也无需在全网大量发送路由包重新寻找路由,故其路由开销平稳减小,吞吐量却较小。使用aodv时网络的吞吐量、包成功传输率都优于使用olsr。
从仿真结果可以看到,在手持场景下,使用aodv路由协议,系统各个性能指标整体优于使用olsr路由。车载情况下,若网络负载较大时,aodv路由开销大于olsr,但使用aodv时系统的平均传输时延、网络吞吐量、包成功传输率都优于使用olsr路由,综合考虑,使用aodv更符合现实应用需求。
由于网络协议发展较快,许多协议性能已经优于官方的协议标准,仿真的结果只能作为现实应用的参考,实际效果需要将协议嵌入调试板作真机测试。
参考文献:
[1] 周晓东。 无线ad hoc网络关键技术的研究[d]. 西安: 西安电子科技大学, 2006.
[2] 周亚建。 无线多址接入技术和多播路由技术研究[d]. 西安: 西安电子科技大学, 2003.
[3] 杨彦彬。 ad hoc网络分层协议及其跨层设计[d]. 广州: 华南理工大学, 2010.
[4] 贺鹏。 移动ad hoc网络中路由与拓扑控制技术的研究[d]. 西安: 西安电子科技大学, 2007.
[5] 张文柱。 无线ad hoc网络中若干关键技术研究[d]. 西安: 西安电子科技大学, 2003.
[6] 彭永祥。 无线ad hoc网络路由技术若干关键问题研究[d]. 西安: 西安电子科技大学, 2013.
[7] 吴继春。 ad hoc网络路由协议的研究与ns2仿真[d]. 武汉: 武汉理工大学, 2005.
[8] 朱敦乐。 ad hoc网络路由协议性能研究与仿真[d]. 武汉: 武汉理工大学, 2006.
[9] 王坤。 ad hoc网络路由协议的研究[d]. 济南: 山东大学, 2005.
【关键词】流媒体 启动延时 rtp
自互联网产生以来,受网络带宽的限制,互联网上的信息都以文字、图片等静态数据为主,而音频、视频数据则难以在网上。随着adsl、视迅宽带、fddi网的出现,网络带宽得到很大的改善,可以达到100m以上的传输速率,但仍无法满足高质量的多媒体信息传输的需要,这就要从数据的传输方式上着手来解决问题。由此,流媒体技
术应运而生。
一、流媒体技术概述
流媒体(streaming)技术是指在发送端和接收端之间以独立于网络负载的以给定速率传输音频、视频信息的一种传输技术。流媒体具有隐含的时间维、传输的实时性和等时性、高吞吐量等特点。目前因特网由于存在带宽不足、服务质量控制机制较弱等局限性,难以满足流媒体的实时性要求,为此因特网工程任务组(ietf)制定了一系列支持流媒体实时传输和服务质量控制的协议,如 rtp、rsvp、rtcp等。其中,rtp是所有这些协议的基础。在网络上传输音频或视频等多媒体信息,目前主要有下载回放和流式传输两种方案。下载回放方式时间长、占的内存多,要求用户等到整个文件全部下载完毕才能回放。流式传输中声音、影像等通过网络向用户计算机进行连续、实时传送,用户不必等到整个文件全部下载完毕,而只需经过几秒或十几秒的启动延时即可进行观看。
流媒体技术是一种使用流式传输连续的时基媒体的技术。流式传输方式是将视频、音频等其他媒体压缩为一个个压缩包,由视频服务器向用户计算机连续、实时传送,只需要在用户端缓存足够可播放的视频容量就可以开始播放。
二、流媒体系统的组成
1、编码工具。即用于创建、捕捉和编辑多媒体数据,形成流媒体格式。利用媒体采集设备进行流媒体的制作。它包括了一系列的工具,从独立的视频、声音、图片、文字组合到制作丰富的流媒体。这些工具产生的流媒体文件可以存储为固定的格式,供服务器使用。
2、流媒体数据。即媒体信息的载体。常用流媒体数据格式有。asf、.rm等。
3、服务器。即存放媒体数据。由于要存储大容量的影视资料,因此该系统必须配备大容量的磁盘阵列,具有高性能的数据读写能力,可以高速传输外界请求数据并具有高度的可扩展性、兼容性,支持标准的接口。这种系统配置能满足上千小时的视频数据存储,实现片源的海量存储。
4、网络。即适合多媒体传输协议甚至是实时传输协议的网络。流媒体技术是随着互联网络技术的发展而发展起来,它在现有互联网络的基础上增加了多媒体服务平台。
5、播放器。即供用户欣赏网上媒体的软件。流式媒体系纺支持实时音频和视频直播和点播,可以嵌入到流行的浏览器中,可播放多种流行的媒体格式,支持流媒体中的多种媒体形式,如文本、图片、web页面、音频和视频等集成表现形式。在带宽充裕时,流式媒体播放器可以自动侦测视频服务器的连接状态,选用更适合的视频以获得更好的效果。目前应用最多的播放器有美国real networks公司的real player、美国微软公司的media player、美国苹果公司的quicktime三种产品。
目前,real system 被认为是在窄带网上最优秀的流媒体传输系统,其允许的带宽限制从28.8kbps的拨号上网到10m 的局域网,允许点播的人数从 100 流到 1000 流甚至无限流。real system 系统由三部分组成。一是媒体内容制作工具real producer。主要是用于压缩制作多媒体内容文件,实时压制现场信号并传送给real server进行现场直播;也可以把其他音频、视频和动画等多媒体文件格式转换成real server支持并进行流媒体广播的 real格式。二是服务器引擎 real server。它是目前国际上最强力的因特网和intranet上的流传播服务引擎,利用该服务引擎用户可以在客户端无须等待数据全部下载完毕即可实时收看直播节目。三是客户端播放软件 real player。用来向服务器发出请求,接收并回放从 real server传送的媒体节目。
三、流式传输协议
流媒体协议是流媒体技术的一个重要组成部分,也是基础组成部分。因特网工程任务组的主要工作是设计各种协议来规范与发展世界标准化组织,现已设计出几种支持流媒体的传输协议。
1、rsvp(资源预留协议)。该协议促使流数据的接收者主动请求数据流路径上的路由器,并为该数据流保留一定的资源(即带宽),从而保证一定的服务质量。rsvp是一个在ip上承载的信令协议,它允许路由器网络任何一端上终端系统或主机在彼此之间建立保留带宽路径,为网络上的数据传输预定和保证服务质量。
(1)rsvp协议中涉及到发送者和接收者的概念,这两个概念是在逻辑上进行区分的。发送者指发送路径消息的进程,而接收者是指发送预留消息的进程,同一个进程可以同时发送这两种消息,因此既可以是发送者也可以是接收者。
(2)资源预留的分类。专用预留:它所要求的预留资源只用于一个发送者,即在同一会话中的不同发送者分别占用不同的预留资源。共享预留:它所要求的预留资源用于一个或多个发送者,即在同一会话中的多个发送者共享预留资源。
(3)rsvp提供两种发送者选择方式。通配符方式:默认所有发送者,并通过预留消息中所携带的源端地址列表来限制通配符滤波器。显式指定方式:滤波器明确指定一个或多个发送者来进行预留。
2、rtp(实时传输协议)。用于internet上针对多媒体数据流的传输。rtp协议为数据提供了具有实时特征的端对端传送服务,如在组播或单播网络服务下的交互式视频音频或模拟数据。应用程序通常在udp上运行rtp以便使用其多路结点和校验服务。rtp可以与其他适合的底层网络或传输协议一起使用。如果底层网络提供组播方式,那么rtp可以使用该组播表传输数据到多个目的地。
3、rtcp(实时传输控制协议)。实现通过客户端对服务器上的音视频流做播放、录制等操作请求。该协议通过rtsp协议实现了在客户端应用程序中对流式多媒体内容的播放、暂停、快进、录制和定位等操作。rtp和rtcp一起提供流量控制和拥塞控制服务。
4、rtsp(实时流协议)。建立并控制一个或几个时间同步的连续流媒体,如音频和视频。尽管连续媒体流与控制流交叉是可能的,但rtsp 本身并不发送连续流,换言之,rtsp充当多媒体服务器的网络远程控制。rtsp 提供了一个可扩展框架,实现实时数据(如音频与视频)的受控、按需传送。数据源包括实况数据与存储的剪辑。rtsp 用于控制多个数据发送会话,提供了选择发送通道(如udp、组播udp与tcp等)的方式,并提供了选择基于rtp的发送机制的方法。
总之,随着流媒体技术的不断发展以及网民对流媒体的需求的增加,流媒体技术将会日臻成熟并稳步发展。
(注:本文为项目“多媒体cai应用在高等职业教育中的教学结构模型研究”的研究成果。)
【参考文献】
[1] 肖金秀、蔡均涛:多媒体技术及应用[m].冶金工业出版社,2006.
[2] 郑丽娜:网络流媒体技术及其应用[j].山东通信技术,2005(2).
[3] 刘肖笛:网络流媒体技术大全[db/ol].tech.省略/,2006-12.