首页 > 其他分享 >3分钟了解CDN

3分钟了解CDN

时间:2024-09-03 10:19:35浏览次数:4  
标签:缓存 CDN 分钟 域名 了解 DNS 服务器 节点

CDN

CDN的全称是Content Delivery Network,即内容分发网络

CDN的全称是Content Delivery Network,即内容分发网络

CDN是构建在现有网络基础之上的智能虚拟网络,依靠部署在各地的边缘服务器

通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。

CDN的关键技术主要有内容存储分发技术

属性:一种新型网络构建方式

目的:传输的更快、更稳定

基本原理

CDN的基本原理是广泛采用各种缓存服务器,将这些缓存服务器分布到用户访问相对集中的地区或网络中

在用户访问网站时,利用全局负载技术将用户的访问指向距离最近的工作正常的缓存服务器上,由缓存服务器直接响应用户请求。

CDN的基本思路是尽可能避开互联网上有可能影响数据传输速度和稳定性的瓶颈和环节,使内容传输的更快、更稳定。

通过在网络各处放置节点服务器所构成的在现有的互联网基础之上的一层智能虚拟网络

CDN系统能够实时地根据网络流量和各节点的连接、负载状况以及到用户的距离和响应时间等综合信息将用户的请求重新导向离用户最近的服务节点上。

其目的是使用户可就近取得所需内容,解决 Internet网络拥挤的状况,提高用户访问网站的响应速度。

简单来说,CDN就是一个分布式的缓存服务器,存着非常多文件,并且分布在世界各地,每个人都能就近访问

CDN 的工作过程

传统访问过程

由上图可见,用户访问未使用CDN缓存网站的过程为:

  • 用户输入访问的域名,操作系统向 LocalDns 查询域名的 ip 地址
  • LocalDns向 ROOT DNS 查询域名的授权服务器(这里假设LocalDns缓存过期)
  • ROOT DNS将域名授权 dns记录回应给 LocalDns
  • LocalDns 得到域名的授权 dns 记录后,继续向域名授权 dns 查询域名的 ip 地址
  • 域名授权 dns 查询域名记录后,回应给 LocalDns
  • LocalDns 将得到的域名ip地址,回应给 用户端
  • 用户得到域名 ip 地址后,访问站点服务器
  • 站点服务器应答请求,将内容返回给客户端

CDN 访问过程

通过上图,我们可以了解到,使用了CDN缓存后的网站的访问过程变为:

  • 用户输入访问的域名,操作系统向 LocalDns 查询域名的ip地址.
  • LocalDns向 ROOT DNS 查询域名的授权服务器(这里假设LocalDns缓存过期)
  • ROOT DNS将域名授权dns记录回应给 LocalDns
  • LocalDns得到域名的授权dns记录后,继续向域名授权dns查询域名的ip地址
  • 域名授权dns 查询域名记录后(一般是CNAME),回应给 LocalDns- LocalDns 得到域名记录后,向智能调度DNS查询域名的ip地址- 智能调度DNS 根据一定的算法和策略(比如静态拓扑,容量等),将最适合的CDN节点ip地址回应给 LocalDns
  • LocalDns 将得到的域名ip地址,回应给 用户端- 用户得到域名ip地址后,访问站点服务器
  • CDN 节点服务器应答请求,将内容返回给客户端。(缓存服务器一方面在本地进行保存,以备以后使用,二方面把获取的数据返回给客户端,完成数据服务过程)

通过以上的分析我们可以得到,为了实现对普通用户透明(使用缓存后用户客户端无需进行任何设置)访问

需要使用 DNS(域名解析)来引导用户来访问 Cache 服务器,以实现透明的加速服务。

由于用户访问网站的第一步就是域名解析,所以通过修改dns来引导用户访问是最简单有效的方式。

CDN 的组成

前面我们说过,一个仓配网络是由多个仓库组成的,同理,内容分发网络(CDN)是由多个节点组成的。一般来讲,CDN网络主要由中心节点、边缘节点两部分构成。

img

中心节点

中心节点包括CDN网管中心和全局负载均衡DNS重定向解析系统,负责整个CDN网络的分发及管理。

边缘节点

CDN边缘节点主要指异地分发节点,由负载均衡设备、高速缓存服务器两部分组成。

负载均衡设备负责每个节点中各个Cache的负载均衡,保证节点的工作效率;同时还负责收集节点与周围环境的信息,保持与全局负载均衡DNS的通信,实现整个系统的负载均衡。

高速缓存服务器(Cache)负责存储客户网站的大量信息,就像一个靠近用户的网站服务器一样响应本地用户的访问请求。

通过全局负载均衡DNS的控制,用户的请求被透明地指向离他最近的节点,节点中Cache服务器就像网站的原始服务器一样,响应终端用户的请求。

因其距离用户更近,故其响应时间才更快。

中心节点就像仓配网络中负责货物调配的总仓,而边缘节点就是负责存储货物的各个城市的本地仓库。

CDN 相关技术

首先我们想一下,要想建设一个庞大的仓配网络都需要考虑哪些问题,需要哪些技术手段呢?

缓存算法

缓存代理软件:Squid。 缓存算法决定命中率、源服务器压力、FTP节点存储能力。

分发能力

分发能力取决于IDC能力和IDC策略性分布。

负载均衡

负载均衡软件:Nginx。 负载均衡(智能调度)决定最佳路由、响应时间、可用性、服务质量。

基于DNS

DSN服务器软件:BIND

1.基于DNS的负载均衡以CNAME实现域名中转,智取最优节点服务。

2.缓存点有客户端浏览器缓存、本地DNS服务器缓存。

3.缓存内容有DNS地址缓存、客户请求内容缓存、动态内容缓存。

支持协议

支持协议如静动态加速(图片加速、https带证书加速)、下载加速、流媒体加速、企业应用加速、手机应用加速。

内容发布

它借助于建立索引、缓存、流分裂、组播(Multicast)等技术,将内容发布或投递到距离用户最近的远程服务点(POP)处。

内容存储

对于CDN系统而言,需要考虑两个方面的内容存储问题。一个是内容源的存储 一个是内容在 Cache节点中的存储。

内容路由

它是整体性的网络负载均衡技术,通过内容路由器中的重定向(DNS)机制,在多个远程POP上均衡用户的请求,以使用户请求得到最近内容源的响应。

内容管理

它通过内部和外部监控系统,获取网络部件的状况信息,测量内容发布的端到端性能(如包丢失、延时、平均带宽、启动时间、帧速率等),保证网络处于最佳的运行状态。

相关名词

CNAME记录(CNAME record)

CNAME即别名( Canonical Name );可以用来把一个域名解析到另一个域名,当 DNS 系统在查询 CNAME 左面的名称的时候,都会转向 CNAME 右面的名称再进行查询,一直追踪到最后的 PTR 或 A 名称,成功查询后才会做出回应,否则失败。

例如,你有一台服务器上存放了很多资料,你使用docs.example.com去访问这些资源,但又希望通过documents.example.com也能访问到这些资源,那么你就可以在您的DNS解析服务商添加一条CNAME记录,将documents.example.com指向docs.example.com,添加该条CNAME记录后,所有访问documents.example.com的请求都会被转到docs.example.com,获得相同的内容。

CNAME域名

接入CDN时,在CDN提供商控制台添加完加速域名后,您会得到一个CDN给您分配的CNAME域名, 您需要在您的DNS解析服务商添加CNAME记录,将自己的加速域名指向这个CNAME域名,这样该域名所有的请求才会都将转向CDN的节点,达到加速效果。

DNS

DNS 即 Domain Name System,是域名解析服务的意思。

它在互联网的作用是:把域名转换成为网络可以识别的 IP 地址。

人们习惯记忆域名,但机器间互相只认IP地址,域名与IP地址之间是一一对应的,它们之间的转换工作称为域名解析,域名解析需要由专门的域名解析服务器来完成,整个过程是自动进行的。

比如:上网时输入的www.baidu.com 会自动转换成为 220.181.112.143。

常见的DNS解析服务商有:阿里云解析,万网解析,DNSPod,新网解析,Route53(AWS),Dyn,Cloudflare等。

回源 host

回源host:回源 host 决定回源请求访问到源站上的具体某个站点。

例子1:源站是域名源站为www.a.com,回源host为www.b.com,那么实际回源是请求到www.a.com解析到的IP,对应的主机上的站点www.b.com

例子2:源站是IP源站为1.1.1.1, 回源host为www.b.com,那么实际回源的是1.1.1.1对应的主机上的站点www.b.com

协议回源

指回源时使用的协议和客户端访问资源时的协议保持一致,即如果客户端使用 HTTPS 方式请求资源,当CDN节点上未缓存该资源时,节点会使用相同的 HTTPS 方式回源获取资源;

同理如果客户端使用 HTTP 协议的请求,CDN节点回源时也使用HTTP协议

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。 原始发表:2022-05-17,如有侵权请联系[email protected] 删除

标签:缓存,CDN,分钟,域名,了解,DNS,服务器,节点
From: https://www.cnblogs.com/jianxiaoxiu/p/18394021

相关文章

  • 修改Exchange用户每分钟/每天的发送邮件数量的默认值MessageRateLimit和RecipientRate
    1分钟内连续多封邮件发送失败了,导致大量邮件堵塞。经查,报有下面的错误:4214.4.2Messagesubmissionrateforthisclienthasexceededtheconfiguredlimit这是因为从Exchange2010开始,默认每分钟发送的邮件封数限制为5封,这个限制参数是:MessageRateLimit  微软官网有给出此......
  • 深入了解 PCI 转 XMC 载板转接卡
    深入了解PCI转XMC载板转接卡在当今科技不断发展的时代,计算机硬件和电子设备的接口标准繁多,为了实现不同接口之间的兼容和通信,各种转接卡应运而生。其中,PCI转XMC载板转接卡扮演着重要的角色,为系统的扩展和功能的提升提供了关键的解决方案。PCI(PeripheralComponentInterc......
  • 2分钟搞懂如何计算uart速率
    一、前言1960年代,DEC(DigitalEquipmentCorp)公司的GordonBell采用大约50个分离元件设计了一个电路板,发明了UART。时至今日,已经60多年,虽然在个人消费类电子产品中,UART已近乎绝迹;但在工业、科研、国防、航空/航天等领域,UART却无处不在。很多从事多年嵌入式开发的老铁居然还不会......
  • 手机怎么投屏?这22个投屏软件你了解吗?建议收藏!
    投屏的问题之前也是困扰我一段时间哒!接下来就推荐一系列高清投屏工具,可以投屏到电脑、TV、投影仪和平板端等设备上面,当然通过对比他们的优劣势,有助于你找到适合自己的那一款,不少也是免费滴,适合情侣、办公或者游戏场景使用(#^.^#)!1.Apowermirror下载地址:https://www.apowerso......
  • OBCE 第三章实验 内存管理手动实践 深入了解Queuing(buffer)表
    实验环境:oceanbase企业版V31-1-1架构。1.查看当前资源情况selectunit_config_id,name,max_cpu,min_cpu,round(max_memory/1024/1024/1024)max_mem_gb,round(min_memory/1024/1024/1024)min_mem_gb,round(max_disk_size/1024/1024/1024)max_disk_size_gbfrom__......
  • Pinia 使用(一分钟了解)
    Pinia使用(一分钟了解)Pinia官网地址:Pinia官方文档文章目录Pinia使用(一分钟了解)一、Pinia是什么二、Vue中如何使用Pinia1.安装Pinia2.创建Pinia实例3.定义一个Store4.在组件中使用Store5.模块化和插件三、Pinia包含哪些属性或方法API1.state2.......
  • 教你三分钟做好城市名片海报,包学会!(附模型)
    这期分享StableDiffusion城市名片教程案例以我的家乡福建「泉州」为例本次教程使用哩布哩布AI网站SD在线生成,本次教程使用文生图功能。**①选好大模型;②**输入关键词;③选好LORA模型;④设置controlnet插件参数;⑤设置出图参数(一)选好大模型大模型:XLOutlineColor......
  • 如何正确了解海外问卷调查项目?
    大家好,我是向阳问卷。海外问卷调查在国内已经发展了二十多年,目前存在多种形式。不同于暴利项目,海外问卷调查可以被理解为一种网络搬砖项目。因此,并不像那些风口项目一样,仅仅是一阵风就过去了。对于个人来说,早做和晚做并没有太大区别。然而,如果是公司化运营,情况就不同了。......
  • 通义灵码使用安装教程,3分钟快速上手体验
    通义灵码,是阿里云与通义实验室联合出品的一款基于通义大模型的智能编码辅助工具,提供行级/函数级实时续写、自然语言生成代码、单元测试生成、代码优化、注释生成、代码解释、研发智能问答、异常报错排查等能力,并针对阿里云的云服务使用场景调优,助力开发者高效、流畅的编码。目前个......
  • 通义灵码使用安装教程,3分钟快速上手体验
    通义灵码,是阿里云与通义实验室联合出品的一款基于通义大模型的智能编码辅助工具,提供行级/函数级实时续写、自然语言生成代码、单元测试生成、代码优化、注释生成、代码解释、研发智能问答、异常报错排查等能力,并针对阿里云的云服务使用场景调优,助力开发者高效、流畅的编码。目前个......