IPTV系统的VOD与TV业务性能测试
IPTV的未来发展正在成为业界的焦点话题。据市场研究公司MRG的统计,全球IPTV用户将由2004年的200万增加至2010年的2000万,预计全球IPTV市场2005~2010年的复合增长率为102%。 在国内,IPTV产业尚处于试验阶段,中国电信、中国网通、中国铁通正在积极开展IPTV试验。
目前已有很多设备厂家提供IPTV系统平台和设备,业界公认IPTV业务包含两种基本业务:VOD点播和TV直播。国内IPTV的发展如火如荼,对于 IPTV系统的测试也亟需进行规范,本文拟将对IPTV系统的这两种基本业务的性能测试进行简单的探讨。本文仅仅考虑端到端的性能测试,测试的观察点在于 用户侧,不考虑服务器端的分级缓存性能。
由于VOD点播网络和TV直播网络在网络结构上的不同,VOD分发需要依靠CDN网络,而TV的分发则需要依靠组播网络,不需要CDN网络进行缓存,基于此,该两种业务性能测试的着重点也不尽相同。
一、VOD业务性能测试简介
VOD节目通常采用点播方式进行传送。点播用户可自由控制节目的进度,终止节目的播放,但每个点播用户都需要占用一定的网络带宽,因此并发用户数受到网络带宽、服务器性能的限制。
VOD业务性能的测试指标主要有最大并发流数目、带宽波动、所使用的平均带宽、丢包率和平均响应时间。
最大并发流数目:流媒体系统在同一时间内所能够支持的最大在线用户数目,且要求每个用户都可以正常收看完整的视频节目。在用户数目逐步增加到最大值之 前,系统不会使已经在线的用户因为新增加了用户而出现不能够获得服务的情况。有的视频系统虽然能够提供数目巨大的并发流,但是失败的数量很多,由于用户大 都采用TCP,因此重传以后并发流数目并没有降低,但是对于原来已失败的单个流而言,该用户已经无法继续得到视频服务。因此,最大并发流数目应该是视频系 统所能够支持的有效的、能够同时在线正常观看节目的最大用户数目。
带宽波动:视频文件在播放过程中,由于画面的变化会造成媒体流的带 宽变化。例如对于课堂教学类节目而言,连续的画面前后变化不大,故节目码速率也比较恒定,带宽波动相对较小;对于运动类节目而言,连续的画面前后变化较 大,故节目码速率变化也相应较大,带宽波动也随之较大。节目码速率波动的大小对视频服务器的吞吐量是个严峻的考验,如果过多的用户点播较高码速率的节目, 则很有可能出现服务器所能支持的用户数减少的现象,或者视频服务器会降低节目流的输出带宽。
所使用的平均带宽:在用户观看节目过程中,所有用户使用的带宽的平均值,该值越大说明流媒体视频系统所能提供的带宽能力越强。
丢包率:用户在接受视频点播服务的时候需要从服务器获取视频文件,在视频文件传输过程中是否发生丢包的情况。丢包率的数值一般比较小,但是对用户的影响 非常重要,尤其是目前使用的压缩比率都比较高,即使丢失很少的视频包也会影响到用户的观赏甚至出现断掉连接的现象。视频点播端到端的丢包率上限不应该超过 0.1%。
平均响应时间:用户从发出点播请求到得到视频服务的时间总体分布情况。当然,平均响应时间是越短越好。一般而言,视频点播端到端平均时延不应超过2s(暂定)。
二、TV业务性能测试简介
TV节目通常采用组播方式进行传送。组播是一种允许一个或多个发送者(组播源)一次、同时发送单一的数据包到多个接收者的网络技术。组播源把数据包发送 到特定组播组,而只有属于该组播组的地址才能接收到数据包。在IPTV里,组播源往往仅有一个,即使用户数量成倍增长,主干带宽也不需随之增加,因为无论 有多少个目标地址,在整个网络的任何一条主干链路上只传送单一视频流,即所谓“一次发送,组内广播”。组播提高了数据传送效率,减少了主干网出现拥塞的可 能性。对于TV系统而言,其所能够支持的用户数目仅仅受到接入网络能力的限制,与前端推送系统的推送能力无关。
因此,TV业务性能的主要测试指标有所推送的最大频道数目、频道平均带宽、平均频道切换时间、平均频道离开延时、平均频道加入延时、频道重叠时间和频道间隔时间。
所推送的最大频道数目:流媒体系统所能够提供的最多频道数目,用户能够在很短的时间内遍历所有的频道。
频道平均带宽:每个频道节目所占用的带宽。标清节目(SDTV)和高清节目(HDTV)所占用的带宽不一样,HDTV节目所占用的带宽远远高于SDTV节目的带宽。
平均频道切换时间:从发出IGMPleave消息直到接收到所请求频道的第一个组播包之间的时间。由于在IP网络上TV节目的频道切换只能通过IGMP 来实现,相比之下,传统电视机的频道切换则要快很多。因此,根据个人主观感觉,通常IPTV频道切换时间不应超过2s(暂定),否则用户难以忍受频道切换 的等待时间。目前,IPTV频道切换时间过慢也是急待解决的一个问题。
平均频道离开延时:从发出IGMPleave消息直到接收到该频道的最后一个组播包之间的时间。通常频道离开延时越短越好。
平均频道加入延时:从发出IGMPjoin消息直到接收到该频道的第一个组播包之间的时间。通常频道加入延时越短越好。
频道重叠时间:如果系统频道切换采取接收到所请求频道的组播包之后才停止原频道的组播包的方式,则频道重叠时间即指接收到所请求频道的第一个组播包与接收到原频道的最后一个组播包之间的时间间隔。
频道间隔时间:如果系统频道切换采取先停止原频道的组播包再接收所请求频道的组播包的方式,则频道间隔时间即指接收到原频道的最后一个组播包与接收到所请求频道的第一个组播包之间的时间间隔。
三、其他考虑
除了以上所讨论的性能测试指标之外,还有一些实际因素需要考虑并加以测试。
系统的稳定性。由于IPTV视频系统大部分任务是提供娱乐性节目,用户在观看娱乐节目的过程中更注重节目的整体性和连贯性,因此,稳定性对于视频系统而 言是十分关键的一点。用户在观看喜欢的视频节目时都带有浓厚的感情色彩,任何断流的情况都会极大地影响用户的欣赏效果,例如在用户观看电视剧的时候出现黑 屏等现象。IPTV视频系统的稳定性包括:稳定的最大并发流数目/节目数目、稳定的节目带宽、长时间工作的稳定性。
网络损伤因素。网 络中的各种损伤对视频节目质量影响极大,网络中偶尔出现的损伤直接影响到用户对该视频节目的心理接受程度,其最直接的影响就是用户对视频图像质量的主观评 价降低,例如网络线路误码率达到10E-6时,VOD节目可能出现明显的马赛克、画面变色、画面迟滞,在这种情况下,用户很有可能会终止此次视频点播。因 此,应该仔细研究网络中各种损伤(包括延时、抖动、丢包、乱序、线路误码)对视频节目质量造成的破坏。在制定IPTV业务相关技术指标的时候,应该充分考 虑到网络损伤对业务质量QoS的影响。
四、结束语
近年来,随着宽带建设的高速发展,视频流媒体服务已经成为互联 网的最主要应用之一,IPTV系统是提供视频服务的一个最主要的切入点,目前,各大运营商已开始逐步向用户提供IPTV业务,IPTV试验网已经在国内多 个城市进行试运行。对IPTV系统业务性能进行测试,是运营商在开展IPTV业务之前需要进行的一个关键步骤。目前,IPTV技术正处在发展初期阶段,由 于IPTV涉及的内容比较多,相关技术、业务仍处在研究过程之中。但随着技术的不断发展,IPTV业务的测试技术也将不断的成熟与完善,这也必然推进国内 IPTV业务的发展。
IPTV系统的VOD与TV业务性能测试的更多相关文章
- 在这个应用中,我使用了 MQ 来处理异步流程、Redis 缓存热点数据、MySQL 持久化数据,还有就是在系统中调用另外一个业务系统的接口,对我的应用来说这些都是属于 RPC 调用,而 MQ、MySQL 持久化的数据也会存在于一个分布式文件系统中,他们之间的调用也是需要用 RPC 来完成数据交互的。
在这个应用中,我使用了 MQ 来处理异步流程.Redis 缓存热点数据.MySQL 持久化数据,还有就是在系统中调用另外一个业务系统的接口,对我的应用来说这些都是属于 RPC 调用,而 MQ.MySQ ...
- P2P网络借贷系统-核心功能-用户投标-业务解说
用户投标是P2P网络借贷系统的核心功能.相对照较复杂,为了更好地梳理业务和技术实现思路,特地具体总结分析下. 输入:用户id-uid.标的id-lid.投标金额-amount 1.依据lid,获得贷款 ...
- P2P网络借贷系统-核心功能-用户投标-业务讲解
用户投标是P2P网络借贷系统的核心功能,相对比较复杂,为了更好地梳理业务和技术实现思路,特地详细总结分析下. 输入:用户id-uid,标的id-lid,投标金额-amount 1.根据lid,获得贷款 ...
- 企业项目实战 .Net Core + Vue/Angular 分库分表日志系统 | 控制反转搭配简单业务
教程预览 01 | 前言 02 | 简单的分库分表设计 03 | 控制反转搭配简单业务 说明 我们上一节已经成功通过 连接提供程序存储库,获取到了 连接提供程序,但是连接提供程序和数据库连接依赖太深, ...
- 性能测试需求分析 业务PV量,响应时间、QPS、TPS
一. 性能测试需求分析 1.1 性能测试需求内容 性能测试需求应包括以下内容: a) 测试场景及用例,用例访问URL: b) 目标接口方法的入参.出参: c) 外部依赖的服务 ...
- 解析大型.NET ERP系统 业务逻辑设计与实现
根据近几年的制造业软件开发经验,以我开发人员的理解角度,简要说明功能(Feature)是如何设计与实现的,供参考. 因架构的不同,技术实现上会有所差异,我的经验仅限定于Windows Form程序. ...
- 使用 UML 进行业务建模:理解业务用例与系统用例的相似和不同之处
使用 UML 进行业务建模:理解业务用例与系统用例的相似和不同之处 作者:Arthur V. English 出处:IBM 本文内容包括: 背景 业务用例模型与系统用例模型有什么相似之处? 业 ...
- 统一门户与业务系统的sso整合技术方案(单点登录)
一.单点登录(SSO,Single Sign On)整合目前计划接入统一门户的所有业务系统均为基于JavaEE技术的B/S架构系统.由于统一门户的单点登录技术选用的是JA-SIG组织开发的Cas Se ...
- TOP100summit:【分享实录-美团点评】 业务快速升级发展背后的系统架构演进
本篇文章内容来自2016年TOP100summit美团●大众点评高级技术专家,酒店后台研发组eHome团队负责人许关飞的案例分享.编辑:Cynthia 许关飞:美团●大众点评高级技术专家,酒店后台研发 ...
随机推荐
- 开源框架相关面试问题-retrofit网络框架面试问题讲解
retrofit使用简介: 在retrofit中通过一个接口作为Http请求的api接口.注意:@GET("url")中的url只是一个路径,不包含主机号的. 创建一个retrof ...
- CeSharp支持MP4
因为CefSharp不支持MP4格式(因为版权问题,MP3因为版权过期新版本已经支持了),需要自己下载源码重新编译以支持MP4,或者下载被人编译好的库.因时间问题,我直接在csdn上下载了一个(1c币 ...
- 什么是DNS
DNS,或者说域名系统,通常是学习如何配置网站和服务器的一个非常困难的部分.了解 DNS 的工作原理将有助于诊断网络访问的问题,也有助于理解 DNS 系统背后的工作原理. 这篇文章中,我们会讨论一些基 ...
- kylin实战(一)
kylin适用场景 OLAP 它适合数据量大,查询维度多,但是业务改动不频繁的场景.因为业务多,则kylin的cube很多.每次业务变更,kylin修改的工作量大,且每次全量跑数据耗费时间比较长. 它 ...
- django环境配置(基于命令行安装)
一.django简介 Python服务端开发框架,Django是一个开放源代码的Web应用框架,由Python写成,Django采用了MVC的软件设计模式,即模型M,视图V和控制器C 二.安装配置dj ...
- vue的简单使用
1.使用vue 下载vue.js: 下载地址:https://vuejs.org/js/vue.min.js:打开链接后是一大堆js代码:ctrl+s保存即可: 新建一个htm ...
- jquery toggle()方法 语法
jquery toggle()方法 语法 作用:toggle() 方法用于绑定两个或多个事件处理器函数,以响应被选元素的轮流的 click 事件.该方法也可用于切换被选元素的 hide() 与 sho ...
- Java进阶知识03 Hibernate的基础配置详解
1.Hibernate的原理/流程步骤 1.通过Configuration().configure(); 读取并解析hibernate.cfg.xml配置文件,并创建一个configuration对象 ...
- Parallels Desktop 安装centos7
配置网卡: vi /etc/sysconfig/network-scripts/ifcfg-eth0 修改BOOTPROTO=dhcp,ONBOOT=yes. 保存后重启网卡 service netw ...
- Java线程中的异常处理
对于对线程,当主线程中有子线程运行出现异常时,主线程是不能捕获到该异常的,子线程会直接退出,不会记录任何日志. 解决: 1.子线程中try catch. 2.设置线程的未捕获异常处理器,Uncaugh ...