即时通讯、在线教学、视频会议——服务器带宽计算说明与网络品质测试

简介:   对一个实时的网络语音视频系统而言,网络的品质对该系统的用户的体验具有决定性的作用,所以,在正式部署系统之前,进行较全面的网络测试和网络调优工作是非常必要的。这将是一个复杂的系统工程,如果有专业的团队来做这件事情是最好的。

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

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

. 带宽占用大小  

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

  我们先假设一种常见的场景:假设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.即时通讯:我有1000个客户端同时在线,同时进行视讯的人数为100,请问服务端大概需要租多少带宽? 

解:假设摄像头视频尺寸为640*480,音、视频为普通质量,P2P成功率为75%。 

则 640*480尺寸的视频一路带宽占用是:20*((640x480)/(320x240))= 80KB/s 

一路音频由表中数据得知为5KB/s 

故总共需要 100*(80+5)*8/1000*25% =17Mbit/s 服务器带宽。 

2.视频教学:我有100个客户端,其中1个人是老师,老师将自己的桌面和声音广播给99个学生,这种情况需要多少服务器带宽? 

解:假设老师桌面分辨率为1024*768,音频为高质量 

则一路音、视频所占带宽为100 + 8 = 108KB/s 

故总共需要 100*108*8/1000 = 86.4Mbit/s服务器带宽 

3.视频会议:我有10个人进行视频会议,每个人将自己的视频广播给其他的9个人,服务端需要多少带宽? 

解:假设摄像头视频尺寸为320*240,视频质量为高质量。 

则每个人上行1路下行9路,10个人则上行10路下行90路。下行合起来是100路,即10*10路。 

则总共需要 100*35*8/1000 = 28Mbit/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 截图如下所示:

          

 

目录
相关文章
|
24天前
|
缓存 应用服务中间件 nginx
Web服务器的缓存机制与内容分发网络(CDN)
【8月更文第28天】随着互联网应用的发展,用户对网站响应速度的要求越来越高。为了提升用户体验,Web服务器通常会采用多种技术手段来优化页面加载速度,其中最重要的两种技术就是缓存机制和内容分发网络(CDN)。本文将深入探讨这两种技术的工作原理及其实现方法,并通过具体的代码示例加以说明。
61 1
|
24天前
|
监控 安全 数据挖掘
网络游戏服务器如何有效防护DDoS与CC攻击
随着网络游戏行业的蓬勃发展,其背后的服务器架构日益复杂,同时也面临着前所未有的网络安全威胁。其中,分布式拒绝服务(DDoS)和CC(Challenge Collapsar,一种针对网页的攻击方式)攻击尤为突出,它们通过大量伪造请求或恶意流量,使服务器资源耗尽,导致服务中断或响应缓慢。因此,保障网络游戏服务器的安全,有效防护DDoS与CC攻击,已成为游戏行业亟待解决的问题。
|
4天前
|
存储 弹性计算 测试技术
阿里云服务器实例规格vCPU、内存、网络带宽、网络收发包PPS、连接数等性能指标详解
阿里云服务器ECS实例可以分为多种实例规格族。根据CPU、内存等配置,一种实例规格族又分为多种实例规格。而实例规格又包含vCPU、处理器、内存、vTPM、本地存储、网络带宽、网络收发包PPS、连接数、弹性网卡、云盘带宽、云盘IOPS等指标,本文为大家详细介绍实例规格的这些指标,以供大家了解和选择。
阿里云服务器实例规格vCPU、内存、网络带宽、网络收发包PPS、连接数等性能指标详解
|
9天前
|
存储 运维 网络协议
运维的基本概念:服务器和网络基础知识
运维的基本概念:服务器和网络基础知识
20 0
运维的基本概念:服务器和网络基础知识
|
22天前
|
敏捷开发 测试技术 持续交付
软件测试中的自动化策略与实践云计算时代的网络安全挑战与对策
【8月更文挑战第30天】在软件开发的海洋中,自动化测试是一艘能够带领团队高效航行的帆船。本文将探讨如何搭建这艘帆船,从选择适合的自动化测试框架开始,到编写有效的测试脚本,再到持续集成的实施和测试结果的分析,我们将一步步揭开自动化测试的神秘面纱。你将学习到如何通过自动化测试来提升软件质量和开发效率,以及如何克服实施过程中的挑战。让我们一起启航,探索自动化测试的世界。
|
21天前
|
网络协议 C# 开发者
WPF与Socket编程的完美邂逅:打造流畅网络通信体验——从客户端到服务器端,手把手教你实现基于Socket的实时数据交换
【8月更文挑战第31天】网络通信在现代应用中至关重要,Socket编程作为其实现基础,即便在主要用于桌面应用的Windows Presentation Foundation(WPF)中也发挥着重要作用。本文通过最佳实践,详细介绍如何在WPF应用中利用Socket实现网络通信,包括创建WPF项目、设计用户界面、实现Socket通信逻辑及搭建简单服务器端的全过程。具体步骤涵盖从UI设计到前后端交互的各个环节,并附有详尽示例代码,助力WPF开发者掌握这一关键技术,拓展应用程序的功能与实用性。
44 0
|
11天前
|
Cloud Native Java 编译器
将基于x86架构平台的应用迁移到阿里云倚天实例云服务器参考
随着云计算技术的不断发展,云服务商们不断推出高性能、高可用的云服务器实例,以满足企业日益增长的计算需求。阿里云推出的倚天实例,凭借其基于ARM架构的倚天710处理器,提供了卓越的计算能力和能效比,特别适用于云原生、高性能计算等场景。然而,有的用户需要将传统基于x86平台的应用迁移到倚天实例上,本文将介绍如何将基于x86架构平台的应用迁移到阿里云倚天实例的服务器上,帮助开发者和企业用户顺利完成迁移工作,享受更高效、更经济的云服务。
将基于x86架构平台的应用迁移到阿里云倚天实例云服务器参考
|
9天前
|
编解码 前端开发 安全
通过阿里云的活动购买云服务器时如何选择实例、带宽、云盘
在我们选购阿里云服务器的过程中,不管是新用户还是老用户通常都是通过阿里云的活动去买了,一是价格更加实惠,二是活动中的云服务器配置比较丰富,足可以满足大部分用户的需求,但是面对琳琅满目的云服务器实例、带宽和云盘选项,如何选择更适合自己,成为许多用户比较关注的问题。本文将介绍如何在阿里云的活动中选择合适的云服务器实例、带宽和云盘,以供参考和选择。
通过阿里云的活动购买云服务器时如何选择实例、带宽、云盘
|
8天前
|
弹性计算 运维 安全
阿里云轻量应用服务器和经济型e实例区别及选择参考
目前在阿里云的活动中,轻量应用服务器2核2G3M带宽价格为82元1年,2核2G3M带宽的经济型e实例云服务器价格99元1年,对于云服务器配置和性能要求不是很高的阿里云用户来说,这两款服务器配置和价格都差不多,阿里云轻量应用服务器和ECS云服务器让用户二选一,很多用户不清楚如何选择,本文来说说轻量应用服务器和经济型e实例的区别及选择参考。
阿里云轻量应用服务器和经济型e实例区别及选择参考
|
9天前
|
机器学习/深度学习 存储 人工智能
阿里云GPU云服务器实例规格gn6v、gn7i、gn6i实例性能及区别和选择参考
阿里云的GPU云服务器产品线在深度学习、科学计算、图形渲染等多个领域展现出强大的计算能力和广泛的应用价值。本文将详细介绍阿里云GPU云服务器中的gn6v、gn7i、gn6i三个实例规格族的性能特点、区别及选择参考,帮助用户根据自身需求选择合适的GPU云服务器实例。
阿里云GPU云服务器实例规格gn6v、gn7i、gn6i实例性能及区别和选择参考