一 互联网应用质量概述

1.1 互联网应用质量

互联网应用质量指标——QoE,其主要指标:
服务成功率:指用户所请求的服务成功完成的几率。
服务建立时间:指从服务请求到服务呈现所花费的时间,并且会因为用户请求服务内容的不同而表现出微妙到秒级的区别。
时延:指用户从发出请求到获得结果的时间。
视听播放卡顿:指播放音频或视频时,由于没有接收到足够的数据或较低的帧传输速率而引起的播放暂停的现象。
图像清晰度:指图片会视频画面上的细节信息和边界信息的清晰程度以及精确还原实物色彩的能力。

1.2 网络性能——时延

完整时延:终端处理指令时延——>网络时延——>服务器响应时延——>网络时延——>终端处理响应时延。
网络时延:指数据分组穿越一个或多个网段所经历的时间。其中路由处理、ADU(用户数据单元)的传输、服务器对用户请求的处理以及距离产生的网络传输时延,构成了网络时延的主要因素。
发送时延:指在发送数据时,数据从发送端进入传输介质所消耗的时间。发送时延=数据帧长度/发送速率。
传播时延:指电磁波在传播过程中消耗的时间。传播时延=传播距离/传播速率。
处理时延:指服务器或路由器接收到数据分组时,会检测数据分组的头部,决定将该数据分组传输到哪一个链路上所需的时间。
排队延时:指PDU在传输链路上每一个排队等待所引起的时间延时的集合。

1.3 网络性能——QoS

网络的时延、抖动、带宽以及分组丢失统称为服务性能(QoS)指标,可理解为底层分组数据传输的性能指标。

二 常见互联网应用部署

2.1 集中式部署

集中式部署存在单点问题,同时不利益系统的扩容,也会带来网络时延过大的问题。

2.2 利用网站镜像加速

网站镜像是通过复制整个网站或部分网页内容并将其重新存储到其他服务器,让用户在新服务器依然能够访问想获得的内容,并且为主站分担了网络流量。
网络镜像在需要重复上传的内容过多时会显得非常麻烦,通常商业网站一般并不采用镜像的方法。

2.3 CDN进行加速

CND=智能的镜像+缓存+流量调度,CND主要优势如下:

  • 缓解源站服务器访问压力;
  • 优化热点内容的分布,合理缓存,减轻骨干网传输的流量压力;
  • 提升用户的访问质量和体验,全面提高网站访问速度;
  • 增强网站服务的可靠性,解决网站突发峰值流量问题;
  • 解决不同运营商之间互联互通问题造成的影响;
  • 提高安全性,有效防止异常流量对源站的攻击。

三 CDN基本概念

3.1 CDN的定义

内容分发网络(Content Delivery Network)是在现有网络中增加一层新的网络架构,从而实现将源站内容发布和传送到最靠近用户的边缘地区,使用户可以就近访问想要的内容,提高用户访问的响应速度。
内容:CDN的内容通常是以下两种:静态内容以及动态内容。
分发:CDN的分发是指利用一定的传送策略,将用户请求的内容发布到距离该用户最近的节点。
网络:CDN由多个(通常成千上万)分布式服务器组成,通过服务器的通信,把内容分发和传送给终端用户。CDN各节点之间是通过电信运营商的宽带网络进行通信,即CDN网络是在电信运营商的网络之上的一层网络。

3.2 CDN基本原理

依靠放置在各地的缓存服务器,通过全局调度以及内容分发等功能,将用户需要的部分内容部署到最贴近用户的地方,将原本低效、不可靠的IP网络转变成高效、可靠的智能网络,满足用户对内容访问质量的更高要求,改善互联网网络拥塞问题,提高用户访问网站的响应速度。

四 CDN工作过程

4.1 基本工作过程

  • 内容注入:内容注入是CDN能为用户提供服务的第一步,是内容从源站注入CDN的过程,使得用户能从CDN系统中获取源站的内容;
  • 用户请求调度:用户请求调度是用户向网站发起请求,最终用户被引导到最佳的有内容的CDN节点的过程。
  • 内容分发:将用户所需访问的内容分发到用户,或从上级节点拉去内容后,将内容分发到下级节点。
  • 内容服务:将找到的最靠近用户的CDN节点中的内容交付给终端用户。

4.2 CDN内容接入

  • 内容存储接入:指源站在发布内容前,提前将内容注入到CDN中。采取此方式接入的内容将永久存储在CDN中,直到通过内容接入操作指令对该内容显式删除。
  • 内容预注入:指源站在发布内容前,提前将内容注入到CDN中。但采用此方式接入的内容并不会永久存储在CDN中,而仅仅是进行内容缓存,CDN会根据内容访问的热度情况对缓存的内容进行智能删除。
  • 实时回源:指源站在内容发布之前不向CDN注入内容,但当用户内容访问请求时,CDN实时地从源站拉取内容。

4.3 CDN用户请求调度

全局调度:根据用户所在地理位置不同,在各个节点之间进行分析决策,将用户请求转移到整个网络中最靠近用户的节点。
本地调度:通常被限制在一顶地区范围内,并且更加关注CDN服务器设备具体的健康情况与负载情况,根据实时响应时间,将任务分配给最适合的服务器设备进行处理,实现更精细粒度的调度决策。

4.4 CDN内容分发

Push方式:一种主动分发的方式,由CDN内容管理系统发起,将内容从源站或者中心内容库主动分发到各边缘的CDN节点,分发协议通常有HTTP、FTP等。
提示:通过Push分发的内容一般是比较热点的内容,通过Push方式预先主动分发到边缘CDN节点,可实现有针对性的内容提供,属于一种智能的主动分发策略。
Pull方式:一种被动分发的方式,由用户请求驱动,当用户请求的内容在本地的边缘CDN节点上不存在(未命中)时,该CDN节点启动Pull方式从内容源或其他CDN节点实时拉取内容,在Pull方式下,内容是按需分发的。
提示:通过Pull分发的内容一般访问比较集中,例如热点的流媒体内容,Pull方式比较适合内容访问分散的情况。


混合分发方式:Push和Pull两种方法结合的一种机制。一般利用Push方法进行内容预推,Pull方式拉取。

4.5 CDN内容服务

CDN内容服务根据用户访问的内分为静态内容服务、动态内容服务。

001.CDN概述的更多相关文章

  1. 【java基础学习001】概述

    001.1    一个简单的Java程序 public class hello { public static void main(String[] args) { System.out.printl ...

  2. CDN 概述

    占位 CDN(Content Delivery Network)内容发布网络 推荐Blog: CDN 学习笔记

  3. 001 Security概述

    1.Spring Security概述 Spring Security是用于解决认证与授权的框架 SpringSecurity默认要求所有的请求都是必须先登录才允许的访问 BCrypt加密算法 BCr ...

  4. 李洪强漫谈iOS开发[C语言-001]-开发概述

  5. CDN概述

  6. 001.ActiveMQ概述

    1. 概念 ActiveMQ是Apache推出的,一款开源的,完全支持JMS1.1和J2EE1.4规范的JMS Provider实现的消息中间件(Message Oriented Middleware ...

  7. Java Part 001( 01_01_Java概述 )

    Java作为编程语言, 甚至超出了语言的范畴, 成为一种开发平台, 一种开发规范. Java语言相关的JavaEE规范里, 包含了时下最流行的各种软件工程理念, 学习Java相当于系统的学习了软件开发 ...

  8. web网站加速之CDN(Content Delivery Network)技术原理

    在不同地域的用户访问网站的响应速度存在差异,为了提高用户访问的响应速度.优化现有Internet中信息的流动,需要在用户和服务器间加入中间层CDN. 使用户能以最快的速度,从最接近用户的地方获得所需的 ...

  9. CDN架构以及原理分析

    详见: http://blog.yemou.net/article/query/info/tytfjhfascvhzxcytp61  在不同地域的用户访问网站的响应速度存在差异,为了提高用户访问的响应 ...

随机推荐

  1. Confluence 6 管理你的 Confluence 许可证

    你的许可证能够让你在运行 Confluence 的时候在指定的时间段获得特定的支持.同时这个许可证也定义了在你 Confluence 中可以使用的用户数量. 希望快速的查看当前的许可证信息,你可以进入 ...

  2. 第一次Java测试及感触

    周四进行了java测试,感触很深,测试的题目是用Java实现一个ATM机的管理系统.最后3个小时后,我没有完成这次测试,但是我找到了自己的很多不足,明确了自己的问题究竟在哪里. 关于这次测试我不会的最 ...

  3. Pandas模块:表计算与数据分析

    目录 Pandas之Series Pandas之DataFrame 一.pandas简单介绍 1.pandas是一个强大的Python数据分析的工具包.2.pandas是基于NumPy构建的. 3.p ...

  4. Matplotlib模块:绘图和可视化

    一.简单介绍Matplotlib 1.Matplotlib是一个强大的Python绘图和数据可视化的工具包 2.安装方法:pip install matplotlib 3.引用方法:import ma ...

  5. Imperial roads 非严格次小生成树

    cf测评姬比uva快了五倍... /* 不管这条边是不是在mst上,直接跑lca求出路径上的最大边w即可 ans=mst-w+dist(u,v) */ #include<bits/stdc++. ...

  6. 小LK玩积木

    小LK玩积木 时间限制: 1 Sec  内存限制: 128 MB 题目描述 HH最近通过黑洞APP下载了一个盗梦APP,据说能进入一个人的梦里做一些嘿嘿嘿的事情,秉着怀疑的态度HH偷偷地潜入LK的梦中 ...

  7. MySQL is running but PID file could not be found(解决方法)

    启动MySQL时报错: [root@xzw /]# service mysqld status MySQL is running but PID file could not be found    ...

  8. 修改ElementUI源码样式

    参考:https://segmentfault.com/a/1190000010932321

  9. 安装Mysql5.6.19

    存在异常: ERROR (HY000): Can't connect to MySQL server on 'localhost' (10061) 原因:Mysql的服务没有启动 windows7启动 ...

  10. UI开发总结

    1. bootstrap tooltip 修改内容 <i class="ace-icon fa fa-user" id="test-tooltip" ti ...