一种多路径IO调整方法和装置与流程

文档序号:12490764阅读:760来源:国知局
一种多路径IO调整方法和装置与流程

本发明属于linux系统进程调度技术领域,特别是涉及一种多路径IO调整方法和装置。



背景技术:

现有技术中的服务器都会使用multipath多路径软件进行存储容灾处理,但是其负载均衡程度还有所不足,只能实现多条路径均分IO的情况,而没有考虑实际链路是否达到标准。当一个路径发生故障时,并不会关闭这条路径,造成大量IO堆积,直到该路径挂掉,可见这就大大降低了IO速率。



技术实现要素:

为解决上述问题,本发明提供了一种多路径IO调整方法和装置,能够实现分级控制IO速率的效果,充分利用链路特性,提高IO效率,避免在故障链路阻塞时IO速度过低的情况。

本发明提供的一种多路径IO调整方法,包括:

探测每条链路的IO速率;

判断每条链路是否异常;

对IO速率异常的链路的传输数据进行统计分析,得到分析结果;

根据所述分析结果,关闭IO速率异常的链路。

优选的,在上述多路径IO调整方法中,

在所述关闭IO速率异常的链路之后,还包括:

将所述IO速率异常的链路上的IO切换到其他的正常链路上。

优选的,在上述多路径IO调整方法中,

在所述将所述IO速率异常的链路上的IO切换到其他的正常链路上之后,还包括:

每隔预设时间利用关闭后的链路进行IO,如果正常则恢复链路,如果异常则不恢复链路。

优选的,在上述多路径IO调整方法中,

所述预设时间的范围为30秒至60秒。

优选的,在上述多路径IO调整方法中,

所述判断每条链路是否异常为:

当链路的IO速率下降至初始IO速率的10%至30%时,判断所述链路为异常,否则判断为正常。

本发明提供的一种多路径IO调整装置,包括:

探测单元,用于探测每条链路的IO速率;

判断单元,用于判断每条链路是否异常;

分析单元,用于对IO速率异常的链路的传输数据进行统计分析,得到分析结果;

关闭单元,用于根据所述分析结果,关闭IO速率异常的链路。

优选的,在上述多路径IO调整装置中,还包括:

切换单元,用于将所述IO速率异常的链路上的IO切换到其他的正常链路上。

优选的,在上述多路径IO调整装置中,还包括:

恢复单元,用于每隔预设时间利用关闭后的链路进行IO,如果正常则恢复链路,如果异常则不恢复链路。

优选的,在上述多路径IO调整装置中,所述恢复单元具体用于每隔30秒至60秒利用关闭后的链路进行IO,如果正常则恢复链路,如果异常则不恢复链路。

优选的,在上述多路径IO调整装置中,所述判断单元具体用于当链路的IO速率下降至初始IO速率的10%至30%时,判断所述链路为异常,否则判断为正常。

通过上述描述可知,本发明提供的上述多路径IO调整方法和装置,由于该方法包括探测每条链路的IO速率;判断每条链路是否异常;对IO速率异常的链路的传输数据进行统计分析,得到分析结果;根据所述分析结果,关闭IO速率异常的链路,因此能够实现分级控制IO速率的效果,充分利用链路特性,提高IO效率,避免在故障链路阻塞时IO速度过低的情况。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本申请实施例提供的第一种多路径IO调整方法的示意图;

图2为本申请实施例提供的第一种多路径IO调整装置的示意图。

具体实施方式

本发明的核心思想在于提供一种多路径IO调整方法和装置,能够实现分级控制IO速率的效果,充分利用链路特性,提高IO效率,避免在故障链路阻塞时IO速度过低的情况。

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本申请实施例提供的第一种多路径IO调整方法如图所示,图1为本申请实施例提供的第一种多路径IO调整方法的示意图,该方法包括如下步骤:

S1:探测每条链路的IO速率;

需要说明的是,一般都是用multipath技术,进行多路径IO传输,作为一种冗余设计,当一条链路出现问题时,还可以用其他链路传输,在工作过程中,不断探测multipath所有负载链路的IO传输情况。

S2:判断每条链路是否异常;

具体的,可以通过判断每条链路的传输速度下降百分比来进行异常与否的判断。

S3:对IO速率异常的链路的传输数据进行统计分析,得到分析结果;

分析出异常后,可以通知主程序和负载均衡处理。

S4:根据所述分析结果,关闭IO速率异常的链路。

举例来说,一个multipath配置了a、b、c、d四条链路,在一个时刻探测到c链路IO速率从500MB/s下降到了100MB/s,且此条链路上还有很多的io block在排队阻塞,则通过速率控制算法来控制各条链路IO速率,其具体实现方法为:将此条故障链路上的IO分流到其他好的链路上(a、b和d链路),再关闭IO速率异常的链路。

通过上述描述可知,本申请实施例提供的上述第一种多路径IO调整方法,由于包括探测每条链路的IO速率;判断每条链路是否异常;对IO速率异常的链路的传输数据进行统计分析,得到分析结果;根据所述分析结果,关闭IO速率异常的链路,因此能够实现分级控制IO速率的效果,充分利用链路特性,提高IO效率,避免在故障链路阻塞时IO速度过低的情况。

本申请实施例提供的第二种多路径IO调整方法,是在上述第一种多路径IO调整方法的基础上,还包括如下技术特征:

在所述关闭IO速率异常的链路之后,还包括:

将所述IO速率异常的链路上的IO切换到其他的正常链路上。

在这种情况下,就能够进一步避免IO堵塞。

本申请实施例提供的第三种多路径IO调整方法,是在上述第一种多路径IO调整方法的基础上,还包括如下技术特征:

在所述将所述IO速率异常的链路上的IO切换到其他的正常链路上之后,还包括:

每隔预设时间利用关闭后的链路进行IO,如果正常则恢复链路,如果异常则不恢复链路。

需要说明的是,发生IO速率异常的链路在经过一段时间之后,有可能就变得正常,而每隔一段时间检测其是否恢复正常,如果正常之后就能够重新利用起来,从而提高整个系统的IO速率。

本申请实施例提供的第四种多路径IO调整方法,是在上述第三种多路径IO调整方法的基础上,还包括如下技术特征:

所述预设时间的范围为30秒至60秒。

需要说明的是,这只是一个优选的时间范围,在实际测试时,可以每一次的检测时间间隔比上一次的时间间隔更大一些,从而避免检测次数过多。

本申请实施例提供的第五种多路径IO调整方法,是在上述第一种至第四种多路径IO调整方法中任一种的基础上,还包括如下技术特征:

所述判断每条链路是否异常为:

当链路的IO速率下降至初始IO速率的10%至30%时,判断所述链路为异常,否则判断为正常。

需要说明的是,可以进一步优选为20%,当然这种判断标准可以根据每个系统的情况进行具体设定,此处并不限制。

本申请实施例提供的第一种多路径IO调整装置如图2所示,图2为本申请实施例提供的第一种多路径IO调整装置的示意图,该装置包括:

探测单元201,用于探测每条链路的IO速率,需要说明的是,一般都是用multipath技术,进行多路径IO传输,作为一种冗余设计,当一条链路出现问题时,还可以用其他链路传输,在工作过程中,不断探测multipath所有负载链路的IO传输情况;

判断单元202,用于判断每条链路是否异常,具体的,可以通过判断每条链路的传输速度下降百分比来进行异常与否的判断;

分析单元203,用于对IO速率异常的链路的传输数据进行统计分析,得到分析结果,分析出异常后,可以通知主程序和负载均衡处理;

关闭单元204,用于根据所述分析结果,关闭IO速率异常的链路。

举例来说,一个multipath配置了a、b、c、d四条链路,探测单元201在一个时刻探测到c链路IO速率从500MB/s下降到了100MB/s,且此条链路上还有很多的io block在排队阻塞,判断单元202判断其为异常情况,分析单元203对数据进行统计分析,然后关闭单元204通过速率控制算法来控制各条链路IO速率,其具体实现方法为:将此条故障链路上的IO分流到其他好的链路上(a、b和d链路),再关闭IO速率异常的链路。

本申请实施例提供的第二种多路径IO调整装置,是在上述第一种多路径IO调整装置的基础上,还包括如下技术特征:

切换单元,用于将所述IO速率异常的链路上的IO切换到其他的正常链路上。

在这种情况下,就能够进一步避免IO堵塞。

本申请实施例提供的第三种多路径IO调整装置,是在上述第一种多路径IO调整装置的基础上,还包括如下技术特征:

恢复单元,用于每隔预设时间利用关闭后的链路进行IO,如果正常则恢复链路,如果异常则不恢复链路。

需要说明的是,发生IO速率异常的链路在经过一段时间之后,有可能就变得正常,而每隔一段时间检测其是否恢复正常,如果正常之后就能够重新利用起来,从而提高整个系统的IO速率。

本申请实施例提供的第四种多路径IO调整装置,是在上述第三种多路径IO调整装置的基础上,还包括如下技术特征:

所述恢复单元具体用于每隔30秒至60秒利用关闭后的链路进行IO,如果正常则恢复链路,如果异常则不恢复链路。

需要说明的是,这只是一个优选的时间范围,在实际测试时,可以每一次的检测时间间隔比上一次的时间间隔更大一些,从而避免检测次数过多。

本申请实施例提供的第五种多路径IO调整装置,是在上述第一种至第四种多路径IO调整装置中任一种的基础上,还包括如下技术特征:

所述判断单元具体用于当链路的IO速率下降至初始IO速率的10%至30%时,判断所述链路为异常,否则判断为正常。

需要说明的是,可以进一步优选为20%,当然这种判断标准可以根据每个系统的情况进行具体设定,此处并不限制。

综上所述,本申请实施例提供的上述方法和装置,通过multipath链路选择算法来保证IO的负载均衡,并通过链路恢复机制来保证系统的稳定运行。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1