一种磁盘SAS多路径数据传输负载均衡与动态调度方法与流程

摘要: 本技术属于计算机分布存储,具体为一种磁盘sas多路径数据传输负载均衡与动态调度方法及系统。背景技术:1、在分布存储系统中,串行连接小型计算机系统接口的多路径数据...
一种磁盘SAS多路径数据传输负载均衡与动态调度方法与流程

本技术属于计算机分布存储,具体为一种磁盘sas多路径数据传输负载均衡与动态调度方法及系统。

背景技术:

1、在分布存储系统中,串行连接小型计算机系统接口的多路径数据传输通过在存储控制器与磁盘阵列之间建立多条物理链路,承担着海量数据高速读写的任务,是保障存储系统稳定运行的重要基础。

2、相关技术在多条物理链路之间分配读写流量时,通常采用轮询或者按固定比例分发的方式。这类方式没有考虑各条物理链路在实际运行中由于硬件处理节奏不同而产生的任务堆积差异,容易出现部分链路任务积压而另一部分链路空闲的情形,使得整体传输能力难以充分发挥。

3、此外,每条物理链路上实时排队的任务数量与目标磁盘共享缓存的占用状态彼此关联。当系统没有对二者进行协同感知时,一旦某条链路排队拥挤且目标磁盘接收该链路数据的缓存区域接近占满,继续向其发送读写请求就会造成指令在缓存中长时间滞留,不同链路的数据流还会在共享缓存中相互挤占,导致高优先级的读写请求长时间等待,进而引发关键业务卡顿。

4、并且,相关技术在分配缓存时多采用各链路共用同一缓存池的方式,缺乏对不同优先级数据流的空间隔离,一旦低优先级且数据量大的请求大量占用缓存,高优先级请求便难以获得足够的缓存空间,导致关键读写请求的响应时延显著增大;与此同时,相关技术在选择分发链路时往往仅考虑链路的带宽或者队列长度等单一指标,未综合考虑寻道距离、端到端时延与丢包等因素,使得被选中的链路在实际运行中未必具备最优的承载能力。

5、因此,如何感知各条物理链路的实时排队拥挤程度与磁盘缓存的占用情况,对不同读写请求进行合理的等级划分,并为各通道建立相互隔离的缓存空间以避免数据流互扰,是实现多路径数据传输负载均衡与动态调度需要解决的技术问题。

技术实现思路

1、针对以上问题,本技术提供一种磁盘sas多路径数据传输负载均衡与动态调度方法及系统,用于解决如何感知各条物理链路的实时排队拥挤程度与磁盘缓存的占用情况,对不同读写请求进行合理的等级划分,并为各通道建立相互隔离的缓存空间以避免数据流互扰的问题。

2、为实现上述目的,本技术采用的技术方案是:

3、根据本技术的第一方面,提供一种磁盘sas多路径数据传输负载均衡与动态调度方法,包括:

4、s1,获取各物理链路读写请求的到达时间间隔与数据块访问地址,计算得到请求密集度与访问离散程度,将请求密集度与访问离散程度之乘积大于过载阈值的物理链路确定为目标链路并提取所述目标链路的读写请求;

5、s2,由所述读写请求中的读写操作类型得到访问特征,根据所述读写请求中的单次请求数据量构建请求规模向量,由所述访问特征与所述请求规模向量得到优先等级划分结果;

6、s3,由所述优先等级划分结果获取请求来源应用标识与硬件响应延迟时长,根据所述请求来源应用标识确定初始空间比例参数,经所述硬件响应延迟时长修正后得到所述优先等级划分结果对应的独立缓存边界地址;

7、s4,根据所述独立缓存边界地址获取对应的历史缓存命中率记录,并计算得到已占用字节数,由历史缓存命中率记录预测滞留指令需求量,将所述已占用字节数与所述滞留指令需求量之和超过空间上限的读写请求确定为滞留风险请求;

8、s5,由所述滞留风险请求对应目标磁盘的寻道距离参数,筛选寻道距离小于所述目标链路的作为备用链路,按剩余带宽容量降序排列得到候选链路序列;

9、s6,由所述候选链路序列中各链路的当前传输速率得到瞬时吞吐能力,根据端到端延迟对所述瞬时吞吐能力作时延惩罚修正,选取修正后吞吐能力最大的链路为流量分发目标链路;

10、s7,根据所述流量分发目标链路的数据包丢失率确定请求分发数量上限,根据所述流量分发目标链路的实时负载波动系数修正所述请求分发数量上限得到实时取值,按所述实时取值分发所述滞留风险请求,得到负载均衡状态。

11、优选地,所述s1包括:对所述到达时间间隔构建时间窗口,统计所述时间窗口内的请求数量并结合历史值进行平滑,得到所述请求密集度;

12、对所述数据块访问地址进行空间分布分析,得到地址分布的离散指标作为所述访问离散程度;

13、在确定所述目标链路后,对所述目标链路上的读写请求进行限流平滑处理,得到平滑后的读写请求。

14、优选地,所述s2包括:由所述读写操作类型提取顺序访问特征数值与随机访问特征数值,比较顺序访问特征数值与随机访问特征数值的大小以确定所述读写请求的访问模式标签,作为所述访问特征;

15、对所述请求规模向量进行分类得到资源消耗权重,由所述资源消耗权重与所述访问特征对应的数值相乘得到请求优先级评分;

16、对所述请求优先级评分进行层级划分得到所述优先等级划分结果。

17、优选地,所述s3包括:由所述硬件响应延迟时长与标准延迟阈值之差对所述初始空间比例参数进行修正,得到目标空间比例参数,并据所述目标空间比例参数确定缓存区空间量;

18、对所述缓存区空间量对应的历史访问频次序列进行聚类,得到访问热度类别;对属于高频访问类别者,由所述缓存区空间量计算独立块的起始偏移量,从而得到所述独立缓存边界地址。

19、优选地,所述s4包括:由所述独立缓存边界地址与起始地址之差得到所述已占用字节数;

20、对所述历史缓存命中率记录进行时间序列分析得到命中率预测值,由所述命中率预测值与单条指令空间量得到所述滞留指令需求量;

21、将所述已占用字节数与所述滞留指令需求量进行相加,将相加所得结果超过空间上限的读写请求确定为滞留风险请求。

22、优选地,所述s5包括:由所述寻道距离参数与所述剩余带宽容量构建链路状态矩阵,对所述链路状态矩阵进行聚类得到具有不同拥堵级别的链路簇,从拥堵级别最低的链路簇中提取所述备用链路;

23、对所述备用链路中风险值小于风险阈值者确定为安全候选链路,并按寻道距离对所述安全候选链路升序排序,得到候选链路序列。

24、优选地,所述s6包括:由所述当前传输速率与可用带宽占比得到所述瞬时吞吐能力;

25、由预设的最大容忍延迟与所述端到端延迟构建时延惩罚项,由所述时延惩罚项对所述瞬时吞吐能力进行扣减,得到所述修正后吞吐能力;

26、剔除修正后吞吐能力小于吞吐阈值的链路后,取剩余链路中修正后吞吐能力最大者为所述流量分发目标链路。

27、优选地,所述s7包括:对所述数据包丢失率与所述实时负载波动系数进行滤波平滑,得到平滑后的数据包丢失率与平滑后的实时负载波动系数;

28、由平滑后的数据包丢失率经衰减得到所述请求分发数量上限,由平滑后的实时负载波动系数的倒数对所述请求分发数量上限进行修正得到所述实时取值;

29、按所述实时取值以加权轮询方式向所述流量分发目标链路分发所述滞留风险请求,进行动态调度得到负载均衡状态。

30、优选地,还包括:由分发后各物理链路的资源消耗率的极差得到负载均衡度,当所述负载均衡度未达到预设均衡条件时,重新分配参与传输的物理链路数量并返回执行所述候选链路序列的筛选,直至所述负载均衡度达到所述预设均衡条件。

31、根据本技术的第二方面,提供一种磁盘sas多路径数据传输负载均衡与动态调度系统,包括:

32、过载检测模块,被配置为获取各物理链路读写请求的到达时间间隔与数据块访问地址,将请求密集度与访问离散程度之乘积大于过载阈值的物理链路确定为目标链路并提取其读写请求;

33、优先级划分模块,被配置为由所述读写请求的读写操作类型与单次请求数据量得到请求优先级评分及优先等级划分结果;

34、缓存分配模块,被配置为由所述优先等级划分结果及请求来源应用标识确定初始空间比例参数,并由硬件响应延迟时长修正后得到独立缓存边界地址;

35、滞留识别模块,被配置为由所述独立缓存边界地址得到已占用字节数,结合由历史缓存命中率记录预测的滞留指令需求量,将两者之和超过空间上限的读写请求确定为滞留风险请求;

36、候选筛选模块,被配置为由所述滞留风险请求对应的寻道距离参数与剩余带宽容量,筛选并降序排列得到候选链路序列;

37、目标选取模块,被配置为由所述候选链路序列各链路的当前传输速率与端到端延迟,将时延惩罚修正后吞吐能力最大者确定为流量分发目标链路;

38、均衡分发模块,被配置为由所述流量分发目标链路的数据包丢失率与实时负载波动系数确定分发实时取值,并据此分发所述滞留风险请求得到多路径数据传输的负载均衡状态。

39、本技术的有益效果包括:

40、通过请求密集度与访问离散程度的乘积判定局部过载,能够更早地定位即将拥塞的物理链路;

41、通过优先等级划分与独立缓存边界地址的设置,使不同优先级的数据流在各自隔离的缓存空间内排队,避免相互挤占;

42、通过对滞留指令需求量的预测,能够在缓存溢出之前识别出滞留风险请求;

43、通过寻道距离、剩余带宽、时延惩罚修正吞吐能力以及丢包率与负载波动系数的逐级筛选与修正,使流量被分发到承载能力更强的链路,提升多路径数据传输的整体吞吐能力,并使各物理链路的资源消耗率趋于均衡。