根据bac负载动态返回用户注册地址的方法和系统的制作方法

文档序号:8398050阅读:710来源:国知局
根据bac负载动态返回用户注册地址的方法和系统的制作方法
【技术领域】
[0001]本发明涉及通信技术,尤其是一种根据BAC负载动态返回用户注册地址的方法和系统。
【背景技术】
[0002]IP多媒体子系统(IP Multimedia Subsystem, IMS)网络中用户终端注册时,首先要向域名服务器(Domain Name Server,DNS)发起域名查询,以得到注册的IP地址,也即边缘接入控制设备(Border Access Controller,BAC)的实际地址。在正常情况下,同一个域的不同用户终端查询DNS获取不同的BAC地址,不同用户终端将呼叫路由到不同的BAC局点,从而实现不同BAC局点的负荷分担。
[0003]在实现本发明的过程中,发明人发现,现有技术DNS向用户终端返回BAC地址的方法至少存在以下问题:
[0004]目前DNS与BAC之间无任何接口,DNS无法感知BAC的工作状态及负载情况。DNS以固定权重或者轮选方式,向用户终端返回BAC地址作为用户终端注册的IP地址,只能在理论上实现BAC的负载分担。当某一个BAC失效时,DNS仍向用户终端返回该BAC地址;或者当BAC负载不均衡时,也无法向用户终端返回较轻负载的BAC地址。

【发明内容】

[0005]本发明实施例所要解决的技术问题是:提供一种根据BAC负载动态返回用户注册地址的方法和系统,以实现BAC的负载分担,提高网络运行效率。
[0006]本发明实施例提供的一种根据BAC负载动态返回用户注册地址的方法,包括:
[0007]域名服务器DNS按照预设周期向BAC组群发送BAC负载查询消息;
[0008]BAC群组中的各BAC分别根据自身当前的工作负载,向DNS返回表示工作负载情况的负载权重值;
[0009]DNS根据在预设时间内是否接收到BAC群组中各BAC返回的负载权重值、以及接收到的各BAC返回的负载权重值,获取BAC群组中各BAC的工作性能,所述工作性能包括工作状态和负载情况;
[0010]响应于DNS接收到用户终端发送的BAC地址查询请求,DNS根据BAC群组中各BAC的工作性能,向用户终端返回工作状态正常且负载较轻的BAC地址,以便用户终端优先向工作状态正常且负载较轻的BAC注册。
[0011]本发明方法的另一个实施例中,所述获取BAC群组中各BAC的工作性能包括:
[0012]DNS根据在预设时间内是否接收到某一个BAC返回的负载权重值判断该BAC的工作状态是否正常,若在预设时间内未接收到该BAC返回的负载权重值,则判定该BAC的工作状态不正常;
[0013]DNS将在预设时间内接收到的各BAC返回的负载权重值按照由小至大的顺序排序,获得BAC群组中各BAC的工作性能排序表;其中,负载权重值越小,负载越轻。
[0014]本发明方法的另一个实施例中,所述负载权重值为BAC中处理器的使用率。
[0015]本发明方法的另一个实施例中,DNS按照预设周期向BAC组群发送BAC负载查询消息包括:
[0016]DNS按照预设周期,通过与BAC组群中各BAC之间的会话发起协议SIP接口,向BAC组群中的各BAC发送BAC负载查询消息。
[0017]本发明实施例提供的一种根据BAC负载动态返回用户注册地址的系统,包括:
[0018]域名服务器DNS,用于按照预设周期向BAC组群发送BAC负载查询消息;以及根据在预设时间内是否接收到BAC群组中各BAC返回的负载权重值、以及接收到的各BAC返回的负载权重值,获取BAC群组中各BAC的工作性能,所述工作性能包括工作状态和负载情况;响应于DNS接收到用户终端发送的BAC地址查询请求,根据BAC群组中各BAC的工作性能,向用户终端返回工作状态正常且负载较轻的BAC地址,以便用户终端优先向工作状态正常且负载较轻的BAC注册;
[0019]BAC群组,包括多个BAC,分别用于根据自身当前的工作负载,向DNS返回表示工作负载情况的负载权重值。
[0020]本发明系统的另一个实施例中,所述DNS获取BAC群组中各BAC的工作性能时,具体根据在预设时间内是否接收到某一个BAC返回的负载权重值判断该BAC的工作状态是否正常,若在预设时间内未接收到该BAC返回的负载权重值,则判定该BAC的工作状态不正常;将在预设时间内接收到的各BAC返回的负载权重值按照由小至大的顺序排序,获得BAC群组中各BAC的工作性能排序表;其中,负载权重值越小,负载越轻。
[0021]本发明系统的另一个实施例中,所述负载权重值为BAC中处理器的使用率。
[0022]本发明系统的另一个实施例中,DNS与BAC之间设置有会话发起协议SIP接口;
[0023]所述DNS,具体按照预设周期,通过与BAC组群中各BAC之间的会话发起协议SIP接口,向BAC组群中的各BAC发送BAC负载查询消息。
[0024]基于本发明上述实施例提供的根据BAC负载动态返回用户注册地址的方法和系统,DNS可以定期向BAC组群发送BAC负载查询消息,并根据在预设时间内是否接收到BAC群组中各BAC返回的负载权重值、以及接收到的各BAC返回的负载权重值,获取BAC群组中各BAC的工作性能,包括工作状态和负载情况;响应于接收到用户终端发送的BAC地址查询请求,根据BAC群组中各BAC的工作性能,向用户终端返回工作状态正常且负载较轻的BAC地址,以便用户终端优先向工作状态正常且负载较轻的BAC注册,若某BAC故障无响应,则DNS不向用户终端返回该BAC地址。与现有技术相比,本发明实施例可以实现不同BAC局点的负载分担,达到BAC组的负载均衡,使BAC组资源得到均衡使用,提高了网络运行效率。
[0025]下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
【附图说明】
[0026]构成说明书的一部分的附图描述了本发明的实施例,并且连同描述一起用于解释本发明的原理。
[0027]参照附图,根据下面的详细描述,可以更加清楚地理解本发明,其中:
[0028]图1为本发明根据BAC负载动态返回用户注册地址的方法一个实施例的流程图。
[0029]图2为本发明根据BAC负载动态返回用户注册地址的方法另一个实施例的流程图;
[0030]图3为本发明根据BAC负载动态返回用户注册地址的系统一个实施例的结构示意图。
【具体实施方式】
[0031]现在将参照附图来详细描述本发明的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。
[0032]同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
[0033]以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。
[0034]对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
[0035]在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。
[0036]应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
[0037]图1为本发明根据BAC负载动态返回用户注册地址的方法一个实施例的流程图。如图1所示,该实施例根据BAC负载动态返回用户注册地址的方法包括:
[0038]110,DNS按照预设周期向BAC组群发送BAC负载查询消息。
[0039]示例性地,可以在BAC组群中设定DNS所用地址为白名单。DNS可以通过与BAC组群中各BAC之间的会话发起协议(Sess1n Initiat1n Protocol, SIP)接口,定期向BAC组群中的各BAC发送BAC负载查询消息,该BAC负载查询消息为SIP消息,例如,opt1n消肩、O
[0040]120,BAC群组中的各BAC分别根据自身当前的工作负载,向DNS返回表示工作负载情况的负载权重值。
[0041]若某BAC故障无响应,则BAC无法向DNS返回其负载权重值。
[0042]示例性地,负载权重值用于表示BAC当前处理器的负载,可以用BAC中处理器的使用率来表示,例如,以50%表示当前已使用的处理器资源量。
[0043]BAC具体可以通过向DNS返回的应答消息携带其负载权重值。
[0044]130,DNS根据在预设时间内是否接收到BAC群组中各BAC返回的负载权重值、以及接收到的各BAC返回的负载权重值,获取BAC群组中各BAC的工作性能,其中的工作性能包括工作状态和负载情况。
[0045]140,响应于DNS接收到用户终端发送的BAC地址查询请求,DNS根据BAC群组中各BAC的工作性能,向用户终端返回工作状态正常且负载较轻的BAC地址,以便用户终端优先向工作状态正常且负载较轻的BAC注册。
[0046]基于本发明上述实施例提供的根据BAC负载动态返回用户注册地址的方法,DNS可以定期向BAC组群发送BAC负载查询消息,并根据在预设时间内是否接收到BAC群组中各BAC返回的负载权重值、以及接收到的各BAC返回的负载权重值,获取BAC群组中各BAC的工作性能,包括工作状态和负载情况;响应于接收到用户终端发送的BAC地址查询请求,根据BAC群组中各BAC的工作性能,向用户终端返回工作状态正常且负载较轻的BAC地址,以便用户终端优先向工作状态正常且负载较
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1