CDN加速技术内幕解密

CDN概述

CDN的全称是Content Delivery Network,即内容分发网络。是通过在现有的 Internet 中增加一层新的网络架构,将网站的内容发布到最接近用户的网络“边缘”,使用户可以就近取得所需的内容,解决Internet 网络拥塞状况,提高用户访问网站的响应速度。CDN从技术上全面解决由于网络带宽小、用户访问量大、网站节点分布不均等原因所带来的问题,使用户得到满意的访问效果。

0 (1).jpg

纵观整个互联网服务的传输环节,网站和用户位于整个传输环节的两端,中间依靠网络服务提供商将其串接起来。将内容推到网络的边缘,为用户提供就近性的边缘服务,从而保证服务的质量,而这就是内容分发网络(CDN)服务模式

内容分发网络(CDN)作为一种新型的网络构建方式,它为大量的数据在网络上的快速传输提供了一种智能化的解决方案。这样的架构使得CDN服务提供商能够代表网站向最终用户提供尽可能好的访问体验。据统计,采用CDN技术,能处理整个网站页面的70%~95%的内容访问量,减轻服务器的压力,提升了网站的性能和可扩展性。

640 (2).png

在互联网结构中,CDN位于网络层之上应用层之下,其目的就是减少网络中冗余数据的重复传输,将广域传输转为本地或就近访问。互联网上传递的内容,大部分为重复的Web/FTP数据,缓存服务器及应用缓存技术的网络设备,可大大优化数据链路性能,消除数据峰值访问造成的结点设备阻塞。CDN网络节点上的缓存服务器具有缓存功能,所以大部分网页对象,如html、htm、php 等页面文件,gif、tif、png、bmp 等图片文件,以及其他格式的文件,在有效期内,对于重复的访问,不必从原始网站重新传送文件实体, 只需通过简单的认证,传送几十字节的Header,即可将本地的副本直接传送给访问者。由于缓存服务器通常部署在靠近用户端,所以能获得近似局域网的响应速度,并有效减少广域带宽的消耗。据统计,Internet上超过80%的用户重复访问20%的信息资源,给缓存技术的应用提供了先决的条件。缓存服务器的体系结构与Web服务器不同,缓存服务器比Web服务器拥有更高的性能,不仅能提高响应速度,节约带宽,并且能够有效的加速Web服务器,减轻源服务器的负荷。目前的CDN服务主要应用于门户类网站、大中型公司、网络教学、证券、金融保险、ISP、网上交易等领域,网站使用CDN后,即由CDN服务提供商负责信息的传递,保证信息的传输,而网站只需要内容维护,不再需要考虑流量问题。CDN能够为网络的快速、安全、稳定、可扩展性等方面提供保障

工作原理

根据传统的网络结构,用户的访问流程基本如下:

图2 用户普通访问方式

1) 用户的域名解析请求被发往本地DNS服务器。

2) 本地DNS服务器将请求发网站DNS服务器,返回给本地DNS服务器源站

实际站点IP。

3) 本地DNS服务器将该IP地址返回给用户。 4) 用户直接访问源站点,取回请求数据。

大量用户的并发访问导致对源站点服务器压力过大;受带宽限制,网页响应速度变慢;网络传输中情况错综复杂,导致用户最终的访问速度变慢。

使用了网宿的CDN服务后,用户的访问流程如下图所示:

640 (4).png

图-3 网宿CDN加速后访问方式

1)用户向浏览器提供要访问网站的域名,域名解析的请求被发往网站的DNS 服务器。

2)本地DNS服务器将请求发往网站DNS服务器,通过CNAME机制,请求被指向CDN网络中的全球负载均衡集群。

3)本地DNS服务器将请求发往全球负载均衡集群,该集群对域名进行智能解析,将响应速度最快的CDN边缘集群IP返回给本地DNS服务器。

4) 本地DNS服务器将该IP地址返回给用户。

5) 用户浏览器在得到实际的IP 地址以后,向该CDN边缘集群发出访问请求。

6)如果是第一次访问,CDN边缘集群将回到源站取回用户请求的数据并发给用户。

7)当有其他用户再次访问同样内容时,如缓存未过期,CDN边缘集群将直接将数据返回给客户完成请求/服务过程。

CDN网络可实现对普通用户透明,即使用CDN服务后用户客户端无需进行任何设置,直接使用被加速网站原有的域名即可访问,而客户不需要改动原来的网站结构,只需修改少量的DNS 配置,就可以加速网络的响应速度。