【转载】视频CDN技术原理与流程说明
视频CDN专为移动互联网视频内容分发量身定做的一套自主研发的分布式平台,该平台以深圳为中心,分布在全国各地BGP机房的服务器为边缘节点,汇聚中国电信、中国联通、中国移动、中国教育网等运营商网络资源,构建一个全国性的全网覆盖网络,将视频内容缓存或镜像到这些节点边缘服务器上,为不同地域的不同用户提供视频内容加速服务。实现就近访问,从而加速访问速度,提升用户的访问体验,并可以避免源站因访问量过大而造成的服务器负载过量与带宽资源不足等问题,解决网络拥塞,提高用户访问网站的响应速度,有效保证用户体验。
使用CDN后的http请求处理流程如下图:
节点缓存:组合多个JavaScript/CSS文件成为一个请求,从而减少请求数目(Lua)
以云宙多媒体技术有限公司的视频CDN产品为例对其技术架构及工作流程进行说明如下:
基于媒体内容和实时流媒体节目的地域性特点,不同于一般CDN,云宙视频CDN采用分布式多源架构,它允许位于不同地理位置的边缘分节点可以单独发布自己的媒体内容和实时节目,即各边缘节点在某种程度上也可作为源站,同时也可以将这些内容和节目分发到位于其他各地的分节点,因此每一个节点既可以作为系统中心源站存在,同时也可以实现边缘节点的功能。而源站也可作为边缘节点,来接受用户视频内容的快速响应服务,对于普通的Internet用户来讲,每个CDN边缘节点就相当于一个放置在它周围的Web网站,通过负载均衡系统的控制,用户的请求被透明地指向距离用户最近,网络状态最优的节点,节点中的WebServer服务器会像网站的原始服务器一样,可快速响应用户的请求。
网站站点/应用加速:
用户可以预定义内容分发的规则,对上传的内容添加权限及优先级,内容上传后,可选择将优先级高的热点内容预先全镜像同步部署到其他节点,优先级低的可先不进行同步,仅保存在本地源站,系统建立全局性的内容检索查询索引,一旦有用户访问,系统通过对应用层访问请求的智能判断,按照真实用户所处的实际地理位置,所属运营商,以及遍布全网的节点健康状态、网络流量、负载状况以及到用户的距离等信息,根据多种优化策略,通过网络的动态内容分配和全局负载均衡,将用户请求重定向到距离用户最近且健康可用的节点缓存服务器上,使用户可以就近取得所需的内容,如本节点不存在所需内容,系统将自动启动内容检索功能,回源实时获取所需的内容源提供给用户。
利用云宙多媒体的视频CDN网络,网络内容提供商无需投资昂贵的各类服务器、设立分站点,其基础视频服务,拥有海量存储与分发能力,能够帮助视频网站节省流量。特别是对于视频流媒体信息、远程教学课件等消耗带宽资源多的网络应用服务,使用CDN技术把内容复制到网络的最边缘,使内容请求点和交付点之间的距离缩至最小,对于促进Web站点性能的提高具有重要的意义。网站使用CDN后,即由CDN服务提供商负责信息的传递,保证信息的传输,而网站只需要内容维护,不再需要考虑带宽服务器问题。CDN能够为网络的快速、安全、稳定、可扩展性等方面提供保障。
视音频点播/大文件下载分发加速:
目前云宙视频CDN网络体系,可提供对视频内容的点播加速、直播加速、网站内容的缓存加速、镜像部署等服务。云宙公司的万视无忧视频托管平台依靠公司自主研发的强大的视频CDN产品,打破了由传统CDN设备厂商提供的加速解决方案的技术模式,开创了符合中国互联网/移动互联网情况的CDN技术,可以消除视频内容客户巨大的基础投资及研发与运维投入,同时使视频内容分发的效果在异构网络中都能达到专业级的流畅度与表现力。有效降低了运营成本,适应了中国国情的复杂的网络环境。根据客户需求,提供高性能的互联网及移动互联网视频云服务,使客户只需要最低的成本投入,即能享受到广播级的视听内容。
云宙视频CDN主要由五部分组成:全局智能解析系统、负载均衡调度系统、内容路由同步系统、分布式存储管理系统、后台管理系统等。
云宙视频CDN技术架构如下图所示:
云宙视频CDN的服务流程:
当终端用户访问流媒体视频内容时,首先通过负载均衡系统确定最接近用户的最佳边缘节点,同时将终端用户的请求指向该节点。当终端用户的请求到达指定节点时,边缘节点服务器负责将请求的内容提供给终端用户。
终端用户访问的基本服务流程如下:
1、终端用户通过域名访问网站指定的视频内容,用户请求将由本地DNS最终交给云宙视频CDN负载均衡系统进行处理;
2、负载均衡系统智能判断访问用户所处地理区域及所属运营商,并搜集相关节点的负载及健康状态,返回最优及离用户最近的网络边缘节点IP 给用户;
3、终端用户根据返回的IP地址发送媒体请求到相应的网络边缘节点去请求内容;
4、网络边缘节点接收客户请求,根据节点内各设备的实际能力、负载状况等因素选择合适的服务器设备给客户提供服务;
5、如果本地边缘节点存在用户请求的内容,则直接将用户请求媒体内容发往最终用户。
6、如果本地边缘节点不存在用户请求的内容,则查找相应节目列表数据库,找出存有目标内容的最佳节点;
7、边缘节点将用户请求重定向到存有目标内容的节点,由该节点完成对用 户请求的应答服务;
8、本地边缘节点启动对目标内容的拉取功能,将目标内容从重定向节点上同步过来,以供后续用户的就近访问;
转载:https://www.oschina.net/question/328302_146681
【转载】视频CDN技术原理与流程说明的更多相关文章
- 转载:P2P技术原理及应用(1)
转帖allen303allen的空间 作 者:金海 廖小飞 摘要:对等网络(P2P)有3种主要的组织结构:分布式哈希表(DHT)结构.树形结构.网状结构.P2P技术已 经延伸到几乎所有的网络应用领域, ...
- 转载:P2P技术原理及应用(2)
转载allen303allen的空间 在Gnutella网络中存在以下问题: 冗余消息多,对带宽的消耗存在一定的浪费.Gnutella网络协议采用泛洪式(Flooding)消息传播机制,这种消息传播机 ...
- CDN技术原理
要了解CDN的实现原理,首先让我们来回顾一下网站传统的访问过程,以便理解其与CDN访问方式之间的差别: 由上图可见,传统的网站访问过程为: 1. 用户在浏览器中输入要访问的域名: 2. 浏览器向域名解 ...
- 深度剖析:CDN内容分发网络技术原理--转载
1.前言 Internet的高速发展,给人们的工作和生活带来了极大的便利,对Internet的服务品质和访问速度要求越来越高,虽然带宽不断增加,用户数量也在不断增加,受Web服务器的负荷和传输距离等因 ...
- CDN技术详解及实现原理
CDN技术详解 一本好的入门书是带你进入陌生领域的明灯,<CDN技术详解>绝对是带你进入CDN行业的那盏最亮的明灯.因此,虽然只是纯粹的重点抄录,我也要把<CDN技术详解>的精 ...
- CDN(内容分发网络)技术原理
1. 前言 Internet的高速发展,给人们的工作和生活带来了极大的便利,对Internet的服务品质和访问速度要求越来越高,虽然带宽不断增加, 用户数量也在不断增加,受Web服务器的负荷和传输距离 ...
- CDN(Content Delivery Network)技术原理概要
简介 CDN(Content Delivery Network)即内容分发网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡.内容分发.调度等功能,使用户就近获取所需内容,提高用户访问响应速度和 ...
- [转]CDN(内容分发网络)技术原理
1. 前言 Internet的高速发展,给人们的工作和生活带来了极大的便利,对Internet的服务品质和访问速度要求越来越高,虽然带宽不断增加, 用户数量也在不断增加,受Web服务器的负荷和传输距离 ...
- 一文带你弄懂 CDN 技术的原理
对于 CDN 这个东西,相信大家都有耳闻,感觉既陌生但又熟悉.最近深入了解了一下 CDN,这才发现原来 CDN 如此重要!今天就跟大家科普一下 CDN 是什么,以及为啥要有 CDN,最后再讲一下 CD ...
随机推荐
- 面向对象第一次练手-------ArrayList集合、类、对象、冒泡排序、类型转换
思维转不过弯儿来 怎么做都是错 哪怕差一个()就成功的事情,也是千差万别 忽然想到一句话:差一步就成功的距离 = 差几万米就成功的距离 部分的理解和都体现在代码和注释里 using S ...
- memcached 和redis比较
同属于NOSQL存储,网上流传很多memcached能做的是redis都可以做,为什么基本现在两种都火,原因他们有各自擅长的地方. memcahed内部采用多核模式,单列运行很快.memcached采 ...
- vue基础项目安装教程
安装node.js 从node.js官网下载并安装node,安装过程很简单,一路“下一步”就可以了. 安装完成之后,打开命令行工具,输入 node -v,如下图,如果出现相应的版本号,则说明安装成功. ...
- JNI探秘-----FileInputStream的read方法详解
作者:zuoxiaolong8810(左潇龙),转载请注明出处,特别说明:本博文来自博主原博客,为保证新博客中博文的完整性,特复制到此留存,如需转载请注明新博客地址即可. 上一章我们已经分析过File ...
- 对html第一次尝试
1.对于写文档 修改后缀为html,双击进入为网页模式. 2.编写网页 1)新建 2)基本格式 <!DOCTYPE html><!-- ...
- ats反向代理和重定向
作为反向代理缓存,ats代表源服务器提供的请求. ats的配置方式使客户端看起来像普通的原始服务器. 了解反向代理缓存通过转发代理缓存, ats代表请求内容的客户端队里对源服务器的web请求.反向代理 ...
- TypeError: web3.eth.Contract is not a constructor错误解决
这是web3.js开发者在创建合约对象时很容易发生的错误,其实就是不同版本web3.js带来的API变化问题. 请检查你的web3.js版本: 如果version<1.0.0,使用: web3. ...
- 微软职位内部推荐-Senior Program Manager
微软近期Open的职位: Title: Senior Program Manager – Bing Multimedia Relevance Group: Search Technology Cent ...
- PHP Laravel 连接并访问数据库
第一次连接数据库 数据库配置位于config/database.php数据库用户名及密码等敏感信息位于.env文件创建一个测试表laravel_course <?php namespace Ap ...
- PAT甲题题解-1040. Longest Symmetric String (25)-求最长回文子串
博主欢迎转载,但请给出本文链接,我尊重你,你尊重我,谢谢~http://www.cnblogs.com/chenxiwenruo/p/6789177.html特别不喜欢那些随便转载别人的原创文章又不给 ...