智能DNS解析与用户定位调度技术
2012-07-09 21:43:50   来源:互联网   评论:0 点击:

大型网站或多受众用户服务网站在中国特定网络环境下,离不开CDN(内容服务网络)及用户调度。而CDN与用户调度则涉及智能DNS解析与用户定位...

大型网站或多受众用户服务网站在中国特定网络环境下,离不开CDN(内容服务网络)及用户调度。而CDN与用户调度则涉及智能DNS解析与用户定位的问题.

大家知道,现在很多网站的 GLSB 都是基于 DNS 来做用户定位调度.DNS 的解析流程如下:

比如,我是北京的用户,我的 DNS 为 202.106.0.20.当我要打开 www.php-oa.com 时,先会给请求发给 ISP 告诉我的 DNS.这个叫 Local DNS .然后其它的向根域和二级域的查询,都是由 Local DNS 帮我完成的.

当一个网站使用了智能的 DNS 后,智能 DNS 服务器会得到 Local DNS  的 IP 来区分用户的来源.如下,发现 202.106.0.20 这个 Local DNS 的地址,然后到自己收集的地址中一对比,是北京联通用户.然后给我解析 cname 到 bj.www.php-oa.com 这个地址.

这样完成了我最近的用户到最近的网站服务器的目的.

\

但这个有个小问题,就是当用户设的 DNS 地址不对时,比如现在很多人喜欢使用 google 的 DNS .时会出现什么样的问题啦?

我们看下面的图片,就会知道.

当使用了错误的 Local DNS 后,用户的定位就不准了.这样会解析到离自己很远的服务器,比如,我使用了 google 的 8.8.8.8 的地址的 Local DNS.这时智能 DNS 只能得到 8.8.8.8 .然后智能 DNS 一查这个地址,是美国.就给解析到国外,我这画的是解析到 hk.www.php-oa.com.

在  Local DNS 地址不准时,解析基本都是不正常的.这些用户的响应和打开就非常慢.

所以在这可以看出 DNS 方式用户位置判断准确率大于85%,HTTP 方式准确率为 99% 以上

\

解决方法,使用 IP 定位.

什么是 IP 定位,见下面的图.图实在不怎么样…不好意思,随手搞了一下.

当我们打开一个地址时,如下,使用了错误的 Local DNS ,但这些 Local DNS 查的智能 DNS 怎么样只会给出少量的地址,比如南方和北方都只有一个,解析的地址这些不会根着地区变化.

解析到的服务器,其实不是真实的服务器,只是一个 IP 调度器.这时客户端就会试着连接这个调度器,但调度器不吐文件,只会吐出一个 302 的响应,转到别的服务器(真实的最近的服务器).

因为这些用户真实的请求出来到调度器上,不在是 Local DNS 的 IP ,是用户实际的 IP ,这些可以在调度器上在查 IP 的来源.这些就会非常准.

然后在使用 302 定位.更加高级可以使用 tcp 迁移技术

\

 在这个时候调度器可以做得非常强大,象大脑一样,多少量,多少请求,有多少热点,请求了多少文件.

使用上面的技术进行用户定位,优点很明显,定位非常非常精准,可以非常快和高效的定位到合适的资源.但不好的一点也很明显,需多进行一次 302 跳转,处理时间变长了一点点,所以非常合适视频网站之类来使用.

显而易见,智能GSLB并不能很好的解决用户定位问题,但够简单。而用户IP定位可以较好的解决,但并不一定适合高访问量的页面请求,因为调度器可能成为瓶颈或者302跳转增加了DNS的时间,当然302可以设置缓存过期时间。

相关热词搜索:智能解析 DNS GSLB

上一篇:keepalived-1.2.2单播补丁
下一篇:最后一页

分享到: 收藏
评论排行