1、CDN分析和自建要求分析1.1 CDN概念CDN全称是Content Delivery(Distribution) Network,即内容分发网络。构建CDN目标:是经过在现有互联网中增加一层新网络架构,将网络内容公布到最靠近用户网络“边缘”,使用户能够就近取得所需内容,处理互联网网络拥挤情况,提升用户所能获取服务或业务服务质量。其实质是在互联网上构建一个覆盖网络CDN能力:从技术上全方面处理因为网络带宽小、用户访问量大、网点分布不均而产生用户使用互联网业务服务质量差根本原因。1.2 CDN提升服务质量基础思绪及施基础思绪:就是尽可能避开互联网上有可能影响数据传输速度和稳定性瓶颈和步骤,使内容
2、传输愈加快、更稳。经过用户就近性和服务器负载判定,CDN确保内容以一个极为高效方法为用户请求提供服务。基础方法:将内容推到网络边缘,为用户提供就近性边缘服务,从而确保服务质量和整个网络上访问秩序,这也是就是CDN服务模式方法1:把业务服务点尽可能延伸网络边缘,也就是最靠近用户地方,避免远距离IP转发,降低互联网内部引入服务质量衰减方法2:提供分布式负载均衡,从而降低服务器端瓶颈1.3 CDN所能提供服务(应用)用户终端:PC、PDA,手机等服务类型:1.网页加速2.文件传输加速3.流媒体加速1.4 CDN历史及趋势1.5 CDN基础体系结构1.6 CDN基础组成元素(1/2) 1.7 CDN特
3、点当地Cache加速:提升了企业站点(尤其含有大量图片和静态页面站点)访问速度,并大大提升以上性质站点稳定性镜像服务:消除了不一样运行商之间互联瓶颈造成影响,实现了跨运行商网络加速,确保不一样网络中用户全部能得到良好访问质量远程加速:远程访问用户依据DNS负载均衡技术智能自动选择Cache服务器,选择最快Cache服务器,加紧远程访问速度带宽优化:自动生成服务器远程Mirror(镜像)cache服务器,远程用户访问时从cache服务器上读取数据,降低远程访问带宽、分担网络流量、减轻原站点WEB服务器负载等功效集群抗攻击:广泛分布CDN节点加上节点之间智能冗于机制,能够有效地预防黑客入侵和降低多
4、种DDoS(Distribution Denial of service ,分布式拒绝服务攻击)对网站影响,同时确保很好服务质量1.8 CDN中关键技术内容公布:它借助于建立索引、缓存、流分裂、组播等技术,将内容公布到距离用户最近边缘服务器请求路由:它是整体性网络负载均衡技术,经过内容路由器中重定向机制,在多个边缘服务器间均衡用户请求,以使用户请求得到最近内容源响应负载均衡:它依据内容可用性、服务器可用性和用户情况,在边缘服务器上,利用应用层交换、流分裂、重定向等技术,智能地平衡负载流量性能管理:它经过内部和外部监控系统,获取网络部件情况信息,测量内容公布端到端性能(如包丢失、延时、平均带宽、
5、开启时间、帧速率等),确保网络处于最好运行状态1.9 CDN中关键技术-内容公布依据内容公布方法能够分为三类公布技术协作式推送技术(cooperative push-based):即当源服务器有新内容时,它把内容推送到适宜边缘服务器,边缘服务器间相互协而共享各自内容,避免一个内容被公布到全部边缘服务器,从而降低了复制及更新成本。在此种方法中,CDN维护一个内容和边缘服务器映射表,当用户请求时,能够查询此表,把请求转到距离用户最近含有请求该内容边缘服务器上。非协作式拉取技术(non-cooperative pull-based):用户请求总是被重定向到距离最近边缘服务器,假如边缘服务器没有所请求
6、内容,则边缘服务器向源服务器请求该内容。该技术简单,易实现,缺点是负责向用户提供服务边缘服务器不总是最优。协作式拉取技术(cooperative pull-based):它和非协作式拉取技术关键不一样在于,当一个边缘服务器没有用户请求内容时,它能够从其它边缘服务器请求当地所没有内容。此种方法优点是降低源服务器处带宽成本。现在此技术仍处于研究试验阶段2.0 CDN中关键技术-请求路由基于DNS内容请求路由机制2.1评价CDN系统性能指标缓存命中率(Cache hit ratio):在一定时间内,假设用户总请求次数为N,其中,用户请求内容不在边缘服务器上而需要向源服务器获取内容请求次数为M,则H=
7、(N-M)/N即为缓存命中率。命中率越高意味CDN系统效率越高。用户得到平均响应越快保留带宽RB(Reserved bandwidth):在一定时间内,源服务器端所使用网络带宽。RB越小,说明CDN发挥作用越大,为源服务器节省带宽成本约多响应时延(Latency):指用户发出请求至得到请求响应间时间。平均响应时延越小说明CDN性能越好,源服务器消耗带宽越小边缘服务器利用率(Edge server utilization):该指标测量是边缘服务器资源利用程度,常见CPU利用率、I/0值大小、接收用户请求总次数、和存放空间比率来衡量可靠性(Reliability):关键是经过分组丢包率来衡量CDN
8、为终端用户所提供服务可靠性。2.2 视频多媒体特征对CDN构建影响带宽消耗:相对于传统网页加速、文件下载加速等业务,提供视频业务CDN消耗网络带宽大存放消耗:占用CDN边缘服务器和内部缓存服务器存放空间大实时性要求更高:需要更低响应时延,为保持流畅视频效果,需要更低时延抖动2.3 多媒体传送类型流式传送:指流式数据经网络传送到目标地,若目标地有视频播放器,则既可实时播放文件下载式传送:常指未经流化数据经网络传输到目标地,若目标地视频播放器,只有视频文件完整下载完后,视频播放器才能播放视频2.4构建系统性能目标系统选型、技术取舍、系统规模规模等等全部需要从两个角度考虑1.从系统本身考虑:CDN系
9、统代价最小化,也就是低成本2.边缘服务器、缓冲设备等成本3.CDN消耗带宽成本4.从系统对外提供服务角度:为用户提供高质量服务及用户体验,也就是高产出5.用户响应时间6.视频流畅度7.视频数量及类型组成(不一样清楚度视频百分比)8所能支持并发用户量9.用户平均在线时间(直接决定了视频广告效果)2.5经典CDN架构两层层次结构在高层进行内容分布(content distribution)进行是常规文件类传送(对点播而言)或流式传送(对直播而言)在低层进行内容传送(content delivery)进行流式传送2.6 构建CDN包含关键问题1.CDN节点部署1.1 区域中心部署在大城市城域网1.2
10、 高层复制节点可下挂多个cache(最少2个以提供互备份)1.3 低层边缘服务器(proxy/caches)数量由现有用户数或潜在用户数决定(若是独立CDN提供商,一个关键决定原因是连接多少个ISP)2.网络配置2.1 高层可用高速骨干网(10-40G)2.2 低层可用城域网(以太网)(1-10G)3.内容分配及分布(Content Allocation and Distribution):CDN性能不仅和缓存、边缘服务器数量相关系,更关键是和视频内容分布相关3.1 视频文件是否分块?3.1.1 若分块,可提升网络交换和存放效率,不过提升复杂性3.1.2 若不分块,实现简单3.2 内容公布方法
11、3.2.1 基于推送(push):可减小用户访问时延,提升Cache命中率3.2.2 基于拉取(Pull):实现简单,存放节省3.3. Cache管理策略:因为视频内容占存放空间大,而存放总是有限,必需有很好Cache管理策略,目前常见是LRU(Leastrecently used )4.内容传输方法(Content Transmission)4.1 对于直播应用,全程使用流式传输方法4.2 对于点播等应用,只在边缘服务器和用户间使用流式传输方法5.用户请求路由目前大全部采取基于DNS重定向技术6.边缘服务器选择,需考虑以下原因:6.1 用户地理位置6.2 用户请求内容可提供性6.3 可提供服务节点负载情况6.4 可选择全国八大节点机房和BGP机房