Diameter代理的状态信息卸载的制作方法

文档序号:9621377阅读:489来源:国知局
Diameter代理的状态信息卸载的制作方法
【专利说明】
【背景技术】
[0001]委托代理(proxy agent)是在信令网络中提供增值服务的节点。它们在于应用层中使用Diameter基础协议的网络中是常见的。在基于diameter协议的网络中,委托代理通常被称作diameter委托代理或仅被称作diameter代理。通过理解流过它们的消息的应用级语义学并且可能地保持关于正在进行的会话以及与这些会话有关的事务的状态信息,委托代理可以修改遍历它们的消息以及影响针对这些消息的对应的路由判定。
[0002]会话包括多个事务。因此,在事务状态和会话状态之间存在有差异。事务状态通过diameter代理来维持并且持续仅一个消息(例如请求和响应)交换。diameter代理发送请求并且接收对那个响应的应答。通过diameter代理为每个消息维持事务状态。另一方面,会话状态可以具有一个事务或多于一个事务的生存期。
[0003]会话被认为由共享同一 diameter会话ID的事务组成。相关的事务被认为是尽管它们不属于同一显式会话但是它们仍然形成逻辑序列并且因此是隐式会话的一部分的那些。在后者的情形中,这些事务通常共享公用密钥,例如用户名属性值对(AVP)的内容。属性值对是表示计算系统和应用中的信息的数据结构。从这点向前在使用术语“会话”时,如上面所定义的那样,显式和隐式会话两者均被考虑。而且,术语会话被用来描述通信会话。
[0004]术语状态的(stateful)指当前交互作用被先前交互作用的历史影响。
[0005]探究更多细节并且参见图1,我们考虑委托代理102,所述委托代理102被要求处理来自对等节点(它在图1中是客户机100)的第一会话发起请求1。会话发起请求是消息(例如请求消息)并且可以被称作diameter消息。基于包含在diameter消息内的信息、全节点状态(node wide state)和可能的外部查询/触发,委托代理做出关于消息操作和路由选择的决定。随后,它将消息转发2至它的下一跳目的地,所述下一跳目的地可以是另一个diameter代理或最终目的地(如果直接连接的话)。在图1中,下一跳目的地被示出为服务器104。如果这个消息的处理已经导致需要跨事务来维持的一些状态信息的创建,则代理102需要将这个信息存储3在本地存储系统106中。当应答消息被返回4时,如果将要更新状态信息,则需要再调用5和修改6先前创建的输入项。将或者会话ID (显式会话)或者已经从消息内的AVP中提取的数据(隐式会话)用作密钥来提交这个状态信息。
[0006]当属于同一会话的随后的事务被代理102接收8时,它为这个会话再调用9保存的状态信息。基于这个信息和diameter消息的内容,委托代理再次做出关于消息的可能修改和它的随后的路由选择的决定。所述消息然后被转发10到由图1中的服务器104示出的它的下一跳目的地,就像上面一样它可以是另一个diameter代理或最终目的地。
[0007]通常,为大量会话和相关的事务维持和使用状态信息是资源消耗任务。状态信息的维持在委托代理上具有随着活动的会话和相关的事务的数量线性增长的内存占用(memory footprint),同时当要修改和/或再调用这个信息时涉及的查找可对委托代理的容量有影响。
[0008]更具体地,通过委托代理保持和修改状态信息存在某些不利之处。在存储方面,委托代理需要在本地存储系统中保持关于在那个时候是活动的所有会话的信息。对应的内存占用随着会话的数量线性增长。在处理器负载方面,查找和检索状态信息的动作将附加的负载放置到委托代理的处理器上。此外,为了避免单点故障,通常以配成对的配置来部署Diameter代理。这意味着需要在可用的代理之间同步状态信息,使得所有会话的最当前的状态信息在它们两者中是可用的。这意味着存在有需要的附加信令以便实现状态信息的这个同步。最后,由于需要追踪活动的会话,所以代理必须能够辨别何时建立新的会话而且辨别何时终止会话这两者(其中后者是两者中更难的)。上面的不利之处使委托代理的开发是困难的并且将复杂化引入了其中部署了委托代理的系统中。

【发明内容】

[0009]因此,存在克服上面提到的问题并且确信通过把这个任务委托给涉及会话的两个端点(即客户机和服务器)来避免将每会话的状态信息保持在委托代理中的需要。
[0010]这个需要通过独立权利要求的特征来满足。在从属权利要求中描述了进一步的实施例。
[0011]根据本发明的第一方面,提供了用于在通信网络中通过委托代理在第一和第二通信实体之间建立通信会话的方法。这个会话包括在第一通信实体和委托代理之间以及在委托代理和第二通信实体之间交换的多个消息。首先,委托代理将会话信息插入到由第一或第二通信实体接收的第一消息。在那之后,委托代理将第一消息发送至第一或第二通信实体。委托代理接着借助于第一或第二通信实体接收第二消息。这个第二消息包含然后被委托代理分析的会话信息。基于这个会话信息,委托代理将第三消息发送至第一或第二通信实体。
[0012]根据本发明的另一个方面,提供了适于在通信网络中于第一和第二通信实体之间建立通信会话的委托代理。所述会话包括在第一通信实体和委托代理之间以及在委托代理和第二通信实体之间交换的多个消息。委托代理包括用于从第一或第二通信实体接收第一和第二消息的接口。它还包括用于将会话信息插入到被第一或第二通信实体接收的第一消息的编码器以及用于分析所述会话信息的解码器。委托代理最后包括用于基于所述会话信息将第三消息发送至第一或第二通信实体的处理器。
【附图说明】
[0013]将参考附图来进一步详细描述本发明。
[0014]图1示出了借助于委托代理的事务的状态处理。
[0015]图2示出了状态信息正被委托给客户机。
[0016]图3示出了在正向方向上提取/重新注入状态信息。
[0017]图4示出了状态信息正被委托给服务器。
[0018]图5示出了在反向方向上提取/重新注入状态信息。
[0019]图6示出了根据本发明的委托代理。
【具体实施方式】
[0020]在下文中,将讨论不同的实施例,所述实施例允许客户机和服务器中维持会话状态信息的委托。应当理解,下面讨论的特征中的每一个可被用在所描述的上下文中。然而,还可以单独使用它们或者与下面详细的描述中所描述的任何其它特征结合来使用它们。
[0021]如已经提到的,当前的发明描述了用于避免Diameter委托代理中每会话的状态信息的保持和维持而是将这个任务委托给涉及会话的两个端点(即客户机和服务器)的方法。由于委托代理驻留在两个通信实体之间,所以它能够在从源主机到目的地主机的途中修改Diameter消息的内容。
[0022]图2示出了如何将状态信息委托给客户机200。客户机200可以被称作第一通信实体。会话由通过客户机200发送的并且在委托代理202处接收的请求消息11 (例如认证信息请求)来发起。委托代理202然后检查消息的内容。基于这些内容并且可能结合全节点状态信息和/或外部查询来做出关于消息修改以及它的路由选择的决定12。所述消息接着被转发13到路由判定选择的对等端。在这种情况下,这个对等端是服务器204。服务器204可以被称作第二通信实体。
[0023]全节点状态信息可以是路由选择表,定义了某些请求不得不被路由到什么地方、连接到节点并且由节点提供服务的可能的端点/对等端、每个对等端可以处理的可能的负载等。外部查询可以是由委托代理进行的查询,以便得到额外信息用于决定如何处理某个请求。可以对不是会话的一部分的另一个服务器或者对包含关于某些对等端的信息的数据库进行这些查询。通常进行消息修改以便例如从消息中过滤信息元素。在那种情况下,可能存在有在它被进一步转发时不应当留在消息中的一些敏感信息。作为另一个示例,出于互用性原因可能不得不修改消息,也就是,为了能够读取消息,消息的接收器可能具有某些要求。作为第三示例,可存在有可以从消息中删除以便使其更短的信息。
[0024]当接收到对应的应答14时,源主机AVP应当包含处理这个请求的实际服务器204的主机名称。所述应答可被认为是第一消息。如图2中所示出的,这个主机名称是例如“hss.abc.com”。委托代理202知道存在有一些状态信息将要被保存。代理服务器关于状态信息将要被保存的认识可以从消息内容和/或节点配置中获得。保存可以或者在委托代理中完成或者被委托给客户机和/或服务器。将这个信息编码为字符串,所述字符串可被用作FQDN的一部分并且被插在源主机地址前面15。具有携带源主机的状态信息的消息接着被委托代理202朝向客户机200转发16。在这种情况下,主机名称将是例如“r3e5g.hss.abc.com”。主机名称的“r3e5g”部分是包含状态信息的编码的字符串。主机名称还可以被称作diameter身份。此外,diameter身份可以具有形式“r3e5ghss.abc.com”,意味着编码的字符串不需要被“hss”部分分隔。将注意到,上面提到的编码的字符串可以具有任何形式和长度。
[0025]图3示出了在正向方向上提取/重新注入状态信息。正向方向的意思是在做出初始请求的相同方向上进行状态信息的提取和重新注入。在那种情况下,是客户机做出初始请求并且也是客户机具有状态信息。委托代理提取状态信息并且还重新注入它。
[0026]当由客户机200做出的来自同一会话的随后的请求21在委托代理202处被接收时(例如通知请求),它应当包括目的地主机AVP,因为已经利用第一事务发现了服务器的名称。这个请求可被认为是第二消息。这个AVP应当还包含之前已经被保存的状态信息。如所提到的,状态信息被包括在被委托代理添加到服务器204的主机名称的部分中。接收请求21的委托代理202可以提取状态信息并且评估它。这个评估的结果连同消息内容以及可能其它的标准被委托代理202使用
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1