腾讯视频:如何更好地利用CDN支持业务?

2017-09-14 08:02:09来源:腾讯网络工程 热度:
随着互联网规模的爆炸式增长,CDN成长为重要的基础设施。如何更好的利用好CDN在全国丰富的资源点为用户提供更好的服务? 这篇文章介绍了CDN在动态内容和全站加速的应用。
 
提起CDN,大家一定立即想到图片,下载,视频等静态内容的分发和就近接入等加速应用。今天的互联网应用场景下,通过CDN承载的内容越来越多,CDN已经成为了一项不可或缺的网络基础设施了;腾讯CDN上运营的带宽总量已经超过30Tbps,储备的带宽超过60Tbps,占到业务产生的总体带宽量的八成以上。根据我们在腾讯云和内部业务的运营数据,全国范围内使用CDN可以把用户到机房的“平均光缆长度”降低到200KM以内;试想,如果没有CDN,全国的用户都到同一个机房来访问,数据平均要经过1000KM+才能够抵达用户手中,除了用户的访问速度会变慢以外,对于运营商的网络负载会增加数倍,以现在的网络基础设施是一定承担不了的。
 
为了承担海量的数据分发需求,我们建设了超过600个超过百Gb的边缘节点,分布在全国各个地区和运营商,保证用户可以同省访问到CDN的资源。相比集中式的IDC服务,CDN的资源能够为用户提供非常大的网络质量优势。那么站点和应用服务来说,如何更有效的利用这些资源?除了传统的静态类内容分发以外,CDN还能做点些什么?这篇文章从腾讯视频服务的实践经验来说明一下CDN如何更好的支持到业务。
 
腾讯视频是一个综合型的服务,用户可以通过多种方式来访问,除了视频播放以外还有检索等多个功能。首先来看看传统的服务架构:
 
这个是一个典型的动静分离的服务架构,其中影片检索,用户登录等动态功能不能够缓存,需要集中的来处理;而网站的影片页面,播放页面和封面图片等可以通过CDN来提供就近的服务。实际上早先的大部分腾讯的服务都是通过类似的方案来提供的。如果需要增加新的独立功能,我们通常会申请一个新的域名,独立部署来进行服务,各个功能点的开发,部署,运营等工作都可以独立来进行,互不干扰。但是也有一个额外的问题,功能点多起来以后,网站的域名数增多,每个功能点都需要做运营商分布,网络优化,负载均衡和灾备等;用户访问每个功能都需要连接一个单独的域名,分别解析和建立连接。到了SSL/HTTP2的时代,这个问题变得更加严重,每个域名都需要分别部署ssl服务,需要投入重复的运营工作,用户的访问代价也更大。
 
首先的问题是,动态的这一部分工作可否移到CDN来做呢?答案是肯定的。通过CDN来接入动态的内容,可以提供更快,更安全的服务质量,同时提供更方便,更快捷的运营能力。
 
链路优化
 
用户通过CDN边缘节点就近接入,获得了第一跳的最佳访问质量;而后CDN服务器通过全国的节点和跨运营商专线资源组成一个数据传输网络,在这个网内,我们可以通过智能路由算法基于实时的网络情况找到一个接入点和源站之间的最佳中转方案;CDN的网络可以保证用户,尤其是接入状况不太好的用户获取到最佳的接入方法,例如小运营商用户和移动客户端的用户。而这部分用户才是对质量抱怨最多的用户。
 
由于CDN解决了用户接入和路由的问题,源站服务器可以部署在单个运营商,甚至可以仅部署在腾讯云的网内,仅需要关心容量,不需要刻意考虑接入点分布的问题;节省运营精力的同时获取到更好的接入质量。
 
负载均衡和故障屏蔽
 
源站采用集群服务的情况下,由于请求全部通过CDN来进行接入,因此可以很方便的对源站进行负载均衡控制。我们在CDN上可以通过简单配置来实现丰富的负载均衡策略,例如轮询,服务器权重,基于用户ID或者地址的会话保持,等等;并且还可以进行方便的进行定制。同时单个服务器发生故障时,CDN还可以支持自动向可用服务器进行重试,从而实现故障屏蔽的同时保持用户无感知。
 
监控和问题定位
 
用户接入到CDN以后,请求都是在受控的服务器上中转,通过CDN实时监控和日志分析,我们可以立即掌握到服务的负载,请求书,以及源站的访问延迟等信息。同时当用户访问失败的情况下,可以通过访问链定位到问题节点。我们也可以通过自定义HTTP规则把部分用户定位到单独的服务器进行访问,对于新版本的灰度发布和现网问题排查都很方便。
 
网络安全
 
当前互联网上,对于业务站点的安全攻击层出不穷。入侵问题,拒绝服务攻击等对源站的稳定服务造成了巨大的威胁。通过使用CDN服务,可以把源站隐藏起来,因此针对业务的攻击会直接导向CDN的网络上。对于DDoS攻击,最简单的手段最有效:比拼容量。 DDoS攻击的定义是,攻击者通过发送大量的请求超过业务的服务能力,从而使得正常用户无法访问;然而CDN具备海量的服务能力和非常大的节点分布,目前我们遭遇到最大的ddos攻击大约是500Gbps,而我们单个业务的访问量最大已经超过了6Tbps,两者不在一个数量级。通过CDN的海量服务能力,我们可以把恶意请求过滤在门外,把真正的用户请求放进来。
 
协议栈加速和数据压缩
 
CDN优化中间非常关键的一个环节是协议栈单边加速。过去一段时间我们对于协议栈单边加速进行了相当多的探索,也取得了相当不错的进展;不过这里单独说一下针对动态内容的部分。首先是可以单独为信令类型的重要数据在协议层面提高传输优先级,保证及时送达;另外,CDN服务器之间的传输两端都是受控的,因此我们可以采用双边加速,进一步提高传输的质量和稳定性。同时服务器之间采取共享字典压缩,节约传输需要的带宽。
 
现在,站点上的静态内容,动态内容都通过CDN来服务;能不能够结合起来一起看呢?这个就是要提到的全站加速的概念了。仍然以腾讯视频站点作为例子,我们一起来看一下新的主要架构:
 
在这个架构下,动态的内容和静态的内容域名都采用v.qq.com单个域名来提供服务,CDN对于静态的内容进行缓存,同时对动态内容进行加速。用户只需要访问单一域名,建立一条连接,就可以得到完整的功能,节省了多次解析和建立连接带来的额外开销。尤其是引入了http2协议的情况下,多个请求可以并发的处理,相比单纯的链路加速,这里还能够进一步提高用户的性能。

责任编辑:王刚

为您推荐

IBTC2011王松:CDN与CLOUD云服务在广电三网融合背景下的应用

DVBCN讯2011年6月7日-8日白玉兰国际广播影视技术论坛(IBTC)在上海大宁福朋喜来登集团酒店举行。IBTC2011是第17届上海电视节的重要学术活动之一。本届论坛将围绕“云技术与广电三网融合”这一主题,展开全国性的、权威性的研讨。DVBCN数字电视中文网作为本届论坛的独家支持媒体将对“IBTC2011”进行全程播报。点击进入专题在本届IBTC2011“云技术与广电三网融合”论坛上,北京蓝汛通信技术有限责任公司CEO王松发表演讲的主题为《CDN与CLOUD云服务在广电三网融合背景下的应用》。

CDN让网络访问体验日趋完美

近日,艾肯家电网签约国内知名的CDN网站加速服务提供商北京快网,北京快网将为艾肯家电网提供提全站CDN加速服务。记者了解到,目前国内比较大的门户网站为现实网站的高速访问,早已使用了CDN网络加速。目前,包括腾讯、新浪、搜狐、网易、酷六、红袖添香等众多网站都采用了北京快网的CDN网络加速服务这一服务。据《中国互联网年度综合报告2009-2011》数据显示,预计至2011年互联网市场规模将达到1300亿,互联网总用户数将达到6亿。网民数量的持续提升同时也让互联网服务发展如火如荼,视频、SNS、垂直网站等新兴网站层出不穷,在带来全新商机的同时,也让互联网带宽、服务器等资源捉襟见肘。而CDN服务提供商

移动互联网将推动电视产业的变革

目前有30多人的技术团队和10多人的运营团队。手机电视两种不同的运营思路中国移动有个手机视频的客户端,这个客户端本人曾经体验过,对这个产品的感觉并不好,这个软件走的是中国移动WAP的网络,是运营商的网络,其目的就是想把用户固定在自己的网络上,不断的推出自己的服务,增加自己的粘附性。而且最让用户郁闷的是当有WiFi时并不能使用,而且对于那些3G用户来说同样不能使用。手机电视采用的是互联网的方式,国外的用户只要有网络同样可以观看。如果用户对流量费用有顾忌的话,可以选择在无线的情况下观看,非常的方便。据张总介绍,手机电视完全采用的是互联网的方式,用户任意选择登陆的网络,

传雅虎董事会成员肯尼有意竞选CEO

9月29日消息,据国外媒体报道,雅虎董事会成员、国际上最大的CDN服务商Akamai总裁大卫·肯尼(DavidKenny)公开表示有意竞选雅虎CEO。国际上最大的CDN服务商Akamai总裁大卫·肯尼知情人士透露,肯尼目前还在管理Akamai的业务,但确定要公开竞选雅虎CEO。该人认为,肯尼对雅虎内部发生的一切非常清楚,知道自己在干什么。昨天,肯尼曾与雅虎产品团队工作人员进行数小时长谈。近日,他还曾与包括私募公司在内的雅虎投资方、股东交换了意见。某科技媒体认为,肯尼适宜担