发明内容
本发明提供一种基于云探测的DNS宕机检测方法及系统,其可以实现更有效的宕机检测切换功能。
为实现上述目的,本发明提供一种基于云探测的DNS宕机检测方法,该方法包括:
设置至少三个探测节点,且所述探测节点属于不同的IP段,所述每个探测节点部署独立的探测软件,所述探测软件对目标解析IP地址进行云探测,并将云探测结果发送至宕机判定软件;
宕机判定软件根据云探测结果进行分析,按照宕机判定算法进行判定,若判断出目标解析IP地址对应的服务器宕机,则切换至其他目标解析IP地址服务器上。
进一步地,对目标解析IP地址进行云探测,并将云探测结果发送至宕机判定软件包括:
若探测软件进行云探测超时,每间隔一定时间进行若干次重试探测,若获取不到响应,则响应超时,结束本次探测;
若在一定时间内获取到响应。则判断响应是否正常,若为不正常响应,则计入云探测结果。
进一步地,宕机判定软件根据云探测结果进行分析,按照宕机判定算法进行判定包括:
若所有探测节点都响应超时,则判定为宕机;
若所有探测节点都为非正常响应时,则判定为宕机;
若所有探测节点正常响应时,当所有正常响应的平均响应时间超过系统的阈值响应时间时,则判定为宕机;
若所有探测节点正常响应时,当所有正常响应的平均响应时间,远超过历史平均响应时间时,则判定为宕机。
进一步地,所述系统的阈值响应时间为:1~5秒,可以由系统默认配置或用户设置。
进一步地,所述平均响应时间为:
其中,n为探测节点的个数,p
n为单个探测节点的响应时间,
为平均响应时间。
进一步地,所述历史平均响应时间为:
其中,n为单个解析IP在最近100天内探测次数,
为第n次探测的平均响应时间,f
x为历史平均响应时间。
为实现上述目的,本发明提供一种基于云探测的DNS宕机检测切换系统,该系统包括:
设置单元,用于设置至少三个探测节点,且所述探测节点属于不同的IP段,所述每个探测节点部署独立的探测软件,所述探测软件对目标解析IP地址进行云探测,并将云探测结果发送至宕机判定单元;
宕机判定单元,用于根据云探测结果进行分析,按照宕机判定算法进行判定,若判断出目标解析IP地址对应的服务器宕机,则切换至其他目标解析IP地址服务器上。
进一步地,所述探测软件对目标解析IP地址进行云探测,并将云探测结果发送至宕机判定单元包括:
若探测软件进行云探测超时,每间隔一定时间进行若干次重试探测,若获取不到响应,则响应超时,结束本次探测;
若在一定时间内获取到响应。则判断响应是否正常,若为不正常响应,则计入云探测结果。
进一步地,宕机判定单元根据云探测结果进行分析,按照宕机判定算法进行判定包括:
若所有探测节点都响应超时,则判定为宕机;
若所有探测节点都为非正常响应时,则判定为宕机;
若所有探测节点正常响应时,当所有正常响应的平均响应时间超过系统的阈值响应时间时,则判定为宕机;
若所有探测节点正常响应时,当所有正常响应的平均响应时间,远超过历史平均响应时间时,则判定为宕机。
进一步地,所述系统的阈值响应时间为:1~5秒,可以由系统默认配置或用户设置。
进一步地,所述平均响应时间为:
其中,n为探测节点的个数,p
n为单个探测节点的响应时间,
为平均响应时间。
进一步地,所述历史平均响应时间为:
其中,n为单个解析IP在最近100天内探测次数,
为第n次探测的平均响应时间,f
x为历史平均响应时间。
本发明提供的基于云探测的DNS宕机检测方法及系统中,以HTTP云探测为基础,设置HTTP探测节点在三个以上,且属于不同的IP段,每个探测节点部署独立的探测软件,对目标解析IP进行HTTP探测,保证了探测结果的有效性和正确性,根据云探测结果进行分析,按照宕机判定算法结合响应时间分析宕机判定,在判定出解析IP宕机时,切换至其他响应良好的解析IP上,从而实现更有效的宕机检测切换技术。
具体实施方式
为使本领域技术人员更好地理解本发明的技术方案,下面结合附图和具体实施方式对本发明作进一步详细描述。
图1为本发明实施例一提供的基于云探测的DNS宕机检测方法的流程示意图,如图1所示,该方法包括:
步骤S1、设置至少三个探测节点,且所述探测节点属于不同的IP段,所述每个探测节点部署独立的探测软件,所述探测软件对目标解析IP地址进行云探测,并将云探测结果发送至宕机判定软件。
具体地,为了保证探测结果的有效性和正确性,通过设置至少三个HTTP探测节点,该探测节点属于不同的IP段,比如北京节点、杭州节点、上海节点、青岛节点、香港节点等。
每个探测节点部署独立的探测软件,对目标解析IP地址进行HTTP探测,并将云探测结果发送至宕机判定软件包括:
若探测软件进行云探测超时,每间隔一定时间进行若干次重试探测,每间隔数秒,进行重试,如果n次后仍然超时,若获取不到响应,则响应超时,则结束本次探测;
若在一定时间内获取到响应。则判断响应是否正常,若为非正常响应,则计入云探测结果。如果获取到响应时间,判断响应是否正常,非正常响应如404、500等响应,计入探测结果(available:false),直至探测结束后,并将探测结果发送至宕机判定软件。
步骤S2、宕机判定软件根据云探测结果进行分析,按照宕机判定算法进行判定,若判断出目标解析IP地址对应的服务器宕机,则切换至其他目标解析IP地址服务器上。
具体地,宕机判定软件根据云探测结果进行分析,按照宕机判定算法进行判定包括:
若所有探测节点都响应超时,则判定为宕机;
若所有探测节点都为非正常响应(available:false)时,则判定为宕机;
若所有探测节点正常响应时,当所有正常响应的平均响应时间超过系统的阈值响应时间时,则判定为宕机;
若所有探测节点正常响应时,当所有正常响应的平均响应时间,远超过历史平均响应时间时,则判定为宕机。
若探测结果宕机符合规则的IP地址,认为是宕机状态,可进行切换。
优选地,系统的阈值响应时间为:1~5秒,可以由系统默认配置或用户设置。当平均响应时间超过该设定值是,判定为该解析IP宕机,可切换到其它响应良好的解析IP上。
在一次探测中,单个解析IP所有探测节点的算术平均值,为平均响应时间,也即平均响应时间为:
其中,n为探测节点的个数,p
n为单个探测节点的响应时间,
为平均响应时间。
单个解析IP的历史平均值为,将单个解析IP的历史平均值为,将100天内的平均响应时间去掉响应时间最大的5%的数据,将剩下的数据计算机均方根,即为历史平均值:历史平均响应时间为:
其中,n为单个解析IP在最近100天内探测次数,
为第n次探测的平均响应时间,f
x为历史平均响应时间。
具体地,当所有解析IP在云探测所有节点响应正常时如下表所示:
假设解析IP地址33.33.33.33在所有节点都响应超时,则判定为宕机,如下表所示:
假设解析IP地址33.33.33.33在所有节点均不正常响应,则判定为宕机,如下表所示:
假设系统阈值为1秒,解析IP地址33.33.33.33平均响应时间超过1秒,则判定为宕机,如下表所示:
假设解析IP地址33.33.33.33历史平均值为61.0ms,本次探测平均响应时间为660.1ms,远超过历史平均值,则判定为宕机,如下表所示:
本实施例提供的基于云探测的DNS宕机检测方法中,以HTTP云探测为基础,设置HTTP探测节点在三个以上,且属于不同的IP段,每个探测节点部署独立的探测软件,对目标解析IP进行HTTP探测,保证了探测结果的有效性和正确性,根据云探测结果进行分析,按照宕机判定算法结合响应时间分析宕机判定,在判定出解析IP宕机时,切换至其他响应良好的解析IP上,从而实现更有效的宕机检测切换技术。
图2为本发明实施例二提供的基于云探测的DNS宕机检测系统的结构示意图,如图2所示,该系统包括:设置单元201和宕机判定单元202。其中,设置单元201用于设置至少三个探测节点,且探测节点属于不同的IP段,每个探测节点部署独立的探测软件,探测软件对目标解析IP地址进行云探测,并将云探测结果发送至宕机判定单元;宕机判定单元202用于根据云探测结果进行分析,按照宕机判定算法进行判定,若判断出目标解析IP地址对应的服务器宕机,则切换至其他目标解析IP地址服务器上。
具体地,探测软件对目标解析IP地址进行云探测,并将云探测结果发送至宕机判定单元202包括:
若探测软件进行云探测超时,每间隔一定时间进行若干次重试探测,若获取不到响应,则响应超时,结束本次探测;
若在一定时间内获取到响应。则判断响应是否正常,若为不正常响应,则计入云探测结果。
宕机判定单元202根据云探测结果进行分析,按照宕机判定算法进行判定包括:
若所有探测节点都响应超时,则判定为宕机;
若所有探测节点都为非正常响应时,则判定为宕机;
若所有探测节点正常响应时,当所有正常响应的平均响应时间超过系统的阈值响应时间时,则判定为宕机;
若所有探测节点正常响应时,当所有正常响应的平均响应时间,远超过历史平均响应时间时,则判定为宕机。
优选地,系统的阈值响应时间为:1~5秒,可以由系统默认配置或用户设置。当平均响应时间超过该设定值是,判定为该解析IP宕机,可切换到其它响应良好的解析IP上。
进一步地。在一次探测中,单个解析IP所有探测节点的算术平均值为平均响应时间,也即平均响应时间为:
其中,n为探测节点的个数,p
n为单个探测节点的响应时间,
为平均响应时间。
进一步地,单个解析IP的历史平均值为,将100天内的平均响应时间去掉响应时间最大的5%的数据,将剩下的数据计算机均方根,为历史平均值,也即历史平均响应时间为:
其中,n为单个解析IP在最近100天内探测次数,
为第n次探测的平均响应时间,f
x为历史平均响应时间。
本实施例提供的基于云探测的DNS宕机检测系统中,以HTTP云探测为基础,设置HTTP探测节点在三个以上,且属于不同的IP段,每个探测节点部署独立的探测软件,对目标解析IP进行HTTP探测,保证了探测结果的有效性和正确性,根据云探测结果进行分析,按照宕机判定算法结合响应时间分析宕机判定,在判定出解析IP宕机时,切换至其他响应良好的解析IP上,从而实现更有效的宕机检测切换技术。
可以理解的是,以上实施方式仅仅是为了说明本发明的原理而采用的示例性实施方式,然而本发明并不局限于此。对于本领域内的普通技术人员而言,在不脱离本发明的精神和实质的情况下,可以做出各种变型和改进,这些变型和改进也视为本发明的保护范围。