CDN系列学习文章(二)——DNS调度

本文主要介绍一下CDN调度,主要是DNS调度。介绍之前,咱们先聊聊CDN为啥要调度呢

CDN为啥要调度呢?

还记之前仓库例子么,零售店怎么知道离自己最近的仓库呢,肯定有一张地图对吧,找到在地图中找到自己位置,然后找到对应离自己最近仓库。对于CDN一样的,调度就是为了找到离用户最近的CDN节点,提供最优质的加速效果。

下面我们讲讲CDN是如何调度的?在正式介绍之前,咱们先了解几个知识点:

  • 什么是调度?这是一个动作,如何分配或者获取资源,这里要想清楚,什么资源?谁分配资源?谁获取资源?在CDN网络里,资源就是CDN服务节点,DNS来分配这些资源供用户请求使用,加快网络资源响应时间。
  • 了解DNS类型以及解析过程。常见类型有递归DNS和权威DNS;解析过程主要分为递归和迭代。递归指的是客户端向LDNS请求,请求一次就可以获取域名A记录;迭代指的是LDNS向各级权威域名DNS请求,需要多次查询才能获取域名A记录。
  • CDN和DNS这两个东东是怎么关联起来?通过修改加速域名CNAME记录,将两者关联起来。这样用户访问加速域名会走CDN节点,还不是源站。

不少同学可能会问,通过httpdns也可以获取CDN节点ip地址。是的,关于httpdns和劫持后续单独介绍,这篇文章主要介绍传统DNS调度,针对传统DNS和EDNS介绍。

传统DNS调度原理

在LDNS没有缓存A记录或者TTL时间过期,需要重新递归拉取。同时CDN接入节点没有缓存1.txt这个文件,需要回源拉取。下面这张图是DNS解析和CDN访问全部流程。全部过程包括LDNS从权威或者更上面根域去层层递归获取A记录,本图简化为从域名服务器开始递归;资源访问CDN节点没有命中,需要回源拉取。

CDN基本调度全部流程

其实上面是最坏情况,一般CDN访问流程,应该是从LDNS直接获取A,从CDN接入点直接获取资源,这样提高加速效果。流程如下:

常见DNS解析流程

上面了解到DNS解析以及CDN访问原理,接下来我们分别针对不同LDNS类型,看看CDN服务厂家如何提供CDN节点IP。

1.传统DNS

例如广东电信LDNS地址 61.144.56.100,当LDNS递归向CDN服务厂家DNS请求A记录时,例如上图 tencent DNS会根据61.144.56.100这个ip归属来返回对应地区节点IP地址。

传统DNS会有一个缺点就是:如果用户端写死了DNS,如果位置地址发现大的偏移,会影响访问质量。例如一个北京用户,PC机配置北京DNS;当该用户到上海出差,由于DNS设置为北京DNS,这时通过DNS解析得到最佳的CDN节点是北京地域,这样从上海访问北京节点,由于出现跨地域情况,会影响访问速度。

2.EDNS

EDNS例如119.29.29.29.当LDNS递归向CDN服务厂家DNS请求A记录时,会带上用户出口IP(101.20.1.3)地址,例如上图tencent DNS会根据用户出口IP地址归属,返回对应CDN接入点IP地址

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

编辑于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏开元说说

CDN系列学习文章(五)——预热篇

本文介绍CDN的内容管理中预热功能,主要从业务需求,业务逻辑以及常见问题三方面了解CDN预热功能。

49930
来自专栏开元说说

CDN系列学习文章(九)——如何分析下载速度慢

用户反馈CDN下载速度慢,也是CDN业务最常见的一类问题。本文主要介绍,遇到这种情况,怎么去分析和看待这类问题。随着基础网络不断升级,CDN服务厂家不断迭代优化...

43950
来自专栏wordpress建站吧

这样优化和加速你的wordpress网站,快速提升网站的访问加载速度

这样优化和加速你的wordpress网站,快速提升访问加载速度,最近发现很多的站长对一些基础的知识懂得不多,导致自己wordpress网站非常的慢非常的卡,几乎...

24530
来自专栏开元说说

CDN系列学习文章(六)——刷新篇

本文介绍CDN的内容管理中刷新功能,从刷新场景,业务逻辑以及常见问题来剖析CDN刷新功能。

35940
来自专栏菲宇

Kubernetes之Kubelet组件解析

Kubelet组件运行在Node节点上,维持运行中的Pods以及提供kuberntes运行时环境,主要完成以下使命: 1.监视分配给该Node节点的pods...

24330
来自专栏服务器优惠介绍

解决云服务器1M带宽建站速度慢的问题 优先优化网站速度后升级配置

目前,我们在国内云服务器/VPS主机商家中,我们看到大陆机房、中国香港机房,以及其他亚洲机房的带宽大部分都是1M起步,有些是可以看到2M或者3M之类的,反正给予...

1.2K40
来自专栏开元说说

CDN系列学习文章(八)——如何提高命中率

提高命中率或者降低回源带宽,在CDN业务是最常见的问题。本文结合多年CDN实战经验,梳理总结如何提高业务缓存命中率。

495100
来自专栏开元说说

CDN系列学习文章(七)——DNS&HTTP劫持篇

当你打开网页或者APP时,发现有些内容与当前业务几乎没有什么联系,而且这些内容有明显的营销或广告意图,这种场景大概率是劫持现象了。

47860
来自专栏Web行业观察

Go 能拯救已经失败的可视化编程?

在计算中,可视化编程语言(VPL)允许用户通过图形化操作程序元素而不是通过文本指定来创建程序。但一直以来,除了在一些非常有限的领域外,可视化编程都未成功。对此,...

64060

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励