1.影响网络传输的四个因素
(1)“第一公里”:网站服务器接入互联网的链路所能提供的带宽。
(2)“最后一公里”:用户接入带宽。
(3)对等互联关口:不同网络之间的互联互通带宽。
(4)长途骨干传输:首先是长距离传输时延问题,其次是骨干网拥塞问题

2.用户通过浏览器访问网站的过程如下图所示:

①用户在自己的浏览器中输入要访问的网站域名。

②浏览器向本地DNS服务器请求对该域名的解析。

③本地DNS服务器中如果缓存有这个域名的解析结果,则直接用户的解析请求。

④本地DNS服务器中如果没有关于这个域名的解析结果的缓存,则以递归方式向整个DNS系统请求解析,获得应答后将结果反馈给浏览器。

⑤浏览器得到域名解析结果,就是该域名相应的服务设备的IP地址。

⑥浏览器向服务器请求内容。

⑦服务器将用户请求内容传送给浏览器。

3.引入CDN后的访问流程

①当用户点击网站页面上的内容URL,经过本地DNS系统解析,DNS会最终将域名的解析权交给CNAME指向的CDN专用DNS服务器。

②CDN的DNS服务器将CDN的全局负载均衡设备IP地址返回用户。

③用户向CDN的全局负载均衡设备发起内容URL访问请求。

④CDN全局负载均衡设备根据用户IP地址,以及用户请求的内容URL,选择一台用户所属区域的区域负载均衡设备,告诉用户向这台设备发起请求。

⑤区域负载均衡设备会为用户选择一台合适的缓存服务器提供服务。选择的依据包括:根据用户IP地址,判断哪一台服务器距离用户最近;根据用户请求的URL携带的内容名称,判断哪一台服务器上有用户所需内容;查询各个服务器当前的负载情况,判断哪一台服务器尚有服务能力。基于以上这些条件的综合分析后,区域负载均衡设备会向全局负载均衡设备返回一台缓存服务器的IP地址。

⑥全局负载均衡设备把IP地址返回用户。

⑦用户向缓存服务器发起请求,缓存服务器响应用户请求,将用户所需内容传送到用户终端。如果这台缓存服务器上并没有用户想要的内容,而区域负载均衡设备依然将它分配给了用户,那么这一台服务器要向它的上一级缓存服务器请求内容,直至追溯到网站的源服务器将内容拉到本地。

4.CDN的系统架构

5.CDN部署架构

在一个节点中,Cache设备和本地负载均衡设备的连接方式有两种:一种是旁路方式,一种是穿越方式。

6.CDN系统分类

(1)基于不同内容承载类型的分类

  • 网页加速
  • 流媒体加速
  • 文件传输加速
  • 应用协议加速:针对TCP/IP等传输协议的优化。

(2)基于内容生成机制的分类

主流的Web网站系统都能够在逻辑上分为三个层次,表现层、业务逻辑层、数据访问层。

根据CDN完成的不同层面的Web转移功能,将CDN分为表示层复制(静态网站)和全站复制(动态网站)两类。

7.CDN系统三维模型图

X轴方向是贯穿系统头端到终端的垂直系统,每一种业务能力都可以有自己的中心、区域、边缘层设备,有自己独立的管理系统、负载均衡系统、分发服务系统。
因此,在X轴方向上,每一个CDN服务能力都可以是一套相对独立的子系统。

Y轴方向的分级划分是依据CDN逐级缓存、分级调度、分级服务的要求。
CDN的管理功能、调度功能、缓存功能、服务功能都是分级部署的,不同层级的相同功能实体之间相互配合。
从控制功能上看,往往下一级控制实体是上一级控制实体的执行者;
从缓存功能上看,上一级缓存是下一级缓存实体的内容提供者;
从 服务功能上看,上一级服务实体是下一级服务实体的能力补充和备份。

Z轴方向上,管理层主要完成CDN网络管理和业务逻辑处理。
网络管理提供IP网络层面的配置管理、故障管理、网络性能管理以及网络安全管理等,负责对整个CDN系统的网络和设备资源进行抽象,提取其业务能力,提供给上层业务平台。
业务逻辑处理指CDN系统辅助其服务的业务平台完成部分应用层功能的实现,完成和其他系统之间的接口适配,负责系统的认证、计费、统计分析、系统管理、用户管理、SP管理等功能。
控制平面负责对整个CDN网络的内容分布情况进行管理,对内容分发和访问路由策略进行控制,它是整个内容分发系统内容数据流向的控制点。
数据平面承担实际的内容分发工作,根据Z轴方向与X轴、Y轴相交点的具体要求,数据平面设备具备不同的应用服务提供能力。

参考资料:《CDN技术详解》 pp.1-29

CDN技术详解笔记的更多相关文章

  1. 《CDN技术详解》 - CDN知多少?

    开发时间久了,就会接触到性能和并发方面的问题,如果说,在自己还是菜鸟的时候完全不用理会这种问题或者说有其他的高手去处理这类问题,那么,随着经验的丰富起来,自己必须要独立去处理了.或者,知道思路也行,毕 ...

  2. CDN技术详解及实现原理

    CDN技术详解 一本好的入门书是带你进入陌生领域的明灯,<CDN技术详解>绝对是带你进入CDN行业的那盏最亮的明灯.因此,虽然只是纯粹的重点抄录,我也要把<CDN技术详解>的精 ...

  3. CDN技术详解(七)

    动态内容加速服务的实现 随着Web2.0的兴起,产生了动态网页.个性化内容.电子交易数据等内容的加速,这些就涉及了动态内容加速技术. 静态内容的加速,都是对于表现层的加速,对于动态页面等内容的加速,则 ...

  4. CDN技术详解

    CDN,全称为Content DeliveryNetwork,中文意为"内容分发网络"".通过将网络内容发布到最靠近用户的『边缘节点』,使不同地区的用户在访问相同页面.图 ...

  5. CDN 技术详解(DNS,GSLB,Cache)

    CDN 是什么 CDN(Content Delivery Network,内容分发网络),即全网内容加速服务.为了尽可能的避开互联网上有可能影响数据传输速度和稳定性的瓶颈和环节,使内容传输的更快.更稳 ...

  6. CF卡技术详解——笔记

    知识太全面了,摘抄摘不完,还是粘过来加上注释和笔记吧. 重点以及断句用加粗,注释用红括号. 一.CF卡技术及规格 一.CF卡技术及规格 1.CF卡简史 随着数码产品的高速普及,近年来闪存卡也进入了高速 ...

  7. CDN学习笔记二(技术详解)

    一本好的入门书是带你进入陌生领域的明灯,<CDN技术详解>绝对是带你进入CDN行业的那盏最亮的明灯.因此,虽然只是纯粹的重点抄录,我也要把<CDN技术详解>的精华放上网.公诸同 ...

  8. Windows驱动——读书笔记《Windows驱动开发技术详解》

    =================================版权声明================================= 版权声明:原创文章 谢绝转载  请通过右侧公告中的“联系邮 ...

  9. TCP-IP详解笔记6

    TCP-IP详解笔记6 用户数据报协议和IP分片 UDP是一种保留消息边界的面向数据报的传输层协议. 不提供差错纠正, 队列管理, 重复消除, 流量控制和拥塞控制. 提供差错检测, 端到端(end-t ...

随机推荐

  1. MySQL 导出函数与存储过程

    C:\Users\yan>mysqldump -u用户 -p -n -t -d -R 数据库 > .sql Enter password: ******** C:\Users\yan> ...

  2. HDU 2883 kebab(最大流)

    HDU 2883 kebab 题目链接 题意:有一个烧烤机,每次最多能烤 m 块肉.如今有 n 个人来买烤肉,每一个人到达时间为 si.离开时间为 ei,点的烤肉数量为 ci,每一个烤肉所需烘烤时间为 ...

  3. ora-4031错误

    SQL语句共享的不好,即没有使用绑定变量 来一个SQL语句,在Shared Pool中分配一块内存……再来一个,再分配... 最后共享内存分配完了,有可能都在5k-8K 之间,如果突然又来一个SQL语 ...

  4. git工具 将源码clone到本地指定目录的三种方式

      git工具 将源码clone到本地指定目录的三种方式 CreationTime--2018年7月27日15点34分 Author:Marydon 1.情景展示 运行git-bash.exe,输入命 ...

  5. Content-Length实体的大小

    •15.2 Content-Length实体的大小 Content-Length首部指出了报文中实体主体的字节大小,这个大小包含了所有内容的编码,如对文本进行gzip压缩的话,那么Content-Le ...

  6. 去除DataTable重复数据的三种方法(转)

    转自:https://www.cnblogs.com/sunxi/p/4767577.html 业务需求 最近做一个把源数据库的数据批次导出到目标数据库.源数据库是采集程序采集而来的原始数据库,所以需 ...

  7. MySQL Desc指令相关

    MySQL Desc指令相关   2011-08-09 11:25:50|  分类: my基本命令 |举报 |字号 订阅 1.desc tablename; 例如 :mysql> desc jo ...

  8. ContactsContract.Contacts之sort_key

    // 从Contacts表中找出所有联系人 Cursor cursor = context.getContentResolver().query(         ContactsContract.C ...

  9. 笔记本连接老式显示器(VGA线+HDMI接口)

    参考:http://www.cnblogs.com/me115/p/3970945.html

  10. .NET的多种事务处理

    Oracle 的事务操作,有时候想在批量操作数据集合的时候,执行一次失败,即为了避免数据异常,将所有的操作回滚..NET给我们提供了良好的事务操作,Oracle端也有事务操作,可以灵活使用,此处介绍. ...