用于执行增强的服务路由的方法、系统和计算机可读介质的制作方法_2

文档序号:9476552阅读:来源:国知局
如,S9、S6a、SlUCx和Dx)相关联的直径信令消息的一个或多个模块。DA 106和108可以包括用于访问存储器126和/或用于执行增强的服务路由的功能。
[0028]DA 106可以包括DA管理者110、一个或多个DA-MP 112、用于提供服务“C”的一组服务提供者(服务C组)114、以及用于提供服务“D”的一组服务提供者(服务D组)116。DA管理者110可以是用于配置、管理或规定DA 106的一个或多个方面的任何合适的实体(例如,在DA-MP 112上执行的软件)。例如,DA管理者110可以包括用于与DSR 104中的各种DA通信和用于与一个或多个服务组交互的功能。DA管理者110还可以被配置为订阅和处理来自一个或多个服务组的服务能力信息,基于服务能力信息生成服务路由数据,和/或将服务路由数据存储在存储器126中。
[0029]DA-MP 112可以表示用于处理消息的一个或多个合适的实体(例如,一个或多个物理处理器、基于硬件的电路、现场可编程门阵列(FPGA)、专用集成电路(ASIC))。DA-MP112可以执行用于执行与增强的服务路由相关联的各种方面的软件或代码。例如,DA-MP112可以包括一个或多个进程,诸如直径应用。直径应用可以包括用于执行通信和处理功能的功能。例如,直径应用可以执行基于完整地址的解析并且可以在完成这种解析时与一个或多个服务提供者通信。在一些实施例中,直径应用可以执行与委托代理、翻译代理、重定向代理、中继代理或收费委托代理相关联的功能。例如,直径应用可以充当收费绑定服务提供者的委托。
[0030]服务C组114可以代表一个或多个服务提供者。服务C组114中的每个服务提供者可以是用于执行特定的服务“C”的任何合适的实体(例如,在DA-MP 112上执行的软件)。例如,由服务C组114的成员执行的示例性服务可以包括收费服务、会话绑定服务、收费绑定服务、数据库查找或查询服务、策略服务、策略规则服务、认证服务、计费服务或授权服务。
[0031 ] 在一些实施例中,服务C组114可以与一个或多个标识符相关联,诸如一个或多个组标识符(例如,组15)、一个或多个物理位置标识符(例如,IP地址或子网、刀片(blade)或服务器标识符、或全球定位系统(GPS)坐标)、操作状态标识符(例如,“可用”,“拥塞”或“不可用”)和/或冗余状态标识符(例如,“主要”、“备份”、“主要/备份”)。在一些实施例中,每个服务提供者(例如,服务C组114的成员或实例)可以与诸如服务提供者标识符(SPID)之类的唯一标识符相关联。例如,SPID可以是相对唯一的(例如,在某个组或位置内唯一)或通用唯一的(例如,在所有可用或活跃的服务提供者间唯一)。
[0032]服务D组116可以表示一个或多个服务提供者。服务D组116中的每个服务提供者可以是用于执行特定的服务“D”的任何合适的实体(例如,在DA-MP 112上执行的软件)。例如,由服务D组116的成员执行的示例性服务可以包括与由服务C组114的成员执行的服务不同。例如,如果服务C组114的成员执行收费服务,则服务D组116的成员可以执行认证服务。
[0033]在一些实施例中,服务D组116可以与一个或多个标识符相关联,诸如一个或多个组标识符、一个或多个唯一标识符(例如,用于组成员的SPID)、一个或多个物理位置标识符、操作状态标识符和/或冗余状态标识符。
[0034]在一些实施例中,服务组或服务提供者可以与多个DA相关联。例如,服务组(例如,服务E组)可以包括在或由DA 106和DA 108托管的服务提供者。
[0035]DA 108可以包括DA管理者118、一个或多个DA-MP 120、服务C组122和服务D组124。DA管理者118可以是用于配置、管理或规定DA 108的一个或多个方面的任何合适的实体(例如,在DA-MP 112上执行的软件),并且可以包括类似于DA管理者110的功能。DA-MP 120可以包括类似于DA-MP 112的功能。服务C组122的成员可以包括类似于服务C组114的成员的功能。在一些实施例中,服务C组122可以与不同于服务C组114的组标识符的组标识符相关联。例如,如图1中所示出,服务C组122可以与组30相关联,而服务C组114可以与组15相关联。服务D组124的成员可以包括类似于服务D组116的成员的功能。在一些实施例中,服务D组124可以与不同于服务D组116的组标识符的组标识符相关联。例如,如图1中所示出,服务D组124可以与组20相关联,而服务D组116可以与组15和20相关联。
[0036]虽然图1绘出了在DSR 104内的服务组,但是应当理解,一些服务组或者其中的服务提供者可以由不同于DSR 104的另一个DSR(未在图1中示出)或节点托管。例如,服务提供者可以与图1中未示出的订户简档存储库(subscriber profile repository,SPR)或归属订户服务器(home subscriber server,HSS)相关联。
[0037]图2是示出了根据本文所述主题的实施例的执行某些直径应用的示例性DA-MP200的示图。DA-MP 200可以包括与上述用于DA-MP 112和/或DA-MP 122的功能类似的功能。在图2所示的实施例中,DA-MP 200可以包括和/或执行直径桟(Diameter stack),例如,在不同的开放系统互连(OSI)层处理直径消息的软件。在一些实施例中,DA-MP 200可以支持这样的直径栈:该直径栈包括用于处理直径连接和/或在各种DA或直径节点之间通信的直径连接层(DCL) 201,用于基于消息内容来将请求消息路由到对等端或本地应用、基于消息内容规则和/或对等端拥塞控制来丢弃或拒绝直径请求消息的直径路由层(DRL) 202,及用于托管各种直径应用和相关功能的直径应用层(DAL) 204。在一些实施例中,DA-MP 200可以包括具有不同功能的不同和/或附加层,和/或可以包括合并的层。
[0038]DAL 204可以包括一个或多个直径应用,包括APPl 206、APP2 208和APP3 210。例如,一些直径应用(例如,APPl 206、APP2 208和/或APP3 210)可以支持、仿真或执行与发起或者终止直径会话的可寻址直径节点端点(例如,直径客户端、服务器或翻译代理)相关联的功能。一些直径应用可以支持直径中继代理,该直径中继代理可以是或不是拦截某些类型的消息并向对等端发送包含新目的地路由信息的响应消息的可寻址直径节点。另一种直径应用可以是背靠背应用(back-to-back applicat1n)。背靠背应用可以终止来自一个节点的直径会话、代表请求者发起新的会话、以及在两个节点(例如,AAAH服务器)之间使会话相互作用。一些直径应用可以将自身插入在端对端事务信令流(请求/应答)中并且可以在消息(例如,直径委托代理)中添加或修改AVP。一些直径应用可以拦截某些消息并且可选地修改这样的消息:该消息例如影响消息路由但可能不会保留在端对端信令中。
[0039]在一些实施例中,直径应用可以在执行某个功能时请求和使用一个或多个服务。例如,直径应用可以请求由一个或多个服务提供者来执行服务。在本示例中,直径应用可以使用服务路由信息或用于确定服务拓扑的其它信息,以便确定一个或多个适当的服务提供者。
[0040]在一些实施例中,服务可以与直径应用解耦合。通过使直径应用和服务解耦合,直径应用和/或服务中的每个都可以被独立地扩展(例如,基于预测的服务负载,可以增加或减少服务提供者)、可以以灵活的方式部署(例如,可以在各种物理位置和/或不同的时间部署)、并且可以独立地成为冗余(例如,利用主要和备份的组而成为高度可用)。例如,无论当前有多少直径应用正在使用或执行,都可以向各种服务组(例如,服务D组23 222)添加附加的服务提供者或服务实例(例如,D4和D5),以增加处理容量。另外,通过使直径应用和服务解耦合,多个直径应用可以请求和使用来自一个或多个服务提供者的服务,由此提高资源效率。作为对照,常规的直径应用被耦合到或执行不在其它直径应用之间共享的服务。
[0041]在图2所示的实施例中,APPl 206、APP2 208和APP3 210可以与一个或多个服务提供者和/或服务提供者组相关联。例如,APPl 206可以与服务A组212相关联,APP2 208可以与服务B组214和服务C组216相关联,而APP3 210可以与服务B组214和服务D组218-222相关联。在一些实施例中,直径应用可以在确定哪些服务可用于执行各种服务时和/或在确定如何与相关的服务提供者交互时咨询一个或多个数据库。每个直径应用可以针对服务路由信息咨询存储器126,并且使用该服务路由信息来选择适当的服务提供者、实例或相关的组。
[0042]直径应用可以在执行负载均衡时咨询一个或多个数据库。例如,每个直径应用(例如,APPl 206)可以维护历史信息和/或负载均衡信息。历史信息可以针对给定服务指示最近使用最多的服务提供者和/或最近使用最少的服务提供者。其它负载均衡信息可以包括用于在一个或多个服务提供者之间分配负载的实现方式、算法或公式。通过利用历史信息和/或负载均衡信息,直径应用可以以均衡的方式提供服务请求。
[0043]服务A组212可以包括服务A的多个实例,例如A1-A3。每个服务A实例可以能够执行与例如来自DA 200或在其中执行的直径应用的一个或多个直径消息相关联的服务。在一些实施例中,服务A组212和/或其中的实例可以与组相关联。该组可以基于物理和/或逻辑位置。例如,服务A组212的每个实例可以在同一计算平台或刀片处执行。在一些实施例中,服务A组212可以与诸如主要或备份组之类的冗余组相关联。
[0044]服务B组214可以包括服务B的多个实例,例如,B1-B5。每个服务B的实例可以能够执行
当前第2页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1