CN101755434B - 移动用户数据系统 - Google Patents

移动用户数据系统 Download PDF

Info

Publication number
CN101755434B
CN101755434B CN200880019679.1A CN200880019679A CN101755434B CN 101755434 B CN101755434 B CN 101755434B CN 200880019679 A CN200880019679 A CN 200880019679A CN 101755434 B CN101755434 B CN 101755434B
Authority
CN
China
Prior art keywords
data
data repository
user profile
user
entry
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.)
Expired - Fee Related
Application number
CN200880019679.1A
Other languages
English (en)
Other versions
CN101755434A (zh
Inventor
W·M·邦迪
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Apertio Ltd
Original Assignee
Apertio Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Apertio Ltd filed Critical Apertio Ltd
Publication of CN101755434A publication Critical patent/CN101755434A/zh
Application granted granted Critical
Publication of CN101755434B publication Critical patent/CN101755434B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4588Network directories; Name-to-address mapping containing mobile subscriber information, e.g. home subscriber server [HSS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

公开了遵循目录数据系统的X.500标准的逻辑网络目录数据库。该网络目录数据库提供可由需要用户信息的各种控制和管理过程访问的服务数据和用户的源。网络目录数据库可以扩展到各种通信服务供应商和IT领域。此外,公开的网络目录数据库可以应用于新的和现有服务,诸如IP多媒体子系统、未许可的移动访问(UMA)及其它IP服务。

Description

移动用户数据系统
技术领域
本发明的实施例涉及用于在网络中提供数据和服务的系统和方法。更具体地,本发明的实施例涉及使用在具有大量用户的通信网络中的耐用的、高速数据访问可行的系统和方法,该用户各自的数据可以被配置在集中式数据存储库中,用于由工作在该网络内的各种应用访问。
背景技术
移动和固定网络运营商想要过渡到完全聚合的通信服务供应商(CSP)。新用户服务的不断变换的商业策略和实施方式已经在典型的CSP内形成可操作的和功能性的数据仓(silo)。许多传统的通信网络是基于对主要为语音通信建立的核心网络的功能上的覆盖的非结构化的修补工作。数据复制常常存在于用户数据库、服务创建和供应过程、管理、支持和开帐单(billing)中。
许多CSP想要利用基于创建的内容的服务的传递,这些服务要求大范围的市场细分。此新生领域已被为多媒体服务制作的新的应用与设备推动(fuele)。但是,在移动和固定线路服务之间仍然存在一些牢固的边界,因为产品常常是围绕访问方法与设备而不是围绕用户的需要而定形的。
图1描述现有技术中CSP采用的典型网络架构100。网络架构100包括操作支持系统(OSS)/商业支持系统(BSS)/IT领域系统102,诸如应用106a-106c的一个或多个应用以及核心信令网络108。OSS/BSS/IT领域系统102包括供应系统110和网络管理系统112。应用106a-106c的每个包括逻辑部分107a和数据部分107b。每个应用106a-106c的逻辑部分107a主要(如果不排他的话)访问它各自的数据部分107b。每个应用106的数据部分107b一般存在于某类数据库中,例如关系数据库。应用106a-106c可以提供例如归属位置寄存器(HLR)、归属用户服务器(HSS)、语音邮件系统、验证、授权和记帐系统(AAA)、移动号码可携(MNP)等等。这些应用都是本领域已知的。
随着CSP将越来越多的新服务增加到它们的系统中,诸如IP多媒体子系统(IMS)和未许可的移动访问(UMA),它们可以发现由于在通用(generic)关系数据库技术配置期间涉及的显著定制化而使得它们很难实现。随后,随着新的服务和用户类型的演变,它们各自的模式也可能难以加强。换句话说,随着应用106a-106c的数目变得越来越大,CSP将经受越来越多的操作问题,诸如可伸缩性、性能和管理。这些问题将增加成本并且导致操作故障时间,进一步增加了成本。因为基础技术对于访问时间有着实际极限,所以基于通用盘的平台很可能将证明难以调整。
设备出售商常常难以生产可以以对于CSP经济可行的时间表和价格点交付的产品部件组。结果,CSP常常发觉自己“受困”于设备出售商,其已经限制了与其它出售商的系统的互操作性,从而限制了当需要升级时CSP的操作灵活性和对设备出售商的选择。此外,专有的硬件不趋向于经济地调整,常常导致一些备用容量块不能由CSP有效使用。
因而,直到CSP改进它们用于将新的应用配置到它们的网络的系统和方法,它们的商业和它们的用户才能够完全地利用由它们配置的现代的通信网络。
发明内容
上述缺点、劣势和问题由本发明的实施例来解决,通过阅读和研究以下说明来理解本发明的实施例。
本发明的实施例提供一种系统,用于具有分布式用户数据存储库的通信网络中用户数据的改进通信。该系统包括多个与数据存储库相关联的事件转发器,该数据存储库包含用户数据从而该数据存储库包括一部分分布式用户数据存储库,其中每个事件转发器被配置为监视对在其数据存储库中的用户数据的访问请求,确定访问请求响应时间是否超过了性能阈值并对于超过了性能阈值的每个访问请求将用户数据传输指示符发送到传输管理器。该系统还包括传输管理器,被配置为从多个事件转发器接收用户数据传输指示符并对于每个用户数据传输指示符确定是否应该将用户数据组从与发送用户数据传输指示符的事件转发器相关的第一数据存储库传输到与该访问请求相关的第二数据存储库。该系统进一步包括传输控制器,被配置为控制用户数据组从第一数据存储库到第二数据存储库的移动。
本发明的实施例提供了一种方法,用于具有分布式用户数据存储库的通信网络中用户数据的改进通信。该方法要求监视对多个数据存储库中用户数据的访问请求,其中每个数据存储库代表分布式数据存储库中一部分用户数据,其中每个数据存储库由多个事件转发器中的事件转发器监视。该方法还要求与多个数据存储库的第一数据存储库关联的事件转发器确定对用户数据组的访问请求响应时间是否超过了性能阈值,其中如果访问请求响应时间超过了性能阈值则事件转发器将用户数据传输指示符发送到传输管理器。该方法还要求由传输管理器接收用户数据传输指示符并确定该用户数据组是否应从多个数据存储库中的第一数据存储库被传输到第二数据存储库,其中该第二数据存储库与访问请求相关联。该方法还要求当传输管理器确定第一组用户数据应从第一数据存储库传输到第二数据存储库时,在传输控制器的监督下将该组用户数据从第一数据存储库移动到第二数据存储库。
附图说明
图1描述现有技术中CSP采用的典型网络架构100;
图2是描述本发明的实施例可以在其中工作的电信系统200的框图;
图3是提供核心网络(诸如图2所示的CN206)的进一步的细节的框图,本发明的实施例可以与其互操作;
图4提供根据本发明的实施例的网络架构400中的数据存储的功能图;
图5描述根据本发明的实施例的目录信息库(DIB)500;
图6描述根据本发明的实施例的目录信息树(DIT)600;
图7A示出了根据本发明的实施例的目录系统代理(agent)(DSA)702和目录用户代理(DUA)704;
图7B示出了根据本发明的实施例的包括三个DSA702a、702b和702c的分布式分级结构;
图8示出了根据本发明的实施例的在图7B所示的DSA的分布式分级结构中的优化路由;
图9A描述根据本发明的实施例的具有别名条目902的DIT900;
图9B示出了根据本发明的实施例的别名隐藏模块903,其与包括别名903的DIT900交互以对来自于请求实体920的数据请求执行别名隐藏;
图10A描述根据本发明的实施例的具有变量条目1002的DIT1000;
图10B示出了根据本发明的实施例的在包括来自于请求实体1020的数据请求的变量1002的DIT1000中的变量处理;
图11A示出了根据本发明的实施例的协议适应模块1107;
图11B示出了根据本发明的实施例的协议适应的连续或顺序处理的示例;
图11C示出了根据本发明的可替换实施例的协议适应模块1107,其实质上充当虚拟目录服务器(或LDAP/DAP代理服务器),向诸如图7A所示的DS706a的目录操作服务器1109发送通信(例如,LDAP或DAP操作);
图11D描述根据本发明的实施例的具有由协议适应提供的适应命名配置的DIT1100;
图11E描述根据本发明的实施例的具有由协议适应提供的属性适应的DIT1150;
图12示出了根据本发明的实施例的使用协议适应的形式实现的访问控制(AC)系统;
图13A示出了根据本发明的实施例的用于在通信网络中数据存储库当中的用户数据的改进通信的流动用户数据系统,诸如移动电信系统204;
图13B示出了根据本发明的实施例的包括如图13A所示的流动用户数据系统的典型部件;
图13C示出了根据本发明的实施例的用于加入该流动用户数据系统的DSA的典型配置数据1310;
图13D提供了根据本发明的实施例的用于该流动用户数据系统的高级算法;
图14描述根据本发明的实施例的日志系统1400;
图15A是描述根据本发明的实施例的存储在目录1500中的数据(诸如由图3所示的HSS301使用的数据)的分级结构的框图;
图15B是描述根据本发明的实施例的HSS(诸如图3所示的CN206的HSS301)架构的框图;
图16A和图16B是分别描述根据本发明的实施例的用于HSS301和HLR307的协同主系统1600和协同定位系统1620的框图;
图16C示出了根据本发明的实施例的已被被配置为保持用于诸如HSS301和HLR307的应用的服务数据1619的前端1601;
图17是描述根据本发明的实施例的便于静态访问条目的存储在目录1700中的数据的分级结构的框图;
图18A示出了根据本发明的实施例的使用可以可能受益于提高的定时机构的高速接入点(HSAP)的通信网络1800;
图18B提供根据本发明的实施例的可以受益于提高的定时机构的图18A所示的通信网络1800的物理图;
图18C示出了根据本发明的实施例的来自于诸如由DSA1831保持的目录的目录的用户条目1841;
图18D示出了根据本发明的实施例的在由DSA1831保持的目录中具有计时器条目1851的计时器1850;和
图18E示出了根据本发明的实施例的在图18B所示的DSA1831上实现的分布式定时机构。
具体实施方式
总述
传统的移动电信网络是演进而不是革命的结果。随着通信市场的演变,合并和采集与改变商业策略一起已经引起典型的通信服务供应商(CSP)内的可操作的和功能性的数据仓。典型的网络是从对主要为语音通信而建立的核心网络的一系列功能覆盖而产生的。因而,复制(duplication)常常存在于用户数据库、服务创建和供应过程、管理、支持和开帐单中。许多CSP想要合理化和巩固它们的商业以除去此复制以便降低成本、提高效率以及最终改进用户服务。同时,CSP常常还需要增加容量、增加功能的增强以及更换老化的基础结构。此外,CSP还可能想要准备在语音通信和其它技术之间的进一步聚合。
新的电信范例可以以CSP的用户为中心而较少地以网络硬件和软件本身为中心。不同于图1所示的混乱和笨重的专有数据仓,CSP可以向新的范例移动,在该新的范例中,系统的数据是开放的,因而允许网络的应用更集成和可互操作。因而,此新的范例实质上将用户的数据放置在网络的核心,因为访问和共享信息不应该必须被限制在诸如用户在哪里、用户的连接类型、或用户选择如何与CSP交互等因素。解决这些限制可以允许CSP将传统上隔开的服务汇集到内聚的多媒体多路访问通信服务中。
因而,本发明的实施例可以提供单个逻辑目录数据库,其包含可由那些需要用户信息的控制和管理过程访问的用户和/或服务数据的统一源。该集中式数据存储库可以允许传统的网络和应用数据库以可调整的、节约成本的方式组合在一起,其打破了在传统网络中发现的诸如图1所示的数据库的分开的数据库。因而,本发明的实施例可以为核心网络应用和跨许多或所有领域提供单个信息源。
通过移植到聚焦于用户作为CSP操作的中心的数据范例,CSP可以实现较大的集成度和互操作性。将用户放在它们的操作的中心也可以使得CSP更容易的保持准确和完整的用户信息。诸如图1所示的传统网络的许多数据库仓可以被转换为单个高度可调整的高性能网络目录,其可以由需要处理用户数据的网络或商业应用来访问。
如上所述,本发明的实施例可以采用单个逻辑目录数据库,其包含可由那些需要此信息的控制和管理元件访问的用户和服务信息的单个源。本发明的实施例采用的优选的目录数据库遵循X.500协议。根据本发明的实施例,该目录数据库可以为目录数据系统提供遵照ITU-TX.500标准的开放集中式数据库。根据本发明的实施例,该目录数据库通常包括用户、服务和网络数据以及可执行的软件进程(procedure),其经由诸如轻量级目录访问协议(LDAP)和目录访问协议(DAP)等等的行业标准目录协议可用于应用。
以用户为中心的网络可以使得诸如归属用户服务器(HSS)和归属位置寄存器(HLR)的传统网络元件的质量增强,以及帮助配置IP多媒体子系统(IMS)服务。因此,本发明的实施例可以包括改进的HSS和/或改进的HLR子系统。
本发明的实施例还可以提供使得用户被识别一次的公共验证,通常在登录到网络时并且为全范围的服务查验。此进程通常消除了每当用户试图使用服务的不同方面时再验证的需要。
本发明的实施例还可以提供可调整的数据库解决方案,其允许应用补充(leverage)相同的逻辑和可调整的X.500目录,其通常包含大部分用户需要的信息。因此,通常仅仅需要一次供应。然后,应用可以简单地使用相同的数据集。本发明的实施例可以采用基于X.500目录的数据库,其向现有网络应用和支持系统提供用户数据。
本发明的实施例可以结合某类数据存储库(例如数据库)来工作。与其它的数据存储库类似,用于本发明的实施例中的数据存储库通常由数据库管理系统(DBMS)管理。DBMS通常执行各种高级别和低级别的功能。这里公开和要求的本发明不包括传统上由DBMS执行的低级别的功能。这样的低级别功能包括非常基本的动作,诸如接收一段数据、确定特定类型的特定存储器中的特定扇区、然后与该存储器的硬件交互以存储接收的数据的物理过程。这里公开和要求的高级别DBMS部件可以与各种低级别DBMS部件互操作。一个这样的低级别DBMS部件被称为DirecTreeTM,一种高性能、低级别的内存储数据库系统,由ApertioLimited拥有,其是这里公开的本发明的转让人。DirecTreeTM的结构和操作作为商业秘密由ApertioLimited保持。尽管本发明的实施例可以与DirecTreeTM结合工作,但是此特定的低级别DBMS不是这里公开和要求的本发明的一部分。
图2是描述电信系统200的框图,其中本发明的实施例可以关于此工作。电信系统200可以在功能上被分类为固定电信系统202和移动电信系统204。固定电信系统202的示例包括公共交换电话网(PSTN)。移动电信系统204提供移动的电信服务,诸如双方经由移动电话彼此通信。此外,移动电信系统204通过功能接口216与固定电信系统202连接,以允许移动用户和固定用户之间的通信。
移动电信系统204在逻辑上被分成核心网络(CN)206和接入网络(AN)208。CN206通常包括这三个域:电路交换(CS)域210、分组交换(PS)域212和IP多媒体子系统(IMS)域214。这些域通常在它们支持用户通信以及包括一起执行该域的特定技术功能的硬件和软件系统方面不同。例如,通常根据认可的电信标准,PS域212包括执行分组交换通信的软件和硬件系统。
CS域210是指使支持信令和用户通信的基于电路交换的连接可行的硬件和软件部件。CS连接通常在连接建立的时候分配网络资源以及在连接释放的时候释放这些网络资源。通常包括在CS域210中的部件是移动服务交换中心(MSC)、网关MSC(GMSC)、MSC服务器、CS媒体网关功能(CS-MGW)、GMSC服务器和互通功能(IWF)。CS域210和这些部件在本领域中是已知的。
PS域212是指使支持信令和用户通信的基于PS的连接可行的硬件和软件部件。PS连接通常使用被分成分组的比特的自主连接(concatenation)来传输用户数据,其中每个分组可以区别于其它分组被独立地路由。PS域212通常包括涉及通用分组无线服务(GPRS)的部件,诸如服务GPRS支持节点(SGSN)和网关GPRS支持节点(GGSN)。PS域212还通常包括用于执行边界网关协议(BGP)的部件。PS域212和这些部件在本领域中是已知的。
IMS域214是指提供IP多媒体服务的部件,这些IP多媒体服务诸如音频、视频、文本、聊天等等以及它们的组合,通过PS域212被传送。IMS域214通常包括诸如呼叫会话控制功能(CSCF)、媒体网关控制功能(MGCF)和媒体网关功能(MGF)、IMS-媒体网关功能(IMS-MGW)、多媒体资源功能控制器(MRFC)、多媒体资源功能处理器(MRFP)、中断网关控制功能(BGCF)、应用服务器(AS)和决策功能(PDF)的部件。IMS域214和这些部件在本领域中是已知的。
AN208通常包括基站系统(BSS),被配置为根据标准的通信系统提供通信,诸如全球移动通信系统(GSM)和/或用于通用移动电信系统(UMTS)的无线网络系统(RNS)。这些传统系统在本领域中是已知的。
图3是提供核心网络(诸如图2所示的移动电信系统204中的CN206)的进一步细节的框图,本发明的实施例可以关于其进行工作。
如上所述,CS域210通常包括MSC区域313和GSMC区域315。MSC区域313向漫游到由MSC区域313所服务的区域内的移动用户提供用于电路交换呼叫、移动性管理及其它服务的电话交换。尽管图3中示出了单个MSC区域313,但是在移动电信系统202的许多实施方式中,CS域210可能包含多个MSC区域313。此外,MSC区域313在公共编号规划和公共路由规划内在固定电信系统202和移动电信系统204之间在CS域210中为呼叫建立提供功能接口。GSMC区域315找到包括正在被呼叫的用户的MSC区域313。因而,MSC区域313将呼叫从固定电信系统202路由到移动电信系统204,以及在移动电信系统204内路由呼叫。
如上所述,PS域212通常包括SGSN区域317和GGSN区域319。SGSN区域317在公共编号规划和公共路由规划内为呼叫建立在固定电信系统202和移动电信系统204之间在PS域212中提供功能接口。因而,SGSN区域317执行与移动电信系统204中采用的无线网络的互通(interwork)。GGSN区域319提供无线网络和诸如因特网或私用网络的另一个网络之间的网关。
如上所述,IMS域214包括呼叫会话控制功能(CSCF)321。CSCF321通常包括在IMS域214中处理信令分组的服务器和相关代理。CSCF321处理各种功能,诸如IMS注册、消息检查、用户验证、策略控制、带宽管理、收费记录。CSCF321在执行它的功能时可以采用一个或多个标准协议,诸如Diameter协议。
CN206还通常包括与CN206内的各个域(诸如CS域210、PS域212和IMS域214)互操作的部件。这些本领域中已知的部件包括归属用户服务器(HSS)301、访问位置寄存器(VLR)303和设备识别寄存器(EIR)305。
HSS301包括负责保持与图2所示的移动电信系统204的用户相关的信息的应用。各个域使用此信息来用于各种目的,诸如代表用户建立呼叫/会话。例如,HSS301通过执行和/或确保诸如验证、授权、计费(AAA)、命名/寻址解析、位置从属性之类的步骤的执行来支持路由进程。
因此,HSS301通常保持有关用户的信息,诸如用户标识、编号和寻址、用于AAA的网络接入控制的用户安全信息、用户位置信息;和用户简档信息。保持在HSS301中的传统用户标识符可以包括下列项中的一个或多个:国际移动用户标识(IMSI)323、移动站国际ISDN(MSISDN)325号码、私有标识327和公共标识329。HSS301的实施例可以基于诸如3GPP标准之类的标准。
HSS301与三个域(CS域210、PS域212和IMS域214)连接并且影响这些域的功能。尽管图3仅仅示出了单个HSS301,但是典型的核心网络206可以包括多个HSS。多个HSS的配置通常基于各因素,诸如用户的数目、电信系统200中采用的硬件的容量、和电信系统200的总体组织。
HSS301可以包括诸如归属位置寄存器(HLR)307、验证中心(AuC)309和HSS逻辑功能(HSS-LF)模块311的应用。这些应用在本领域中是已知的。
HLR307包括诸如目录的数据存储库,其保持给定组的用户的位置信息。换句话说,电信系统的用户分配给HLR307用于记录的目的,诸如用户信息。HLR307通常向诸如SGSN区域317和GGSN区域319之类的PS域212部件提供支持,以便使得用户能够访问PS域212内的服务。相似地,HLR307向诸如MSC区域313和GMSC区域315之类的CS域210部件提供支持,以便使得用户能够访问由CS域210提供的服务以及支持诸如CS域210内漫游的服务。尽管图3中仅仅示出了单个HLR307,但是典型的核心网络206可以包括多个HLR。
AuC309与HLR307有关并且为向HLR307注册的每一个用户存储标识密钥,诸如私有ID(PrivateID)327。此标识密钥便于生成诸如公共ID(PublicID)329的用户的安全数据。此外,AuC309可以包含与移动电信系统204和用户设备的IMSI323的验证相关的信息。此外,AuC309包括用于确保通过在移动站(MS)和移动电信系统204之间的无线电路径通信的完整和安全的信息。每个AuC309通常通过通常表示为H接口的接口仅仅与它的关联HLR307进行通信。HLR307通过H接口从AuC309请求该信息、存储该信息并且根据需要将它传递到核心网络206中适当的部件。
HSS-LF311模块包括使诸如移动性管理、会话建立支持、用户安全信息产生、用户安全支持、用户标识处理、访问授权、服务授权支持和服务供应支持之类的服务可行的功能模块。
VLR303通常控制CS域210中的MSC区域313以及实际上控制在MSC区域313中漫游的MS。当MS“进入”由MSC区域313覆盖的移动电信网络204的一部分时,MSC区域313将MS注册在VLR303中。在注册过程中,控制移动电信网络204的给定部分的MSC区域313检测该MS并且向VLR303提供有关该MS的信息。在从MSC区域313接收到信息后,VLR303检查MS的注册状态。如果该MS未被注册在VLR303中,则VLR303请求该HLR307提供与该MS相关的信息以便于正确处理涉及该MS的呼叫。VLR在本领域中是已知的。
由VLR303访问的与该MS相关的信息通常包括诸如IMSI323、MSISDN325、移动台漫游号码(MSRN)、MS已被注册在其中的MSC区域313、MS已被注册在其中的SGSN区域317(在其中移动网络支持GPRS并且提供VLR303和SGSN区域317之间的接口)的标识之类的数据。在本发明的实施例中,VLR303可以与多于一个MSC区域313互操作。
EIR305提供负责存储该国际移动设备标识(IMEI)的逻辑实体。该设备可以被分类为“白名单”、“灰名单”、“黑名单”或它可以是未知的。在传统的CN206中,EIR305至少保持白名单。
用户-中心的存储数据
图4提供根据本发明的实施例的网络架构400中的数据存储的功能图。网络架构400包括操作支持系统(OSS)/商业支持系统(BSS)系统402、数据存储库404、诸如应用406a-406e的一个或多个应用以及核心信令网络408。
OSS/BSS系统402包括供应系统410和网络管理系统412。OSS/BSS系统402包括CSP使用的各种计算系统。包括供应系统410和网络管理系统412的OSS/BSS系统402包括移动电信网络的“网络系统”,其支持诸如保持网络清单、供应服务、配置网络部件和管理故障之类的过程。BSS系统包括用于处理用户、支持诸如接受订单、处理票据和收集付款的过程的“商业系统”。
根据本发明的实施例,数据存储库404提供集中式数据域,其支持借助诸如应用406a、406b、406c、406d和406e的一个或多个应用以及诸如供应系统410和网络管理系统412的BSS/OSS系统对诸如用户和服务数据之类的数据的开放访问。例如,数据存储库404可以包括为HSS存储的数据,诸如与图3所示的HSS301有关的数据,以及包括用于整个移动电信网络204的数据集。因此,根据本发明的实施例,应用406a-406e可以分别包括HSS301和/或HLR307。根据本发明的实施例,应用406a-406e还可以包括诸如语音邮件系统、验证、授权和计费(AAA)系统、移动号码可携之类的应用。这些应用都是本领域已知的。另外的应用406也可以包括在网络400中。根据本发明的实施例,数据存储库404可以被配置为ITU-TX.500目录应用。
在本发明的实施例中,数据存储库404的软件架构提供单个逻辑目录实体。根据本发明的实施例,每个物理实体可以访问每个数据记录,从而提供高可靠性和性能。在本发明的各个实施例中,数据存储库404支持各种开放接口,诸如目录访问协议(DAP)、轻量级目录访问协议(LDAP)、结构化查询语言(SQL)、OBDC/JDBC等等。这些本领域中已知的开放接口简化了将存储在数据存储库404中的数据链接到诸如客户关系管理(CRM)系统之类的商业应用。
在本发明的实施例中,数据存储库404被实现为内存储数据存储库。数据存储库404的内存储操作通常比基于磁盘的系统快得多。因而,根据本发明的实施例,数据存储库404可以提供为CSP产生高性能和低成本的效能。
图5描述根据本发明的实施例的目录信息库(DIB)500。例如,DIB500表示图4所示的数据存储库404的目录结构。DIB500包括根目录(root)502和一个或多个条目,诸如条目504a、504b、504c、504d等等。条目504a-504d以下简称为条目504。条目504a-504d可以可替换地被称为“对象”。DIB500中的每个条目504可以包括一个或多个属性,诸如,例如,条目504c包括属性506a、506b、506c、506d等等。属性506a-506d以下简称为属性506。每个属性506可以包括类型508和一个或多个值510。DIB500表示存储在目录中的数据集。例如,DIB500可以包含向通信网络描述用户的数据,例如移动电信网络204中的用户。
图6描述根据本发明的实施例的目录信息树(DIT)600。DIT600表示图5所示的DIB500的结构(模式)。DIT600包括根节点602和条目504,诸如条目504a-504i等等。这里DIT600被表示为在底部具有根节点602的分层树形结构。树中的每个节点是条目504。如果DIT600已被构造为遵守各种标准格式,诸如X.500标准,则DIB500中的每个条目504通过区别名称(DN)而唯一地且明确地识别出。例如,除条目504c的特别标识的属性(区别值)之外,条目504c的DN基于上级条目(诸如条目504a)的DN。该区别值和它的关联类型也被称为相关区别名称(RDN),其相对于条目504c的父条目(诸如条目504a)唯一地识别条目504c。因此,为了描述RDN,使用条目504c的属性类型和区别值。例如,对于条目504a,如果DN是“c=UK”,其中“c”是属性类型(“国家”的缩写)以及“UK”是该条目的区别值,而对于“o=我的公司(MyCompany)”的条目504c(其中o是属性类型(“组织”的缩写)以及′我的公司′是该条目的区别值),则504c的DN将是“o=我的公司,c=UK”或“我的公司.UK.”。DN类似于万维网中所用的URL。
目录系统代理-优化的路由
移动电信系统204可以包括巨大数量的用户。例如,一些电信系统包括百万计的个人用户。因此,尽管可以逻辑地表示与这些用户有关的数据,诸如图4的集中式数据存储库404中所示的,但是物理实施例可以使得数据被分割成有意义的子组,以向电信系统提供更大的速度和总体耐用性。根据本发明的实施例,例如数据可以被存储和复制在服务器的网络上。在X.500中,由目录服务器代理(DSA)保持(控制)数据的分割。
图7A示出了根据本发明的实施例的目录系统代理(DSA)702和目录用户代理(DUA)704。DSA702包括一个或多个目录服务器,诸如目录服务器706a-706c等等。根据本发明的实施例,一个或多个目录服务器706a-706c的每一个包括数据存储库708a-708c等等,以下简称为数据存储库708。数据存储库708优选地包括内存储数据库。根据本发明的实施例,目录服务器706a-706c也包括目录服务器软件,诸如目录服务器应用软件707a-707c。
根据本发明的实施例,DSA702被配置为确定它的各个目录服务器706a-706c的每一个的容量和负荷。DSA702还可以检测目录服务器706a-706c中的任何一个不在通信的时间、是否由于计划的维修或由于通信、硬件或其它故障。如图7A所示,DSA702被实现为不同的目录服务器(诸如目录服务器706a-706c)的群。因而,DSA702可以使用它的对目录服务器的状态和容量的认识来快速且高效地处理数据请求。实质上,DSA702作为比在它的控制之下单独动作的目录服务器中的任何一个更高效且更耐用的目录服务器而工作。当然,DSA702可以被实现为具有比图7A所示的更多或更少的目录服务器706。在本发明的实施例中,目录服务器706中的每一个运行相同的软件部件并且将DIB500(图5所示)的至少一部分的相同副本保持在DSA702负责的内存储数据存储库708中。
DUA704是例如LDAP或DAP客户端的目录服务客户端的传统术语。根据本发明的实施例,例如,DUA704代表各种客户端应用将数据请求作为LDAP操作。将如图7B所示的,典型的配置包括多个DSA702。DUA704连接到DSA702中的一个中的DS706中的一个。该服务器的DSA702可以保持与该请求相关的数据(在这种情况下,它可以自己处理该请求),或者否则可以知道DSA702能够较好地处理该请求。在后一种情况下,DS706选择在该可替换的DSA702中的服务器706中的一个并且将该请求转发给它(链接)。在下文的优化路由小节中再次描述此过程。
因而,DSA702确定哪一个目录服务器706应该响应于该数据请求。DSA702和DS706a-706c的操作通常对DUA704是透明的。因此,在本发明的各个实施例中,DUA704可以连接到目录服务器706a-706c的任何一个以检索相同的数据。如果DSA的数据存储库708仅仅包含DIB500的一部分,则可以使用一个或多个另外的DSA来构造完整的DIB500,其中该一个或多个另外的DSA的相应数据存储库708包含DIB500的其它部分。在这样的实施例中,DSA702还需要信息来帮助它们选择对于给定动作的适当DSA702。
根据本发明的实施例,运行在目录服务器706a-706c上的软件包括目录服务器软件706a-706c。目录服务器软件707为目录服务器706提供分布式数据基础结构和目录访问软件。正如以上的讨论,由内存储数据存储库708a-708c执行的低级别操作不是这里公开和要求的本发明的一部分。本发明的实施例可以被配置为利用各个低级别的数据存储库程序工作。
图7B示出了根据本发明的实施例的包括三个DSA702a、702b和702c的分布式分级结构。这些DSA702a-702c示出了在通信网络中为了快速访问可以如何分配和复制给定DIB500。
例如,DIT600可以大到它需要扩展到跨几个DSA(诸如DSA702a-702c)中。例如,HSS301不必知道DIT600是多大或多小或者特定的数据段被存储在哪一个DSA上。根据本发明的实施例,例如,HSS301仅仅需要通过DUA704路由它的请求,该DUA704将该请求引导到DSA702,DSA702或者自己答复该请求或者找到DSA702来答复该请求。
还假定给定DIB500包括关于通信网络中的用户的数据,包括这些用户各自的IMSI数据(与全部GSM和UMTS网络移动电话用户有关的唯一号码)和这些用户各自的MSISDN数据(用于指特定移动设备的固定数目的数字)。这样的DIB500可以如下被配置在DSA702a-702c中:用户的数据(诸如他们的姓名和地址)可以位于将充当根DSA的DSA702a中。用户各自的IMSI数据可以位于充当IMSI域(诸如图3所示的IMSI323)的DSA702b中,以及用户各自的MSISDN数据可以位于充当MSISDN域(诸如图3所示的MSISDN325)的DSA702c中。
因而,在此示例配置中,DSA702a可以充当“根”DSA;DSA702b可以充当“IMSI”域DSA,以及DSA702c可以充当“MSISDN”域DSA。根DSA702a包括一个或多个目录服务器706a-706c;“IMSI”域服务器702b包括一个或多个目录服务器706d-706f;以及“MSISDN”域DSA702c包括一个或多个目录服务器706g-706i。根据本发明的实施例,该一个或多个目录服务器706a到706i包括诸如图7A所示的目录服务器软件707的目录服务器软件以及诸如图7A所示的数据存储库708的数据存储库。“根”DSA702a存储根条目;“IMSI”域DSA702b存储“IMSI”相关数据,以及“MSISDN”域DSA702c存储“MSISDN”相关数据。
因而,在本发明的各个实施例中,一个或多个DSA702可以被一起实施以存储DIB500,诸如用于整个移动电信网络的完整的DIB。每个DSA702通常负责包括DIB500的数据的规定的子集。因而,在上述示例中,DUA704可以连接到可用的DSA702中的任何一个,诸如根DSA702a、“IMSI”域DSA702b和“MSISDN”域DSA702c。来自于DUA704的请求由诸如“IMSI”域DSA702b的DSA透明地处理,从而控制该数据。
优化的路由
图8示出了根据本发明的实施例的在图7B所示的DSA的分布式分级结构中的优化路由。正如以上的讨论,DSA702a-702c一起工作来提供分布式目录。每个DSA702将目录条目的子集保持在它的DS706中,以及关于它不保持的目录条目的可能位置的认识。如上讨论的,如果DSA702涉及位于该目录的它自己子集内的数据,则DSA702可以能够在本地满足目录操作。否则,DSA702(例如,DSA702a)使用它对于该目录的认识来选择哪一个DSA(例如,DSA702b)是满足该操作的最好的DSA然后将该操作链接到其它DSA702b。
正如以上的讨论,每个DSA702被实施为一组DS706,每个通常保持该目录的该子集的完全复制的副本。因而,每一个DS通常以相同的方式处理目录操作。作为链接过程的一部分,第一DSA702的DS706不得不选择第二DSA702中的DS706来接收链接的操作。此选择传统上基于循环法或最少使用来实施负荷共享(loadsharing),以及可以考虑DS的能力来处理该请求。例如,如果已知由于较早的问题,DS706具有该目录的非完全复制的版本,则不会选择它。
但是,DS706的典型的物理实施方式是使得它们从地理上被分配。此外,常常是这样的情况:在给定物理地点处,有一个或多个DS用于其它DSA702。换句话说,各个DSA702的DS706可以在物理上和/或通信距离上相对邻近地被聚集在一起。
例如,图8所示的该组DSA702在物理上被布置为使得DS706a、DS706d和DS706g物理上位于地点1804a;DS706b、DS706e和DS706h在物理上位于地点2804b,而DS706c、DS706f和DS706i在物理上位于地点3804c。此外,这样的分布提供对于通信网络的额外的弹性。例如,如果在地点1804a处存在电源故障,则可以使用在地点2804b和地点3804c处发现的DS706来为DSA702a-702c平稳地继续操作。
从一个DS群(即,相同地点的DS)到另一个DS群的通信路径通常比DS群内(即,相同地点的DS)的通信具有低带宽和高延迟。换句话说,DS706a与DS706d通信所花的时间一般比DS706a与DS706e通信所花的时间少,因为DS706a和DS706d二者都位于在相同的地点上,即地点1804a。
假定数据访问的负荷在DS地点间共享,则基于该DS706的物理位置选择用于链接的DS706可以提供目录操作的优化的通信利用率(例如,优化的WAN利用率)和降低的响应时间。换句话说,当DS706a需要与DSA702b有关的数据时,它应该优选地与DS706d通信而不是与DS706e或DS706f,因为DS706a和DS706d位于相同的地点上,即地点1704a。当然,如果无论什么原因,DS706a需要来自于DSA702b的数据而DS706d不可用,则DS706a将被配置为链接到DS706e或DS706f,它们还是DSA702b的一部分但是位于不同于DS706a的地点上。
根据本发明的实施例,DS706上的地点路由代理808被配置为确定哪一个第二DS706可以以相对于其它DS组最低的成本完成给定的数据请求。地点路由代理808可以被配置为考虑所有可能的DS或DS的给定子集之间的距离。例如,当DS被镜像在欧洲的六个其他地点时,在UK中的地点路由代理计算到中国的另一个DS的距离可能更低效。根据本发明的实施例,一种简单的方法是地点路由代理808利用缺省规则周期性地计算到其它欧洲地点的距离,以便在其它欧洲DS不可用时使用中国的地点。
另外,根据本发明的实施例,地点路由代理808选择DS706可以包含各种因素。例如,地点路由代理808可以使用节点(例如,地点)之间的连通性的等级来建立它选择另一个DS706的基础,其中等级值由诸如带宽、延迟和成本之类的因素导出。根据上述示例假定DS706a需要来自于DSA702b的数据且DS706d是不可用的。还假定地点2804b与地点1804a显著地比地点3804c与地点1804a更“接近”,其中“接近”包括基于带宽、延迟和成本中的至少一个的合成,例如,带宽+延迟+成本的最低得分。因此,地点路由代理808a可以建议DS706a链接到地点2804b的DS706e。如果DS706e是不可用的,则地点路由代理808a可以建议DS706a尝试利用地点3804c的DS706f完成它对DSA702b的操作。
在本发明的进一步的实施例中,地点路由代理808可以被配置用于动态选择DS706。例如,从该示例中假定,与每一个地点有关的采样设备806周期性的监视该地点和所关注的任何其他地点之间的“距离”。例如,地点1804a的采样器806a可以周期性地监视到地点2804b的“距离”,其中该“距离”由带宽、延迟和成本中的至少一个来测量,例如,带宽+延迟+成本的最低得分。然后采样器806a可以使得此“距离”计算的结果可用于地点1804a上的地点路由代理808a、808d、808g。采样器806a是可以根据它如何测量“距离”以及它多长时间一次测量这样的距离而自身可配置的。另外,采样器806a可以将它的“距离”确定基于从DS706接收到并且报告给采样器806a的实际测量(诸如响应时间)。这种动态方法考虑到改变的网络状况以及利用给定DS或通信路径的问题。可替换地,采样器806a可以位于DS706内,例如地点路由代理808自身内。
在本发明的进一步的实施例中,例如,假定地点路由代理808根据“成本”计算两个DS之间的“距离”或“接近度”。根据本发明的实施例,还假定成本要素是带宽、延迟和访问成本。当然,其它的部件可以包括成本的主要驱动器。还假定加权成本等式可以被表示为公式,诸如:(权重1x带宽)+(权重2x延迟)+(权重3x访问成本)。地点路由代理808可以被配置为周期性地计算此等式的新结果,例如每天、每小时、每分钟等。然后地点路由代理808可以确保当需要链接时,DS706首先尝试选择最低成本的DS706。当然,这可能意味着不位于相同的地点上的DS。可替换地,根据本发明的实施例,采样器806可以执行这些等式然后将结果提供向地点路由代理808的相关组。
别名和别名隐藏
图9A描述根据本发明的实施例的具有别名条目902的DIT900。DIT900包括一个或多个条目,诸如条目504a-504g等等、根节点602和别名条目902。
如前所述,在图5所示的DIB500中,条目或对象的例子由DN唯一地且明确地标识。但是,DN不必是客户端应用可以引用一个条目(诸如条目504f)的唯一的名称。别名条目(诸如别名条目902)是DIT(诸如DIT900)中的条目,其具有属性,诸如“别的条目名(aliasedEntryName)”,其包含DIT900中另一个条目的名称。因此,例如,别名条目902可以具有名为“别的条目名”的属性,它的值是名称“条目504f”。第二条目(例如,条目504f)不一定需要存在于DIT900中,尽管在此示例中它存在。还注意,DIT900中的别名条目902的结构不需要根本上不同于条目504a-504g,这里呈现的名称上的差别(“条目”对“别名条目”)是为了有助于理解别名条目的功能。
别名条目(诸如别名条目902)为条目(诸如条目504f)提供可替换的名称。别名是DIB500中的特定条目,其指向另一个条目,诸如条目504f。别名类似于文件系统中的符号连接。因此,别名是利用多个标识而没有复制的数据来提供数据库条目(诸如条目504f)的有益方式。根据本发明的实施例,如果数据被存储在不会经常改变(或许由供应系统410分配)的唯一的名称(或密钥)下但是需要通过各种不同的标识(诸如,例如,与IMSI323、MSISDN325、统一资源定位符(URL)等等有关的应用,其可以改变)公开访问,则别名是特别有益的。使用别名使得数据被存储一次然后经由被实施为别名的多个不同的标识引用。别名条目(诸如别名条目902)可以被增加、修改和/或删除而不影响该数据。
新的别名可以由别名创建模块905在DIT900中实施。根据本发明的实施例,别名创建模块905可以被配置为在DIT900中构造一别名,以使得其它部件(如图9B所示的名称解析模块909)可以随后对于从客户端应用接收到的数据请求执行别名解引用。别名创建模块905可以包括用户界面以使得可以在初始供应(例如,“运行中”)之后创建别名,以便使得能够迅速配置新的别名。可替换地,别名创建模块905可以由例如LDAP或DAP经由传统目录“增加目录(addEntry)”操作来调用。
在本发明的一些实施例中,别名创建模块905利用提供由该别名指向的条目的DN的强制属性来将该别名实施为DIB500中的条目。例如,假定条目504a具有DN“c=UK”,条目504c具有DN“o=我的公司,c=UK”以及条目504d具有DN“o=公司X,c=UK”。条目504f具有DN“员工ID(employeeID)=111,o=我的公司,c=UK”。因此,别名条目902可以具有可替换的名称“cn=Joe,o=我的公司,c=UK”并引用条目504f。
目录服务的供应商(诸如CSP)可以想要使用别名,但是以不同于由各种已知协议和别名使用技术提供的方式来完成。例如,这样的目录服务供应商可能想要向可能还没有被设计有使用别名的能力的客户端应用(诸如HSS301)提供别名使用服务。另外,目录服务供应商也可能想要隐瞒一个或多个应用已经执行了别名使用,即使当该客户端应用本身可以执行别名使用。例如,为了安全原因,可以执行这样的别名隐藏。
图9B示出了根据本发明的实施例的别名隐藏模块903,其与包括别名903的DIT900交互以对来自于请求实体920(诸如客户端应用)的数据请求执行别名隐藏。
根据本发明的实施例,位于目录服务器(诸如图7A所示的DS706)中的别名隐藏模块903在来自于请求实体920的数据请求期间调解并且控制别名解引用(即是为了查询也是为了更新)而不管请求实体920的期望如何。因此,请求实体920可以代表诸如客户端应用、终端用户或远程DSA的实体,它们可能需要数据来在DSA的控制下完成在目录的一部分上开始的链接进程。例如,请求实体920可能是自身没有被配置为控制别名使用的HSS301和/或CSP想要对其隐藏别名使用的HSS301。
因此,根据本发明的实施例,别名隐藏模块903可以在呈现给请求实体920的结果中将条目中的名称替换为符合DIT900的请求实体的意见的名称。
使用别名隐藏模块903,条目(诸如条目504f)可以包含可以被请求实体920(诸如HSS301)使用不同的名称(诸如别名条目902的名称)访问的数据。例如,请求实体920可以需要由对请求实体920唯一的名称来寻址诸如条目504f的条目。但是,假定请求实体920没有被设计为使得它可以使用别名,因为该方法被传统地配置。因而别名隐藏模块903为这样的请求实体920有效的提供使用别名的能力,而不需要对请求实体920的任何修改。
事实上,一条目(诸如条目504f)可以具有各种别名条目(例如,别名902的多个实例),每个别名条目代表由不同的请求实体920使用来访问包含在条目504f中的数据的名称。根据本发明的实施例,此方法使得与电信网络有关的数据位于中心,诸如在数据存储库404中,而不必要改变现有的请求实体920(例如,客户端应用)。因而,别名隐藏模块903使得CSP能够使用遗留下的应用(诸如,遗留下的HSS301),甚至在切换到电信网络的不同架构之后。
根据本发明的实施例,当将数据返回到请求实体920时,别名隐藏模块903还可以删除别名已被执行的任何指示。换句话说,本发明的实施例使得根据请求实体920的本地数据格式返回数据,以使得可以向请求实体920呈现具有期望的属性值和名称的数据。在这样的情况下,请求实体920只须知道该可替换的或别名条目名称。
根据本发明的实施例,别名隐藏是可以基于每个应用而被用来隐藏别名的存在的机制。根据本发明的实施例,对于给定应用的别名隐藏指令可以包括在别名隐藏数据文件914中。当对请求实体920执行别名隐藏时,由请求实体920请求的涉及别名(诸如别名条目902)的操作在请求实体920看来是对正常条目(诸如条目504f)的操作。别名隐藏模块903可以强迫解引用任何别名,以及随后在请求实体的请求下,对任何返回的条目名称执行名称映射成相关于原始基本名称,而不是真实的条目名称。因此,呈现给请求实体920的搜索结果可以包括在搜索中返回的条目的DIT900中的别名和非真实的名称。从请求实体的视角来看,别名表现为真实的条目。同样地,属于真实的条目的任何条目表现为属于该别名的条目。因而,请求实体920(诸如HSS301)可以使用该别名更新并查询该条目。
根据本发明的实施例,别名隐藏模块903可以执行三个分开的功能:
-由名称解析模块909控制别名解引用,可能与发出该数据请求的请求实体920(例如客户端应用)的期望相反,和/或
-由搜索/更新模块911控制别名解引用或由链接模块917链接的目录操作,可能与发出该数据请求的请求实体920(例如客户端应用)的期望相反,和/或
-修改在由搜索/更新模块911产生的或由链接模块917返回的结果中的名称,以使得它们相关于由发出该数据请求的请求实体920(例如,客户端应用)提供的基本名称,而不是解析的基本名称(RDN),以及此外,对于在子树搜索期间遇到的任何别名,递归地将相关的真实的条目名称替换为别名条目的相关名称,以使得它看起来好像在没有别名的解析的基本条目下面存在单个子树。
图9B示出了根据本发明的实施例的当在上述三种情况下使用别名隐藏模块903时的目录操作的处理。
对于访问目录中的数据的请求可以源于各种实体或源。例如,诸如搜索和更新的数据访问可以来自于客户端应用、终端用户、乃至诸如图7A所示的DSA702的目录系统代理。因此,如上所述,请求实体920可以代表诸如客户端应用、终端用户或远程DSA的实体,它们可能需要数据来在DSA的控制下完成在目录的一部分上开始的链接进程。
在任何情况下,请求实体920向目录操作服务器907发送数据请求。目录操作服务器907代表被配置为接收数据请求然后将它们提供给与目录服务器有关的适当的处理单元以使得可以完成请求的操作的实体。例如,LDAP服务器代表典型的目录操作服务器,诸如目录操作服务器907。
目录操作服务器907从请求实体920接收与存储在目录(诸如DIT900)中的数据相关的请求,以及将此请求传递到别名隐藏模块903(步骤A)。别名隐藏模块903然后在修改该数据请求以反映任何可操作的别名隐藏方式(步骤B)之后,将此请求传递给名称解析模块909。在确定该操作的别名隐藏方式时,别名隐藏模块903可以检查别名隐藏数据文件914,该别名隐藏数据文件914可以包含在诸如每个应用、每个用户、全系统等基础上的别名相关数据配置。因而,根据本发明的实施例,别名隐藏模块903可以修改该数据请求以便以可能与请求实体920的期望相反的方式来控制别名解引用。在来自于远程DSA的链接的请求的情况下,也可以在链接请求参数中指示操作的别名隐藏方式,其中对远程DSA的等效处理已经可能从它自己的别名隐藏数据文件914或从进入的链接操作确定该可操作的别名隐藏方式。
根据本发明的实施例,名称解析模块909然后解析由别名隐藏模块903提供的名称。根据本发明的实施例,位于目录服务器(诸如图7A所示的DS706)中的名称解析模块909执行名称解析处理,其是对于进入的目录操作的处理的开始部分。名称解析模块909使用由别名隐藏模块903提供给目录操作的作为参数的名称来将目录操作的基本条目放置在DIT900中。名称解析模块909依次考虑每个RDN以及定位匹配该RDN的条目,其是先前定位的条目(或对于第一RDN的根条目)的直接从属。根据本发明的实施例,此过程继续直到所有RDN都已被考虑过或者直到名称不能在本地被完全解析,除了遇到引用以使得该操作能够链接到也许能完全解析该名称的远程DSA。
根据本发明的实施例,在名称解析期间,如果名称解析模块909遇到别名条目,则可以重新启动名称解析过程,同时将该名称的当前解析的一部分替换为该别名条目的值,诸如上述“别的条目名称”条目属性。此操作的重新启动,在本领域中称为“别名解引用”,可以发生不止一次以完全地解析名称。
名称解析是在诸如X.500的协议中的常规过程,尽管根据本发明的实施例,根据任何一个特定的协议并不必须执行名称解析。例如,传统的LDAP协议将别名解引用限制为仅仅查询操作,尽管在传统的X.500协议中找不到此限制。更重要的是,此常规处理在请求实体902(诸如像HSS301之类的客户端应用)而不是别名隐藏模块903的控制下。换句话说,客户端应用不得不指定别名解引用操作应该发生。此外,传统的别名解引用的结果将尤其通过将该条目的完全解引用的名称包括在提供给客户端应用的结果中来指示该别名解引用已经发生。根据本发明的实施例,请求实体920没有必要指定别名解引用是否应该发生,以及请求实体920将不一定接收提供的结果中的条目的完全解引用的名称。
例如,假定名称解析模块909已经接收到对于位于DIT900中“根.条目1.条目2.别名(Root.Entry1.Entry2.Alias)”处的数据的读请求。名称解析模块909首先访问根602(步骤C1)。名称解析模块909然后在访问条目504c(步骤C3)之前访问对于此特定请求访问条目504a(步骤C2)。名称解析模块909然后访问别名条目902,并且发现别名条目902是别名条目以及该别名条目具有名称“根.条目1.条目2.条目3(Root.Entry1.Entry2.Entry3)”的指示(步骤C4)。因此,根据本发明的实施例,名称解析模块909重新启动名称解析过程,并且重复步骤C1、C2、C3。名称解析模块909然后访问条目504f,并且确定它是真实的条目,因此已经完全地解析了原始的名称(步骤C5)。
名称解析模块909向别名隐藏模块903报告定位的条目504f以及采取的路径(步骤D)。根据本发明的实施例,别名隐藏模块903至少暂时地保持解引用的路径信息。
如果必需本地搜索/更新处理来完成该请求(即,名称已在本地被完全解析),则别名隐藏模块903向搜索/更新模块911传递为先前确定的可操作的别名隐藏方式而修改的定位的条目(例如,条目504f)和原始的请求(步骤E)。
可替换地,如果必需链接来完成该请求(即,名称没有被完全解析),则别名隐藏模块903向链接模块917传递原始的操作,其中具有先前确定的操作的别名隐藏方式和任何解引用的别名信息(步骤E′)。
搜索/更新模块911对定位的条目(例如,条目504f)进行动作。根据本发明的实施例,位于目录服务器(诸如图7A所示的DS706),搜索/更新模块911对由名称解析模块909提供的解析的条目执行由别名隐藏模块903请求的操作。在更新的情况下,搜索/更新模块911对条目(例如条目504f)执行更新(步骤F1)。在搜索的情况下,搜索/更新模块91执行开始于由名称解析模块909提供的定位的条目(例如条目504f)的搜索(步骤F1),以及也可以搜索它的从属的条目(例如条目504g)的子集或者全部(步骤F2)。在检查解析的条目下的子树时,搜索/更新模块911可能遇到其它的别名(例如,假定条目504g是别名),以及以类似于由名称解析模块909执行的方式来执行别名解引用。
搜索/更新模块911也可能遇到对远程DSA的从属的引用,其指示该子树被分割以及从该点起的任何从属的条目都被远程地保持。在此情况下,新的搜索操作(经由链接模块917)被链接(具有该可操作的别名隐藏方式)到该远程DSA(步骤I),以及来自于链接的操作的所有结果(步骤J)附于在本地产生的结果上。
搜索/更新模块911向别名隐藏模块903报告采取的动作、(在本地和/或从链接的搜索)检索的信息、以及采取的路径(步骤G)。搜索/更新模块911通常使用搜索中的条目的完全解引用的名称来向别名隐藏模块903报告路径信息。
链接模块917作为在引用的远程DSA上的请求实体,将链接的操作传递给远程目录操作服务器931。位于目录服务器(诸如图7A所示的DS706)中,链接模块917结合名称解析模块909工作,作为在目录是分布式的且名称解析模块909不能在本地完全解析名称并且已经遇到指示远程DSA也许能完全解析该名称的合适的引用的情况下对搜索/更新模块911的替代。链接模块917将进入的目录操作和任何解引用的别名转发给目录操作服务器931,该目录操作服务器931类似于目录操作服务器907但是位于远程DSA上。链接模块917根据哪一个模块提交了链接请求,向别名隐藏模块903(步骤G′)或搜索/更新模块911(步骤J)报告从远程DSA接收回的结果。
别名隐藏模块将数据请求的结果报告回目录操作服务器907(步骤H),其依次将该信息传递回请求实体920。别名隐藏模块903可以被配置为删除关于找到的请求的涉及别名的信息的任何指示,并且简单地将数据请求报告回目录操作服务器907。别名隐藏模块903根据它的指令可以重建该树,好象它不包含别名并且因此修改名称,例如树:根.条目1.条目2.别名902.条目4(root.entry1.entry2.alias902.entry4)(可能请求实体920期待的树而不是目录中的实际树:根.条目1.条目2.条目3.条目4(root.entry1.entry2.entry3.entry4))。因而,根据本发明的实施例,别名隐藏模块903可以修改由搜索/更新模块911产生的结果中的名称,以使得它们相关于由请求实体920提供的基本名称,而不是解析的基本名称(RDN),以及以使得被搜索作为从属于该基本条目的别名条目的结果的任何条目被表示“在原处”而不是在明确的另外的子树内。
在本发明的实施例中,如果别名隐藏模块903返回搜索结果中的任何别名的目标并且RDN属性被登记在返回的属性列表上,则可以在RDN属性上发生替换,即别名RDN替换列表中的真实RDN。可替换地,如果该别名RDN也是该条目的真实属性,别名RDN可以已经存在于该列表中,或者可以附加于返回的属性列表后。
如图4所示,对网络中的每一个应用操作的多个独立的数据仓的问题的解决方案是组合一个数据存储库中的数据。如前所述,在有些情况下,准确相同的数据存在于不同的已有数据存储库中,例如两个数据存储库具有用户“约翰史密斯”。但是,在有些情况下,一个应用可能需要DN具有名称“客户”而另一个应用可能需要DN具有名称“用户”。数据存储库中的DN可以具有名称“名称”。在所有三种情况下,DN的“用户”、“客户”和“名称”都指向具有值“约翰史密斯”的数据条目。DN可以是具有两个别名“用户”和“客户”的“名称”,而不是在数据库中复制“约翰史密斯”三次。根据本发明的实施例,假定需要名称“用户”的应用从系统中去掉,则可以删除“用户”的别名。进一步假定增加了为用户的名称使用DN“Namn”的新应用,则可以简单地增加“Namn”别名。
变量
图10A描述根据本发明的实施例的具有变量条目1002的DIT1000。DIT1000包括诸如条目504a-504e等的一个或多个条目、根节点602和变量条目1002。变量条目(诸如变量条目1002)提供存储在数据存储库404中的数据的可替换的查看(view)。变量条目1002定义把来自于DIT1000中不同条目(诸如条目504c和504d)的属性集中在一起的条目。因此,当诸如客户端应用的请求实体访问变量条目1002时,请求实体从诸如条目504c和504d的其它条目接收对属性的访问。对这些其它条目的访问对请求实体可以是透明的,其不需要知道基础数据是如何被构造的。
因而,只要请求实体以它期待的方式检索数据,则请求实体就可以好像数据仍然存在于例如单个专有的数据仓中一样工作。换句话说,根据本发明的实施例,不需要对请求实体做出改变来使得适应该变量的存在。更重要的是,变量条目的实施方式有时可能是对避免不得不对请求实体做出变化以便请求实体与DIT1000正确地互操作所必不可少的。相似地,请求实体的数据需要的变化可以通过创建与请求实体的新数据需要匹配的变量条目来实现。根据本发明的实施例,实质上,变量在属性级别改变方向(redirect),而诸如图9B所示的别名902的别名在条目级别改变方向。
根据本发明的实施例,变量条目1002是DIT1000中的条目,除了“对象类”属性外,其不需要例示的属性。相关的“对象类”定义被标记为“变量”并且包括许多属性。变量对象类的成员关系(membership)指示应当在处理该条目的一个或多个属性中访问规则。例如,如图10A所示,对象类属性值“变量”指示属性“我的公司联系”和“公司X联系”具有这样的规则:由DIT1000中的其它条目(“具体”条目,诸如条目504c)中的其它属性(“真实”属性)导出他们的值。因此,例如,在变量条目1002中,在条目504c的“地址,联系,网站”属性中找到“我的公司联系”属性的值。
在本发明的各个实施例中,变量创建模块1005在初始供应时可以是有效的。因而,可以随着由该变量引用的数据来供应该变量。根据本发明的实施例,在初始供应之后的某一时间,根据需要,该变量创建模块1005也可以创建运行中的变量。
根据本发明的实施例,可以使用变量创建模块1005在DIT1000中例示给定变量(例如,变量1002)。例如,如图10A所示,变量创建模块1005可以创建变量1002以使得它是包括“我的公司联系”属性和“公司X联系”属性的变量对象类的成员,其中“我的公司联系”属性从属性为“地址”、“联系”和“网站”的条目504c接收它的数据,而“公司x联系”属性从属性为“地址”、“联系”和“网站”的条目504d接收它的数据。变量创建模块1005可以提供用户界面从而可以在运行中创建变量以使得能够迅速配置新的变量。可替换地,变量创建模块1005可以通过LDAP或DAP经由传统目录“增加条目(addEntry)”操作来调用。
根据本发明的实施例,一旦变量创建模块1005已经在DIT1000中创建了变量1002,则对于变量1002的属性的请求可以被透明地提供给请求由这些属性代表的数据的请求实体。例如,假定请求实体请求“我的公司联系”的地址属性的数据,因为变量对象类将“我的公司联系”的地址属性定义为条目504c的地址属性,所以这是变量1002返回到请求实体的数据。
图10B示出了根据本发明的实施例的在包括来自于请求实体1020(诸如客户端应用)的数据请求的变量1002的DIT1000中的变量处理。请求实体1020可以代表诸如客户端应用、终端用户或远程DSA的实体,它们可能需要数据来在DSA的控制下完成在目录的一部分上开始的链接进程。
根据本发明的实施例,目录操作服务器1007代表被配置为接收数据请求然后将它们提供给与目录服务器有关的适当的处理单元以使得可以完成请求的操作的实体。例如,LDAP服务器代表典型的目录操作服务器,诸如目录操作服务器1007。目录操作服务器1007与保持(host)DIT1000的数据的数据存储机构(mechanism)非常接近(例如,共同定位)。因而,变量条目(诸如变量1002)的处理(例如,属性值推导)可以在向/从基础数据存储机构访问时执行。例如,在目录操作服务器1007处处理变量条目可以发生在实际上存储该数据的目录系统代理(诸如图7A所示的DSA702)中。例如,诸如X.500的协议层不需要知道变量条目的存在。根据本发明的实施例,此变量处理可以在需要的实时环境(诸如移动电信系统204)中提供改进的性能,但是这样提高的性能可能需要该变量以及它的具体条目并置在相同的DSA内。
根据本发明的实施例,数据请求接收器1009被配置为从请求实体1020接收数据请求。例如,假定数据请求接收器1009接收对于与变量1002有关的数据的请求。数据请求接收器1009确定变量1002包括对象类“变量”。因此,数据请求接收器1009然后识别对于该“变量”对象类的可应用的规则。数据请求接收器1009可以在变量1002和/或变量规则文件1009中找到这些规则。
数据请求接收器1009向位置推导器(Deriver)1011提供变量1002的位置以及可应用于变量处理的规则。根据本发明的实施例,位置推导器1011然后使用该用于导出数据的位置的可应用规则来导出请求的数据在该数据存储机构内的位置。例如,在推导变量1002的“我的公司联系”属性的位置时,位置推导器1011将发现阐明下列情况的规则:此数据可以从为在根.条目1.条目2(Root.Entry1.Entry2)中找到的条目存储的“地址”、“联系”和“网站”属性中检索。相似地,在推导“公司X联系”的位置时,位置推导器1011将发现指定下列情况的规则:此数据可以从为在根.条目1.条目3(Root.Entry1.Entry3)中找到的条目存储的“地址”、“联系”和“网站”属性中检索。
根据本发明的实施例,由位置推导器1011应用的用于推导DIT1000中具体条目的DN的规则可以包括从原始变量条目(诸如变量条目1002)的DN中提取的可变数据。例如,假定条目504a具有DN“c=UK”,条目504c具有DN“o=我的公司,c=UK”以及条目504d具有DN“o=公司X,c=UK”。变量条目1002具有DN“变量o=我的公司,c=UK”。用于该具体条目的DN规则是“o=变量o的值,c=UK”。由于“变量o”的值是“公司X”,因此具体条目具有DN“o=我的公司,c=UK”,换句话说,它的值是在条目504c中找到的。
根据本发明的实施例,位置推导器1011然后将导出的位置提供给数据读取/更新模块1013,该数据读取/更新模块1013然后对由数据存储机构保持的数据执行请求的进程。数据读取/更新模块1013在执行它的任务时应用任何与数据(例如,它的格式)相关的操作规则(例如,值映射)。根据本发明的实施例,对于变量对象类中的属性(例如,变量1002的“我的公司联系”属性),在具体条目中包含导出的属性值的真实属性(例如,条目2的“地址”、“联系”、“网站”属性),经历值映射或函数。例如,数据读取/更新模块1013可以运用将来自于真实属性的属性的整数值变为变量条目中的属性的实数值(realvalue)的值映射规则,例如从“1”到“1.0”。数据读取/更新模块1013可以将一个函数应用于例如从真实属性到变量条目中的属性获得的属性,例如,可以将时间增加12以将它的格式从期望的美国时间(“1p.m”)转换为期望的欧洲格式(“1300”)。根据本发明的实施例,读取/更新模块1013提供关于它的动作的信息,该信息可以被报告回到请求实体1020。此外,根据本发明的实施例,如前所述,报告可以构造以使得DIT1000的实际性质对请求实体1020是透明的(例如,隐藏)。
位置推导器1011可以确定,对于给定数据请求,变量的数据的一些部分位于远程目录中。因此,位置推导器1011将数据请求的该部分转发给链接模块1017,该链接模块1017与远程目录操作服务器1031交互以访问请求的数据。根据本发明的实施例,远程目录操作服务器1031与目录操作服务器1007类似,已被配置为处理变量条目的操作。
在可替换的实施例中,位置推导器1011可以将对变量的目录搜索操作分解成一个或多个对相关的具体条目的目录搜索操作。这些导出的操作由链接模块1017或者链接到远程目录操作服务器1031或者链接到相同的目录操作服务器1007,用于作为正常的目录操作处理。链接的结果随后由数据读取/更新模块1013使用来产生输出结果。例如,对于基本条目变量1002(所有用户属性)的输入基本搜索被分解成两个基本搜索,一个对条目504c执行,一个对条目504d执行。包含在这两个搜索的结果中的属性值被数据读取/更新模块1013使用来推导在输出结果中返回的属性值。根据本发明的实施例,位置推导器1011可以同样地将对变量的目录更新操作分解成一个或多个对相关的具体条目的目录更新操作,并且向前链接它们。
在另一个可替换的实施例中,此分解进程可以由位置推导器作为协议适应的一部分来处理,下面将进行讨论。根据本发明的实施例,还将在图11A中进行讨论的协议适应模块1107可以利用变量处理来工作。根据本发明的实施例,协议适应是变量处理的可选项。
根据本发明的实施例,可以扩展变量条目的概念以使得变量条目1002可以包含真实属性值和推导的属性值的混合。这可以作为该条目是其一个成员的真实和变量对象类的混合的结果,或者因为单个对象类可以具有真实和推导的属性的混合。此外,单个属性可以具有存储在变量条目1002中的真实值以及从其它具体条目中导出的值。例如,变量条目1002可以具有额外的真实属性“可替换的联系”,并且此属性可以自己保持用于可替换的联系的实际数据。在这种情况下,位置推导器1011简单地将此特定位置提供给数据读取/更新模块1013。
本发明的进一步的实施例使得能够扩展与变量处理有关的各种规则。例如,用于推导从其中提取属性值的具体条目的名称的变量对象类规则、用于识别具体条目内的属性的规则、和用于从具体条目识别属性值的映射的规则都可以扩展至包括诸如下列的项:
-变量条目1002内真实属性值的使用,和/或
-上下文信息的使用,诸如时刻和请求用户,和/或
-自身保持的作为变量条目内的真实属性值的可替换的规则。
例如,根据上下文信息,变量可以被实施来反映用户的“办公室的人”和“晚会的人”,以使得在一天的特定时间,当访问该变量时位置推导器1011将定位来自于一个数据集的特定属性,而在一天的其它时间,当访问该变量时该位置推导器1011将定位来自于另一个位置的数据。例如,可替换的规则可以包括用于变量的一种特定情况的固定规则。
变量条目(诸如变量1002)可以简化DIT1000中的数据更新。例如,因为“我的公司联系”的地址属性是数据条目504c的地址属性,所以更新“我的公司联系”和数据条目504c二者的地址条目和更新数据条目504c的地址条目一样简单。如果设想DIT1000不仅仅包含该一个变量1002,而是许多变量条目,每个条目可能与不同的请求实体有关,但是所有的条目都指向数据条目504c,则可以看出此方法的简单性。
在本发明的一些实施例中,变量使得能够以适合于为企业结构建模但是不需要考虑特定的请求实体(诸如HLR307、HSS301等等)的具体需要的方式来设计数据分级结构(hierarchy)。在此方法中,一旦建立数据分级结构,则可以为每一个请求实体增加变量条目。变量条目将请求实体需要的属性组合到简单条目中或条目的简单分级结构中。因而,请求实体不需要属性实际上位于其中的数据分级结构的专门知识。从而变量(诸如变量1002)提供从请求实体要求的属性到数据结构中属性的实际位置的映射。
适应-协议适应
图11A示出了根据本发明的实施例的协议适应模块1107。协议适应模块1107可以提供目录操作(诸如LDAP或DAP)的非标准的处理。
对目录中的数据的请求可以起因于各种源。例如,数据访问可以来自客户端应用、终端用户、乃至目录系统代理(诸如图7A所示的DSA702)。因此,根据本发明的实施例,请求实体1115可以代表诸如客户端应用、终端用户或远程DSA的实体,它们可能需要数据来在DSA的控制下完成在目录的一部分上开始的链接进程。无论如何,请求实体1115向目录操作服务器1109发送数据请求。根据本发明的实施例,目录操作服务器1109代表被配置为接收数据请求然后将它们提供给与目录服务器有关的适当的处理单元以使得可以完成请求的操作的实体。例如,LDAP服务器将代表目录操作服务器,诸如目录操作服务器1109。
根据本发明的实施例,协议适应模块1107检查输入到目录操作服务器1109的操作。在协议适应模块1107中,输入操作被映射到零个、一个或更多的进行中操作。协议适应模块1107随后将每一个映射的操作的结果合并成为单个结果,以使得它们可以被返回到发起的请求实体1115。根据本发明的实施例,协议适应模块1107中的规则选择器1135选择提供映射输入操作和输出结果的指令的一组规则(规则集)。根据本发明的实施例,规则选择器1135使用该输入操作的零个、一个或多个字段,诸如“操作类型”和“操作中的条目名称”,来推导该规则集。根据本发明的实施例,规则选择器1135可以找到推定的规则集,由该推定的规则集来选择配置数据1121中以及该目录中的规则集。
根据本发明的实施例,规则选择器1135可以使用输入操作中的任一字段或字段的组合来识别相关的规则集。此外,发起用户(例如,请求实体1115)可被用在该规则选择过程中,其它的上下文数据、诸如时刻也可以。规则选择器1135也可以使用与数据请求自身相关的当前“工作”数据作为该规则选择过程的一部分,诸如当适应过程发生在输入操作的处理已经开始之后时。例如,如果协议适应发生在名称解析之后,则解引用的别名的内容可以被用于规则选择。因此,根据本发明的实施例,规则选择器1135可以结合图9B所示的名称解析模块909来工作。根据本发明的实施例,尽管图11A未示出,但是协议适应模块1107可以被配置为具有其它的功能来操作,诸如图9B所示的与别名隐藏有关的部件。
所有这样可以用在规则选择过程中的数据被称为规则选择数据。规则集的选择通常包括相对于推定的规则中的值断言来匹配规则选择数据,或者包括单个值或者以逻辑组合,诸如“AND”和“OR”。值断言可以是简单的等式或不等式,或者可以包括其它的准则,诸如许多推定的规则之间的“最佳匹配”。例如,如果规则将由输入操作中的条目名称选择,则规则选择器1135选择的规则可能是在该规则中命令的RDN的最大数目匹配输入操作中的名称的最大数目-换句话说,最长的名称前缀匹配。根据本发明的实施例,值断言也可以包括变项规则或通配符规则,并且是可扩展的,以使得需要时能够增加新的断言类型。例如,如果匹配RDN,则该断言可以被构造为使得仅仅属性类型需要匹配,利用该属性的任何值提供匹配。
根据本发明的实施例,规则选择器1135选择的规则集指定在协议适应模块1107的控制下执行的正在进行的操作集。该规则集同时可以指定要被立即返回到请求实体1115的结果或错误和/或诸如“记录该操作”的一组动作。正在进行的工作可以顺序或并行地处理。在顺序处理的情况下,一次操作的结果可以被协议适应模块1107用作后一操作的输入,诸如下面图11B所示的示例。根据本发明的实施例,正在进行的操作的字段可以由协议适应模块1107填入从输入操作中的任何字段提取的可变数据(可选地经历映射)、和/或任何其它规则选择数据、和/或由该选择的规则提供的固定数据的组合。同样地,协议适应模块可以将输出结果的字段填充有从结果中的任一字段提取的可变数据(可选地经历映射)和由选择规则提供的固定数据的组合。
图11B示出了根据本发明的实施例的协议适应的连续或顺序处理的示例。BSS402发送对于用户的妻子的婚前姓的请求。这里,BSS402充当图11A所示的请求实体1115。与协议适应模块1107有关的规则选择器1135检查由目录操作服务器1109接收到的输入操作(“得到妻子的婚前姓”)并且识别指定两个正在进行的操作的规则。第一正在进行的操作“得到妻子的姓名”检索该用户的妻子的姓名,例如“BeckyJones”。第一正在进行的操作的结果为第二正在进行的操作“找到婚前姓”提供数据,该第二正在进行的操作检索“BeckyJones”的婚前姓。协议适应模块1107帮助目录操作服务器1109将答案“BeckyRomanov”返回到BSS402。使用此方法,BSS402不知道或不需要知道协议适应模块1107在答复该请求时所采取的所有步骤。
协议适应模块1107可以被配置为工作在在目录操作服务器1109的指导下采取的处理范围内的各个阶段。因而,例如,协议适应可以发生在名称解析处理(诸如由图9B所示的名称解析模块909提供的)之后但是在搜索/更新处理(诸如由图9B所示的搜索/更新模块911提供的)之前。
根据本发明的实施例,由于请求实体1115可以是远程DSA,因此协议适应模块1107可以处理链接的操作,以提供完全分布式协议适应。对链接的操作执行协议适应意味着多级这样的适应,换句话说,用于每一个链接步骤的可能附加适应通道。
协议适应模块1107可以被配置为与变量(诸如图10所示的变量1002)互操作。因而,例如,根据本发明的实施例,变量条目可以包含在协议适应操作中,如图10B的协议适应模块1107的存在所示的。
根据本发明的实施例,如图11A所示,协议适应模块1107充当目录操作服务器1109的附加模块。在此实施例中,协议适应模块1107位于与目录操作服务器1109在访问/物理上接近的服务器中。在一些实施例中,协议适应模块1107甚至可以位于保持目录操作服务器1109的相同的机器(例如,服务器计算机)。通过其中协议适应模块1107充当虚拟目录操作服务器的实施例(诸如图11C所示的实施例),此“附加模块”实施例可以提供改进的性能,特别是在特定的需要实时的环境中。
在图11C所示的本发明的可替换的实施例中,协议适应模块1107实质上充当虚拟目录服务器(或LDAP/DAP代理服务器),向诸如图7A所示的DS706a的目录操作服务器1109发送通信(例如,LDAP或DAP操作)。在此实施例中,协议适应模块1107向目录操作服务器1109提供修改的请求以在由DIT1160代表的目录中处理。因而,根据本发明的实施例,协议适应模块1107检查到目录操作服务器1109的所有输入操作。规则选择器1135将输入操作映射到零个、一个或多个正在进行的操作。协议适应模块1107随后将每一个映射的操作的结果合并成为单个结果并且将它发送回发起的请求实体1115。根据本发明的实施例,用于映射输入操作和输出结果的规则由该输入操作的一个或多个字段选择,诸如“操作类型”和“操作中的条目名称”。用于映射输入操作和输出结果的规则也可以被存储在配置数据1121中。在此实施例中,规则选择数据限于DIT1160的内容的外部表示,例如LDAP消息,以及协议适应发生在目录操作服务器1109的处理之前和/或之后。
适应-名称适应
图11D描述根据本发明的实施例的具有由协议适应提供的适应命名配置的DIT1100。DIT1100包括一个或多个条目,诸如条目504a-504f等、虚拟条目504g-504i、以及根节点602。DIT1100也包括标有适应名称条目1102a的条目,其是真实条目,如同条目504a-504f一样,其经历到标有适应名称条目1102b的虚拟条目的映射。
适应命名提供用于DIT1100中的条目的可替换的名称的另一种机制。但是,与别名和变量不同,适应名称本身不是目录条目。适应命名通过配置数据(例如,配置数据1121)来实现。根据本发明的实施例,协议适应模块1107中的规则选择器1135使用规则选择数据和配置数据1121来识别可替换的名称和他们的等效“真实”名称之间的一组适应名称映射1104。在搜索的情况下,如果过滤器准则可以被适配到搜索的基本名称的一部分,则利用过滤器的大范围的搜索可以被适配为更窄范围的搜索;例如,以利用可能存在但是请求实体实体1115不知道的别名。根据本发明的实施例,利用包括许多“或”语句的复杂过滤器的搜索可以被适配为许多搜索,一个搜索用于“或”替换的每一个。
根据本发明的实施例,在数据检索及其它操作期间,适应命名的使用可以对使用该名称的请求实体(例如,该客户端应用)是透明的。因而,该请求实体(例如,请求实体1115)使用它认为是真实的名称并且接收回请求的信息。例如,假定条目1102a的DN是“员工Id(employeeID)=112,o=我的公司(MyCompany),c=UK”,并且进一步假定在1102a和1102b之间存在适应名称条目。最后,假定请求实体使用它认为是适当的名称(例如,“员工Id=112,区域(area)=员工管理(employeeAdmin),o=另一公司(AnotherCompany),c=DE”)来访问条目1102b中的数据,则由于1102a和1102b之间的适应的映射,将检索到相同的数据。因而,1102b的名称是1102a中的数据的可替换的名称。
适应-属性适应
图11E描述根据本发明的实施例的具有由协议适应提供的属性适应的DIT1150。DIT1150包括一个或多个条目,诸如条目504a-504f等和根节点602。DIT1150也包括具有真实属性1108a-1108e的条目1105a,其经历到具有虚拟属性1108f-1108j的虚拟属性适应的条目1105b的映射。
真实条目1105a包括一个或多个属性,诸如属性1108a-1108e,以及属性适应的条目1102b包括一个或多个属性,诸如属性1108f-1108j等等。在本发明的实施例中,条目1105a的该一个或多个属性1108a到1108e包括诸如例如“名”、“姓”、“地址”、“县”和“邮政编码”的用户数据之类的数据。相似地,属性适应的条目1105b的一个或多个属性1108f到1108j包括诸如例如“名”、“姓”、“地址”、“州”和“邮政编码”等中的任何一个的数据。
属性适应为诸如属性1108a-1108e之类的属性提供可替换的名称和/或值。在本发明的实施例中,协议适应模块1107中的规则选择器1135使用配置数据1121识别各个属性之间的属性适应映射1106。例如,配置数据1121指示协议适应模块1107执行从属性名称1108a到可替换的属性名称1108f的一组映射。在本发明的各个实施例中,当请求实体(例如,客户端应用)运行涉及具有属性映射的属性的操作时,该属性映射将该应用理解的诸如属性1108a-1108e之类的属性名称和值转化为DIT1150理解的适当的属性名称和值。例如,假定属性1108a具有格式“实数”并且假定它的值为“1.0”。进一步假定适应的属性1108f具有格式“整数”并且假定1108f已经被适配到属性1108a。如果与1108f有关的应用执行对1108f的读请求,则该应用期待返回整数“1”而不是实数“1.0”。由于属性适应模块1107执行的属性适应,访问适应的属性1108f的请求实体接收到期待的整数格式的数据。
在本发明的实施例中,当属性适应结合适应命名来实现时,该组合不仅为使用一条目的可替换的名称提供方便,而且也为转化该条目的属性的名称和/或值提供方便。进一步,在本发明的一些实施例中,可以组合适应命名和属性适应来实现应用独立于基础的数据库结构。根据本发明的实施例,适应命名和属性适应使得一个人能够考虑核心商业的直接需要而不是其它考虑(诸如遗留应用的需要)来设计且命名数据存储库中的核心实体。接着,可以增加适应的名称和属性映射以相对于特定的应用(诸如HLR307、HSS301等等)提供完全可替换的命名分级结构。这些可替换的分级结构可以使用不同的DN以及可替换的属性名称来指代核心数据库条目。数据存储库404与DIB500使用定义的映射来将应用请求转化到DIB500条目和属性名称。根据本发明的实施例,该映射可以基于每个应用(或基于DIB500用户)来定义。在本发明的实施例中,当多于一个应用需要不同的命名分级结构时,这些应用中的每一个可以与用适当映射定义的不同的用户名称连接。
子树的简化的访问控制
图12示出了根据本发明的实施例的使用协议适应的形式实现的访问控制(AC)系统。
AC系统通常是网络(例如,服从LDAP的通信网络)中采取的通信协议的一部分,并且可以被实现为访问控制单元(ACU)1201。ACU通常包括各许可模块,诸如用户许可模块、验证模块和优先模块。ACU然后组合各种许可文件以形成一组一致的和有益的许可。ACU可以将多个许可组合在一起以便为几个不同的组/用户创建一组许可。例如,在X.500协议中,传统的ACU提供灵活的访问控制方案,其使得非常细粒度的访问控制降至单独条目级别或可以应用于目录(诸如图6所示的目录600)的子树。这样的传统的访问控制方案在灵活的同时可能在保持控制ACU的数据(访问控制信息(ACI)1217)中产生可观的管理开销,以及当在运行时间应用该访问控制时产生由ACU引起的可观的处理开销。这对于包括几百万个条目的目录特别麻烦,该目录可能不得不被个别管理用于访问控制,以及那些条目将被实时地访问。大量的管理开销也具有安全性含意,因为管理的方案越复杂,越有可能包含错误,因此潜在的安全性降低。
在本发明的各个实施例中,目录服务器(诸如DS706a)为了对于给定数据请求做出访问控制判定,可以需要诸如与目标条目及其属性有关的用户名、验证级别、正被执行的操作以及ACI1217之类的信息。
在本发明的实施例中,每个DSA(诸如图7A所示的DSA702)的管理区域提供模式级别的访问控制,以使得ACI1217基于对象类和属性类型被配置,而不是基于各个目录条目被配置,以及ACI1217应用于该DSA管理的所有条目。这样的模式级别访问控制更容易管理和验证以便校正,并且可以被优化用于实时访问。在本发明的实施例中,对于访问控制,管理区域采用多重租借(multi-tenancy)方法。因而,为每个“租户”(例如,客户端应用)分配该管理区域内的一个或多个子树,并且即使该条目与其它子树内的条目共享公共对象分类和属性类型因此共享ACI1217,每个“租户”也仅仅可以访问那些子树内的条目。
根据本发明的实施例,当处理从请求实体接收到的目录操作时,诸如客户端应用、终端用户及其它DSA的尝试完成链接操作时,ACU1201被配置为代表目录操作服务器1213做出访问控制决定。例如,用户A1203可以请求对条目504c的操作,而用户B1205可以请求改变条目504e。根据本发明的实施例,目录操作服务器1213与图11A和图11C所示的目录操作服务器1109类似,代表被配置为接收数据请求然后将它们提供给与目录服务器有关的适当的处理单元以使得可以完成请求的操作的实体。例如,LDAP服务器将代表目录操作服务器,诸如目录操作服务器1213。根据本发明的实施例,目录操作服务器1213使用ACU1201来做出关于是否允许请求的操作中的全部、部分或无一进行以及同样地是否允许结果中的全部、部分、或无一返回到该发起者的决定。
根据本发明的实施例,安全性协议适应模块1215检查输入到目录操作服务器1213的操作。安全性协议适应模块1215按照与图11A和图11C所示的协议适应模块1107的方式类似的方式工作。与协议适应模块1107类似,安全性协议适应模块1215可以根据一个或多个选择规则(规则集)来修改输入的目录操作。安全性协议适应模块被配置为在目录操作服务器1213和ACU1201之间的交互之前工作。注意,安全性协议适应模块1215的使用不排除在输入操作的相同的或不同的处理步骤中使用协议适应模块1107。相似地,协议适应模块1107可以被配置为提供由安全性协议适应模块1215提供的功能的超集(superset)。
根据本发明的实施例,安全性协议适应模块1215可以被配置为相对于一组名称前缀来匹配输入操作的基本名称。要被匹配的该组名称前缀可以为发起请求的操作的请求实体(例如,像用户1203的客户端应用)而被配置。该组名称前缀提供该规则选择标准以及可以存在于配置数据1210中和/或存在于诸如DIT600的目录的一部分中。
根据本发明的实施例,最长的匹配名称前缀识别要被使用的规则。例如,如果客户端应用请求对条目“A,B,C,D,E”的操作,其中A-E是LDAP顺序的RDN以及存在用名称前缀“E”、“C,D,E”、“B,C,D,E”和“Z,B,C,D,E”配置的规则,则选择的规则是具有名称前缀“B,C,D,E”的规则,因为这代表该规则集中匹配“A,B,C,D,E”输入的最长的前缀。根据本发明的实施例,选择的规则集可以包括关联的动作,诸如:“作出错误反应”、“记录操作尝试”或“继续接收到的操作,但是为了访问控制的目的,假定不同的用户和/或验证级别(有效的用户)”。在后一种情况下,当接着采用ACU1201来做出访问控制决定时,使用有效的用户,从而导致根据原始的用户和匹配的名称前缀的组合做出不同的访问控制决定。换句话说,根据本发明的实施例,该结果是模式级别的访问控制方案,然而提供子树访问控制。原则上,此方法可以被向下应用至单个条目级别。
例如,如图12所示,用户A1203和用户B1205是外部用户。进一步假定管理区域的ACU1201已被配置为使得用户A1203和用户B1205都没有对DIT1200中的任何条目的读或写许可。进一步假定已经创建了两个特定的用户,用户(user)R1207和用户W1209。用户R1207具有对DIT1200中的任何用户条目的读许可,以及用户W1209具有对DIT1200中的任何用户条目的读和写许可。更进一步假定不允许外部客户端应用(诸如用户A1203)绑定作为用户R1207或用户W1209。
因此,安全性协议适应模块1215将规则定位在配置数据1210中,以使得如果用户A对具有名称前缀“P1”的子树内的条目(即,条目504a、504c、504d中的任何一个)执行操作,则有效的用户被作为是用户W1209。对于所有的其它操作,有效的用户保持用户A1203。安全性协议适应模块1215也包括第二规则,以使得如果用户B1205对具有名称前缀“P1”的子树内的条目执行操作,则有效的用户是认为是用户R1207,和第三规则,即如果用户B1205对具有前缀“P2”的子树内的条目(即,条目504b、504e中的任何一个)执行操作,则有效的用户被认为是用户W1209。对于所有的其它操作,有效的用户保留作为用户B1205。
这三个规则的结果是用户A1203仅具有对子树P1内的条目的读/写访问,以及用户B1205具有对子树P1内的条目的读访问以及也具有对子树P2内的条目的读/写访问。
根据本发明的实施例,如同协议适应模块1107一样,安全性协议适应模块1215可以被配置为在名称解析之后但是在该操作处理的其余步骤之前操作。这意味着结果的子树访问控制可以基于完全解引用的别名,而不需要对别名名称本身配置任何访问控制。因而,根据本发明的实施例,当用户具有多个标识并且经由代表那些标识的别名访问时,仅仅代表该用户的真实条目需要被组合到子树用于访问控制目的。因此,根据本发明的实施例,安全性协议适应模块1215,与协议适应模块1107类似的,可以与图9B所示的名称解析模块909互操作。相似地,根据本发明的实施例,尽管图12未示出,但是安全性协议适应模块1215可以与图9B所示的别名隐藏的其它部件互操作。相似地,根据本发明的实施例,尽管图12未示出,但是安全性协议适应模块1215可以与变量处理(诸如图10B所示的变量处理)互操作。因而,例如,根据本发明的实施例,与图10B所示的目录操作服务器1007有关的变量处理的部件可以与图12所示的目录操作服务器1213有关。
根据本发明的实施例,目录操作的结果通常不包括有关调用该操作的用户的信息,因此出于安全考虑,请求应用不会知道它的请求的动作实际上已经被代理用户执行。
移动用户数据系统
图13A示出了根据本发明的实施例的在通信网络中用于数据存储库当中的用户数据的改进通信的移动用户数据系统,诸如移动电信系统204。
当尝试实现跨越地理/网络边界的大规模的目录服务器系统时,常常会出现问题,在那网络性能/延迟是不可预测的、也不能保证和/或一般来说是受限制的。这种情况常常发生在使用卫星链路(例如,印度尼西亚岛)或长途连接(例如,北美洲到欧洲/UK)的配置中。在这样的配置中,数据随长距离的实时复制常常是不切实际的,并且由于IP分组的过长的传输延迟,支持“单个逻辑目录”越过全部位置的X.500请求的实时链接也常常是不切实际的。例如,在任何给定的北美运营商网络中,从纽约NY向西雅图WA发送单向IP分组可能超过50ms。仅仅是传输延迟,而不包括目录处理时间,就超过了该目录的客户端应用在很多情况下可以等待响应以更新或查询的最大时间。
根据本发明的实施例,对于此通信问题的解决方案应该最小化具有带宽/延迟问题的布置地点之间需要的通信/带宽,而同时提供单个逻辑目录,在该逻辑目录中,任何目录服务器系统可以服务由该分布式解决方案保持的任何数据。这样的解决方案例如可以支持横跨北美洲和UK的HSS,或横跨印度尼西亚岛的单个逻辑HLR。
在移动用户数据系统的实施例中,用户简档数据由DSA1302以类似于传统的无线网络基于用户的网络连接(attachment)/访问的点支持从HLR307(本地网络中的移动性数据库)到VLR303(在用户设备当前连接的网络处的用交换设施配置的移动性数据库)的用户的无线简档(例如,GSM或ANSI-41定义的用户简档)的移动部分的方式、基于引用/访问的位置来动态地保持。在初始连接到该网络之后,VLR包含全部必要的用户和设备数据以使得局部交换系统能够完成呼叫;如果该数据不位于本地,则如果每次处理呼叫时都不得不联系远程HLR,则呼叫建立时间可能变得过多。此HLR-VLR概念和相关简档对于无线技术和规范(GSM/ANSI-41)是特定的,并且一般不能应用于任何种类的电信网络的任何用户简档数据。根据本发明的实施例,移动用户数据将此概念提高到更通用的级别,其对于它被配置到的接入网络的类型是不可知的,而且使得能够服务任何实时电信核心网络应用的数据需要的用户简档可行。根据本发明的实施例,移动用户数据系统基于高度分布且可调整的X.500目录。X.500目录使得用户简档数据能够被在地理上分布,而同时看起来该网络客户端作为其中可以从X.500目录的任何服务器检索任何数据的单个逻辑数据库。在如上所述配置放置不同的DSA跨越引入大的传输延迟的地理的情况下,移动用户数据系统的实施例检测对数据的客户端访问何时超过可配置的最小服务质量阈值并且动态地将用户简档数据从远程DSA传输到它当前被访问的本地DSA。因而,在该移动用户数据系统中,当数据被使用时数据被保持在接近于它被使用之处的DSA上,以避免对于每个请求都需要对潜在的连接的复制或链接,而同时仍然提供统一的目录用于供应。移动用户数据系统的进一步的实施例允许服务或应用用户简档数据的特定的部分或子集能够基于如上所述相似的原理被独立地再配置。因而,根据本发明的实施例,对移动用户数据系统的该用户和服务特定的扩展使得应用/服务特定的数据的再配置成为可能,并且使得不同的用户数据位于不同的DSA中,同时使得当需要时它能够被在本地访问。
在此方法中,数据开始被供应到特定的DSA,诸如DSA1302a;但是,在从诸如DSA1302c的远程DSA初始访问(诸如从查询或更新)时,用户数据被传输到支持该查询/更新的远程DSA中一次。该远程DSA大概是对于该用户或代表该用户而动作的应用的局部DSA。根据本发明的实施例,在数据传输之后,涉及此用户数据的全部局部查询在该DSA上本地完成。实质上,移动用户数据系统的实施例实现通用用户使用者简档,通常可由CSP定义,以及该数据基于到数据库的接入点是移动的(例如,通过使用诸如LDAP或DAP的协议)。因而,例如,根据本发明的实施例,如果由于过度的传输延迟而不满足服务质量以及其它传输特性和度量满足或不满足,则数据被移动。
例如,假定HSS1305的用户数据开始时已被供应在DSA1302a上。进一步假定与用户1309a有关的此用户数据的该部分已被配置为适合于传输。当用户1309a(和/或代表该用户的设备或服务器)与HSS1305交互以使得将要请求数据查询和/或更新时,DSA1302a将该用户的数据传输到DSA1302c,该DSA1302c比DSA1302a在物理上更接近于用户1309a(由此由于较低的传输延迟而提供较快的访问)。在此传输后,DSA1302c将保持并负责与HSS1305相关的用户1309a的数据。
相似地,假定HLR1307的用户数据开始时已被供应在位于岛1303上的DSA1302d上。进一步假定与用户1309b有关的此用户数据的该部分已被配置为适合于传输。当用户1309b(或代表该用户的设备或服务器)与HLR1307交互以使得将要请求数据查询和/或更新时,DSA1302d将该用户的数据传输到DSA1302e,该DSA1302e位于岛1304上且比DSA1302e在物理上更接近于用户1309b,因而提供对数据的更快的访问。在此传输后,DSA1302e将保持并负责与HLR1307相关的用户1309b的数据。
图13B示出了根据本发明的实施例的包括如图13A所示的移动用户数据系统的典型部件。
根据本发明的实施例,NSD事件转发器1312a位于DSA1302a中的数据存储库接入点处,并且监视对于存储库1318a中的用户简档的访问请求(例如,监视LDAP访问),然后测量相对于配置数据1320(诸如,预配置的服务简档的质量)的响应时间。如果NSD事件转发器1312a检测到用户接入(例如,LDAP操作)已经超过对于客户端应用的可接受的性能的阈值(如配置数据1320所定义的),则NSD事件转发器将这些事件发送到NDS传输管理器1314,其中包含对于该特定的用户简档数据的适当的细节。NDS事件转发器1312a通常位于被配置为提供对用户简档存储器的访问的DSA(诸如图13A所示的DSA1302)上。因而,根据本发明的实施例,移动用户数据系统可以包括多个实例的NSD事件转发器1312。
根据本发明的实施例,NSD传输管理器1314提供对于从分布式NSD事件转发器1312转发的事件的集中收集点。NSD传输管理器1314整理从NSD事件转发器1312接收到的事件,并且基于配置数据1320(诸如预配置的服务质量和性能简档)来确定什么时候/是否将用户简档数据从一个DSA移动到另一个,例如,从图13B所示的DSA1302a移动到图13B所示的DSA1302b。根据本发明的实施例,NSD传输管理器1314可以位于另一个或多个专门的DSA中,或者可以存在于单独的和/或外部管理/供应平台上。
NSD传输控制器1316按照NSD传输管理器1314的指示,控制用户简档从源DSA(例如,DSA1318a)到目标DSA(例如,DSA1312b)的移动。根据本发明的实施例,NSD传输控制器1316确保正确的用户数据或用户的子集被原样移动,而没有错误发生在新的DSA中。根据本发明的实施例,NSD传输控制器1316可以同时确保适当地改变和/或保持所有适当的目录绑定(分级对象绑定-HOBS)。如果诸如网络断线、DSA服务器故障或其它问题之类的错误阻止了用户简档数据的成功传输,则NSD传输控制器1316确保将用户数据的原始位置保持为尝试传输之前。根据本发明的实施例,NSD传输控制器1316使用传统的能力来执行这样的移动(例如,目录处理支持和LDAP)。因而,整个用户简档或用户简档的子集可以安全地从一个DSA传输到另一个DSA。根据本发明的实施例,与NDS传输管理器1314类似,NSD传输控制器1316可以位于一个或多个专门的DSA中,或者可以存在于单独的和/或外部管理/供应平台上。
NDS方法一般来不是为其中数据接入点实时变化的DSA1302之间的边界设计的,诸如对于沿着两个相邻接入点服务的边界网络驱动的用户可能出现的情况。在这样的情况下,更传统的数据服务器配置(即,非移动的)很可能是更优选的,因为相邻DSA中的任何一个很可能在具有适当的QOS的情况下服务该数据访问查询和更新。在此情况下,NDS系统可以被配置为通过使用几种方法来防止数据变得移动。NSD传输管理器1314可以被配置为不允许用户简档在地理上地相邻的两个DSA之间或通信延迟非常低的DSA之间传输(即,移动数据没有真正的益处)。另外,NSD传输管理器1314可以被配置为确定两个DSA地点之间发生颠簸(thrash)的时间。这里,颠簸一般意思是用户简档在这些DSA之间来回频繁的移动。在此情况下,NSD传输管理器1314可以通过严格的传输准则来压制或减少移动,诸如提高客户端应用引起传输需要的优先级、增加客户端引起传输发生的请求的数目、或仅仅完全不允许DSA之间的传输。
图13C示出了根据本发明的实施例的用于加入该流动用户数据系统的DSA的典型配置数据1310。配置数据1310可以存在于图13B所示的配置数据文件1320中。移动用户数据系统的配置数据1310可以包括数据,诸如:
-指示是否允许/不允许DSA参与按需数据交换1312a的数据。如数据1310所示,允许DSA1302a参与按需交换。具体来说,允许DSA1302a参加与DSA1302c的交换。
-对于DIT(诸如DIT600)的可以在特定DSA之间交换的部分或子集的限制1312b。对于数据1310示出的限制1312b指示仅仅加利福尼亚、华盛顿、俄勒冈、内华达和亚利桑那的用户的数据可以为此特定的DSA交换,以及
-对于诸如数据值的范围、数据的最大大小、时刻等的可以在DSA之间交换数据之前被评估的因素的其它限制1312c。对于该数据示出的其它示例限制1312c指示没有安全数据(诸如密码)的数据传输以及没有单个数据传输可以超过50兆字节。根据本发明的实施例,这些限制仅仅代表可以被置于数据传输上的一些其它限制的示例。
根据本发明的实施例,可以被使用的其它限制1312c包括传输的数据的大小,其可以是可配置的,并且它的设置可以基于为对客户端应用所可接受的传输和发送数据的大小涉及的延迟来确定,诸如50KB、500KB、1MB、10MB。另一个限制可以是私有的和/或安全数据/属性,由于安全性限制而不可以被传输。例如,不可以允许用户口令通过不安全的和/或不加密的连接传输。又一个限制可以是网络负荷级别。例如,可以监视链路占用级别以确定当处于忙碌的级别峰值时在数据的特定时间期间不应该传输数据。更进一步,可以考虑DSA工作状态。例如,在涉及的DSA处于超负荷状态或涉及的DSA处于低容量状态期间(例如,DSA的节点之一发生故障)不允许数据传输。最后,用户简档数据的其它部分可以被定义为本质上是非移动的或静态的,以使得在接入点处不需要再配置数据。这可以包括由BSS使用的静态信息,诸如用户地址。
图13D提供根据本发明的实施例的移动用户数据系统的高级别算法。
NSD部件被预配置为用户数据的按需交换(步骤1320)。参与的DSAD1和D2,诸如图13A所示的DSA1302a和1302c,被预配置为互相按需交换用户数据。另外,根据本发明的实施例,应当与配置数据1320一起准备相关的NSD事件转发器(诸如NSD事件转发器1312a)、NSD传输管理器1314和NSD传输控制器。预配置过程将包括诸如图13B所示的配置数据1310之类的数据。
S1的用户数据在DSAD1(例如,DSA1302a)上被管理并且被配置为可传输到DSAD2(例如,DSA1302c)(步骤1322)。这里,S1代表可以被从DSAD1传输到DSAD2(例如,从DSA1302a到DSA1302c)的与用户或用户服务/应用相关的DIT的子集。
根据本发明的实施例,如图13B所述,要被传输的具体的规则和资格由NSD事件转发器和NSD传输管理器控制。对于此传输的条件,如果有的话,可以被装入到配置数据中,诸如图13C所示的配置数据1310。例如,用户数据S1可以被限制于用户简档的特定子集,诸如特定的服务/应用条目乃至用户简档的条目的属性的特定的子集。S1也可以包括对整个用户简档是否是总体上可传输的或者该简档的不同的子集(例如,专门应用数据)是否是单独地且同时可传输的限制。这里,例如S1可以允许整个用户简档是移动的,包括所有子树/子集以及包括的所有应用/服务。另一个示例可以不允许整个用户简档是移动的但是仅仅允许配置的应用/服务特定简档子树/子集是独立移动的。根据本发明的实施例,如图13B所述,参与移动用户数据系统的每个DSA具有NSD事件转发器,其被配置有对于用户数据接入的特定的服务质量(QoS)和传输准则简档。例如,此简档定义可以考虑用户简档传输的请求延迟(例如,LDAP请求延迟)的阈值。
DSAD1接收对于当前存储在DSAD2上的S1的界限内的用户数据集的请求(例如,LDAP搜索或更新)(步骤1324)。通常,QOS和传输准则的检查以及用户数据的随后的再配置对于单个用户简档的单个请求是特定的。但是,根据本发明的实施例,可以将DSAD1配置为在请求给定集内单个用户的数据时,对于该集用户,根据S1来传输适当的用户数据。
通常和DSAD1和DSAD2处理任何其它请求一样来处理该数据请求。例如,使用X.500协议的原理,该请求可以经由根DSA被从DSAD1链接到DSAD2,在该DSAD2中实现该请求并且将响应经由该请求的相同的路径返回。
根据本发明的实施例,DSAD1的NSD事件转发器检查数据请求以及相关的响应特性和性能,并且确定是否已经超过传输数据集S1的阈值(步骤1326)。示范性阈值可以是例如已经超过可接受的LDAP请求延迟。如果没有超过该阈值(步骤1326),则NSD事件转发器恢复到正常处理。
如果已经超过该阈值(步骤1326),则DSAD1的NSD事件转发器开始将事件转发到NSD传输管理器(步骤1328)。
NSD传输管理器与同时发生在该系统中的其它事件一起接收该转发事件,确定是否批准该传输,以及如果是的话,则指示NSD传输控制器开始将用户简档从DSAD1传输到DSAD2(步骤1330)。根据本发明的实施例,在确定是否批准该传输时,NSD传输管理器可以检查诸如受影响的系统部件和网络的健康和超负荷状态之类的项。如果没有批准传输(步骤1330),则NSD传输管理器恢复到正常处理。
如果批准了传输(步骤1330),则NSD传输管理器请求NSD传输控制器读取要被从DSAD1传输的如S1定义和/或约束的用户数据集,开始从DSAD1中删除用户数据集S1的数据库处理,然后开始将用户数据集S1增加到DSAD2的处理(步骤1332)。在将用户数据集S1增加到DSAD2的处理成功完成后,NSD传输管理器请求提交对DSAD1的删除处理以完成该传输(步骤1332)。
根据本发明的实施例,作为传输过程的一部分,NSD传输管理器将请求相应的更新保持与用户数据集S1的整个用户简档有关的数据的任何DSA。如前所述,用户简档和/或对简档的引用可以跨越多个DSA。通常,根据本发明的实施例,用户简档可以存在于单个DSA之中,但是它可以具有从根DSA和一个或多个标识域DSA的引用。根据本发明的实施例,用户简档将需要在物理上被移动(和与该简档配置的重要别名一起),并且对该简档/别名的引用将需要被相应更新,以指向新的目标DSA。
根据本发明的实施例,当S1允许用户简档的子树/子集独立且同时被传输到不同的DSA时,可以采用专门的进程来确保对传输中的用户简档子树/子集(例如HSS应用子树)的本地访问不会引起不必要的X.500链接回到其中用户根条目所在的起始DSA。此用户根条目被认为是整个用户简档子树的根,由此超越于任何用户简档子集或子树。根据本发明的实施例,当S1指示整个用户简档被移动地从一个DSA再配置到另一个DSA时,该用户根被移动作为简档的一部分,以及对该根的所有引用/绑定都因此改变。但是,根据本发明的实施例,当用户简档的子集或子树被移动时,该用户根没有随着该子树移动,因为可能存在其它子树,它们需要在它们当前被存储在其上的DSA上保持原样。根据本发明的实施例,为了避免X.500链接回到用户根所处的起始DSA,当本地访问目的地DSA上的再配置的应用子树时,当子树经由这里描述的进程被再配置时,该用户根条目被本地投影或复制到局部DSA。这使得对应用特定的子树在本地开始的查询或更新在本地完成,因为目标条目的整个DN(区别名称)存在于该本地DSA中。根据本发明的实施例,如果该应用子树的DN包括用户根和该应用子树的根之间的其它条目,则它们也可以被投影以确保在没有X.500链接的情况下可以进行数据的本地处理。
根据本发明的实施例,可以采用另外的专门的机制来确保从许多可能的用户根条目别名中的一个对本地传输中的用户简档或用户简档子树的访问产生本地满足的响应。根据本发明的实施例,用户根别名条目被实现为标准的X.500或LDAP别名条目。这些别名条目包含对它们指向的条目的引用DN。在此实施例中,用户根别名指向特定的用户根条目。例如,该用户根条目可以具有RDN“cn=William”,其别名条目为RDN“cn=Bill”,还包含对根条目“cn=William”的引用。在此示例中,如果用户简档从DSAD1移动到D2但是对它的别名留在DSAD1上。使用该条目别名的查询导致该查询首先转到DSAD1以检索别名“cn=Bill”并解析“cn=Bill”为现在位于DSAD2上的根条目“cn=William”。为了避免当用户根位于D2上时需要从D1检索该别名,该别名也使用这里定义的相同的NSD进程随着用户简档或简档子树一起移动。根据本发明的实施例,许多别名中的哪一个应当被移动也可以被包括作为NSD事件转发器、NSD传输管理器和NSD传输控制器中定义的传输准则和配置的一部分。因而,当开始触发用户数据的移动的再配置的访问时,特定的别名可以仅仅基于引起该访问的客户端的标识、引起该访问的客户端的优先级或基于该客户端使用的别名被传输。
根据本发明的实施例,作为从DSAD1中删除用户数据集S1的替换,在简档已被成功地传输到目标DSA(DSAD12)之后,NSD传输控制器可以标记该用户简档以保持在DSAD1中被遮蔽(或隐藏)。“无效的”状态将指示数据可能是陈旧的以及在另一个DSA中存在“有效的”副本。当/如果对于电信网络中S1条目的接入点从DSAD2返回到DSAD1时,或如图13A所示从DSA1302c返回到DSA1302a时,此方法可以支持灾难性恢复和通信减少。
根据本发明的实施例,对于用户数据集S1的DSAD1的所有随后的访问都可以然后在本地从DSAD2完成。
根据本发明的实施例,可以基于每个用户简档执行NSD系统。通常,特定百分比的CSP的用户漫游覆盖地区。因而,假定变化引起网络中的不可接受的延迟,用户简档随实际用户使用者的位置的变化而变化。可替换地,用户数据约束集S1可以包括一组用户,尽管它可能不容易确定如何将用户分组到移动的集合中。相似地,集S1可以包括用户简档的一部分,乃至来自于一组用户的用户简档的部分。
根据本发明的实施例,移动用户数据系统的算法的实施方式可以使用如上所述的用于遮蔽或移动条目的X.500DISP概念或可以通过定制的接口来实现。
这里描述的移动用户数据系统提出一个可能的机制来解决移动的数据的问题,但是其他选项也是可能的。例如,NSD传输管理器和NSD传输控制器的位置可以是目录软件自身的一部分或者分成位于集中管理系统或供应系统上的不同部件。另外,根据本发明的实施例,为了提供可调整性,这些部件可被调整到多个服务器中以提供吞吐量和对于NSD功能的弹性。
可替换地,如上所述,NSD功能可以包括改变被传输的用户数据的粒度的能力。如上所述,整个用户简档从一个DSA传输到另一个DSA。但是,假定高优先级的两个不同的客户端不断地从两个不同的接入点访问该用户简档,每个客户端需要用户服务数据的不同的子集。因此,根据本发明的实施例,NSD功能(诸如NSD事件转发器和/或NSD传输管理器)可以包括将用户简档自身分解成服务部件子集或子树(例如,HSS服务数据、HLR服务数据、预付服务数据)的能力,且各个子集中的每一个基于诸如接入点、产生该访问的客户端系统、当然QOS简档之类的因素可以是独立移动的。在此可替换的实施例中,该用户简档的仅仅一个副本将在任何时候存在(可能有遮蔽的根或子根条目的例外,它们保持本地存储的DN以避免X.500链接),但是它的组成部分(服务)将基于QOS和访问的位置而分布在不同的DSA中。
根据本发明的实施例,作为另一个替换,不是传输和删除用户数据集S1,NSD系统可以被配置为根据诸如接入点和QOS简档之类的多个基于DSA的因素隐藏用户数据集S1。在这样的实施例中,NSD系统也包括同步多个副本的机制以确保数据的完整性。根据本发明的实施例,该同步机制可以增加到诸如NSD传输管理器1314的部件中。
日志和备份过程
图14描述根据本发明的实施例的日志系统1400。日志系统1400包括内存储数据库1403(诸如图7A所示的数据存储库708a)、更新1402、内存储日志1404、备份文件1409和一个或多个日志文件1406a-1406c、复制器/同步器1411、备份信息记录器1413等等。内存储日志1404包括更新1408a-1408g等等的列表。
在复制的更新的应用期间,复制器/同步器1411可以控制将更新复制到一个或多个DS的过程。复制器/同步器1411通常与目录服务器,诸如图7A所示的DS706有关。具体来说,复制器/同步器1411的DS可以是DSA(诸如DSA702)内的主DS。根据本发明的实施例,正如前面提到的那样,DSA通常具有主DS以及许多次DS,每个具有它自己的内存储数据库1403。根据本发明的实施例,通常使得更新1402位于DSA内的主DS中然后复制到DSA中的其它DS中。当然,根据本发明的实施例,复制器/同步器1411可以位于DSA内的任何一个DS上。
复制器/同步器1411将更新1408a-1408g应用于内存储数据库1403。此外,在本发明的各个实施例中,目录服务器也将处理的细节存储到由内存储日志1404中的内存储数据库1403代表的数据存储库中。根据本发明的实施例,存储在内存储日志中的信息可以包括对条目做出的变化、该变化的时间、每一个变化的增加的标识符、以及在该变化之前的条目的状态(例如,该更新中改变的值)。接着,在本发明的实施例中,给定因素(诸如磁盘子系统的限制、从内存储日志1404完成的处理)在常规时间间隔或尽快地被写入到基于盘的日志文件1406中作为该处理的永久记录。
内存储日志1404是存储关于内存储数据库1403的所有处理的细节的共享存储区域。在复制和同步的功能期间使用内存储日志1404中的信息。
在复制期间,复制器/同步器1411可以使用内存储日志1404中的信息来退回已经失败的复制的更新,诸如,例如更新1402。在同步期间,复制器/同步器1411可以使用内存储日志1404中的信息来将最新的更新发送到同步的节点(例如,另一个DS)。在本发明的实施例中,与更新1408有关的处理存储在环形缓冲器中。
在本发明的各个实施例中,内存储日志1404被配置为经由日志文件1406将处理记录到盘中。在本发明的实施例中,每当节点(例如,包含内存储数据库1403的目录服务器)启动时或者当当前日志文件1406达到给定大小时,内存储日志1404可以创建新的日志文件1406。日志文件1406可以包括实际的更新信息、变化标识符、以及有关处理被执行的时间和被谁执行的信息。
根据本发明的实施例,日志文件1406是在计划的断线或者服务器故障之后恢复节点的关键部件。在本发明的各个实施例中,当复制器/同步器1411结合备份文件1409使用日志文件1406时,内存储数据库1403可以被恢复到计划的停机(或故障)之前成功执行的最后一次处理,因而最小化了主服务器随后需要以重发来同步恢复的次服务器(例如,保持内存储数据库1403的DS)的处理的数目。
在本发明的各个实施例中,备份文件1409可以按照给定时间间隔自动地被创建,例如一天一次。备份文件1409也可以由运营商在其它时间请求。
备份过程包括将DIT600中的每个条目的描述写入到备份文件1409中。该描述包括关于备份文件1409的恢复的足够的信息,用于将该条目完全再创建在该内存储数据库1403中。该备份过程将花一段时间,在大的内存储数据库的情况下可能很多分钟。此时间段被称为备份时间段。在本发明的一些实施例中,数据存储库1403对于备份时间段期间的正常的动作是可用的。根据本发明的实施例,备份文件被存储在持久数据存储库中。
当从备份恢复时,与内存储数据库1403有关的复制器/同步器1411需要备份文件1409和日志文件1406,至少用于备份时间段期间进行的更新操作。在本发明的实施例中,复制器/同步器1411首先由备份文件1409中条目的描述来恢复它们。复制器/同步器1411然后从相关的日志文件1406中重放在备份时间段期间发生的任何更新操作(按照它们发生的顺序),考虑到这样的事实:在该条目的描述被写入到备份文件1409中时该更新可能被应用于该条目或可能没有被应用于该条目。复制器/同步器1411可以可选地应用发生在备份时间段之后的更新(按照它们发生的顺序),直到固定的时间点、或固定的变化标识符、或者直到所有可用的更新都已被应用。恢复的DS现在能够与在上次更新被从该日志文件应用之后已经发生在DSA内的其它DS上的更新同步。
根据本发明的实施例,复制器/同步器1411可以在恢复进程期间检查和使用存储在备份信息记录器1413中的信息。备份信息记录器1413被配置为记录与备份文件1409有关的备份时间段的开始时间和结束时间,以及标识在备份已经起动之后到内存储数据库1403的首次更新1402的开始变化标识符和标识在备份已经完成之前到内存储数据库1403的最终更新的结束变化标识符。根据本发明的实施例,此信息可用于标识必须被施加以确保恢复的备份的一致性的更新的最小集合。
以用户为中心的目录
图15A是描述根据本发明的实施例的存储在目录1500中的数据(诸如由图3所示的HSS301使用的数据)的分级结构的框图。当HSS301运行时,到目录1500的更新通常增加或修改用户数据并且起源于各个域(诸如图2所示的IMS域214)。例如,目录1500可以在AAA进程期间提供验证信息,在登记期间提供服务简档信息,以及保持用于各个服务的透明的服务数据。
目录1500通常为移动的电信网络提供单个逻辑目录,诸如遵照ITU-TX.500目录标准的目录。目录1500采用类似分级树的数据结构,通常被称为包含各个目录条目的目录信息树(DIT)。条目以树的形式被布置,其中每个条目可以处于许多条目的上级。目录1500从根节点1501开始。当然,在目录1500的一些实施例中,根节点1501自身可以包括共同提供目录1500的根的多个子根节点。例如,一个子根节点可以代表DIT的仅仅属于HSS的用户数据的部分乃至仅仅属于由大的移动电信系统中的许多HSS中的一个HSS使用的用户数据的该部分的部分。
根据本发明的实施例,目录1500保持电信网络(诸如电信网络200)中的用户的记录。在目录1500中,用户标识可以分割到多个标识域1503a-1503d。为了反映与HSS301有关的数据,可以提供至少四个特定的域条目:IMSI域(IMSID)、MSISDN域(MSISDND)、私有Id域(privateD)以及公共Id域(publicD)。这些域由别名条目代表,诸如MSISDN别名(MSISDNAlias)条目1505、IMSI别名(IMSIAlias)条目1507、公共ID别名(PublicIdAlias)条目1509和私有ID别名(PrivateIdAlias)条目1511。因此,例如,MSISDNAlias条目1505使得订阅(诸如订阅(Subscription)条目1517)能够经由MSISDN325以及由唯一的ID(诸如域条目1503c提供的ID)来访问。相似地,IMSIAlias条目1507条目使得订阅条目(诸如订阅条目1517)能够经由IMSI323以及由唯一的ID来访问。同样地,PrivateIDAlias条目1511使得订阅条目(诸如订阅条目1517)能够经由PrivateID327以及由唯一的ID来访问。PublicIDAlias条目1509使得订阅条目(诸如订阅条目1513)能够经由PublicID329以及由唯一的ID来访问。
订阅条目1513代表用户数据的最高级(或根)。订阅条目1513代表对于服务(诸如HSS或HLR相关的服务)的用户供应数据的根。因此,对于HSS服务、HLR服务及其它服务的数据被保持作为订阅条目1513的子条目。例如,这些条目可以包括hssService条目1515、hlrService条目1517及其它服务1519。在本发明的实施例中,如域1503c所示的全世界唯一的ID标识由特定标准(诸如X.500区别名称(DN))识别的订阅条目1513。订阅条目1513也可以经由别名的标识访问,诸如这里所述的IMSI323、MSISDN325、PublicID327和PrivateID329。
图15B是描述根据本发明的实施例的HSS(诸如图3所示的CN206的HSS301)架构的框图。
根据本发明的实施例,HSS301可以包括多个服务器,每个服务器包括与目录服务器(DS)平台1523集成的HSS应用1521。目录服务器平台1523包括至少一个DSA和DUA,诸如图7A所示的DS平台。当然,DS平台1523可以包括比图7A和图7B所示的DSA多或少的DSA。HSS301可以包括TCP/IP接口,以使用标准通信协议(诸如DAP和LDAP)查询和更新DS平台1523上的数据。也可以使用TCP/IP接口,例如当新的用户加入IMS域214时供应该数据库。因而目录服务器平台1523负责诸如数据复制和同步、备份数据、提供自动故障探测和灾难恢复的任务。
HSS应用1521便于用户事务的处理和来自于核心网络上的各个域(诸如IMS域214)的信令通信。在本发明的实施例中,HSS应用1521通常从给定域接收根据认可的协议格式化的消息,诸如来自于IMS域214的根据Diameter协议格式化的消息。Diameter消息可以例如请求目录服务器1523中的存储库数据用于与特定用户相关的数据。
HSS301通常存储并使用两种主要类型的数据。首先,HSS301包括供应数据-与用户和可用的服务相关的数据。存储的供应数据通常包括传统的用户数据、当前限制(barring)状态和服务简档数据,传统的用户数据诸如在其中登记订阅的IMS域214中的CSCF321的标识。第二,HSS301包括配置和控制数据-分别与HSS301服务的一般操作和HSS301系统自身相关的数据。存储在目录服务器1523中的HSS301配置数据包括以下:IMS远程实体规则、所需的服务器能力和AS许可。
因此,这里的本发明的实施例提供改善的HSS,其帮助CSP实现灵活的网络基础结构,该灵活的网络基础结构可以实现诸如IMS、未许可的移动访问(UMA)、及其它IP服务之类的技术。在本发明的一些实施例中,改善的HSS与其它出售商的HLR平台兼容,被配置为最小化网络崩溃,提供对于多个并行的网络接入法的支持,以及提供对大量用户的服务绑定灵活性。另外,改善的HSS使得CSP能够容易地实现新服务,巩固并改进商务处理,以及降低营运成本。
协同主HSS/HLR和协同定位HSS/HLR
图16A和图16B是分别描述根据本发明的实施例的用于HSS301和HLR307的协同主系统1600和协同定位系统1620的框图。在协同主系统1600和协同定位系统1620二者中,HLR307和HSS301共享位于后端服务器1603中的目录1605。根据本发明的实施例,目录1605包括在一个或多个DSA(诸如图7B所示的DSA702)中实现的目录。本发明的实施例可以提供单个逻辑HSS和HLR。如下讨论的,图16A和图16B所示的HSS301和HLR307有效提供单个逻辑HSS和HLR组合。因为CSP组合了新服务并采用了IP交换,所HLR307可以变成用于进一步提高它们的CSP的网络的焦点。另外,HSS301可以帮助CSP改善它与它的用户的关系。因而,这里的单个逻辑HSS和HLR可以对传统的网络加以改进。
当HSS301和HLR307被安装在单个服务器计算机上时,该安装被称为“协同主HSS/HLR安装”。如图16A所示,HSS301和HLR307两个都位于前端服务器1601中。HSS301和HLR307共享安装在后端服务器1603处的目录1605。
在本发明的实施例中,前端服务器1601可以具有分布式架构,以使得HSS301和HLR307被配置在共同构成逻辑前端服务器1613的多个服务器1609、1611上。如图16B所示,当HSS301和HLR307被安装在单独的前端服务器1609、1611上但是共享安装在后端服务器1603中的公共目录1605时,该安装被称为“协同定位HSS/HLR安装”。因而,HSS301和HLR307共享安装在后端服务器1603处的目录1605。
如果HSS301不与HLR307共享目录1605,则该安装被称为“单机HSS”。在这样的安装中,HLR数据通常位于远程HLR数据存储库中。单机HSS在这里没有示出,但是这样的架构是本领域中已知的。
具有关于协同主系统1600或协同定位系统1620的HLR数据的移动域用户被称作“有家用户(homedsubscriber)”。具有关于远程HLR数据存储库的HLR数据的移动域用户被称作“无家用户(un-homedsubscriber)”。
UMS模式
HSS301与HLR307交互以为IMS域214、PS域212和CS域210中的用户提供各种服务,如前所述。这被称为HSS301的用户移动性服务器(UMS)工作模式。
UMS模式使得协同主系统1600和协同定位系统1620二者以及单机HSS能够平稳地进行HSS操作。如果在协同主系统1600或协同定位系统1620上的一些用户无论什么原因正巧是无家的,则UMS模式也能够平稳运行。根据本发明的实施例,给定用户是否被认为是“有家”用户是由HLR数据对于后端1603中的目录1605上的用户是否可用来确定的。换句话说,典型的过程是尝试读取HLR数据。如果这样的读取完成,则该用户是“有家的”。否则,该用户是无家的。
在UMS模式中,HSS301以三种方案工作。在方案I中,HSS301与远程HLR307交互,其是一般由传统方法适应得很好的模式。在方案II中,HSS301与来自于协同主系统1600中的HLR307的数据交互。在方案III中,HSS301与来自于协同定位系统1620中的HLR307的数据交互。
HLR307和HSS301之间的移动应用部分(MAP)接口使UMS模式可行。MAP接口便于检索数据(诸如验证矢量)、再同步验证序列号、和/或检索CS域210和PS域212中的用户状态和位置信息。
MAP接口是本领域中已知的,其提供HSS和远程HLR之间的通信。因而,当需要时,远程HLR由HSS使用MAP接1609联系。例如,在这样的配置中,HSS对远程HLR执行MAP发送验证信息(SAI)操作以便检索验证矢量和再同步序列号。在这样的配置中,HSS对远程HLR执行MAP全天候询问(ATI)操作以便检索CS域/PS域用户状态和位置信息。
传统上使用用户的IMSI或MSISDN将来自于HSS的MAP消息路由到远程HLR。对于无家用户的PrivateID,相应的IMSI被存储在HSS数据中。此IMSI用来在收到Cx-MAR消息时联系远程HLR。对于有家或无家用户的PublicID,相应的MSISDN被存储在HSS数据中。此MSISDN用来在收到Sh-UDR时联系远程HLR。根据本发明的实施例,可以在用户的PrivateID和IMSI之间建立映射。因而,映射有效地使得IMSI能够对HLR301和HSS307执行操作。
但是,用户实际上被导向到协同主系统1600和协同定位系统1620二者中。从而,对于协同主系统1600和协同定位系统1620不需要SAI和ATI,以及不必需复制由HSS301和HLR307使用的数据。对于协同主系统1600和协同定位系统1620二者,验证数据1607以可以被HSS301和HLR307二者使用的方式存储在目录1605中。因而,验证数据1607不需要被复制来服务这些应用中的每一个。换句话说,在如图16A和图16B所示配置的系统中不需要执行SAI和ATI过程。因此,可以通过简单地关闭UMS模式来提供电信网络的总性能。因而,根据本发明的实施例,可以在HSS301和HLR307之间共享验证数据1607。
在本发明的实施例中,网络管理系统(诸如网络管理系统412)可以在HSS301上设置UMS模式以对于HSS和HLR的给定组合工作在开启模式或关闭模式。UMS模式可以诸如通过“仅自身数据”标志设置为真(即,“没有HLR”)或假(即,“存在HLR”)来被开启或关闭。如果UMS模式关闭,则SAI和ATI例如不会由HSS301使用来联系HLR307。当设置为关闭时,HSS301和HLR307可以通过简单地访问目录1605来访问验证状态。
图16C示出了根据本发明的实施例的已被被配置为保持用于诸如HSS301和HLR307的应用的服务数据1619的前端1601。
保持在目录(诸如目录1605)中的数据通常包括用户数据和服务数据1619的混合。根据本发明的实施例,服务数据1619(诸如非用户特定的验证数据1607和UMS模式标志)可以与用户数据分开并且接近于频繁使用这样的数据的应用(例如,HSS301和HLR307)。根据本发明的实施例,通过将服务数据1619移动到前端1601,借助诸如HSS301和HLR307的应用对非用户特定的验证数据1607和UMS模式标志的访问几乎是即时的。
服务数据1619通常包括诸如UMS模式标志的项和验证方案。根据本发明的实施例,验证方案可以混叠(alias)到其它的验证方案。因而,根据本发明的实施例,此方法可以使用从HSS301内处理的别名。根据本发明的实施例,当服务数据1619已被移动到前端1601时,也可以执行上述PrivateID和IMSI之间的映射。
此外,根据本发明的实施例,后端DSA作为图16A所示的后端1603以及类似图7A所示的DSA702而工作。同样地,DS1625a-DS1625c与图7A所示的DS706相似地工作。根据本发明的实施例,DUA1627以类似于图7A所示的DUA704的方式工作。
间接方法的静态条目
图17是描述根据本发明的实施例的便于静态访问条目的存储在目录1700中的数据的分级结构。目录1700可以被存储在诸如图7A所示的DS706配置的一个或多个目录服务器1721中。DS1721可以工作在DSA(诸如图7A所示的DSA702)内。相似地,对目录1700的操作可以被与图7A所示的目录服务器应用软件707类似地工作的目录服务器应用1723接收到并处理。对目录1700操作的部件接合目录服务器内的计算机化的部件来例如经由CPU处理动作。
请求实体(例如,诸如HSS301或HLR307的应用)调用存在于目录1700中的条目1703-1715上的一个或多个方法以执行各种功能。请求实体可以代表任何能够对目录1700请求的实体,诸如客户端应用或终端用户。这些方法包含关于目录1700的模式内的数据间关系的应用认识,并且提供诸如供应系统的简单接口。典型的方法可以是用于进行如下操作的方法:增加用户、增加用户服务(诸如现有用户的HSS服务)、和/或修改用户服务设置(诸如修改呼叫转移设置)。
通过调用该间接方法(诸如条目1703-1715),外部应用可以在不具有对该目录的结构的认识的情况下对目录1700中的数据进行操作。这对于模式经受频繁变化的目录和/或已被设计成以特定模式工作的遗留程序特别有用。根据本发明的实施例,尽管这里提供了与电信配置相关的示例,但是此方法可应用于许多这样的设置:在该设置中,应用需要执行目录中的任务但是不知道或不能知道该目录的实际结构。
应用(诸如HSS301或HLR307)使用条目的区别名称(DN)来调用与条目(例如条目1703)有关的方法。DN反映条目的真实或适配的树,该树形成对其调用方法的条目的祖先。例如,条目1707的DN是“根.条目A.条目B(Root.EntryA.EntryB)”,因为在目录1700中根1701和条目1703是条目1707的祖先。这样的方法以下简称为“真实方法”。在目录结构中真实方法的使用在本领域中是已知的。
因为DN反映由各个祖先组成的真实或适配的树条目名称,所以当目录1700的模式由于任何原因改变时,DN可能成为问题。这样的变化可能影响条目的命名,由此可能改变供应方法需要在其上运行的条目的名称。这影响供应系统,迫使软件改变以处理该模式命名变化。例如,假定模式变化以使得条目1709被增加到条目1707和条目1711之间的目录1700中,并且进一步假定条目1707和条目1711之间的连接被删除。因而,条目1711的DN从“根.条目A.条目B.条目B.2(Root.EntryA.EntryB.EntryB.2)”变化为“根.条目A.条目B.条目B1.条目B2.(Root.EntryA.EntryB.EntryB1.EntryB2)”。
根据本发明的实施例,真实方法可以与间接方法有关。该间接方法是一种属于系统条目(诸如根1701)的方法。系统条目为所有应用所共有,并且当模式中发生变化时它不需要变化。因此,系统条目是“静态的”,以及可以使用静态系统条目来调用间接方法。在本发明的实施例中,该间接方法位于应用连接到目录1700的点处。例如,条目1705代表“静态条目C.2”。因而,应用可以使用适当的协议(例如,LDAP扩展的操作)来调用条目1705(即,由条目1705代表的方法)以便调用由条目1715代表的方法,而不管可能改变条目1715的DN的对模式的改变。换句话说,应用调用条目1715的方法。需要调用静态条目(例如,条目1715)的方法的应用需要知道条目的DN。因而,该条目的名称(例如它的DN)应当是不需要改变的名称。
通过API接口为间接方法提供一些RDN信息(诸如用户标识),而且该间接方法在它的内部实施方式中包括DN结构信息的其余信息。这使得间接方法能够重建将在其上调用真实方法的条目的DN。此功能可以以两种方式中的一个来实现:
-DN再建可以被“硬编码”,即,DN的形式体现在静态条目(诸如静态条目C21705)中的软件逻辑中,和/或
DN再建可以被“软编码”,例如使用作为可配置的服务数据被保持的模板DN,由该静态条目(诸如静态条目C21705)将通过API提供的特定的RDN信息代入到模板DN中。此可配置的服务数据通常被保持在目录自身内,与保持目录模式的方式相似。
因而,该间接方法包括标识在其上将调用真实方法的条目的DN的信息,但是该间接方法对外部应用隐藏由目录1700的模式引起的接口改变。
根据本发明的实施例,当目录模式以影响真实方法所处的条目的位置的方式变化时,该间接方法需要被更新以反映此变化。如果该间接方法以如上所述的软编码方式实现,则所需要的所有是将配置新的模板DN。在一些情况下,间接方法非常期望支持两个形式的DN(例如对于在线数据迁移),至少在迁移的时间段期间。
根据本发明的实施例,因为间接方法位于应用连接到目录服务器(例如,静态条目C2705)的点处,所以对于应用和间接方法之间的访问路径不需要另外的DSA间通信。尽管具有多个应用特定的方法的每个应用单个条目常常是最简洁的方法,但是可以使用具有多个应用的静态条目。这意味着连接点可以准确地位于使用该方法的外部应用连接到的DSA(诸如图7A所示的DSA702)处。因此,该方法的运行开销是最小的。访问间接方法的外部应用将需要连接到根DSA。
该间接方法向应用呈现接口,该接口包括足够的信息以使得间接方法能够推导出真实方法需要在其上运行的条目的当前名称。因而,通过使用间接方法避免了与模式重构有关的系统开销。
根据本发明的实施例,可以使用静态条目创建器1720在目录1700中在几乎任何时间构造执行该间接方法的静态条目(诸如静态条目C21705)。当然,这些条目和方法的创建是通常在系统安装/软件升级期间执行的任务。此任务通常包括安装定义新的或改变的应用对象分类和方法定义的扩展模式以及安装包括该方法代码的共享库。因而,此任务根本上是软件安装动作,并且可以使用标准软件安装技术(例如,使用UNIX操作系统、分组或rpm文件,利用相关或包括的外壳脚本、配置文件、数据库装入文件、二进制等)来执行。静态条目创建器1720可以使用如上所述的硬编码或软编码方法来建立静态条目,将它链接到目录17,以及装备该静态条目以重建在其上可以调用真实方法的条目的DN。静态条目创建器1720还可以包括简化创建静态条目的任务的操作员接口。
计时器机制
改善的计时器机制可以被应用在各种情况下,诸如当关于创建、修改或删除计时器的事件可以被不同的处理节点接收到和/或当计时器的期满非常重要以致于它需要是高度可用的事件时(例如,比各个处理节点中通常可能的更可用)。
因此,本发明的实施例提供一种高性能的复制数据存储器,被配置为带有计时器,以使得它们可以潜在地以各种方式被访问,诸如按时间或应用ID。当然,计时器机制的给定实施例可能使得计时器仅仅以单个方式(例如通过期满时间)被访问。因此,本发明的实施例使得处理需要创建、修改或删除计时器的事件的多个节点上的请求实体(例如应用)能够经由诸如应用ID的机制来完成。因此,请求实体可以代表需要计时器用于给定事件的任何实体,诸如客户端应用或终端用户。
根据本发明的实施例,使用复制数据存储器使得计时器在即使各个处理节点失败时也能够持续。另外根据本发明的实施例,计时器可以按时间被访问,以使得期满处理可以由可以访问该复制数据存储器的任何可用的处理节点来执行。
高性能数据库和实时复制机制仅仅为本发明的实施例提供了一种可能的实施方式框架,其每秒能够处理大量的计时器事件。因而,计时器机制可以被应用于复杂的和简单的实施方式二者。
图18A示出了根据本发明的实施例的使用可能受益于改进的计时机制的高速接入点(HSAP)的通信网络1800。这里公开的计时器机制适用于各种环境,这里描述的通信网络1800仅仅提供一个可以受益于改进的计时机制的这样的环境。
在网络1800中,随着移动用户1810的移动,保持他的呼叫连接的责任最终从基站1812a传递到基站1812b。基站1812a-1812d经由高速接入点(HSAP)1814通信各种用户信息和服务。网络1800可以被配置为支持例如小型办公室设置中的各个生产商的基站1812a-1812d以便提供具有移动漫游能力的无线LAN。
HSAP1814可以使用AAA协议与基站1812a-1812d通信,诸如Cx协议,其用于遵循3GPP的IMS网络中以在I-CSCF/S-CSCF和HSS(诸如图3所示的CSCF321和HSS301)之间通信。这些协议在本领域中是已知的并且由诸如RFC3588、3GPPTS29.228和3GPPTS29.229的标准定义。
在图18A所示的配置中,HSAP1814实际上位于核心网络1812的边缘并且包括仿真的SGSN1816(图3所示的SGSN317的仿真器)。因而,HSAP1814和仿真的SGSN1816可以实际上使得整个网络1800动作并且表现为传统的电信网络。因而,网络1800以与图2所示的移动通信网络204相似的方式工作。
HSAP1814可以使用仿真的SGSN1816来使用传统的MAP接口与HLR307通信。MAP接口为核心网络1822中的各个节点提供应用层以便彼此通信,以便为移动式电话用户提供服务。核心网络1812可以包括多于一个HLR,以及仿真的SGSN可以被配置为与核心网络1812中的HLR通信。
根据本发明的实施例,使用仿真的SGSN1816的HSAP1814也可以包括计费数据功能(CDF),其将基站(BS1812)报告的计费事件集合到计费数据记录(CDR)中并且将这些转发到计费系统1818。CDR是一种供记帐和计费之用的关于可计费的事件(例如,呼叫建立的时间、呼叫的持续时间、传输的数据量等)的格式化的信息的收集。如果CSP为用户提供明细帐单,则CDR用来构造用户的帐单中的行式项目。
在此非标准的网络配置中,HSAP1814可能不能为计费系统1818提供重要的CDR有关事件,诸如“结束呼叫事件”和“呼叫中事件”。这两个事件都是本领域中已知的,它们有助于确定给定用户的费用,特别是当对用户至少一部分的基于呼叫的持续时间来计费时。
图18B提供根据本发明的实施例的可以受益于改善的计时机制的图18A所示的通信网络1800的物理图。如上所述,网络1800可以按照支持提供移动漫游能力的无线LAN的方式被配置。假定网络的基站(诸如BS1812a和BS1812b)已经被配置为支持经由高速下行链路分组接入(HSDPA)协议的通信。HSDPA有时被称为高速下行链路协议接入,是HSPA族中的3G移动电话协议并且允许高的数据传输速度。HSDPA通过定义新的W-CDMA或TD-CDMA信道、用于到移动站的下行链路通信的高速下行链路共用信道(HS-DSCH)来实现数据传输速度的增加。HSDPA在本领域中是已知的。
假定BS1812a-1812b与DSA1831通信。DSA1831可以被形成为如图7A所示的DSA702那样。DSA1831可以结合DS节点1836a对与HSDPA节点1834a有关的数据进行操作。DS节点1836a可以按照类似于图7A所示的DS706a的方式工作。因而,根据本发明的实施例,HSDPA节点1834a和DS节点1836a共同为由图18A所示的逻辑层执行的任务提供物理层。
如图所示,DSA1831也可以由多个HSDPA节点1834a-1834c形成,每个HSDPA节点1834a-1834c具有相关的DS节点1836a-1836c。DSA1831可以包括比示出的多或少的HSDPA节点和DS节点。另外,HSDPA和DS节点不一定需要彼此配对,尽管在许多网络中,这样的配对是可取的。
网络可以包括仅仅比BS1812a-1812b多的基站。每个基站根据需要与主HSDPA节点和次HSDPA节点通信。例如,如图所示,BS1812a具有HSDPA1834a作为它的主HSDPA节点,HSDPA1834b作为它的次HSDPA节点,如实线和虚线所示。相似地,BS1812b具有HSDPA1834c作为它的主HSDPA节点,HSDPA1834b作为它的次HSDPA节点,如实线和虚线所示。
在此网络配置中,基站(诸如BS1812a)应该通常保持连续运行Diameter通信,以便使得诸如CDR的记录被适当地保持。不意外地,它有时可能很难保持连续执行Diameter会话。因而,保持一致组的CDR出现了问题。
随着MS1810漫游,网络中的基站1812a、1812b可能不全部共享相同的HSDPA节点。因而,该网络包括基站之间的移交过程,其使得呼叫能够不中断地继续。
但是,与该呼叫有关的计费事件可以根据MS1810是处于基站1812a中还是1812b中而被报告给不同的HDSPA节点。对此问题的解决方案是将有关用户的计费事件存储在全部HSDPA节点可访问的公共用户数据库中。这可以形成为DSA1831的一部分或者被包含在一个或多个单独的后端DSA内。
不幸的是,甚至这种解决方案也有问题,因为在给定DS上对给定呼叫的相关监视计时器可能因为种种原因没有接收到“结束呼叫事件”。监视计时器是用于电话中的传统计时器以确保与给定呼叫有关的计费事件不会被网络丢失。某些关键事件(诸如结束呼叫事件)可能相对于呼叫而丢失,这可能看起来好像该呼叫从来没有发生过或者该呼叫具有比呼叫的实际长度显著更短或更长的持续时间。例如,“结束呼叫事件”代表呼叫的结束(当一方当事人断开连接时),其可以是CDR中的重要信息,因为许多呼叫是由CSP基于用户呼叫的长度和/或由用户在给定时间间隔(诸如月)中的呼叫代表的总时间长度来计费的。因而,需要与其它呼叫信息一起的从HSDPA节点到HSDPA节点的移交计时器,以在某种程度上确信此信息被提供给适当的后端进程。
因而,本发明的实施例包括分布式定时器机制,其可以被用作网络(诸如这里描述的网络)的监视计时器。此计时器的实施例不一定需要高精确度,以及在一些实施例中,监视计时器可以是可配置的,诸如从10秒到60秒。
图18C示出了根据本发明的实施例的来自于目录(诸如由DSA1831保持的目录)的用户条目1841。用户条目1841包括计费条目1843。计费条目1843包括计费事件条目1845和监视计时器条目1847。
因此,例如,在应用于电信网络的本发明的实施例中,由DSA1831中的DS1836保持的数据代表伪监视计时器的每一个计时器滴答的HSDPA节点。相似地,该数据代表该用户的HSDPA节点的每个“呼叫中事件”和他的相关的“媒体会话”。该呼叫中事件通常代表收费标准的要求,以保证对于进行中的呼叫将规则的条目维持在CDR中。该呼叫中事件不一定反映呼叫的状态变化,尽管它可以。呼叫中事件通常相当频繁地产生,并且如果呼叫结束事件不被记录的话,可以帮助确定呼叫的结束。因而,该呼叫中事件可以帮助记帐系统对跨越多个计费周期的长期进行的呼叫正确地计费。呼叫事件,诸如呼叫中事件和呼叫结束事件,应当由HSAP1814根据建立的电信标准而被定期地接收,因此HSAP1814应当运行监视计时器以保证它们实际上被即时地接收到。
图18D示出了根据本发明的实施例的在由DSA1831保持的目录中具有计时器条目1851的计时器1850。图18C所示的监视计时器条目1847提供时间,其可用于通过计时器1851保持的伪计时器“滴答”来“移动”与计费数据记录1843有关的用户CD监视计时器条目1848a-d。因而,根据本发明的实施例,计时器条目1851提供动态计时器树。
计时器条目1851保持一组计时器“滴答”条目1855a-1855d。这些滴答条目代表计时器1851内的不同时间。该呼叫事件可以存在于从开始时间(“现在+XX”)到结束时间(“现在”)的计时器中。因而,用户CD监视计时器1848d可以首先与这里由Now+XX条目1855d代表的监视计时器的最大持续时间有关。例如,条目1855d可以代表从现在时间开始起的60秒,因而将被命名为“Now+60”。
这里,监视计时器代表期望的呼叫中或呼叫结束事件在采取补救措施之前可以被推迟的最大持续时间,例如异常的CDR记录的产生。
如果该客户端应用接收到适当的响应(例如,呼叫中事件),则该客户端应用可以删除当前运行的计时器并且必要时开始另一个计时器。换句话说,每当接收到新的呼叫中事件时,该用户CD监视计时器1848a-d应当被删除并且替换为新的计时器“Now+60”。每当接收到呼叫结束事件时,当前用户CD监视计时器仅仅需要被删除。
根据本发明的实施例,在接收到呼叫中事件或呼叫结束事件以前,给定用户CD监视计时器1848a-d通过该计时器前进,最终达到现在条目1855a。当客户端应用询问现在条目1855a时,该客户端应用可以找到已经期满而没有接收到呼叫中事件或呼叫结束事件的任何记录(诸如用户CD监视计时器1848a)。因此该客户端应用可以根据收费标准执行适当的补救措施。
在本发明的实施例中,为了使得所有这些动作能够被成功地执行,应当采用以下条目命名原则:
-计时器1851:根据它和用户1841所处的DSA来命名。
-用户CD监视计时器1848a-d:根据用户标识和计费数据1843记录ID命名。
-监视计时器1847:根据计时器1851和用户CD监视计时器1848a-d当前所处的Now+XX记录1855a-d命名。
在图18D所示的本发明的实施例中,计时器1851已被设置为具有10秒的粒度,其就是滴答条目名称以增量10增长的原因,诸如Now+10滴答条目1855b。但是,滴答条目的粒度可以根据计时要求被设置为另一个时间级,诸如1秒或20秒。计时器1851的截止(例如,由计时器代表的持续时间)可以仅仅是具有不那么准确的结果(例如,较长的时间)的大约的任何长度,等同于CSP的较低的服务条件,例如,具有10秒的粒度和2分钟的持续时间的计时器不如具有1秒的粒度和30秒的持续时间的计时器准确。根据本发明的实施例,可以通过对于不同的时间具有较多或较少的条目,来为计时器条目1851配置较大的或较小的粒度。
因而,诸如主HSDPA节点1834a的应用应当周期性地搜索它的“现在”计时器时隙,其应该仅仅包含应当弹出的监视计时器的记录。可替换地,计时器机制可以被构造为在该“现在”计时器时隙向应用通知呼叫。位于“现在”时隙1855a的任何事件代表已经期满的计时器,因而需要被适当地处理(例如通过将异常的呼叫中事件增加到CDR)然后删除。换句话说,应用(诸如HSDPA节点1834a的应用)正在注意获得监视丢失的计费事件。
处理事件(诸如呼叫中或呼叫结束事件)通常需要删除并可能再插入计时记录。如果遵循上述命名原则,则该应用不需要扫描过仍然在运行的全部计时器,而是可以代之以随着呼叫中事件和呼叫结束事件的进来通过名称来搜索它们。其余操作(诸如确定呼叫是否仍然连接)可以通过删除和可能再插入计时器记录和/或将呼叫的呼叫结束事件提供给计费系统1818的简单机制来处理。
计时器1851可以处理与特定的用户、用户组或特定组的用户服务器相关的事件流。根据本发明的实施例,如果由于任何原因事件的正常流中断,则计时器1851可以帮助标识该中断已经发生并且帮助开始需要发生的任何特殊处理。
图18E示出了根据本发明的实施例的在图18B所示的DSA1831上实现的分布式计时机制。如前所述,该分布式计时机制可以用来对任何事件计时并且不一定限于对与电信系统相关的事件计时。
DSA1831类似图7A所示的DSA702。相似地,DS1836类似于DS706,以及DUA1864类似于图7A所示的DUA704而工作。根据本发明的实施例,客户端应用1866可以是任何客户端应用或其它请求实体,但是在这里描述的用于移动电信的计时机制中,很可能是负责保持计时事件的实体,诸如与HSAP1814有关的应用。
每个DS1836保持图18D所示的计时器1850的副本。因而,DS中的任何一个可以处理输入事件。通常,DS1836中的任何一个可以处理输入的读取/搜索事件,其中单个主DS(例如,DS1836a)负责对计时器1850进行增加/删除。根据本发明的实施例,主DS1836也可以负责联系客户端应用1866(例如,当条目达到“现在”位置而没有新的事件已被处理时)。因而,定时模块1861可以被配置为将计时事件并相关信息通信给其它DS上的其它定时模块1861。根据本发明的实施例,例如,尽管所有的计时存储器可以被请求实体访问,仅仅一个定时模块1861需要将计时结果通信给该请求实体(例如,客户端应用)。因而,根据本发明的实施例,该分布式定时模块1861可以被配置为使得,如果指定的事件时间发生,则仅仅一个定时模块向该请求实体通知请求的事件。
根据本发明的实施例,每个DS1836可以包括帮助计时器1850的处理的计时模块1861。计时模块1861可以例如帮助确保保持计时记录最新。根据本发明的实施例,计时模块1861也可以通过检查期满时间记录并向用于适当的监视超时处理的客户端应用1866转发期满的计时器的指示来帮助处理计时器1850中的实际的超时。计时模块1861也可以从计时器1850中删除期满的时间记录。
当然,可以采用多于单个DSA1831来处理与计时器相关的事件流。根据本发明的实施例,对于一些应用,一个人可以希望将应用的每个情况配置为使得它的事件流由本地DSA来处理,例如,位于日本的HSAP1814的情况可能想要使得本地DSA来处理它的计时器而不是使得远程DSA(例如,在UK中的一个)来处理这些相同的计时器。另外,一个人也可能想要分割用户群以使得存在分配给特定的用户组的DSA。在这样的实施例中,主DS1836实际上处理与该用户组相关的呼叫的计时器。
与这里与DSA相关的讨论相似,如果任何特定的DS1836丢失通信或者相反变成不能到达的,则DSA中的其它DS可以继续该计时处理。因而,该计时机制可以是相当耐用的。根据本发明的实施例,可以使用两阶段的提交机制来在多个DS1836之间自动地复制对计时器1850的插入和删除。
定时器机制的实施例可以应用于许多分布式应用,其中不能保证外部事件到达单个本地节点。同样地,如前所述,计时器条目1851可以位于多个数据存储器,以使得如果一个特定的数据存储器(诸如存储在DS1836a上的目录)发生故障,则准确的计时可以使用来自于另一个设备的数据存储器(诸如存储在DS1836b上的目录)仍然继续。
在本发明的实施例中,本发明的部件包括基于以“C”计算机语言写的不同的任务的集合的软件。但是,该软件可以以其它的计算语言来写。软件内的任务经由队列和共享存储器的组合来彼此通信。例如,根据本发明的实施例,目录服务器706a经由TCP/IP链接与DSA702中的其它目录服务器706b和706c以及远程DSA中的其它目录服务器通信。本发明的部件还可以基于硬件和/或硬件和软件的组合。
尽管已经示出和描述了本发明的特定实施例,但是显然本发明不仅仅局限于这些实施例。在不脱离权利要求书中描述的本发明的精神和范围的情况下,许多修改、改变、变化、替换和等效对本领域技术人员来说是显而易见的。一般说来,在下面的权利要求书中,使用的术语不应该被解释为将本发明限制于说明书中公开的特定实施例,而是应当被解释成包括在下文阐述的权利要求书下工作的所有系统和方法。因而,本发明意欲覆盖归入所附权利要求书和它们的等效范围之内的本发明的修改和变化。

Claims (54)

1.一种用于具有分布式用户简档数据存储库的通信网络中用户简档数据的改进通信的系统,包括:
多个与数据存储库相关联的事件转发器,该数据存储库包含用户简档数据从而该数据存储库包括一部分分布式用户简档数据存储库,其中每个事件转发器被配置为监视对在其数据存储库中的用户简档数据的访问请求,确定访问请求响应时间是否超过了性能阈值并对于超过了性能阈值的每个访问请求将用户简档数据传输指示符发送到传输管理器;
传输管理器,被配置为从多个事件转发器接收用户简档数据传输指示符并对于每个用户简档数据传输指示符确定是否应该将用户简档数据组从与发送该用户简档数据传输指示符的事件转发器相关联的第一数据存储库传输到与该访问请求相关联的第二数据存储库;
传输控制器,被配置为控制用户简档数据组从第一数据存储库到第二数据存储库的移动,其中第二数据存储库较第一数据存储库在物理上更接近用户。
2.如权利要求1所述的系统,其中该第二数据存储库被支持在目录服务器上,其中在将用户简档数据组传输到第二数据存储库之后,该目录服务器接收并处理对包含在被传输的用户简档数据组中的用户简档数据所有本地访问请求。
3.如权利要求1所述的系统,其中该传输管理器还被配置为如果第一数据存储库和第二数据存储库位于地理上邻近的服务区域,则拒绝传输该用户简档数据组。
4.如权利要求1所述的系统,其中该传输管理器还被配置为如果通信延迟在最小目标阈值以下,则拒绝传输该用户简档数据组。
5.如权利要求1所述的系统,其中该传输管理器还被配置为防止由频繁尝试在第一数据存储库和第二数据存储库之间传输用户简档数据组和频繁尝试将该用户简档数据组从第二数据存储库传输到第一数据存储库而引起的第一数据存储库和第二数据存储库之间的颠簸。
6.如权利要求1所述的系统,其中该传输管理器通过检查配置数据来确定该用户简档数据组是否应从第一数据存储库传输到第二数据存储库,其中该配置数据包括被允许参与用户简档数据传输的数据存储库的列表。
7.如权利要求6所述的系统,其中该配置数据还包括在分布式数据存储库中特定用户简档数据组的传输的限制。
8.如权利要求6所述的系统,其中该配置数据还包括对与用户简档数据的传输有关的时刻、适合传输的用户简档数据的最大尺寸和适合传输的用户简档数据中数据值的范围的至少一个的限制。
9.如权利要求6所述的系统,其中该配置数据还包括对与传输用户简档数据所要求的安全有关的限制。
10.如权利要求1所述的系统,其中该事件转发器相对于配置数据测量响应时间。
11.如权利要求10所述的系统,其中该配置数据包括服务简档的预配置质量。
12.如权利要求10所述的系统,其中该事件转发器位于与包含该第一数据存储库的目录服务器关联的数据存储库接入点处。
13.如权利要求12所述的系统,其中该事件转发器位于目录系统代理中,该目录系统代理包括该目录服务器和多个其他目录服务器,从而该目录服务器和多个其他目录服务器每个都包括基本上类似的数据存储库并已经被配置用于处理与包含在基本上类似的数据存储库中的用户简档数据相关的数据请求的互操作性。
14.如权利要求1所述的系统,其中该性能阈值位于配置文件中并且该事件转发器被配置为找到并检查该配置文件。
15.如权利要求14所述的系统,其中该性能阈值包括延迟和不可预测性中的至少一个。
16.如权利要求1所述的系统,该传输管理器还被配置为检查配置数据文件以确定该用户简档数据组是否应被传输到第二数据存储库。
17.如权利要求16所述的系统,其中该配置数据包括性能简档和服务信息的至少一个预配置的质量。
18.如权利要求1所述的系统,其中该传输管理器位于不同于保持该数据存储库的目录服务器的目录服务器。
19.如权利要求1所述的系统,其中该第一数据存储库和第二数据存储库被配置为目录。
20.如权利要求19所述的系统,其中该第一数据存储库和第二数据存储库被配置为内存储目录。
21.如权利要求1所述的系统,其中该传输控制器还被配置为确定该用户简档数据组已经从第一数据存储库无误的移动到第二数据存储库。
22.如权利要求1所述的系统,其中该传输控制器还被配置为使用传统协议执行传输。
23.如权利要求1所述的系统,其中该传输控制器位于不同于保持该第一数据存储库的目录服务器的目录服务器。
24.如权利要求1所述的系统,其中该分布式数据存储库还包含服务数据,其中一部分事件转发器具有在它们各自数据存储库中的服务数据,且还被配置为监视对它们各自存储库中的服务数据的访问请求,确定访问请求响应时间是否超过了性能阈值,并对于超过性能阈值的每个访问请求响应将服务数据传输指示符发送到传输管理器,其中该传输管理器还被配置为从该部分事件转发器接收服务数据传输指示符,并确定该服务数据组是否应从与发送该服务数据传输指示符的事件转发器相关联的第三数据存储库传输到与生成该服务数据传输指示符的访问请求更紧密关联的第四数据存储库,其中该传输控制器还被配置为控制该服务数据从第一数据存储库到第二数据存储库的移动。
25.如权利要求24所述的系统,其中该服务数据与布置在电信网络中的归属用户服务器应用或归属定位器服务应用中的一个相关。
26.如权利要求1所述的系统,其中该用户简档数据组包括用户简档、一部分用户简档、多个用户简档和来自多个用户简档中的部分用户简档中的一个。
27.如权利要求26所述的系统,其中第一部分用户简档位于紧随用户简档数据传输指示符的处理的第二数据存储库中,其中第二部分用户简档位于紧随另一用户简档数据传输指示符的处理的第三数据存储库中。
28.一种用于具有分布式用户简档数据存储库的通信网络中用户简档数据的改进通信的方法,包括:
监视对多个数据存储库中用户简档数据的访问请求,其中每个数据存储库代表分布式数据存储库中一部分用户简档数据,其中每个数据存储库由多个事件转发器中的事件转发器监视;
由与多个数据存储库的第一数据存储库关联的事件转发器确定对用户简档数据组的访问请求响应时间是否超过了性能阈值,其中如果访问请求响应时间超过了性能阈值则事件转发器将用户简档数据传输指示符发送到传输管理器;
由传输管理器接收用户简档数据传输指示符并确定该用户简档数据组是否应从多个数据存储库中的第一数据存储库被传输到第二数据存储库,其中该第二数据存储库与访问请求相关联;以及
当传输管理器确定第一组用户简档数据应从第一数据存储库传输到第二数据存储库时,在传输控制器的监督下将用户简档数据组从第一数据存储库移动到第二数据存储库。
29.如权利要求28所述的方法,其中该第二数据存储库被支持在目录服务器上,该方法还包括:
其中在将用户简档数据组传输到第二数据存储库之后,在目录服务器中接收并处理对包含在被传输的用户简档数据组中的用户简档数据所有本地访问请求。
30.如权利要求28所述的方法,还包括:
如果第一数据存储库和第二数据存储库位于地理上邻近的服务区域,则由该传输管理器拒绝传输该用户简档数据组。
31.如权利要求28所述的方法,还包括:
如果通信延迟在最小目标阈值以下,则由该传输管理器拒绝传输该用户简档数据组。
32.如权利要求28所述的方法,还包括:
由该传输管理器防止第一数据存储库和第二数据存储库之间的颠簸,其中该颠簸是由频繁尝试在第一数据存储库和第二数据存储库之间传输用户简档数据组和频繁尝试将该用户简档数据组从第二数据存储库传输到第一数据存储库而引起的。
33.如权利要求28所述的方法,还包括:
由该传输管理器通过检查配置数据来确定该用户简档数据组是否应从第一数据存储库传输到第二数据存储库,其中该配置数据包括被允许参与用户简档数据传输的数据存储库的列表。
34.如权利要求33所述的方法,其中该配置数据还包括在分布式数据存储库中特定用户简档数据组的传输的限制。
35.如权利要求33所述的方法,其中该配置数据还包括对与用户简档数据的传输有关的时刻、适合传输的用户简档数据的最大尺寸和适合传输的用户简档数据中数据值的范围的至少一个的限制。
36.如权利要求33所述的方法,其中该配置数据还包括对与传输用户简档数据所要求的安全有关的限制。
37.如权利要求28所述的方法,还包括:
由该事件转发器相对于配置数据测量响应时间。
38.如权利要求37所述的方法,其中该配置数据包括服务简档的预配置质量。
39.如权利要求37所述的方法,其中该事件转发器位于与包含该第一数据存储库的目录服务器关联的数据存储库接入点处。
40.如权利要求39所述的方法,其中该事件转发器位于目录系统代理中,该目录系统代理包括该目录服务器和多个其他目录服务器,从而该目录服务器和多个其他目录服务器每个都包括基本上类似的数据存储库并已经被配置用于处理与包含在基本上类似的数据存储库中的用户简档数据相关的数据请求的互操作性。
41.如权利要求28所述的方法,还包括:
由该事件转发器检查配置文件中的性能阈值。
42.如权利要求41所述的方法,其中该性能阈值包括延迟和不可预测性中的至少一个。
43.如权利要求28所述的方法,还包括:
由该传输管理器通过检查配置数据文件以确定该用户简档数据组是否应被传输到第二数据存储库。
44.如权利要求43所述的方法,其中该配置数据包括性能简档和服务信息的至少一个预配置的质量。
45.如权利要求28所述的方法,其中该传输管理器位于不同于保持该数据存储库的目录服务器的目录服务器。
46.如权利要求28所述的方法,其中该第一数据存储库和第二数据存储库被配置为目录。
47.如权利要求46所述的方法,其中该第一数据存储库和第二数据存储库被配置为内存储目录。
48.如权利要求28所述的方法,还包括:
由该传输控制器确定该用户简档数据组已经从第一数据存储库无误的移动到第二数据存储库。
49.如权利要求28所述的方法,其中该传输控制器还被配置为使用传统协议执行传输。
50.如权利要求28所述的方法,其中该传输控制器位于不同于保持该第一数据存储库的目录服务器的目录服务器。
51.如权利要求28所述的方法,其中该分布式数据存储库还包含服务数据,其中一部分事件转发器具有在它们各自数据存储库中的服务数据,该方法还包括:
由该部分事件转发器的事件转发器监视对第三数据存储库中的服务数据组的访问请求;
由该部分事件转发器的事件转发器确定对服务数据组的访问请求响应时间是否超过了性能阈值,如果访问请求响应时间超过性能阈值,则将服务数据传输指示符发送到传输管理器,
由该传输管理器接收服务数据传输指示符,并确定该服务数据组是否应从第三数据存储库传输到与生成该服务数据传输指示符的访问请求关联的第四数据存储库,以及
如果该传输控制器确定该服务数据组应从第三数据存储库传输到第四数据存储库,则在传输控制器的监督下将服务数据组从第三数据存储库传输到第四数据存储库。
52.如权利要求51所述的方法,其中该服务数据与布置在电信网络中的归属用户服务器应用或归属定位器服务应用中的一个相关。
53.如权利要求28所述的方法,其中该用户简档数据组包括用户简档、一部分用户简档、多个用户简档和来自多个用户简档中的部分用户简档中的一个。
54.如权利要求53所述的方法,其中第一部分用户简档位于紧随用户简档数据传输指示符的处理的第二数据存储库中,其中第二部分用户简档位于紧随另一用户简档数据传输指示符的处理的第三数据存储库中。
CN200880019679.1A 2007-04-10 2008-04-08 移动用户数据系统 Expired - Fee Related CN101755434B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/783,550 2007-04-10
US11/783,550 US8402147B2 (en) 2007-04-10 2007-04-10 Nomadic subscriber data system
PCT/EP2008/054243 WO2008122641A2 (en) 2007-04-10 2008-04-08 Nomadic subscriber data system

Publications (2)

Publication Number Publication Date
CN101755434A CN101755434A (zh) 2010-06-23
CN101755434B true CN101755434B (zh) 2016-01-20

Family

ID=39831464

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200880019679.1A Expired - Fee Related CN101755434B (zh) 2007-04-10 2008-04-08 移动用户数据系统

Country Status (3)

Country Link
US (1) US8402147B2 (zh)
CN (1) CN101755434B (zh)
WO (1) WO2008122641A2 (zh)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100584093C (zh) * 2006-08-15 2010-01-20 华为技术有限公司 一种在移动通信系统中转移用户设备的方法及系统
US7761471B1 (en) * 2007-10-16 2010-07-20 Jpmorgan Chase Bank, N.A. Document management techniques to account for user-specific patterns in document metadata
EP2131293A1 (en) * 2008-06-03 2009-12-09 Alcatel Lucent Method for mapping an X500 data model onto a relational database
CN101754167B (zh) * 2008-12-17 2013-03-27 华为技术有限公司 数据存储方法、装置和系统
US8868686B1 (en) * 2009-03-31 2014-10-21 Microsoft Corporation Sharing of repository data for non-alias identities
CN102065519A (zh) * 2009-11-11 2011-05-18 中国移动通信集团公司 一种数据存储设备、网络子系统和呼叫控制方法
WO2012155065A2 (en) * 2011-05-12 2012-11-15 Huawei Technologies, Co., Ltd. Method and system for longest prefix matching of variable-sized hierarchical names by treelets
US9154433B2 (en) 2011-10-25 2015-10-06 Nicira, Inc. Physical controller
CN107104894B (zh) * 2011-10-25 2021-02-26 Nicira股份有限公司 网络控制系统中的控制器
US9483279B2 (en) * 2011-10-31 2016-11-01 Oracle International Corporation Mechanism for providing unified access to decentralized user assistance repositories
EP2829017B1 (en) * 2012-03-19 2019-07-03 Nokia Solutions and Networks Oy Reliable charging in a roaming scenario through trust relationship between neighbouring networks
CN104144262B (zh) * 2013-05-10 2016-12-28 中国电信股份有限公司 电话网非法话务筛查方法和装置
US9467965B2 (en) * 2013-08-14 2016-10-11 Marvell World Trade Ltd. Positioning data distribution applied to server-based positioning system
WO2017222431A1 (en) * 2016-06-22 2017-12-28 Telefonaktiebolaget Lm Ericsson (Publ) Methods and systems for relocating subscriber records in multisite systems
US11868445B2 (en) 2016-06-24 2024-01-09 Discovery Communications, Llc Systems and methods for federated searches of assets in disparate dam repositories
US10372883B2 (en) 2016-06-24 2019-08-06 Scripps Networks Interactive, Inc. Satellite and central asset registry systems and methods and rights management systems
FR3053562A1 (fr) * 2016-06-30 2018-01-05 Orange Procede de synchronisation dans un reseau mobile
US10313404B2 (en) * 2016-06-30 2019-06-04 Microsoft Technology Licensing, Llc Sharing user context and preferences
US10200248B1 (en) * 2016-06-30 2019-02-05 Juniper Networks, Inc. Translating high-level configuration instructions to low-level device configuration
US10534795B2 (en) 2016-07-18 2020-01-14 Hewlett Packard Enterprise Development Lp Maintaining consistent subscriber data on geo-redundant subscriber databases
US10038997B2 (en) 2016-10-28 2018-07-31 Hewlett Packard Enterprise Development Lp Storing profile data in data repository local to a regional service area
CN109189813B (zh) * 2018-08-22 2021-08-13 中国建设银行股份有限公司 一种数据共享方法及装置
US11252049B2 (en) * 2018-09-20 2022-02-15 Cable Television Laboratories, Inc. Systems and methods for providing individualized communication service
US11811610B2 (en) 2020-12-30 2023-11-07 Oracle International Corporation Method and apparatus for holistic rendering of cloud network configuration

Family Cites Families (92)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5065311A (en) * 1987-04-20 1991-11-12 Hitachi, Ltd. Distributed data base system of composite subsystem type, and method fault recovery for the system
US5586260A (en) * 1993-02-12 1996-12-17 Digital Equipment Corporation Method and apparatus for authenticating a client to a server in computer systems which support different security mechanisms
US5678045A (en) * 1993-12-06 1997-10-14 Digital Equipment Corporation Method and apparatus for multiscript access to entries in a directory
GB9406564D0 (en) 1994-03-31 1994-05-25 Int Computers Ltd Database management system
US6052681A (en) * 1994-09-01 2000-04-18 Datacraft Technologies Pty. Ltd. X.500 system and methods
GB9420098D0 (en) * 1994-10-05 1994-11-16 Orange Personal Comm Serv Ltd Telecommunication system
US5758343A (en) * 1995-12-08 1998-05-26 Ncr Corporation Apparatus and method for integrating multiple delegate directory service agents
US5721918A (en) * 1996-02-06 1998-02-24 Telefonaktiebolaget Lm Ericsson Method and system for fast recovery of a primary store database using selective recovery by data type
US6240454B1 (en) * 1996-09-09 2001-05-29 Avaya Technology Corp. Dynamic reconfiguration of network servers
US5864849A (en) * 1996-12-16 1999-01-26 Lucent Technologies Inc. System and method for restoring a multiple checkpointed database in view of loss of volatile memory
JP3369445B2 (ja) * 1997-09-22 2003-01-20 富士通株式会社 ネットワークサービスサーバ負荷調整装置、方法および記録媒体
US6587836B1 (en) * 1997-09-26 2003-07-01 Worldcom, Inc. Authentication and entitlement for users of web based data management programs
US6131120A (en) * 1997-10-24 2000-10-10 Directory Logic, Inc. Enterprise network management directory containing network addresses of users and devices providing access lists to routers and servers
GB9727463D0 (en) * 1997-12-30 1998-02-25 Orange Personal Comm Serv Ltd Telecommunications system
US6230271B1 (en) * 1998-01-20 2001-05-08 Pilot Network Services, Inc. Dynamic policy-based apparatus for wide-range configurable network service authentication and access control using a fixed-path hardware configuration
US6202067B1 (en) * 1998-04-07 2001-03-13 Lucent Technologies, Inc. Method and apparatus for correct and complete transactions in a fault tolerant distributed database system
US6446109B2 (en) * 1998-06-29 2002-09-03 Sun Microsystems, Inc. Application computing environment
US6578066B1 (en) * 1999-09-17 2003-06-10 Alteon Websystems Distributed load-balancing internet servers
US6728748B1 (en) * 1998-12-01 2004-04-27 Network Appliance, Inc. Method and apparatus for policy based class of service and adaptive service level management within the context of an internet and intranet
CA2292272A1 (en) 1998-12-22 2000-06-22 Nortel Networks Corporation System and method to support configurable policies for services in directory-based networks
US6369840B1 (en) * 1999-03-10 2002-04-09 America Online, Inc. Multi-layered online calendaring and purchasing
US6081900A (en) * 1999-03-16 2000-06-27 Novell, Inc. Secure intranet access
US6564370B1 (en) * 1999-05-06 2003-05-13 International Business Machines Corporation Attribute signature schema and method of use in a directory service
US6556659B1 (en) * 1999-06-02 2003-04-29 Accenture Llp Service level management in a hybrid network architecture
US6122630A (en) * 1999-06-08 2000-09-19 Iti, Inc. Bidirectional database replication scheme for controlling ping-ponging
US6769000B1 (en) * 1999-09-08 2004-07-27 Nortel Networks Limited Unified directory services architecture for an IP mobility architecture framework
US6298451B1 (en) 1999-11-02 2001-10-02 Idini Corporation Directory-based failure recovery and load balancing system
US7203732B2 (en) * 1999-11-11 2007-04-10 Miralink Corporation Flexible remote data mirroring
US8271336B2 (en) * 1999-11-22 2012-09-18 Accenture Global Services Gmbh Increased visibility during order management in a network-based supply chain environment
US7124101B1 (en) * 1999-11-22 2006-10-17 Accenture Llp Asset tracking in a network-based supply chain environment
US7089211B1 (en) * 2000-01-12 2006-08-08 Cisco Technology, Inc. Directory enabled secure multicast group communications
US6986060B1 (en) * 2000-05-23 2006-01-10 Oracle International Corp. Method and apparatus for sharing a security context between different sessions on a database server
US6769074B2 (en) * 2000-05-25 2004-07-27 Lumigent Technologies, Inc. System and method for transaction-selective rollback reconstruction of database objects
US6823357B1 (en) * 2000-06-27 2004-11-23 Intel Corporation System for automating event scheduling and subscription using an HTTP based event publish server
US7464162B2 (en) * 2000-07-10 2008-12-09 Oracle International Corporation Systems and methods for testing whether access to a resource is authorized based on access information
EP1191431A2 (en) * 2000-09-20 2002-03-27 Matsushita Electric Industrial Co., Ltd. Data storage array apparatus and method of operation
US7657629B1 (en) * 2000-09-26 2010-02-02 Foundry Networks, Inc. Global server load balancing
US6988128B1 (en) * 2000-09-27 2006-01-17 International Business Machines Corporation Calendar events and calendar-driven application technique
US7458080B2 (en) * 2000-12-19 2008-11-25 Microsoft Corporation System and method for optimizing user notifications for small computer devices
US7363339B2 (en) * 2000-12-22 2008-04-22 Oracle International Corporation Determining group membership
US7065586B2 (en) * 2000-12-22 2006-06-20 Radiance Technologies, Inc. System and method for scheduling and executing data transfers over a network
US20030004773A1 (en) * 2001-03-15 2003-01-02 Objectsoft, Inc. Scheduling system with methods for polling to determine best date and time
US7698433B2 (en) * 2001-03-20 2010-04-13 Verizon Business Global Llc User aliases in communication system
US7016945B2 (en) * 2001-04-27 2006-03-21 Sun Microsystems, Inc. Entry distribution in a directory server
US7016893B2 (en) * 2001-05-29 2006-03-21 Sun Microsystems, Inc. Method and system for sharing entry attributes in a directory server using class of service
US20030009559A1 (en) * 2001-07-09 2003-01-09 Naoya Ikeda Network system and method of distributing accesses to a plurality of server apparatus in the network system
WO2003009164A2 (en) * 2001-07-16 2003-01-30 America Online Incorporated Method and apparatus for calendaring reminders
US6823382B2 (en) * 2001-08-20 2004-11-23 Altaworks Corporation Monitoring and control engine for multi-tiered service-level management of distributed web-application servers
CA2464622C (en) * 2001-10-24 2014-08-12 Siemens Aktiengesellschaft Method and device for authenticated access of a station to local data networks, in particular radio data networks
FR2832236B1 (fr) * 2001-11-13 2004-04-16 Inst Nat Rech Inf Automat Interface graphique de portail web semantique
US8290909B2 (en) * 2001-11-15 2012-10-16 International Business Machines Corporation Access manager for databases
ATE292869T1 (de) 2001-12-21 2005-04-15 Castify Networks Sa Verfahren zur server-auswahl in einem inhaltsauslieferungsnetzwerk
KR100453228B1 (ko) * 2002-03-21 2004-10-15 한국전자통신연구원 공유 디스크 파일 시스템의 저널링 및 회복 방법
US8639557B2 (en) * 2002-06-11 2014-01-28 The Nielsen Company (Us), Llc Method and system for collecting and analyzing market data in a mobile communications system
US7844577B2 (en) * 2002-07-15 2010-11-30 Symantec Corporation System and method for maintaining a backup storage system for a computer system
US6768452B2 (en) * 2002-12-19 2004-07-27 Texas Instrucments Incorporated System and method for providing time to a satellite positioning system (SPS) receiver from a networked time server
US7376733B2 (en) * 2003-02-03 2008-05-20 Hewlett-Packard Development Company, L.P. Method and apparatus and program for scheduling and executing events in real time over a network
US7039773B2 (en) * 2003-04-29 2006-05-02 Oracle International Corporation Method and mechanism for efficient implementation of ordered records
US7111136B2 (en) * 2003-06-26 2006-09-19 Hitachi, Ltd. Method and apparatus for backup and recovery system using storage based journaling
US9344850B2 (en) * 2003-08-08 2016-05-17 Telecommunication Systems, Inc. Method and system for collecting, synchronizing, and reporting telecommunication call events
JP4354233B2 (ja) * 2003-09-05 2009-10-28 株式会社日立製作所 バックアップシステム及び方法
US20050055408A1 (en) * 2003-09-09 2005-03-10 Zhu Dong System, device and method for sending a message at a predetermined time
US7237152B2 (en) * 2003-10-24 2007-06-26 Honeywell International Inc. Fail-operational global time reference in a redundant synchronous data bus system
US7620630B2 (en) * 2003-11-12 2009-11-17 Oliver Lloyd Pty Ltd Directory system
KR101090763B1 (ko) * 2003-11-26 2011-12-08 한국전자통신연구원 디지털 아이템 사용에 따른 이벤트 리포팅을 위한 데이터구조와 이를 이용한 이벤트 보고 시스템 및 그 방법
JP4530793B2 (ja) * 2004-02-18 2010-08-25 株式会社リコー 画像形成装置、情報処理装置、情報処理システム、認証方法、認証プログラム及び記録媒体
US7840588B2 (en) * 2004-03-25 2010-11-23 International Business Machines Corporation Real-time attribute processor and syntax schema for directory access protocol services
JP2005276017A (ja) * 2004-03-26 2005-10-06 Hitachi Ltd ストレージシステム
US7428588B2 (en) * 2004-04-08 2008-09-23 International Business Machines Corporation Method for distributing and geographically load balancing location aware communication device client-proxy applications
US8316099B2 (en) * 2004-04-21 2012-11-20 Oracle America, Inc. Directory distributor
US7607138B2 (en) * 2004-06-17 2009-10-20 Cisco Technology, Inc. System and method for optimizing inter-domain event services
US7325040B2 (en) * 2004-08-30 2008-01-29 University Of Utah Research Foundation Locally operated desktop environment for a remote computing system
US7315854B2 (en) * 2004-10-25 2008-01-01 International Business Machines Corporation Distributed directory replication
WO2006053050A2 (en) * 2004-11-08 2006-05-18 Commvault Systems, Inc. System and method for performing auxiliary storage operations
US20060123167A1 (en) * 2004-12-08 2006-06-08 Jeppsen Roger C Request conversion
US7680771B2 (en) * 2004-12-20 2010-03-16 International Business Machines Corporation Apparatus, system, and method for database provisioning
US7640296B2 (en) * 2004-12-21 2009-12-29 Sap Ag Mapping of a content request for a cache server
US20060143292A1 (en) * 2004-12-28 2006-06-29 Taubenheim David B Location-based network access
US20060167891A1 (en) * 2005-01-27 2006-07-27 Blaisdell Russell C Method and apparatus for redirecting transactions based on transaction response time policy in a distributed environment
US20060288115A1 (en) * 2005-06-01 2006-12-21 Ben Neuman A System and Method for transferring a website from one web host to another
US7873696B2 (en) * 2005-10-28 2011-01-18 Yahoo! Inc. Scalable software blade architecture
JP5111754B2 (ja) * 2005-11-14 2013-01-09 株式会社日立製作所 記憶制御システム
CN1967524B (zh) * 2005-11-15 2010-07-21 日电(中国)有限公司 路况信息收集和查询系统及其方法
US8370375B2 (en) * 2005-12-08 2013-02-05 International Business Machines Corporation Method for presenting database query result sets using polymorphic output formats
US8661216B2 (en) * 2005-12-19 2014-02-25 Commvault Systems, Inc. Systems and methods for migrating components in a hierarchical storage network
US8930496B2 (en) * 2005-12-19 2015-01-06 Commvault Systems, Inc. Systems and methods of unified reconstruction in storage systems
US7590413B2 (en) * 2006-04-03 2009-09-15 Research In Motion Limited Free busy calendar interface
US7774428B2 (en) * 2006-04-27 2010-08-10 International Business Machines Corporation Automatic response time measurement of LDAP server operations
US7647307B2 (en) * 2006-11-01 2010-01-12 Red Hat, Inc. Reverse attribute pointers
US8041689B2 (en) * 2006-11-30 2011-10-18 Red Hat, Inc. Flexible LDAP templates
US7562075B2 (en) * 2006-12-07 2009-07-14 International Business Machines Corporation Change approvals for computing systems
US8484656B2 (en) * 2007-03-12 2013-07-09 Citrix Systems, Inc. Systems and methods for providing global server load balancing of heterogeneous devices

Also Published As

Publication number Publication date
WO2008122641A3 (en) 2009-01-15
US20080253403A1 (en) 2008-10-16
US8402147B2 (en) 2013-03-19
WO2008122641A2 (en) 2008-10-16
CN101755434A (zh) 2010-06-23

Similar Documents

Publication Publication Date Title
CN101755434B (zh) 移动用户数据系统
US7664866B2 (en) Sub-tree access control in network architectures
US8782085B2 (en) Variant entries in network data repositories
US8140676B2 (en) Data access in distributed server systems
US9112873B2 (en) Alias hiding in network data repositories
CN103200282B (zh) 代表请求实体访问数据的系统
CN101755427B (zh) 网络架构中改进的子树访问控制
US20080256142A1 (en) Journaling in network data architectures
US20080253402A1 (en) Timing device and method
US20080256112A1 (en) Indirect methods in network data repositories
WO2008122650A2 (en) Improved data access in home subscriber servers
CN101711475B (zh) 网络数据存储库中的别名隐藏
EP2145454B1 (en) Improved data access in distributed server systems
WO2008122649A2 (en) Improved timing device and method
WO2008122644A1 (en) Adaptation in network data repositories
WO2008122646A2 (en) Access methods to directory data

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20160120

CF01 Termination of patent right due to non-payment of annual fee