管理专用网络之间的网络服务的系统和方法

文档序号:7958720阅读:150来源:国知局
专利名称:管理专用网络之间的网络服务的系统和方法
技术领域
本发明通常涉及网络服务,并且特别涉及专用网络之间网络服务的管理。
背景技术
通过通信网络针对其分配信息的服务通常称作网络服务。所谓的“web服务”是网络服务的例子,并且代表了下一代基于web的技术,该技术用于在公共互联网上的不同应用之间自动交换信息。
Web服务是用于构建互联网上的基于web的分布式应用的构架。其提供了高效且有效的自动机制,以实现多个全球企业之间的通信。这种自动化将来自技术公司的基于技术的过程和商业效率,带给国际领先的非技术公司,例如零售公司。虽然使用传统处理技术处理定单可能需要120美元,其中需要提供商花费时日来处理仓库中的重新进货定单,然而新的基于web服务的系统可以用半美分来进行该工作,并且可以在几秒内越过全球分配定单给仓库。
从技术的角度出发,web服务类似于应用服务,这在于它们是可以使用标准互联网协议通过标准接口接入的网络可接入功能,所述协议例如是超文本传输协议(HTTP)、可扩展置标语言(XML)、简单对象访问协议(SOAP)等。
通过可能来自公共互联网中任何地方的几段代码和数据来构建Web服务应用。例如,在自动化供应链管理中,通过货币代理来清除存储前购买(store front purchase),重新进货的定单被直接发送给工厂,并且由每个总公司利用自己的软件系统收集计费信息。
Web服务技术的实际能力在于其简单性。核心技术仅解决通用语言和通信问题,而不直接解决应用集成的繁重任务。Web服务可以被看作是复杂的机构(machine),以实现远程过程调用(RPC)技术,用于互连多个不同的不可信系统。Web服务通过使用用于数据转换/透明性的XML技术和用于通信的例如超文本传输协议的互联网标准,来吸取许多新技术的优势。
Web服务已经在企业专用网络范围内获得了成功,很快成为应用进行通信的标准方式。然而,多数当前的web服务是由应用服务器来管理的,该应用服务器位于公司企业网络的防火墙后面。
在基本互联网基础设施之上、在企业范围之内或之外支持web服务交互的努力,集中于特定设计法(ad-hoc approach)。根据一个方法,不同企业必须对于使用兼容的应用、公共所有的软件、定制接口和API以及公共通信协议达成一致,其中在所述不同企业之间提供web服务。企业也必须对于数据安全和管理任何安全通信的方式达成一致。此外,每个企业必须开启其内部防火墙,以使商业业务以点对点方式在应用之间流动。
在企业环境中添加新的web服务商业合作方,一直是困难、昂贵且耗时的过程,这是因为潜在的新商业合作方趋于具有不同的规则和标准的集合。通常需要对新合作方的应用的修改,以及对提供新应用的企业的定制代码修订。
现在对于配置并管理端到端虚拟(专用)外部网络web服务结构而言,不存在已知的部署和管理解决方案,这是针对与企业空间相反的通信网络提供商的空间。例如,尽管存在XML虚拟专用网(VPN)设备,然而这些设备旨在防火墙之后的企业网络中的实现。
也不存在用于提供穿过网络提供商边界的端到端网络服务、同时保护涉及网络服务相关的商业交易的所有系统的现有网络服务传送解决方案。
在具有各种策略/安全/许可控制需求的大量企业希望通过同一核心网提供或消费web服务的情况下,致力于提供商核心市场的现有基于软件的安全产品,或较小容量的基于硬件的企业级产品,不能达到(scale to)核心网需求。包括基于服务器的结构和硬件XML设备的企业级产品,也典型地不能满足通信网络核心设备的高可用性和速度需求。

发明内容
本发明的实施例提供了连接专用服务网络的新的网络单元。由每个服务网络客户端所提供的、说明性地是web服务的网络服务,在所述服务网络中可用,并且根据本发明的实施例,可以在另一个服务网络中提供在一个服务网络中可用的网络服务,并且由该另一个服务网络的客户端来消费该网络服务。
在一些实施例中,这种新的网络单元提供了专用外部网服务结构之间的网关。每个外部网结构在被网络服务提供商管理时,实际上是提供给封闭成员组的 “服务网络”。外部网络服务模型优选地是应用层解决方案,一种构建在网络提供商基础设施之上的覆盖网络。
本发明的一个方面提供了一种用于管理专用服务网络中的网络服务的装置。所述装置包括代理模块,配置该代理模块以接收网络服务的网络服务信息,其中该网络服务在服务网络中可用并具有关联的网络服务接入策略,该策略针对外部网络中的网络服务分配而指明了允许接入的级别,并且配置该代理模块以根据与网络服务相关联的网络服务接入策略来控制向外部服务网络通告(advertisement)网络服务信息。
所述接入策略可以是存储在专用服务网络的服务策略注册表(registry)中的服务策略。
在一些实施例中,还配置所述代理模块以从外部服务网络接收与外部服务网络中可用的外部网络服务相关联的网络服务信息,并且使得该外部网络服务在服务网络中可用。例如,通过在服务网络的服务注册表中发布外部网络服务,可以使所述外部网络服务在服务网络中可用。可以配置服务注册表以存储信息,所述信息关联于服务网络中可用的内部网络服务以及从外部服务网络可用的外部网络服务二者。
在关联于外部网络服务的网络服务信息包括针对控制到外部网络服务的接入来指定接入规则的接入信息的情况下,所述代理模块根据该接入规则使该外部网络服务在服务网络中可用。
服务网络可以包括网络控制器,并在所述情况下所述代理模块可以是网络控制器代理模块,配置该代理模块以从网络控制器的网络服务通告模块接收网络服务信息。所述代理模块针对网络控制器的通告模块与外部服务网络之间的网络服务,来协调(mediate)网络服务描述的通告。
与外部服务网络中可用的外部网络服务相关联的服务信息,可以由代理模块来接收并被转发给服务网络,并且特别被转发给例如网络控制器。
所述装置也可以包括以下模块中任一或所有模块策略执行(enforcement)模块,其被配置用来执行服务网络的策略;安全模块,其被配置用来提供服务网络与外部服务网络之间以及服务网络内的安全通信;转发模块,其被配置用来从服务网络向外部服务网络转发通信业务;简单对象访问协议(SOAP)代理模块,其被配置用来使关联于的网络服务服务消息在所述服务网络和外部服务网络的寻址(addressing)方案之间适配;服务处理模块,其被配置用来处理来自所述服务网络和外部服务网络二者、与网络服务相关联的网络服务消息;以及数据收集器模块,用于收集所述服务网络与外部服务网络之间的交易的记录(log)。
所述SOAP代理模块还可以将与网络服务相关联的业务分类为控制业务或数据业务、将包括被接收网络服务信息的控制业务发送到所述代理模块以传送给外部服务网络,并且修改数据业务中SOAP信息用于进一步处理。
所述装置例如可以实现在服务网络网关中,该网关有效地耦合到服务网络及外部服务网络。一种用于管理专用服务网络的网络服务的系统可以包括一个或多个服务网络网关,其中每个网关都有效地耦合到服务网络及各个外部服务网络。可以在所述系统中提供至少一个网络控制器,该至少一个网络控制器包括有效耦合到至少一个服务网络网关的指定网络控制器,以管理网络服务接入策略,该策略关联于服务网络中可用的网络服务和服务网络中可用的网络服务的注册表。
根据一个实施例,所述指定网络控制器包括被配置用来识别网络服务的网络服务通告模块,其中所述网络服务在服务网络中可用并具有允许在外部网络中分配网络服务的关联的网络服务接入策略,并且配置该网络服务通告模块以产生包括与被识别网络服务相关联的网络服务信息的通告信息。
每个外部服务网络可以包括服务注册表,在该注册表中发布了从服务网络被通告给外部服务网络的网络服务。
可以进一步配置每个服务网络网关的代理模块,以从与其有效耦合的外部服务网络接收与外部服务网络中可用的外部网络服务相关联的网络服务信息,并且使外部网络服务在服务网络中可用。
其它网关也可以在服务网络中被提供,并且有效耦合到网络控制器,在服务网络包括不止一个网络控制器的情况下,所述网络控制器可以是指定网络控制器或另一个网络控制器。例如,客户端网关针对服务网络的客户端来提供到服务网络的接入点。与客户端网关有效耦合的网络控制器管理要由客户端网关执行的策略,以控制客户端接入网络服务;公共网络网关针对服务网络的客户端通过公共网络提供到服务网络的接入点、在公共网络中针对服务网络的客户端提供到网络服务的接入点,或提供二者。对于公共网络网关,网络控制器管理要由公共网络网关执行的策略,以控制客户端通过公共网络接入外部服务网络和网络服务。
外部服务网络可以具有基本相似的结构。
根据本发明的另一方面,一种用于管理专用服务网络中的网络服务的装置包括代理模块,配置该代理模块以从外部服务网络接收与外部服务网络中可用的外部网络服务相关联的网络服务信息,并使外部网络服务在服务网络中可用。
可以例如在服务网络网关中提供所述装置,该服务网络网关有效地耦合到服务网络及外部服务网络。也可以提供服务网络的网络控制器以管理服务网络中可用的内部网络服务和外部服务网络中可用的外部网络服务的注册表,其中所述服务网络网关针对该外部网络服务来接收信息。
根据本发明的又一个方面,也提供了一种包括网关接口和网络服务通告模块的装置。该网关接口有效耦合到服务网络网关,配置该服务网络网关以在服务网络和外部服务网络之间交换通信业务。网络服务通告模块有效耦合到服务注册表和网关接口,并且配置该网络服务通告模块以通过网关接口从服务网络网关接收与外部服务网络中可用的网络服务相关联的外部网络服务信息;发布外部网络服务给服务注册表;识别内部网络服务,该内部网络服务在服务网络中可用并具有允许在外部服务网络中分配网络服务的关联的网络服务接入策略;以及产生与被识别内部网络服务相关联的通告信息并通过网关接口转发该通告信息给服务网络网关,所述通告信息包括用于将被识别内部网络服务通告给外部服务网络的信息。
优选地在服务网络的网络控制器中提供本发明所述方面的装置。
也提供了一种管理专用服务网络之间的网络服务的方法,所述方法包括以下操作识别服务网络中可用的网络服务,其中该网络服务具有指明网络服务的允许接入级别的关联的网络服务接入策略;向外部服务网络通告被识别网络服务,其中与被识别网络服务相关联的网络服务接入策略允许从外部服务网络接入被识别网络服务;从外部服务网络接收与外部服务网络中可用的外部网络服务相关联的网络服务信息;以及使外部网络服务在服务网络中可用。
可以作为服务策略而在服务网络的服务策略注册表中存储接入策略,并且在所述情况下,所述方法还可能包括这样的操作访问该服务策略注册表中的关联于被识别网络服务的网络服务接入策略。
所述使外部网络服务在服务网络中可用的操作,包括在服务网络的服务注册表中发布外部网络服务。
在一些实施例中,所述识别操作包括访问服务网络的服务注册表,以识别服务网络中可用的内部网络服务,并且所述使外部服务可用的操作包括在服务注册表中发布外部网络服务。
通过查看以下指定说明性实施例的描述,本发明的其它方面和特征对于本领域的技术人员将变得显而易见。


下面将参考附图详细描述本发明实施例的例子,其中图1是包括本发明实施例的通信系统的框图;图2是示例性客户端网关的框图;图3是示例性网络控制器的框图;图4是示例性服务网络边界网关的框图;图5是根据本发明实施例的方法的流程图;以及图6是包括本发明另一个实施例的通信系统的框图。
具体实施例方式
图1是包括本发明实施例的通信系统的框图。通信系统10包括企业系统12、移动终端用户系统13、客户端网关16、包括通常标记为18的数据业务交换和路由部件及网络控制器28的服务网络20、服务网络网关26、22以及服务网络23。
尽管许多企业系统12和/或例如移动终端用户系统13的终端用户系统可以被连接到客户端网关16,并且许多客户端网关16和服务网络网关26也可以位于服务网络20的边界,然而图1为避免拥塞仅示出了这些部件中每一个的例子。因此应当认识到,图1的系统以及其它图的内容仅出于说明的目的,并且本发明决不限于图中明确示出并在这里描述的特定示例性企业系统12代表了专用网络,该专用网络可以提供、使用或提供并使用遍及服务网络20被提供并管理的web服务应用。在典型的装备中,企业系统包括以下部件提供外部接入控制并过滤进入企业的外部业务的防火墙、业务交换和路由设备、一个或多个支持网络服务的服务器,以及说明性地为个人计算机的用户终端。公司专用网络是企业系统12的一个例子。
移动终端用户系统13说明性地是客户端系统,该客户端系统不是指定企业系统的一部分。终端用户系统可以如所示地是移动或固定的。移动终端用户系统13可以例如通过web服务移动网关连接到客户端网关。移动终端用户系统13以及固定终端用户系统可以替代地物理连接到客户端网关16。便携式计算机系统在其可以在接入网络中通过不同位置和物理连接而连接到客户端网关的意义上,是移动的。
本领域的技术人员熟悉许多不同类型的提供和/或使用网络服务的企业系统以及终端用户系统。本发明的实施例主要涉及在企业环境之外管理专用和公共网络服务,这与这些服务如何在企业系统12中被实际支持或如何用于例如移动终端用户系统13的终端用户系统中相反,并且因此这里仅在理解本发明的方面所必需的程度上简要描述了企业系统12、移动终端用户系统13和它们的操作。
在企业系统12和移动终端用户系统13中的、可以例如作为软件应用被实现的虚拟外网服务入口,允许终端网络服务提供商和用户与服务网络20进行交互。服务入口允许用户登录服务网络,并借助于联合身份或另一个认证方案来利用服务网络认证其自身,并且也可以实现其它附加能力,例如显示各种服务列表、描述等,而不影响终端用户如何提供和/或消费网络服务。
连接14、15可以是如图1所示的直接连接或间接连接,该间接连接通过中间部件和可能的通常这里称作接入网络的其它通信网络。然而,本发明不限于在企业系统12、移动终端用户系统13和客户端网关16之间的网络连接或任何其它特定类型的连接。连接14、15因而可以包括任何直接、间接、有线和无线连接。
由客户端网关16针对企业系统12和移动终端用户系统13,提供到服务网络20的接入。客户端网关16是服务网络提供商基础设施中的边缘设备,并且代表了服务网络20所提供的虚拟外部网络服务中的网关。客户端网关16其实是安全网络服务代理设备,其用于实现web服务网关功能,支持网络服务和web服务XML“标准”的代理以及新的特征。根据一个实施例,客户端网关16是至少部分上利用硬件所实现的高性能设备,并且被配置用于利用由服务网络提供商进行部署的嵌入式软件如这里公开地进行操作。下面参考图2详细描述客户端网关16的说明性例子。
从上述内容可以明显看到系统10中包括几种类型的服务提供商。例如由企业系统12提供网络服务。其它不同服务提供商提供服务网络20、23。网络服务提供商因此针对企业系统12提供网络服务,并且服务网络20、23的提供商提供实现服务网络的另一个服务给网络服务提供商,其中在所述服务网络中网络服务提供商使位于其本身专用系统之外的网络服务用户可以使用网络服务。
网络服务的提供商这里主要称作网络服务提供商,并且服务网络的提供商主要称作服务网络提供商。因此,网络服务提供商提供一个或多个网络服务,而服务网络提供商允许这些外部提供的网络服务,说明性地在虚拟外部网络中。在许多实现中,期望服务网络提供商也拥有或操作其上构建服务网络的基础通信网络,尽管不必在本发明的所有实施例中都是这种情况。
网络控制器28提供服务管理器的控制平面功能,并且可以被实现为要由通信网络的操作者来部署的网络定标(scale)设备,说明性地是边缘路由器的专用卡或专用XML设备。其用于管理虚拟外部网络服务,针对虚拟外部网络中发布的所有web服务、策略、服务级协议(SLA)以及其它网络监控数据来掌管(host)中心储存库,并针对端到端网络服务应用保护、管理、提供及储存策略。下面参考图3作为说明性例子进一步详细描述如客户端网关16的网络控制器28。
数据业务通过通常标记为18的数据交换和/或路由设备而穿过服务网络20。尽管控制/管理业务是由网络控制器28来处理的,然而数据业务是由客户端网关16来处理的,并且从那里由交换/路由部件18来处理。
服务网络20、23优选地被实现为虚拟外部网络结构。尽管图1中没有明确示出服务网络23的细节,然而应当认识到,服务网络23在结构和操作上基本类似于服务网络20。
在一个实施例中,虚拟外部网络代表基本网络基础设施上构建的虚拟网和虚拟网络上的应用级覆盖网络,作为一种私人管理的服务网络,该服务网络使用例如互联网技术和基础第1、2、3和4层技术,以安全地与多个企业共享部分企业信息或操作,所述多个企业包括例如提供商、销售商、合作方、客户端或其它企业。尽管虚拟网络可以利用物理网络上的分离路由平面中的IP路由来规定同步通信,然而应用级覆盖可以使用应用级路由器,以提供该服务网络中基于内容的发布-订阅路由。
所述情况中的服务网络20、23的虚拟网络代表了一种虚拟网络结构,其可以利用第1或2层转发、通过XML路由器设备所进行的IP路由和/或应用级路由来被实现。虚拟外部网络可以提供例如请求/响应的同步通信以及异步通信的连通性和机制。
可以利用应用级路由器来实现服务网络20、23的虚拟网络中的应用级覆盖,所述路由器例如是XML路由器。应用级路由器利用基本的标准联网设施(networking facility)来相互通信,并且与应用级的终端客户端通信。XML路由器典型地利用例如传输控制协议(TCP)的可靠的点对点字节流来相互连接,以实现可靠的多播。应用级覆盖的主要功能是提供基于连通性和异步内容传送的客户端兴趣,例如订阅/发布。
相比传统的专用网络服务共享技术而言,利用覆盖来构建服务网络20、23为虚拟网络,允许相对容易地修改并部署服务网络20、23。覆盖服务网络也是构建能有效路由XML分组的稳健(robust)网格的有效方式。
本发明所属领域的技术人员熟悉许多不同类型的通信网络,其中可以在该通信网络上覆盖分离的逻辑路由平面和应用层网络。本发明决不限于结合具有任何特定类型基本通信网络的服务网络的实现。
服务网络网关26、22代表这样的网络设备用于连接由不同网络提供商提供的两个外部网络服务,服务网络20、23。每个外部网络服务被实现在每个网络提供商的核心网中,并且因此在不同的管理域中。服务网络网关26、22允许网络服务数据业务从一个服务网络被转发到另一个服务网络,并且也允许网络服务控制业务交换。每个服务网络网关26、22实现服务的网关到网关交换功能,并且提供与其它服务网络网关的安全通信通道。服务网络网关26、22由此提供一种用于网络服务业务穿过多个网络提供商的网络的机制。
尽管图1示出了在每个服务网络20、23中的各个边界网关26、22,然而在一些实施例中,单个服务网络网关可能跨越两个服务网络。
服务网络网关26、22的主要目的是支持服务网络20与服务网络23的网络服务之间的协作(interworking),同时提供方法用于服务记录、交易审计、定制的服务发布、端点计费、服务管理、接入策略执行、内容完整性和机密性以及客户端应用保护。因此可以认为服务网络网关26、22是服务网络20、23的服务协调和传送点。如这里进一步详细公开的,服务网络网关26、22可以提供到网络服务的安全接入,其中由服务网络20、23中任一个的网络服务用户客户端在服务网络20、23中掌管所述网络服务,说明性地通过根据服务和管理策略在另一个服务网络的服务注册表中发布由每个服务网络的客户端所提供的网络服务。
如客户端网关16,服务网络网关26、22可以是提供web服务网关功能的安全网络服务代理设备,并且可以被实现为高性能的基于硬件的边缘设备,配置该边缘设备以利用由服务网络提供商进行部署的嵌入式软件来如这里公开地进行操作。下面参考图4作为说明性例子描述服务网络网关26、22。
连接24可以包括任何直接、间接、有线和无线的连接,优选地是安全隧道。许多隧道化技术的例子以及用于提供安全通信的其它机制,对于本领域的技术人员是显而易见的。
在操作中,服务网络20使企业系统12所提供的网络服务对于用户是可接入的,该用户以被管理且安全的方式并利用灵活的应用程序接口而连接到服务网络20。这些用户可以包括企业系统12中的用户、其它客户端企业或终端用户,例如通过客户端网关22或另一个客户端网关连接到服务网络20的移动终端用户系统13。通过支持通信协议的客户端网关16以及支持网络、服务和客户端管理功能的网络控制器28,来支持由服务网络20所实现的服务。
服务网络20的构架可以被分为三个领域,包括通信协议、服务描述和服务发现。在一个实施例中,服务网络20使用已经针对所述每个领域开发的现有标准和规范。然而,服务网络20操纵(manipulate)web服务统一资源标识符(URI)来强制web服务交易在web服务网络20上发生,并且当存在多个对称交易路径时强制通过客户端网关16和公共网络网关26的对称交易路径。下面进一步解释Web服务URI的操纵。
例如,在通信协议领域,SOAP是一个标准协议,其可以用来在web客户端和web服务器应用之间、由各个URI所标识的两个服务端点之间传送web服务消息。SOAP是可以规定附加信息传送的可扩展协议。例如,其广泛用于提供涉及正使用的内容安全机制的附加信息的传送。
Web服务描述语言(WSDL)是用于描述web服务、其功能性、规范、输入、输出和可接入方法的XML字典。这是网络服务描述的标准方法。
这些web服务协议(SOAP和WSDL)提供了能力和传送消息的便利,以在任何地方、在任何平台上无需定制代码来绑定并执行功能性。
一个已知服务发现机制是通用描述、发现和集成(UDDI)。UDDI定义了发布并发现web服务的标准机制,并且指明了注册表如何将WSDL描述的服务需求匹配于所述服务的提供商。UDDI使企业和应用能够在服务网络或互联网上发现web服务,并允许维护可操作的注册表。UDDI列出了来自不同公司的web服务,并给出其描述、位置、服务描述、关联的接入列表和安全级别。
这里提到的并可用于实现本发明实施例的其它web服务标准包括涉及以下内容的标准寻址(WS-Addressing)、可靠消息传送(WS-Reliability)、策略(WS-Policy)、通知(WS-Notification)和身份范围(scope)管理(WS-Trust和WS-Federation)。
尽管已知上述规范和标准,然而还不知道根据本发明实施例的管理专用和公共服务的这些标准的使用。
如上简单描述的,客户端网关16是服务网络20所提供的专用外部网络服务的直接客户端的服务传送点。
客户端网关16也提供到专用外部网络服务的安全接入,这保护了服务提供商和客户端二者、图1中的企业系统12和移动终端用户系统13。
通过客户端网关16和服务网络20的通信优选地是安全的。基于标准的安全技术,例如传输层安全(TLS)、安全套接层(SSL)、WS-Security、XML加密和XML签名,可以用来提供安全通信,同时调节(leverage)已经针对企业系统12而被通常建立的现存企业进入和外出的证书。这些基于标准的技术以及对本领域的技术人员显而易见的其它技术,确保了企业系统12中的被授权服务用户可以参与到虚拟外网服务网络20中。
客户端网关16也将进入的通信业务数据分类并分割为要被转发给网络控制器28的控制业务,和要通过部件18并可能地通过另一个客户端网关16或公共网络网关26被转发到目的地的数据业务。
通常,例如web服务应用的网络服务的潜在用户仅可以使用已知存在并具有有效服务描述的网络服务。因此期望网络服务提供商将网络服务的存在通知给潜在用户。这可以例如通过发布网络服务给注册表来实现。在图1的系统10中,客户端网关16允许企业系统12发布其内部网络服务给服务网络20。客户端网关16也允许企业系统12和移动终端用户系统13消费由服务网络20的其它成员所提供的外部网络服务。
如这里进一步详细描述的,可以由客户端网关12和网络控制器28来控制企业系统12所提供的服务对于服务网络20的其它成员可用的程度。
网络服务提供商可以因此发布内部网络服务给服务网络20,以由服务网络20的其它成员使用。在许多实现中,期望服务网络20和企业系统12是安全的专用网络,并且连接14、15上的通信也是安全的。这可以利用安全隧道技术来实现,所述技术的例子对于本领域技术人员是显而易见的。在客户端网关16的接入侧和网络侧处的安全通信提供了这样的保证级别仅由服务网络20的成员提供并且仅由服务网络20的成员消费可用于服务网络20的成员的专用网络服务,服务网络20的成员被授权根据由服务提供商所提供的服务接入策略以及服务描述来消费所述服务。
由于网络服务提供商和用户与服务网络20所进行的通信穿过客户端网关16,因此客户端网关16也可以捕获全面的审计记录,该记录可以被本地使用和/或由网络控制器28使用以维护调整(regulatory)和策略的顺应性。审计记录也可以由其它部件或系统来使用,例如具有针对用户的相应服务费用的微计费能力的计费系统。
网络控制器28提供用于服务网络20的中心控制平面功能,并且因此实现网络服务管理器和客户端管理器的功能性。一个主要责任是维护网络服务全局储存库。网络控制器28可以例如存储非易失性的客户端和服务配置文件(profile)用于建立运行时客户端上下文。如客户端网关16,网络控制器28可以被实现为具有基于标准的软件的高性能的基于硬件的设备,所述软件用于由服务网络提供商进行部署。网络控制器28用于管理服务网络20的虚拟外部网络服务,以将运行时服务和客户端管理及提供信息传送到客户端网关16和服务网络网关26,并且还显示并管理可用网络服务的列表,其中所述客户端管理及提供信息是关于服务描述对客户端的分配和针对端到端网络服务的策略执行。尽管网络控制器28是服务网络管理实体,然而客户端网关16和服务网络网关26执行关于实际数据的策略和安全规则。如图1在18上所示的,数据业务通过客户端网关16穿过提供商的核心网络,并且网络控制器28处理控制和管理业务。
网络控制器28优选地实现至少一个核心功能的子集,包括网络服务存储和信息管理,所述信息例如是位置、所有权、接入级别组、服务列表、网络服务的其它基本特性、中心策略储存库和权限管理、安全规范、例如适合终端企业到终端企业交易的硬服务质量(QoS)需求的SLA需求,以及用于例如客户端配置文件、交易审计服务、记录等的附加储存库。网络控制器28也维护客户端配置文件以由运行时功能使用,例如身份和信任中介(brokering of trust)与其它服务网络(未示出)的联合。
为了能够提供端到端交易的安全性、消息传送的可靠性和身份管理,网络服务提供商和服务网络提供商通常会进行协商(meet on middleground)以提供一个组合管理功能的集合。结合客户端网关16,网络控制器28可以通过用基于标准的代理模块替换企业的专用管理方法和工具来卸除企业系统12的负担,其中所述代理模块在服务网络20的边缘提供相同的功能。
网络控制器28也可以通过使本地企业应用免于提供某些安全方面,来允许将一些安全功能委托给外部网络服务,所述安全方面例如是身份提供商服务,XML数字签名确认服务、XML模式(schema)完整性等。通过使用虚拟外部网络服务,企业内和企业间的应用集成变得更简单且更有效,终端用户商业应用变得更明显,并且减少了与添加合作方到企业系统相关联的成本和复杂性。
网络控制器28使用客户端和服务配置文件,其存储该配置文件以确定服务对于每个客户端应当可用。网络控制器28与客户端网关16和服务网络网关26合作,以使定制的网络服务子集对每个客户端可用,其中给予客户端特权以从服务网络20中的服务集合接入该子集。
网络控制器28也提供由服务网络23的网络服务提供商所提供的网络服务的网络服务管理功能。因此,根据本发明的一个方面,网络控制器28与服务网络网关26交互,并且可以针对服务网络网关26执行以下任何或全部内容上面的网络服务管理、中心策略管理、安全性和交易审计功能以及可能的其它功能。
服务网络23基本上类似于服务网络20,其中假设外部网络服务,通过该外部网络服务,客户端可以通过客户端网关和网络控制器(未示出)使网络服务对于其他客户端可用和/或使用其他客户端所提供的网络服务。通过服务网络23的服务网络网关22和26,服务网络23可以与服务网络20交换网络服务控制和数据业务。
下面将参考图2到图4进一步详细描述客户端网关16、网络控制器28以及服务网络网关26、22的操作。
首先考虑客户端网关16、26,图2是示例性客户端网关的框图。客户端网关30包括服务网络接口32、接入网络接口34、有效耦合到接口32、34和存储器37的策略执行模块36、有效耦合到策略执行模块36和存储器37的安全模块38、有效耦合到接口32、34、策略执行模块36、安全模块38以及存储器37的SOAP代理模块42、有效耦合到SOAP代理模块42和存储器37的数据收集器模块40、有效耦合到策略执行模块36、安全模块38以及SOAP代理模块42的UDDI代理模块41,以及有效耦合到服务处理模块42、服务网络接口32和接入网络接口34的转发/路由模块44。尽管图2为避免拥塞没有明确示出所述连接,然而应当认识到,客户端网关30的任何或所有其它部件都可以有效耦合到存储器37和/或数据收集器模块40。
接入网络接口34代表远程接入点,通过该远程接入点,客户端网关30连接到企业系统或其它形式的网络服务提供商或用户。尽管图2中标记为接入网络接口,然而网络服务提供商和用户不必通过网络连接与客户端网关通信。因此应当理解,接口34通过严格来说可能是或不是网络连接的接入连接来提供到服务网络成员的接口。
接入网络接口34的结构和操作取决于连接的类型,其中客户端网关30通过该连接与其客户端进行通信。通常,接入网络接口34包括与通信介质交换通信信号的物理部件,以及产生并处理通信信号的硬件和/或软件实现的部件。所述接口的各种实现对于本领域的技术人员是显而易见的。
根据一个实施例,接入网络接口34针对试图连接到服务网络20中的客户端执行安全隧道终止(图1)。虚拟局域网(VLAN)、点对点协议(PPP)、多协议标记交换(MPLS)以及IP安全(IPSec)都是可能由接入网络接口34用来与客户端进行通信的协议的例子。其它协议和通信方案对于本领域的技术人员是显而易见的。
存储器37可以包括一个或多个存储设备用于存储信息,例如固态存储设备。也可以作为存储器37来提供其它类型的存储设备,这包括结合可移动和/或可拆卸的存储媒体来使用的存储设备,以及多个不同类型的存储设备。存储设备或实现为客户端网关30中的存储器37的设备的类型是设计问题,并且取决于其中实现客户端网关30的特定类型的设备。通信设备的电路卡例如通常包括如存储器37的易失和非易失性固态存储设备。
随着本说明书的进行而变得显而易见的是,存储在存储器37中的信息可以由客户端网关30的功能部件在执行其各个功能时使用。任何或所有功能部件36、38、40、41、42、43、44可以访问存储在存储器37中的信息。类似地,尽管图2中为避免拥塞没有示出存储器37和接口32、34之间的连接,然而这些接口或其内部部件也可以与存储器37进行交互。
一些或所有功能部件36、38、40、41、42、43、44,以及接口32、34的内部功能或部件,可以被实现为也可以存储到存储器37中的软件。
图2的部件之间内部连接的形式取决于其中实现客户端网关30的特定类型的设备。尽管可以除了或替代内部总线而使用其它类型的连接,然而内部总线结构通常用于电子设备中。还应当认识到,互连不必通过物理介质,例如在基于软件的实现的情况下。
由于本发明的实施例主要涉及在接入网络接口34的服务网络侧上被执行的功能,因此相比图2的接入侧功能,更详细地示出了实现客户端网关30的服务网络功能的功能部件。例如,尽管接入网络接口34提供了接入连接的安全功能,然而在图2中分离于服务网络接口32而示出了提供网络侧安全功能的安全模块38。为了说明,已经类似地在图2中分离地示出了其它网络侧功能部件。
客户端网关30中的分离功能部件的所述说明不旨在限制本发明。可以利用比图2明确示出的更多或更少的部件来实现客户端网关的网络侧功能,可能地利用不同的互连。例如,策略执行模块36的功能可以包含于应用策略的每个部件中。例如,安全模块38可以管理并应用安全策略。
在基于软件的实施例中,可以将功能实现在各个软件模块中或组合的较少软件模块中,以由单个硬件部件执行,即例如微处理器、专用集成电路(ASIC)、数字信号处理器(DSP)或微控制器的处理器。软件可能替代地由多个硬件部件来执行,例如微处理器和DSP或网络处理器加上几个ASIC和FPGA。也设想了组合的实现,其中一些功能被实现在软件中,而其它功能被实现在比软件操作更快的硬件中。
因此,可以以不同于图2所示的方式来划分或集成功能,并且这里描述的任何功能模块都可以被实现在软件、硬件或其一些组合中。
策略执行模块36针对网络服务实现服务网络策略执行,其中所述网络服务通过服务网络客户端在其客户端配置文件中被配置并在其服务描述中被通告给网络控制器28。
在客户端网关中实现了指明最终出现在线路上的传统需求和能力的策略断言(assertion),例如针对指定客户端和/或传输协议选择所需的认证方案。因此,从网络控制器将这些策略断言下载到客户端网关中,并由策略执行模块36来执行所述策略断言。
网络服务提供商和用户的认证和授权、涉及网络服务的交易的管理和检验以及确保与网络服务相关联的通信业务的私密性和完整性是功能的例子,所述功能可能涉及由策略执行模块36结合其它部件执行策略的过程。策略执行模块36可以与安全模块38交互,以例如通过检验消息数字签名来进行认证。因此,安全策略的执行可能涉及管理策略的策略执行模块36和安全模块38二者,其中该安全模块通过认证客户端并可能地传递或丢弃通信业务来实际应用策略。
因此应当认识到,策略执行模块36无需本身实际应用其为执行而管理的策略。随着本说明书的进行,策略执行模块36和其它部件之间的交互将变得显而易见,其中所述其它部件将策略应用于服务网络客户端和交易。
通过客户端网关30上的策略执行模块36,提供了利用虚拟外部网络服务的客户端认证,而不是利用每个指定的网络web服务,如利用当前企业中心的网络服务所发生的那样。接入网络接口34与其通信的网络服务提供商系统中的网络服务用户是客户端网关30的客户端,并且通过利用客户端网关30的单点登录(single sign-on)而获得了通过服务网络到网络服务的接入。客户端网关30因而解除了其客户端进行每服务认证的负担。要在客户端认证中使用的信息是可以被存储在存储器37中的一种信息类型的例子,优选地在安全存储设备或区域中。
当客户端XML数字签名不存在的情况下,策略执行模块36可以与安全模块38合作,以根据终端网络服务关于安全断言的期望来产生安全断言。新的安全断言被附于服务消息中,以断言客户端的身份以及消息的完整性。
当存在客户端的身份“喜好(preference)”,但是不同于网络服务的“喜好”时,策略执行模块36可以与安全模块38合作以将指定数字证书映射到不同的安全断言中,所述证书说明性地是x.509证书,所述安全断言例如是安全性断言标记语言(SAML,Security Assertion MarkupLanguage)断言。
来自例如SAML、WS-Federation以及WS-Trust的标准的已知机制优选地用于这些功能。
在一个实施例中,策略执行模块36提供以下内容的硬件实现联合身份、接入控制以及利用网络控制器28(图1)预先建立的策略的执行。联合身份允许用户创建并认证用户身份,并且然后在域和服务提供商之间共享身份而无需中心存储个人信息。
用于服务操作的SLA,也可以用于接入侧和网络侧通信链路二者或其中之一,其中客户端网关30通过该通信链路与其客户端和服务网络进行通信。策略执行模块36也可以监控通信业务级别,以执行可能存储在存储器37中的SLA相关的参数。
如以上简要描述的,根据本发明实施例的虚拟外网服务网络是基于XML标准的,并且因此策略执行模块36结合下面描述的服务处理模块43,也可以针对通过接入网络接口34从客户端网关30的客户端所接收的进入数据业务,来执行XML消息报头和消息有效负载变换。也可以进行从其它消息格式到基于XML标准的网络服务消息的变换。也设想了反变换,以及接入网络和服务网络中使用的非XML格式之间的变换。
安全模块38实现安全标准,以保证服务网络上的通信安全。在一些实施例中,安全模块38使用基于web服务标准的工具,例如WS-Security、XML加密/解密以及XML签名,以提供服务网络成员之间的安全数据通路。这些工具允许客户端网关30调节现有安全协议,以保证被授权的服务用户可以参与到端到端专用商业网络中。因此在一些实施例中,安全模块38代表了中心证书和密钥管理服务,用于增强的核心网上的外部网络服务。安全模块38提供安全功能给客户端网关30的所有其它模块,并且特别提供给策略执行模块36、UDDI代理模块41、SOAP代理模块42、服务处理模块43以及网络接口32、34二者。这些功能可以包括以下任何或所有内容签名检验、加密、解密、签名,以及利用电信安全领域中已知的协议所进行的对称或非对称密钥交换。
SOAP代理模块42针对客户端和服务网络之间的进入和外出消息执行SOAP报头处理。SOAP代理模块42是具有两个网络接口中的两个服务地址的主机接入网络接口34和服务网络接口32。就接入网络中的客户端而言,似乎是从SOAP代理模块42提供由服务网络通告给客户端的所有服务。
来自两个被连接网络中任一个的消息被传送到SOAP代理模块42,该SOAP代理模块42接收SOAP消息、执行例如报头处理的功能和修改并中继所述消息给合适的处理设备、UDDI代理模块41或服务处理模块43。同样,来自UDDI代理模块41和服务处理模块43的消息被发送给SOAP代理模块42。接收自UDDI代理模块41或服务处理模块的消息可以由SOAP代理模块42来处理,以例如添加寻址信息的统一资源标识符(URI)。SOAP代理模块42也与策略执行模块36和安全模块38进行交互,以在外出消息上实现网络服务策略,并且然后在合适的接口上发送消息。因此可以由SOAP代理模块42针对每个消息来触发策略执行、安全、接入控制、审计以及与客户端网关30的其它模块相关联的其它功能。
为了说明SOAP代理模块42的操作,考虑以下说明性例子由与EA相关联的客户端网关来代理由一个企业EB提供给另一个企业EA的服务,从而看上去似乎是从客户端网关的SOAP代理模块SPA的URI来提供。针对企业EB所提供的服务的、来自企业EA的服务请求被发送给SOAP代理模块SPA,该SOAP代理模块应用一组功能并传递消息给服务处理模块43。一旦处理了该服务请求,服务处理模块43就传递消息给SOAP代理模块SPA,该SOAP代理模块分别添加SOAP源和目的URI SPA和SPB,其中SPB是与企业EB的客户端网关相关联的SOAP代理模块。然后将请求从SPA发送到SPB。
SOAP代理模块SPB在转发请求给企业EB之前,进一步操纵消息的SOAP源和地址URI到SPB和EB。在相反方向上,将类似的修改应用于响应。操纵SOAP URI,以便存储服务URI和与该服务相关联的网关的SOAP代理二者。
SOAP代理模块42将进入业务分类并分割为UDDI控制业务和数据业务,该UDDI控制业务要被转发给UDDI代理模块41,该数据业务说明性地是XML业务并且要被转发给服务处理模块。业务分类可能涉及例如深入的分组检查。
尽管为避免拥塞而没有在图2中明确示出,然而SOAP代理模块42的业务分类器可以有效耦合到服务网络接口32或支持与网络控制器通信的另一个接口,以规定与网络控制器的控制和/或管理业务的交换。也应当认识到,SOAP代理模块42可以接收来自网络控制器的控制和/或管理业务。
对于从试图发布新的web服务或订阅所发布的现有web服务改变的客户端所接收的所有UDDI发布请求,UDDI代理模块41担任到服务外部网络所掌管的UDDI中心储存库的接入点,并且对于从发起“发现服务”操作的客户端所接收的所有UDDI查询请求,UDDI代理模块41担任代理模块。如这里公开的,根据网络服务策略来控制到网络服务的客户端接入。这些策略可以由策略执行模块36本身来执行,或结合UDDI代理模块41来执行,以限制网络服务,其中响应于发现服务或类似操作而针对该网络服务将信息返回给客户端系统。
UDDI代理模块41期望进入的基于UDDI的消息。可以由UDDI代理模块41丢弃不是UDDI帧的所有其它消息。
UDDI代理模块41可以以客户端网关级别来本地缓存UDDI条目。这在接收到新的UDDI查询请求时,允许UDDI代理模块41执行本地条目查找和解析(resolution)。如果本地发现了UDDI条目,则产生UDDI响应消息并将其发送回请求服务的客户端。
如果本地没有发现UDDI条目,则针对UDDI全局储存库中的全局查找来发送UDDI查询消息给网络控制器。一旦网络控制器解析了所述条目,就将UDDI响应发送回请求所来自的同一客户端网关。客户端网关30可以学习并存储UDDI信息用于进一步的UDDI查找。
因此,UDDI代理模块41可以处理服务请求的本地和远程解析。
服务处理模块43从SOAP代理模块42接收服务消息、处理该服务消息,并发送服务消息给SOAP代理模块42。服务处理模块43的一个主要功能是处理数据业务,该数据业务与网络服务相关联并且在网络服务提供商和用户之间被交换。在一个实施例中,例如,通过SOAP代理模块42,来自接入网络的服务消息被发送给服务处理模块43,服务处理模块43分析并修改该消息以使其适配于寻址并格式化规则的服务网络。例如,可以在策略执行模块36所管理的服务网络变换策略中指明格式化规则。服务处理模块43然后通过SOAP代理模块并穿过服务网络,将与网络服务提供商相关联的相应服务消息发送给客户端网关。
转发/路由模块44优选地执行朝向服务中的目的地的转发/路由判决(第1层或第2层转发,IP和/或XML路由)。尽管所述模块44可以具有以下能力处理IP业务,必要时连同DNS查找,以及XML级别的联网,然而其它实施例可以仅提供一个、不同的、或可能附加的路由机制。
当提供应用层路由时,模块44的基本功能是针对服务处理模块43提供基于内容的路由。服务处理模块43可以使用转发/路由模块44以针对所发布的消息来识别SOAP端点。SOAP代理模块42、服务处理模块43和转发/路由模块44的示例性实施例,提供了发布-订阅方式联网的必需机制。
转发/路由模块44的应用路由层是可选的,并且最适于支持通知和事件分配类型服务。在一个实施例中,应用路由层将客户端订阅存储到订阅数据库中,并且一旦接收了匹配于订阅数据库中的一组条目的XML多播文档,该应用路由层就使用这些条目来识别需要该文档的下一个SOAP端点,并通过SOAP代理模块42转发该文档给所述端点。文档的订阅和文档的发布遵循WS-Notification和WS-Eventing建议中概述的标准化机制。
服务网络接口32至少提供到服务网络的物理接口。服务网络接口32的类型和结构以及可以在通信业务上被执行的其它操作,取决于服务网络,其中与服务网络交换所述通信业务。许多这种网络接口的例子对于本领域的技术人员是显而易见的。
数据收集器模块40收集实时管理和计费信息,该信息可以被本地处理和/或被转发给网络控制器或其它部件,用于进一步存储和处理。
一旦在策略执行模块36和安全模块38中的安全执行点上成功执行了所有操作,就可以在服务外部网络中保证安全客户端身份和消息完整性。
在这点上,数据收集器模块40可以针对各种管理和计费操作获取实时信息。可以针对如以下活动收集数据交易审计、性能审计、事件监控、交易的端到端商业活动监控(交易完成/失败)、活动记录、SLA监控、警告和错误门限、告警等。数据收集器40可以在数据通路中在任何不同阶段、以策略执行的级别收集信息,从而编辑关于丢弃策略的统计等,所述阶段例如是在安全模块38计数针对每个安全策略所丢弃分组之后。
可以配置如图2所示的客户端网关,以允许网络服务提供商将其服务作为本地服务提供到服务网络中、允许网络服务用户使用服务网络中可用的网络服务,或二者。客户端网关30的客户端企业可以包括以企业应用服务器形式的网络服务提供商,以及终端用户网络服务用户。
当客户端网关30的客户端已经利用客户端网关30进行认证,并且希望提供其网络服务到服务网络中时,控制业务被如上所述地处理并被转发给服务网络中的网络控制器,其中说明性地通过终止于接入网络接口34的安全隧道或作为被加密及签名的消息,从客户端接收所述控制业务。
可以基于网络服务提供商或网络控制器所指定的明确的接入控制规则,来确定服务网络中网络服务的可用级别。网络服务提供商可以请求网络服务保持私密,以仅由其自己专用企业系统内的用户使用。尽管服务网络的其它成员不可接入,然而限制服务网络中到专用网络服务的接入,允许网络服务提供商使用服务网络的其它功能,例如包括策略执行和注册表掌管。也设想了半专用的网络服务,其中网络服务提供商指定了网络服务对其可用的特定服务网络成员或组。不受限的网络服务对于服务网络的所有成员是可接入的,并且根据本发明的一个方面,可以或不可以被提供给服务网络23的客户端。在服务网络20中,可以通过服务网络网关22、26类似地提供由服务网络23的客户端所提供的网络服务。
可以在网络控制器处配置预定的网络服务接入控制,并根据网络服务或网络服务提供商的类型或类别将其应用于网络服务。来自特定网络服务提供商的所有网络服务可以具有相同的订阅接入控制,例如当网络服务提供商首先向服务网络注册时建立所述预定接入控制。每个网络服务提供商可以具有一组关系种类,例如合作方、供应商、用户等。在所述情况下,例如到每个服务的接入授权可以被提供给一个类别,并且对于另一类别拒绝接入。另一个可能的预定接入控制体制使得一组具有现有商业关系的网络服务提供商的网络服务仅可用于所述组。如这里公开的,从公共网络上引入服务网络中的公共网络服务,一般可用于服务网络的所有客户端。
在中心策略管理模型中,网络控制器作为服务上下文或策略来存储关联于网络服务的任何接入控制。这些策略被策略执行模块36下载到每个客户端网关,并且如上所述被应用于数据业务。可以运行时下载客户端上下文到策略执行模块36,以例如支持终端用户系统13的移动性(图1)。
不管用于建立并管理网络服务的接入控制的特定接入控制方案,根据用于每个网络服务的任何接入控制而使所提供的网络服务在服务网络中可用。这可以以几种方式实现。如上所述,控制业务被转发给服务网络中的网络控制器并由该网络控制器处理。在所述情况下,网络控制器可以针对注册表中的服务来发布信息,其中所述注册表对于服务网络中的客户端网关是可接入的。每个客户端网关然后根据关联于网络服务的策略来控制其客户端接入注册的网络服务。
本发明决不限于网络服务接入控制的上述例子。根本不必在服务网络中实现接入控制。在一些实施例中,服务网络中所提供的所有网络服务自动可用于服务网络的所有成员。
网络服务提供商也可以优选地修改网络服务策略,以通过与网络控制器交换控制业务以基本类似的方式改变接入控制。
一旦策略执行模块36和安全模块42已经认证了客户端服务消息,客户端消息就可以通过客户端网关30接入服务网络中可用的网络服务。根据策略执行模块36所管理的策略来控制客户端能够接入的特定网络服务。服务网络的全局注册表可以包括不是对于每个客户端都可用的网络服务的注册表条目,如被网络控制器存储并被下载到策略执行模块36的网络服务策略中所指定的。仅使那些允许客户端网关30的客户端接入的网络服务可用于客户端。
随后在客户端网关30的客户端与远程网络服务提供商之间通过服务网络所交换的数据业务,基本上被如上所述地处理。从客户端去往远程网络服务提供商的业务,由安全模块38基于安全策略来处理、在SOAP代理模块42中被修改并且在服务处理模块43中基于XML消息类型而被不同地处理,并且最终由路由模块44通过服务网络接口32将数据业务路由到远程网络服务提供商,或实际上被路由到远程网络服务提供商所连接的客户端网关。
将基本上类似的处理应用于与客户端网关30的客户端所提供的网络服务相关联的数据业务。安全模块38、SOAP代理模块42以及服务处理模块43处理、修改并分类以及作为数据业务来处理通过服务网络接口32而接收自远程网络服务客户端的数据业务。然后通过接入网络接口34转发所接收的数据业务给客户端。
现在转向网络控制器28(图1),图3是示例性网络控制器的框图。网络控制器50包括管理系统接口52、网关接口54以及有效耦合到管理器60、64、66、69的存储器56。在集中式结构或分布式结构以及优选地中心可管理的结构中可以提供网络控制器50的部件。
管理系统接口52提供到管理系统的接口,例如网络管理系统(NMS),其实现了用于配置和管理服务网络平台的中心架构。管理系统接口52的结构和操作取决于连接类型,其中网络控制器50在该连接上与其管理系统进行通信。在一些实施例中,网络控制器通过被管理的通信网络与管理系统进行通信。分离的NMS管理和控制信道也是普通的。两种类型的管理系统接口的例子,例如包括使用XML的接口和提供到管理信息库(MIB)接入的接口,对于本领域的技术人员是显而易见的。
网关接口54代表这样的接口网络控制器50通过该接口与客户端和服务网络网关进行通信。尽管图3中示出了单个部件,然而网关接口54可以包括各个接口,并且可能包括不同类型的接口,以与多个客户端网关通信。如上参考图2所描述的,可以利用服务网络接口或一些其它类型的接口,在客户端网关和网络控制器之间通过服务网络来交换控制业务。图3的网关接口54因而代表这样的接口与在客户端和服务网络网关处提供的服务网络接口32(图2)或另一个接口相兼容。
如上述参考图2的接口,管理系统接口52和网关接口54通常包括与通信介质交换通信信号的物理部件,以及产生并处理通信信号的硬件和/或软件实现的部件。
存储器56包括一个或多个存储设备用于存储信息。存储在存储器56中的信息可能包括例如以下信息客户端配置文件和策略、安全信息,和用于由网络控制器的部件使用的每网络服务每用户接入列表和接入级别组,以及用于由服务网络中的其它设备访问并使用的注册表信息。然而应当认识到,存储器56可能包括本地和远程存储设备二者。尽管优选地本地存储网络控制器软件,然而注册表可以被分配并存储于远程存储设备和服务网络网关中,该远程存储设备对于网络控制器50和客户端二者都是可访问的,该服务网络网关连接到网络服务用户。
管理器60、64、66、69以及接口52、54的内部功能或部件中的一些或全部可以被实现为软件。实现这些管理器和功能的软件也可以被存储在存储器56中。
策略管理器60提供全面的策略提供、定义和安全策略管理能力。尽管可以以分布的方式遍及服务网络地存储内容和数据的策略部分,然而策略管理器60集中了策略管理。可以分配策略部件,例如策略管理器60和其中存储策略信息的存储器56中的注册表。同样,将策略信息下载到服务网络网关和客户端网关的策略执行模块中。通过针对网络服务将集中式方法用于策略管理,委托的管理器可以在服务网络提供商的基础设施中管理单个策略集合。可以配置策略管理器60以自动下载或推送(push)策略信息到客户端和服务网络网关,以响应于来自网关的请求而发送策略信息,或支持推送和获取策略信息传送机制二者。
根据一个实施例,策略管理器60利用网络服务策略注册表管理网络服务策略。网络服务策略注册表是网络服务策略的收集,该策略针对服务网络中所提供的所有网络服务建立接入控制。策略注册表可以是数据注册表的一部分,该数据注册表用于存储例如服务描述和客户端配置文件的其它信息。
每个单独的网络服务策略可以指定专用参数,例如必须在消息中出现的认证信息、消息是否被签名和/或加密、哪部分消息被签名和/或加密,以及消息或部分消息如何被签名和/或加密。可以通过实现现有web服务标准来提供这些功能,所述标准如WS-Security、WS-Policy、WS-PolicyAttachment、WS-PolicyAssertion和WS-SecurityPolicy。也可以存在指示到指定网络服务的接入级别的规则,说明性地是虚拟外部网络级别上的专用、半专用/组以及公共。也可能存在针对端到端服务的SLA协议和QoS需求,以及关于涉及指定商业交易的商业合作方的列表和细节。
对于任何新的网络服务提供商或加入服务网络的用户而言,优选地在注册时创建用户配置文件和策略。如上所述,网络服务提供商通过经由客户端网关或公共网络网关发送控制业务给网络控制器,在服务网络中发布其网络服务。根据本发明的一个方面,网络控制器也可以管理公网服务,可以通过公共网络来消费所述服务,如由公共网络服务策略所指明的。通常,策略是由策略管理器60在外部网络服务中中心地管理,但是在由服务网络提供的虚拟外部网络中被物理地分配,其中该策略通过网关接口54从网关被接收或通过管理系统接口52从管理系统被接收。
在网络服务提供商或用户在加入服务网络时具有其自己的服务策略的情况下,策略管理器60可以允许外部服务策略被并入服务网络的全局策略注册表中。外部网络级别的所有管理数据因而可以结合来自企业管理系统的其它数据,以便创建全局管理的虚拟外部网络服务。
策略管理器60也管理服务网络中的用户授权和安全配置文件而不是利用指定的网络服务应用,如企业中的典型情景那样,策略管理器60也管理被认证客户端端点的授权。企业空间中的网络服务用户例如通过客户端网关连接到服务网络,并且进行单点登录服务网络。接入控制信息到网络控制器所掌管的一个注册表条目的集中,避免了在企业系统之间共享身份信息和接入控制策略的问题。替代地,在虚拟外部网络中存储所述数据。
策略管理器60也可以提供旧的(legacy)授权系统,说明性地通过提供数据,其中需要该数据以将现有所有的会话cookies转换为SAML断言和现实世界身份,该现实世界身份可以被映射到其它身份储存库。
策略管理器60可以指定要通过客户端网关应用于数据业务的消息报头和消息有效负载变换。在一些实施例中,根据说明性地是XML模式(schema)的存储在注册表中的信息,在基于XML的web服务消息和其它消息格式之间进行变换。
安全管理器64管理通过服务网络的通信的安全。在一个实施例中,安全管理器64使用所建立的网络服务和XML标准以保证安全通信。例如,服务网络核心上所创建的安全数据通路可以使用如上所述的WS-Security和XML加密。尽管网关实际上建立通过服务网络的安全连接,然而安全管理器64针对服务网络提供中心证书和密钥管理服务。下载安全信息到网关中,以用于建立通过服务网络与其它网关的安全通信。如策略管理器60,可以配置安全管理器64以自动下载或推送安全信息到网关,以在网关需要用于网络服务交易的安全信息时响应于来自网关的请求而在运行时发送安全信息,或支持推送和获取传送机制。
注册表管理器66管理并清除网络服务注册表,说明性地是例如UDDI的工业标准注册表,其具有用于网络服务位置和管理的高级元数据(meta-data)能力。服务网络提供商可以存储注册条目,用于基于分类种类的可用网络服务以及其定义的商标(branding)。在一个实施例中,根据允许的接入级别在注册表中组织网络服务,所述接入级别可能包括专用的、公共的、半专用的组和/或其它。如上所述,可以将一些网络服务秘密发布给指定合作方,而将其它网络服务公开发布给整个服务网络。
注册表管理器66所管理的网络服务注册表是来自直接或间接连接到服务网络的所有网络服务提供商的网络服务的收集。对于在其加入服务网络时不具有任何注册表能力的新网络服务提供商或用户而言,注册表管理器66提供网络服务、描述、位置、所有权和公共API的完全收集,其中所述公共API允许通告并消费网络服务。网络服务提供商可以在其加入服务网络时具有其自己的注册表,在这种情况下,注册表管理器可以允许将提供商的网络服务发布到服务网络的全局网络服务注册表中。
为了除基本网络服务位置和管理以外的目的,其它元数据注册表对于存储网络服务信息也是可用的。这些可以包括用于由其它网络控制器部件使用的注册表,以管理例如以下服务方面超时、要应用的XML模式、服务合同、QoS参数以及订阅和寻址信息。附加的注册表可以存储作为存储以下信息的结果所获得的数据收集计费信息、SLA监控信息、交易的端到端商业活动监控信息、活动记录和性能审计信息、异常告警以及包括例如计费、喜好、合作方等的客户端配置文件。也可以在注册表中存储用户凭证、通用策略和安全策略。
在一些实施例中,根据客户端的服务策略,服务网络的客户端具有用于实时监控并查询所有注册表信息的实时控制台接入及管理工具。
系统管理器69接收由网关捕获的审计记录,以提供集中式控制、监控和交易审计、事件、告警以及警告,并且也可以管理全面合同和SLA的递送。基于其关键程度(criticality)来优选地实现交易优先级。系统管理器69的其它可能功能包括报告交易完成/失败和SLA合同管理。
如上简要描述的,服务网络网关实现并执行说明性地是XML数据路径的安全数据路径以及控制路径,该控制路径用于实现相同的基于外网的服务的不同网络提供商之间的网络服务业务。
当两个网络提供商实现相同的外部网络服务模型时,存在向每个服务网络添加位于其它服务网络中的网络服务的可能性。
通过服务网络网关的服务间网络通信,使每个服务网络的网络服务用户客户端能够使用扩大的网络服务集合。服务网络的网络服务提供商客户端也可以使其网络服务在具有各自管理域的多个不同服务网络中可见并可接入,其中所述管理域具有各自的客户端集合。
服务网络中的服务网络网关提供边缘设备功能,其用于优选地通过另一服务网络中的对等服务网络网关与另一个服务网络进行通信。通过静态提供或动态发现,对等服务网络网关可以以点对点方式有效地一对一连接。一对一连接可以是如图1所示的直接链路,或例如穿过另一个通信网络的网络链路的间接链路。
服务网络网关以线路速度在安全数据通路上向另一个服务网络转发网络服务数据业务。为了通告一个服务网络的网络服务到另一个服务网络,服务网络网关也交换网络服务控制业务。在一个实施例中,每个服务网络网关与其它服务网络中的一个或多个对等服务网络网关共享网络服务存在信息。
服务网络网关与网络控制器交互,以输出网络服务到其它服务网络,并从其它服务网络引入网络服务。当多个网络控制器在服务网络外网中可用时,服务网络网关优选地仅与一个指定网络控制器直接交互。通过以服务网络网关接口或单元(box)的级别进行提供,选择并然后执行指定网络控制器。指定网络控制器可能与普通网络控制器相同,但是通过管理系统接口52(图3)、通过操作者终端的命令行接口(CLI)被配置为指定网络控制器。
在一个服务网络内的多个网络控制器中维护网络服务注册表的情况下,网络控制器互相通信以交换控制信息,该控制信息是关于包含于其注册表的每一个中的服务并关于这些服务的本地存储的。
因此,网络控制器可以结束于将以下两种信息存储到其注册表中由客户端网关以及可能其它网络控制器提供给网络控制器的信息,并且该信息关联于由其自己的客户端所提供的内部网络服务;与从其它服务网络中的网络服务提供商可用的外部网络服务相关联的信息。多控制器服务网络中的指定网络控制器可以从其它网络控制器、服务网络网关或两者接收网络服务相关的信息。
可以通过内部与外部相对的不同服务类型将网络服务发布给注册表。接收来自服务网络网关的网络服务更新的指定网络控制器,可以外部地自动发布所述更新,而内部地发布通过客户端网关所注册的新网络服务。
当服务网络的客户端使用内部网络服务时,客户端接入服务网络所通过的客户端网关向目的地转发网络服务进入业务,所述目的地例如是服务网络的另一个客户端网关。在外部网络服务的情况下,客户端网关向外部网络服务的服务网络注册表中所列的服务网络网关转发数据业务。用于客户端网关与服务网络网关交换业务的基本机制,可以基于核心网中所支持的任何隧道协议。
如客户端网关,服务网络网关将来自外部服务网关的进入数据业务,分类并分割为要被转发给本地指定的网络控制器的控制业务和要被转发给目的地的数据业务。服务网络网关也转发外出的控制数据,包括关于要流向或通告给下一对等边界网关的本地网络服务的存在的信息,说明性地以包括正确网络服务及其描述的通告消息的形式。在一些实施例中,外出控制数据由本地指定的网络控制器产生,并被向下发送给服务网络网关以发布给对等服务网络网关。
由于在服务网络的客户端网关处实现客户端身份和接入控制功能,因此在一些实施例中无需由服务网络网关提供这些功能。另一方面,利用例如WS-Security、XML加密以及XML签名,可以在服务网络网关处以与在客户端网关处基本类似的方式提供网络服务数据安全性。服务网络网关也优选地实现已经利用本地网络控制器所建立的策略的执行。
服务网络网关所编辑的审计和监控记录,可以由每个服务网络网关来本地存储并处理、被发送给一个或多个服务网络中的网络控制器或其它系统用于处理,或二者。网络控制器可以使用所述记录以例如检查调整和策略的顺应性。
根据下面对图4的详细描述,服务网络网关的操作将变得显而易见,图4是示例性服务网络网关的框图。
服务网络网关90包括本地服务网络接口92、服务网络网关接口94、有效耦合到接口92、94以及存储器97的策略执行模块96、有效耦合到策略执行模块96的安全模块98、有效耦合到策略执行模块96、安全模块98以及接口92、94的SOAP代理模块102、有效耦合到SOAP代理模块102以及存储器97的数据收集器模块100、有效耦合到策略执行模块96、安全模块98以及SOAP代理模块102的服务处理模块103、有效耦合到策略执行模块96、安全模块98、SOAP代理模块102以及服务网络网关接口94的网络控制器(NC)代理模块101,以及有效耦合到SOAP代理模块102、服务处理模块103、服务网络接口92以及服务网络网关接口94上的转发模块104。如上面针对图2的客户端网关所指出的,图4的部件之间的其它互连可以在一些实施例中被提供,但是为避免拥塞没有明确示出。
从图2和图4的比较中显而易见的是,客户端网关和服务网络网关可以具有基本类似的结构,尽管这些网关稍有不同地进行操作。
如上面针对客户端网关30所描述的(图2),图4的网关部件之间内部连接的形式,取决于其中实现服务网络网关90的特定类型的设备。可以在服务网络网关90中使用内部总线结构和/或连接的其它类型。
图4的分离的功能部件说明不旨在限制本发明。可以利用比图4中明确示出的更多或更少的、可能地利用不同互连的部件来实现服务网络网关的本地服务网络侧功能。因此,可以以与图4所示不同的方式来划分或集成功能。例如在基于软件的实施例中,这些功能可以在各个软件模块中被实现,或被组合到更少的软件模块中以由一个或多个处理器来执行。功能部件96、98、100、101、102、103、104以及接口92、94的内部功能或部件,可以因而被实现为存储在存储器97中的软件、硬件,或部分在软件部分在硬件。
服务网络网关接口94通过另一个服务网络网关连接服务网络网关90到外部服务网络。服务网络网关接口94的结构和操作取决于连接的类型,其中服务网络网关90在该连接上与另一个服务网络网关进行通信。通常,服务网络接口94包括与通信介质交换通信信号的物理部件,以及产生并处理该通信信号的硬件和/或软件实现的部件。所述接口的各种实现对于本领域的技术人员是显而易见的。在一个实施例中,接口94终止了安全通信隧道,该隧道用于服务网络网关90和另一个服务网络网关之间的连接。可以用于网关间通信的其它可能的通信协议和方案,对于本领域的技术人员是显而易见的。
存储器97可以包括用于存储信息的一个或多个存储设备,其中服务网络网关90的任何或所有功能部件可以使用所述信息,并且因此功能部件96、98、100、101、102、103、104可以访问存储在存储器97中的信息。尽管图4中为避免拥塞没有示出在存储器97和接口92、94之间的连接,然而这些接口或内部部件也可以与存储器97交互。
策略执行模块96实现网络服务的服务策略执行和代理服务功能,其中所述网络服务由网络服务成员在其客户端配置文件中配置并在其服务的描述中被通告给本地服务网络。用于外部服务的策略执行可以由外部服务网络中的网关来处理,并且因此外部网络服务的策略可以不必由服务网络网关90来执行。
也可以由策略执行模块96管理与网络服务相关联的通信业务的私密性和完整性。策略执行模块96可以与安全模块98交互以例如检验消息数字签名。
根据对图2的基本类似的客户端网关策略执行模块96的前面描述,策略执行模块96的其它功能是显而易见的,例如SLA监控和消息变换。然而应当认识到,尽管客户端网关的策略执行模块可以结合其安全模块来执行客户端认证和授权功能,然而可以在服务网络网关不提供这些功能,这是因为服务网络网关不管理客户端到服务网络的接入。
另一方面,每个服务网络网关优选地向另一个服务网络网关标识自身,并基于服务策略规范授权接收自另一个服务网络网关的业务。然而,可以通过两个管理域边界之间的相互合作来定义所述策略。所述策略可以指定服务网络中的哪些网关(例如客户端网关)可以与哪些外部服务间网络网关进行通信、用于这些网关之间的点对点管道的接入安全技术(IpSec、IPVPNS等),以及到不同管理域之间的公共/专用服务的接入的级别等。
安全模块98在数据业务上实现并执行安全标准(策略中指定的),以保证服务网络网关之间的通信安全性以及本地和外部服务网络中的通信安全性。在一些实施例中,安全模块98通过使用web服务标准来负责数据业务安全性以提供安全的数据通路,所述标准例如是WS-Security、XML加密/解密、XML签名。通常,安全模块98提供安全功能给服务网络网关90的所有其它模块。
数据收集器模块100收集实时管理和计费信息,该信息可以被本地处理和/或转发给网络控制器或其它部件用于进一步存储和处理。一旦在策略执行模块96和安全模块98中的安全执行点上成功执行了所有操作,就可以在服务网络内保证消息完整性,并且数据收集器模块100可以针对各种管理和计费操作获取实时信息,基本上如上面针对客户端网关数据收集器40(图2)的描述。实际上,数据收集器可以在数据通路中在任一不同阶段从图4的任一或所有模块收集实时数据。
如客户端网关30的相应模块42(图2),SOAP代理模块102针对服务网络之间的进入和外出消息执行SOAP报头处理。SOAP代理模块102是具有两个网络接口中的两个服务地址的主机服务网络网关接口94和本地服务网络接口92。就通过服务网络网关90连接到外部网络服务的本地服务网络客户端而言,似乎是从SOAP代理模块102提供所有外部服务。
来自两个被连接服务网络中任一个的消息被传送给SOAP代理模块102,该SOAP代理模块102接收SOAP消息、执行如报头处理的功能和修改,并中继消息到合适的处理设备,如NC代理模块101或服务处理模块103。来自NC代理模块101和服务处理模块103的消息也被发送给SOAP代理模块102。从NC代理模块101或服务处理模块103接收的消息可以由SOAP代理模块102来处理,以例如添加URI寻址信息。SOAP代理模块102也与策略执行模块96和安全模块98进行交互,以实现消息上的网络服务策略,并然后在合适的接口上发送该消息。因此可以由SOAP代理模块102针对每个消息触发策略执行、安全、接入控制、审计,以及与服务网络网关90的其它模块相关联的其它功能。
SOAP代理模块102的操作可以基本类似于图2所示的客户端网关30的SOAP代理模块42的操作,上面已经作为说明性例子详细描述了所述操作。显然的是,尽管客户端网关的SOAP代理模块在服务网络和接入网络之间交换消息,然而SOAP代理模块102在服务网络之间执行基本类似的功能。服务网络之间的地址和格式化要求可能与接入网络和服务网络之间的要求也不相同。因此,SOAP代理模块102根据不同服务网络中所用的格式和地址空间,来应用消息变换和寻址转换。
SOAP代理模块102分类并分割进入业务为控制业务和数据业务。控制业务被转发给NC代理模块101,而说明性地是XML业务的数据业务被转发给服务处理模块103。在客户端网关中,通常利用网络控制器交换控制业务,而在服务网络网关中,可以在本地服务网络之内和之外交换控制业务,以实现本地网络服务的外部发布。
SOAP代理模块102的业务分类器可以有效耦合到本地服务网络接口92或支持与本地网络控制器进行通信的另一个接口,以规定与网络控制器的控制和/或管理业务的交换。在图4中,通过NC代理模块101示出了这种连接的一个可能形式,其中该NC代理模块101有效耦合到服务网络网关接口94。也应当认识到,SOAP代理模块102可以从网络控制器接收控制和/或管理业务。
根据一个实施例,NC代理模块101具有以下结构特征-NC代理模块101将接口(例如UDDI接口)呈现给本地指定的网络控制器的中心UDDI储存库;-当来自外部服务网络的业务进入服务网关时,NC代理模块101将来自外部服务网络注册表的所有网络服务发布,传送给本地指定的网络控制器,所述服务发布符合服务网络策略以提供给服务网络客户端;-NC代理模块101还通过服务网络网关接口94传送控制业务给外部服务网络,以将本地网络服务通告到外部服务网络中,其中所述控制业务在一些实施例中由本地指定的网络控制器产生。
可以将通告控制功能本身实现在指定网络控制器中,在这种情况下,所述功能包括通过用相应的外部服务更新彼此的注册表,在两个服务网络的两个指定网络控制器之间交换控制业务。
用于远程或外部服务网络的网络服务的服务网络全局注册表中的注册条目被标记为外部。对于所有外部服务,该注册表可以存储其它信息,如服务网络出口点的地址,即服务网络网关的服务网络地址,其中这些外部网络服务通过该网关是可接入的。
服务网络中的指定网络控制器也优选地将朝向网络服务目的地的下一跳(hop)存储在其注册表中,所述目的地是数据业务退出本地管理域后的第一跳。所述下一跳是进入的服务网络网关,即用于外部服务的服务传送点。下载所述信息到服务网络网关90的转发模块104。
策略执行模块96可以控制本地网络服务的外部发布、从外部服务网络到本地服务网络的网络服务发布,或二者,作为用于服务网关的专用服务策略规范的一部分以服务于网关通信。
优选地由本地指定的网络控制器创建通告消息,以在本地服务网络之外通告内部网络服务。响应于不同的网络服务事件,网络控制器的通告控制功能可以例如在网络服务初始化时产生通告消息,以提供现有本地网络服务的初始列表给外部服务网络,或在运行时产生针对例如位置改变或网络服务删除的新的网络服务创建或网络服务更新。可以由本地指定的网络控制器来提供事件通知给服务网络网关90。
尽管基本类似于可能存在于服务网络中的其它网络控制器,然而与服务网络网关通信的指定网络控制器优选地包括网络服务通告模块或功能,以处理网络服务的服务间网络发布。在一个可能的实现中,网络控制器软件对于所有网络控制器是相同的,但是支持这里公开的网络间功能性的网络服务通告软件是不可操作的,除非网络控制器被配置为服务网络中的指定网络控制器。
参考图3,支持网络间提供和网络服务使用的网络控制器可以包括所有以下部件接口52、54、存储器56和功能部件60、64、66、69,以及有效耦合到接口52、54和存储器56的附加网络服务通告模块。在多控制器服务网络中,尽管在每个网络控制器中提供了网络服务通告模块,然而除了在指定网络控制器中,该网络服务通告模块在所有网络控制器中实际上是不可操作的。可以例如通过管理系统接口52,可以实现针对服务网络将网络控制器配置为指定网络控制器。
如上所述,可以在服务网络的服务网络注册表中指示每个可用网络服务的服务类型。服务类型指示代表一个机制,网络服务通告模型可以通过该机制区分内部和外部网络服务,以便仅将内部网络服务通告给外部服务网络。当服务网络本身不掌管被注册外网服务的提供商时,优选地不向其它服务网络通告外网服务。也设想了例如基于网络服务提供商位置信息来区分内部和外部网络服务的其它技术。
NC代理模块101可以修改本地网络服务的服务端点,以在本地网络服务和外部服务网络客户端之间,以及在本地客户端和SOAP代理102在外部服务网络中所提供的外部网络服务之间,强制服务交互的协调。
NC代理模块101的消息处理能力取决于用于指定网络控制器之间的通信的消息类型。在一个实施例中,在指定网络控制器之间使用基于UDDI的消息。也设想了所有权控制消息。NC代理模块101可以丢弃以所有权格式或以一些其它预期格式的、不是UDDI帧的所有消息。
服务处理模块103从SOAP代理模块102接收服务消息、处理该服务消息并发送服务消息给SOAP代理模块102。服务处理模块103的一个主要功能是处理与网络服务相关联并在服务网络之间被交换的数据业务。在一个实施例中,将通过SOAP代理模块102来自本地服务网络的服务消息发送给服务处理模块103,服务处理模块103分析并修改该消息,以使所述消息适配于寻址并格式化规则的外部服务网络。服务处理模块103然后通过SOAP代理模块103和服务网络网关接口94,发送相应的服务消息给服务网络网关,该网关与其中提供网络服务的外部服务网络相关联。
服务网络网关90中的安全模块98、转发模块104以及本地服务网络接口92,可能基本类似于本地服务网络中的客户端网关30的相应部件。
通信网关处的安全模块提供服务网络上的通信安全。因此可以在客户端网关之间、服务网络网关之间,或客户端网关与服务网络网关之间提供安全通信。显然,当一个服务网络的网络服务用户客户端使用另一个服务网络的客户端所提供的网络服务时,服务网络网关和客户端网关交换网络服务业务。
本地服务网络接口92至少提供到本地服务网络的物理接口,并且与服务网络中其它网关上所提供的服务网络接口相兼容。本地服务网络接口92的类型和结构和可以在通信业务上执行的其它操作,是服务网络相关的,其中与其它网关和本地服务网络中的网络控制器交换所述通信业务,并且所述网络接口的许多例子对于本领域的技术人员是显而易见的。
可以配置例如图4所示的服务网络网关,以允许服务网络的网络服务提供商客户端接入另一个服务网络中可用的网络服务、允许服务网络中的网络服务提供商将其服务提供到另一个服务网络中,或允许二者。服务网络网关也在服务网络之间传送通信业务。
通过考虑各种网络服务提供和使用情景,可以最佳说明服务网络网关的操作。
通过服务网络网关,也可以使服务网络的网络服务提供商客户端所提供的网络服务对于另一个服务网络的客户端可用。通过在例如发布网络服务给服务网络全局注册表时建立接入控制策略,网络服务提供商如上所述地控制其网络服务的可用性。这些接入控制策略指定了使网络服务在服务网络内和/或在一个或多个其它服务网络外部可用的程度。可以在网络服务策略中指定其它参数,并且也可以在服务网络之间传输所述参数,以例如将该参数存储在策略注册表中并在服务网络的客户端使用外部网络服务时如上所述由客户端网关执行该参数。
通过在例如服务网络客户端所提供的本地服务网络注册表中识别网络服务,优选地由服务网络网关自动处理服务网络网关向外部服务网络发布网络服务。
在优选的中心策略管理模型中,与网络服务相关联的接入控制由网络控制器作为服务上下文或策略来存储,并且被下载到服务网络网关用于执行,从而控制是否外部通告本地网络服务。
服务网络的网络服务用户客户端利用客户端网关进行认证,以便接入该服务网络及其注册的内部和外部网络服务。客户端网关的策略执行模块根据针对网络服务所建立的策略,控制客户端能够接入的特定网络服务。
服务网络网关处理数据业务,该数据业务随后在本地网络服务用户或提供商客户端与外部网络服务提供商或用户客户端之间被交换。
当接入外部服务时,在进入客户端网关、在本地服务网络内仅执行一次客户端认证和授权。一旦外部服务通过本地网络控制器可接入,就向本地服务网络中的目的地转发业务,所述目的地是服务注册表中指定的服务网关。从此,数据业务被分配给先前学习的下一跳,即到外部服务网络中的进入服务网关。当进入第二管理域时无需客户端认证。客户端因此仅利用网络认证一次,而不管网络是一个服务网络,或是通过服务网络网关被连接在一起的多个服务网络所组成的网络。
参考图4,从本地网络服务提供商去往外部网络服务用户客户端的业务被策略执行模块96处理、被SOAP代理模块102分类为数据业务,并且被与安全模块98合作的SOAP代理模块102处理。所产生的服务消息被服务处理模块103处理,该模块103可以修改消息,安全模块98执行安全处理以将安全性(例如XML级别的安全性)应用于被修改消息,并且转发/路由模块104通过服务网络网关接口94将所述消息路由到网络服务用户客户端,或实际上路由到与网络服务用户客户端连接的外部服务网络中的服务网络网关。外部服务网络网关然后处理通过外部服务网络的客户端网关到网络服务用户客户端的业务转发。
服务网络网关90以基本类似的方式处理去往本地网络服务提供商的数据业务。通过服务网络网关接口92从外部服务网络的外部网络服务用户客户端接收的数据业务,被策略执行模块96处理、被SOAP代理模块102分类为数据业务,并且被安全模块98执行安全处理。服务处理模块103也处理去往本地服务网络客户端的被接收数据业务,服务处理模块103修改所述消息以适配于本地服务网络。然后将所述消息传送给SOAP代理模块102,该SOAP代理模块102添加在本地服务网络中可路由的本地服务网络寻址信息。然后由本地服务网络接口92通过本地服务网络将所述消息转发给本地服务网络客户端。
也基本如上所述地处理在外部服务网络中的提供商客户端与本地服务网络中的用户客户端之间的通信业务。
应当指出,服务网络网关的策略执行模块可以执行服务网络策略、服务策略和客户端策略中的任一个或全部。所述策略中的一些可以由网络控制器来中心管理,并从该网络控制器被下载。策略执行模块限制本地网络服务的外部可用性。
不管用户是本地服务网络的客户端还是外部服务网络的客户端,服务网络网关所进行的网络服务相关的交易审计,对于计费用户使用网络服务可能是有用的。尽管相同服务网络的客户端可能已经具有已建立的商业关系,然而本地和远程服务网络的所有客户端之间可能不存在现有的关系。在不同服务网络之间提供网络服务的情况下,服务间的网络交易的审计可能因此特别重要,以允许跟踪并计费网络服务活动。如所指出的,审计记录也可以为了除计费以外的目的而由网关、网络控制器或另一个系统来使用。
上面主要就通信网络设备描述了本发明的实施例,所述设备即客户端网关、网络控制器以及服务网络网关。图5是根据本发明实施例的方法的流程图。
方法130开始于132,即认证服务网络客户端的操作,在所述情况下,所述客户端是一个或多个网络服务提供商。由于认证了网络服务提供商,因此在134使所述提供商所提供的网络服务在服务网络中可用。在客户端网关执行所述操作。
在136,可用网络服务由服务网络网关通告给外部服务网络,并可能地由各个服务网络网关基于它们的策略而通告给多个服务网络,并由此使该服务在外部服务网络中可用。以预定间隔将其作为一组通告消息,或响应于本地网络服务提供商或用户、本地网络控制器或外部服务网络网关的明确请求,针对被添加到服务网络中的每个网络服务执行136的操作。在一些实施例中,服务网络网关执行首先注册于服务网络中的每个网络服务的接入控制策略,并且根据其策略外部地发布每个网络服务。本领域的技术人员应当认识到,服务网络中的XML路由对于分配事件通知可能是有用的,以在例如已经注册新网络服务时向服务网络网关告警。
138和139的操作反映了将外部网络服务从外部服务网络引入本地服务网络。在138,从外部网络接收说明性地以通告形式的外部网络服务信息,并且使该外部网络服务在本地服务网络中可用。被接收网络服务信息优选地也包括由客户端网关执行的接入策略,以控制到外部网络服务的接入。
图5所示的方法130仅出于说明的目的。执行图5所示的操作以及可能执行的其它操作的各种方式,根据前述内容是显而易见的。所说明的操作也可以被周期地重复、针对多个网络服务被重复、以不同顺序被执行和/或与所示不同地被划分或组合。
这里公开的服务网络网关功能支持专用服务网络或外部网络服务之间的网络服务的提供和消费。
上述内容仅是本发明原理应用的说明。本领域的技术人员可以在不脱离本发明范围的情况下实现其它安排和方法。
例如,服务网络可以包括除图1所示部件以外的部件。如图6所示,根据本发明另一实施例的通信系统110包括服务网络120,该服务网络具有结合客户端网关16、服务网络网关26和公共网络网关126进行操作的数据业务交换/路由部件118和网络控制器128。
图6的部件以与图1标记的部件基本相同的方式操作。然而,在图6中,服务网络120包括公共网络网关,该网关在公共网络123中针对服务网络120的客户端提供到服务网络120的接入点。公共网络网关126的一个可能的应用是针对移动服务网络客户端提供到服务网络120的接入。在系统110中,移动客户端可以通常通过企业系统12和例如16的客户端网关连接到服务网络120,并且仍从企业系统12的外部通过公共网络123和公共网络网关126,获得到服务网络120的接入。
公共网络网关有效地是客户端网关16的公共网络对应物,并且可能因而在结构和操作上基本类似于客户端网关16,尽管公共网络网关将服务网络120连接到公共网络123而不是客户端接入网络。通过公共网络网关126,也是服务网络120的客户端的网络服务系统122,可以使其网络服务在服务网络120中可用、消费在服务网络120中可用的网络服务,或进行这两个操作。网络服务系统122所支持的网络服务可以包括在公共网络123中被提供给用户的公共网络服务,和/或仅对系统122中的用户可用的专用网络服务。
可以基本上如上所述地针对客户端网关16并在一些情况下针对服务网络网关26,执行公共网络网关126的网络服务相关的功能,包括网络服务发布、客户端认证、监控和审计以及其它功能。如客户端网关16,公共网络网关126认证并授权客户端接入服务网络120以发布并使用网络服务,也可以从公共注册器向服务网络120发布服务并以基本如上所述的方式针对服务网络网关26处理网络间业务。
在上面参考的相关申请序号11/105,601中公开了公共网络网关126的细节。
尽管仅在服务网络120中明确示出了单个网络控制器,然而多个网络控制器可能存在于服务网络中。在所述情况下,如上所指出的,任何服务网络网关优选地与指定的网络控制器之一进行通信。其它网关,包括客户端网关16和公共网络网关126,可以与指定网络控制器或另一个网络控制器进行通信。
图2到图4所示的示例性网关和网络控制器部件类似地不是限制性的。本发明的实施例可以包括更少或附加的部件。与网络控制器通信的管理系统也可以例如与网关通信,即使为避免拥塞在图2和4的示例性网关30和90中没有显示管理系统接口。多个网关的功能也可以并入单个网关中。可以用客户端网关部件来增强服务网络,以变为用于本地和/或外部服务网络客户端的网络服务传送点。
服务网络客户端已经在这里主要作为企业客户端而被描述,但是不必与企业关联。可以结合非企业服务网络客户端来实现本发明的实施例。
本发明的实施例与任何特定注册表格式或内容无关。在许多情况下,服务网络的网络服务提供商客户端的地址或位置是固定的,并且因此这些地址或位置可以被存储在网络服务注册表中。外部网络服务提供商的网络地址或位置不受本地服务网络的控制(或在与本地服务网络相同的域中受控制),并且因此更可能改变。
此外,尽管主要就方法和系统进行了描述,然而也设想了本发明的其它实现,例如存储在机器可读介质上的指令。
权利要求
1.一种用于管理专用服务网络中的网络服务的装置,所述装置包括代理模块,被配置用来接收网络服务的网络服务信息,所述网络服务在服务网络中可用并具有关联的网络服务接入策略,该策略针对外部网络中的网络服务分配而指定了允许的接入级别,并且配置该代理模块以根据与所述网络服务相关联的网络服务接入策略,控制所述网络服务信息向外部服务网络的通告。
2.根据权利要求1的装置,其中,所述接入策略包括存储在所述专用服务网络的服务策略注册表中的服务策略。
3.根据权利要求1或2的装置,其中,还配置所述代理模块以从外部服务网络接收与所述外部服务网络中可用的外部网络服务相关联的网络服务信息,并且使得该外部网络服务在所述服务网络中可用。
4.根据权利要求3的装置,其中,配置所述代理模块以通过在所述服务网络的服务注册表中发布外部网络服务,使该外部网络服务在所述服务网络中可用。
5.根据权利要求4的装置,其中,配置所述服务注册表以存储信息,该信息与所述服务网络中可用的内部网络服务以及从所述外部服务网络可用的外部网络服务相关联。
6.根据权利要求3的装置,其中,所述与外部网络服务相关联的网络服务信息,包括针对控制到所述外部网络服务的接入而指定接入规则的接入信息,并且其中,所述代理模块根据该接入规则使所述外部网络服务在所述服务网络中可用。
7.根据权利要求1或2的装置,其中,所述代理模块包括网络控制器代理模块,配置该网络控制器代理模块以从包括所述服务网络的网络控制器的网络服务通告模块接收所述网络服务信息,并通过协调所述服务网络中用于网络服务的网络服务描述的通告来控制所述网络服务的通告,并且进一步配置所述网络控制器代理模块以从外部服务网络接收与该外部服务网络中可用的外部网络服务相关联的网络服务信息,并将该信息转发给所述网络控制器。
8.根据权利要求1或2的装置,还包括至少一个以下部件策略执行模块,被配置用来执行所述服务网络的策略;安全模块,被配置用来提供所述服务网络和外部服务网络之间以及所述服务网络内的安全通信;转发模块,被配置用来从所述服务网络向所述外部服务网络转发通信业务;简单对象访问协议代理模块,被配置用来使与网络服务相关联的服务消息在所述服务网络和外部服务网络的寻址方案之间适配;服务处理模块,被配置用来处理来自所述服务网络和所述外部服务网络二者的、与网络服务相关联的网络服务消息;数据收集器模块,用于收集所述服务网络和所述外部服务网络之间的交易的记录。
9.根据权利要求8的装置,其中,还配置所述简单对象访问协议代理模块以将与网络服务相关联的业务分类为控制业务或数据业务、将包括被接收网络服务信息的控制业务发送到所述代理模块以传送给所述外部服务网络,并且修改数据业务中的简单对象访问协议信息用于进一步处理。
10.一种用于管理专用服务网络的网络服务的系统,所述系统包括至少一个服务网络网关,其有效耦合到所述服务网络以及各个外部服务网络,所述至少一个服务网络网关中每个都包括根据权利要求1的装置;以及至少一个网络控制器,该至少一个网络控制器包括有效耦合到所述至少一个服务网络网关的指定网络控制器,用于管理网络服务接入策略,该策略关联于所述服务网络中可用的网络服务以及所述服务网络中可用的网络服务注册表。
11.根据权利要求10的系统,其中,所述指定网络控制器包括网络服务通告模块,其被配置用来识别网络服务并且产生包括与所识别的网络服务相关联的网络服务信息的通告消息,其中所述网络服务在所述服务网络中可用并具有允许在外部网络中分配该网络服务的关联的网络服务接入策略。
12.根据权利要求10的系统,其中,每个外部服务网络包括服务注册表,在该注册表中发布从所述服务网络被通告给所述外部服务网络的网络服务。
13.根据权利要求10到12中任一个的系统,其中,还配置每个服务网络网关的代理模块以从与其有效耦合的外部服务网络,接收与所述外部服务网络中可用的外部网络服务相关联的网络服务信息,并使所述外部网络服务在所述服务网络中可用。
14.根据权利要求10到12中任一个的系统,还包括至少一个以下部件客户端网关,其有效耦合到至少一个网络控制器和服务网络之一,以针对所述服务网络的客户端提供到所述服务网络的接入点,所述与所述客户端网关有效耦合的网络控制器管理要由该客户端网关执行的策略,以控制客户端接入所述外部服务网络和网络服务;以及公共网络网关,其有效耦合到所述服务网络和公共网络,以通过该公共网络针对所述服务网络的客户端提供到该服务网络的接入点、在该公共网络中针对所述服务网络的客户端提供到网络服务的接入点,或提供二者。
15.根据权利要求10的系统,其中,所述外部服务网络中每个都包括至少一个服务网络网关,其包括根据权利要求1的装置,并且有效耦合到所述外部服务网络和所述服务网络的各个服务网络网关;至少一个网络控制器,该至少一个网络控制器包括有效耦合到每个服务网络网关的指定网络控制器,以管理网络服务接入策略,该策略关联于所述服务网络中可用的网络服务以及该服务网络中可用的网络服务的注册表;以及至少一个以下部件客户端网关,其有效耦合到所述至少一个网络控制器和所述外部服务网络之一,以针对该外部服务网络的客户端提供到所述外部服务网络的接入点,所述与客户端网关有效耦合的网络控制器管理要由该客户端网关执行的策略,以控制客户端接入所述外部服务网络和网络服务;以及公共网络网关,其有效耦合到所述至少一个网络控制器、所述外部服务网络和各个公共网络之一,以通过该公共网络针对所述外部服务网络的各个客户端组提供到该外部服务网络的接入点、在该公共网络中针对所述外部服务网络的客户端提供到网络服务的接入点,或提供二者,所述与公共网络网关有效耦合的网络控制器管理要由该公共网络网关执行的策略,以控制客户端通过所述公共网络接入所述外部服务网络和网络服务。
16.一种用于管理专用服务网络中的网络服务的装置,所述装置包括代理模块,其被配置用来从外部服务网络接收与该外部服务网络中可用的外部网络服务相关联的网络服务信息,并使该外部网络服务在所述服务网络中可用。
17.根据权利要求16的装置,其中,还配置所述代理模块以通过在所述服务网络的服务注册表中发布外部网络服务,使所述外部网络服务在所述服务网络中可用,配置所述服务注册表以存储信息,该信息关联于所述服务网络中可用的内部网络服务以及从所述外部服务网络可用的外部网络服务。
18.一种用于管理专用服务网络中的网络服务的系统,所述系统包括至少一个服务网络网关,其有效耦合到所述服务网络以及各个外部服务网络,所述至少一个服务网络网关中每个都包括根据权利要求16的装置;以及至少一个网络控制器,该至少一个网络控制器包括指定网络控制器,该指定网络控制器有效耦合到每个服务网络网关以管理所述服务网络中可用的内部网络服务和所述至少一个外部服务网络中可用的外部网络服务的注册表,其中所述服务网络网关针对该外部网络服务接收信息。
19.一种用于管理专用服务网络中的网络服务的装置,所述装置包括网关接口,其有效耦合到服务网络网关,配置该服务网络网关以在所述服务网络和外部服务网络之间交换通信业务;以及网络服务通告模块,其有效耦合到服务注册表和网关接口,并且被配置用来通过网关接口从所述服务网络网关接收与外部服务网络中可用的网络服务相关联的外部网络服务信息、将所述外部网络服务发布给所述服务注册表、识别在所述服务网络中可用并具有允许在所述外部服务网络中分配网络服务的关联的网络服务接入策略的内部网络服务,并且产生与所识别的内部网络服务相关联的通告信息并通过网关接口将该通告信息转发给所述服务网络网关,所述通告信息包括用于将所识别的内部网络服务通告给所述外部服务网络的信息。
20.一种用于管理专用服务网络的系统,其中,使所述服务网络的网络服务提供商客户端所提供的网络服务对于该服务网络的网络服务用户客户端是可接入的,所述系统包括至少一个服务网络网关,其有效耦合到各个外部服务网络;以及至少一个网络控制器,该至少一个网络控制器包括有效耦合到每个服务网络网关并包括根据权利要求19的装置的指定网络控制器,每个服务网络网关协调所述服务网络的内部网络服务向与其有效耦合的外部服务网络的通告。
21.一种管理专用服务网络之间的网络服务的方法,所述方法包括识别服务网络中可用的网络服务,所述网络服务具有指定该网络服务的允许接入级别的关联的网络服务接入策略;如果所述关联于所识别的网络服务的网络服务接入策略,允许从所述外部服务网络接入所识别的网络服务,则向外部服务网络通告所识别的网络服务;从外部服务网络接收与所述外部服务网络中可用的外部网络服务相关联的网络服务信息;以及使所述外部网络服务在所述服务网络中可用。
22.根据权利要求21的方法,其中,所述接入策略包括存储在所述服务网络的服务策略注册表中的服务策略,还包括访问所述网络服务接入策略,该策略关联于所述服务策略注册表中被识别的网络服务。
23.根据权利要求21或22的方法,其中,所述使服务可用包括在所述服务网络的服务注册表中发布外部网络服务。
24.根据权利要求21或22的方法,其中,所述识别包括访问所述服务网络的服务注册表,以识别该服务网络中可用的内部网络服务,并且其中,所述使服务可用包括在所述服务注册表中发布外部网络服务。
25.一种存储指令的机器可读介质,当执行所述指令时实现根据权利要求21或22的方法。
全文摘要
公开了用于管理专用网络之间的网络服务的系统和方法。根据与每个网络服务相关联的策略来控制服务网络中可用的网络服务的通告。仅针对那些具有允许通过外部网络分配网络服务的关联策略的网络服务,将网络服务信息通告给外部服务网络。也可以从一个或多个外部服务网络将外部网络服务通告给服务网络,并随后使该服务在服务网络中可用。
文档编号H04L12/24GK1848766SQ20061006662
公开日2006年10月18日 申请日期2006年4月13日 优先权日2005年4月14日
发明者L·M·塞尔吉, B·麦克布赖德, B·S·布-迪亚布 申请人:阿尔卡特公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1