发明内容
目前提出了一种融合了CDN和P2P的新的内容分发网络,该内容分发网络的基础是CDN,因此应尽量保存原有CDN网络的功能和特点,并在CDN的基础上新增一部分功能,以支持P2P功能。P2P融合到CDN系统中,包括了内容路由、管理平面、内容分发和存储等几个方面的融合。在内容路由方面,CDN中原有的GSLB全局路由功能、SLB本地负载均衡和本地内容管理功能等都会保留,P2P的请求从GSLB往下的路由过程采用跟传统的CDN一致的路由过程和算法,只是P2P请求的协议跟传统请求的链接参数不同。在管理平面方面,运营支撑的体系模式、功能结构等都与现有的CDN运营支撑系统类似,只是在客户端的管理、服务等级分层、P2P信息计量等方面有所升级和变更。在内容分发和存储方面,带有切片信息的数据由边缘服务器和客户端Peer同时提供分发服务,P2P的分布情况和网络能力会影响存储设计和部署。为了描述方便,将该种融合了CDN和P2P的新的内容分发网络称之为PCDN网络。
根据本发明的一方面,提供一种基于上述PCDN网络的路由系统,该PCDN包括执行内容分发系统CDN协议的核心层,核心层包括核心节点,执行CDN协议与P2P协议的转换的主干层,主干层包括主干节点,以及连接到主干层的P2P自治区域,P2P自治区域位于主干层的边缘,由位于边缘的主干节点作为P2P自治区域的服务器,核心层和主干层共同实现应用发布层,主干层实现服务承载层,P2P自治区域实现P2P客户端;其中,
该路由系统包括两级路由装置,包括全局均衡装置GSLB和本地均衡装置SLB,其中GSLB位于主干网的核心节点上,实现服务承载层重定向,SLB位于主干网边缘的主干节点上,基于P2P路由算法和P2P客户端Peer的分布情况实现P2P自治区域内的重定向。
根据本发明的一实施例,SLB至少基于下列因素进行重定向:P2P路由情况,服务应用类型,服务引擎的繁忙程度,服务引擎的权重,内容分布规则,服务引擎的健康状况,用户自定义的特殊定向策略。
根据本发明的一实施例,当一P2P客户端请求内容时,SLB会根据其所属P2P自治区域内Peer的优先级根据优先级从高到低的顺序重定向该请求至该Peer;
Peer的优先级确定如下:所有的Peer分为0-6共三类七级,其中4、5、6级属于第一类,第一类的优先级最高;1、2、3级属于第二类,第二类的优先级较第一类低;0级属于第三类;第三类的Peer不能给别人提供服务;
Peer优先级的类别划分如下:当Peer的剩余连接数为0时,则该Peer的定为第三类,即0级;当Peer的可用上传带宽为0时,该Peer也将被定为第三类,即0级;当Peer属于外网IP时,被定为第一类;当Peer属于内网IP时,被定为第二类;
第一类Peer和第二类Peer中的级别相对应,第一类Peer的第4级对应第二类Peer的第1级,第一类Peer的第5级对应第二类Peer的第2级,第一类Peer的第6级对应第二类Peer的第3级。
根据本发明的一实施例,对于直播业务,SLB将Peer的优先级计算如下:
当剩余连接数为0,或者可用上传带宽为0时,则不管内外网Peer,该Peer都定为第0级。
当可用上传带宽大于20Kbps,而且从MSC上的下载带宽大于80Kbps,且健康度大于10,则外网Peer定为第6级,内网Peer定义为第3级;
当可用上传带宽小于3,或者从MSC上的下载带宽小于1 0Kbps,或者健康度小于3的情况下,则外网Peer定义为第4级,内网Peer定义为第1级;
除了以上条件的情况下,外网Peer定义为第5级,内网Peer定义为第2级;
对于下载业务,SLB将Peer的优先级计算如下:
当剩余连接数为0,或者可用上传带宽为0,或者内容健康度为0时,则不管内外网Peer,该Peer都定义为第0级;
当可用上传带宽大于10Kbps,而且内容的健康度大于50,则外网Peer定义为第6级,内网Peer定义为第3级;
当可用上传带宽小于等于3Kbps,或者内容的健康度小于等于10时,则外网Peer定义为第4级,内网Peer定义为第1级;
除了以上条件的情况下,外网Peer定义为第5级,内网Peer定义为第2级。
根据本发明的一实施例,SLB将根据所述P2P客户端请求和所有Peer的优先级来决定返回给P2P客户端的Peer信息列表,首先选择优先级高的Peer返回,当高优先级的Peer不够时才选择低优先级的返回,但不会返回第0级Peer信息,所述选择方法如下:
对外网用户,优先级顺序为:6级=3级>5级=2级>4级=1级;
对内网用户,优先级顺序为:6级>5级>4级>3级>2级>1级。
根据本发明的另一方面,提供一种路由方法,用于PCDN网络,所述内容分发网络包括执行内容分发系统CDN协议的核心层,核心层包括核心节点,执行CDN协议于P2P协议的转换的主干层,主干层包括主干节点,以及连接到主干层的P2P自治区域,P2P自治区域位于主干层的边缘,由位于边缘的主干节点作为P2P自治区域的服务器,核心层和主干层共同实现应用发布层,主干层实现服务承载层,P2P自治区域实现P2P客户端;所述路由方法包括,
提供两级路由装置,包括全局均衡装置GSLB和本地均衡装置SLB;
其中在主干网的核心节点上提供GSLB,实现服务承载层重定向;
在位于主干网边缘的主干节点上提供SLB,基于P2P路由算法和P2P客户端Peer的分布情况实现P2P自治区域内的重定向。
根据本发明的一实施例,SLB至少基于下列因素进行重定向:P2P路由情况,服务应用类型,服务引擎的繁忙程度,服务引擎的权重,内容分布规则,服务引擎的健康状况,用户自定义的特殊定向策略。
根据本发明的一实施例,当一P2P客户端请求内容时,SLB会根据其所属P2P自治区域内Peer的优先级根据优先级从高到低的顺序重定向该请求至该Peer;
Peer的优先级确定如下:所有的Peer分为0-6共三类七级,其中4、5、6级属于第一类,第一类的优先级最高;1、2、3级属于第二类,第二类的优先级较第一类低;0级属于第三类;第三类的Peer不能给别人提供服务;
Peer优先级的类别划分如下:当Peer的剩余连接数为0时,则该Peer的定为第三类,即0级;当Peer的可用上传带宽为0时,该Peer也将被定为第三类,即0级;当Peer属于外网IP时,被定为第一类;当Peer属于内网IP时,被定为第二类;
第一类Peer和第二类Peer中的级别相对应,第一类Peer的第4级对应第二类Peer的第1级,第一类Peer的第5级对应第二类Peer的第2级,第一类Peer的第6级对应第二类Peer的第3级。
根据本发明的一实施例,对于直播业务,SLB将Peer的优先级计算如下:
当剩余连接数为0,或者可用上传带宽为0时,则不管内外网Peer,该Peer都定为第0级。
当可用上传带宽大于20Kbps,而且从MSC上的下载带宽大于80Kbps,且健康度大于1 0,则外网Peer定为第6级,内网Peer定义为第3级;
当可用上传带宽小于3,或者从MSC上的下载带宽小于1 0Kbps,或者健康度小于3的情况下,则外网Peer定义为第4级,内网Peer定义为第1级;
除了以上条件的情况下,外网Peer定义为第5级,内网Peer定义为第2级;
对于下载业务,SLB将Peer的优先级计算如下:
当剩余连接数为0,或者可用上传带宽为0,或者内容健康度为0时,则不管内外网Peer,该Peer都定义为第0级;
当可用上传带宽大于1 0Kbps,而且内容的健康度大于50,则外网Peer定义为第6级,内网Peer定义为第3级;
当可用上传带宽小于等于3Kbps,或者内容的健康度小于等于10时,则外网Peer定义为第4级,内网Peer定义为第1级;
除了以上条件的情况下,外网Peer定义为第5级,内网Peer定义为第2级。
根据本发明的一实施例,SLB将根据所述P2P客户端请求和所有Peer的优先级来决定返回给P2P客户端的Peer信息列表,首先选择优先级高的Peer返回,当高优先级的Peer不够时才选择低优先级的返回,但不会返回第0级Peer信息,所述选择方法如下:
对外网用户,优先级顺序为:6级=3级>5级=2级>4级=1级;
对内网用户,优先级顺序为:6级>5级>4级>3级>2级>1级。
采用本发明的技术方案,在一种有效地结合内容分发网络CDN和P2P的优点的PCDN网络中提供了一种路由技术,能保证整个网络资源安全、有序地运行的情况下为用户提供尽可能快的服务。
具体实施方式
下面结合附图和实施例进一步说明本发明的技术方案。
PCDN网络
PCDN网络是应用本发明的路由技术的基础,这里先介绍一下PCDN网络。
上面说过,PCDN网络是融合了P2P和CDN的内容分发网络,此处首先说明一下与PCDN网络有关的基础技术,即P2P技术和CDN技术。
P2P技术
P2P是一种分布式网络,网络的参与者共享他们所拥有的一部分硬件资源(处理能力、存储能力、网络连接能力、打印机等),这些共享资源需要由网络提供服务和内容,能被其它对等节点(Peer)直接访问而无需经过中间实体。在此网络中的参与者既是资源(服务和内容)提供者(Server),又是资源(服务和内容)获取者(Client)。
P2P技术的特点体现在以下几个方面:
非中心化:网络中的资源和服务分散在所有结点上,信息的传输和服务的实现都直接在结点之间进行,可以无需中间环节和服务器的介入,避免可能的瓶颈。
可扩展性:在P2P网络中,随着用户的加入,不仅服务的需求增加了,系统整体的资源和服务能力也在同步地扩充,始终能较容易地满足用户的需要。整个体系是全分布的,不存在瓶颈。理论上其可扩展性几乎可以认为是无限的。
健壮性:P2P架构天生具有耐攻击、高容错的优点。由于服务是分散在各个结点之间进行的,部分结点或网络遭到破坏对其它部分的影响很小。P2P网络一般在部分结点失效时能够自动调整整体拓扑,保持其它结点的连通性。P2P网络允许结点自由地加入和离开,P2P网络还能够根据网络带宽、结点数、负载等变化不断地做自适应式的调整。
高性能/价格比:性能优势是P2P被广泛关注的一个重要原因。随着硬件技术的发展,个人计算机的计算和存储能力以及网络带宽等性能依照摩尔定理高速增长。采用P2P架构可以有效地利用互联网中散布的大量普通结点,将计算任务或存储资料分布到所有结点上。利用其中闲置的计算能力或存储空间,达到高性能计算和海量存储的目的。
隐私保护:在P2P网络中,由于信息的传输分散在各节点之间进行而无需经过某个集中环节,用户的隐私信息被窃听和泄漏的可能性大大缩小。
负载均衡:P2P网络环境下由于每个节点既是服务器又是客户端设备,减少了对传统C/S结构服务器计算能力、存储能力的要求,同时因为资源分布在多个节点,更好的实现了整个网络的负载均衡。
CDN技术
CDN是构建在IP网络之上的内容发布网络,其主要目的是通过该网络的构建减小IP骨干网络的传输压力,将连接到IP网络上的内容信息更迅速地分发到全球范围内连接到IP网络上的用户终端。CDN网络主要由初始服务器、分布在网络“边缘”的缓存服务器、重定向DNS服务器和内容交换服务器组成。其中,初始服务器负责完成生成服务器信息内容;缓存服务器负责存储初始服务器的部分或全部信息内容;为用户进行地址解析的DNS服务器判断出用户所访问的网站采用了CDN技术进行内容分发时,将用户申请内容解析用的URL信息转发给重定向DNS服务器,重定向DNS服务器根据接收到的URL信息、转发URL的DNS服务器的地址信息以及网站在构建CDN时缓存网站的配置情况,将距离转发URL的DNS服务器最近的缓存网站的IP地址发送给DNS服务器,DNS服务器再将接收到的IP地址信息转发给用户,最终用户利用所接收到的IP地址完成与其“较近”的缓存网站的连接,通过接受“就近”的缓存网站所提供的服务达到减轻骨干IP网络的传输压力、提高服务质量的目的。
CDN的内容交换服务器主要配置在一个物理地点具有较多的缓存服务器情况下,完成各缓存服务器之间的负载均衡等功能;内容管理服务器主要完成整个CDN中各缓存服务器中存储的内容的管理,为各缓存服务器制订各自相应的缓存策略,以提高缓存服务器的服务质量。
PCDN网络就是将CDN和P2P两者相结合,形成一种新的节点重叠内容分发网络。PCDN的基础是CDN,因此应尽量保存原有CDN网络的功能和特点。PCDN只是在CDN的基础上新增一部分功能,以支持P2P功能。P2P融合到CDN系统中,包括了内容路由、管理平面、内容分发和存储等几个方面的融合。在内容路由方面,CDN中原有的GSLB全局路由功能、SLB本地负载均衡和本地内容管理功能等都会保留,P2P的请求从GSLB往下的路由过程采用跟传统的CDN一致的路由过程和算法,只是P2P请求的协议跟传统请求的链接参数不同。在管理平面方面,运营支撑的体系模式、功能结构等都与现有的CDN运营支撑系统类似,只是在客户端的管理、服务等级分层、P2P信息计量等方面有所升级和变更。在内容分发和存储方面,带有切片信息的数据由边缘服务器和PCDN客户端Peer同时提供分发服务,P2P的分布情况和网络能力会影响存储设计和部署。
PCDN的定义
对于电信运营商来说,在有效地利用和转化P2P技术的过程中,必须充分考虑电信的特点,充分考虑利用现有的内容分发系统(CDN),来构建一个面向未来的、新型的流媒体内容承载网络。
PCDN的提出就是顺应电信的上述要求,PCDN建立在传统的CDN系统基础上,在主干网层次保留了原有的CDN系统的架构和功能,在边缘节点引入了P2P技术来进行文件及流媒体的共享,实现了P2P技术与CDN传输的结合。在CDN骨干网仍旧继承了CDN的内容缓存机制、全局负载均衡机制、骨干网内容分发流程、认证计费相关机制等基本技术特征。
为了避免骨干网上的流量对冲,PCDN通过集中的分布式架构,将P2P的流量严格限制在同一边缘节点的区域内。这样PCDN就集合了P2P和CDN的优点而舍弃了双方的缺点,避免了电信骨干网上的流量无序性和风暴,提供了增强的可管理性和服务高可靠性。
PCDN传输的内容与原CDN的内容有所不同,在核心节点根据P2P协议对内容(包括文件和流)做切片处理,P2P用户将根据这些规则来完成P2P共享,P2P在边缘层的引入大大降低了边缘服务器的压力,提高了文件传输和流媒体传输的效率。P2P技术充分利用了用户的闲置上行带宽,这样运营商可以通过更少的边缘服务器,提供更多的业务量,为更多的用户服务。
另外,PCDN的用户采用客户端Peer的方式,可以拓展更好的应用和服务。通过客户端的用户信息和浏览习惯采集、分析和统计,可以开展分众广告(又称“窄告”),分发基于地区、用户和用户组的广告,并可统计广告效果。另外,还可以通过客户端为用户提供差异性的服务,不同的用户可以享受不同内容、不同速率等分级化的服务。
首先,参考图1,图1是PCDN网络的结构框图,该PCDN 100包括:
核心层102,包括至少一个核心节点104,核心节点104包括应用及服务中心和管理中心,核心层1 02执行内容分发系统CDN协议。根据本发明,在核心节点104部署应用及服务中心和管理中心,实现对PCDN网络的业务管理、运营支撑和业务生成。其中,管理中心执行如下的功能:统一的用户登录、认证和访问路由,管理CP/SP业务运营,用户管理、网络管理和优化。应用及服务中心执行如下的功能:下载、点播、直播等业务的内容生成和发布,广告等业务的内容生成和发布。
主干层106,连接与核心层102,包括至少一个主干节点108,主干节点108根据CDN协议与核心层102的核心节点104进行数据交换,并执行CDN协议于P2P协议的转换。主干节点108作为PCDN节点设备实现内容的分发和传送,对其所属的P2P自治区域进行管理和控制,同时作为其所属的P2P自治区域的超级种子SUPER SEED为用户提供服务。
P2P自治区域110,连接与主干层106,每一个主干节点108连接一个P2P自治区域110,该主干节点108作为该P2P自治区域110的超级种子SUPER SEED为该区域提供服务并对该P2P自治区域进行管理和控制。包括采用P2P技术实现限定区域内的对等内容服务。通常,P2P自治区域部署在节点重叠内容分发网络的边缘,并提供边缘服务控制器为所述P2P自治区域提供服务。
通过上面的描述可知,本发明的PCDN的网络架构采用三层结构,分为核心层、主干层和位于网络边缘的P2P自治域。主干节点部署节点设备,核心节点或主干节点构成内容分发体系实现内容的有序分发和传送。而P2P自治区域实现P2P的内容服务,通过主干节点的设备进行管理、控制和服务保障。
图2是PCDN网络的一实例的结构图。参考图2可见,该PCDN网络200是建立在CDN网络202的基础之上,核心层102中的应用及服务中心103a和管理中心103b都建立在现有的CDN网络202的技术上,一个应用及服务中心103a和管理中心103b组成了一个核心节点104,核心节点104负责统一的用户登录、认证和访问路由,管理CP/SP业务运营,用户管理、网络管理和优化。而CDN网络202负责内容的有序分发和传送。
在CDN网络202上还包括主干层106,其包括数个主干节点108,主干节点1 08作为PCDN节点设备实现内容的分发和传送,对其所属的P2P自治区域进行管理和控制,同时作为其所属的P2P自治区域的超级种子SUPER SEED为用户提供服务。由此,图2所示的主干节点108还包括流媒体服务装置107a和SUPER SEED装置107b。
每一个主干节点108连接一个P2P自治区域110,P2P自治区域110内包括数个客户端Peer204,这些Peer204采用P2P技术实现限定区域内的对等内容服务。
参考图3,图3是PCDN网络的一种实现的具体结构图。如图3所示,该实现300中PCDN网络被分成了3个业务层次,分别是业务发布层302、服务承载层304和客户端层306。业务层次与前面所述的结构层次是有所区别的,两者是相互交叉的。
首先,结构层次上看,核心层102的核心节点104至少包括:内容管理设备320、播放服务器322、文件切片服务器324、业务平台326,在图3中,业务平台326被示广告平台,起包括了一个广告平台326a和一个广告服务器326b。还包括EPG服务器346、终端管理装置340、内容服务器342、全局负载均衡器GSLB 344。
主干层106的主干节点108至少包括:本地负载均衡器SLB及P2P路由器348、边缘服务控制器350、终端监控及升级装置352;
P2P自治区域110包括数个P2P客户端360,均连接到作为该P2P自治区域的SUPER SEED的主干节点108,P2P自治区域110包括客户端监控及升级装置362,与终端监控及升级装置352相对应且相互通信,参考图3所示,在终端监控及升级装置352中包括3个模块,分别是登录服务器352a、升级服务器352b和监控服务器352c,在客户端监控及升级装置362中包括三个对应的模块,分别是用户管理模块362a、升级模块362b和监控模块362c。P2P客户端360进一步包括,P2P客户端程序360a、P2P传输装置360b、本地流服务器360c、本地文件管理装置360d、播放装置360e,在P2P客户端360还包括用户界面360f。
从业务层次上分,各层所包含的内容如下:
业务发布层302主要完成流媒体业务的生成及管理,并将相应的业务如点播、直播、下载和广告等导入的PCDN服务承载层中。业务发布层302包括:
内容管理设备320,实现非实时内容的媒体资产管理、内容编排、内容发布。内容管理系统是业务系统的入口,通过该系统可以完成节目的组织、节目的入库,以及服务内容展现。经过节目制作系统生成的原始内容在内容管理系统中入库、编排后通过EPG展现给用户。
播放服务器322,实现实时内容(直播频道)的编排、发布。直播服务系统应包括三个部分:完成采集信号编解码的信息采集编码子系统、节目播出子系统,以及对信息采集子系统和节目播出子系统进行管理和监控的子系统。
文件切片服务器324,对播放内容,将媒体流转换为P2P数据流;对媒体文件,将媒体文件进行切片生成Index文件。P2P协议的核心技术是文件和流切片技术,高效的切片算法在提供网络传输和共享效率的同时,还可以保障服务的可靠性。文件切片系统以下要求:单一入口、算法同步,VOD和P2P流的无缝切换,相同内容的文件和流可共享,切片服务器在业务发布层302中的位置可灵活配置。
业务平台326,此处以广告平台为例进行说明,实现广告内容的编码、编排、发布、展现、策略管理。广告平台326a是位于业务发布层302中,而广告平台326b是位于下面将要描述的服务承载层304中。
服务承载层304包括:
全局负载均衡器GSLB 344,负责全局负载均衡,根据一组设定的导向策略(如地理区域、内容类型、网络负载状况等),将用户的内容请求导向到最佳的PCDN主干节点。
本地负载均衡器SLB及P2P路由器348,负责本地负载均衡,分配流服务器,以及P2P路由器。根据一组设定的策略实现用户请求的本地负载均衡,将用户的请求导向到一个最优的服务器组件,并为用户提供不同的最优P2P Peer列表,来为其提供流媒体服务;实现对边缘节点设备中的多个服务器组件(比如超级种子SUPER SEED)进行统一的流业务协同管理,同时还要将本节点的流量负载,内容分布等业务信息通汇报到上层。
内容服务器342,是核心节点中提供流媒体服务的服务引擎,管理整个PCDN网络的中心存储内容,也可以到第三方资源库中获取内容;可以接收下级节点设备的服务请求,为下级设备提供原始内容服务,也可以直接为最终用户提供流服务;同时能够处理P2P数据流,能够解析P2P文件。
边缘服务控制器350:是最终为用户提供服务的流媒体引擎,接收用户的服务请求,最终提供流服务;同时对业务的认证计费提供支持,对用户的访问请求进行认证,并在用户访问完成后记录用户的详细访问日志,作为计费依据。边缘服务器能够处理P2P数据流,能够解析P2P文件。
终端管理装置340,负责对P2P客户端进行管理。
上述的这些部件构成了PCDN服务器。
继续参考图3,服务承载层304还包括:
EPG服务器346,进行EPG发布和展现。
终端监控及升级装置352,包括登录服务器352a、升级服务器352b和监控服务器352c,其中登录服务器352a对客户端进行验证,或转发Vnet帐号/密码给Vnet系统。
广告服务器326b,根据策略为客户分配广告并以Rtsp方式提供流。
继续参考图3,客户端层306包括:
P2P客户端360,包括P2P客户端程序360a、P2P传输装置360b、本地流服务器360c、本地文件管理装置360d、播放装置360e,在P2P客户端360还包括用户界面360f。它们共同完成如下的功能:PCDN路由控制,与SLB、P2P Router保持连接;维护Peer列表,P2P传输,从边缘服务控制器或其他Peer处获取数据;向其他Peer提供数据;本地流服务器360c用于将P2P数据流转换为RTSP数据流,并传送给播放装置360e;本地文件服务装置360d将文件片断拼接成为完整的文件;供P2P传输模块读取文件片断,向其他Peer提供数据;本地流服务器360c中还包括广告引擎:确定在何时播放广告;通知本地流服务器播放广告的URL。用户界面360f,用于用户浏览内容的导航功能和客户端展现的个性化设置,以及界面设计。
客户端监控及升级装置362,包括三个,用户管理模块362a、升级模块362b和监控模块362c。它们共同完成如下的功能:客户端升级控制、注册、登录、自服务(修改信息、查询等功能)、定购(定购Vnet/VAS上的产品)。
在客户端层306,还可以包括扩展功能组件364,比如安全管理,Anti-Virus功能,监控客户端的播放质量,PPPoE拨号功能,IM即时通讯,本地发布内容或直播频道。
路由系统
本发明的路由系统,用于上述的PCDN网络,该路由系统包括两级路由装置,分别有上述的全局均衡装置GSLB和本地均衡装置SLB实现,其中GSLB位于主干网的核心节点上,实现服务承载层重定向,SLB在位于主干网边缘的主干节点上,基于P2P路由算法和P2P客户端Peer的分布情况实现P2P自治区域内的重定向。
根据本发明,PCDN网络采用GSLB→SLB的两级负载均衡模式。全局负载均衡为用户选择最近、最优的站点提供服务,使用户的流媒体在离用户最近的节点提供服务,更大的节省主干网带宽,为用户提供高质量的服务。本地负载均衡是基于应用、负载和健康状况的重定向,同时考虑P2P路由算法和Peer分布情况,可以为用户选择节点内最优的服务板卡,向用户提供服务。
GSLB进行重定向主要考虑的是用户在物理位置上离各个子节点位置的远近,主要考虑以下一些因素:节点可用性、静态就近性、动态就近性、子节点权重、子节点健康状况、用户自定义的特殊定向策略。
SLB基于下列因素进行重定向:P2P路由情况,服务应用类型,服务引擎的繁忙程度,服务引擎的权重,内容分布规则,服务引擎的健康状况,用户自定义的特殊定向策略。
图4是根据本发明的路由系统的路由结构图,示出了本发明的路由结构的逻辑示意图。参考图4所示,其表示的是一个P2P自治区域内的路由逻辑结构。如图4所示,该逻辑结构400中,集中服务器是SLB 402,即位于主干网边缘的一主干节点,该SLB 402连接到数个MSC 404,MSC404分别连接到数个超级节点406,超级节点连接到数个P2P客户端,即Peer 408,其中,SLB 402与MSC 404、超级节点406和Peer 408实现通信,它们之间的数据交换是控制流,超级节点406之间相互通信,它们之间的数据交换是数据流,Peer 408之间也相互通信,它们之间的数据交换也是数据流。
SLB同时还是本P2P自治区域的集中服务器,负责管理本区Peer用户的索引管理、信息管理等,提供高效合理的Peer列表,从而完成本区的整个P2P路由。它与每个管理的Peer都有一个TCP连接,每个Peer进入PCDN网络获得服务时需要连接SLB,直到该Peer退出PCDN网络时才断开此连接。
当一个外网的用户需要连接另一个内网的用户时,它会通过SLB向内网用户发送一个连接请求,该内网用户将与它建立一个连接,然后交互数据。SLB会执行下列的功能:
Peer查询信息:用户可以通过SLB查询别的peer信息,以便互相之间交流数据,组成P2P数据交流网络。
用户连接边缘服务器的优先权:根据用户的当前状态,决定用户之间的优先权。优先权高的用户优先连接边缘服务器,优先权低的只能连接别的用户来获取数据。
Peer相关信息维护:用户上报的相关信息,包括哪些用户共享哪些文件、各用户当前的流量层级等运行状况信息等。
当一P2P客户端请求内容时,SLB会根据其所属P2P自治区域内Peer的优先级根据优先级从高到低的顺序重定向该请求至该Peer;
Peer的优先级确定如下:所有的Peer分为0-6共三类七级,其中4、5、6级属于第一类,第一类的优先级最高;1、2、3级属于第二类,第二类的优先级较第一类低;0级属于第三类;第三类的Peer不能给别人提供服务;
Peer优先级的类别划分如下:当Peer的剩余连接数为0时,则该Peer的定为第三类,即0级;当Peer的可用上传带宽为0时,该Peer也将被定为第三类,即0级;当Peer属于外网IP时,被定为第一类;当Peer属于内网IP时,被定为第二类;
第一类Peer和第二类Peer中的级别相对应,第一类Peer的第4级对应第二类Peer的第1级,第一类Peer的第5级对应第二类Peer的第2级,第一类Peer的第6级对应第二类Peer的第3级。
对于直播业务,SLB将Peer的优先级计算如下:
当剩余连接数为0,或者可用上传带宽为0时,则不管内外网Peer,该Peer都定为第0级。
当可用上传带宽大于20Kbps,而且从MSC上的下载带宽大于80Kbps,且健康度大于1 0,则外网Peer定为第6级,内网Peer定义为第3级;
当可用上传带宽小于3,或者从MSC上的下载带宽小于10Kbps,或者健康度小于3的情况下,则外网Peer定义为第4级,内网Peer定义为第1级;
除了以上条件的情况下,外网Peer定义为第5级,内网Peer定义为第2级;
对于下载业务,SLB将Peer的优先级计算如下:
当剩余连接数为0,或者可用上传带宽为0,或者内容健康度为0时,则不管内外网Peer,该Peer都定义为第0级;
当可用上传带宽大于10Kbps,而且内容的健康度大于50,则外网Peer定义为第6级,内网Peer定义为第3级;
当可用上传带宽小于等于3Kbps,或者内容的健康度小于等于10时,则外网Peer定义为第4级,内网Peer定义为第1级;
除了以上条件的情况下,外网Peer定义为第5级,内网Peer定义为第2级。
SLB将根据P2P客户端请求和所有Peer的优先级来决定返回给P2P客户端的Peer信息列表,首先选择优先级高的Peer返回,当高优先级的Peer不够时才选择低优先级的返回,但不会返回第0级Peer信息,所述选择方法如下:
对外网用户,优先级顺序为:6级=3级>5级=2级>4级=1级;
对内网用户,优先级顺序为:6级>5级>4级>3级>2级>1级。
路由方法
根据本发明的第二方面,还提供一种路由方法,用于PCDN网络,路由方法包括,参考图5,图5是根据本发明的路由方法的流程图,该方法500包括:
502.提供两级路由装置,包括全局均衡装置GSLB和本地均衡装置SLB;
504.其中在主干网的核心节点上提供GSLB,实现服务承载层重定向;
506.在位于主干网边缘的主干节点上提供SLB,基于P2P路由算法和P2P客户端Peer的分布情况实现P2P自治区域内的重定向。
路由方法的其他细节特征都与上面所描述的路由系统类似,这里简单说明如下:
GSLB进行重定向主要考虑的是用户在物理位置上离各个子节点位置的远近,主要考虑以下一些因素:节点可用性、静态就近性、动态就近性、子节点权重、子节点健康状况、用户自定义的特殊定向策略。
SLB基于下列因素进行重定向:P2P路由情况,服务应用类型,服务引擎的繁忙程度,服务引擎的权重,内容分布规则,服务引擎的健康状况,用户自定义的特殊定向策略。
当一P2P客户端请求内容时,SLB会根据其所属P2P自治区域内Peer的优先级根据优先级从高到低的顺序重定向该请求至该Peer;
Peer的优先级确定如下:所有的Peer分为0-6共三类七级,其中4、5、6级属于第一类,第一类的优先级最高;1、2、3级属于第二类,第二类的优先级较第一类低;0级属于第三类;第三类的Peer不能给别人提供服务;
Peer优先级的类别划分如下:当Peer的剩余连接数为0时,则该Peer的定为第三类,即0级;当Peer的可用上传带宽为0时,该Peer也将被定为第三类,即0级;当Peer属于外网IP时,被定为第一类;当Peer属于内网IP时,被定为第二类;
第一类Peer和第二类Peer中的级别相对应,第一类Peer的第4级对应第二类Peer的第1级,第一类Peer的第5级对应第二类Peer的第2级,第一类Peer的第6级对应第二类Peer的第3级。
对于直播业务,SLB将Peer的优先级计算如下:
当剩余连接数为0,或者可用上传带宽为0时,则不管内外网Peer,该Peer都定为第0级。
当可用上传带宽大于20Kbps,而且从MSC上的下载带宽大于80Kbps,且健康度大于10,则外网Peer定为第6级,内网Peer定义为第3级;
当可用上传带宽小于3,或者从MSC上的下载带宽小于10Kbps,或者健康度小于3的情况下,则外网Peer定义为第4级,内网Peer定义为第1级;
除了以上条件的情况下,外网Peer定义为第5级,内网Peer定义为第2级;
对于下载业务,SLB将Peer的优先级计算如下:
当剩余连接数为0,或者可用上传带宽为0,或者内容健康度为0时,则不管内外网Peer,该Peer都定义为第0级;
当可用上传带宽大于10Kbps,而且内容的健康度大于50,则外网Peer定义为第6级,内网Peer定义为第3级;
当可用上传带宽小于等于3Kbps,或者内容的健康度小于等于10时,则外网Peer定义为第4级,内网Peer定义为第1级;
除了以上条件的情况下,外网Peer定义为第5级,内网Peer定义为第2级。
SLB将根据P2P客户端请求和所有Peer的优先级来决定返回给P2P客户端的Peer信息列表,首先选择优先级高的Peer返回,当高优先级的Peer不够时才选择低优先级的返回,但不会返回第0级Peer信息,所述选择方法如下:
对外网用户,优先级顺序为:6级=3级>5级=2级>4级=1级;
对内网用户,优先级顺序为:6级>5级>4级>3级>2级>1级。
采用本发明的技术方案,在一种有效地结合内容分发网络CDN和P2P的优点的PCDN网络中提供了一种路由技术,能保证整个网络资源安全、有序地运行的情况下为用户提供尽可能快的服务。
上述实施例是提供给熟悉本领域内的人员来实现或使用本发明的,熟悉本领域的人员可在不脱离本发明的发明思想的情况下,对上述实施例做出种种修改或变化,因而本发明的保护范围并不被上述实施例所限,而应该是符合权利要求书提到的创新性特征的最大范围。