也有说法叫内容交付网络,(Content Delivery Network,Content Distribution Network;CDN)

指一种通过互联网相互连接的计算机网络系统,提供高性能、可扩展性及低成本的网络,将内容传递给用户。提高网络内容传输,尤其是提高流媒体内容传输的服务质量、节省骨干网络带宽的及时。

 

目的:通过在现有的Internet中增加一层新的网络架构,将网站的内容发布到最接近用户的网络“边缘”,使用户可以就近取得所需的内容,解决网络拥塞、提高用户访问的相应速度。从技术上全面解决由于网络带宽小、用户访问量大、网点分布不均等而引发的用户访问网站的响应速度慢的问题。

 

四个要件:分布式存储、负载均衡、网络请求的重定向和内容管理

核心:内容管理和全局的网络流量管理

 

通过用户就近性和服务器负载的判断,CDN确保内容以一种极为高效的方式为用户的请求提供服务。总的来说,内容服务基于缓存服务器,也称作代理缓存(Surrogate),它位于网络的边缘,距用户仅有"一跳"(Single Hop)之遥。同时,代理缓存是内容提供商源服务器(通常位于CDN服务提供商的数据中心)的一个透明镜像。这样的架构使得CDN服务提供商能够代表他们客户,即内容供应商,向最终用户提供尽可能好的体验,而这些用户是不能容忍请求响应时间有任何延迟的。据统计,采用CDN技术,能处理整个网站页面的70%~95%的内容访问量,减轻服务器的压力,提升了网站的性能和可扩展性。

 

工作原理和组成:

CDN的基本工作原理就是广泛采用各种Cache服务器,将这些Cache服务器分布到用户访问相对集中的地区或网络中,并利用全球负载均衡技术(Global Server Load Balance,GSLB)将用户的访问指向离用户最近的工作正常的Cacha服务器上,由它直接响应用户的请求。如果Cache服务器中没有用户要访问的内容,它会根据配置自动到原服务器去抓取相应的页面并提供给用户。可以说,一旦CDN网络正常运行后,内容的分布和用户的访问定位全部是自动的。从概念上看,CDN并不依赖于非常复杂或难于理解的技术,但要建立一个高效可靠的CDN,至少需要5个基本部分,具体如下:

      1.原始服务器

  为了便于管理和配置,CDN网络中的各个节点一般都使用Cache服务器来保存用户频繁访问的网站内容,这些服务器中只保留一个副本。因此,网站的内容必须要有原始存放的地方,所以要根据网站的大小用一个或多个服务器用来保存原始的Web内容。大部分情况下,原始服务器安装在IDC(互联网数据中心?Internet data center)中,由内容提供商自己负责维护和管理。

  2.GSLB控制服务器

  GSLB控制服务器是专用的具有高可靠和高冗余性的设备,主要用来将流量指向到那些正常工作的Cache服务器上,并在它们工作异常时及时将流量转走。这些控制器应该能够直接或间接地取得分布在各地CDN节点中的Cacha服务器的工作状态和性能,并可以判断用户的来源,以保证用户有效地分配到离其“逻辑上”最近、最健康的节点上。可用性、可扩展性

  3.节点一Cache和本地负载均衡服务器(SLB)

  在各个节点上,Cache服务器扮演Web服务器的角色,将保存原始服务器上相应内容的副本,以便及时响应用户的请求。目前有两种方式可以将内容分布到各节点的Cache上:一种是“拉”的方式,Cache在接受用户的请求后才代替用户到原服务器去抓取内容,同时保存一份副本在本地;另一种是“推”的方式,Cache会将预先指定的内容通过专门的方式传送到CDN网络中所有的或指定的Cache服务器上。在实际的CDN网络环境中,“拉”和“推”这两种方式一般会混合使用。每个节点上一般都会有多于一个Cache服务器用于提供不同的服务或提高每个节点的处理能力。例如,有的Cache服务器专门用来支持HTTP服务,有的专门支持FTI明民务,有的则提供流媒体服务。因此,还需要一个本地负载均衡控制器来实现流量分配的功能。

  4.内容管理系统

  CDN网络本质上是一个“内容的网络”。因此,对内容的管理是一个复杂的任务,无论采用“拉”还是“推”的方式,都需要预先做出判断,如哪些内容可以缓存、可以缓存多久或哪些内容根本不能保留在Cache服务器中而必须直接回原服务器等,这些都依赖于内容提供商提供的内容和目标客户群。对于IntemetCDN网络来说,一个完善和稳定的内容管理系统更是网络成功的关键。

  5.网络监控管理系统

  每个CDN网络都需要一个网络监控和管理中心,这和任何一个系统或网络都需要网管中心一样,是保证整个系统正常运转的关键。由于CDN网络是一个分布式系统,如何实现集中监控是保证系统可靠、稳定运行的重要因素。网络监控系统必须能够实现分布检测和集中告警,能在第一时间内发现故障并定位故障。而且,由于CDN网络是一项内容服务,在监控网络连通的同时还要对应用层的各项服务进行监控。

 posted on 2019-03-07 19:33  黛黛大师兄  阅读(48)  评论(0)    收藏  举报