基于P2P流媒体的广播电台直播系统的设计及应用

  • 来源:传播与制作
  • 关键字:P2P,流媒体,广播电台
  • 发布时间:2013-08-23 12:52

  【摘要】近年来,随着宽带网的飞速发展,IPTV、移动3G、高清电视等新技术给广播电视带来机遇和挑战,广播电台做为传统媒体一直是以调频发射手段来传播节目,由于覆盖范围受限等技术缺陷,很多广播电台着力发展网络视音频广播,以此拓展广播的收听范畴。流媒体在语音及视频互动方面的优势越受到广播人关注,其中基于P2P网络结构的流媒体技术成为当前一大热点。流媒体能很好的改善网络的带宽利用效率,提高终端连接数,进一步整合和利用网络资源。

  P2P技术采用完全分布式结构,该技术弱化了服务器的作用,网络中的节点既可以获取其他节点的资源或服务,同时又是资源或服务的提供者。本文针对提高用户收听收看质量的需求与降低骨干网带宽消耗的矛盾,介绍P2P技术的特点、网络电台的P2P模型,比较传统网络的不足,设计并应用基于P2P流媒体直播系统的实例。

  【关键词】 电台传统直播系统 P2P 流媒体 客户机/服务器模式(C/S模式)

  广播电台做为传统媒体一直是以调频发射手段传播节目,具有“迅速、廉价、方便、移动收听”等传播优点,由于覆盖范围受限,欠缺互动性等不足,现在很多电台着力发展网站和网络广播,以延伸广播的收听范畴,增加影响力。

  目前,通过互联网站搭建网络直播和点播系统已是常态 ,但是受限于客户机/服务器(C/S模式)这种传统网络模式的限制 ,一台服务器只能支持有限个在线用户,网络接入能力不足制约了网络电台的发展。如果在C/S模式下要解决大规模用户,甚至上万用户同时在线收听收看的问题,不仅需要大量服务器 ,还需要极大的带宽保证。现阶段,客户机/服务器模式无法支持较大规模的网络电台运行,基于此带出P2P模式。

  一.流媒体与P2P技术概述

  流媒体技术简单来说就是一种边下载边播放的实时流技术,与传统的下载技术比较,它可以为用户提供实时播放体验。但由于它的数据仍然是从一个固定的服务器上下载。因此,它的流畅程度还是会受到服务器及带宽的限制。随着用户数量的增加,在一个临界点上,播放体验会快速下滑,且影响到所有的在线用户。通过增加冗余服务器可以在一定程度上缓解这个问题,但不是根本的解决办法。

  P2P是英文Peer-to-Peer(对等)的简称,又被称为“点对点”、“对等”技术,是一种网络新技术,依赖网络中参与者的计算能力和带宽,而不是纯粹依赖于少量的几台服务器。P2P还是英文Point to Point(点对点)的简称。它是下载术语,意思是在你自己下载的同时,自己的电脑还要继续做主机上传,这种下载方式,人越多速度越快。比如A和B都想在C上下载一个文件,此时,A和B都会对C发出连接,C把文件的一部分发送给A,另一部分发送到B,当A和B都接受了不同的两部分,此时A和B就会互相链接,互相交换自己需要的另一部分,这个过程中,A和B就是完全对等的,不存在服务器和用户的概念,这就是一个P2P网络,如果这个网络扩展开,不单单局限于A和B,那么每人都可能是资源发布者也是资源下载者。

  P2P让原来彼此独立的参与者联系起来,通过网络实现实时交互,数据共享。并且是直接的,不经过资源服务器。而不是像过去那样连接到服务器去浏览与下载。因此,P2P流媒体与传统的流媒体区别在于没有集中的中央流媒体服务器,任一节点都可作为种子节点进行广播,每个节点在作为客服端(Client)从别的节点接收媒体数据进行播放的同时,也是作为流媒体服务器(Server)向其它节点提供服务,其服务质量随着整个网络节点数目的增加而提高。

  P2P比较传统的客户机/服务器(C/S)模式只靠单一服务器提供数据下载,其核心概念就是:网络中的每个节点都是对等的。每个节点既是服务器,同时也是受众终端。P2P与C/S模式的对比如下图1所示:

  二.P2P直播系统工作模式

  P2P直播系统采用类似于Bittorrent(比特流)的工作方式,系统结构如图2所示。这是一种基于目录的服务模型,在一个网络系统中,少量的目录就可以为数量众多的对等节点服务。对等点向目录服务注册关于自身的信息(名称,地址,资源和元数据),并通过目录服务器中信息的查询。目录服务器负责接收用户的加入请求、节点管理、读取视频流数据并分发这些数据。具体可以划分成三个功能模块:节点管理器、媒体生成器和分发器。节点管理器负责管理所有加入的节点信息,当有节点加入时,必须向节点管理器提出申请,只有通过验证才能加入直播系统。

  (1)节点N给主节点S(目录服务器)发送请求。

  (2)S收到节点N的请求之后,判断自己的直接子节点数是否已经达到上限。

  (3)如果没有达到上限,则将节点N作为自己的直接子节点。

  (4)如果直接子节点已经达到上限,则通过节点管理器来查询哪个节点最少,然后将节点的地址端口号发送给它的相应直接子节点。

  (5)该节点通过自己的伙伴管理器,判断节点N是否可以作为自己的直接子节点。

  (6)如果可以,则将节点N作为直接子节点并建立连接。

  (7)如果不可以,则将节点N的请求向子节点数最少的分支转发,依次类推,直到节点与某个子节点建立连接。

  (8)节点N被某个节点接收后,向服务器S发送消息,服务器记录下节点N 在网络中的信息。

  媒体生成器则类似于微软的MEDIA ENCODER软件,是一个实时的视频源,包括视音频采集卡和编码软件。它负责按照媒体数据缓冲区中要求的数据量读取ASF文件数据,组装成流媒体数据包传送给媒体数据缓冲区。分发器负责从ASF流中获取数据,并向其直接的子节点进行传输。

  三.实例:构建广东电台城市之声频道P2P网络直播系统

  下面以笔者所在单位广东电台城市之声频道为实例,介绍本台P2P网络直播系统的具体设计及应用,系统架构图如下图3:

  1.直播室构建

  A.利用DJ端电脑进行直播

  节目主持人(DJ)的声音通过话筒、调音台等音频设备混音后,输出到PC机(安装DJ端软件),编码调制成数据流,经局域网登陆流媒体服务器发布平台,光纤接入互联网再通过电台网站服务器集群发布出去。

  B.多套节目同时转播

  采用用多台电脑安装多张声卡,连接多个节目源。然后采用虚拟机技术,每个虚拟机增加一个声卡,然后运行发布端软件,实现多套广播电台同时在线播出效果。

  2.网络及传输部分

  共分为三个部分:视频采集编码(Media encoder)、安装有P2P节点管理的服务器(CSLive SERVICE 2.0)、客户端(peer)。下面分别作出说明:

  视频采集编码部分可以采用常用的编码软件。比如Media encoder 9,由它为P2P服务器提供一个视频源。采集卡的选择可选用常见的OPPREY采集卡。在设置时,需要注意将Media encoder 9设置为“自编码器拉传递”,使P2P服务器可以以mms://ip:port的方式获取到视频数据。具体设置步骤简单易懂不再累述,可以自行尝试。

  P2P流媒体服务器发布平台选用的是CSLive SERVICE 2.0定制版本,该软件可以和Media encoder9完全兼容。功能上集媒体生成器、节点管理器(目录服务)、分发器和播放器等所有P2P的组件于一体。具备了功能比较完善、界面简洁易掌握、安全性高、稳定性好等优点。部分设置如上图4:

  1.在工具菜单中打开其“服务器管理”功能。即启用本机作为一个P2P网络中的节点管理服务器。并在IP地址栏中输入本机的IP地址。然后在服务器选项卡中将刚才启用的“目录服务器”添加进服务器数据库中,这样就在网络上生成了一个P2P管理服务器。下面我们还需要为他添加一个直播的节目源。

  2.在其频道选项卡中单击添加按钮,为P2P服务器定义一个节目的来源。具体参数可以参考设置Media encoder9时得到的mms://ip:port地址。这里需要注意的是服务器一栏必须填入在“目录服务”中定义的IP地址,这样发布的视频才能被节点管理器和分发器所获取并发布出去。节目版块生成后即可添加音频文件并生成播出节目单,具体参考图5。

  3.当自定义的频道开始运行后,既可以单击频道的“发布代码”选项卡获取由系统自动生成的该节目的P2P公告地址了。具体格式可以参考http://P2PserverIP/tv/?k=。通过这个地址客户端就可以收看实时的视频直播了。

  对于客户端CSLive service2.0提供了两种播放方式。一种是使用客户端软件直接播放。另外一种是将发布代码嵌入网页浏览器的方式进行播放。对于网页嵌入代码方式,须在网页中内嵌以下代码:

  

  

  

  

  

  VALUE=”http:// 219.136.255.150/tv/?k=b1e014e4b722bdc8648324cf63a6689a “>

  

  

  

  

  “URL”的值就是节目的公告地址了,CODEBASE中定义的是CSLive网页播放插件的下载地址,第一次播放时会自动从这个地址下载插件,以后不需要了。

  四.应用及效果

  P2P流媒体服务器最大优点就是尽最大可能节省直播带宽,而又能最大程度保证用户的收听收看质量。每个受众从其它用户那里通过P2P方式取得音频视频数据流,大大减少来自媒体服务器的负担,最大可能节省直播端直播带宽。经实践并应用后感觉系统比较稳定,音频开始缓冲时间基本控制在10秒内,视频播出清晰流畅,极少出现中断现象,而在线收听受众数量明显增加了很多。

  以下表格参考数据按256kb/s【以音频最大传输值为参考】直播码流计算:

  五.P2P流媒体直播系统的安全管理

  由于P2P技术具有自由性、分布性、匿名性等特点,使P2P网络的各对等体可自由的接入网络,那么P2P应用可能长时间地连续运行,导致网络管理人员无法对网络使用的高峰期和空闲期作出准确的预测和网络性能评估,不能在网络使用高峰期到来之前提前作好网络管理和维护的准备工作,让网络管理变得复杂与困难。

  目前解决主要方法有:

  (1)通过端口识别、协议特征码识别、深度包检测技术识别和流传输特征识别技术等进行流量识别。

  (2)利用流量计时、流量计费、限制最大连接数和TCP/UDP端口过滤等手段进行流量控制。

  (3)通过对P2P应用的服务器的IP进行网址过滤,禁止某些不良IP地址,以达到对恶意P2P应用的限制,利用专家数据库技术等手段垃圾信息的困扰,以便更容易识别病毒、木马程序,减少恶意程序在网络中的传播。

  六.小结

  广东电台城市之声网络直播系统从构建运行至今已经超过1年了,期间多次参与重大节目的直播,效果明显,确保安全播出,得到领导和同行的认可。同时我们还根据不同听众的需求开播了多套定制节目,受到听众的欢迎,扩大收听层面。实践验证了采用P2P流媒体技术的直播系统可以大大地提高播出效率和线路容量,使在线数量从原来传统模式的200人(码率200Kb/s)左右直线上升到千人(码率400Kb/s)以上,今后还有上升的潜力。总之,在竞争如此激烈的媒体业界,流媒体技术将成为广播电视实现过渡到全媒体的重要手段之一。

  马克辛 广东电台

……
关注读览天下微信, 100万篇深度好文, 等你来看……
阅读完整内容请先登录:
帐户:
密码: