用于EPP上的智能多对多服务路由的方法和系统.pdf

上传人:r7 文档编号:470515 上传时间:2018-02-18 格式:PDF 页数:22 大小:674.88KB
返回 下载 相关 举报
摘要
申请专利号:

CN201410097203.7

申请日:

2014.03.17

公开号:

CN104052828A

公开日:

2014.09.17

当前法律状态:

实审

有效性:

审中

法律详情:

实质审查的生效IPC(主分类):H04L 29/12申请日:20140317|||公开

IPC分类号:

H04L29/12

主分类号:

H04L29/12

申请人:

弗里塞恩公司

发明人:

J.古尔德; M.安德森; M.贾因; R.查瓦特

地址:

美国弗吉尼亚州

优先权:

2013.03.15 US 13/835674

专利代理机构:

中国专利代理(香港)有限公司 72001

代理人:

臧永杰;徐红燕

PDF下载: PDF下载
内容摘要

本发明提供了用于通过网络来路由EPP请求的方法和系统。路由系统包括多个前端服务接口、一个或多个网关、管理服务器和提供多个应用服务的后端服务平台。所述前端服务接口通过使用虚拟IP地址(“VIP”)是可寻址的并且可以由网关提供。路由系统定义在前端服务接口与由后端服务平台提供的一组服务之间的多对多映射。请求者能够通过EPP向目标服务接口发送请求以访问一个或多个后端服务,这是通过将所述请求发送到对应于与目标服务接口相关联的VIP的目标IP或域名而实现的。通过使用所述多对多映射和目标服务接口的VIP,所述路由系统能够标识由所述请求所寻求的后端服务并且为请求者提供对所述后端服务的访问。

权利要求书

1.  一种用于将使用可扩展供应协议(EPP)接收的请求路由到多个服务的计算机实现的方法,所述方法包括:
经由EPP从请求者接收要访问来自多个服务中的服务的请求,其中所述请求经由与目标服务接口相关联的地址被引导到多个服务接口中的目标服务接口;
分析所述请求以确定目标服务接口的地址;
基于目标服务接口的地址来标识由所述请求所寻求的服务;以及
将所述请求路由到所述服务从而为请求者提供对所述服务的访问。

2.
  根据权利要求1的计算机实现的方法,其中标识由所述请求所寻求的服务此外包括:
基于与目标服务接口的地址相关联的路由表中的信息来标识由所述请求所寻求的服务,其中所述路由表包括多个服务接口与多个服务之间的多对多映射。

3.
  根据权利要求2的计算机实现的方法,此外包括:
基于所述路由表中的信息来确定所述服务的当前版本;以及
将所述请求路由到所述服务的当前版本。

4.
  根据权利要求2的计算机实现的方法,此外包括:
基于所述路由表中的信息来确定所述服务的当前版本;以及
将所述请求路由到所述服务的不同版本。

5.
  根据权利要求2的计算机实现的方法,此外包括:
基于所述路由表中的信息来确定所述服务的操作状态;以及
基于所述服务的操作状态来将所述请求路由到所述服务。

6.
  根据权利要求2的计算机实现的方法,此外包括:
基于所述路由表中的信息来确定所述服务的操作状态;以及
基于目标服务接口的操作状态和所述服务的操作状态来将所述请求路由到所述服务。

7.
  根据权利要求1的计算机实现的方法,其中标识所述服务此外包括:
基于目标服务接口的地址来向所述请求者提供EPP问候。

8.
  根据权利要求1的计算机实现的方法,其中标识所述服务此外包括:
基于目标服务接口的地址来确定对请求者访问由所述请求所寻求的服务的授权。

9.
  根据权利要求1的计算机实现的方法,其中标识所述服务此外包括:
基于目标服务接口的地址来确定访问策略;以及
基于所述访问策略来确定对请求者访问由所述请求所寻求的服务的授权。

10.
  根据权利要求1的计算机实现的方法,此外包括:
定义在多个服务接口与多个服务之间的多对多映射,其中所述多个服务接口各自都具有唯一的地址。

11.
  根据权利要求10的计算机实现的方法,此外包括:
用所述多对多映射来更新路由表。

12.
  一种用于将使用可扩展供应协议(EPP)接收的请求路由到多个服务的系统,包括:
处理器;以及
通信耦合到所述处理器的存储器;
其中所述处理器被配置成
经由EPP从请求者接收要访问来自多个服务中的服务的请求,所述请求经由与目标服务接口相关联的地址而被引导到多个服务接口中的目标服务接口;
分析所述请求以确定目标服务接口的地址;
基于目标服务接口的地址来标识由所述请求所寻求的服务;以及
将所述请求路由到所述服务从而为请求者提供对所述服务的访问。

13.
  根据权利要求12的系统,其中所述处理器此外被配置成:
基于与目标服务接口的地址相关联的路由表中的信息来标识由所述请求所寻求的服务,其中所述路由表存储在存储器中并且包括在多个服务接口与多个服务之间的多对多映射。

14.
  根据权利要求13的系统,其中所述处理器此外被配置成:
基于所述路由表中的信息来确定所述服务的当前版本;并且
将所述请求路由到所述服务的当前版本。

15.
  根据权利要求13的系统,其中所述处理器此外被配置成:
基于所述路由表中的信息来确定所述服务的当前版本;以及
将所述请求路由到所述服务的不同版本。

16.
  根据权利要求13的系统,其中所述处理器此外被配置成:
基于所述路由表中的信息来确定所述服务的操作状态;以及
基于所述服务的操作状态而将所述请求路由到所述服务。

17.
  根据权利要求13的系统,其中所述处理器此外被配置成:
基于所述路由表中的信息来确定所述服务的操作状态;以及
基于目标服务接口的操作状态和所述服务的操作状态而将所述请求路由到所述服务。

18.
  根据权利要求12的系统,其中所述处理器此外被配置成:
基于目标服务接口的地址来向所述请求者提供EPP问候。

19.
  根据权利要求12的系统,其中所述处理器此外被配置成:
基于目标服务接口的地址来确定对请求者访问由所述请求所寻求的服务的授权。

20.
  一种包括指令的非暂时性计算机可读存储介质,所述指令在由设备内的处理器执行时使得所述处理器执行用于将使用可扩展供应协议(EPP)接收的请求路由到多个服务器的方法,所述方法包括:
经由EPP从请求者接收要访问来自多个服务中的服务的请求,其中所述请求经由与目标服务接口相关联的地址而被引导到多个服务接口中的目标服务接口;
分析所述请求以确定目标服务接口的地址;
基于目标服务接口的地址来标识由所述请求所寻求的服务;以及
将所述请求路由到所述服务从而为请求者提供对所述服务的访问。

21.
  根据权利要求20的非暂时性计算机可读存储介质,其中所述方法此外包括:
基于与目标服务接口的地址相关联的路由表中的信息来标识由所述请求所寻求的服务,其中所述路由表包括在多个服务接口与多个服务之间的多对多映射。

22.
  根据权利要求21的非暂时性计算机可读存储介质,其中所述方法此外包括:
基于所述路由表中的信息来确定所述服务的当前版本;以及
将所述请求路由到所述服务的不同版本。

23.
  根据权利要求22的非暂时性计算机可读存储介质,其中所述方法此外包括:
基于所述路由表中的信息来确定所述服务的当前版本;以及
将所述请求路由到所述服务的不同版本。

24.
  根据权利要求22的非暂时性计算机可读存储介质,其中所述方法此外包括:
基于所述路由表中的信息来确定所述服务的操作状态;以及
基于所述服务的操作状态来将所述请求路由到所述服务。

25.
  根据权利要求22的非暂时性计算机可读存储介质,其中所述方法此外包括:
基于所述路由表中的信息来确定所述服务的操作状态;以及
基于目标服务接口的操作状态和所述服务的操作状态将所述请求路由到所述服务。

26.
  根据权利要求21的非暂时性计算机可读存储介质,其中标识所述服务此外包括:
基于目标服务接口的地址来向所述请求者提供EPP问候。

27.
  根据权利要求21的非暂时性计算机可读存储介质,其中标识所述服务此外包括:
基于目标服务接口的地址来确定对请求者访问由所述请求所寻求的服务的授权。

28.
  根据权利要求21的非暂时性计算机可读存储介质,其中标识所述服务此外包括:
基于目标服务接口的地址来确定访问策略;以及
基于所述访问策略来确定对请求者访问由所述请求所寻求的服务的授权。

29.
  根据权利要求21的非暂时性计算机可读存储介质,其中所述方法此外包括:
定义在多个服务接口与多个服务之间的多对多映射,其中所述多个服务接口各自都具有唯一的地址。

30.
  一种用于将使用可扩展供应协议(EPP)接收的请求路由到多个服务的计算机实现的方法,所述方法包括:
经由EPP从请求者接收要访问来自多个服务中的服务的请求,其中所述请求经由与目标服务接口相关联的地址而被引导到多个服务接口中的目标服务接口;
分析所述请求以确定目标服务接口的地址;
基于与同所述目标服务接口相关联的地址相关联的路由表中的信息来标识由所述请求所寻求的服务,其中所述路由表包括在多个服务接口与多个服务之间的多对多映射;
基于所述路由表中的信息来确定所述服务的操作状态;以及
基于所述目标服务接口的操作状态和所述服务的操作状态而将所述请求路由到所述服务,从而为请求者提供对所述服务的访问。

说明书

用于EPP上的智能多对多服务路由的方法和系统
对相关申请的交叉引用
本专利申请是2012年11月19日提交的题为“Method and System for Intelligent Routing of Requests over EPP”的待决的美国专利申请No.13/681,330的部分继续申请并且要求其优先权,并且被指派或者有义务被指派给与该申请相同的实体并且因此明确地通过引用以其全部被结合。美国专利申请No.13/681,330是2012年12月4日被公布为美国专利No.8,327,019的2009年8月18日提交的美国专利申请No.12/543,462的继续并且要求其优先权,并且同样被指派或者有义务被指派给与该申请相同的实体并且因此明确地通过引用以其全部被结合。
技术领域
本公开内容一般地涉及通过网络的路由请求。
背景技术
随着互联网使用指数级地增长,对互联网相关服务的需求也在迅速增长。由于对互联网的使用增加,对域名的需求也在迅速增长。因此,对域相关服务的需求也在上升。这样的域相关服务可以包括域名创建、域名注册续期等等。典型地,网站充当用于为域名建立在线存在的主要媒介。为了满足对域名相关服务的该日益增长的需求,提供这些服务的实体以高效且有成本效益的方式这样做是必要的。
域名系统(DNS)是互联网基础设施的部分,其将人类可读的域名转化成通过互联网建立TCP/IP通信所需的互联网协议(IP)数字。DNS允许用户使用诸如“www.example.com”之类的更容易记住的域名,而不是与网站相关联的并被指派给互联网上的计算机的数字IP地址(例如123.4.56.78)来指向网站和其它资源。每个域名可以由一系列由点分隔开的字符串(例如,标签)组成。在域名中最右边的标签称为“顶级域(TLD)”。众所周知的TLD的示例有“com”、“net”、“org”等。每个TLD支持直接列在该TLD左边的二级域,例如在“www.example.com”中的“example”级。每个二级域可以包括直接位于该二级域左边的多个三级域,例如在www.example.com中的“www”级。
操作每个TLD的责任(包括维护TLD内的二级域的注册)被委派给被称为域名注册机构(“注册机构”)的特定组织。该注册机构主要负责通常通过在大型数据库中维护这样的信息的DNS服务器来答复对于与域相关联的IP地址的查询(“解答”),以及操作其顶级域。
对于大多数TLD而言,为了获取域名,该域名必须通过域名注册商由注册机构注册,所述注册商是被授权代表终端用户来注册互联网域名的实体。可替换地,终端用户可以间接地通过一层或多层转售商来注册域名。注册机构可以接收来自数百个注册商的注册。
注册商通常具有与注册机构的专用服务连接以便访问域相关的服务,例如域名创建或续期。注册商通常使用可扩展供应协议(EPP)作为与注册机构通信的媒介以便注册或续期域名。EPP是设计用于通过互联网在注册机构内分配对象的协议。EPP协议基于可扩展标记语言(“XML”),其是一种结构化的基于文本的格式。尽管当前指定的方法是通过传输控制协议(TCP)的,但是底层网络输送并不固定。
发明内容
本公开内容的实施例涉及用于对EPP上的服务请求进行路由的系统和方法。具体地,根据各种实施例的路由系统包括多个前端服务接口、一个或多个网关、管理服务器以及提供多个应用服务的后端服务平台。所述前端服务接口通过使用虚拟IP地址(“VIP”)是可寻址的并且可以由网关提供。所述路由系统定义在所述前端服务接口与由所述后端服务平台提供的一组后端服务之间的多对多映射。请求者可以通过EPP向目标服务接口发送请求以访问一个或多个后端服务,这通过向对应于与目标服务接口相关联的VIP的目标IP或域名发送请求来实现。通过使用所述多对多映射和目标服务接口的VIP,路由系统能够标识由所述请求所寻求的后端服务并且为请求者提供对所述后端服务的访问。
根据各种实施例的路由系统能够维护多对多映射中的版本号和/或与版本号相关联的操作状态以支持版本测试、版本升级和版本降级或回滚。在一些实施例中,在后端服务需要跨VIP在不同时间表上升级的情况下,可以结合VIP来完成版本化。在附加的实施例中,可以独立于VIP完成版本化。可以向每个后端服务指派唯一的版本号并且可选地带有针对所述服务的每个版本所定义的操作状态。可以针对网关定义状态机以在使用或不使用VIP作为变量的情况下确定将请求路由到哪个服务。用于后端服务的状态机的实施例可以包括操作状态,诸如,例如不活动、过去、当前和紧接在后。一个或多个网关可以被配置成基于后端服务的具体操作状态来路由服务请求。
本公开内容的实施例的附加目的和优点将部分地陈述在随后的描述中,并且部分将从该描述中显而易见,或者可以通过实施例的实践而被获知。借助于在随附的权利要求中特别指出的元件和组合将认识到并获得实施例的目的和优点。
要理解的是,上文的一般描述和下文的详细描述都仅仅是示例性和解释性的,并且不限制如所要求保护的实施例。
附图说明
图1是与本公开内容的实施例一致的用于服务请求的智能路由的示例系统的框图。
图2是图示了与本公开内容的实施例一致的示例网关的框图。
图3描绘了与本公开内容的实施例一致的示例路由表。
图4是与本公开内容的实施例一致的由智能路由系统执行的用于管理多对多映射并且基于多对多映射而响应于EPP上的服务请求的示例过程的流程图。
图5是与本公开内容的实施例一致的由所述智能路由系统执行的用于响应于EPP上的服务请求的示例过程的流程图。
图6是与本公开内容一致的用于执行所公开的实施例的示例计算机系统。
具体实施方式
现在将对示例实施例做出详细参考,在附图中图示所述示例实施例。在适当时,贯穿附图使用相同的参考数字来指代相同或相似的部分。
出于简明和说明性的目的,本公开内容的原理是通过主要参考其示例性实施例而被描述的。然而,本领域普通技术人员将会容易地认识到,相同的原理等同地适用于并且能够被实现在所有类型的信息和系统中,而且任何这样的变型都不脱离于本公开内容的真实精神和范围。此外,在下文的详细描述中,对图示了具体示例性实施例的附图做出参考。可以在不脱离于本公开内容的精神和范围的情况下对所述示例性实施例做出电学的、机械的、逻辑的和结构的改变。因此,下文的详细描述将不以限制性意义被理解并且本公开内容的范围由随附的权利要求及其等同物所限定。
本公开内容的各种实施例包括用于对EPP上的请求进行智能路由的系统和方法。根据各种实施例的智能路由系统包括多个前端服务接口、一个或多个网关、管理服务器和提供多个应用服务的后端服务平台,所述应用服务诸如域名注册服务、域名建议服务等等。前端服务接口通过使用虚拟IP地址(“VIP”)是可寻址的并且可以由网关和/或通信耦合到网关的组件(例如网络服务器)提供。
智能路由系统可以定义在前端服务接口和由后端服务平台提供的一组服务之间的多对多映射。请求者可以通过EPP向前端服务接口的目标服务接口发送请求以访问该组服务中的一个或多个后端服务,这是通过将所述请求发送或引导到对应于与目标服务接口相关联的VIP的目标IP或域名而实现的。智能路由系统能够通过基于目标服务接口的VIP提供EPP问候(greeting)来响应于请求。通过使用多对多映射和目标服务接口的VIP,智能路由系统能够标识由请求所寻求的后端服务并且向请求者提供(或拒绝)对后端服务的访问。
在各种实施例中,多对多映射可以包括与前端服务接口相关联的VIP作为到后端服务的高级路由元素,并且管理服务器可以在主路由表(master routing table)中存储多对多映射。管理服务器可以将主路由表中的多对多映射传播给网关。可替换地或附加地,网关可以从主路由表复制多对多映射。网关中的任何一个能够基于本地存储在该网关中的路由表中的信息来确定与后端服务相关联的状态信息。网关中的任何一个还能够接收向由服务请求定为目标的一个或多个前端服务接口提出的服务请求,并且通过使用本地存储的路由表以及与所述一个或多个目标前端服务接口相关联的VIP,该网关能够标识由所述请求所寻求的后端服务并且相应地路由(或拒绝)所述请求。
智能路由系统能够以集中化途径、去集中化途径或混合途径(例如,在集中管理的覆盖的情况下去集中地)生成和/或更新VIP与后端服务之间的多对多映射。在集中化途径中,后端服务能够用管理服务器注册,并且管理服务器能够生成授权路由信息。在去集中化途径中,后端服务能够用管理服务器一般注册,并且路由映射能够由管理员或由外部路由管理器应用所配置。在混合途径中,后端服务能够发布它们所期望的VIP,并且管理服务器能够覆盖后端服务偏好。
通过至少部分地基于与前端服务接口相关联的VIP来路由服务请求,智能路由系统能够将不同的客户端策略(例如连接、带宽、安全性/加密、服务质量等)应用于每个VIP。在这样做时,智能路由系统能够基于由服务请求定为目标的前端服务接口的VIP来提供能力的区分化级别和/或应用唯一的客户端或访问策略。例如,返回到针对每个VIP的新连接请求或其它服务请求的EPP问候可以仅包括可用于该VIP的服务。在响应于登录或连接请求时,智能路由系统能够考虑由所述登录或连接请求定为目标的前端服务接口的VIP。连同请求者的IP地址、登录名、密码和数字证书,智能路由系统能够将目标服务接口的VIP用作在做出认证决定时的因素。例如,网关能够基于用户的服务特权通过VIP准许或拒绝认证。网关还能够基于路由表和用户的服务特权来准许或拒绝对后端服务中的一个或多个的路由请求。
对于智能路由系统而言将会有利的是基于由请求定为目标的前端服务接口的VIP而对EPP上的来自请求者的请求进行路由。例如,注册商和其它客户端能够利用注册机构通过EPP请求服务以便注册和续期域名并且执行其它域名相关的操作。注册机构能够为许多类型的TLD(例如商标TLD、受调整的TLD、不受调整的TLD等等)提供域名相关的服务,而每个注册商能够为一个或几个类型的TLD请求域名相关的操作。注册机构或其它实体能够为每个注册商提供一个或多个TLD类型特定的VIP用于做出服务请求。注册机构或另一实体还能够提供一个或多个特别的VIP以选择注册商用于做出特定类型的服务请求,诸如批量/自动池。于是,当注册商中的一个向指明用于特定类型的TLD或服务请求的VIP发送服务请求时,智能路由系统能够以对于与所述VIP相关联的所述特定类型的TLD或服务请求适当和/或期望的方式响应于所述服务请求。
另外,智能路由系统能够降低服务器基础设施的成本,因为相同组的网关和后端服务平台可以被用于提供多种离散后端应用服务。智能路由系统还能够降低对于请求者和其它客户端的复杂性水平,因为智能路由系统简化了请求域名相关服务所需的连接池。此外,智能路由系统能够自然地操纵唯一的客户端或访问策略而无需创建服务的附加栈(例如网关、后端服务平台等等)。智能路由系统还能够增加对新的后端服务的采纳,因为智能路由系统能够向请求者提供新的后端服务而无需请求者连接到新的服务接口。
在各种实施例中,智能路由系统能够维护与多对多映射中的后端服务相关联的版本号和/或操作状态以支持版本测试、版本升级以及版本降级或回滚。在一些实施例中,智能路由系统在路由服务请求时能够将与后端服务相关联的版本号和/或操作状态作为因素,而不将与后端服务相关联的VIP作为因素。在附加的实施例中,在一个或多个后端服务需要跨VIP在不同时间表上升级的情况下,智能路由系统能够在路由服务请求时将与后端服务相关联的版本号和/或操作状态连同它们相关联的VIP一起作为因素。可以向每个版本的后端服务指派唯一的版本号并且可选地带有操作状态。可以为网关定义状态机以在使用或不使用VIP作为变量的情况下确定将请求路由到哪个服务。用于后端服务的状态机的实施例可以包括操作状态,诸如,例如不活动、过去、当前和紧接在后。一个或多个网关可以被配置成将服务请求路由到具有特定版本号或操作状态的服务,像一组网关能够被配置成取样(sniff)测试“紧接在后”状态,而正常产生网关(production gateway)将被配置成仅用于“当前”状态。如果有在做出回滚决定前对服务进行故障检修的需要,则网关可以被配置成用于“过去”状态。“不活动”状态可以充当在取消部署不活动版本的服务之前用于不活动版本的服务的终端状态。
对于智能路由系统将会有利的是维护与后端服务相关联的版本号和/或操作状态,并且至少部分地基于与由请求所寻求的后端服务相关联的版本号和/或操作状态而对EPP上的请求进行路由。通过维护与后端服务相关联的版本号和/或操作状态,智能路由系统能够支持版本测试、版本升级和版本降级或回滚,并且允许新的后端服务的选择性暴露。另外,在这样做时,智能路由系统能够无缝地操纵后端服务升级而不负面地影响请求者和其它客户端,因为请求者能够在后端服务升级期间维护到前端服务接口和网关的连接。由于具有在没有或最小停机时间或中断的情况下对服务进行版本测试和对服务进行无缝升级的能力,这促进后端服务平台开发和部署新服务,从而增强被提供给请求者的服务并且增大后端服务平台的竞争性优势。
图1图示了用于将通过EPP接收的服务请求智能路由到一个或多个服务的示例系统100,其与本公开内容的原理一致。在其示例被示出在图1中的各种实施例中,系统100包括前端服务接口110a-n和网关120a-n。服务接口110a-n通过使用VIP是可寻址的并且能够发挥到系统100中的服务入口点的作用。请求者能够通过EPP向目标服务接口(例如服务接口110a-n中的一个)发送服务请求,这是通过将所述请求发送或引导到对应于与所述目标服务接口相关联的VIP的目标IP或域名而实现的。
网关120a-n能够路由在服务接口110a-n处接收的来自一个或多个请求者的服务请求。网关120a-n和/或通信耦合到网关120a-n的组件(例如网络服务器)能够提供服务接口110a-n。分别本地存储在网关120a-n中的路由表125a-n各自是在服务接口110a-n与由后端服务平台150提供的一组服务155a-n之间的多对多映射。路由表125a-n能够包括与服务接口110a-n相关联的VIP作为到该组服务155a-n的高级路由元素。网关120a-n能够使用存储在路由表125a-n中的信息以确定与该组服务155a-n相关联的状态或状态信息。例如,网关120a-n能够经由服务接口110a-n接收连接请求,并且至少部分地基于由请求定为目标的服务接口110a-n的VIP来提供EPP问候。当响应于登录和/或连接请求时,网关120a-n能够考虑由所述登录和/或连接请求定为目标的服务接口110a-n的VIP。连同请求者的IP地址、登录名、密码和数字证书,网关120a-n能够将目标服务接口的VIP用作在做出授权或认证决定时的因素。例如,网关120a-n能够在由请求定为目标的服务接口的VIP被列在它的路由表中作为被授权访问一个或多个后端服务时准许访问服务155a-n中的一个或多个后端服务的请求。
网关120a-n能够使用路由表125a-n来至少部分地基于与由服务请求定为目标的服务接口110a-n相关联的VIP来标识由服务请求所寻求的服务155a-n。在标识所寻求的服务155a-n之后,网关120a-n能够将服务请求路由到(一个或多个)所标识的服务155a-n。网关120a-n可以与能够通过EPP传输服务请求的外部系统和网络通信。正如之前所描述的,用于EPP的默认输送是TCP。然而,网关120a-n能够被配置成通过超文本传送协议(“HTTP”)、安全HTTP(“HTTPS”)或其它网络协议接收和传输EPP消息。网关120a-n中的每一个可以是具有必备功能能力的任何网关,诸如是例如,如在图2中示出并且在下文更详细描述的网关200。
在各种实施例中,路由表125a-n能够存储与多对多映射中的服务155a-n中的一个或多个相关联的版本号和/或操作状态。所存储的版本号和/或操作状态可以支持版本测试、版本升级和版本降级或回滚。在后端服务155a-n需要跨VIP在不同时间表上升级的情况下,网关120a-n可以结合VIP执行依赖于版本的路由。可替换地,网关120a-n可以独立于VIP而执行依赖于版本的路由。可以向服务(例如服务155a-n中的一个)的各版本各自指派唯一的版本号和可选地指派操作状态。可以为网关120a-n定义状态机以在使用或不使用VIP作为变量的情况下确定将请求路由到服务的哪个版本。用于服务的状态机的实施例可以包括操作状态,诸如,例如不活动、过去、当前和紧接在后。
如图1中所示,系统100可以此外包括管理服务器130和后端服务平台150。管理服务器130、后端服务平台150和网关120a-n可以经由网络145通信耦合。网络145可以包括一个或多个有线或无线通信网络的任何组合,诸如局域网、近场通信链路或网络、广域网、蜂窝网络、互联网、基于云的网络等等,或者其任何组合。管理服务器130能够维护主路由表135,其包含在与服务接口110a-n相关联的VIP与由后端服务平台150提供的服务155a-n之间的多对多映射。管理服务器130能够通过将主路由表135中的多对多映射传播到网关120a-n来管理存储在网关120a-n中的路由表125a-n。附加地和/或可替换地,管理服务器130能够通过允许网关120a-n复制主路由表135中的多对多映射来管理存储在网关120a-n中的路由表125a-n。
管理服务器130能够以集中化途径、去集中化途径或混合途径(例如,在集中地管理的覆盖的情况下去集中地)生成和/或更新VIP与后端服务之间的多对多映射。在集中化途径中,服务155a-n能够用管理服务器130注册,并且管理服务器130能够为服务155a-n生成授权路由信息。在去集中化途径中,服务155a-n能够用管理服务器130一般注册,并且路由映射能够由外部路由管理器应用所配置或者基于由服务155a-n提供的偏好。在混合途径中,服务155a-n能够发布它们所期望的VIP,并且管理服务器130能够覆盖由服务155a-n提供的偏好。
在各种实施例中,管理服务器130能够管理服务155a-n并且存储或提供与服务155a-n中的一些或全部有关的信息。服务155a-n中的每一个都能够将它唯一的信息传送到管理服务器130。管理服务器130可以是与服务155a-n有关的信息的仓库。由服务155a-n中的每一个提供的信息可以包括其名称、授权的和/或优选的(一个或多个)VIP、版本号、操作状态、连接性信息等等。对于服务155a-n中的每一个的附加的服务相关信息可以包括关于其EPP处理机(handler)、EPP轮询(Poll)处理机和EPP扩展的信息。系统管理员可以使用管理服务器130上的管理员用户接口(UI)或应用编程接口(API)对服务155a-n中的任何一个进行更新。在系统管理员对服务155做出改变后,管理服务器130能够自动地将对该服务155所做出的改变传送到网关120a-n。管理服务器130能够将该信息推送到网关120a-n。可替换地或附加地,网关120a-n能够轮询管理服务器130以收集关于服务155a-n的信息。网关120a-n中的每一个能够将该信息本地存储在它们对应的路由表125a-n中。
管理服务器130能够对服务155a-n中的每一个执行各种操作,诸如启用、禁用、添加、删除、修改等等。管理服务器130还能够将相关服务组织成服务群组。例如,cTLD可以是带有与作为服务群组的部分而被包括的dotTLD1、dotTLD2和dotTLD3中的每一个相关联的单独服务的服务群组。系统管理员能够具有这样的能力,即将服务群组作为单个实体来控制并且作为整体地对服务群组执行诸如启用、禁用、升级等之类的操作。管理服务器130可以是具有必备功能能力的任何计算机系统,诸如,如在图6中示出并且在下文中更详细描述的计算机系统600。
后端服务平台150可以是用于提供一个或多个服务155a-n的规模可变(scalable)的、容错的平台。后端服务平台150可以使用一个或多个协议来经由网络145与网关120a-n和管理服务器130通信,并且可以被配置成为多个服务155a-n的主机。虽然未示出,但是后端服务平台150可以包括用来存储与服务155a-n有关的信息的一个或多个数据库以及使得用户能够向管理服务器130提供输入以控制和/或管理诸如维护、升级等之类的活动的用户接口。服务155a-n可以要么是由注册机构提供的单独服务(例如域名注册服务、域名建议服务等)要么是具有被包括在每个类别中的单独服务的服务类别。服务155a-n中的每一个可以能够与网关120a-n中的至少一个网关以及管理服务器130通信。服务155a-n中的每一个可以具有与其相关联的唯一信息,诸如其名称、授权和/或优选的(一个或多个)VIP、版本号、操作状态、连接性信息、EPP处理机、EPP轮询处理机、EPP扩展等。在不影响后端服务平台150或其它服务155的正常功能的情况下,可以部署新服务155,并且可以修改或取消部署现有服务155。后端服务平台150可以使用具有必备功能能力的一个或多个通用目的服务器来实现,诸如,如在图6中示出并且在下文中更详细描述的计算机系统600。可以用集群配置来实现后端服务平台150,其中每个服务集群服务器包括多个服务或服务类别。例如,J2EE集群可以被用于组织服务155a-n。在这样的实例中,服务集群服务器URL可以指向包括所期望的服务的服务集群服务器,并且服务对象标识符可以被用来标识由该服务器作为主机的特定服务。
另外,尽管在本文中参考特定块描述系统100,但是要理解的是,这些块是为了描述的便利而定义的,并且不旨在暗示组件部分的特定物理布置。另外,系统100可以具有未在本文中具体描述的其它能力。将意识到的是,在本文中描述的系统配置和组件是说明性的,并且变型和修改是可能的。服务接口110a-n、网关120a-n、管理服务器130、网络145和服务平台150可以具有未在本文中具体描述的其它能力。
图2图示了用于将通过EPP接收的服务请求智能路由到一个或多个服务的示例网关200,其与本公开内容的原理一致。在其示例被示出在图2中的各种实施例中,网关200可以包括网络接口模块(“NIM”)201。NIM 201可以被配置成使用常规的有线或无线介质中的任何一个与外部系统和网络通信。NIM 201能够提供前端服务接口,所述前端服务接口通过使用VIP是可寻址的。此外,NIM 201可以能够接受通过诸如例如TCP/IP、HTTP、HTTPS等之类的互联网协议套组中的任何协议经由EPP递送的来自外部系统的传入请求。NIM 201可以通信耦合到接收模块202,并且被配置成将传入的EPP请求传输到接收模块202。
接收模块202能够通过确定请求的结构并且将所确定的请求结构与标准或已知EPP结构相比较来核实传入的请求是EPP请求。接收模块202可以通信耦合到分析模块203,其能够从接收模块202接收传入的请求并且分析该请求。在各种实施例中,接收模块202和/或分析模块203能够确定请求最初被引导到的目标服务接口(例如服务接口110a-n中的一个)的VIP。请求者能够通过向对应于与目标服务接口110相关联的VIP的IP地址或域名发送请求而将该请求引导到目标服务接口。
请求还可以包括XML代码,其包括XML名称空间信息。XML名称空间可以提供简单的方法,用于通过将XML文档中使用的元素和属性名称与由统一资源标识符(“URI”)参考所标识的名称空间关联起来,从而使XML文档中所使用的元素和属性名称取得资格。XML名称空间可以被用于提供XML实例中唯一命名的元素和属性。由请求所寻求的服务的名称可以作为元素和/或属性信息的部分而被包括。分析模块203能够解析XML代码以提取XML名称空间信息并且基于所述名称空间信息来标识正由特定请求所寻求的至少一个服务。例如,名称空间信息可以与名称建议服务相关联。在这样的示例中,对包括在该请求中的XML代码的解析将会指示该请求旨在用于名称建议服务。除了XML名称空间信息之外,XML代码还可以包括EPP子产品信息。在这样的实例中,XML名称空间信息可以对应于服务类别(例如域名服务),并且子产品信息可以指定该服务类别内的特定服务(例如dotTLD域服务或名称建议服务)。分析模块203还可以被配置成解析被包括在请求中的XML代码以确定名称空间信息和EPP扩展子产品元素。
路由模块204可以从接收模块202或分析模块203接收目标服务接口110的VIP,并且至少部分地基于目标服务接口110的VIP来标识由请求所寻求的服务155。可替换地或附加地,路由模块204可以被配置成仅从具有特定版本号或操作状态的服务155中标识由请求所寻求的服务155。在一些实施例中,路由模块204可以咨询路由表205以基于目标服务接口110的VIP和/或所请求的服务155的版本号或操作状态来确定所请求的服务是否可用于请求者。路由模块204可以从分析模块203接收经解析的XML,包括对由请求所寻求的服务的指示。在一个示例实施例中,可以基于VIP或网关120的模式或状态设定来确定目标服务155。如果有在具有“过去”、“活动”和“紧接在后”的操作状态的表格中具有多个入口的服务,则所选择的服务155可以基于被定义用于该网关120或VIP的操作状态,其可以被设定成受支持的操作状态中的任何一个。例如,网关120可以被配置成仅路由到具有“紧接在后”的操作状态的服务155,或者网关120可以被配置成支持所有操作状态。然而,在任一种情况下,每个VIP可以用操作状态来定义。另外,在一些实施例中,一个VIP可以被配置成路由到具有“紧接在后”的操作状态的服务,并且另一VIP可以被配置成路由到具有“活动”的操作状态的服务。路由模块204能够通过参考路由表205来标识由请求所寻求的服务,这在下文中更详细地描述。路由表205可以在路由模块204的内部或外部。除了状态信息之外,路由模块204还可以查明关于服务的其它信息,例如连接性信息、服务名称等,以便恰当地路由请求。路由模块204还可以被配置成根据正被寻求的服务的标识来路由请求。在某些实施例中,网关状态和/或VIP状态将会在路由表205外定义。
可以使用诸如盘、闪速存储器等等之类的任何非暂时性计算机存储介质来实现存储装置206。存储装置206能够存储路由表205,并且还能够存储其它信息,像用于提供前端服务接口、分析传入的服务请求、确定与由服务请求定为目标的服务接口相关联的VIP、执行XML代码分析、路由服务请求等等的程序指令。可以被实现为一个或多个集成电路(例如常规微处理器或微控制器)的CPU 207能够控制网关200的操作。CPU 207能够检索存储在存储装置206中的一个或多个程序指令,并且执行所述一个或多个程序以指令和/或使得分析模块203和/或路由模块204执行某些功能。
另外,虽然在本文中参考特定块描述了网关200,但是要理解的是,这些块出于描述的便利而定义,并且不旨在暗示组件部分的特定物理布置。另外,块不需要对应于物理上不同的组件。块可以被配置成例如通过对处理器编程或提供适当的控制电路来执行各种操作,并且各种块可以或者可以不重配置,这取决于初始配置是如何获得的。可以用各种设备来实现本公开内容的实施例,所述各种设备包括使用电路与软件的任何组合而实现的电子设备。
图3图示了由系统100使用来提供将通过EPP接收的服务请求智能路由到一个或多个服务的路由表300,其与本公开内容的原理一致。在其示例被示出在图3中的各种实施例中,路由表300可以包括与可用服务(例如服务155a-n)相关联的信息。路由表300可以包括针对服务的服务ID 301,其可以对应于被包含在服务请求中的XML名称空间信息。路由表300还可以包括针对服务的子产品信息302。正如上文所讨论的,子产品信息302可以是服务群组内的单个服务或者服务群组内的类别。例如,如图3中所图示,子产品dotTLD是“cTLD”服务群组的部分。在一些实施例中,当XML名称空间和/或VIP自身不足以唯一地标识目标服务时可能需要子产品信息302。该信息可以有助于将服务请求引导到服务群组内的特定服务或类别。属于群组的服务可以具有相关联的子产品信息302。路由表300还可以包括服务名称303,例如“商标cTLD域创建”、“名称建议”等等。
路由表300可以包括针对服务155中每一个的版本号305,这在其中特定服务的多个版本同时操作的实例中可能是需要的。在这样的实例中,版本号305可以有助于将服务请求引导到特定服务的适合版本。路由表300可以包括连接性信息306,其可以包括与服务或服务集群服务器相关联的URL或地址,如上所述。网关(例如网关120a-n中的一个)可以使用所述URL或地址信息来对传入的服务请求进行路由。连接性信息306可以附加地包括针对服务内的对象的路由信息,针对那些服务的请求应当被发送到所述对象。
路由表300可以包括服务的操作状态307。操作状态的示例可以包括不活动、过去、当前和紧接在后。操作状态的附加示例可以包括禁用、离线、暂时不可用等等。可以基于例如服务的版本号和/或操作状态来路由对于服务的请求。此外,在一些实施例中,网关200可以被配置成基于服务的版本号305和/或操作状态307来路由请求。例如,一组网关可以被设置成取样测试特定服务的新版本,并且因此该组网关可以基于在具有大于(即较新于)当前版本的版本号305的路由表300中的映射来路由对于该特定服务的请求。在这样的示例中,网关200可以具有被设定为“紧接在后”的操作状态307。附加地和/或可替换地,每个VIP可以具有经定义的操作状态,其允许单个网关被配置用于任何状态来驱动路由决定。同时,正常产生网关可以被设置成继续基于在具有匹配于当前版本的版本号305和/或被设定为“当前”的操作状态307的路由表300中的映射来路由对于该特定服务的请求。如果有在做出回滚决定之前对服务进行故障检修的需要,则网关200可以被设置成基于在具有小于(即较旧于)当前版本的版本号305和/或被设定为“过去”的操作状态307的路由表300中的映射来路由对于该特定服务的请求。
每当对服务或服务群组或类别做出改变时,可以动态地更新路由表300。可替换地,可以周期性地更新路由表300。包括在路由表300中的信息可以由中央管理服务器(例如管理服务器130)供应。可替换地或附加地,路由表300能够从各种源获得信息,所述各种源诸如是中央管理服务器、服务平台(例如后端服务平台150)、外部路由管理器应用等等。在一些实例中,对于包括在路由表300中的一个或多个服务和/或服务类别的信息可以是固定的和/或被手动更新。虽然已经参考某些信息描述了路由表300,但是将意识到的是,所示出的信息仅仅出于说明性目的。本领域技术人员将会认识到,路由表300可以具有代替图3中图示的信息或者除其之外的其它信息。
图4是根据本公开内容的实施例的由智能路由系统(例如,如图1中所示的系统100)执行以定义或更新多对多映射并基于所述多对多映射来响应于EPP上的服务请求的过程400的流程图。在框410处,智能路由系统能够定义或更新在前端服务接口与后端服务之间的多对多映射。可替换地或附加地,智能路由系统能够向后端服务中的一些或全部指派版本号,并且定义或更新在后端服务的不同版本及其操作状态之间的多对多映射。智能路由系统的管理服务器能够将多对多映射存储在主路由表中。管理服务器能够将主路由表中的多对多映射传播给智能路由系统中的网关(例如网关120a-n)。可替换地或附加地,网关能够从主路由表复制多对多映射。于是,在框420处,智能路由系统能够至少部分地基于所述多对多映射来响应于EPP上的对于访问后端服务的请求。在下文中关于图5更详细地描述框420。
图5是根据本公开内容的实施例的由智能路由系统100执行以响应于EPP上的服务请求的过程500的流程图。过程500可以由诸如图1中所示出的网关120a-n中的一个之类的网关执行。在框510处,网关能够从请求者接收要访问由诸如注册机构之类的后端服务平台提供的一个或多个后端服务的请求。请求者可以通过EPP向前端服务接口的目标服务接口发送请求,这通过将请求发送或引导到对应于与目标服务接口相关联的VIP的目标IP或域名来实现。于是,在框520处,网关能够分析该请求。例如,网关能够确定与接收该请求的目标服务接口相关联的VIP。网关还能够通过确定请求的结构并且将请求的结构与标准EPP结构比较来核实该请求是EPP请求。
在框530处,网关能够标识由请求所寻求的至少一个服务。例如,网关能够至少部分地基于与目标服务接口相关联的VIP来标识由请求所寻求的服务。可替换地或附加地,网关可以基于与服务相关联的版本号和/或操作状态、网关和VIP来标识由请求所寻求的服务。例如,如果网关被配置成取样测试新服务或现有服务的新版本,那么网关可以在其中版本号大于(即较新于)当前版本和/或操作状态设定为“紧接在后”的多对多映射中寻找由请求所寻求的服务。如果网关被配置为产生网关,那么网关可以在其中版本号匹配于当前版本和/或操作状态设定为“当前”的多对多映射中寻找由请求所寻求的服务。并且如果有在做出回滚决定之前对服务进行故障检修的需要,那么网关可以在其中版本号小于(即较旧于)当前版本或操作状态设定为“过去”的多对多映射中寻找由请求所寻求的服务。此外,如果所请求的服务是登录或连接,则网关可以向请求提供EPP问候,其中EPP问候可以仅包括可用于与目标服务接口相关联的VIP的服务。可以用操作状态来定义VIP,其允许网关动态选择与VIP操作状态匹配的目标服务。
在网关标识由请求所寻求的服务之后,在框540处,网关能够确定所标识的服务是否可用于请求者。例如,如果服务是离线的,则网关可以在框550处发送消息,指示所述服务的不可用性。所述不可用性消息可以包括系统管理员想要传达给请求者的附加信息,诸如服务离线的时间、预期的服务再激活时间等。如果在框540处网关确定服务可用,那么在框560处网关可以将请求路由到所标识的服务。在框570处,网关可以从所标识的服务接收答复所述请求的响应。例如,响应可以是指示请求已经被处理的请求完成消息。最后,在框580处可以将完成消息传送给请求者。例如,所标识的服务可以向网关发送完成消息,网关又将所述完成消息转发给请求者。完成消息可以包括未传送给请求者的附加信息,诸如指定关于请求的附加信息(例如请求的执行时间)的元数据。这样的信息可以被要求作为由服务提供者协商的服务水平协定(“SLA”)的部分。所述元数据信息可以被用于核实服务提供者在满足所承诺的SLA准则(例如请求的执行时间)。网关还可以记录元数据信息以用于将来使用并且仅将完成消息转发给请求者。
将意识到的是,本文所描述的过程500是说明性的,并且变型和修改是可能的。描述为连续的动作可以并行执行,动作的顺序可以变化,并且动作可以被修改或组合。例如,步骤405可以省略,并且可以在不核实服务的当前状态的情况下将请求发送到服务。在一些实施例中,可以组合框520和530来同时分析请求和标识由请求所寻求的服务。
虽然已经关于特定实施例描述了本公开内容,但是本领域技术人员将认识到许多修改是可能的。例如,网关和管理服务器可以具有本文未提及的附加功能性。此外,可以使用专用组件和/或可编程处理器和/或其它可编程设备的任何组合来实现本公开内容的实施例。虽然上文所描述的实施例可以参考特定硬件和软件组件,但是本领域技术人员将意识到,还可以使用硬件和/或软件组件的不同组合,并且被描述为用硬件实现的特定操作还可以用软件实现,反之亦然。
图6图示了与本公开内容的实施例一致的计算机系统600。一般而言,智能路由系统中的管理服务器(例如管理服务器130)或网关(例如网关120a-n中的一个)的实施例可以实现在各种计算机系统中,诸如个人计算机、服务器、工作站、嵌入式系统、多功能设备或其组合。打印机驱动的某些实施例可以作为计算机程序嵌入。计算机程序可以按活动和不活动的各种形式存在。例如,计算机程序可以存在作为由以源代码、对象代码、可执行代码或其它格式的程序指令组成的(一个或多个)软件程序;(一个或多个)固件程序;或者硬件描述语言(HDL)文件。以上各项中的任一个都可以按压缩或未压缩形式被具体化在包括存储设备和信号的计算机可读介质上。然而,出于解释的目的,将系统600示出为本领域技术人员众所周知的通用计算机。现在将描述可以在系统600中包括的组件的示例。
正如所示出的,系统600可以包括至少一个处理器602、键盘617、定点设备618(例如鼠标、触摸板等等)、显示器616、主存储器610、输入/输出控制器615和存储设备614。存储设备614可以包括例如RAM、ROM、闪速存储器、EEPROM、CD-ROM或其它光盘存储装置、磁盘存储装置或其它磁存储设备、或可以用于以指令或数据结构形式来承载或存储所期望程序代码并且可以由计算机访问的任何其它介质。打印机驱动的计算机程序实施例的副本可以存储在例如存储设备614上。系统600还可以装备有附加的输入/输出设备,诸如打印机(未示出)。系统600的各种组件通过系统总线612或类似的体系结构通信。此外,系统600可以包括在操作期间驻留在存储器610中的操作系统(OS)620。本领域技术人员将认识到,系统600可以包括多个处理器602。例如,系统600可以包括相同处理器的多个副本。可替换地,系统600可以包括各种类型处理器的异构混合。例如,系统600可以将一个处理器用作主要处理器并且将其它处理器用作协同处理器。对于另一示例,系统600可以包括一个或多个多核处理器和一个或多个单核处理器。因此,系统600可以跨一组处理器(例如处理器602)包括任何数量的执行核。至于键盘617、定点设备618和显示器616,可以使用本领域技术人员众所周知的组件来实现这些组件。本领域技术人员还将认识到,系统600中可以包括其它组件和外围设备。
主存储器610充当系统600的主要存储区并且持有由在处理器602上运行的应用(诸如条形码打印系统中的打印机驱动)主动使用的数据。本领域技术人员将认识到,应用是各自都包含一组计算机指令以用于指令系统600在运行时间期间执行一组特定任务的软件程序,并且根据本教导的实施例,术语“应用”可以与应用软件、应用程序、设备驱动和/或程序互换地使用。存储器610可以实现为随机存取存储器或如下文所描述的其它形式的存储器,这对本领域技术人员是众所周知的。
OS 620是例程和指令的集成集合,其负责引导对系统600中的硬件和系统操作的控制和管理。此外,OS 620提供在其上运行应用软件和设备驱动的基础。例如,OS 620可以执行服务,诸如资源分配、调度、输入/输出控制和存储器管理。OS 620可以主要是软件,但是还可以包含部分或完整的硬件实现和固件。与本教导的原理一致的操作系统的众所周知示例包括MICROSOFT WINDOWS(例如WINDOWS CE、WINDOWS NT、WINDOWS 2000、WINDOWS XP和WINDOWS VISTA)、MAC OS、LINUX、UNIX、ORACLE SOLARIS、OPEN VMS和IBM AIX。
以上描述是说明性的,并且本领域技术人员可以想到配置和实现中的变型。例如,结合本文所公开的实施例而描述的各种说明性逻辑、逻辑块、模块和电路可以利用设计用来执行本文所描述的功能的通用目的处理器(例如处理器402)、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其它可编程逻辑设备、离散门或晶体管逻辑、离散硬件组件或其任何组合来实现或执行。通用目的处理器可以是微处理器,但是,在可替换方案中,处理器可以是任何常规的处理器、控制器、微控制器或状态机。处理器还可以实现为计算设备的组合,例如DSP和微处理器的组合、多个微处理器、结合DSP核的一个或多个微处理器或任何其它这样的配置。
在一个或多个示例性实施例中,所描述的功能可以实现在硬件、软件、固件或其组合中。对于软件实现,本文所描述的技术可以用执行本文所描述的功能的模块(例如过程、功能、子程序、程序、例程、子例程、模块、软件包、类等等)实现。模块可以通过传递和/或接收信息、数据、自变量、参数或存储内容而耦合到另一模块或硬件电路。可以使用包括存储器共享、消息传递、记号(token)传递、网络传输等等的任何合适方式来传递、转发或传输信息、自变量、参数、数据等。软件代码可以存储在存储器单元中并且由处理器执行。存储器单元可以实现在处理器内或处理器外部,在后一种情况下它可以经由如本领域已知的各种方式通信耦合到处理器。
如果实现在软件中,则所述功能可以作为一个或多个指令或代码通过计算机可读介质存储或传输。计算机可读介质包括有形的、非暂时性的计算机存储介质以及包括促进计算机程序从一个地方到另一个地方的转移的任何介质的通信介质这二者。存储介质可以是任何可以由计算机访问的可用的有形、非暂时性介质。作为示例而非限制,这样的有形、非暂时性计算机可读介质可以包括RAM、ROM、闪速存储器、EEPROM、CD-ROM或其它光盘存储装置、磁盘存储装置或其它磁存储设备,或可以用来以指令或数据结构的形式承载或存储所期望程序代码并且可以由计算机访问的任何其它介质。正如本文所使用的,盘(disk)或碟(disc)包括CD、激光碟、光碟、DVD、软盘和蓝光碟,其中盘通常磁性地再生数据,而碟用激光光学地再生数据。同样地,任何连接被适当地称作计算机可读介质。例如,如果使用同轴电缆、光纤电缆、双绞线、数字用户线路(DSL)或诸如红外、无线电和微波之类的无线技术从网站、服务器或其它远程源传输软件,则同轴电缆、光纤电缆、双绞线、DSL或诸如红外、无线电和微波之类的无线技术就包括在介质的定义中。以上各项的组合也应当包括在计算机可读介质的范围内。
被描述为单数或集成的资源可以在一个实施例中是复数或分布式的,并且被描述为多个或分布式的资源可以在实施例中被组合。本教导的范围因此旨在仅由下文的权利要求所限制。尽管已经关于特定实施例描述了本发明,但是将意识到的是,本发明旨在覆盖下文的权利要求的范围内的所有修改和等同物。

用于EPP上的智能多对多服务路由的方法和系统.pdf_第1页
第1页 / 共22页
用于EPP上的智能多对多服务路由的方法和系统.pdf_第2页
第2页 / 共22页
用于EPP上的智能多对多服务路由的方法和系统.pdf_第3页
第3页 / 共22页
点击查看更多>>
资源描述

《用于EPP上的智能多对多服务路由的方法和系统.pdf》由会员分享,可在线阅读,更多相关《用于EPP上的智能多对多服务路由的方法和系统.pdf(22页珍藏版)》请在专利查询网上搜索。

1、10申请公布号CN104052828A43申请公布日20140917CN104052828A21申请号201410097203722申请日2014031713/83567420130315USH04L29/1220060171申请人弗里塞恩公司地址美国弗吉尼亚州72发明人J古尔德M安德森M贾因R查瓦特74专利代理机构中国专利代理香港有限公司72001代理人臧永杰徐红燕54发明名称用于EPP上的智能多对多服务路由的方法和系统57摘要本发明提供了用于通过网络来路由EPP请求的方法和系统。路由系统包括多个前端服务接口、一个或多个网关、管理服务器和提供多个应用服务的后端服务平台。所述前端服务接口通过使。

2、用虚拟IP地址(“VIP”)是可寻址的并且可以由网关提供。路由系统定义在前端服务接口与由后端服务平台提供的一组服务之间的多对多映射。请求者能够通过EPP向目标服务接口发送请求以访问一个或多个后端服务,这是通过将所述请求发送到对应于与目标服务接口相关联的VIP的目标IP或域名而实现的。通过使用所述多对多映射和目标服务接口的VIP,所述路由系统能够标识由所述请求所寻求的后端服务并且为请求者提供对所述后端服务的访问。30优先权数据51INTCL权利要求书3页说明书12页附图6页19中华人民共和国国家知识产权局12发明专利申请权利要求书3页说明书12页附图6页10申请公布号CN104052828ACN。

3、104052828A1/3页21一种用于将使用可扩展供应协议(EPP)接收的请求路由到多个服务的计算机实现的方法,所述方法包括经由EPP从请求者接收要访问来自多个服务中的服务的请求,其中所述请求经由与目标服务接口相关联的地址被引导到多个服务接口中的目标服务接口;分析所述请求以确定目标服务接口的地址;基于目标服务接口的地址来标识由所述请求所寻求的服务;以及将所述请求路由到所述服务从而为请求者提供对所述服务的访问。2根据权利要求1的计算机实现的方法,其中标识由所述请求所寻求的服务此外包括基于与目标服务接口的地址相关联的路由表中的信息来标识由所述请求所寻求的服务,其中所述路由表包括多个服务接口与多个。

4、服务之间的多对多映射。3根据权利要求2的计算机实现的方法,此外包括基于所述路由表中的信息来确定所述服务的当前版本;以及将所述请求路由到所述服务的当前版本。4根据权利要求2的计算机实现的方法,此外包括基于所述路由表中的信息来确定所述服务的当前版本;以及将所述请求路由到所述服务的不同版本。5根据权利要求2的计算机实现的方法,此外包括基于所述路由表中的信息来确定所述服务的操作状态;以及基于所述服务的操作状态来将所述请求路由到所述服务。6根据权利要求2的计算机实现的方法,此外包括基于所述路由表中的信息来确定所述服务的操作状态;以及基于目标服务接口的操作状态和所述服务的操作状态来将所述请求路由到所述服务。

5、。7根据权利要求1的计算机实现的方法,其中标识所述服务此外包括基于目标服务接口的地址来向所述请求者提供EPP问候。8根据权利要求1的计算机实现的方法,其中标识所述服务此外包括基于目标服务接口的地址来确定对请求者访问由所述请求所寻求的服务的授权。9根据权利要求1的计算机实现的方法,其中标识所述服务此外包括基于目标服务接口的地址来确定访问策略;以及基于所述访问策略来确定对请求者访问由所述请求所寻求的服务的授权。10根据权利要求1的计算机实现的方法,此外包括定义在多个服务接口与多个服务之间的多对多映射,其中所述多个服务接口各自都具有唯一的地址。11根据权利要求10的计算机实现的方法,此外包括用所述多。

6、对多映射来更新路由表。12一种用于将使用可扩展供应协议(EPP)接收的请求路由到多个服务的系统,包括处理器;以及通信耦合到所述处理器的存储器;其中所述处理器被配置成权利要求书CN104052828A2/3页3经由EPP从请求者接收要访问来自多个服务中的服务的请求,所述请求经由与目标服务接口相关联的地址而被引导到多个服务接口中的目标服务接口;分析所述请求以确定目标服务接口的地址;基于目标服务接口的地址来标识由所述请求所寻求的服务;以及将所述请求路由到所述服务从而为请求者提供对所述服务的访问。13根据权利要求12的系统,其中所述处理器此外被配置成基于与目标服务接口的地址相关联的路由表中的信息来标识。

7、由所述请求所寻求的服务,其中所述路由表存储在存储器中并且包括在多个服务接口与多个服务之间的多对多映射。14根据权利要求13的系统,其中所述处理器此外被配置成基于所述路由表中的信息来确定所述服务的当前版本;并且将所述请求路由到所述服务的当前版本。15根据权利要求13的系统,其中所述处理器此外被配置成基于所述路由表中的信息来确定所述服务的当前版本;以及将所述请求路由到所述服务的不同版本。16根据权利要求13的系统,其中所述处理器此外被配置成基于所述路由表中的信息来确定所述服务的操作状态;以及基于所述服务的操作状态而将所述请求路由到所述服务。17根据权利要求13的系统,其中所述处理器此外被配置成基于。

8、所述路由表中的信息来确定所述服务的操作状态;以及基于目标服务接口的操作状态和所述服务的操作状态而将所述请求路由到所述服务。18根据权利要求12的系统,其中所述处理器此外被配置成基于目标服务接口的地址来向所述请求者提供EPP问候。19根据权利要求12的系统,其中所述处理器此外被配置成基于目标服务接口的地址来确定对请求者访问由所述请求所寻求的服务的授权。20一种包括指令的非暂时性计算机可读存储介质,所述指令在由设备内的处理器执行时使得所述处理器执行用于将使用可扩展供应协议(EPP)接收的请求路由到多个服务器的方法,所述方法包括经由EPP从请求者接收要访问来自多个服务中的服务的请求,其中所述请求经由。

9、与目标服务接口相关联的地址而被引导到多个服务接口中的目标服务接口;分析所述请求以确定目标服务接口的地址;基于目标服务接口的地址来标识由所述请求所寻求的服务;以及将所述请求路由到所述服务从而为请求者提供对所述服务的访问。21根据权利要求20的非暂时性计算机可读存储介质,其中所述方法此外包括基于与目标服务接口的地址相关联的路由表中的信息来标识由所述请求所寻求的服务,其中所述路由表包括在多个服务接口与多个服务之间的多对多映射。22根据权利要求21的非暂时性计算机可读存储介质,其中所述方法此外包括基于所述路由表中的信息来确定所述服务的当前版本;以及将所述请求路由到所述服务的不同版本。权利要求书CN10。

10、4052828A3/3页423根据权利要求22的非暂时性计算机可读存储介质,其中所述方法此外包括基于所述路由表中的信息来确定所述服务的当前版本;以及将所述请求路由到所述服务的不同版本。24根据权利要求22的非暂时性计算机可读存储介质,其中所述方法此外包括基于所述路由表中的信息来确定所述服务的操作状态;以及基于所述服务的操作状态来将所述请求路由到所述服务。25根据权利要求22的非暂时性计算机可读存储介质,其中所述方法此外包括基于所述路由表中的信息来确定所述服务的操作状态;以及基于目标服务接口的操作状态和所述服务的操作状态将所述请求路由到所述服务。26根据权利要求21的非暂时性计算机可读存储介质,。

11、其中标识所述服务此外包括基于目标服务接口的地址来向所述请求者提供EPP问候。27根据权利要求21的非暂时性计算机可读存储介质,其中标识所述服务此外包括基于目标服务接口的地址来确定对请求者访问由所述请求所寻求的服务的授权。28根据权利要求21的非暂时性计算机可读存储介质,其中标识所述服务此外包括基于目标服务接口的地址来确定访问策略;以及基于所述访问策略来确定对请求者访问由所述请求所寻求的服务的授权。29根据权利要求21的非暂时性计算机可读存储介质,其中所述方法此外包括定义在多个服务接口与多个服务之间的多对多映射,其中所述多个服务接口各自都具有唯一的地址。30一种用于将使用可扩展供应协议(EPP)。

12、接收的请求路由到多个服务的计算机实现的方法,所述方法包括经由EPP从请求者接收要访问来自多个服务中的服务的请求,其中所述请求经由与目标服务接口相关联的地址而被引导到多个服务接口中的目标服务接口;分析所述请求以确定目标服务接口的地址;基于与同所述目标服务接口相关联的地址相关联的路由表中的信息来标识由所述请求所寻求的服务,其中所述路由表包括在多个服务接口与多个服务之间的多对多映射;基于所述路由表中的信息来确定所述服务的操作状态;以及基于所述目标服务接口的操作状态和所述服务的操作状态而将所述请求路由到所述服务,从而为请求者提供对所述服务的访问。权利要求书CN104052828A1/12页5用于EPP。

13、上的智能多对多服务路由的方法和系统0001对相关申请的交叉引用本专利申请是2012年11月19日提交的题为“METHODANDSYSTEMFORINTELLIGENTROUTINGOFREQUESTSOVEREPP”的待决的美国专利申请NO13/681,330的部分继续申请并且要求其优先权,并且被指派或者有义务被指派给与该申请相同的实体并且因此明确地通过引用以其全部被结合。美国专利申请NO13/681,330是2012年12月4日被公布为美国专利NO8,327,019的2009年8月18日提交的美国专利申请NO12/543,462的继续并且要求其优先权,并且同样被指派或者有义务被指派给与该申请。

14、相同的实体并且因此明确地通过引用以其全部被结合。技术领域0002本公开内容一般地涉及通过网络的路由请求。背景技术0003随着互联网使用指数级地增长,对互联网相关服务的需求也在迅速增长。由于对互联网的使用增加,对域名的需求也在迅速增长。因此,对域相关服务的需求也在上升。这样的域相关服务可以包括域名创建、域名注册续期等等。典型地,网站充当用于为域名建立在线存在的主要媒介。为了满足对域名相关服务的该日益增长的需求,提供这些服务的实体以高效且有成本效益的方式这样做是必要的。0004域名系统(DNS)是互联网基础设施的部分,其将人类可读的域名转化成通过互联网建立TCP/IP通信所需的互联网协议(IP)数。

15、字。DNS允许用户使用诸如“WWWEXAMPLECOM”之类的更容易记住的域名,而不是与网站相关联的并被指派给互联网上的计算机的数字IP地址(例如12345678)来指向网站和其它资源。每个域名可以由一系列由点分隔开的字符串(例如,标签)组成。在域名中最右边的标签称为“顶级域(TLD)”。众所周知的TLD的示例有“COM”、“NET”、“ORG”等。每个TLD支持直接列在该TLD左边的二级域,例如在“WWWEXAMPLECOM”中的“EXAMPLE”级。每个二级域可以包括直接位于该二级域左边的多个三级域,例如在WWWEXAMPLECOM中的“WWW”级。0005操作每个TLD的责任(包括维护T。

16、LD内的二级域的注册)被委派给被称为域名注册机构(“注册机构”)的特定组织。该注册机构主要负责通常通过在大型数据库中维护这样的信息的DNS服务器来答复对于与域相关联的IP地址的查询(“解答”),以及操作其顶级域。0006对于大多数TLD而言,为了获取域名,该域名必须通过域名注册商由注册机构注册,所述注册商是被授权代表终端用户来注册互联网域名的实体。可替换地,终端用户可以间接地通过一层或多层转售商来注册域名。注册机构可以接收来自数百个注册商的注册。0007注册商通常具有与注册机构的专用服务连接以便访问域相关的服务,例如域名创建或续期。注册商通常使用可扩展供应协议(EPP)作为与注册机构通信的媒介。

17、以便注册或续期域名。EPP是设计用于通过互联网在注册机构内分配对象的协议。EPP协议基于可扩展标记语言(“XML”),其是一种结构化的基于文本的格式。尽管当前指定的方法是通过传输说明书CN104052828A2/12页6控制协议(TCP)的,但是底层网络输送并不固定。发明内容0008本公开内容的实施例涉及用于对EPP上的服务请求进行路由的系统和方法。具体地,根据各种实施例的路由系统包括多个前端服务接口、一个或多个网关、管理服务器以及提供多个应用服务的后端服务平台。所述前端服务接口通过使用虚拟IP地址(“VIP”)是可寻址的并且可以由网关提供。所述路由系统定义在所述前端服务接口与由所述后端服务平。

18、台提供的一组后端服务之间的多对多映射。请求者可以通过EPP向目标服务接口发送请求以访问一个或多个后端服务,这通过向对应于与目标服务接口相关联的VIP的目标IP或域名发送请求来实现。通过使用所述多对多映射和目标服务接口的VIP,路由系统能够标识由所述请求所寻求的后端服务并且为请求者提供对所述后端服务的访问。0009根据各种实施例的路由系统能够维护多对多映射中的版本号和/或与版本号相关联的操作状态以支持版本测试、版本升级和版本降级或回滚。在一些实施例中,在后端服务需要跨VIP在不同时间表上升级的情况下,可以结合VIP来完成版本化。在附加的实施例中,可以独立于VIP完成版本化。可以向每个后端服务指派。

19、唯一的版本号并且可选地带有针对所述服务的每个版本所定义的操作状态。可以针对网关定义状态机以在使用或不使用VIP作为变量的情况下确定将请求路由到哪个服务。用于后端服务的状态机的实施例可以包括操作状态,诸如,例如不活动、过去、当前和紧接在后。一个或多个网关可以被配置成基于后端服务的具体操作状态来路由服务请求。0010本公开内容的实施例的附加目的和优点将部分地陈述在随后的描述中,并且部分将从该描述中显而易见,或者可以通过实施例的实践而被获知。借助于在随附的权利要求中特别指出的元件和组合将认识到并获得实施例的目的和优点。0011要理解的是,上文的一般描述和下文的详细描述都仅仅是示例性和解释性的,并且不。

20、限制如所要求保护的实施例。附图说明0012图1是与本公开内容的实施例一致的用于服务请求的智能路由的示例系统的框图。0013图2是图示了与本公开内容的实施例一致的示例网关的框图。0014图3描绘了与本公开内容的实施例一致的示例路由表。0015图4是与本公开内容的实施例一致的由智能路由系统执行的用于管理多对多映射并且基于多对多映射而响应于EPP上的服务请求的示例过程的流程图。0016图5是与本公开内容的实施例一致的由所述智能路由系统执行的用于响应于EPP上的服务请求的示例过程的流程图。0017图6是与本公开内容一致的用于执行所公开的实施例的示例计算机系统。具体实施方式0018现在将对示例实施例做出。

21、详细参考,在附图中图示所述示例实施例。在适当时,贯穿附图使用相同的参考数字来指代相同或相似的部分。说明书CN104052828A3/12页70019出于简明和说明性的目的,本公开内容的原理是通过主要参考其示例性实施例而被描述的。然而,本领域普通技术人员将会容易地认识到,相同的原理等同地适用于并且能够被实现在所有类型的信息和系统中,而且任何这样的变型都不脱离于本公开内容的真实精神和范围。此外,在下文的详细描述中,对图示了具体示例性实施例的附图做出参考。可以在不脱离于本公开内容的精神和范围的情况下对所述示例性实施例做出电学的、机械的、逻辑的和结构的改变。因此,下文的详细描述将不以限制性意义被理解并。

22、且本公开内容的范围由随附的权利要求及其等同物所限定。0020本公开内容的各种实施例包括用于对EPP上的请求进行智能路由的系统和方法。根据各种实施例的智能路由系统包括多个前端服务接口、一个或多个网关、管理服务器和提供多个应用服务的后端服务平台,所述应用服务诸如域名注册服务、域名建议服务等等。前端服务接口通过使用虚拟IP地址(“VIP”)是可寻址的并且可以由网关和/或通信耦合到网关的组件(例如网络服务器)提供。0021智能路由系统可以定义在前端服务接口和由后端服务平台提供的一组服务之间的多对多映射。请求者可以通过EPP向前端服务接口的目标服务接口发送请求以访问该组服务中的一个或多个后端服务,这是通。

23、过将所述请求发送或引导到对应于与目标服务接口相关联的VIP的目标IP或域名而实现的。智能路由系统能够通过基于目标服务接口的VIP提供EPP问候(GREETING)来响应于请求。通过使用多对多映射和目标服务接口的VIP,智能路由系统能够标识由请求所寻求的后端服务并且向请求者提供(或拒绝)对后端服务的访问。0022在各种实施例中,多对多映射可以包括与前端服务接口相关联的VIP作为到后端服务的高级路由元素,并且管理服务器可以在主路由表(MASTERROUTINGTABLE)中存储多对多映射。管理服务器可以将主路由表中的多对多映射传播给网关。可替换地或附加地,网关可以从主路由表复制多对多映射。网关中的。

24、任何一个能够基于本地存储在该网关中的路由表中的信息来确定与后端服务相关联的状态信息。网关中的任何一个还能够接收向由服务请求定为目标的一个或多个前端服务接口提出的服务请求,并且通过使用本地存储的路由表以及与所述一个或多个目标前端服务接口相关联的VIP,该网关能够标识由所述请求所寻求的后端服务并且相应地路由(或拒绝)所述请求。0023智能路由系统能够以集中化途径、去集中化途径或混合途径(例如,在集中管理的覆盖的情况下去集中地)生成和/或更新VIP与后端服务之间的多对多映射。在集中化途径中,后端服务能够用管理服务器注册,并且管理服务器能够生成授权路由信息。在去集中化途径中,后端服务能够用管理服务器一。

25、般注册,并且路由映射能够由管理员或由外部路由管理器应用所配置。在混合途径中,后端服务能够发布它们所期望的VIP,并且管理服务器能够覆盖后端服务偏好。0024通过至少部分地基于与前端服务接口相关联的VIP来路由服务请求,智能路由系统能够将不同的客户端策略(例如连接、带宽、安全性/加密、服务质量等)应用于每个VIP。在这样做时,智能路由系统能够基于由服务请求定为目标的前端服务接口的VIP来提供能力的区分化级别和/或应用唯一的客户端或访问策略。例如,返回到针对每个VIP的新连接请求或其它服务请求的EPP问候可以仅包括可用于该VIP的服务。在响应于登录或连接请求时,智能路由系统能够考虑由所述登录或连接。

26、请求定为目标的前端服务接口的VIP。连说明书CN104052828A4/12页8同请求者的IP地址、登录名、密码和数字证书,智能路由系统能够将目标服务接口的VIP用作在做出认证决定时的因素。例如,网关能够基于用户的服务特权通过VIP准许或拒绝认证。网关还能够基于路由表和用户的服务特权来准许或拒绝对后端服务中的一个或多个的路由请求。0025对于智能路由系统而言将会有利的是基于由请求定为目标的前端服务接口的VIP而对EPP上的来自请求者的请求进行路由。例如,注册商和其它客户端能够利用注册机构通过EPP请求服务以便注册和续期域名并且执行其它域名相关的操作。注册机构能够为许多类型的TLD(例如商标TL。

27、D、受调整的TLD、不受调整的TLD等等)提供域名相关的服务,而每个注册商能够为一个或几个类型的TLD请求域名相关的操作。注册机构或其它实体能够为每个注册商提供一个或多个TLD类型特定的VIP用于做出服务请求。注册机构或另一实体还能够提供一个或多个特别的VIP以选择注册商用于做出特定类型的服务请求,诸如批量/自动池。于是,当注册商中的一个向指明用于特定类型的TLD或服务请求的VIP发送服务请求时,智能路由系统能够以对于与所述VIP相关联的所述特定类型的TLD或服务请求适当和/或期望的方式响应于所述服务请求。0026另外,智能路由系统能够降低服务器基础设施的成本,因为相同组的网关和后端服务平台可。

28、以被用于提供多种离散后端应用服务。智能路由系统还能够降低对于请求者和其它客户端的复杂性水平,因为智能路由系统简化了请求域名相关服务所需的连接池。此外,智能路由系统能够自然地操纵唯一的客户端或访问策略而无需创建服务的附加栈(例如网关、后端服务平台等等)。智能路由系统还能够增加对新的后端服务的采纳,因为智能路由系统能够向请求者提供新的后端服务而无需请求者连接到新的服务接口。0027在各种实施例中,智能路由系统能够维护与多对多映射中的后端服务相关联的版本号和/或操作状态以支持版本测试、版本升级以及版本降级或回滚。在一些实施例中,智能路由系统在路由服务请求时能够将与后端服务相关联的版本号和/或操作状态。

29、作为因素,而不将与后端服务相关联的VIP作为因素。在附加的实施例中,在一个或多个后端服务需要跨VIP在不同时间表上升级的情况下,智能路由系统能够在路由服务请求时将与后端服务相关联的版本号和/或操作状态连同它们相关联的VIP一起作为因素。可以向每个版本的后端服务指派唯一的版本号并且可选地带有操作状态。可以为网关定义状态机以在使用或不使用VIP作为变量的情况下确定将请求路由到哪个服务。用于后端服务的状态机的实施例可以包括操作状态,诸如,例如不活动、过去、当前和紧接在后。一个或多个网关可以被配置成将服务请求路由到具有特定版本号或操作状态的服务,像一组网关能够被配置成取样(SNIFF)测试“紧接在后”。

30、状态,而正常产生网关(PRODUCTIONGATEWAY)将被配置成仅用于“当前”状态。如果有在做出回滚决定前对服务进行故障检修的需要,则网关可以被配置成用于“过去”状态。“不活动”状态可以充当在取消部署不活动版本的服务之前用于不活动版本的服务的终端状态。0028对于智能路由系统将会有利的是维护与后端服务相关联的版本号和/或操作状态,并且至少部分地基于与由请求所寻求的后端服务相关联的版本号和/或操作状态而对EPP上的请求进行路由。通过维护与后端服务相关联的版本号和/或操作状态,智能路由系统能够支持版本测试、版本升级和版本降级或回滚,并且允许新的后端服务的选择性暴露。另外,在这样做时,智能路由系。

31、统能够无缝地操纵后端服务升级而不负面地影响请求者和说明书CN104052828A5/12页9其它客户端,因为请求者能够在后端服务升级期间维护到前端服务接口和网关的连接。由于具有在没有或最小停机时间或中断的情况下对服务进行版本测试和对服务进行无缝升级的能力,这促进后端服务平台开发和部署新服务,从而增强被提供给请求者的服务并且增大后端服务平台的竞争性优势。0029图1图示了用于将通过EPP接收的服务请求智能路由到一个或多个服务的示例系统100,其与本公开内容的原理一致。在其示例被示出在图1中的各种实施例中,系统100包括前端服务接口110AN和网关120AN。服务接口110AN通过使用VIP是可寻。

32、址的并且能够发挥到系统100中的服务入口点的作用。请求者能够通过EPP向目标服务接口(例如服务接口110AN中的一个)发送服务请求,这是通过将所述请求发送或引导到对应于与所述目标服务接口相关联的VIP的目标IP或域名而实现的。0030网关120AN能够路由在服务接口110AN处接收的来自一个或多个请求者的服务请求。网关120AN和/或通信耦合到网关120AN的组件(例如网络服务器)能够提供服务接口110AN。分别本地存储在网关120AN中的路由表125AN各自是在服务接口110AN与由后端服务平台150提供的一组服务155AN之间的多对多映射。路由表125AN能够包括与服务接口110AN相关联。

33、的VIP作为到该组服务155AN的高级路由元素。网关120AN能够使用存储在路由表125AN中的信息以确定与该组服务155AN相关联的状态或状态信息。例如,网关120AN能够经由服务接口110AN接收连接请求,并且至少部分地基于由请求定为目标的服务接口110AN的VIP来提供EPP问候。当响应于登录和/或连接请求时,网关120AN能够考虑由所述登录和/或连接请求定为目标的服务接口110AN的VIP。连同请求者的IP地址、登录名、密码和数字证书,网关120AN能够将目标服务接口的VIP用作在做出授权或认证决定时的因素。例如,网关120AN能够在由请求定为目标的服务接口的VIP被列在它的路由表中作。

34、为被授权访问一个或多个后端服务时准许访问服务155AN中的一个或多个后端服务的请求。0031网关120AN能够使用路由表125AN来至少部分地基于与由服务请求定为目标的服务接口110AN相关联的VIP来标识由服务请求所寻求的服务155AN。在标识所寻求的服务155AN之后,网关120AN能够将服务请求路由到(一个或多个)所标识的服务155AN。网关120AN可以与能够通过EPP传输服务请求的外部系统和网络通信。正如之前所描述的,用于EPP的默认输送是TCP。然而,网关120AN能够被配置成通过超文本传送协议(“HTTP”)、安全HTTP(“HTTPS”)或其它网络协议接收和传输EPP消息。网关。

35、120AN中的每一个可以是具有必备功能能力的任何网关,诸如是例如,如在图2中示出并且在下文更详细描述的网关200。0032在各种实施例中,路由表125AN能够存储与多对多映射中的服务155AN中的一个或多个相关联的版本号和/或操作状态。所存储的版本号和/或操作状态可以支持版本测试、版本升级和版本降级或回滚。在后端服务155AN需要跨VIP在不同时间表上升级的情况下,网关120AN可以结合VIP执行依赖于版本的路由。可替换地,网关120AN可以独立于VIP而执行依赖于版本的路由。可以向服务(例如服务155AN中的一个)的各版本各自指派唯一的版本号和可选地指派操作状态。可以为网关120AN定义状态。

36、机以在使用或不使用VIP作为变量的情况下确定将请求路由到服务的哪个版本。用于服务的状态机的实施例可以包括操作状态,诸如,例如不活动、过去、当前和紧接在后。说明书CN104052828A6/12页100033如图1中所示,系统100可以此外包括管理服务器130和后端服务平台150。管理服务器130、后端服务平台150和网关120AN可以经由网络145通信耦合。网络145可以包括一个或多个有线或无线通信网络的任何组合,诸如局域网、近场通信链路或网络、广域网、蜂窝网络、互联网、基于云的网络等等,或者其任何组合。管理服务器130能够维护主路由表135,其包含在与服务接口110AN相关联的VIP与由后端。

37、服务平台150提供的服务155AN之间的多对多映射。管理服务器130能够通过将主路由表135中的多对多映射传播到网关120AN来管理存储在网关120AN中的路由表125AN。附加地和/或可替换地,管理服务器130能够通过允许网关120AN复制主路由表135中的多对多映射来管理存储在网关120AN中的路由表125AN。0034管理服务器130能够以集中化途径、去集中化途径或混合途径(例如,在集中地管理的覆盖的情况下去集中地)生成和/或更新VIP与后端服务之间的多对多映射。在集中化途径中,服务155AN能够用管理服务器130注册,并且管理服务器130能够为服务155AN生成授权路由信息。在去集中化。

38、途径中,服务155AN能够用管理服务器130一般注册,并且路由映射能够由外部路由管理器应用所配置或者基于由服务155AN提供的偏好。在混合途径中,服务155AN能够发布它们所期望的VIP,并且管理服务器130能够覆盖由服务155AN提供的偏好。0035在各种实施例中,管理服务器130能够管理服务155AN并且存储或提供与服务155AN中的一些或全部有关的信息。服务155AN中的每一个都能够将它唯一的信息传送到管理服务器130。管理服务器130可以是与服务155AN有关的信息的仓库。由服务155AN中的每一个提供的信息可以包括其名称、授权的和/或优选的(一个或多个)VIP、版本号、操作状态、连接。

39、性信息等等。对于服务155AN中的每一个的附加的服务相关信息可以包括关于其EPP处理机(HANDLER)、EPP轮询(POLL)处理机和EPP扩展的信息。系统管理员可以使用管理服务器130上的管理员用户接口(UI)或应用编程接口(API)对服务155AN中的任何一个进行更新。在系统管理员对服务155做出改变后,管理服务器130能够自动地将对该服务155所做出的改变传送到网关120AN。管理服务器130能够将该信息推送到网关120AN。可替换地或附加地,网关120AN能够轮询管理服务器130以收集关于服务155AN的信息。网关120AN中的每一个能够将该信息本地存储在它们对应的路由表125AN中。

40、。0036管理服务器130能够对服务155AN中的每一个执行各种操作,诸如启用、禁用、添加、删除、修改等等。管理服务器130还能够将相关服务组织成服务群组。例如,CTLD可以是带有与作为服务群组的部分而被包括的DOTTLD1、DOTTLD2和DOTTLD3中的每一个相关联的单独服务的服务群组。系统管理员能够具有这样的能力,即将服务群组作为单个实体来控制并且作为整体地对服务群组执行诸如启用、禁用、升级等之类的操作。管理服务器130可以是具有必备功能能力的任何计算机系统,诸如,如在图6中示出并且在下文中更详细描述的计算机系统600。0037后端服务平台150可以是用于提供一个或多个服务155AN的。

41、规模可变(SCALABLE)的、容错的平台。后端服务平台150可以使用一个或多个协议来经由网络145与网关120AN和管理服务器130通信,并且可以被配置成为多个服务155AN的主机。虽然未示出,但是后端服务平台150可以包括用来存储与服务155AN有关的信息的一个或多说明书CN104052828A107/12页11个数据库以及使得用户能够向管理服务器130提供输入以控制和/或管理诸如维护、升级等之类的活动的用户接口。服务155AN可以要么是由注册机构提供的单独服务(例如域名注册服务、域名建议服务等)要么是具有被包括在每个类别中的单独服务的服务类别。服务155AN中的每一个可以能够与网关120。

42、AN中的至少一个网关以及管理服务器130通信。服务155AN中的每一个可以具有与其相关联的唯一信息,诸如其名称、授权和/或优选的(一个或多个)VIP、版本号、操作状态、连接性信息、EPP处理机、EPP轮询处理机、EPP扩展等。在不影响后端服务平台150或其它服务155的正常功能的情况下,可以部署新服务155,并且可以修改或取消部署现有服务155。后端服务平台150可以使用具有必备功能能力的一个或多个通用目的服务器来实现,诸如,如在图6中示出并且在下文中更详细描述的计算机系统600。可以用集群配置来实现后端服务平台150,其中每个服务集群服务器包括多个服务或服务类别。例如,J2EE集群可以被用于。

43、组织服务155AN。在这样的实例中,服务集群服务器URL可以指向包括所期望的服务的服务集群服务器,并且服务对象标识符可以被用来标识由该服务器作为主机的特定服务。0038另外,尽管在本文中参考特定块描述系统100,但是要理解的是,这些块是为了描述的便利而定义的,并且不旨在暗示组件部分的特定物理布置。另外,系统100可以具有未在本文中具体描述的其它能力。将意识到的是,在本文中描述的系统配置和组件是说明性的,并且变型和修改是可能的。服务接口110AN、网关120AN、管理服务器130、网络145和服务平台150可以具有未在本文中具体描述的其它能力。0039图2图示了用于将通过EPP接收的服务请求智能。

44、路由到一个或多个服务的示例网关200,其与本公开内容的原理一致。在其示例被示出在图2中的各种实施例中,网关200可以包括网络接口模块(“NIM”)201。NIM201可以被配置成使用常规的有线或无线介质中的任何一个与外部系统和网络通信。NIM201能够提供前端服务接口,所述前端服务接口通过使用VIP是可寻址的。此外,NIM201可以能够接受通过诸如例如TCP/IP、HTTP、HTTPS等之类的互联网协议套组中的任何协议经由EPP递送的来自外部系统的传入请求。NIM201可以通信耦合到接收模块202,并且被配置成将传入的EPP请求传输到接收模块202。0040接收模块202能够通过确定请求的结构。

45、并且将所确定的请求结构与标准或已知EPP结构相比较来核实传入的请求是EPP请求。接收模块202可以通信耦合到分析模块203,其能够从接收模块202接收传入的请求并且分析该请求。在各种实施例中,接收模块202和/或分析模块203能够确定请求最初被引导到的目标服务接口(例如服务接口110AN中的一个)的VIP。请求者能够通过向对应于与目标服务接口110相关联的VIP的IP地址或域名发送请求而将该请求引导到目标服务接口。0041请求还可以包括XML代码,其包括XML名称空间信息。XML名称空间可以提供简单的方法,用于通过将XML文档中使用的元素和属性名称与由统一资源标识符(“URI”)参考所标识的名。

46、称空间关联起来,从而使XML文档中所使用的元素和属性名称取得资格。XML名称空间可以被用于提供XML实例中唯一命名的元素和属性。由请求所寻求的服务的名称可以作为元素和/或属性信息的部分而被包括。分析模块203能够解析XML代码以提取XML名称空间信息并且基于所述名称空间信息来标识正由特定请求所寻求的至少一个服务。例如,名称空间信息可以与名称建议服务相关联。在这样的示例中,对包括在该请求中的XML代码的解析将会指示该请求旨在用于名称建议服务。除了XML名称空间信息之外,XML代码说明书CN104052828A118/12页12还可以包括EPP子产品信息。在这样的实例中,XML名称空间信息可以对应。

47、于服务类别(例如域名服务),并且子产品信息可以指定该服务类别内的特定服务(例如DOTTLD域服务或名称建议服务)。分析模块203还可以被配置成解析被包括在请求中的XML代码以确定名称空间信息和EPP扩展子产品元素。0042路由模块204可以从接收模块202或分析模块203接收目标服务接口110的VIP,并且至少部分地基于目标服务接口110的VIP来标识由请求所寻求的服务155。可替换地或附加地,路由模块204可以被配置成仅从具有特定版本号或操作状态的服务155中标识由请求所寻求的服务155。在一些实施例中,路由模块204可以咨询路由表205以基于目标服务接口110的VIP和/或所请求的服务15。

48、5的版本号或操作状态来确定所请求的服务是否可用于请求者。路由模块204可以从分析模块203接收经解析的XML,包括对由请求所寻求的服务的指示。在一个示例实施例中,可以基于VIP或网关120的模式或状态设定来确定目标服务155。如果有在具有“过去”、“活动”和“紧接在后”的操作状态的表格中具有多个入口的服务,则所选择的服务155可以基于被定义用于该网关120或VIP的操作状态,其可以被设定成受支持的操作状态中的任何一个。例如,网关120可以被配置成仅路由到具有“紧接在后”的操作状态的服务155,或者网关120可以被配置成支持所有操作状态。然而,在任一种情况下,每个VIP可以用操作状态来定义。另外。

49、,在一些实施例中,一个VIP可以被配置成路由到具有“紧接在后”的操作状态的服务,并且另一VIP可以被配置成路由到具有“活动”的操作状态的服务。路由模块204能够通过参考路由表205来标识由请求所寻求的服务,这在下文中更详细地描述。路由表205可以在路由模块204的内部或外部。除了状态信息之外,路由模块204还可以查明关于服务的其它信息,例如连接性信息、服务名称等,以便恰当地路由请求。路由模块204还可以被配置成根据正被寻求的服务的标识来路由请求。在某些实施例中,网关状态和/或VIP状态将会在路由表205外定义。0043可以使用诸如盘、闪速存储器等等之类的任何非暂时性计算机存储介质来实现存储装置。

50、206。存储装置206能够存储路由表205,并且还能够存储其它信息,像用于提供前端服务接口、分析传入的服务请求、确定与由服务请求定为目标的服务接口相关联的VIP、执行XML代码分析、路由服务请求等等的程序指令。可以被实现为一个或多个集成电路(例如常规微处理器或微控制器)的CPU207能够控制网关200的操作。CPU207能够检索存储在存储装置206中的一个或多个程序指令,并且执行所述一个或多个程序以指令和/或使得分析模块203和/或路由模块204执行某些功能。0044另外,虽然在本文中参考特定块描述了网关200,但是要理解的是,这些块出于描述的便利而定义,并且不旨在暗示组件部分的特定物理布置。。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 电学 > 电通信技术


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1