FMS带宽的需求计算法
在开始一个使用 FLASH MEDIA SERVER的项目开始之前,最好能够对你项目使用FLASH MEDIA SERVER 3的带宽需求进行计算.这样对你的项目最终的实现效果,会有一个稳定的结果;去评估您的 Flash Media Server 应用所使用的带宽, 您需要了解如下内容:
- 您的应用并发用户数量的最大负荷数
- 数据传输速度,您预计您的用户连接速度( 56 Kbps 拨号上网, cable/DSL, 或者是居域网的使用比例)
- 您的应用将要支持视频/音频操作的用户比率
- 服务器硬件的局限性以及互联网状况
- 您应用中视频和音频格式的频率
首先区分您应用的类型;一种为一对多(例如视频点播),另一种是多对多(例如视频会议),
Figure 1. One-to-many 视频点播系统
带宽计算公式
- 计算服务器端带宽需求 (BWs):
BWs = N × S
N = 并发用户数量 //number of simultaneous users (subscribers)
S = 视频内容平均编码比特率 //average bitrate of encoded A/V content - 计算客户端带宽需求(BWc):
BWc = S
S = 视频内容平均编码比特率 //average bitrate of encoded A/V content
举例:
视频编码是500 Kbps,有1000人进行观看那么服务总体带宽需求是
500 Mbps = 1000 × 500 Kbps
如果您的服务器支持600 Mbps吞吐量的硬件配置能力,您只需要一台服务和许可就可以.
当然如果您需要更多的用户访问量,比如10,000人并发需求,那么下面的计算式:
5000 Mbps = 10,000 × 500 Kbps
并发服务器硬件配置能力是600 Mbps,您需要:
8.3 = 5000 Mbps ÷ 600 Mbps
调整多比率计算方程式
例如,前面的例子有一半人使用350 Kbps DSL modem,另一半人使用的是3 Mbps cable modem.当观众收看视频编码为500 Kbps的时候,你想要分割视频为150KBPS给DSL modem用户.
325 Mbps = (500 Kbps × 500) + (150 Kbps × 500)
这样带宽被降到了325MBPS.
实例2:多对多
例如视频会议,需要多个人同时看到对方.
Figure 2. 多对多视频会议
例如,如果有四个人在一个房间中,第一个人可以发送一个视频和接受三个其他的视频流,总共四个视频流.同样的第二,三,四个人也会消耗四个视频流.因此Flash Media Server视频流的总共数量是16每四个人.
带宽计算
- 计算服务端带宽 (BWs):
BWs = (P × N) × S
P = 发布者的数量
N = 订阅者的数量
S = 视频编码的平均比特率 - 计算客户端带宽 (BWc):
BWc = P × S
P = 发布者的数量
S = 视频编码的平均比特率
实例计算
为四个人使用100 Kbps的视频流为一个会议室服务端带宽需要:
4.8 Mbps = (4 × 4) × 300 Kbps
为四个人使用100 Kbps的视频流为一个会议室客户端带宽需要:
900 Kbps = 3 × 300 Kbps 下载流
300 Kbps = 1 × 300 Kbps 上传流
因此每个视频会议房间将会需要一个4.8 Mbps的带宽.一台吞吐量为600 Mbps的服务器,你可以支持600 Mbps ÷ 4.8 Mbps = 125 房间.
FMS带宽的需求计算法的更多相关文章
- 大型网站的灵魂——性能
前言 在前一篇随笔<大型网站系统架构的演化>中,介绍了大型网站的演化过程,期间穿插了一些技术和手段,我们可以从中看出一个大型网站的轮廓,但想要掌握设计开发维护大型网站的技术,需要我 ...
- 深入浅出HTTP协议(WEB开发和面试必备)
1. 基础概念篇 a.简介 HTTP是Hyper Text Transfer Protocol(超文本传输协议)的缩写.它的发展是万维网协会(World Wide Web Consortium)和 ...
- 深入理解http/https协议
深入理解HTTP协议(转) http协议学习系列 1. 基础概念篇 1.1 介绍 HTTP是Hyper Text Transfer Protocol(超文本传输协议)的缩写.它的发展是万维网协会(Wo ...
- SDN与NFV技术在云数据中心的规模应用探讨
Neo 2016-1-29 | 发表评论 编者按:以云数据中心为切入点,首先对SDN领域中的叠加网络.SDN控制器.VxLAN 3种重要技术特点进行了研究,接下来对NFV领域中的通用服务器性能.服务链 ...
- HTML5离线缓存问题
HTML5离线缓存问题 1.应用程序缓存 什么是应用程序缓存(Application Cache)? HTML5 引入了应用程序缓存,这意味着 web 应用可进行缓存,并可在没有因特网连接时进行访问. ...
- 转载和积累系列 - 深入理解HTTP协议
深入理解HTTP协议 1. 基础概念篇 1.1 介绍 HTTP是Hyper Text Transfer Protocol(超文本传输协议)的缩写.它的发展是万维网协会(World Wide Web C ...
- 【转】HTTP协议详解
原文地址:http://www.cnblogs.com/EricaMIN1987_IT/p/3837436.html 一.概念 协议是指计算机通信网络中两台计算机之间进行通信所必须共同遵守的规定或规则 ...
- CDN技术
CDN 是构建在数据网络上的一种分布式的内容分发网. CDN 的作用是采用流媒体服务器集群技术,克服单机系统输出带宽及并发能力不足的缺点,可极大提升系统支持的并发流数目,减少或避免单点失效带来的不良影 ...
- CDN(内容分发网络)技术原理
1. 前言 Internet的高速发展,给人们的工作和生活带来了极大的便利,对Internet的服务品质和访问速度要求越来越高,虽然带宽不断增加, 用户数量也在不断增加,受Web服务器的负荷和传输距离 ...
随机推荐
- JAVA基础--继承和权限控制
1. extends继承 2. java只支持单继承,不允许多继承 修饰符 类内部 同一个包 子类 任何地方 private YES default YES YES protect ...
- webpack.config.js 参数简单了解
webpack.config.js文件通常放在项目的根目录中,它本身也是一个标准的Commonjs规范的模块. var webpack = require('webpack'); module.exp ...
- Hibernate---基础配置
hibernate.cfg.xml里可以设置一个值显示更详细的sql语句: <property name="format_sql">true</property& ...
- postgresql 抽样查询
curl -GET 'http://****/query' --data-urlencode "db=db" --data-urlencode "q=SELECT las ...
- ShaderLab 之 UNITY_INITIALIZE_OUTPUT
在 HLSLSupport.cginc 文件中定义了此宏: #if defined(UNITY_COMPILER_HLSL) #define UNITY_INITIALIZE_OUTPUT(type, ...
- Java的JDBC事务详解
Java的JDBC事务详解 分类: Hibernate 2010-06-02 10:04 12298人阅读 评论(9) ...
- 所有事件event集锦
'mousedown touchstart', 'mousemove touchmove', 'mouseup mouseleave touchend touchleave touchcancel', ...
- (简单) POJ 1860 Currency Exchange,SPFA判圈。
Description Several currency exchange points are working in our city. Let us suppose that each point ...
- Android点击Button按钮的四种事件监听方法总结
首先我们在activity_main.xml里面先定义一个Button空间 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 <RelativeLayout xmlns:a ...
- NRF24L01无线通讯模块驱动
NRF24L01 无线模块,采用的芯片是 NRF24L01,该芯片的主要特点如下: )2.4G 全球开放的 ISM 频段,免许可证使用. )最高工作速率 2Mbps,高校的 GFSK 调制,抗干扰能力 ...