System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种基于DNS的VoIP容灾方法及装置制造方法及图纸_技高网

一种基于DNS的VoIP容灾方法及装置制造方法及图纸

技术编号:40813394 阅读:2 留言:0更新日期:2024-03-28 19:34
本发明专利技术实施例公开了一种基于DNS的VoIP容灾方法及装置,包括终端,通过循环检测DNS解析记录在DNS服务器上的生存时间,比较所述生存时间是否超过预设阈值;当所述生存时间超过预设阈值,所述终端发起DNS服务器记录查询请求;所述终端获取查询结果,当所述查询结果显示DNS服务器发生改变,所述终端按照查询结果显示的记录发起新的注册请求,提前发现服务器灾难故障,从而进行快速容灾。

【技术实现步骤摘要】

本专利技术涉及dns通信领域,特别是涉及一种基于dns的voip容灾方法及装置。


技术介绍

1、众所周知,dns ttl字段指明了dns记录在dns服务器上的缓存时间,当ttl到期或dns服务器出现问题均会进行缓存更新。

2、终端在获取dns记录后有三种处理方式:小于ttl时间刷新dns记录;等于ttl时间刷新dns记录;大于ttl时间刷新记录。

3、voip业界通常采用的方法是,在注册续约期间对dns ttl是否过期进行检测,若tll过期,则对dns进行查询;若未到续约时间,即使ttl过期也不会再进行dns查询,故dns刷新时间通常大于ttl。未注册续约期间,若dns记录已发生改变,此时再基于dns进行容灾,会出现终端容灾滞后的问题,因此若要基于dns实现容灾需要对dns记录的变化实现及时感知。

4、基于上述问题,遂有如下技术方案的产生。


技术实现思路

1、为了解决上述问题,本专利技术提供了一种基于dns的voip容灾方法及装置,提前发现服务器灾难故障,从而进行快速容灾。

2、根据本专利技术的第一方面内容,提供了一种基于dns的voip容灾方法,包括终端,所述方法包括:

3、循环检测dns解析记录在dns服务器上的生存时间,比较所述生存时间是否超过预设阈值;

4、当所述生存时间超过预设阈值,所述终端发起dns服务器记录查询请求;

5、所述终端获取查询结果,当所述查询结果显示dns服务器发生改变,所述终端按照查询结果显示的记录发起新的注册请求。

6、进一步的,所述终端发起dns服务器记录查询请求包括:

7、所述终端对dns服务器中包含但不限于naptr/srv/a的内容逐项进行查询;

8、当所述终端无法对dns服务器中包含但不限于naptr/srv/a的内容逐项进行查询,判定与dns服务器上记录的sip服务器出错;

9、当所述终端完成对dns服务器中包含但不限于naptr/srv/a的内容逐项进行查询并获取查询结果。

10、进一步的,当所述查询结果显示的dns服务器记录与dns服务器源记录一致,则更新dns服务器的缓存。

11、进一步的,所述终端获取查询结果,当所述查询结果显示dns服务器发生改变,所述终端按照查询结果显示的记录发起新的注册请求包括:

12、当所述终端所获取的查询结果与dns服务器的初始记录不一致,判定所述终端是否处于通话状态中;

13、若所述终端并不处于通话状态中,所述终端按照查询结果中的dns服务器记录发起新的注册请求;

14、当所述终端处于通话状态中,所述终端等待通话结束后并按照查询结果中的dns服务器记录发起新的注册请求。

15、进一步的,所述终端按照查询结果中的dns服务器记录发起新的注册请求包括:

16、所述终端对dns服务器记录的sip服务器列表逐个发起新的注册请求直至注册成功;

17、当所述终端发起新的注册请求全部失败,所述终端按照指数退避规则重新注册。

18、进一步的,所述终端对dns服务器中包含但不限于naptr/srv/a的内容逐项进行查询还包括:

19、当dns解析记录在dns服务器上的生存时间超过预设阈值,所述dns服务器设置必要参数与回调处理函数。

20、进一步的,所述dns服务器设置回调处理函数包括:

21、所述dns服务器遍历注册与dns服务器有访问关系的终端,并将更新后的域名信息发送给所述终端,通知所述终端根据更新后的域名信息重新发起注册。

22、根据本专利技术的第二方面内容,提供了一种容灾装置,所述装置包括检测模块、查询模块以及注册模块;其中,

23、检测模块:用于循环检测dns解析记录在dns服务器上的生存时间,比较所述生存时间是否超过预设阈值;

24、查询模块:用于当所述生存时间超过预设阈值,发起dns服务器记录查询请求;

25、注册模块:用于获取查询结果,当所述查询结果显示dns服务器发生改变,按照查询结果显示的记录发起新的注册请求。

26、进一步的,所述查询模块发起dns服务器记录查询请求包括:

27、对dns服务器中包含但不限于naptr/srv/a的内容逐项进行查询;

28、当无法对dns服务器中包含但不限于naptr/srv/a的内容逐项进行查询,判定与dns服务器上记录的sip服务器出错;

29、当所述终端完成对dns服务器中包含但不限于naptr/srv/a的内容逐项进行查询并获取查询结果。

30、进一步的,所述注册模块按照查询结果显示的记录发起新的注册请求包括:

31、当所述终端所获取的查询结果与dns服务器的初始记录不一致,判定所述终端是否处于通话状态中;

32、若所述终端并不处于通话状态中,所述终端按照查询结果中的dns服务器记录发起新的注册请求;

33、当所述终端处于通话状态中,所述终端等待通话结束并按照查询结果中的dns服务器记录发起新的注册请求。

34、本专利技术相比较现有技术,能解决并达到如下技术效果:

35、在voip业界针对服务器容灾的方法是在注册续约时检查dns ttl是否过期,若ttl过期,则对dns进行查询;若未到续约时间,即使ttl过期也不会再进行dns查询,故dns刷新时间通常大于ttl,本专利技术通过遵循dns ttl刷新纪录进行容灾,具体应用于voip终端、dns服务器以及sip服务器三者之间,首先,循环检测dns解析记录在dns服务器上的生存时间,比较所述生存时间是否超过预设阈值;当所述生存时间超过预设阈值,所述终端发起dns服务器记录查询请求;所述终端获取查询结果,当所述查询结果显示dns服务器发生改变,所述终端按照查询结果显示的记录发起新的注册请求,终端与sip服务器是具有对应关系的,终端访问dns服务器实质上等同于终端通过sip服务器与dns服务器相连,当终端访问dns服务器的时候dns服务器会将终端访问的内容(即访问网址)保存一定时间,以便于后续要再次访问的时候可以直接登入,而这个保存的时间就是dns ttl,由此可见,本专利技术能让终端在重要业务(如注册续约)进行前,提前发现服务器灾难故障,从而进行快速容灾,而不是等到业务进行时才发现灾难。

本文档来自技高网...

【技术保护点】

1.一种基于DNS的VoIP容灾方法,包括终端,其特征在于,所述方法包括:

2.如权利要求1所述基于DNS的VoIP容灾方法,其特征在于,所述终端发起DNS服务器记录查询请求包括:

3.如权利要求2所述基于DNS的VoIP容灾方法,其特征在于,

4.如权利要求1所述基于DNS的VoIP容灾方法,其特征在于,

5.如权利要求4所述基于DNS的VoIP容灾方法,其特征在于,所述终端按照查询结果中的DNS服务器记录发起新的注册请求包括:

6.如权利要求2所述基于DNS的VoIP容灾方法,其特征在于,所述终端对DNS服务器中包含但不限于NAPTR/SRV/A的内容逐项进行查询还包括:

7.如权利要求6所述基于DNS的VoIP容灾方法,其特征在于,所述DNS服务器设置回调处理函数包括:

8.一种容灾装置,其特征在于,所述装置包括检测模块、查询模块以及注册模块;其中,

9.如权利要求8所述的容灾装置,其特征在于,所述查询模块发起DNS服务器记录查询请求包括:

10.如权利要求8所述的容灾装置,其特征在于,所述注册模块按照查询结果显示的记录发起新的注册请求包括:

...

【技术特征摘要】

1.一种基于dns的voip容灾方法,包括终端,其特征在于,所述方法包括:

2.如权利要求1所述基于dns的voip容灾方法,其特征在于,所述终端发起dns服务器记录查询请求包括:

3.如权利要求2所述基于dns的voip容灾方法,其特征在于,

4.如权利要求1所述基于dns的voip容灾方法,其特征在于,

5.如权利要求4所述基于dns的voip容灾方法,其特征在于,所述终端按照查询结果中的dns服务器记录发起新的注册请求包括:

6.如权利要求2所述基于dns的voip...

【专利技术属性】
技术研发人员:姜凯夫
申请(专利权)人:厦门亿联网络技术股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1