前言

本文梳理CDN技术

CDN是什么

CDN(Content Delivery Network,内容分发网络)是构建在现有互联网基础之上的一层智能虚拟网络,通过在网络各处部署节点服务器,实现将源站内容分发至所有CDN节点,使用户可以就近获得所需的内容。

为什么需要CDN

CDN服务缩短了用户查看内容的访问延迟,提高了用户访问网站的响应速度与网站的可用性,解决了网络带宽小、用户访问量大、网点分布不均等问题。

CDN的优势:

  • 提高了用户访问网站的响应速度

  • 为了实现跨运营商、跨地域的全网覆盖
    互联不互通、区域ISP地域局限、出口带宽受限制等种种因素都造成了网站的区域性无法访问。CDN加速可以覆盖全球的线路,通过和运营商合作,部署IDC资源,在全国骨干节点商,合理部署CDN边缘分发存储节点,充分利用带宽资源,平衡源站流量。

  • 为了保障你的网站安全
    CDN的负载均衡和分布式存储技术,可以加强网站的可靠性,相当无无形中给你的网站添加了一把保护伞,应对绝大部分的互联网攻击事件。防攻击系统也能避免网站遭到恶意攻击。

  • 为了异地备援
    当某个服务器发生意外故障时,系统将会调用其他临近的健康服务器节点进行服务,进而提供接近100%的可靠性,这就让你的网站可以做到永不宕机。

  • 为了节约成本
    投入使用CDN加速可以实现网站的全国铺设,你根据不用考虑购买服务器与后续的托管运维,服务器之间镜像同步,也不用为了管理维护技术人员而烦恼,节省了人力、精力和财力。

  • 为了让你更专注业务本身
    CDN加速厂商一般都会提供一站式服务,业务不仅限于CDN,还有配套的云存储、大数据服务、视频云服务等,而且一般会提供7x24运维监控支持,保证网络随时畅通,你可以放心使用。并且将更多的精力投入到发展自身的核心业务之上。

CDN基本工作流程

  1. 当用户点击网站页面上的内容URL,经过本地DNS系统解析,DNS系统会最终将域名的解析权交给CNAME指向的CDN专用DNS服务器。
  2. CDN的DNS服务器将CDN的全局负载均衡设备IP地址返回用户。
  3. 用户向CDN的全局负载均衡设备发起内容URL访问请求。
  4. CDN全局负载均衡设备根据用户IP地址,以及用户请求的内容URL,选择一台用户所属区域的区域负载均衡设备,告诉用户向这台设备发起请求。
  5. 区域负载均衡设备会为用户选择一台合适的缓存服务器提供服务,选择的依据包括:根据用户IP地址,判断哪一台服务器距用户最近;根据用户所请求的URL中携带的内容名称,判断哪一台服务器上有用户所需内容;查询各个服务器当前的负载情况,判断哪一台服务器尚有服务能力。基于以上这些条件的综合分析之后,区域负载均衡设备会向全局负载均衡设备返回一台缓存服务器的IP地址。
  6. 全局负载均衡设备把服务器的IP地址返回给用户。
  7. 用户向缓存服务器发起请求,缓存服务器响应用户请求,将用户所需内容传送到用户终端。如果这台缓存服务器上并没有用户想要的内容,而区域均衡设备依然将它分配给了用户,那么这台服务器就要向它的上一级缓存服务器请求内容,直至追溯到网站的源服务器将内容拉到本地。
  • CNAME
    规范名称记录(Canonical Name),用于描述别名与域名的对应关系,这种记录允许您将多个名字映射到同一台计算机。
    当域名服务器查找一个域名时,找到一条CNAME记录,它会用记录中的规范名来替换这个域名别名,然后再查这个规范名的A记录,从而找到与规范名对应的IP地址,这样,就实现了对请求查找域名的IP地址响应。

CDN系统架构

  • 分发服务系统
    该系统的主要作用是实现将内容从内容源中心向边缘的推送和存储,承担实际的内容数据流的全网分发工作和面向最终用户的数据请求服务。

  • 负载均衡系统
    它是一个CDN系统的神经中枢,主要功能是负责对所有发起服务请求的用户进行访问调度,确定提供给用户的最终实际访问地址。

  • CDN的运营管理系统
    它与一般的电信运营管理系统类似,分为运营管理和网络管理两个子系统。

    • 运营管理子系统是CDN系统的业务管理功能实体,负责处理业务层面的与外界系统交互所必需的一些收集、整理、交付工作,包含客户管理、产品管理、计费管理、统计分析等功能。
    • 网络管理子系统实现对CDN系统的网络设备管理、拓扑管理、链路监控和故障管理,为管理员提供对全网资源进行集中化管理操作的界面,通常是基于Web方式实现的。

CDN系统分类

从CDN承载的内容类型来看,主要有静态网页内容、动态网页内容、流媒体、下载型文件和应用协议,因而我们将CDN服务分为:

  • 网页加速
  • 流媒体加速
  • 文件传输加速
  • 应用协议加速

CDN系统模型

其中水平 X 轴方向按照不同类型业务能力进行划分,
垂直Y轴方向按照中心、区域和边缘三级网络结构进行划分(根据网络规模情况,区域一级可选);
Z 轴方向按照数据平面、管理平面和控制平面进行划分。

  • X 轴方向
    它是贯穿系统头端到终端的垂直系统,每一种业务能力都可以有自己的中心、区域、边缘层设备,有自己独立的管理系统、负载均衡系统、分发服务系统。因此,在 X 轴方向上,每一个CDN服务能力都可以是一套相对独立的子系统。
  • Y轴方向
    它的分级划分是依据CDN逐级缓存、分级调度、分级服务的要求。CDN的管理功能、调度功能、缓存功能、服务功能都是分级部署的,不同层级的相同功能实体之间相互配合。从控制功能上看,往往下一级控制实体是上一级控制实体的执行者;从缓存功能上看,上一级缓存是下一级缓存实体的内容提供者;从服务功能上看,上一级服务实体是下一级服务实体的能力补充和备份。
  • Z轴方向
    管理层主要完成CDN网络管理和业务逻辑处理。网络管理提供IP网络层面的配置管理、故障管理、网络性能管理以及网络安全管理等,负责对整个CDN系统的网络和设备资源进行抽象,提取其业务能力,提供给上层业务平台。业务逻辑处理指CDN系统辅助其服务的业务平台完成部分应用层功能的实现,完成和其他系统之间的接口适配,负责系统的认证、计费、统计分析、系统管理、用户管理、SP管理等功能。控制平面负责对整个CDN网络的内容分布情况进行管理,对内容分发和访问路由策略进行控制,它是整个内容分发系统内容数据流向的控制点。数据平面承担实际的内容分发工作,根据Z轴方向与X轴、Y轴相交点的具体要求,数据平面设备具备不同的应用服务提供能力。

全局负载均衡GSLB

  • 负载均衡
    就是将大量的请求通过一定的策略分摊到不同的服务节点。他可以提高服务器的影响速度及利用效率,避免软件或者硬件模块出现单点失效,解决网络拥塞问题,实现地理位置无关性,为用户提供较一致的访问质量。

  • 全局负载均衡GSLB
    由于现实中存在各种不稳定因素,比如某个服务器集群所在的数据中心断电,洪水或者地震造成数据中心瘫痪等等。在一个数据中心内,无论采用怎样的技术,总可能存在一些不可抗因素,导致其瘫痪。所以通常会把服务器分散部署到多个数据中心,以最大程度减小灾害对服务质量产生影响的概率和程度。
    另外,CDN系统总是希望用距离用户最近的设备为其提供服务,这也需要在不同地域部署多个节点。
    GSLB系统就是针对这个问题的。它负责多个CDN节点之间相互协作,将各节点和设备的负载保持在一个有利于提供优质服务的水平。GSLB的负载均衡结果可能直接将用户分配到RS,也可能将用户交付到下一层次的负载均衡系统。

  • GSLB实现方式比较
    目前常用的是基于DNS的解析方式

结语

本文梳理CDN相关知识,以对网络有更整体的了解。

参考:
CDN概念基本介绍
CDN原理简单介绍

计算机网络 CDN技术介绍相关推荐

  1. 论述计算机网络前沿技术,介绍一些计算机网络前沿应用技术

    介绍一些计算机网络前沿应用技术 來源:互聯網  2010-05-08 04:22:14  評論 分類: 電腦/網絡 >> 互聯網 問題描述: 我们要写论文,各位请帮帮忙啊.最好详细点,有一 ...

  2. 网易视频云分享:流媒体技术介绍(上篇)

    网易视频云分享:流媒体技术介绍(上篇) 网易视频云2016-04-14 11:49:49 创业 媒体 技术 阅读(949)评论(0) 声明:本文由入驻搜狐公众平台的作者撰写,除搜狐官方账号外,观点仅代 ...

  3. 流媒体技术介绍(上)

    流媒体就是指采用流式传输技术在网络上连续实时播放的媒体格式,如音频.视频或多媒体文件.所谓流媒体技术就是把连续的影像和声音信息经过压缩处理后放上网站服务器,由视频服务器向用户计算机顺序或实时地传送各个 ...

  4. 流媒体技术介绍(中篇)

    目前,HAS技术的实现方式从标准的类型来看主要有两大类:一类是企业方案,即提供了整体的技术解决方案,如Apple Live Streaming技术.Adobe Dynamic Streaming技术. ...

  5. cdn的费是多少_通常的cdn收费标准介绍

    通常的cdn收费标准介绍 发布时间:2020-04-15 10:35:28 来源:亿速云 阅读:171 作者:三月 与其他CDN服务商相比,亿速云CDN的主要优势包括稳定快速.性价比高.简单易用.高效 ...

  6. 网卡VXLAN的offload技术介绍

    1.1 offload技术概述 首先要从术语offload说起,offload指的是将一个本来有软件实现的功能放到硬件上来实现,这样就可以将本来在操作系统上进行的一些数据包处理(如分片.重组等)放到网 ...

  7. CDN技术简介及CDN绕过

    什么是CDN CDN的全称是Content Delivery Network,即内容分发网络.CDN是构建在现有网络基础之上的智能虚拟网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡.内容分发 ...

  8. 计算机网络仿真技术概述,浅谈计算机网络仿真技术及其研究

    浅谈计算机网络仿真技术及其研究 来源:用户上传 作者: 摘要:在信息化和工业化相互促进的现代化进程中,计算机网络仿真技术将逐步深入到国民经济的各个领域,并将扮演越来越重要的角色.该文正是基于此背景,对 ...

  9. 5G下CDN技术与产业发展变化,将会如何引领时代发展?

    导语 | 近日,云+社区开发者大会(北京站)圆满落幕.本次开发者大会的主题为"5G探索:核心技术与挑战",邀请了腾讯内部及业内行业大咖就5G场景下的多个方向进行探讨.本文是廖龙老师 ...

  10. Tensorrt一些优化技术介绍

    Tensorrt一些优化技术介绍 Figure 1. A quantizable AveragePool layer (in blue) is fused with a DQ layer and a ...

最新文章

  1. 【机器学习入门到精通系列】正则化解决过拟合问题(附Iris-L1 正则化代码)
  2. 爸,这下你还敢抽烟么?
  3. mysql数据库query cache
  4. php+spl+栈,PHP SPL标准库之数据结构栈(SplStack)介绍
  5. pytorch 之 torch.max() 和 torch.min() 记录
  6. 为什么不同的深度学习框架要使用不同的保存格式(转)
  7. JDK环境变量设置(linux)
  8. 全Flash网站和单个Flash作品制作的区别
  9. unity贪吃蛇c 语言代码,unity实现简单贪吃蛇游戏
  10. paip.提升用户体验---免维护列表字段
  11. 在Visual Studio中使用Visual Basic教程:创建一个控制台应用
  12. 高校全场景智慧教室建设方案
  13. matlab max/min/median函数用法以及自定义函数求最大最小值和中位数
  14. 论文笔记:Reciprocal Multi-Layer Subspace Learning for Multi-View Clustering
  15. UOS统信系统任务栏不见解决方案
  16. onlyoffice开发java,利用 ONLYOFFICE 将在线文档编辑器集成到 Python Web 应用程序中
  17. 你曾后悔进入 IT 行业吗?
  18. 怎么能快速学会计算机,初学者怎样学习电脑能够快速入门(免费科普电脑基础知识)...
  19. iphone13到底香不香,真的这么难抢?
  20. CleanMyMac X 4.8版本更新!

热门文章

  1. xlsx模块 前端_前端使用SheetJS的xlsx.js实现excel表格生成
  2. CBLUE: A Chinese Biomedical LanguageUnderstanding Evaluation Benchmark
  3. wow mysql dbc_关于WOW的DBC文件内容的介绍
  4. 在某网课学习前端笔记整理js篇31-ajax
  5. 2022年认证杯SPSSPRO杯数学建模A题(第一阶段)人员的紧急疏散求解全过程文档及程序
  6. pix4d正射修补水面_大疆精灵4RTK航线规划技巧以及在CC、Pix4D和Photoscan数据处理教程汇总...
  7. Matlab求矩阵均值
  8. 【图数据库】Neo4j下载、安装、配置、服务注册(国内ftp快速下载)
  9. 动态规划—代码查重实验
  10. java环境_Java 开发环境配置