论文部分内容阅读
组播技术处理了单播和广播在带宽资源浪费等方面存在的问题,应用层组播处理了 IP组播扩展性差、部署困难等问题。应用层组播技术采用网络终端设备实现数据转发的功能,解决了 IP组播依赖路由器的问题,因此在组播媒体发布内容方面有良好的应用前景。终端媒体设备存在稳定性差的问题,可以随意退出组播树,在传输数据的过程中容易中断,因此由终端设备所形成的应用层组播树很不稳定。应用层组播的稳定性问题,一直以来都是研究的重点问题。本文提出基于效率稳定度的应用层组播算法(A-EBS)。首先分析了影响计算机功能的四个组件:CPU、内存、显卡、磁盘,然后阐释了本文采用CPU性能代表本台计算机性能的原因。全方面考虑节点的时延以及在线时间,给出节点的基于效率稳定度(Efficiency-based stability)的定义,最后对基于效率稳定度算法进行详细描述,并通过对实验结果的分析,证明该算法在降低平均时延和提高组播稳定性方面有较好的作用。目前市场上的直播软件系统有很多,但是绝大部分软件的代码都不是开源的,而且是基于一定的框架所编写的,这样在做实验的过程中,直接使用别人编写好的直播系统就要受到它所使用的框架的约束,更改起来很困难,可扩展性极差。为了解决这个问题,本文实现了基于FFMpeg的流媒体直播系统。基于FFMpeg的流媒体直播系统从最底层的对视音频数据的采集、传输、编解码和播放做起,在以后可以根据实验者的需要随意改动而不受框架的约束,提高了系统的可扩展性。基于FFMpeg的流媒体直播系统在底层客户端采用FFMpeg视音频编码技术实现视音频数据的采集、传输、编解码和播放等功能,在上层的服务端,采用本论文提出的基于效率稳定度算法形成组播树,并对组播树进行相关操作。本论文对基于FFMpeg的稳定应用层组播流媒体直播系统的整体框架、服务端实现的功能和客户端功能实现的过程进行了详细的描述。在论文最后,总结整篇论文,提出该系统的下一步完善方向。