论文部分内容阅读
近几年来,随着数据流量相关服务的提高,视频直播、在线会议等应用使用率增多,而这些长视频多媒体应用的运行方式与网络中的组播结构非常相似,即都为多个客户端同时访问一个视频源,而多个客户端同时的存在就可能会出现不同客户端有不同需求的情况,除此之外,多个客户端硬件设备的差异化,和网络本身存在的不稳定性都对上述的长视频多媒体应用的发展带来了新的挑战。SVC(Scalable Video Coding,可伸缩视频编码)是一种特殊的编码方法,它可以将一个视频编码成若干个视频流,其中包括单个基本层视频流和多个加强层视频流,控制发送视频的层数就可以实现不同终端的需求。然而,由于传统网络中的交换机对多媒体视频流的透明性,使得SVC视频流在传统网络中很难实现异构传输。SDN(Software Defined Network,软件定义网络)是一个很有发展前景的技术,它大大地便捷了网络流的管理,也为SVC视频流所遇到的瓶颈提供了新的解决思路。本文根据长视频分发的基本需求,提出了两个分层组播生成树算法,并设计和实现了一个基于SDN的可控分层组播系统架构。首先,提出了分支节点生成树算法和割点生成树算法,这两种算法都可以实现分层组播流的分发,并动态调整视频流的层数。此外,分支节点生成树算法主要应用于网络节点和链路资源相对珍贵的情况,比如想使用较少的交换机和网线来实现一个组播;割点生成树算法主要是应用于网络带宽资源相对匮乏的情况,比如网络情况不太好而使用带宽资源的终端又较多的时候。其次,介绍了基于SDN的分层可控组播系统架构,然后对各个模块分别进行了说明。其中视频服务器主要用来编码SVC视频流和传输SVC视频流,管理服务器主要通过收集网络信息和用户信息,根据分层组播生成树算法建立逻辑组播树,SDN控制器主要是提供转发规则给OpenFlow交换机,进而实现具体数据的转发。最后,进行了对比仿真实验,测试分层组播系统架构的可行性和两种算法的性能。实验结果表明,视频分发系统架构可以实现分层组播流的分发,分支节点生成树算法可以提高整个网络的树消耗,而割点生成树算法可以提高整个网络的链路带宽的使用效率。