Chinaunix首页 | 论坛 | 博客
  • 博客访问: 507491
  • 博文数量: 213
  • 博客积分: 7027
  • 博客等级: 少将
  • 技术积分: 1974
  • 用 户 组: 普通用户
  • 注册时间: 2007-07-24 08:51
文章分类

全部博文(213)

文章存档

2007年(213)

我的朋友

分类: 系统运维

2007-09-21 17:53:27

 
网络优化的新宠--CDN

 
  
对于经常上网的人们来说,可能会经常遇到网络阻塞,响应速度缓慢,甚至服务器错误响应或无法进行正常访问等问题。鉴于此,为提高用户访问的响应速度、优化现有Internet中信息的传输,在现有的Internet网络中建立一个完善全面的中间层--CDN, 使用户能以最快的速度,从最接近用户的地方获得所需的信息,彻底解决网络拥塞,提高响应速度,是目前最为流行的网络优化应用方案。


  目前的CDN服务主要应用于证券、金融保险、ISP、ICP、网上交易、网站、大中型公司、网络教学等领域。另外在行业专网、互联网中都可以用到,甚至可以对局域网进行网络优化。利用CDN,这些网站无需投资昂贵的各类服务器、设立分站点。通过与CDN机构进行合作,CDN负责信息传递工作,保证信息正常传输,维护传送网络,而网站只需要内容维护,不再需要考虑流量问题。




  CDN能够为网络的快速、安全、稳定、可扩展等方面提供保障。



  一、什么是CDN?

  CDN的全称是Content Delivery Network,即内容分发网络。其目的是通过在现有的Internet中增加一层新的网络架构,将网站的内容发布到最接近用户的网络"边缘",使用户可以就近取得所需的内容,解决Internet网络拥塞状况,提高用户访问网站的响应速度。

  CDN通过负载均衡技术、动态内容路由、高速缓存机制、动态内容分发与复制、安全服务等网络技术,应用特定的智能算法与服务设备,归纳出最重要与访问率最高的内容,并把这部分内容传送到指定的异地服务器上。据统计,采用CDN技术映射多个服务器可以保证70%~95%的内容访问的命中率。

  二、CDN 的工作原理

  当用户访问已经加入CDN服务的网站时,首先通过CDN公司的3DNS确定最接近用户的最佳CDN节点,同时将用户的请求指向该节点。当用户的请求到达指定节点时,CDN的服务器负责将用户请求的内容提供给用户。

  用户访问的基本流程如下:

  1、用户在自己的浏览器中输入要访问的网站的域名;

  2、浏览器向本地DNS(域名解析系统)请求对该域名的解析;

  3、本地DNS将请求发到网站的主DNS,主DNS再将域名解析请求转发到3DNS;

  4、3DNS根据一系列的策略确定当时最适当的CDN节点,并将解析的结果(IP地址)发给用户;

  5、用户向给定的CDN节点请求相应网站的内容;

  6、CDN节点中的服务器负责响应用户的请求,提供所需的内容。

  三、实现CDN的技术手段

  实现CDN所采用的技术手段可以划分为三大类:镜像、高速缓存、专线。

  镜像站点(Mirror Site)服务器是我们经常可以看到的,它让内容直截了当地进行分布,适用于静态和准动态的数据同步。但是购买和维护新服务器的费用较高,另外还必须在各个地区设置镜像服务器,配备专业技术人员进行管理与维护。大型网站在随时更新各地服务器的同时,对带宽的需求也会显著增加,因此一般的互联网公司不会建立太多的镜像服务器。

  高速缓存手段的成本较低,适用于静态内容。Internet的统计表明,超过80%的用户经常访问的是20%的网站的内容,在这个规律下,缓存服务器可以处理大部分客户的静态请求,而原始的WWW服务器只需处理约20%左右的非缓存请求和动态请求,于是大大加快了客户请求的响应时间,并降低了原始WWW服务器的负载。根据美国IDC公司的调查,作为CDN的一项重要指标-缓存的市场正在以每年近100%的速度增长,全球的营业额在2004年

将达到45亿美元。网络流媒体的发展还将剌激这个市场的需求。

  而专线手段,可以让用户直接访问数据源,可以实现数据的动态同步。

  四、CDN的网络结构(如图)

  一个典型CDN网络结构由以下五部分组成,如图所示。


  内容缓存: 位于 POP接入点或多点 IDC 中, 可缓存静态的Web内容和流媒体内容。

  内容交换机: 在 IDC中,可对内容缓存负载平衡及访问控制。

  内容路由器: 在POP点或IDC中,负载为用户的请求选择最佳的访问站点。

  内容分发系统: 内容缓存只可缓存静态内容而对于一些要求对其所有分布站点的内容作镜像的用户,我们需要一个内容镜像系统,这就是内容分发系统。

  CDN管理系统: 由于CDN系统是提供给多个用户共享,所以需要一个中心管理系统作为 CDN的集中管理



  六、CDN系统的关键构件



  一个完整的CDN网络主要由三个子系统组成:



  3DNS



  3DNS是CDN服务中的关键子系统。当用户访问加入CDN服务的网站时,域名解析请求将最终交给3DNS进行处理。3DNS通过一组预先定义好的策略,将当时最接近用户的节点地址提供给用户,使用户能够得到快速的服务。同时,它还与分布在世界各地的所有CDNC节点保持通信,搜集各节点的通信状态,确保不将用户的请求分配到不可用的CDN节点上。



  CDN 节点



  对于普通的Internet用户来讲,每个CDN节点就相当于一个放置在它周围的WEB。通过3DNS的控制,用户的请求被透明地指向离他最近的节点,节点中CDN服务器会像网站的原始服务器一样,响应用户的请求。由于它离用户更近,因而响应时间必然更快。

  每个CDN节点由两部分组成:负载均衡设备和内容加速服务器

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

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

  CDN管理系统

  CDN的管理系统是整个系统能够正常运转的保证。它不仅能对系统中的各个子系统和设备进行实时监控,对各种故障产生相应的告警,还可以实时监测到系统中总的流量和各节点的流量,并保存在系统的数据库中,使网管人员能够方便地进行进一步分析。通过完善的网管系统,用户可以对系统配置进行修改。

  五、CDN系统的设计原则

  鉴于CDN网络系统在整个网络系统中的重要性,网络系统设计必须既适应当前应用考虑,又面向未来信息化发展需求。在设计网络技术方案时,应遵循以下设计原则:

 1、实用性和先进性

  采用先进成熟的技术满足当前的业务需求,兼顾其他相关的业务需求,尽可能采用先进的网络技术以适应更高的数据、多媒体信息的传输需要,使整个系统在一段时期内保持技术的先进,并具有良好的发展潜力,以适应未来业务的发展和技术升级的需要。

  2、安全可靠性

  为保证将来的业务应用,网络必须具有高可靠性。要对网络结构、网络设备、服务器设备等各个方面进行高可靠性的设计和建设。在采用硬件备份、冗余等可靠性技术的基础上,采用相关的软件技术,提供较强的管理机制、控制手段、事故监控和网络安全保密等技术措施,提高网络系统的安全可靠性。

  3、灵活性与可扩展性

  网络系统是一个不断发展的系统,所以它必须具有良好的扩展性。能够根据将来信息化的不断深入发展的需要,方便地扩展网络覆盖范围、扩大网络容量和提高网络各层次节点的功能。具备支持多种通信媒体、多种物理接口的能力,提供技术升级、设备更新的灵活性。

  4、开放性/互连性

  具备与多种协议计算机通信网络互连互通的特性,确保网络系统基础设施的作用可以充分发挥。在结构上真正实现开放,基于国际开放式标准,包括各种广域网、局域网、计算机及数据库协议,坚持全国统一规范的原则,从而为未来的业务发展奠定基础。

  5、经济性/投资保护

  以较高的性能价格比构建网络系统,使资金的产出投入比达到最大值。能以较低的成本、较少的人员投入来维持系统运转,提供高效能与高效益。尽可能保留并延长已有系统的投资,充分利用以往在资金与技术方面的投入。

  6、可管理性

  在CDN环境中, 所有相关设备是分布在不同的地域的,所以对设备的远程管理便非常重要。由于系统本身具有一定复杂性,随着业务的不断发展,网络管理的任务必定会日益繁重。所以在网络的设计中,必须建立一个全面的网络管理解决方案。网络设备必须采用智能化、可管理的设备,同时采用先进的网络管理软件,实现先进的分布式管理。最终能够实现监控、监测整个网络的运行状况,合理分配网络资源、动态配置网络负载,可以迅速确定网络故障等。

  在将来,随着新的多媒体业务模型的增长,内容分发技术与CDN将成为以高可靠性的、可扩展的与安全的方式提供托管业务的关键,在保障网络的可访问性(速度、安全、完整性)方面发挥出更大的作用。


阅读(858) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~