部署视频聊天系统之网络品质测试

  对一个实时的网络语音视频系统而言,网络的品质对该系统的用户的体验具有决定性的作用,所以,在正式部署系统之前,进行较全面的网络测试和网络调优工作是非常必要的。这将是一个复杂的系统工程,如果有专业的团队来做这件事情是最好的。然而,一般的公司都是由开发人员或实施人员来做这些事情。比如需要进行如下分析:目标用户主要分布在哪些城市?在哪个地方或哪些地方(分布式方案)部署服务器对整体目标用户而言综合效果最为理想?如何部署?带宽需要多大?是否需要支持双线或多线(电信、联通、移动、铁通等)?等等。

  本文不打算全面系统地介绍这些内容,而是只把其中最重要的部分拿出来,没有专业网络调优团队的中小公司可以按照下面给出的信息,进行一些必要的测试和分析。在做完这些后,对网络的基本情况就大致心中有数了。

一. 带宽占用大小

在语音视频聊天系统或视频会议系统中,语音、视频、电子白板、远程桌面等功能对网络带宽的要求分别如何了?

  我们先假设一种常见的场景:假设N个在线用户同时进行1对1的多媒体沟通(即分为N/2组),在不考虑P2P通道的情况下,带宽的大致占用如下表所示(以OMCS语音视频框架为例,与QQ流量要求接近):

对于视频和远程桌面而言 --

帧      频: 8~10 fps 。

普通质量:对应EncodeQuality取值为 8 左右。

高 质  量:对应EncodeQuality取值为 3 左右。

说明:

1.流量对称

对服务器而言,上行、下行的流量是对称的;对客户端而言,进、出的流量几乎也是对称的。上表中列出的只是单向的流量。

2.正比推算

以视频为例,如果视频的尺寸不是320x240,那么可以按比例推算带宽的占用。假设视频大小为640x480,那么,带宽的占用将增加4倍((640x480)/(320x240))。

3.考虑P2P

如果启用了P2P通道,那么,服务端带宽占用会减小,但客户端带宽占用保持不变。假设P2P的成功率为70%,则服务端的带宽占用将减少至原来的30%。

4.视频会议

上面的数据是基于1对1的多媒体沟通,如果是类似视频会议的场景,则沟通就是多对多的,这时,带宽的占用就会增加,服务器的上下行的流量也不再对称。

比如,有M个用户在一个视频会议室聊天,每个用户的视频都要广播给其它的(M-1)个用户,而且,每个用户都要接收其它(M-1)个用户的视频数据,所以带宽的占用就会增加很多。

.服务器共享带宽与独享带宽

语音视频数据都是实时采集、实时播放的数据,除了对服务器带宽的速度有要求外,更要求服务器带宽通信质量的稳定性,即网络延时小、网络抖动小。很容易理解,如果网络抖动较大,听到的声音就是断断续续的(OMCS内置了抖动缓冲区JitterBuffer,但也只能在一定程度内减轻这个问题)。

所以,服务器的带宽要求必须是独享带宽,共享带宽无法满足实时语音视频的要求。对实时语音视频而言,100M的共享带宽,还不如5M的独享。这也就是为什么通常租服务器时,IDC会免费送你100M的共享带宽,而租5M的独享带宽,却一年要花几千块钱。

另外,要注意:

(1)IDC服务器带宽的单位是bits/s,而我们通常说的网速的单位是bytes/s。它们之间是8倍的关系 -- 比如,服务器的带宽是1M的,说明下载的速度最多可以达到120kB/s左右。

(2)IDC服务器带宽指上行和下行的总和。比如,服务器的带宽是1M,说明在同一时刻,下载的速度和上传的速度加起来不会超过120kB/s。

.网络品质测试与监控

1.客户端网络抖动

在服务器的带宽质量得到保证后,参与语音视频会话的各个客户端,如果希望都能达到比较流畅的体验,则需要达到以下亮点:

(1)客户端到服务器的ping延时低于100ms。

(2)ping的最大抖动范围不超过20ms。

其中,网络抖动对流畅性的影响更大。在测试时,建议将到服务器的ping打开,如此可以观察ping对语音视频流畅性的影响。

注:ping命令加上 -t 就可以连续不断地 ping。如 ping 192.168.0.123 -t

2.观察网络流量

测试时,推荐在各个客户端机器上安装 NetLimiter 网络监控软件,可以实时查看客户端和服务器之间的上下行流量、以及客户端与客户端之间的P2P通道上的网络流量。

通过将网络流量监控与ping结合起来,就能很容易地测试网络的实时状态。

3.测试客户端与服务器之间的网络速度

通过windows自带的远程桌面的拷贝文件功能,结合上面的NetLimiter监控,我们可以很容易地测试出客户端电脑与服务器之间的网络速度。

(1)在客户端电脑上,使用windows自带的远程桌面功能(如win7下,开始菜单->所有程序->附件->远程桌面连接),连接到目标服务器上。

(2)上行拷贝:从当前电脑拷贝一个50M以上的文件到服务器上。

(3)下行拷贝:从服务器上拷贝一个50M以上的文件到当前电脑。

(4)在拷贝正在进行过程中,打开NetLimiter的界面,持续观察客户端与服务器之间传递的网络速度。

(5)测试时,建议持续观察5分钟以上,观察时请特别注意:(1)上下行速度分别是多少?(2)速度是否稳定?

(6)如果是类似视频会议这样的系统,假设需求一般是4个人在同一个会议室,那么,可选择4个代表性(所在的地理区域具有代表性)的用户,然后在这4个人的电脑上同时进行这一测试,分别记录这4个测试结果。

(7)进行此测试时,可以同时观察到服务器的持续的ping值。

然后逐一分析每一个结果看其是否能满足OMCS的带宽要求。

NetLimiter 截图如下所示:

时间: 2024-10-15 15:45:30

部署视频聊天系统之网络品质测试的相关文章

部署视频聊天系统:网络品质测试

对一个实时的网络语音视频系统而言,网络的品质对该系统的用户的体验具有决定性的作用,所以,在正式部署系统之前,进行较全面的网络测试和网络调优工作是非常必要的.这将是一个复杂的系统工程,如果有专业的团队来做这件事情是最好的.然而,一般的公司都是由开发人员或实施人员来做这些事情.比如需要进行如下分析:目标用户主要分布在哪些城市?在哪个地方或哪些地方(分布式方案)部署服务器对整体目标用户而言综合效果最为理想?如何部署?带宽需要多大?是否需要支持双线或多线(电信.联通.移动.铁通等)?等等. 本文不打算全

在DMZ区部署视频服务器

在DMZ区域部署视频服务器 一.背景     我司某部门要上架几台视频服务器,通过这台服务器管理全国机构的视频监控摄像机,需要将服务器部署在总公司,方便总公司的IT进行运维,但要让机构的视频监控摄像机能通过当地的外网来互相访问,通过网络规划,需要在防火墙上新建一个DMZ区域,用于部署视频服务器,来满足业务的流量访问需求. 二.网络拓扑 三.网络配置 1.在防火墙上新建一个DMZ区域,并配置子接口,将网关启用在防火墙上,关联vlan367:下联一台接入交换机,通过交换机连接视频服务器,在交换机上创

无线网络稳定性测试方案

一.宽带网速测试 测试内容 宽带网速测试 测试软件 360宽带测速器 测试步骤 1.测试机安装360宽带测速器,测试PC机直连路由器 2.打开宽带测速器,测试网速,记下测试值测试值. 测试结果 测试值 店铺名称 SSID 网速(KB/s) 带宽(M) 测试人 二. 网络丢包测试 测试内容 网络丢包测试 测试软件 atkkping 测试步骤 1.测试机拷贝atkkping软件,测试PC机直连路由器 2.打开atkkping. 3.目标主机设置为当地的DNS,数据量设置为200,点击开始测试. 4.

C#制作ActiveX控件及部署升级(摘自网络)

使用C#开发ActiveX控件 控件开发.制作CAB包.签名.部署 ActiveX控件以前也叫做OLE控件,它是微软IE支持的一种软件组件或对象,可以将其插入到Web页面中,实现在浏览器端执行动态程序功能,以增强浏览器端的动态处理能力.通常ActiveX控件都是用C++或VB语言开发,本文介绍另一种方式,在.NET Framework平台上,使用C#语言开发ActiveX控件. 虽然本文通篇都在讲如何使用C#语言开发ActiveX控件,但我并不极力推荐使用这种技术,因为该技术存在明显的局限,即需

App的网络环境测试和性能优化

1. 网络环境测试一般是先用网络损伤模拟仪或mock工具模拟常见的七种损伤和5种网络环境,然后再国内外城市采样的方式(带宽和延时)组合测试生成报告, 下面是一些统计图 2. 采样点的选择一般都是根据自己server收集的用户信息.如果新app就要参考近品/竞品或第三方的统计数据拍脑袋 3. 从测试的角度,应该建立实时监控的web portal.其实测试的目的除了保证产品发布的质量.更重要的是为优化提供依据,所以report最后一部分都是issue list 和optmize advice,当然测

windows环境常用网络命令测试和分析(51cto实验01)

结果分析 1,ipconfig显示本机ip地址配置情况. 2,ipconfig/all显示本机IP地址配置等情况的详细信息. 3,ping指令测试网络的连通性,发送4个ICMP的类型8报文给对方,对方回应4个ICMP类型的报文给本机. 4,ping –t不停发送ICPM的类型8报文给对方,只要对方存活,就会一直发. 5,arp –a显示本机arp缓存的内容,对方IP地址和对方MAC地址的对应关系. 6,arp –d删除本机的arp缓存区,清除IP地址与MAC地址的对应关系. 7,arp –s绑定

虚拟机迁移过程中网络状况测试的测试程序

最近一直在弄项目的虚拟机网络的配置,现在主要的问题就是要测试在我们进行虚拟机迁移的过程中的网络情况.于是写了一个网络测试程序,因为基于TCP连接的网络,网络是不会丢包的,所以为了更好的显示网络情况,本测试程序是基于UDP的. 客户端程序 #include <stdio.h> #include <stdlib.h> #include <errno.h> #include <string.h> #include <netdb.h> #include

继短视频后,网络自制综艺成在线视频新战场

"你有Freestyle吗?"这句网上广为流传的话出自今年6月刚上线的Hip-hop音乐选秀节目<中国有嘻哈>,这档爱奇艺自制的全新网络综艺,以自身的独特性在遍地开花的网络自制综艺中迅速抢占了一席之地. 2016年网络自制综艺开始进入快速增长期,在种类和数量上网络自制综艺都达到了一个全新的高度.大视频网站对网络自制综艺的不断推陈出新,使网络自制综艺进入井喷期. 网络自制综艺开启在线视频新战争 为了在网络综艺战场上加大自身的取胜砝码,各个视频播放平台不断推出各类不同的网络综艺

照相、从相册上取照片、播放音频、播放本地视频、播放网络视频、MPMoviePlayerController

一.照相.从相册上去照片 1. 先判断是否支持照相功能 *判断当前设备是否支持照相功能,支持返回YES 否则返回NO 注意:模拟器不支持照相功能 把握一个原则只要是物理硬件相关的功能模拟器都不支持 例如: UIImagePickerController 专门处理与照片相关的功能类 是一个控制器 继承于导航视图控制器 if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera]