CN105704064A - 一种用于选取服务节点的方法及装置、应用引擎 - Google Patents
一种用于选取服务节点的方法及装置、应用引擎 Download PDFInfo
- Publication number
- CN105704064A CN105704064A CN201410680393.5A CN201410680393A CN105704064A CN 105704064 A CN105704064 A CN 105704064A CN 201410680393 A CN201410680393 A CN 201410680393A CN 105704064 A CN105704064 A CN 105704064A
- Authority
- CN
- China
- Prior art keywords
- service node
- application engine
- alto
- expense
- cost metric
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/40—Support for services or applications
Abstract
本发明实施例提供一种用于选取服务节点的方法及装置、应用引擎,所述方法包括:应用引擎从应用层流量优化ALTO服务器获得至少两个服务节点的开销集合,所述开销集合包括每个服务节点对应于至少两种开销度量的取值;所述应用引擎获得权重集合,所述权重集合包括所述至少两种开销度量中每种开销度量的权重值;所述应用引擎利用所述开销集合和所述权重集合,计算每个服务节点的综合开销,所述综合开销用于指示对所述至少两个服务节点进行排序,并从所述至少两个服务节点中选取最优服务节点。如此方案,有助于实现综合多开销度量场景下的服务节点选取。
Description
技术领域
本发明涉及通信技术领域,具体涉及一种用于选取服务节点的方法及装置、应用引擎。
背景技术
应用层流量优化(英文:ApplicationLayerTrafficOptimization,简称:ALTO)是一种在分布式应用(英文:distributedapplication)中引导资源选择的技术。ALTO服务器可以根据ALTO客户端发送的查询请求,为ALTO客户端提供查询服务;对应地,ALTO客户端可根据ALTO服务器返回的查询响应,从具有相同资源的至少两个服务节点中,选取最优服务节点,由最优服务节点作为资源提供者为用户提供服务。
举例来说,ALTO服务器至少可为ALTO客户端提供如下类型的查询服务:终端间路径开销查询服务(英文:endpointcostservice,简称:ECS)、终端属性查询服务(英文:endpointpropertyservice,简称:EPS)。
通常,基于ECS,ALTO客户端可以请求ALTO服务器查询单个开销度量(英文,costmetric)。举例来说,开销度量至少可以包括带宽、时延、丢包率,等等。基于EPS,ALTO客户端可以请求ALTO服务器查询至少两个服务节点的属性。举例来说,属性至少可以包括节点的类型、节点的接入方式,等等。
随着分布式应用的日益更新与发展,目前的查询服务已不能满足分布式应用的查询需求,亟需一种新的服务节点选取的方案。
发明内容
本发明实施例的用于选取服务节点的方法及装置,有助于实现综合多costmetric场景下的服务节点选取。
为此,本发明实施例提供如下技术方案:
第一方面,提供了一种用于选取服务节点的方法,所述方法包括:
应用引擎从应用层流量优化ALTO服务器获得至少两个服务节点的开销集合,所述开销集合包括每个服务节点对应于至少两种开销度量的取值;
所述应用引擎获得权重集合,所述权重集合包括所述至少两种开销度量中每种开销度量的权重值;
所述应用引擎利用所述开销集合和所述权重集合,计算每个服务节点的综合开销,所述综合开销用于指示对所述至少两个服务节点进行排序,并从所述至少两个服务节点中选取最优服务节点。
结合第一方面,在第一方面的第一种可能的实现方式中,所述应用引擎利用所述开销集合和所述权重集合,计算每个服务节点的综合开销包括:
所述应用引擎对Cij进行归一化处理,获得归一化值C′ij,所述Cij为第i个服务节点对应于第j种开销度量的取值,i=1,2,…,N,j=1,2,…,M,N为所述服务节点的个数,M为所述开销度量的个数,N和M为正整数,N≥2,M≥2;
所述应用引擎利用所述C′ij和Wj,计算所述第i个服务节点的综合开销Ci=C′i1*W1+C′i2*W2+…+C′ij*Wj+…+C′iM*WM,所述Wj为第j种开销度量的权重值。
结合第一方面或第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,
所述应用引擎集成在ALTO客户端或集成在应用程序,则所述应用引擎从ALTO服务器获得至少两个服务节点的开销集合包括:
所述应用引擎接收所述ALTO服务器发送的查询响应,所述查询响应中包括所述开销集合;
或者,
所述应用引擎集成在所述ALTO服务器,则所述应用引擎从ALTO服务器获得至少两个服务节点的开销集合包括:
所述应用引擎从所述ALTO服务器读取所述开销集合。
结合第一方面,第一方面的第一种和第二种可能的实现方式中的任意一个,在第一方面的第三种可能的实现方式中,所述应用引擎从ALTO服务器获得至少两个服务节点的开销集合之前,所述方法还包括:
所述应用引擎获得应用程序发送的ALTO服务请求,所述ALTO服务请求包括所述至少两种开销度量的标识和/或业务的质量要求,所述业务的质量要求用于表示所述业务的关键质量指标;所述ALTO服务请求还包括所述至少两个服务节点的标识;
相应于所述ALTO服务请求包括所述业务的质量要求,所述方法还包括:所述应用引擎将所述业务的质量要求转换为所述至少两种开销度量;
所述应用引擎向所述ALTO服务器发送ALTO查询请求,所述ALTO查询请求包括所述至少两种开销度量的标识和所述至少两个服务节点的标识。
结合第一方面的第三种可能的实现方式,在第一方面的第四种可能的实现方式中,所述应用引擎将所述业务的质量要求转换为所述至少两种开销度量包括:
所述应用引擎查询预置数据库,所述预置数据库保存有所述业务的质量要求与所述至少两种开销度量之间的映射关系;
所述应用引擎利用所述映射关系,将所述业务的质量要求转换为对应的所述至少两种开销度量。
结合第一方面的第三种或第四种可能的实现方式,在第一方面的第五种可能的实现方式中,所述业务的质量要求包括第一质量要求和/或第二质量要求;
所述第一质量要求包括节点的类型和业务的关键参数,所述第二质量要求包括业务的类型和业务的名称。
结合第一方面,第一方面的第一种至第五种可能的实现方式中的任意一个,在第一方面的第六种可能的实现方式中,所述应用引擎利用所述开销集合和所述权重集合,计算每个服务节点的综合开销之前,所述方法还包括:
所述应用引擎进行预处理,剔除所述至少两个服务节点中不满足要求的服务节点,获得剩余服务节点集合;
所述应用引擎利用所述开销集合和所述权重集合,计算每个服务节点的综合开销包括:
所述应用引擎利用所述开销集合和所述权重集合,计算所述剩余服务节点集合中每个服务节点的综合开销。
结合第一方面的第六种可能的实现方式,在第一方面的第七种可能的实现方式中,所述应用引擎进行预处理,剔除所述至少两个服务节点中不满足要求的服务节点,获得剩余服务节点集合包括:
所述应用引擎获得所述至少两种开销度量中每种开销度量的要求值;
所述应用引擎确定每个服务节点对应于所述至少两种开销度量的取值是否符合所述要求值的要求;
如果存在不符合所述要求值的要求的服务节点,所述应用引擎从所述至少两个服务节点中剔除所述不符合所述要求值的要求的服务节点,获得所述剩余服务节点集合。
结合第一方面的第七种可能的实现方式,在第一方面的第八种可能的实现方式中,如果每个服务器均符合所述要求值的要求,所述方法还包括:
所述应用引擎从所述ALTO服务器获得所述至少两个服务节点中每个服务节点的节点属性;
所述应用引擎根据所述节点属性,确定所述至少两个服务节点中是否存在不能作为所述最优服务节点的服务节点;
如果存在不能作为所述最优服务节点的服务节点,所述应用引擎从所述至少两个服务节点中剔除所述不能作为所述最优服务节点的服务节点,获得所述剩余服务节点集合。
第二方面,提供了一种应用引擎,所述应用引擎包括:
开销集合获得单元,用于从应用层流量优化ALTO服务器获得至少两个服务节点的开销集合,所述开销集合包括每个服务节点对应于至少两种开销度量的取值;
权重集合获得单元,用于获得权重集合,所述权重集合包括所述至少两种开销度量中每种开销度量的权重值;
综合开销计算单元,用于利用所述开销集合和所述权重集合,计算每个服务节点的综合开销,所述综合开销用于指示对所述至少两个服务节点进行排序,并从所述至少两个服务节点中选取最优服务节点。
结合第二方面,在第二方面的第一种可能的实现方式中,所述综合开销计算单元包括:
归一化单元,用于对Cij进行归一化处理,获得归一化值C′ij,所述Cij为第i个服务节点对应于第j种开销度量的取值,i=1,2,…,N,j=1,2,…,M,N为所述服务节点的个数,M为所述开销度量的个数,N和M为正整数,N≥2,M≥2;
综合开销计算子单元,用于利用所述C′ij和Wj,计算所述第i个服务节点的综合开销Ci=C′i1*W1+C′i2*W2+…+C′ij*Wj+…+C′iM*WM,所述Wj为第j种开销度量的权重值。
结合第二方面或第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,
所述应用引擎集成在ALTO客户端或集成在应用程序,则所述开销集合获得单元,具体用于接收所述ALTO服务器发送的查询响应,所述查询响应中包括所述开销集合;
或者,
所述应用引擎集成在所述ALTO服务器,则所述开销集合获得单元,具体用于从所述ALTO服务器读取所述开销集合。
结合第二方面,第二方面的第一种和第二种可能的实现方式中的任意一个,在第二方面的第三种可能的实现方式中,所述应用引擎还包括:
ALTO服务请求获得单元,用于在所述开销集合获得单元获得所述开销集合之前,获得应用程序发送的ALTO服务请求,所述ALTO服务请求包括所述至少两种开销度量的标识和/或业务的质量要求,所述业务的质量要求用于表示所述业务的关键质量指标;所述ALTO服务请求还包括所述至少两个服务节点的标识;
相应于所述ALTO服务请求包括所述业务的质量要求,所述应用引擎还包括:转换单元,用于将所述业务的质量要求转换为所述至少两种开销度量;
ALTO查询请求发送单元,用于向所述ALTO服务器发送ALTO查询请求,所述ALTO查询请求包括所述至少两种开销度量的标识和所述至少两个服务节点的标识。
结合第二方面的第三种可能的实现方式,在第二方面的第四种可能的实现方式中,所述转换单元包括:
查询单元,用于查询预置数据库,所述预置数据库保存有所述业务的质量要求与所述至少两种开销度量之间的映射关系;
转换子单元,用于利用所述映射关系,将所述业务的质量要求转换为对应的所述至少两种开销度量。
结合第二方面的第三种或第四种可能的实现方式,在第二方面的第五种可能的实现方式中,所述业务的质量要求包括第一质量要求和/或第二质量要求;
所述第一质量要求包括节点的类型和业务的关键参数,所述第二质量要求包括业务的类型和业务的名称。
结合第二方面,第二方面的第一种至第五种可能的实现方式中的任意一个,在第二方面的第六种可能的实现方式中,所述应用引擎还包括:
预处理单元,用于在所述综合开销计算单元计算所述综合开销之前,进行预处理,剔除所述至少两个服务节点中不满足要求的服务节点,获得剩余服务节点集合;
所述综合开销计算单元,具体用于利用所述开销集合和所述权重集合,计算所述剩余服务节点集合中每个服务节点的综合开销。
结合第二方面的第六种可能的实现方式,在第二方面的第七种可能的实现方式中,所述预处理单元包括:
要求值获得单元,用于在所述综合开销计算单元计算所述综合开销之前,获得所述至少两种开销度量中每种开销度量的要求值;
第一确定单元,用于确定每个服务节点对应于所述至少两种开销度量的取值是否符合所述要求值的要求;
第一剔除单元,用于在所述第一确定单元确定存在不符合所述要求值的要求的服务节点时,从所述至少两个服务节点中剔除所述不符合所述要求值的要求的服务节点,获得所述剩余服务节点集合。
结合第二方面的第七种可能的实现方式,在第二方面的第八种可能的实现方式中,所述预处理单元还包括:
节点属性获得单元,用于在所述第一确定单元确定每个服务器均符合所述要求值的要求时,从所述ALTO服务器获得所述至少两个服务节点中每个服务节点的节点属性;
第二确定单元,用于根据所述节点属性获得单元获得的所述节点属性,确定所述至少两个服务节点中是否存在不能作为所述最优服务节点的服务节点;
第二剔除单元,用于在所述第二确定单元确定存在不能作为所述最优服务节点的服务节点时,从所述至少两个服务节点中剔除所述不能作为所述最优服务节点的服务节点,获得所述剩余服务节点集合。
第三方面,提供了一种用于选取服务节点的装置,所述装置包括上述第二方面、第二方面的第一种至第八种中任一种可能的实现方式所述的应用引擎。
第四方面,提供了一种用于选取服务节点的设备,所述设备包括:处理器和存储器;
所述存储器,用于存储程序指令和数据;
所述处理器,用于读取所述存储器中存储的程序指令和数据,执行以下操作:
处理器从应用层流量优化ALTO服务器获得至少两个服务节点的开销集合,所述开销集合包括每个服务节点对应于至少两种开销度量的取值;
所述处理器获得权重集合,所述权重集合包括所述至少两种开销度量中每种开销度量的权重值;
所述处理器利用所述开销集合和所述权重集合,计算每个服务节点的综合开销,所述综合开销用于指示对所述至少两个服务节点进行排序,并从所述至少两个服务节点中选取最优服务节点。
本发明实施例用于选取服务节点的方法及装置、应用引擎,获得每个服务节点对应于至少两种开销度量的取值,以及每种开销度量的权重值,计算每个服务节点基于至少两种开销度量的综合开销,该综合开销用于指示对至少两个服务节点进行排序,并从至少两个服务节点中选取最优服务节点。如此方案,有助于实现综合多种开销度量场景下的服务节点选取。且基于本发明实施例方案选取最优服务节点,还有助于提高应用程序为用户提供业务的质量。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其它的附图。
图1是现有技术中ALTO客户端与ALTO服务器之间的信令交互图;
图2是本发明实施例用于选取服务节点的方法实施例1的流程图;
图3是本发明实施例用于选取服务节点的方法实施例2的流程图;
图4是本发明实施例用于选取服务节点的方法实施例3的流程图;
图5是本发明实施例用于选取服务节点的方法实施例4的流程图;
图6是本发明实施例中实现方式一的信令交互图;
图7是本发明实施例中实现方式二的信令交互图;
图8是本发明实施例中实现方式三的信令交互图;
图9是本发明实施例中实现方式四的信令交互图;
图10是本发明实施例中预置数据库的示意图;
图11是本发明实施例中实现方式五的信令交互图;
图12是本发明实施例中实现方式六的信令交互图;
图13是本发明实施例应用引擎的示意图;
图14是本发明实施例用于选取服务节点的设备的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和实施方式对本发明实施例作进一步的详细说明。
在介绍本发明实施例技术方案之前,先对本发明实施例的具体应用场景做简单介绍。
ALTO技术是一种在分布式应用中引导资源选择的技术。ALTO技术涉及两个基本概念:分区号(英文:PartitionIDentity,简称:PID)和开销(英文:cost)。举例来说,PID可以表示由至少两个终端(英文:Endpoint)形成的集合。通常,所述至少两个终端可以属于一个网段,或者所述至少两个终端可以属于一个小区,或者所述至少两个终端可以属于一个自治系统(英文:AutonomousSystem,简称:AS),等等,本发明实施例对PID的划分方式可不做具体限定。举例来说,针对具体业务,终端可体现为源节点或者服务节点。举例来说,cost可以表示任意两个PID之间网络路径的开销。通常,cost可能涉及多种开销度量,如,直线距离(英文:air-miles)、跳数(英文:hop-counts)、通用路由成本(英文:genericroutingcosts)、路由权(英文:routingcost)、带宽、时延、丢包率,等等,且随着分布式应用的日益发展,还可能出现更多种类型的开销度量,本发明实施例对开销度量的类型可不做具体限定。
除PID和cost之外,ALTO技术还涉及一个基本概念:ALTO协议。ALTO协议主要用于描述ALTO客户端(英文:Client)和ALTO服务器(英文:Server)之间交互使用的协议。基于ALTO协议,ALTO服务器至少可为ALTO客户端提供ECS和EPS等查询服务。举例来说,ALTO服务器可以通过ECS,为ALTO客户端提供至少两个服务节点针对单一开销度量的取值。ALTO服务器可以通过EPS,为ALTO提供至少两个服务节点的属性。
以ECS为例,ALTO客户端与ALTO服务器之间的交互过程可参见图1,包括:
101,在用户有业务需求时,可触发实现业务的应用程序,向ALTO客户端发送需要查询的开销度量的标识和服务节点的标识。举例来说,用户的业务需求可以为观看视频,实现业务的应用程序可以为视频播放软件。举例来说,开销度量的标识可以为开销度量的名字和/或编号,本发明实施例对此可不做具体限定。举例来说,图1所示示例中开销度量可以为时延。举例来说,服务节点的标识可以为服务节点的名字和/或服务节点的地址,服务节点的地址可以为网络之间互连的协议(英文:InternetProtocol,简称:IP)地址或媒体介入控制层(英文:MediaAccessControl,简称:MAC)地址,本发明实施例对此可不做具体限定。举例来说,图1所示示例中服务节点的标识可包括:第一服务节点的标识ipv4:192.0.2.89,第二服务节点的标识ipv4:198.51.100.34,第三服务节点的标识ipv4:203.0.113.45。另外,应用程序还可向ALTO客户端发送源节点的标识,举例来说,图1所示示例中源节点的标识可以为ipv4:192.0.2.2。
102,ALTO客户端接收应用程序发送的开销度量,根据查询需求,生成ECS查询请求或EPS查询请求。举例来说,ALTO客户端生成ECS查询请求,并通过相应的端口将ECS查询请求发送至ALTO服务器。ECS查询请求中可包括查询类型、开销度量和服务节点的标识。本示例中,查询类型为ECS,开销度量为时延。
举例来说,应用程序可以集成在ALTO客户端,作为ALTO客户端的一个功能模块。或者,应用程序也可以集成在可与ALTO客户端通信的其它设备,作为所述其它设备的一个功能模块。本发明实施例对应用程序在网络中的存在形式可不做具体限定。
需要说明的是,源节点即为集成有应用程序的设备,如,上文示例中的ALTO客户端或所述其它设备。服务节点即为能满足用户业务需求的设备,以上文观看视频的业务需求为例,服务节点为具有所述视频资源的设备。
103,ALTO服务器接收ALTO客户端发送的ECS查询请求,并查询ECS查询请求中各服务节点对应于开销度量的取值。举例来说,第一服务节点对应于开销度量的取值为:时延为1s,第二服务节点对应于开销度量的取值为:时延为2s,第三服务节点对应于开销度量的取值为:时延为1.5s。举例来说,服务节点对应于开销度量的取值可以理解为源节点与服务节点之间的开销,即,源节点所属PID与服务节点所属PID之间的网络路径的开销。
104,ALTO服务器向ALTO客户端返回ECS查询响应,ECS查询响应中包括各服务节点对应于开销度量的取值。
105,ALTO客户端通过相应的端口接收ECS查询响应,并将ECS查询响应发送至应用程序。
106,应用程序根据ECS查询响应,从服务节点中选取最优服务节点,由最优服务节点为用户提供视频播放资源。
目前这种查询服务显然已不再适应分布式应用的发展,本发明实施例即是为此而提出,提供一种新的服务节点选取方案。下面对本发明实施例用于选取服务节点的方案进行解释说明。
本发明实施例用于选取服务节点的方法中,应用引擎可以集成在一台独立的设备内;或者,应用引擎也可以集成在ALTO客户端、ALTO服务器或承载应用程序的其它设备内;或者,还可将应用引擎的功能拆分到多台设备上,即,应用引擎集成在所述多台设备内。本发明实施例对应用引擎的集成方式可不做具体限定。
参见图2,示出了本发明实施例用于选取服务节点的方法实施例1的流程图,可包括:
201,应用引擎从应用层流量优化ALTO服务器获得至少两个服务节点的开销集合,所述开销集合包括每个服务节点对应于至少两种开销度量的取值。
202,所述应用引擎获得权重集合,所述权重集合包括所述至少两种开销度量中每种开销度量的权重值。
203,所述应用引擎利用所述开销集合和所述权重集合,计算每个服务节点的综合开销,所述综合开销用于指示对所述至少两个服务节点进行排序,并从所述至少两个服务节点中选取最优服务节点。
在需要综合多开销度量进行服务节点选取时,应用引擎获得如下两方面信息:
(1)获得开销集合。
开销集合中包括至少两个服务节点对应于至少两种开销度量的取值。举例来说,以N表示服务节点的个数,以M表示开销度量的个数,N和M为正整数,N≥2,M≥2。举例来说,N=4,M=3,则开销集合中包括的就是4个服务节点对应于3种开销度量的取值。若3种开销度量分别为带宽、时延和丢包率,各服务节点对应于3种开销度量的具体取值可参见下表1。
举例来说,应用引擎至少可通过以下方式从ALTO服务器获得开销集合:应用引擎可接收ALTO服务器发送的查询响应,获得查询响应中包括的开销集合,具体可参见下文图6、图7、图9和图11处所做介绍,此处暂不详述。或者,应用引擎可从ALTO服务器读取获得开销集合,具体可参见下文图8和图12处所做介绍,此处暂不详述。具体地,本发明实施例对应用引擎获得开销集合的方式可不做具体限定。
(2)获得权重集合。
权重集合包括M种开销度量中每种开销度量的权重值Wj。仍以上文所举M=3的示例为例,每种开销度量对应的权重值可以为:W1=0.5,W2=0.25,W3=0.25。
举例来说,应用引擎至少可通过以下方式获得权重集合:应用引擎结合用户的业务需求设置各开销度量的权重值,获得权重集合;或者,应用引擎接收应用程序或ALTO服务器或ALTO客户端发送的权重集合。具体地,本发明实施例对应用引擎获得权重集合的方式可不做具体限定。通常,M种开销度量的权重值之和为1。
可选地,应用引擎可以按照图2所示,先获得开销集合,再获得权重集合;或者,应用引擎也可先获得权重集合,再获得开销集合;再者,应用引擎还可同时获得开销集合和权重集合,本发明实施例对应用引擎获得所述两方面信息的顺序可不做具体限定。
应用引擎获得上述两方面信息后,可计算每个服务节点的综合开销,进而确定出N个服务节点的排序,并指示应用程序选取最优服务节点。
举例来说,应用引擎计算服务器综合开销的方式,可以为:应用引擎对Cij进行归一化处理,获得归一化值C′ij,Cij为第i个服务节点对应于第j种开销度量的取值,i=1,2,…,N,j=1,2,…,M,N为服务节点的个数,M为开销度量的个数,N和M为正整数,N≥2,M≥2;应用引擎利用C′ij和Wj,计算第i个服务节点的综合开销Ci=C′i1*W1+C′i2*W2+…+C′ij*Wj+…+C′iM*WM,Wj为第j种开销度量的权重值。
对N个服务节点排序时,需要计算各服务节点的综合开销,下面以计算表1中i=1的服务节点的综合开销为例,对本发明实施例中计算综合开销的过程进行解释说明。
(1)应用引擎对i=1的服务节点针对各开销度量的取值进行归一化处理。
本发明实施例中,应用引擎可以采用线性归一化方法或者非线性归一化方法,对服务节点针对各开销度量的取值进行归一化处理。下面以线性归一化方法为例,对本发明实施例中的归一化处理过程进行解释说明。
对于带宽来说,带宽越大,服务节点的性能就越好,即,开销度量的取值与网络性能成正比关系,可利用公式C′ij=(Cij-Cminj)/(Cmaxj-Cminj)进行归一化处理。举例来说,对于Cminj和Cmaxj来说,可以是应用引擎根据各服务节点针对第j种开销度量的取值确定出的,即,Cminj=min{C1j,C2j,…,Cij,…,CNj},Cmaxj=max{C1j,C2j,…,Cij,…,CNj};或者,也可以是应用引擎根据用户的业务需求确定出的,本发明实施例对此可不做具体限定。
若应用引擎根据各服务节点的取值确定Cminj和Cmaxj,结合表1所举示例,对于带宽来说,Cmin1=C41=1.5Mbps,Cmax1=C21=3Mbps。基于此,i=1的服务节点对应于带宽的归一化值C′11=(C11-C41)/(C21-C41)=(2-1.5)/(3-1.5)=1/3。
对于时延和丢包率来说,时延越小,服务节点的性能就越好,同样地,丢包率越小,服务节点的性能就越好,即,开销度量的取值与网络性能成反比关系,可利用公式C′ij=1-(Cij-Cminj/Cmaxj-Cminj)进行归一化处理。Cminj和Cmaxj的取值,可参见上文所做介绍,此处不再赘述。
若应用引擎根据各服务节点的取值确定Cminj和Cmaxj,结合表1所举示例,对于时延来说,Cmin2=C12=1s,Cmax2=C42=2.5s。基于此,i=1的服务节点对应于时延的归一化值C′12=1-(C12-C12)/(C42-C12)=1-(1-1)/(2.5-1)=1。对于丢包率来说,Cmin3=C23=0.5%,Cmax3=C43=1.5%。基于此,i=1的服务节点对应于丢包率的归一化值C′13=1-(C13-C23)/(C43-C23)=1-(0.8-0.5)/(1.5-0.5)=7/10。
可选地,应用引擎还可通过非线性归一化方法,对服务节点针对各开销度量的取值进行归一化处理。举例来说,非线性归一化方法至少可体现为以下三种中的一种:
(1)如果开销度量的取值与网络性能成正比关系,可利用公式C′ij=log10(Cij)进行归一化处理;如果开销度量的取值与网络性能成反比关系,可利用公式C′ij=-log10(Cij)进行归一化处理。
(2)如果开销度量的取值与网络性能成正比关系,可利用公式C′ij=lg(Cij)进行归一化处理;如果开销度量的取值与网络性能成反比关系,可利用公式C′ij=-lg(Cij)进行归一化处理。
(3)如果开销度量的取值与网络性能成正比关系,可利用公式C′ij=arctan(Cij)*(2/π)进行归一化处理;如果开销度量的取值与网络性能成反比关系,可利用公式C′ij=1-arctan(Cij)*(2/π)进行归一化处理。
本发明实施例对应用引擎进行归一化处理的方式可不做具体限定。
(2)应用引擎计算i=1的服务节点的综合开销。
结合上文所举示例,i=1的服务节点的综合开销为:
C1=C′11*W1+C′12*W2+C′13*W3=1/3*0.5+1*0.25+7/10*0.25=0.59
同样地,按照上文介绍的计算综合开销的过程,应用引擎还可计算获得i=2的服务节点的综合开销为C2=0.83,i=3的服务节点的综合开销为C3=0.46,i=4的服务节点的综合开销为C4=0。如此,应用引擎便可确定出4个服务节点的排序。
可选地,应用引擎可向应用程序返回各服务节点的综合开销值,由应用程序根据所述综合开销值选取最优服务节点;或者,应用引擎可以向应用程序返回服务节点的排序;或者,应用引擎可以利用综合开销或排序选取最优服务节点,并向应用程序返回最优服务节点的标识。本发明实施例对此可不做具体限定。
综上,本发明实施例的应用引擎即可基于多种开销度量,计算各服务节点的综合开销,为选取最优服务节点提供一定的技术支持。本发明实施例综合多种开销度量选取最优服务节点,还有助于提高应用程序为用户提供业务的质量。
参见图3,示出了本发明实施例用于选取服务节点的方法实施例2的流程图,可包括:
301,所述应用引擎获得应用程序发送的ALTO服务请求,所述ALTO服务请求包括所述至少两种开销度量的标识和/或业务的质量要求,所述业务的质量要求用于表示所述业务的关键质量指标(英文:KeyQualityIndicators,简称:KQI);所述ALTO服务请求还包括所述至少两个服务节点的标识。
在需要综合多开销度量进行服务节点选取时,应用引擎还可从应用程序获得ALTO服务请求,并利用ALTO服务请求生成ALTO查询请求,向ALTO服务器发送ALTO查询请求。
举例来说,ALTO服务请求可以包括至少两个服务节点的标识和至少两种开销度量的标识。或者,ALTO服务请求可以包括至少两个服务节点的标识和业务的质量要求。或者,ALTO服务请求可以包括至少两个服务节点的标识、至少两种开销度量的标识和业务的质量要求。
举例来说,针对ALTO服务请求包括至少两个服务节点的标识、至少两种开销度量的标识和业务的质量要求,具体可包括:
(1)所述至少两个服务节点中的部分服务节点,对应于所述至少两种开销度量的标识;且所述至少两个服务节点中的剩余部分服务节点,对应于所述业务的质量要求。举例来说,以上文所举N=4的示例为例,ALTO服务请求中,i=1的服务节点、i=2的服务节点和i=3的服务节点对应于至少两种开销度量,i=4的服务节点对应于业务的质量要求。
(2)所述至少两个服务节点中的每个服务节点,同时对应于所述至少两种开销度量的标识和所述业务的质量要求,如此,应用引擎便可利用所述至少两种开销度量的标识和所述业务的质量要求,相互进行校验。具体地,应用引擎可以将业务的质量要求转换为至少两种开销度量,并与ALTO服务请求中的至少两种开销度量相比较,实现相互校验的目的。关于将业务的质量要求转换为至少两种开销度量的方式,此处暂不详述,具体可参见下文所做介绍。
举例来说,本发明实施例中,业务的质量要求可以为第一质量要求,可包括:节点的类型和业务的关键参数。以上文所举观看视频的业务需求为例,业务的关键参数至少可包括:缓冲时间、卡顿次数和分辨率等。可结合具体业务来确定业务的关键参数,本发明实施例对此可不做具体限定。
或者,举例来说,业务的质量要求可以为第二质量要求,可包括:业务的类型和业务的名称。以上文所举观看视频的业务需求为例,业务的类型至少可包括:直播和点播等;业务的名称至少可包括:跃顶(英文:OverTheTop,简称:OTT)和网络协定电视(英文:InternetProtocolTelevision,简称:IPTV)等。可结合具体业务来确定业务的类型和业务的名称,本发明实施例对此可不做具体限定。
或者,举例来说,业务的质量要求可以包括:节点的类型、业务的关键参数、业务的类型和业务的名称。本发明实施例对质量要求的具体内容可不做具体限定。
可选地,相应于所述ALTO服务请求包括所述业务的质量要求,所述应用引擎还可将所述业务的质量要求转换为所述至少两种开销度量。举例来说,应用引擎可通过以下方式将业务的质量要求转换为至少两种开销度量:所述应用引擎查询预置数据库,所述预置数据库保存有所述业务的质量要求与所述至少两种开销度量之间的映射关系;所述应用引擎利用所述映射关系,将所述业务的质量要求转换为对应的所述至少两种开销度量。
举例来说,至少可通过经验数据、统计数据或者相关标准规定中的至少一种方式,确定业务的质量要求与至少两种开销度量之间的映射关系,本发明实施例对此可不做具体限定。
302,所述应用引擎向所述ALTO服务器发送ALTO查询请求,所述ALTO查询请求包括所述至少两种开销度量和所述至少两个服务节点的标识。
应用引擎获得至少两个服务节点的标识和至少两种开销度量的标识后,可向ALTO服务器发送ALTO查询请求。举例来说,应用引擎向ALTO服务器发送ALTO查询请求可以包括:应用引擎可以利用至少两个服务节点的标识和至少两种开销度量的标识生成ALTO查询请求,并发送至ALTO服务器。具体可参见下文图12处所做介绍,此处暂不详述。或者,应用引擎可以调用ALTO客户端,使ALTO客户端利用至少两个服务节点的标识和至少两种开销度量的标识生成ALTO查询请求,并发送至ALTO服务器。具体可参见下文图6、图7、图8、图9和图11处所做介绍,此处暂不详述。
303,所述应用引擎从应用层流量优化ALTO服务器获得至少两个服务节点的开销集合,所述开销集合包括每个服务节点对应于至少两种开销度量的取值。
304,所述应用引擎获得权重集合,所述权重集合包括所述至少两种开销度量中每种开销度量的权重值。
305,所述应用引擎利用所述开销集合和所述权重集合,计算每个服务节点的综合开销,所述综合开销用于指示对所述至少两个服务节点进行排序,并从所述至少两个服务节点中选取最优服务节点。
本实施例中303~305的实现方式,可参见上文图2中201~203处所做介绍,此处不再赘述。
可选地,基于图2、图3所示方案,本发明实施例中的应用引擎还可在计算所述至少两个服务节点中每个服务节点的综合开销之前,对所述至少两个服务节点进行预处理,剔除所述至少两个服务节点中不满足要求的服务节点,获得剩余服务节点集合。进而再利用开销集合和权重集合,计算所述剩余服务节点集合中每个服务节点的综合开销。关于预处理的过程,可参考下文图4、图5所示实施例,此处暂不详述。
参见图4,示出了本发明实施例用于选取服务节点的方法实施例3的流程图,可包括:
401,所述应用引擎从应用层流量优化ALTO服务器获得至少两个服务节点的开销集合,所述开销集合包括每个服务节点对应于至少两种开销度量的取值。
402,所述应用引擎获得权重集合,所述权重集合包括所述至少两种开销度量中每种开销度量的权重值。
本实施例中401、402的实现方式,可参见上文图2中201、202处所做介绍,此处不再赘述。
403,所述应用引擎获得所述至少两种开销度量中每种开销度量的要求值。
以上文所举示例为例,应用引擎获得的至少两种开销度量的要求值可以为:带宽的要求值为2Mbps、时延的要求值为2s、丢包率的要求值为1%。本发明实施例中,开销度量的要求值可以理解为,满足用户的业务需求时,各项开销度量对应的值。
本实施例中,应用引擎至少可通过以下方式获得所述至少两种开销度量的要求值:
方式一,应用引擎直接获得所述至少两种开销度量的要求值。举例来说,所述至少两种开销度量的要求值,可以来自于应用程序,或者来自于ALTO客户端、ALTO服务器,本发明实施例对此可不做具体限定,只要能向应用引擎提供要求值即可。
方式二,应用引擎查询数据库获得所述至少两种开销度量的要求值。所述数据库可以为图3所示实施例中的预置数据库,即,预置数据库中保存的是业务的质量要求、至少两种开销度量、每种开销度量的要求值三者之间的映射关系,应用引擎进行业务的质量要求转换时,可获得至少两种开销度量的要求值。或者,所述数据库可以为一个独立的数据库,即,所述数据库保存有开销度量的要求值,应用引擎可查询所述数据库,获得至少两种开销度量的要求值。
404,所述应用引擎确定每个服务节点对应于所述至少两种开销度量的取值是否符合所述要求值的要求。
405,如果存在不符合所述要求值的要求的服务节点,所述应用引擎从所述至少两个服务节点中剔除所述不符合所述要求值的要求的服务节点,获得剩余服务节点集合。
406,所述应用引擎利用所述开销集合和所述权重集合,计算所述剩余服务节点集合中每个服务节点的综合开销,所述综合开销用于指示对所述至少两个服务节点进行排序,并从所述至少两个服务节点中选取最优服务节点。
本实施例中,应用引擎计算服务节点的综合开销之前,可先对所述至少两个服务节点进行预处理。
举例来说,预处理可以为:利用开销查询获得的Cij进行预处理,即,从所述至少两个服务节点中剔除取值不满足要求值的服务节点。举例来说,取值不满足要求值可以为:带宽低于2Mbps、时延大于2s、丢包率大于1%,结合表1所举示例,预处理过程中,可剔除i=4的服务节点,对应地,剩余服务节点集合包括i=1,2,3共计3个服务节点。
通常,ALTO服务器为ALTO客户端提供的查询服务中,未考虑各种查询服务之间的关联关系。对应于此,本发明实施例提供了用于选取服务节点的方法实施例4,参见图5,可包括:
501,所述应用引擎从应用层流量优化ALTO服务器获得至少两个服务节点的开销集合,所述开销集合包括每个服务节点对应于至少两种开销度量的取值。
502,所述应用引擎获得权重集合,所述权重集合包括所述至少两种开销度量中每种开销度量的权重值。
本实施例中501、502的实现方式,可参见上文图2中201、202处所做介绍,此处不再赘述。
503,所述应用引擎从所述ALTO服务器获得所述至少两个服务节点中每个服务节点的节点属性。
举例来说,服务节点的节点属性至少可以包括节点的类型和节点的接入方式。举例来说,节点的类型可以为服务器(英文:server)、智能终端(英文:smartphone)、个人计算机(英文:personalcomputer,简称:PC)、手机(英文:mobile)、电视机(英文:television,简称:TV)等等,本发明实施例对节点的类型可不做具体限定。举例来说,节点的接入方式可以为光纤接入、带宽接入等等,本发明实施例对节点的接入方式可不做具体限定。
504,所述应用引擎根据所述节点属性,确定所述至少两个服务节点中是否存在不能作为所述最优服务节点的服务节点。
505,如果存在不能作为所述最优服务节点的服务节点,所述应用引擎从所述至少两个服务节点中剔除所述不能作为所述最优服务节点的服务节点,获得剩余服务节点集合。
506,所述应用引擎利用所述开销集合和所述权重集合,计算所述剩余服务节点集合中每个服务节点的综合开销,所述综合开销用于指示对所述至少两个服务节点进行排序,并从所述至少两个服务节点中选取最优服务节点。
本实施例中,查询服务之间的关联关系主要指的是开销查询与属性查询之间的关联关系。开销查询至少可以为ECS,属性查询至少可以为EPS,本发明实施例对此可不做具体限定。
本实施例中,应用引擎计算服务节点的综合开销之前,可先对所述至少两个服务节点进行预处理。
举例来说,预处理可以为:利用属性查询获得的节点属性进行预处理,即,从至少两个服务节点中剔除属性不能作为最优服务节点的服务节点。如,表1所举示例中,i=1的服务节点的类型为server,i=2的服务节点的类型为server,i=3的服务节点的类型为PC,i=4的服务节点的类型为smartphone。仍以业务需求为观看视频为例,通常不会由smartphone作为视频播放资源提供者,因此,预处理过程中,可根据服务节点的属性剔除i=4的服务节点,对应地,剩余服务节点集合包括i=1,2,3共计3个服务节点。
基于上文实施例3和实施例4,本发明实施例还提供一种进行预处理的优选实施例。举例来说,在所述优选实施例中,预处理可以为:利用属性查询和开销查询进行预处理,即,剩余服务节点集合中包括的服务节点,在取值和属性两方面均满足要求。具体可参照上文针对预处理所做的介绍,此处不再举例说明。
由上述进行预处理的实施例可知,应用引擎可能会在预处理过程中,剔除部分不会被选取为最优服务节点的服务节点,有助于提高应用引擎计算综合开销的效率,为提高选取最优服务器的效率提供一定的技术支持。
结合应用引擎在网络中的存在形式,本发明实施例存在多种可实现方式,下面结合具体示例进行解释说明。
实现方式一
本实现方式中,应用引擎集成在ALTO客户端。可选地,应用程序可以集成在ALTO客户端,或者集成在可与ALTO客户端通信的其它设备,本实现方式中,以应用程序集成在ALTO客户端为例。
参见图6,示出了实现方式一的信令交互图,可包括:
601,应用程序被用户触发后,可向应用引擎发送ALTO服务请求,ALTO服务请求中可包括:M种开销度量的标识、N个服务节点的标识、权重集合和M种开销度量的要求值。另外,应用程序和应用引擎都集成在ALTO客户端,作为一种示例,应用程序被用户触发后,还可将ALTO服务请求写入指定内存,对应地,应用引擎从所述指定内存读取所述ALTO服务请求即可。本实现方式一对应用引擎获得ALTO服务请求的方式可不做具体限定。
602,应用引擎获得ALTO服务请求后,调用ALTO客户端,触发ALTO客户端生成ALTO查询请求,并通过相应端口向ALTO服务器发送所述ALTO查询请求。举例来说,ALTO查询请求可以为ECS查询请求和EPS查询请求。
603,ALTO服务器接收ALTO客户端发送的ALTO查询请求,获得N个服务节点的属性和N个服务节点对应M种开销度量的取值,并生成ALTO查询响应发送至ALTO客户端。
604,ALTO客户端接收ALTO服务器发送的ALTO查询响应,并转发至应用引擎。
605,应用引擎接收ALTO客户端转发的ALTO查询响应,并利用属性和要求值对N个服务节点进行预处理,剔除其中不满足要求的服务节点,获得剩余服务节点集合。
606,应用引擎计算剩余服务节点集合中各服务节点的综合开销,并确定各服务节点之间的开销排序。
607,应用引擎向应用程序反馈开销排序结果,应用程序根据开销排序结果,选择最优服务节点,由最优服务节点为用户提供服务。至此,利用本发明实施例方案实现了综合多种开销度量选取服务节点的目的。
实现方式二
本实现方式中,应用引擎集成在应用程序,作为应用程序的一个功能模块。可选地,集成有应用引擎的应用程序,可以集成在ALTO客户端,或者集成在可与ALTO客户端通信的其它设备,本实现方式中,以应用程序集成在所述其它设备为例。
参见图7,示出了实现方式二的信令交互图,可包括:
701,应用程序被用户触发后,可向应用引擎发送ALTO服务请求,ALTO服务请求中可包括:M种开销度量的标识、N个服务节点的标识、权重集合和M种开销度量的要求值。另外,应用程序和应用引擎都集成在所述其它设备,作为一种示例,应用程序被用户触发后,还可将ALTO服务请求写入指定内存,对应地,应用引擎从所述指定内存读取所述ALTO服务请求即可。本实现方式二对应用引擎获得ALTO服务请求的方式可不做具体限定。
702,应用引擎获得ALTO服务请求后,通过所述其它设备的相应端口访问ALTO客户端,触发ALTO客户端生成ALTO查询请求,并通过ALTO客户端的相应端口向ALTO服务器发送所述ALTO查询请求。举例来说,ALTO查询请求可以为ECS查询请求。
703,ALTO服务器接收ALTO客户端发送的ALTO查询请求,获得N个服务节点对应M种开销度量的取值,并生成ALTO查询响应发送至ALTO客户端。
704,ALTO客户端接收ALTO服务器发送的ALTO查询响应,并转发至所述其它设备,从而使应用引擎获得所述ALTO查询响应。
705,应用引擎获得ALTO查询响应后,利用取值对N个服务节点进行预处理,剔除其中不满足要求值的服务节点,获得剩余服务节点集合。
706,应用引擎计算剩余服务节点集合中各服务节点的综合开销,并确定各服务节点之间的开销排序。
707,应用引擎向应用程序反馈开销排序结果,应用程序根据开销排序结果,选择最优服务节点,由最优服务节点为用户提供服务。至此,利用本发明实施例方案实现了综合多种开销度量选取服务节点的目的。
实现方式三
本实现方式中,应用引擎集成在ALTO服务器。可选地,应用程序可以集成在ALTO客户端,或者集成在可与ALTO客户端通信的其它设备,本实现方式中,以应用程序集成在ALTO客户端为例。
参见图8,示出了实现方式三的信令交互图,可包括:
801,应用程序被用户触发后,可向ALTO客户端发送ALTO服务请求,ALTO服务请求中可包括:M种开销度量的标识、N个服务节点的标识、权重集合和M种开销度量的要求值。
802,ALTO客户端接收到应用程序发送的ALTO服务请求后,生成ALTO查询请求,并通过相应端口向ALTO服务器发送所述ALTO查询请求。举例来说,ALTO查询请求可以为终端间综合开销查询服务(英文:EndpointSyntheticalCostService,简称:ESCS)查询请求。
803,ALTO服务器接收ALTO客户端发送的ALTO查询请求,获得N个服务节点对应M种开销度量的取值,并调用应用引擎。
804,应用引擎从ALTO服务器本地读取所述N个服务节点对应M种开销度量的取值,并利用取值对N个服务节点进行预处理,剔除其中不满足要求值的服务节点,获得剩余服务节点集合。
805,应用引擎计算剩余服务节点集合中各服务节点的综合开销,确定各服务节点之间的开销排序,并调用ALTO服务器,触发ALTO服务器生成ALTO查询响应,通过ALTO查询响应将所述开销排序反馈至ALTO客户端。
806,ALTO客户端接收ALTO服务器发送的ALTO查询响应,并将ALTO查询响应转发至应用程序,由应用程序根据开销排序结果,选择最优服务节点,进而由最优服务节点为用户提供服务。至此,利用本发明实施例方案实现了综合多种开销度量选取服务节点的目的。
举例来说,本实现方式中,ALTO查询请求可以为:
POST/endpointsyntheticacost/lookupHTTP/1.1
Host:alto.example.com
Content-Length:248
Content-Type:application/alto-endpointsyntheticalcostparams+json
Accept:application/alto-endpointsyntheticalcost+json,application/alto-error+json
{
"cost-type":{"cost-mode":"ordinal",
"cost-metric":[“bandwidth”,“delay”,“pktloss”]},
“cost-weight”:[0.5,0.25,0.25]
"properties":["my-default-networkmap.pid","priv:ietf-example-prop"],
"endpoints":{
"srcs":["ipv4:192.0.2.2"],
"dsts":[
"ipv4:192.0.2.89",
"ipv4:198.51.100.34",
"ipv4:203.0.113.45"
"ipv4:202.0.110.25"
]
}
}
举例来说,本实现方式中,ALTO查询响应可以为:
HTTP/1.1200OK
Content-Length:274
Content-Type:application/alto-endpointsyntheticalcost+json
{
"meta":{
"cost-type":{"cost-mode":"ordinal",
"cost-metric":[“bandwidth”,“delay”,“pktloss”]},
}
},
"endpoint-syntheticalcost-map":{
"ipv4:192.0.2.2":{
"ipv4:192.0.2.89":1,
"ipv4:198.51.100.34":2,
"ipv4:203.0.113.45":3
}
}
}
实现方式四
本实现方式中,应用引擎集成在ALTO客户端。可选地,应用程序可以集成在ALTO客户端,或者集成在可与ALTO客户端通信的其它设备,本实现方式中,以应用程序集成在ALTO客户端为例。
参见图9,示出了实现方式四的信令交互图,可包括:
901,应用程序被用户触发后,可向应用引擎发送ALTO服务请求,ALTO服务请求中可包括:业务的质量要求、N个服务节点的标识和权重集合。另外,应用程序和应用引擎都集成在ALTO客户端,作为一种示例,应用程序被用户触发后,还可将ALTO服务请求写入指定内存,对应地,应用引擎从所述指定内存读取所述ALTO服务请求即可。本实现方式四对应用引擎获得ALTO服务请求的方式可不做具体限定。
举例来说,ALTO服务请求中的质量要求包括如下信息:节点的类型为PC,业务的类型为直播,业务的名称为OTT,业务的关键参数为标清。
902,应用引擎获得ALTO服务请求后,利用预置数据库,将业务的质量要求转换为M种开销度量的要求值。参见图10所示预置数据库,应用引擎利用业务的质量要求可转换获得:带宽、时延和丢包率共计3种开销度量,且带宽的要求值为4Mbps、时延的要求值为1s、丢包率的要求值为0.5%。
903,应用引擎调用ALTO客户端,触发ALTO客户端生成ALTO查询请求,并通过相应端口向ALTO服务器发送所述ALTO查询请求。举例来说,ALTO查询请求可以为ECS查询请求和EPS查询请求。
904,ALTO服务器接收ALTO客户端发送的ALTO查询请求,获得N个服务节点的属性和N个服务节点对应M种开销度量的取值,并生成ALTO查询响应发送至ALTO客户端。
905,ALTO客户端接收ALTO服务器发送的ALTO查询响应,并转发至应用引擎。
906,应用引擎接收ALTO客户端转发的ALTO查询响应,并利用属性和取值对N个服务节点进行预处理,剔除其中不满足要求的服务节点,获得剩余服务节点集合。
907,应用引擎计算剩余服务节点集合中各服务节点的综合开销,并确定各服务节点之间的开销排序。
908,应用引擎向应用程序反馈开销排序结果,应用程序根据开销排序结果,选择最优服务节点,由最优服务节点为用户提供服务。至此,利用本发明实施例方案实现了综合多种开销度量选取服务节点的目的。
实现方式五
本实现方式中,应用引擎集成在应用程序,作为应用程序的一个功能模块。可选地,集成有应用引擎的应用程序,可以集成在ALTO客户端,或者集成在可与ALTO客户端通信的其它设备,本实现方式中,以集成在所述其它设备为例。
参见图11,示出了实现方式五的信令交互图,可包括:
1001,应用程序被用户触发后,可向应用引擎发送ALTO服务请求,ALTO服务请求中可包括:业务的质量要求、N个服务节点的标识和权重集合。另外,应用程序和应用引擎都集成在所述其它设备,作为一种示例,应用程序被用户触发后,还可将ALTO服务请求写入指定内存,对应地,应用引擎从所述指定内存读取所述ALTO服务请求即可。本实现方式五对应用引擎获得ALTO服务请求的方式可不做具体限定。
1002,应用引擎获得ALTO服务请求后,利用预置数据库,将业务的质量要求转换为M种开销度量的要求值。
1003,应用引擎通过所述其它设备的相应端口访问ALTO客户端,触发ALTO客户端生成ALTO查询请求,并通过ALTO客户端的相应端口向ALTO服务器发送所述ALTO查询请求。举例来说,ALTO查询请求可以为ECS查询请求。
1004,ALTO服务器接收ALTO客户端发送的ALTO查询请求,获得N个服务节点对应M种开销度量的取值,并生成ALTO查询响应发送至ALTO客户端。
1005,ALTO客户端接收ALTO服务器发送的ALTO查询响应,并转发至所述其它设备,从而使应用引擎获得所述ALTO查询响应。
1006,应用引擎获得ALTO查询响应后,利用取值对N个服务节点进行预处理,剔除其中不满足要求值的服务节点,获得剩余服务节点集合。
1007,应用引擎计算剩余服务节点集合中各服务节点的综合开销,并确定各服务节点之间的开销排序。
1008,应用引擎向应用程序反馈开销排序结果,应用程序根据开销排序结果,选择最优服务节点,由最优服务节点为用户提供服务。至此,利用本发明实施例方案实现了综合多种开销度量选取服务节点的目的。
实现方式六
本实现方式中,应用引擎集成在ALTO服务器。可选地,应用程序可以集成在ALTO客户端,或者集成在可与ALTO客户端通信的其它设备,本实现方式中,以应用程序集成在ALTO客户端为例。
参见图12,示出了实现方式六的信令交互图,可包括:
1101,应用程序被用户触发后,可向ALTO客户端发送ALTO服务请求,ALTO服务请求中可包括:业务的质量要求、N个服务节点的标识和权重集合。
1102,ALTO客户端接收到应用程序发送的ALTO服务请求,并转发至ALTO服务器,从而使应用引擎获得ALTO服务请求。
1103,应用引擎获得ALTO服务请求后,利用预置数据库,将业务的质量要求转换为M种开销度量的要求值,并生成ALTO查询请求,触发ALTO服务器获得N个服务节点对应M种开销度量的取值。举例来说,ALTO查询请求可以为ESCS查询请求。
1104,ALTO服务器获得N个服务节点对应M种开销度量的取值,调用应用引擎,应用引擎从ALTO服务器本地读取所述N个服务节点对应M种开销度量的取值,并利用取值对N个服务节点进行预处理,剔除其中不满足要求值的服务节点,获得剩余服务节点集合。
1105,应用引擎计算剩余服务节点集合中各服务节点的综合开销,确定各服务节点之间的开销排序,并触发ALTO服务器生成ALTO查询响应,通过ALTO查询响应将所述开销排序反馈至ALTO客户端。
1106,ALTO客户端接收ALTO服务器发送的ALTO查询响应,并将ALTO查询响应转发至应用程序,由应用程序根据开销排序结果,选择最优服务节点,进而由最优服务节点为用户提供服务。至此,利用本发明实施例方案实现了综合多种开销度量选取服务节点的目的。
与图2所示方法相对应地,本发明实施例还提供了一种应用引擎,参见图13所示示意图,所述应用引擎可包括:
开销集合获得单元1201,用于从应用层流量优化ALTO服务器获得至少两个服务节点的开销集合,所述开销集合包括每个服务节点对应于至少两种开销度量的取值;
权重集合获得单元1202,用于获得权重集合,所述权重集合包括所述至少两种开销度量中每种开销度量的权重值;
综合开销计算单元1203,用于利用所述开销集合和所述权重集合,计算每个服务节点的综合开销,所述综合开销用于指示对所述至少两个服务节点进行排序,并从所述至少两个服务节点中选取最优服务节点。
综上,本发明实施例提供的用于选取服务节点的应用引擎,即可基于多种开销度量,计算各服务节点的综合开销,为选取最优服务节点提供一定的技术支持。本发明实施例综合多种开销度量选取最优服务节点,还有助于提高应用程序为用户提供业务的质量。
可选地,所述综合开销计算单元包括:
归一化单元,用于对Cij进行归一化处理,获得归一化值C′ij,所述Cij为第i个服务节点对应于第j种开销度量的取值,i=1,2,…,N,j=1,2,…,M,N为所述服务节点的个数,M为所述开销度量的个数,N和M为正整数,N≥2,M≥2;
综合开销计算子单元,用于利用所述C′ij和Wj,计算所述第i个服务节点的综合开销Ci=C′i1*W1+C′12*W2+…+C′ij*Wj+…+C′iM*WM,所述Wj为第j种开销度量的权重值。
可选地,所述应用引擎集成在ALTO客户端或集成在应用程序,则所述开销集合获得单元,具体用于接收所述ALTO服务器发送的查询响应,所述查询响应中包括所述开销集合;或者,
所述应用引擎集成在所述ALTO服务器,则所述开销集合获得单元,具体用于从所述ALTO服务器读取所述开销集合。
可选地,所述应用引擎还包括:
ALTO服务请求获得单元,用于在所述开销集合获得单元获得所述开销集合之前,获得应用程序发送的ALTO服务请求,所述ALTO服务请求包括所述至少两种开销度量的标识和/或业务的质量要求,所述业务的质量要求用于表示所述业务的关键质量指标;所述ALTO服务请求还包括所述至少两个服务节点的标识;
相应于所述ALTO服务请求包括所述业务的质量要求,所述应用引擎还包括:转换单元,用于将所述业务的质量要求转换为所述至少两种开销度量;
ALTO查询请求发送单元,用于向所述ALTO服务器发送ALTO查询请求,所述ALTO查询请求包括所述至少两种开销度量的标识和所述至少两个服务节点的标识。
可选地,所述转换单元包括:
查询单元,用于查询预置数据库,所述预置数据库保存有所述业务的质量要求与所述至少两种开销度量之间的映射关系;
转换子单元,用于利用所述映射关系,将所述业务的质量要求转换为对应的所述至少两种开销度量。
可选地,所述业务的质量要求包括第一质量要求和/或第二质量要求;
所述第一质量要求包括节点的类型和业务的关键参数,所述第二质量要求包括业务的类型和业务的名称。
可选地,所述应用引擎还包括:
预处理单元,用于在所述综合开销计算单元计算所述综合开销之前,进行预处理,剔除所述至少两个服务节点中不满足要求的服务节点,获得剩余服务节点集合;
所述综合开销计算单元,具体用于利用所述开销集合和所述权重集合,计算所述剩余服务节点集合中每个服务节点的综合开销。
可选地,所述预处理单元包括:
要求值获得单元,用于在所述综合开销计算单元计算所述综合开销之前,获得所述至少两种开销度量中每种开销度量的要求值;
第一确定单元,用于确定每个服务节点对应于所述至少两种开销度量的取值是否符合所述要求值的要求;
第一剔除单元,用于在所述第一确定单元确定存在不符合所述要求值的要求的服务节点时,从所述至少两个服务节点中剔除所述不符合所述要求值的要求的服务节点,获得所述剩余服务节点集合。
可选地,所述预处理单元还包括:
节点属性获得单元,用于在所述第一确定单元确定每个服务器均符合所述要求值的要求时,从所述ALTO服务器获得所述至少两个服务节点中每个服务节点的节点属性;
第二确定单元,用于根据所述节点属性获得单元获得的所述节点属性,确定所述至少两个服务节点中是否存在不能作为所述最优服务节点的服务节点;
第二剔除单元,用于在所述第二确定单元确定存在不能作为所述最优服务节点的服务节点时,从所述至少两个服务节点中剔除所述不能作为所述最优服务节点的服务节点,获得所述剩余服务节点集合。
在上述可选方案中,本发明实施例应用引擎可以实现的附加功能,请参照方法实施例中对应用引擎附加功能的描述,这里不再赘述。
另外,上述实施例提供的应用引擎在计算服务节点的综合开销时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
与图2所示方法相对应地,本发明实施例还提供了一种用于选取服务节点的装置,所述装置包括图13所示的应用引擎。
与图2所示方法相对应地,本发明实施例还提供了一种用于选取服务节点的设备1300,参见图14所示示意图,所述设备可包括:处理器1301、存储器1302、网络接口1303、总线系统1304。
所述总线系统1304,用于连接上述处理器1301、存储器1302和网络接口1303。
所述网络接口1303,用于实现设备与其它网络设备之间的通信连接。所述网络接口1303可以由光收发器,电收发器,无线收发器或其任意组合实现。例如,光收发器可以是小封装可插拔(英文:smallform-factorpluggabletransceiver,缩写:SFP)收发器(英文:transceiver),增强小封装可插拔(英文:enhancedsmallform-factorpluggable,缩写:SFP+)收发器或10吉比特小封装可插拔(英文:10Gigabitsmallform-factorpluggable,缩写:XFP)收发器。电收发器可以是以太网(英文:Ethernet)网络接口控制器(英文:networkinterfacecontroller,缩写:NIC)。无线收发器可以是无线网络接口控制器(英文:wirelessnetworkinterfacecontroller,缩写:WNIC)。
所述存储器1302,用于存储程序指令和数据。所述存储器1302可以包括易失性存储器(英文:volatilememory),例如随机存取存储器(英文:random-accessmemory,缩写:RAM);存储器也可以包括非易失性存储器(英文:non-volatilememory),例如快闪存储器(英文:flashmemory),硬盘(英文:harddiskdrive,缩写:HDD)或固态硬盘(英文:solid-statedrive,缩写:SSD);存储器还可以包括上述种类的存储器的组合。
所述处理器1301是中央处理器(英文:centralprocessingunit,缩写:CPU),也可以是CPU和硬件芯片的组合。上述硬件芯片可以是以下一种或多种的组合:专用集成电路(英文:application-specificintegratedcircuit,缩写:ASIC),现场可编程逻辑门阵列(英文:field-programmablegatearray,缩写:FPGA),复杂可编程逻辑器件(英文:complexprogrammablelogicdevice,缩写:CPLD)以及网络处理器(英文:networkprocessor,缩写:NP)。所述处理器1301,用于读取所述存储器1302中存储的程序指令和数据,执行以下操作:
从应用层流量优化ALTO服务器获得至少两个服务节点的开销集合,所述开销集合包括每个服务节点对应于至少两种开销度量的取值;
获得权重集合,所述权重集合包括所述至少两种开销度量中每种开销度量的权重值;
利用所述开销集合和所述权重集合,计算每个服务节点的综合开销,所述综合开销用于指示对所述至少两个服务节点进行排序,并从所述至少两个服务节点中选取最优服务节点。
综上,本发明实施例提供的用于选取服务节点的设备,即可基于多种开销度量,计算各服务节点的综合开销,为选取最优服务节点提供一定的技术支持。本发明实施例综合多种开销度量选取最优服务节点,还有助于提高应用程序为用户提供业务的质量。
可选地,所述处理器利用所述开销集合和所述权重集合,计算每个服务节点的综合开销包括:
所述处理器对Cij进行归一化处理,获得归一化值C′ij,所述Cij为第i个服务节点对应于第j种开销度量的取值,i=1,2,…,N,j=1,2,…,M,N为所述服务节点的个数,M为所述开销度量的个数,N和M为正整数,N≥2,M≥2;
所述处理器利用所述C′ij和Wj,计算所述第i个服务节点的综合开销Ci=C′i1*W1+C′i2*W2+…+C′ij*Wj+…+C′iM*WM,所述Wj为第j种开销度量的权重值。
可选地,所述处理器从ALTO服务器获得至少两个服务节点的开销集合之前,所述处理器还可执行以下操作:
所述处理器获得应用程序发送的ALTO服务请求,所述ALTO服务请求包括所述至少两种开销度量的标识和/或业务的质量要求,所述业务的质量要求用于表示所述业务的关键质量指标;所述ALTO服务请求还包括所述至少两个服务节点的标识;
相应于所述ALTO服务请求包括所述业务的质量要求,所述处理器还可执行以下操作:所述处理器将所述业务的质量要求转换为所述至少两种开销度量;
所述处理器向所述ALTO服务器发送ALTO查询请求,所述ALTO查询请求包括所述至少两种开销度量的标识和所述至少两个服务节点的标识。
可选地,所述处理器将所述业务的质量要求转换为所述至少两种开销度量包括:
所述处理器查询预置数据库,所述预置数据库保存有所述业务的质量要求与所述至少两种开销度量之间的映射关系;
所述处理器利用所述映射关系,将所述业务的质量要求转换为对应的所述至少两种开销度量。
可选地,所述业务的质量要求包括第一质量要求和/或第二质量要求;所述第一质量要求包括节点的类型和业务的关键参数,所述第二质量要求包括业务的类型和业务的名称。
可选地,所述处理器利用所述开销集合和所述权重集合,计算每个服务节点的综合开销之前,所述处理器还可执行以下操作:
所述处理器进行预处理,剔除所述至少两个服务节点中不满足要求的服务节点,获得剩余服务节点集合;
所述处理器利用所述开销集合和所述权重集合,计算每个服务节点的综合开销包括:
所述处理器利用所述开销集合和所述权重集合,计算所述剩余服务节点集合中每个服务节点的综合开销。
可选地,所述处理器进行预处理,剔除所述至少两个服务节点中不满足要求的服务节点,获得剩余服务节点集合包括:
所述处理器获得所述至少两种开销度量中每种开销度量的要求值;
所述处理器确定每个服务节点对应于所述至少两种开销度量的取值是否符合所述要求值的要求;
如果存在不符合所述要求值的要求的服务节点,所述处理器从所述至少两个服务节点中剔除所述不符合所述要求值的要求的服务节点,获得所述剩余服务节点集合。
可选地,如果每个服务器均符合所述要求值的要求,所述处理器还可执行以下操作:
所述处理器从所述ALTO服务器获得所述至少两个服务节点中每个服务节点的节点属性;
所述处理器根据所述节点属性,确定所述至少两个服务节点中是否存在不能作为所述最优服务节点的服务节点;
如果存在不能作为所述最优服务节点的服务节点,所述处理器从所述至少两个服务节点中剔除所述不能作为所述最优服务节点的服务节点,获得所述剩余服务节点集合。
图14所示的用于选取服务节点的设备的实现细节,请参考前面附图2所示的方法实施例中的描述,此处不再赘述。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到上述实施例方法中的全部或部分步骤可借助软件加通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如只读存储器(英文:read-onlymemory,简称:ROM)、RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者诸如媒体网关等网络通信设备)执行本发明各个实施例或者实施例的某些部分所述的方法。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置及设备实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置及设备实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅是本发明的可选实施方式,并非用于限定本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (19)
1.一种用于选取服务节点的方法,其特征在于,所述方法包括:
应用引擎从应用层流量优化ALTO服务器获得至少两个服务节点的开销集合,所述开销集合包括每个服务节点对应于至少两种开销度量的取值;
所述应用引擎获得权重集合,所述权重集合包括所述至少两种开销度量中每种开销度量的权重值;
所述应用引擎利用所述开销集合和所述权重集合,计算每个服务节点的综合开销,所述综合开销用于指示对所述至少两个服务节点进行排序,并从所述至少两个服务节点中选取最优服务节点。
2.根据权利要求1所述的方法,其特征在于,所述应用引擎利用所述开销集合和所述权重集合,计算每个服务节点的综合开销包括:
所述应用引擎对Cij进行归一化处理,获得归一化值C′ij,所述Cij为第i个服务节点对应于第j种开销度量的取值,i=1,2,…,N,j=1,2,…,M,N为所述服务节点的个数,M为所述开销度量的个数,N和M为正整数,N≥2,M≥2;
所述应用引擎利用所述C′ij和Wj,计算所述第i个服务节点的综合开销Ci=C′i1*W1+C′i2*W2+…+C′ij*Wj+…+C′iM*WM,所述Wj为第j种开销度量的权重值。
3.根据权利要求1或2所述的方法,其特征在于,
所述应用引擎集成在ALTO客户端或集成在应用程序,则所述应用引擎从ALTO服务器获得至少两个服务节点的开销集合包括:所述应用引擎接收所述ALTO服务器发送的查询响应,所述查询响应中包括所述开销集合;
或者,
所述应用引擎集成在所述ALTO服务器,则所述应用引擎从ALTO服务器获得至少两个服务节点的开销集合包括:所述应用引擎从所述ALTO服务器读取所述开销集合。
4.根据权利要求1至3任一项所述的方法,其特征在于,所述应用引擎从ALTO服务器获得至少两个服务节点的开销集合之前,所述方法还包括:
所述应用引擎获得应用程序发送的ALTO服务请求,所述ALTO服务请求包括所述至少两种开销度量的标识和/或业务的质量要求,所述业务的质量要求用于表示所述业务的关键质量指标;所述ALTO服务请求还包括所述至少两个服务节点的标识;
相应于所述ALTO服务请求包括所述业务的质量要求,所述方法还包括:所述应用引擎将所述业务的质量要求转换为所述至少两种开销度量;
所述应用引擎向所述ALTO服务器发送ALTO查询请求,所述ALTO查询请求包括所述至少两种开销度量的标识和所述至少两个服务节点的标识。
5.根据权利要求4所述的方法,其特征在于,所述应用引擎将所述业务的质量要求转换为所述至少两种开销度量包括:
所述应用引擎查询预置数据库,所述预置数据库保存有所述业务的质量要求与所述至少两种开销度量之间的映射关系;
所述应用引擎利用所述映射关系,将所述业务的质量要求转换为对应的所述至少两种开销度量。
6.根据权利要求4或5所述的方法,其特征在于,所述业务的质量要求包括第一质量要求和/或第二质量要求;
所述第一质量要求包括节点的类型和业务的关键参数,所述第二质量要求包括业务的类型和业务的名称。
7.根据权利要求1至6任一项所述的方法,其特征在于,所述应用引擎利用所述开销集合和所述权重集合,计算每个服务节点的综合开销之前,所述方法还包括:
所述应用引擎进行预处理,剔除所述至少两个服务节点中不满足要求的服务节点,获得剩余服务节点集合;
所述应用引擎利用所述开销集合和所述权重集合,计算每个服务节点的综合开销包括:
所述应用引擎利用所述开销集合和所述权重集合,计算所述剩余服务节点集合中每个服务节点的综合开销。
8.根据权利要求7所述的方法,其特征在于,所述应用引擎进行预处理,剔除所述至少两个服务节点中不满足要求的服务节点,获得剩余服务节点集合包括:
所述应用引擎获得所述至少两种开销度量中每种开销度量的要求值;
所述应用引擎确定每个服务节点对应于所述至少两种开销度量的取值是否符合所述要求值的要求;
如果存在不符合所述要求值的要求的服务节点,所述应用引擎从所述至少两个服务节点中剔除所述不符合所述要求值的要求的服务节点,获得所述剩余服务节点集合。
9.根据权利要求8所述的方法,其特征在于,如果每个服务器均符合所述要求值的要求,所述方法还包括:
所述应用引擎从所述ALTO服务器获得所述至少两个服务节点中每个服务节点的节点属性;
所述应用引擎根据所述节点属性,确定所述至少两个服务节点中是否存在不能作为所述最优服务节点的服务节点;
如果存在不能作为所述最优服务节点的服务节点,所述应用引擎从所述至少两个服务节点中剔除所述不能作为所述最优服务节点的服务节点,获得所述剩余服务节点集合。
10.一种应用引擎,其特征在于,所述应用引擎包括:
开销集合获得单元,用于从应用层流量优化ALTO服务器获得至少两个服务节点的开销集合,所述开销集合包括每个服务节点对应于至少两种开销度量的取值;
权重集合获得单元,用于获得权重集合,所述权重集合包括所述至少两种开销度量中每种开销度量的权重值;
综合开销计算单元,用于利用所述开销集合和所述权重集合,计算每个服务节点的综合开销,所述综合开销用于指示对所述至少两个服务节点进行排序,并从所述至少两个服务节点中选取最优服务节点。
11.根据权利要求10所述的应用引擎,其特征在于,所述综合开销计算单元包括:
归一化单元,用于对Cij进行归一化处理,获得归一化值C′ij,所述Cij为第i个服务节点对应于第j种开销度量的取值,i=1,2,…,N,j=1,2,…,M,N为所述服务节点的个数,M为所述开销度量的个数,N和M为正整数,N≥2,M≥2;
综合开销计算子单元,用于利用所述C′ij和Wj,计算所述第i个服务节点的综合开销Ci=C′i1*W1+C′i2*W2+…+C′ij*Wj+…+C′iM*WM,所述Wj为第j种开销度量的权重值。
12.根据权利要求10或11所述的应用引擎,其特征在于,
所述应用引擎集成在ALTO客户端或集成在应用程序,则所述开销集合获得单元,具体用于接收所述ALTO服务器发送的查询响应,所述查询响应中包括所述开销集合;
或者,
所述应用引擎集成在所述ALTO服务器,则所述开销集合获得单元,具体用于从所述ALTO服务器读取所述开销集合。
13.根据权利要求10至12任一项所述的应用引擎,其特征在于,所述应用引擎还包括:
ALTO服务请求获得单元,用于在所述开销集合获得单元获得所述开销集合之前,获得应用程序发送的ALTO服务请求,所述ALTO服务请求包括所述至少两种开销度量的标识和/或业务的质量要求,所述业务的质量要求用于表示所述业务的关键质量指标;所述ALTO服务请求还包括所述至少两个服务节点的标识;
相应于所述ALTO服务请求包括所述业务的质量要求,所述应用引擎还包括:转换单元,用于将所述业务的质量要求转换为所述至少两种开销度量;
ALTO查询请求发送单元,用于向所述ALTO服务器发送ALTO查询请求,所述ALTO查询请求包括所述至少两种开销度量的标识和所述至少两个服务节点的标识。
14.根据权利要求13所述的应用引擎,其特征在于,所述转换单元包括:
查询单元,用于查询预置数据库,所述预置数据库保存有所述业务的质量要求与所述至少两种开销度量之间的映射关系;
转换子单元,用于利用所述映射关系,将所述业务的质量要求转换为对应的所述至少两种开销度量。
15.根据权利要求13或14所述的应用引擎,其特征在于,所述业务的质量要求包括第一质量要求和/或第二质量要求;
所述第一质量要求包括节点的类型和业务的关键参数,所述第二质量要求包括业务的类型和业务的名称。
16.根据权利要求10至15任一项所述的应用引擎,其特征在于,所述应用引擎还包括:
预处理单元,用于在所述综合开销计算单元计算所述综合开销之前,进行预处理,剔除所述至少两个服务节点中不满足要求的服务节点,获得剩余服务节点集合;
所述综合开销计算单元,具体用于利用所述开销集合和所述权重集合,计算所述剩余服务节点集合中每个服务节点的综合开销。
17.根据权利要求16所述的应用引擎,其特征在于,所述预处理单元包括:
要求值获得单元,用于在所述综合开销计算单元计算所述综合开销之前,获得所述至少两种开销度量中每种开销度量的要求值;
第一确定单元,用于确定每个服务节点对应于所述至少两种开销度量的取值是否符合所述要求值的要求;
第一剔除单元,用于在所述第一确定单元确定存在不符合所述要求值的要求的服务节点时,从所述至少两个服务节点中剔除所述不符合所述要求值的要求的服务节点,获得所述剩余服务节点集合。
18.根据权利要求17所述的应用引擎,其特征在于,所述预处理单元还包括:
节点属性获得单元,用于在所述第一确定单元确定每个服务器均符合所述要求值的要求时,从所述ALTO服务器获得所述至少两个服务节点中每个服务节点的节点属性;
第二确定单元,用于根据所述节点属性获得单元获得的所述节点属性,确定所述至少两个服务节点中是否存在不能作为所述最优服务节点的服务节点;
第二剔除单元,用于在所述第二确定单元确定存在不能作为所述最优服务节点的服务节点时,从所述至少两个服务节点中剔除所述不能作为所述最优服务节点的服务节点,获得所述剩余服务节点集合。
19.一种用于选取服务节点的装置,其特征在于,所述装置包括权利要求10至18任一项所述的应用引擎。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410680393.5A CN105704064A (zh) | 2014-11-24 | 2014-11-24 | 一种用于选取服务节点的方法及装置、应用引擎 |
PCT/CN2015/081917 WO2016082537A1 (zh) | 2014-11-24 | 2015-06-19 | 一种用于选取服务节点的方法及装置、应用引擎 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410680393.5A CN105704064A (zh) | 2014-11-24 | 2014-11-24 | 一种用于选取服务节点的方法及装置、应用引擎 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105704064A true CN105704064A (zh) | 2016-06-22 |
Family
ID=56073521
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410680393.5A Pending CN105704064A (zh) | 2014-11-24 | 2014-11-24 | 一种用于选取服务节点的方法及装置、应用引擎 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN105704064A (zh) |
WO (1) | WO2016082537A1 (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107545338A (zh) * | 2016-06-27 | 2018-01-05 | 百度在线网络技术(北京)有限公司 | 业务数据处理方法及业务数据处理系统 |
CN110414979A (zh) * | 2019-06-21 | 2019-11-05 | 深圳壹账通智能科技有限公司 | 线上背书签名方法、装置、设备和存储介质 |
CN111637914A (zh) * | 2020-07-06 | 2020-09-08 | 山西省煤炭地质物探测绘院 | 一种基于大数据分析方法的计量数据采集、分析控制系统 |
CN114465945A (zh) * | 2022-03-25 | 2022-05-10 | 江苏省未来网络创新研究院 | 一种基于sdn的标识解析网络构建方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2391092A1 (en) * | 2010-05-28 | 2011-11-30 | Juniper Networks, Inc. | Application-layer traffic optimization enhancements for content delivery networks |
CN102546820A (zh) * | 2012-02-16 | 2012-07-04 | 华为技术有限公司 | 传输优化方法、映射信息的存储方法、装置及系统 |
CN102986196A (zh) * | 2010-07-08 | 2013-03-20 | 阿尔卡特朗讯公司 | 分布于通信结构上的节点利用具有多准则选择的拓扑服务器访问网络 |
US20130219062A1 (en) * | 2010-07-08 | 2013-08-22 | Claire-Sabine Randriamasy | Confidential or protected access to a network of nodes distributed over a communication architecture with the aid of a topology server |
-
2014
- 2014-11-24 CN CN201410680393.5A patent/CN105704064A/zh active Pending
-
2015
- 2015-06-19 WO PCT/CN2015/081917 patent/WO2016082537A1/zh active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2391092A1 (en) * | 2010-05-28 | 2011-11-30 | Juniper Networks, Inc. | Application-layer traffic optimization enhancements for content delivery networks |
CN102986196A (zh) * | 2010-07-08 | 2013-03-20 | 阿尔卡特朗讯公司 | 分布于通信结构上的节点利用具有多准则选择的拓扑服务器访问网络 |
US20130219062A1 (en) * | 2010-07-08 | 2013-08-22 | Claire-Sabine Randriamasy | Confidential or protected access to a network of nodes distributed over a communication architecture with the aid of a topology server |
CN102546820A (zh) * | 2012-02-16 | 2012-07-04 | 华为技术有限公司 | 传输优化方法、映射信息的存储方法、装置及系统 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107545338A (zh) * | 2016-06-27 | 2018-01-05 | 百度在线网络技术(北京)有限公司 | 业务数据处理方法及业务数据处理系统 |
CN107545338B (zh) * | 2016-06-27 | 2021-06-04 | 百度在线网络技术(北京)有限公司 | 业务数据处理方法及业务数据处理系统 |
CN110414979A (zh) * | 2019-06-21 | 2019-11-05 | 深圳壹账通智能科技有限公司 | 线上背书签名方法、装置、设备和存储介质 |
CN111637914A (zh) * | 2020-07-06 | 2020-09-08 | 山西省煤炭地质物探测绘院 | 一种基于大数据分析方法的计量数据采集、分析控制系统 |
CN114465945A (zh) * | 2022-03-25 | 2022-05-10 | 江苏省未来网络创新研究院 | 一种基于sdn的标识解析网络构建方法 |
CN114465945B (zh) * | 2022-03-25 | 2023-12-08 | 江苏省未来网络创新研究院 | 一种基于sdn的标识解析网络构建方法 |
Also Published As
Publication number | Publication date |
---|---|
WO2016082537A1 (zh) | 2016-06-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5408749B2 (ja) | 複数のビデオを評価する方法及び評価サーバー | |
US20140059158A1 (en) | Method, device and system for processing content | |
WO2017005223A1 (zh) | 一种智能电表的信息共享方法、智能电表及采集路由器 | |
CN103078847B (zh) | 一种多码率流文件的存储和读取方法及相关装置 | |
JP5754941B2 (ja) | オーディオおよび/またはビデオ・サービスの選択方法。 | |
US11979302B2 (en) | Discovery of a service-providing network function | |
CN103825975A (zh) | Cdn节点分配服务器及系统 | |
Kader et al. | Leveraging big data analytics for cache-enabled wireless networks | |
CN105704064A (zh) | 一种用于选取服务节点的方法及装置、应用引擎 | |
CN109996086B (zh) | 一种视联网业务状态查询方法及装置 | |
CN107645485B (zh) | 一种网络直播的分发方法、系统和装置 | |
CN103298010A (zh) | 一种网络链路状况显示方法和装置 | |
US9178952B2 (en) | Systems and methods for service assurance using virtualized federated presence infrastructure | |
WO2018036256A1 (zh) | 生成acl表的方法和装置 | |
CN107547346A (zh) | 一种报文传输方法和装置 | |
JP2009225445A (ja) | P2pモードで記憶されたコンテンツにアクセスするようにピア識別子を得る要求を管理する方法、それに関連する管理装置及びネットワーク装置 | |
US8681760B2 (en) | Network positioning system and terminal positioning device | |
CN115706741A (zh) | 一种切片文件的回源方法以及装置 | |
CN111600929B (zh) | 传输线路探测方法、路由策略生成方法及代理服务器 | |
CN110609818A (zh) | 一种日志处理方法及装置 | |
US20140289307A1 (en) | Method for transmitting data between electronic devices | |
CN102572006B (zh) | 一种基于nat地址转换的数据传输方法和设备 | |
US20140317272A1 (en) | Method of collecting information, content network management system, and node apparatus using management interface in content network based on information-centric networking | |
CN115665262A (zh) | 一种请求处理方法、装置、电子设备及存储介质 | |
US20090323548A1 (en) | Method, system and terminal for determining qos level |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20160622 |
|
RJ01 | Rejection of invention patent application after publication |