发明内容
本发明针对基于点对点数据传输的媒体播放器的播放效果与各种异常情况的处理,实现小规模内的基于点对点数据传输技术的环境模拟配置与测试覆盖。
本发明提供了一种基于点对点数据传输的媒体播放器测试方法,其中该方法包括以下步骤:步骤(1)搭建网络架构,包括配置内容分发网络CDN服务器和Tracker服务器、节点终端;步骤(2)配置每个节点终端以便能够控制检测点对点数据连接情况与下载速度;步骤(3)直接替换播放页面中的swf文件为测试版本的swf文件,并且可以模拟各种请求超时或者请求失败;步骤(4)设置节点终端的上传下载速度为0,每到一个分片时间点的时候,取消一个节点的上传下载速度限制;查看Tracker上节点的连接情况;步骤(5)记录下通过点对点数据传输下载到的数据量,最后计算点对点数据传输效率。
进一步,步骤(4)替换为:断开节点终端peer之间的连接,分别设置上传速度为0,下载速度为0,观察基于点对点数据传输技术的媒体播放器的下载是否能正常转到CDN服务器或者其他节点、媒体播放器的播放是否正常;分别限制上传和下载速度,当上传和下载速度小于预定阈值时,点对点数据是否切换到其他节点或CDN服务器。
进一步,所述其他节点指的是下载资源完整、网速高于预定阈值的节点终端。
进一步,步骤(5)中所述记录下载的数据量进一步包括:在截获数据包之前设置具有过滤规则的过滤器,用于捕获指定的数据包以便用于数据包分析;分析捕获的互联网数据包;显示截获的每个数据包的信息;该信息包括所属协议信息和数据包内容;进而记录点对点之间的通信数据量。
进一步,步骤(5)中所述计算点对点数据传输效率使用下式来计算:
其中total_downbytes为从服务器下载的流量,total_original_downbytes为总有效下载的流量。
本发明还提供了一种基于点对点数据传输技术媒体播放器测试系统,该系统包括:配置有CDN服务器和Tracker服务器、若干个节点终端;其中Tracker服务器,运行tracker程序,用于实现节点终端之间的通信调度与维护;CDN服务器,用于提供视频直接下载源,提高用户访问网站观看视频的速度;节点终端可以在其他节点下载视频或者直接在CND服务器下载视频;配置每个节点终端以便能够控制检测点对点数据连接情况与下载速度的模块;直接替换播放页面中的swf文件为测试版本的swf文件的模块,并且该模块可以模拟各种请求超时或者请求失败;模拟模块,设置节点终端的上传下载速度为0,每到一个分片时间点的时候,取消一个节点的上传下载速度限制;查看Tracker上节点的连接情况的模块;计算模块,用于通过记录下通过点对点数据下载到的数据量,最后计算点对点数据传输效率。
进一步,模拟模块还可以:断开节点终端peer之间的连接,分别设置上传速度为0,下载速度为0,观察基于点对点数据传输技术的媒体播放器的下载是否能正常转到CDN服务器或者其他节点、媒体播放器的播放是否正常;分别限制上传和下载速度,当上传和下载速度小于预定阈值时,点对点数据是否切换到其他节点或CDN服务器。
进一步,所述其他节点指的是下载资源完整、网速高于预定阈值的节点终端。
进一步,计算模块中所述记录下载的数据量进一步包括:在截获数据包之前设置具有过滤规则的过滤器,用于捕获指定的数据包以便用于数据包分析;分析捕获的互联网数据包;显示截获的每个数据包的信息;该信息包括所属协议信息和数据包内容;进而记录点对点之间的通信数据量。
进一步,计算模块使用下式来计算:
其中total_downbytes为从服务器下载的流量,total_original_downbytes为总有效下载的流量。
本发明提出的方法和系统,使用了多种工具的配合,用较少的资源尽可能多的模拟实际当中的各种情况,有以下特点:
1.覆盖率高,基本覆盖了绝大多数的情况与路径,包括文中未提及的更多种情况;
2.使用起来方便,可以在短时间内搭建起来,并可高效的同时执行多个用例,解决很多无法正常模拟的场景所带来的测试难度;
3.分析结果准确;
4.真实度高。
具体实施方式
参照图1,本发明的基于点对点数据传输的媒体播放器测试方法包括以下步骤:1、配置基于点对点数据传输技术的测试环境;2、场景模拟,观察效果;3、计算点对点数据传输效率。
1、配置基于点对点数据传输技术的测试环境。
在测试之前,首先做的是配置的准备,因为要控制节点之间的通信,所以必须安装辅助工具,来控制节点之间的上传,下载的速率,此处用到了NetLimiter软件工具(现有的软件工具),结合这个工具可以很明了的控制节点间的通信;因为需要真正意义上的测试最新版本的基于点对点数据传输技术的媒体播放器,所以必须把页面的加载的媒体播放器替换为需要测试版本,此处运用fillder(现有的软件工具)来做替换,具体使用下面有说明;测试的目的就是要查看基于点对点数据传输技术的网络通信效果是否可用并正常,以及有效节省CDN服务器的下载量,增大节点之间的点对点数据传输量,从而有效的节约带宽,因此需要对本次测试的基于点对点数据传输技术的数据下载量进行统计,此处运用到了Wireshark软件工具(现有软件)来分析。
配置小规模的基于点对点数据传输技术的测试环境主要包括以下两个部分:
(1)整个网络架构的搭建
配置CDN服务器和Tracker服务器,根据所提供的测试代码,进行相应的配置,准备5台节点终端机。这里的5台只是示例,节点终端机的数量还可以是其他。其中,Tracker服务器,运行tracker程序,用于实现节点终端之间的通信调度与维护;CDN服务器,用于更快更稳定的视频下载源,提高用户访问网站观看视频的速度。
整个网络架构搭建好后,就构成了如图2所示的小规模基于点对点数据传输技术的网络环境的拓扑图,该拓扑展现了所搭建的环境的整体,peer代表节点终端,Tracker代表运行Tracker程序的服务器,CDN代表直接下载源;peer与Tracker之间会有大量通话,通过Tracker的调配,peer之间可以实现点对点数据传输的资源共享的。一部分peer会直接在CND服务器下载视频。peer节点与Tracker和CDN服务器结合在一起,构成了一个小型的点对点数据传输架构。
(2)每个peer点的配置
每个节点终端上需要安装NetLimiter软件,利用这个软件来检测点对点数据连接情况与下载速度,在Compact选项菜单下,可以观察到节点之间的连接情况和下载速度,可以直接来控制每个下载任务对Internet的访问以及流量分配情况。例如,可以用NetLimiter来为网络连接限定其上载和下载速度。
还需要安装fiddler软件,这个软件可以直接替换播放页面中的swf文件为测试版本的swf文件,并且可以模拟各种请求超时或者请求失败;具体操作如下:在AutoResponder选项下,新建一个替换规则,如:替换页面中的player.swf地址为c盘C:\Program Files\SecureCRT\download\player_ss.swf这个目录下的测试版本的swf文件。
安装Wireshark,用于分析通信数据。Wireshark是一个现有的网络封包分析软件。网络封包分析软件的功能是撷取网络封包,并尽可能显示出最为详细的网络封包资料。
2、场景模拟,观察效果,其次要做的就是尽可能真实的模拟基于点对点数据传输技术的场景。
场景一、此处完成方法是在每个节点终端都打开同一个视频,在每个分片点(每个网络视频有多个分片点)时间(例如每个分片点时间小于等于7分钟,该时间可以预先设置)节点终端逐一加入,效果理想的话,会看到后加入的节点终端所下载资源的ip地址为其他有效节点;此处实现方法用Netlimit软件工具设置节点终端的上传下载速度为0,每到一个分片时间点的时候,取消一个节点的上传下载速度限制;查看Tracker上节点的连接情况,节点终端上播放视频的流畅和完整也是重要的观察指标。
场景二、用NetLimiter断开peer与peer的连接,分别设置上传速度为0,下载速度为0,观察基于点对点数据传输技术的媒体播放器的下载是否能正常转到CDN服务器或者其他节点;媒体播放器的播放是否正常。
场景三、分别限制上传和下载速度,观察当上传和下载速度小于预定阈值时,点对点数据会不会切换其他节点或CDN服务器。整个连接控制如图3所示。
3、计算基于点对点数据传输技术的传输效率,记录下通过基于点对点数据传输技术的数据下载量,Wireshark工具可以实现,最后计算出结果。
具体实施例的描述如下:
(1)首先作如下配置:
基于点对点数据传输技术的媒体播放器:替换页面的swf文件为测试版本的swf文件;
节点:5个节点,都处于同一局域网内,并且全部开放UDP端口;
视频:爱情公寓第二季第八集,8个分片,90.69MB,每个分片长<=7min;
节点加入规则:每隔分片长时间(即七分钟左右)加入一个新的节点;
(2)场景模拟:
一,用NetLimiter断开peer与peer的连接,分别设置上传速度为0,下载速度为0.观察基于点对点数据传输技术的媒体播放器的下载是否能正常转到CDN服务器或者其他节点、基于点对点数据传输技术的媒体播放器的播放是否正常;
二,分别限制上传和下载速度,观察当速度小于预定阈值时,点对点数据会不会切换到其他节点或CDN服务器。
其他节点指的是下载资源完整、网速高于预定阈值的节点终端。
用Wireshark分析观察流量统计的过程是这样的:
1、用Wireshark截获数据包之前,应该为其设置相应的具有过滤规则的过滤器,可以只捕获感兴趣的数据包以便用于数据包分析。过滤规则可以例如是数据包所属的协议(TCP、UDP等等)、源地址、目的地址、目的设备的端口号(请求类型)、数据包的传输方向、既定数据包的署名等等。
2,用Wireshark分析捕获的互联网数据包。
数据包列表,可以显示截获的每个数据包的信息;该信息包括数据包所属的协议信息以及数据包内容。使用Wireshark可以很方便地对截获的数据包进行分析,包括该数据包的源地址、目的地址、所属协议等。进而可以实现基于点对点数据传输技术的数据量的统计。
(2)基于点对点数据传输技术的传输效率计算
通过基于点对点数据传输技术的节省的流量比例可根据表1计算:
表1
在表1中,总有效下载量为168552KB+395952KB=551M。
计算基于点对点传输技术节省的流量比例(即基于点对点传输技术的传输效率),使用下面公式:
其中total_downbytes为从服务器下载的流量,total_original_downbytes为总有效下载的流量。因此基于点对点传输技术节省的流量比例为70%。
此处已经根据特定的示例性实施例对本发明进行了描述。对本领域的技术人员来说在不脱离本发明的范围下进行适当的替换或修改将是显而易见的。示例性的实施例仅仅是例证性的,而不是对本发明的范围的限制,本发明的范围由所附的权利要求定义。