首页> 中国专利> 服务承载网中服务定位和服务质量路由的集成方法

服务承载网中服务定位和服务质量路由的集成方法

摘要

本发明属于服务定位和服务质量路由技术领域,其特征在于,依次含有以下步骤:服务器向最近的服务承载网络节点注册服务,提供服务器负载信息;服务器把本地注册信息递交此类服务的集中节点;用户向最近的服务承载网络节点提出某种服务的服务质量路由请求;集中节点根据用户请求查找服务器副本信息表;集中节点使用服务器选择算法计算最优的服务器副本,再利用QoS路由算法计算该副本到用户的路径。本发明可在服务发现的同时找到多约束下的服务路径,同时,服务选择兼顾了网络延迟和服务器负载,使系统对用户的响应时间保持在较优的水平。

著录项

  • 公开/公告号CN101014046A

    专利类型发明专利

  • 公开/公告日2007-08-08

    原文格式PDF

  • 申请/专利权人 清华大学;

    申请/专利号CN200710063492.9

  • 发明设计人 徐恪;崔勇;王青青;

    申请日2007-02-02

  • 分类号H04L29/06;H04L12/28;

  • 代理机构

  • 代理人

  • 地址 100084 北京市100084信箱82分箱清华大学专利办公室

  • 入库时间 2023-12-17 18:59:03

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2014-04-02

    未缴年费专利权终止 IPC(主分类):H04L29/06 授权公告日:20100519 终止日期:20130202 申请日:20070202

    专利权的终止

  • 2010-05-19

    授权

    授权

  • 2007-10-03

    实质审查的生效

    实质审查的生效

  • 2007-08-08

    公开

    公开

说明书

技术领域

服务承载网中服务定位和服务质量路由的集成方法属于互联网技术领域,尤其涉及服务定位和服务质量路由领域。

背景技术

当前Internet上有很多应用分散在Internet中不同地理位置的多个服务器副本上,这些服务器的副本能够提供相同的服务,或者含有同一类资源。典型的如:分布式镜像系统,内容分发网络,域名服务系统,分布式文件系统/数据库等等,之所以设置同一个服务的多个服务器副本是出于提高服务的质量,增强容错性和负载平衡的考虑。但这同时给选择服务的用户提出了一个难题。

因此我们期望网络可以自己承担发现“最好”的服务这一任务,而不是由对网络没有太多认识的端系统在一系列服务列表中去无意识的选择;与此同时,特别地对于很多“数据提供型“的服务,用户希望服务发现后的服务提供也是有服务质量保证的。有关服务质量路由和服务发现的研究已经有很多,但是对如何将二者集成在一起的实践还很少。

因此本发明基于服务承载网络的架构,(它位于传输层和应用层之间,向下和底层网络融合;向上可以为应用提供支持服务质量路由,流量负载均衡等服务的接口。)关注于如何将服务定位引入服务承载网络中,并与服务质量路由集成的方法。

发明内容

本发明的目的在于提供一种服务承载网中服务定位和服务质量路由的集成方法。本发明的特征在于,所述的方法是在服务承载网络中进行的,服务承载网由网络管理员部署节点,节点间运行同一套协议交互节点及链路信息,最终形成一个位于传输网络之上的覆盖网络,服务器和客户机通过距离自己最近的服务承载网节点接入服务承载网。

依次含有以下步骤:

步骤1.服务器注册:

步骤1.1.服务器向本地的服务承载网节点(记作UNodeS)提出注册服务的申请,格式为(Service,Server_Load);

步骤1.2.由UNodeS节点将此注册请求的源服务器IP地址和Service字段(Server_IP,Service)放入本地的服务信息表中;

步骤1.3.对此本地的注册表项产生一个可在服务承载网络中唯一标识的注册消息(Service_ID,Server_Load),其中Service_ID由步骤1.2中表项的Service字段和本地服务承载网节点的节点号UNode_ID和Server_IP字段共同组成;

步骤1.4.UNodeS根据hash(Service)得出服务承载网中负责此类服务的集中节点号(在服务承载网络中,每一类服务由一个集中节点管理);并向此集中节点发送步骤1.3中产生的(Service_ID,Server_Load)注册消息;

步骤1.5.集中节点收到(Service_ID,Server_Load)的注册消息后,向其维护的服务器副本信息表中添加此注册消息;

步骤2.服务的本地维护:

服务器周期性地(默认设置为60s)向本地UNodeS节点发送如步骤1.1中的注册消息,从而使本地节点得知接入服务器的活跃情况,若在连续的3个周期内没收到,则向此类服务的集中节点报告服务器不活跃,转至步骤3.3处理;

步骤3.服务信息在集中节点的更新:

步骤3.1.服务器仅在检测到负载低于80%的情况下,才向服务覆盖网络汇报自己的负载信息,此信息由本地UNodeS节点转发至该服务的集中节点维护;

步骤3.2.若集中节点收到负载变化的消息,则更新服务器副本信息表中的相应表项;

步骤3.3.若集中节点收到服务器不活跃的消息,则删除服务器副本信息表中的相应表项;

步骤4.客户端的请求和处理:

步骤4.1.客户端首先向接入的服务承载网络节点提出服务请求消息,格式为(Service,QoS);

步骤4.2.收到请求的服务承载网络节点(记作UNodeC)同样根据hash(Service)得出服务承载网中负责此类服务的集中节点号,并向此集中节点发送(Service,QoS)请求;

步骤4.3.收到请求的集中节点执行如下操作:

步骤4.3.1.查询服务器副本信息表各个表项中的UNodeS节点及其对应的Server_Load信息,记作l;

步骤4.3.2.查询服务承载网的虚链路度量数据库,得到服务器副本信息表中各个表项中的UNodeS节点到UNodeC节点的延迟,记作d;

步骤4.3.3.计算各UNodeS节点的值,此值综合反映了服务器与客户端距离以及服务器处理能力,并得到按此值从大到小排列的UNodeS节点号的序列;

步骤4.3.4.计算序列中第一个UNodeS节点到UNodeC节点之间是否有满足步骤4.2所述QoS约束的可行路径;

步骤4.3.5.若计算存在可行路径,则向转发客户端申请的UNodeC节点发送请求成功的消息,并后续转发给客户端;并向此UNodeS节点发送此服务的可行路径消息,后续服务器的服务数据沿此路径发送给客户端;

步骤4.3.6.若本次计算失败,则继续对序列中的后续节点执行步骤4.3.4.中的计算;

步骤4.3.7.若对该序列前50%的节点计算都没有可行路径,则向转发用户申请的UNodeC节点发送请求失败的消息,并后续转发给客户端。

本发明所提出的服务承载网中服务定位和服务质量路由的集成方法解决了服务承载网中如何在服务发现的同时,找到多约束的服务路径的问题,这在以往的服务发现及服务质量路由的研究和实践中是没有涉及的。本发明的优点在于:不需要对物理网络的现有设备作更改,可同时支持多种服务,客户端只需简单提出所需服务和服务质量需求即可,以优化用户的服务相应时间为目的,服务选择时兼顾网络延迟和服务器负载,模拟试验也证明了此服务器选择方法的高效性。

附图说明

图1.服务承载网络模型:

图2.系统流程图;

图3.不同服务器选择方法的性能比较:

△三角形线:u=1/l

○圆形线:u=1/d

*星形线:u=1/(d+l)。

具体实施方式

在本发明所述系统中,除了服务承载网络的每个节点都需要运行同一套基本的服务承载网络协议之外,服务器还需要运行服务注册和更新协议;客户端无需运行任何额外的协议,只需通过Web方式向服务承载网的接入节点提出服务申请即可。

将服务承载网络中的服务大体上分成两种:“数据提供型”和“服务提供型”,其中对于前者,从服务器到客户端的数据传输量较大,对应于下载和在线播放等服务;后者的数据传输量较轻,对应于DNS解析等服务。不论对于这两大类服务中的哪种具体服务,服务的提供者可通过网站,电子邮件等方式使用户得知服务名称,以便用户提出服务请求。

服务承载网络对每一类服务设置有一个集中节点进行服务器的选择和服务路由的计算。一个服务器副本只有注册到该类服务的集中节点上,才可在服务承载网络中提供服务,具体有两个步骤:

(1)本地注册:在此步骤中,服务承载网络的服务接入节点需要维护所有服务器(与服务类型无关)的接入信息,保存在下面的表中,在本地不保存服务器的负载信息,而将此信息转发给集中节点维护。因此承载网络中,服务的接入节点只需维护本地有那些服务器,各自能提供什么服务即可。在本地注册后,本地节点需要继续将信息注册到集中节点,因为在服务承载网络内部的通信是以每个服务承载网络节点的全局唯一的节点号为标识的,本地节点须将自己的节点号信息附加在注册信息中,发至集中节点;又考虑到本地可能存在多个能提供相同服务的服务器同时接入,因此还需要服务器的IP来标识;因此最终产生的在服务承载网络中标识服务的Service_ID由服务名称,提供此服务接入的服务承载网络的节点号UNodeS和服务器的IP地址共同构成。在本地节点和服务器的交互中,仅区分服务名称和服务器IP地址即可;而在本地节点和集中节点的交互中,仅区分服务名称和UNodeS节点号即可。

服务器本地的服务信息表中各列的含义:

名称含义Service_IPService服务器的IP地址。该服务器所能提供的服务名称。

(2)向集中节点的注册:在此步骤中,一类服务的唯一集中节点维护此类服务所有服务器副本的信息,根据服务承载网络自身提供的节点间的虚链路度量信息以及下表中的各个服务器副本的性能,来综合决定服务器副本的选择。这样作的目的是对用户请求服务的响应时间的综合考虑。如步骤4.3.3中,d刻画了服务承载网络内部的通信延迟;l刻画了服务器的处理延迟及其到接入节点之间的延迟,(这里认为客户端的接入节点到客户端的下行带宽不成为系统的瓶颈),如果仅以服务器的负载为依据,那么可能最终会选择一个负载较轻但是实际上距客户端很远的服务器,这不是我们想看到的。

特定服务集中节点所维护的服务器副本信息表中各列的含义:

名称含义Service_IDServer_Load在服务承载网络中唯一标识一个服务的ID号,由服务名称,提供此服务接入的服务承载网络的节点号UNodeS和服务器的IP地址构成。是服务器的负载。

上面提到选择服务器时综合考虑了延迟和服务器负载的因素,在本系统中,服务器的负载是由服务承载网络中服务器的接入节点协助服务器来度量的,具体方法是将实时测量的服务器到其接入节点的己占用带宽Bused与此段链路的容量C相比,作为服务器的负载的衡量标准,取值在[0,1]之间。C是定值,而Bused=C-BAvailable得到,BAvailable是可用带宽,可通过PathChirp等工具测量得出。

集中节点的选择:

在对一类服务选择集中节点时,采取SHA-1散列算法,任意长度的服务名称经哈希函数计算得到固定长度(32比特)的散列值,即服务承载网络的节点号,将此节点作为此服务的集中节点。如对于服务名称为”ProviderA_CDN”,hash(‘ProviderA_CDN’)=111,则由服务承载网中节点号为’111’的节点作为此类服务的集中节点。

用户请求的QoS:

作为本发明背景的服务承载网络支持延迟,可用带宽,丢包率这三种度量的虚链路测量,因此这里限定用户的提出的服务质量约束限制在这三种以内,多约束的路由由集中节点计算,本系统采用源路由的策略,由集中节点根据本地维护的全网虚链路信息,计算一条从服务器接入节点到客户端接入节点的路径;并计算所得路径发送给服务器接入节点,按照此路径发送服务数据。

实验:

实验过程中服务承载网络同时承载5种服务,在不同的服务器选择方法下,考察每种方法的平均响应时间与用户请求到达的速率之间的关系。三种服务器的选择方法如下,分别选择u最大的服务器:

1)服务器的接入节点与客户端接入节点之间的延迟d,u=1/d;

2)服务器的负载l,u=1/l;

3)综合考虑服务器负载和网络延迟则,u=1/(d+l);

从图3可以看出,当请求的到达速率在网络所能承载的范围内时,平均响应时间的变化较缓和,而方法3)的性能明显高于以上两种方法;方案1)稍优于方案2),这也说明了为何不能选择距离上较远而负载较轻的服务器;当请求到达速率趋近于1时,导致网络的流量急剧上升,响应时间均趋于无群。

本方案采取了方法3)中的服务器选择方法,在选择最近的服务器的同时,兼顾服务器的负载平衡,使得系统对用户的响应时间保持在比较优的水平。

由此可见,本发明达到了预期目的。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号