CDN的全称是Content Delivery Network,即内容分发网络。其目的是通过在现有的中增加一层新的网络架构,将网站的内容发布到最接近用户的网络"边缘",使用户可以就近取得所需的内容,解决网络拥挤的状况,提高用户访问网站的响应速度。从技术上全面解决由于网络带宽小、用户访问量大、网点分布不均等原因所造成的用户访问网站响应速度慢的问题。
内容分发网络采用智能路由和流量管理技术,及时发现能够给访问者提供最快响应的加速节点,并将访问者的请求转发到该加速节点,由该加速节点提供内容服务。利用内容分发与复制机制,CDN客户不需要改动原来的网站结构,只需修改少量的DNS配置,就可以加速网络的响应速度。
当用户访问了使用CDN服务的网站时,域名解析请求最终由重定向DNS负责处理。它通过一组预先定义好的策略(如内容类型、地理区域、网络负载状况等),将当时能够最快响应用户的节点地址提供给用户,使用户可以得到快速的服务。同时,它还与分布在不同地点的所有CDN节点保持通信,搜集各节点的健康状态,确保不将用户的请求分配到任何一个已经不可用的节点上。而网宿CDN还具有在网络拥塞和失效情况下,能拥有自适应调整路由的能力。
使用了CDN服务后,用户的访问流程如下图所示:
图 CDN用户访问流程图
☆用户向浏览器提供要访问网站的域名,域名解析的请求被发往网站的DNS服务器;
☆由于网站的DNS服务器对此域名的解析设置了CNAME,请求被指向CDN网络中的路由系统;
☆CDN对域名进行智能解析,将响应速度最快的节点IP返回给用户;
☆浏览器在得到实际的IP地址以后,向CDN节点发出访问请求;
☆由于是第一次访问,CDN节点将回到源站取用户请求的数据并发给用户;
☆当有其他用户再次访问同样内容时,CDN将直接将数据返回给客户,完成请求/服务过程。
用户向浏览器提供要访问网站的域名,域名解析的请求被发往网站的DNS服务器;
由于网站的DNS服务器对此域名的解析设置了CNAME,请求被指向CDN网络中的路由系统;
CDN对域名进行智能解析,将响应速度最快的节点IP返回给用户;
浏览器在得到实际的IP地址以后,向CDN节点发出访问请求;
由于是第一次访问,CDN节点将回到源站取用户请求的数据并发给用户;
当有其他用户再次访问同样内容时,CDN将直接将数据返回给客户,完成请求/服务过程。
通过以上的分析我们可以看出,CDN服务对网站访问提供加速的同时,可以实现对普通访问用户透明,即加入缓存以后用户客户端无需进行任何设置,直接输入被加速网站原有的域名即可访问。
CDN(Content Delivery Network,内容分发网络)技术上是通过在现有的中叠加一层新的网络架构,将网站内容发布到离用户最近的"边缘节点"上,使用户能就近取得所需内容,解决跨域访问网站的线路瓶颈,提高网站的访问及响应速度。
要了解CDN的实现原理,首先让我们来回顾一下网站传统的访问过程,以便理解其与CDN访问方式之间的差别:
由上图可见,传统的网站访问过程为:
1. 用户在浏览器中输入要访问的域名;
2. 浏览器向域名解析服务器发出解析请求,获得此域名对应的IP地址;
3. 浏览器利用所得到的IP地址,向该IP对应的服务器发出访问请求;
4. 服务器对此响应,将数据回传至用户浏览器端显示出来。
与传统访问方式不同,CDN网络则是在用户和服务器之间增加Cache层,将用户的访问请求引导到Cache节点而不是服务器源站点,要实现这一目的,主要是通过接管DNS实现,下图为使用CDN缓存后的网站访问过程:
由上图可见,使用CDN缓存后的网站访问过程演变为:
1. 用户在浏览器中输入要访问的域名;
2. 浏览器向域名解析服务器发出解析请求,由于CDN对域名解析过程进行了调整,所以用户端一般得到的是该域名对应的CNAME记录,此时浏览器需要再次对获得的CNAME域名进行解析才能得到缓存服务器实际的IP地址。
注:在此过程中,全局负载均衡DNS解析服务器会根据用户端的源IP地址,如地理位置(深圳还是上海)、接入网类型(电信还是网通)将用户的访问请求定位到离用户路由最短、位置最近、负载最轻的Cache节点(缓存服务器)上,实现就近定位。定位优先原则可按位置、可按路由、也可按负载等。
3. 再次解析后浏览器得到该域名CDN缓存服务器的实际IP地址,向缓存服务器发出访问请求;
4. 缓存服务器根据浏览器提供的域名,通过Cache内部专用DNS解析得到此域名源服务器的真实IP地址,再由缓存服务器向此真实IP地址提交访问请求;
5. 缓存服务器从真实IP地址得到内容后,一方面在本地进行保存,以备以后使用,同时把得到的数据发送到客户端浏览器,完成访问的响应过程;
6. 用户端得到由缓存服务器传回的数据后显示出来,至此完成整个域名访问过程。
通过以上分析可以看到,不论是否使用CDN网络,普通用户客户端设置不需做任何改变,直接使用被加速网站原有域名访问即可。对于要加速的网站,只需修改整个访问过程中的域名解析部分,便能实现透明的网络加速服务。
CDN应用与架构
CDN速度快、传输安全、扩展性强,尤其在应对大容量迸发时游刃有余,主要应用于跨地域的门户及行业网站,如游戏、娱乐、IT、新闻传媒、VOD、远程教育、音视频、下载、IPTV、金融证券等。
利用CDN网络,网站用户无需投资价值不菲的服务器、网络带宽及相应的人力成本,便能实现将网站内容发布到离终端用户距离最近、路由最短的网际边缘Cache节点,创造完美、快捷的网站使用体验。
构建CDN网络的通常有三类机构,一是基础电信运营商(如中国电信、中国网通等),二是纯粹以CDN为主营业务的专业服务商(如 ChinaCache等),三是IDC运营服务商(如SouIDC等)。虽然上述机构建设CDN网络的出发点、侧重点不尽相同,但有一点却是相通的,即都是为用户提供完美的网站加速服务。
IDC运营商部署在各地的IDC中心机房,非常有利于其快速建立起适合自身业务拓展的CDN网络,投资少见效快。其最大优势在于可以利用现有的 IDC托管用户资源,进一步挖掘其潜在的增值服务空间。同时对于其IDC托管用户来讲,只需很少的投入便可实现网站的平滑加速,并保持了服务及支持上的无缝延续。
SynCDN便是SouIDC构建的CDN网站加速运营平台。
一般来讲,CDN网络主要由中心节点、边缘节点两部分构成。
CDN架构导引
最简单的CDN网络只需一台负责全局负载均衡的DNS和各节点一台Cache,即可运行。DNS支持根据用户源IP地址解析不同的 IP,实现就近访问。为了保证高可用性等,CDN网管中心需要监控各节点的流量、健康状况等。一个节点的单台Cache承载数量不够时,才需要多台 Cache,多台Cache同时工作时,才需要负载均衡器,使Cache群协同工作。
CDN中心节点
中心节点包括CDN网管中心和全局负载均衡DNS重定向解析系统,负责整个CDN网络的分发及管理。
CDN网管中心是整个CDN能够正常运转的基础保证,它不仅能对整个CDN网络中的各个子系统和设备进行实时监控,对各种故障产生相应的告警,还可以实时监测到系统中总的流量和各节点的流量,并保存在系统数据库中,使网管人员能够方便地进行进一步分析。一套完善的网管系统,允许用户按需对系统配置进行修改。
全局负载均衡DNS通过一组预先定义好的策略,将当时最接近用户的Cache节点地址提供给用户,使用户能够得到快速的服务。同时,它还与分布在各地的所有CDN节点保持持续通信,搜集各节点的通信状态,确保不会将用户的请求分发到不可用、或不健康的Cache节点上。
CDN边缘节点
CDN边缘节点主要指异地分发节点,由负载均衡设备、高速缓存服务器两部分组成。
负载均衡设备负责每个节点中各个Cache的负载均衡,保证节点的工作效率;同时还负责收集节点与周围环境的信息,保持与全局负载均衡DNS的通信,实现整个系统的负载均衡。
高速缓存服务器(Cache)负责存储客户网站的大量信息,就像一个靠近用户的网站服务器一样响应本地用户的访问请求。通过全局负载均衡DNS的控制,用户的请求被透明地指向离他最近的节点,节点中Cache服务器就像网站的原始服务器一样,响应终端用户的请求。因其距离用户更近,故其响应时间才更快。
网站都使用了CDN技术。CDN的概念最早于1995年由美国麻省理工年夜学提出,是一套能够实现用户就近的收集解决方案。具体编制是采用智能路由和流量管理技术,将用户的请求指向 CDN收集中健康且响应最快的CDN节点,用户经由过程直接对此CDN节点的,获得所需要的内容和数据。
就近加速了速度。利用内容分发与复制机制,客户不需要改动原来的网站布局,只需修改少量的DNS配置,便可以加速收集的响应速度。当用户使用CDN办事的网站时,解析请求将最终由CDN办事商供给的DNS域名解析办事器来措置。它经由过程将那时能够最快响应用户的节点地址供给给用户,使用户可以有效准确的获得快速的办事。同时,它还与散布在不同地址的所有CDN节点保持是实时通信,搜集各节点的健康状态,确保用户的成功率。上面的说明有些专业,用户网站实际上就是用户的电脑寻找网站办事器的一个过程。先让我们看一下使用CDN办事之前,用户网站的流程
1. 用户在自己的浏览器中输入要的网站的域名。
浏览器首先查看本机系统目录下的一个hosts文件。该文件位于WINDOWSsystem32 driversetc下,没有扩大名,可是可以用记事本打开。里面一行对应着域名和IP值。如果有域名对应的IP,浏览器直接就用该IP网站。
2. 如果没有域名对应的IP地址,浏览器向本地DNS办事器请求对该域名的解析 本地DNS办事器就是由本地电信或者联通给分派的DNS。
3. 本地DNS办事器到根DNS办事器上找所授权的DNS记录,记录返回到本地DNS办事器
4. 本地DNS办事器按照记录到网站授权的域名解析办事器请求解析主机名,域名解析办事器将IP地址作为解析成果送给本地DNS办事器。
5. 本地DNS办事器将IP返还给用户。
6. 用户在获得IP地址后,向该网站办事器进行,网站办事器将响应的内容和数据供给给用户。
使用CDN之后,用户流程:前三步流程不异,从第四步起头
1. 域名的解析请求在被发往CDN解析办事器后,办事器将此域名响应速度最快的节点IP发送给本地DNS办事器,本地DNS办事器将此IP发给用户。上图的第
四、五步。
2. 用户在获得IP地址后向CDN节点发出请求第一次的。
3. CDN节点将回源网站办事器取回内容数据发给用户。
4. CDN节点会缓存年夜量数据,若有其他用户不异内容时,直接将内容数据返回用户,完成从请求到办事的全过程。目前CDN办事的厂家年夜部分是收费的,供给免费CDN办事厂家不多,跟着这类产品的增多,厂家之间彼此竞争也将逐渐激烈,办事内容、办事项目、办事质量也会随之更上层楼!所以,相信会有更多、更好的免费CDN的出现。OK,上面说完了CDN原理,此刻我们再阐发一下采用CDN办事对SEO(搜索引擎优化有没有影响,因为对CDN技术实现并不是完全了解,所以只是猜测一下几种情况
1. 首先要了解蜘蛛是怎样爬过来的,抓取源办事器数据的。对已经收录的网站,蜘蛛必定是直接抓取源办事器IP地址的数据,每次抓取前再重新经由过程DNS办事器解析一次,所以我们不用担忧更新的数据会不会被抓取到。
2. CDN节点缓存的更新频率。如果蜘蛛抓取的是CDN节点里面的数据,这里面数据都是寄存在CDN缓存里面的,CDN既然是一种缓存技术,那么它的实时性必定是没法实现的,因此它的更新频率就很重要了。在写这篇文章的时候,客服的说法是会按照量及行为自动的设定更新频率,也可以在后台按照网站不同的栏目设定灵活多样的缓存策略和主、被动的数据更新编制并进行智能调控和缓存。所以。这里对SEO的影响也是可以忽略的。 /xinwen.aspx?xwid=20120809163239437
3. IP的变化对SEO的权重。万一蜘蛛抓取到各个节点的数据呢?会不会造成一个网站好像有不同的IP地址,搜索引擎会不会对这种情况有所惩罚呢?查看百度官方SEO指南 可以看到这样的话Baiduspider对站点的抓取编制和普通用户一样,只要普通用户能到的内容,我们就可以抓取到。不管是用什么技术,只要能保证用户能流畅的网站,对搜索引擎就没有影响。 既然百度都这样说,谷歌对抓取和收录更没有问题。同时。百度也提到建议尽可能选择有实力的办事商和成熟的技术,不成熟的技术容易致使不不变,这就有可能影响搜索引擎的抓取了,所以选择一个安全,不变的CDN办事供给商仍然是很重要的。CDN对SEO的影响是很多朋友都关心的问题,从网友的一些实验来看,不管是从抓取速度和频率来讲都没有什么问题,甚至是有益的。另外即使存在一些问题,搜索引擎以及CDN供给商应该会想到解决的办法。
cdn是镜像+智能解析。就是把网站的内容缓存到全国各地的服务器上,然后通过智能解析判断用户是来自哪个区域的什么带宽,然后匹配一个最近的相关线路提供访问。比如新浪全国有4个cdn节点,如果是西安联通用户,他会根据ip智能解析,然后连接到最近的西北节点上去。
cdn适用于静态技术,比如图片,游戏下载,视频等。如果是对于单线的网站,可以用于提供网络加速。比如联通的网站推广加速可以使电信用户访问也很快。
缺点:cdn用到的是缓存技术,加速的是网站的静态、公用部分。如果是动态网站,不能缓存,每次都要回源服务器访问,用了cdn反而增加了一个环节,不好。建议楼主仔细考虑