基于IP组播技术的节目源传输方式上的探索
何俊 池钟填 林大桥
(国家新闻出版广电总局七三一台)
摘 要:传统上,电台的节目源信号是通过卫星广播系统传输,本文设想通过计算机网络互联技术、组播技术与VPN技术,构建节目传输网络,把节目源从局端传输至各台站,并通过各台站的RP路由器转发到发射机的音频处理器,这种传输方式更安全、经济和灵活,是节目源传输方式上的一次全新的探索,并借用eNSP模拟器来验证构建的节目传输网络模型的可行性。
关键词:VPN;组播;eNSP模拟器;Linux编程 1. 引言21世纪是网络互联的时代,一切信息的传递要顺应这一时代巨变。一直以来,远距离节目源信号都是通过卫星广播系统来传输的,卫星广播系统是单向网络,相对成本高,除了有较大的延时外,干扰问题也一直困扰着卫星传输系统。本文设想通过计算机网络互联技术、组播技术与VPN(Virtual Private Network虚拟专用网络)技术,构建节目传输网络模型,这一解决方案的优点是:双向网络,相对成本低,延时也较小,由于是有线传输,不易受天气影响,大部分线路采用光缆传输,无辐射,被干扰可能极小,误码率也极低。由于IP组播的特征是组播流经由路由器复制转发,而互联网中的路由器并非全都能很好的支持IP组播协议,这一直制约IP组播技术应用的推广。在节目传输网络中,只是从局端的路由器到台站端的路由器之间使用VPN通道,其余皆在局域网中,而VPN通道应用的是单播技术传输,因此本次网络规划避开了IP组播应用的死穴。同时VPN价格的平民化使这一方法在经济上来说也是可行的。 2. 为何选用VPN如果我们想要建立一个跨跃多个省份的相对独立的网络,主干网络的建设只有通过DDN(Digital Data Network)数字数据网、卫星传输网络、FR(Frame Relay)帧中继和VPN四种方式来做。而建立一个相对独立的网络,除了安全、稳定、快捷这些要素外,另一个要素就是经济成本,而VPN在这一点上异常突出。VPN是利用互联网和严格分组加密技术建立的专用网络。VPN 在结构上来说,就是建立一台VPN服务器,包括两张网卡,内网卡与内网相连,外网卡与公用网络相连,所有进出外网卡的通讯数据进行加密。相对于传统的卫星通讯、帧中继与DDN技术,有着显而易见的优点:安全性与稳定性:卫星通讯安全是建立在其入侵门槛高的基础上的,但是因其转发器在天上,所以入侵网络的地域变得不可控制,并且卫星通讯还受到时太阳风和大气层的影响,如日凌、雨衰和雪衰,误码率较高,同时卫星通讯的延时较长;DDN 完全由电信运营商建立的私有网络,误码率低,延时短,但数据传输是明码方式,安全性是建立在对运营商绝对信任的基础上;FR是X.25简化后的技术,提供更大的帧单位,因此是更快速的分组交换,提供基于光纤的数据链路层服务,误码率极低,延时更短;VPN一般采用IPSce (IP Security)协议来对分组进行加密,加密位高达192位,并应用动态密钥技术,即便要破解,其设备成本和时间成本也是天文数字,即使最终破解了,其时间上也过秘密的时效,经济成本上也是不划算的,在这个意义上说,其加密是单向不可逆的,其误码率、延时一般。经济性:卫星传输成本高昂;2M带宽的DDN当前的费用每月在七、八千元左右,由于其受众小,而网络提供的是永久性连接电路,维护成本高,物理上的绝对“私用性”,使得其价格下降空间有限;FR方式虽然比DDN便宜,一般为两、三千元,但是还是太高;而同为2M带宽的VPN价格每月在二、三百至一千元左右(VPN有多种传输方式),其受众大,是在公用网络基础上提供的是虚拟专用网,只在逻辑上保证用户的专用性,维护成本低廉,还有下降空间。灵活性:卫星通讯的架设一般不受地域限制,但也要报批手续;DDN 与 FR的申请手续和设备初始化非常麻烦,时间较长,网络的扩展和变更要由网络运营商完成,非常不便;而VPN 可以由用户自己构建,同样的扩展和变更可由用户自己完成,非常方便。例如:员工出差外地,想访问内网,只需通过一部智能手机建立VPN连接就可轻松访问,这一点是其它方式无法办到的。通过以上3 点的比较说明,VPN技术是局端与台站端联接的较为理想的方式。3. 节目传输网络模型构建实验真实的网络构建,需要花费大量的时间与金钱,因此本次IP组播模型的构建实验采用了华为的eNSP模拟器(ver:1.2.00.330)进行模拟实验,以验证该网络模型(图1)的可行性。
图 1 节目传输网络拓扑图
eNSP是一款由华为提供的免费的图形化网络仿真工具平台,它将完美呈现真实设备实景,支持大型网络模拟。理论上,如果组播模型设计在虚拟环境下实验成功,那么真实环境下一定也是可行的。本次实验验证时,采用华为MCS作为节目源组播服务器,采用普通PC作为接收组播的工作站;路由器采用华为AR1220,交换机采用华为S5700,都是华为的中端产品,有一定的代表性;局端的路由器AR1到台站端的路由器AR2与AR3之间实际环境中是采用VPN连接,但本实验中,采用直连的方式;所有这些都不影响实验数据的有效性,并不影响本次实验对真实环境下的网络模型的论证。3.1. 目的主机与源主机的互联互通本文中的实验模型设计,采用组播源放在骨干区域(area 0), 组播源(即源主机)可以有多个,为了论证的简洁性,故采用一个组播源,但这并不影响该网络模型的有效性;各台站为下层区域(area 1、area 2、area3等),接收节目源的为各终端节点,即为目的主机。通过IP协议实现源主机与目的主机的互联互通,路由协议采用OSPF(Open Shortest Path First开放式最短路径优先)路由协议。灵活应用配置命令,按图1在eNSP模拟器上的完成网络的基础配置,并对CLIENT1、CLIENT2、CLIENT3、CLIENT4与CLIENT5进行IP信息配置,配置过程从略,配置完成后,在CLIENT5上测试与CLIENT1的联通性,结果如图2。图2 测试连通图
同理,可测得CLIENT1、CLIENT2、CLIENT3、CLIENT4与CLEINT5之间联通性良好。IP组播数据复制转发依赖于单播路由表,因此,一定确保网络的互联互通。3.2. 交换机与路由器的组播配置依据图1以及对真实传输网络环境的考量,对于IP组播协议的选用,本模型采用PIM(Protocol Independent Multicast 协议无关组播) 协议,其特点是以AR1为汇合点RP,CLIENT1以最短路径将报文发送至RP路由器,再由RP路由器沿最短路径将数据发送到各个接收端。通过 bootstrap协议来指定和宣告RP,并指定C-BSR和C-RP路由器;由于全网是广域网,且带宽有限,所以在全网所有路由器与交换机上开通组播功能并设置为PIM-SM模式;在与PC相连接的交换机上开启IGMP,并与PC相连接的交换机端口开启IGMP-SNOOPING以节约资源;最后在area1和area2的路由器与area0的路由器(或三层交换机)之间的接口上建立MSDP邻居关系,以实现组播RP的备份与负载均衡,即实现Anycast Rp。3.3. 实验验证本模型采用VLC media player播放器作为组播数据的发送与接收程序,VLC是一款免费、开源的跨平台多媒体播放器,可播放大多数多媒体文件。 通过安装VLC 播放器作为服务端与客户端播放程序,并对CLIENT1、CLIENT2、CLIENT3、CLIENT4与CLIENT5进行组播设置,设置关键是组播地址要加入同一地址,即同一个组播组。点击CLIENT1的播放按钮,并让CLIENT2与CLIENT4加入同一组播组后,点击播放按钮,可以得到图3。其中:第1个画面是源主机的播出画面,第2个画面是CLIENT2上的接收画面,第3个画面是CLIENT4上的接收画面;第2个与第3 个画面几乎是同步的,传输的质量也很好,没有掉帧,画面也很清晰,但是,它们与第1个画面可以看出有1秒左右的延时,这是在虚拟传输网络模型中得出的,真实的传输网络环境中的延时是由真实的交换机与路由器决定的,其网络延时相对于传统卫星传输网络还是比较小的;同时可以听见,声音质量也很好;因此该模型有着很好的传输效果。组播协议建立组播分布树将组播分组转发到组播成员。通过对路由器与交换机的参数验证,可进一步获知实验情况,如果实验不成功,也可据此排查故障。首先,要知道组播分布树从CLIENT1到CLENT2的情况,可以通过display multicast forwarding-table命令依次查看AR1、AR2、AR3与LSW1上的组播转发表是否建立,以LSW1为例(其它雷同,不再赘述),如图4:图3 节目传输测试图
图4 LSW1上的组播分组转发表
由图4可知,其中入口是vlanif52,出口仅有vlanif20,而没vlanif30,说明IGMP-SNOOPING起了作用,对没有加入组播的节点并没有转发,节约了资源。如未建立组播转发表,就要通过display multicast routing-table命令查看组播路由表有没有建立,还是以LSW1为例,如图5:图5 LSW1上的组播路由表
显然,图5组播路由表已建立,且表项中显示入口是vlanif52,出口仅有vlanif20。其次,通过display pim routing-table命令查看PIM路由表,还以LSW1为例,如图6所示。最后,要知道组播分布树中路由器AR1与AR3上的MSDP对等体建立情况,可以通过display msdp brief命令查看,如图7与图8所示。通过以上实验验证,节目传输网络模型可以实现节目源的传输要求,无论是传输的图像、声音,还是交换机与路由器上的参数,都工作良好,因此按此模型构建的真实网络也一定可以工作良好。 4. 基于Linux 的服务端与客户端程序设计思路在前文实验中,采用了VLC 播放器,并基于微软的windows系统做了组播的实验,实验证明节目源在网络中可以以组播方式高效稳定传播。但是为了进一步提高系统的稳定性,以及进一步降低成本,本文继续讨论采用基于linux 的服务端与客户端程序。为实现在不同主机进程间的通信,我们采用套接字(socket)机制,它可以实现多个客户同时连接到一台服务器上。服务端程序要有如下几个功能组成,首先要创建一个套接字来实现UDP通讯,其次要有设置加入组播的地址的功能,再次,要有设置发送组播消息的源主机的地址的功能,并把本机加入组播地址,再次,要有绑定自己的端口和IP信息到socket上的功能,最后,要有循环接收网络上来的组播消息的功能。客户端主要包含如下几个功能,首先要创建 socket 来实现UDP通讯,其次,要有设置服务端的端口和IP地址(组播地址)的功能,再次,要有绑定自己的端口和IP信息到socket上的功能,最后,要有循环接收用户输入的消息并发送组播消息的功能。图6 LSW1上的PIM路由表
图7 AR1上的MSDP对等体状况图
图8 AR3 上的MSDP对等体状况图
5. 结束语为更好地传输节目源,对节目源传输方式进行全新探索,本文提出两点全新的思路:一是基于计算机网络的新型节目源传输方式,这有别于传统的短波、微波中继和卫星广播电视传输,它更加经济、稳定和 安全,随着互联网的发展,它有着先进的技术支持,因而具有着强大的生命力;二是对于设想的新的节目传输网络模型,采用了eNSP模拟器这一新的软件工具,通过模拟实验,证实其可行,大大降低了论证的难度,缩短了论证的时间。事实上,IP组播技术已经广泛应用于小型网络中的实时交互系统(如视频会议系统)、实时非交互系统(如数据广播)等,可行性显见;IP组播协议是一种“尽力而为”(best-effort)协议,IP组播必然存在数据包丢失和乱序问题,传输延迟和安全性不足不可避免,而安全性更是技术难点,这在一定程度上制约着IP组播的应用,但是随着时间的推移,这些问题一定是会被克服的,IP组播技术一定会拥有更广阔的应用前景。
[参考文献]
[1] 周伟,梁鹏.2014版计算机网络高分笔记(第2版)[M].北京:机械工业出版社;2013.4:109-111,131-135,140-141.[2] (美)特尼博姆(Tanenbaum,A.S.).计算机网络(第4版)修订版[M].北京:清华大学出版社;2008.5:392-398.[3] 王达.Cisco/H3C交换机配置与管理完全手册[M].北京:中国水利水电出版社;2009:763-787,860-867,894-937.[4] Neil Matthew Richard Stones. Beginning Linux Programming(Third Edition)[M].北京:人民邮电出版社;2007.7:502-533. 编辑:中国新闻技术工作者联合会
评论 点击评论