一种RDMA网络中LDoS攻击分层缓解方法

摘要: 本发明属于计算机网络安全领域,具体涉及一种应用于rdma网络中的ldos攻击分层缓解方法。背景技术:1、随着云计算、分布式存储、高性能计算以及大规模机器学习训练...
一种RDMA网络中LDoS攻击分层缓解方法

本发明属于计算机网络安全领域,具体涉及一种应用于rdma网络中的ldos攻击分层缓解方法。

背景技术:

1、随着云计算、分布式存储、高性能计算以及大规模机器学习训练等业务的持续发展,数据中心内部东西向流量规模不断增长,网络通信对低时延、高吞吐和低处理开销提出了更高要求。远程直接内存访问(remote direct memory access,rdma)技术能够绕过操作系统内核协议栈,使数据直接在通信双方的内存之间传输,从而减少内存拷贝次数和中央处理器参与度,已成为数据中心高性能通信的重要技术之一。

2、rocev2是将rdma承载于以太网之上的一种实现方式。为降低丢包、重传和性能抖动,rocev2无损网络通常结合优先级流控(priority flow control,pfc)和数据中心量化拥塞通知(data center quantized congestion notification,dcqcn)等机制。其中,pfc针对特定优先级队列进行逐跳暂停控制,当交换机端口队列达到设定阈值时,向上游设备发送pfc暂停信号;dcqcn通过交换机拥塞标记、接收端反馈以及发送端速率调节,对网络拥塞进行控制。

3、pfc在提供近似无损传输环境的同时,也可能引发反压传播问题。由于pfc的控制对象为优先级队列,而不是具体的异常流,当攻击流与正常业务流共享优先级队列或转发路径时,局部端口的队列积压可能使正常业务流同时受到暂停影响。低速率拒绝服务(low-rate denial of service,ldos)攻击能够利用低平均速率、短时突发的rdma流量反复诱导端口队列升高,触发pfc反压和拥塞控制反馈,使正常业务流降速,并使局部压力沿活跃流路径向上游扩散。

4、目前,针对rdma网络中ldos攻击引发的队列积压和pfc反压扩散问题,现有检测和缓解方法仍存在端口风险刻画不充分、路径级风险判断能力不足以及缓解动作适配性较低等问题。

5、端口风险刻画不充分。现有检测方法多依赖流量大小、链路利用率或单一队列阈值进行风险判断,但ldos攻击通常具有低平均速率和短时突发特征,其攻击影响主要表现为队列快速增长、pfc事件增加以及正常业务流速率下降。因此,仅依据单一时刻的队列深度或固定流量阈值难以准确刻画端口风险状态,难以兼顾攻击早期风险识别与正常突发流量区分,容易造成漏判或误判。

6、路径级风险判断能力不足。现有检测方法通常侧重单个端口或单条流的局部状态,缺少对活跃流转发方向和pfc反压传播方向形成的端口依赖关系进行统一建模。然而,pfc具有逐跳反压传播特征,下游端口产生的暂停影响可能沿活跃流路径向上游扩散,并在多个端口之间形成连续风险、持续风险或循环依赖风险。因此,现有方法难以及时识别风险传播链结构、持续性风险结构或强连通风险结构,无法有效判断风险是否已经扩展至路径级。

7、缓解动作适配性较低。现有响应策略通常采用单一限速或集中式强控制方式,但当风险仅局限于单个端口时,过强的全局控制可能对正常业务吞吐造成不必要影响;当风险已经沿路径扩散时,仅依靠局部控制又难以及时阻断反压传播。因此,现有方法难以根据端口局部压力和全局路径级风险的变化,选择与风险程度相匹配的分层缓解动作。

8、本发明提出一种rdma网络中ldos攻击分层缓解方法。该方法首先在交换机端口侧采集当前队列深度、队列变化趋势和pfc事件发生数量,计算端口压力指数并判断端口风险状态。然后由全局控制层汇总候选风险端口信息和高风险端口信息,结合活跃流路径构建路径依赖图并进行路径级风险判断,识别是否存在风险传播链结构、持续性风险结构或强连通风险结构。最后根据端口压力指数和路径级风险判定结果,分别执行本地动态限速、全局微限速和全局强干预,实现针对rdma网络中ldos攻击的分层缓解,降低攻击引发的pfc反压扩散和正常业务流性能退化。

技术实现思路

1、针对现有rdma网络中ldos攻击检测与缓解方法存在的端口风险感知不足、路径级风险判断能力不足以及响应策略适应性较低等问题,本发明提出一种rdma网络中ldos攻击分层缓解方法。该方法通过对交换机端口状态进行感知,结合路径依赖关系判断路径级风险,并根据不同路径级风险执行分层缓解动作,从而降低ldos攻击引发的pfc反压扩散对正常业务流性能造成的影响。

2、本发明为实现上述目的所采用的技术方法为,一种rdma网络中ldos攻击分层缓解方法,包括端口压力感知、路径级风险判断、分层缓解动作执行三个步骤。

3、1. 端口压力感知。在交换机端口侧按照预设采样周期采集端口运行状态,所述端口运行状态包括当前队列深度、队列变化趋势以及pfc事件发生数量,并利用所述状态信息计算端口压力指数,包括端口压力特征归一化、端口压力指数计算和端口风险状态判断三个步骤:

4、1.1 端口压力特征归一化,将采集得到的当前队列深度、队列变化趋势以及pfc事件发生数量分别进行归一化处理,得到队列深度归一化值q(p,t)、队列增长趋势归一化值g(p,t)以及pfc事件频率归一化值p(p,t);其中,p表示交换机端口编号,t表示当前时间窗口索引,q(p,t)根据当前队列深度与端口队列容量的比值计算得到,g(p,t)根据当前采样周期与上一采样周期之间的队列深度差值计算得到,当所述差值为负时取零,p(p,t)根据当前时间窗口内pfc事件发生次数进行归一化处理得到。

5、1.2 端口压力指数计算,将所述归一化后的端口状态特征进行加权求和,计算得到端口压力指数ps(p,t),其计算公式如下:

6、,

7、其中,、、为预设权重系数,分别表示队列深度、队列变化趋势以及pfc事件频率在端口压力指数中所占的权重,并且满足,通过所述计算公式,端口压力指数能够综合反映端口当前缓存压力、压力增长趋势以及pfc反压触发状态。

8、1.3 端口风险状态判断,根据端口压力指数与预设低风险阈值和高风险阈值之间的比较结果,将端口划分为正常状态、候选风险状态以及高风险状态。设置低风险阈值和高风险阈值,当时标记为正常状态,当时标记为候选风险状态,当时标记为高风险状态;并将候选风险端口信息和高风险端口信息上报至全局控制层。

9、2. 路径级风险判断。全局控制层汇总各本地交换机上报的候选风险端口信息和高风险端口信息,并结合当前活跃流路径构建路径依赖图,包括路径依赖图构建和风险传播结构判断两个步骤:

10、2.1 路径依赖图构建,所述路径依赖图以交换机端口作为节点,以端口之间的依赖关系作为边,设一条活跃流经过交换机端口序列,其中,表示该流在转发路径上经过的第i个端口,根据活跃流转发方向建立端口之间的正向依赖边,并根据pfc反压传播方向建立反向压依赖边;所述路径依赖图中的节点标记有对应端口的风险状态;全局控制层根据当前活跃流路径和端口风险状态动态更新所述路径依赖图。

11、2.2 风险传播结构判断,在构建完成的路径依赖图上检测风险传播结构,包括风险传播链结构、持续性风险结构以及强连通风险结构;当上述任一种风险结构存在时,全局控制层判定当前网络存在路径级风险。

12、3. 分层缓解动作执行。根据端口压力指数和路径级风险判定结果,由本地层和全局层分别执行对应的控制动作,从而实现针对ldos攻击的分层缓解,所述控制动作包括本地动态限速、全局微限速和全局强干预三种:

13、本地动态限速:当端口压力指数达到或超过高风险阈值时,本地层确定对应的高风险端口,并获取经过该高风险端口转发的活跃流信息,将所述活跃流作为风险关联流,对所述风险关联流的发送速率或所述高风险端口的发送调度速率执行平滑限速;其中,所述平滑限速采用逐步调整方式,即当端口压力指数持续升高时逐步降低风险关联流的发送速率或端口发送速率,当端口压力指数恢复至正常范围后逐步释放限速,以避免速率突变导致正常业务流性能波动。

14、全局微限速:当路径依赖图中存在风险传播链结构、持续性风险结构或强连通风险结构中的任意一种时,全局控制层根据路径依赖图确定风险传播路径上的关键端口,并获取经过所述关键端口的活跃流集合,将所述活跃流集合确定为风险关联流;随后,全局控制层对所述风险传播路径上的关键端口对应的风险关联流执行全局微限速,通过降低风险传播路径上的数据发送速率,抑制ldos攻击诱导的pfc反压进一步扩散。

15、全局强干预:当全局控制层判定存在持续性风险结构或强连通风险结构,同时虚拟信用池余量不小于预设额度时,从风险传播路径中选择端口压力指数最高的关键端口,并基于虚拟信用额度执行队列恢复控制;所述队列恢复控制通过调整虚拟信用额度对应的队列恢复量,降低所述关键端口对应的队列压力,从而缓解持续反压及循环等待风险。

16、有益效果

17、本发明提出的一种rdma网络中ldos攻击分层缓解方法,通过端口压力感知、路径级风险判断以及分层缓解动作执行,实现针对rdma网络中ldos攻击的分层缓解,在降低pfc反压扩散影响的同时,减少对正常业务流的影响,提高rdma网络在ldos攻击场景下的稳定性和可靠性。本发明是一种面向ldos攻击引发pfc风险传播过程的主动缓解方法,能够根据风险状态动态选择不同强度的控制策略,有效提升网络在攻击场景下的拥塞控制与异常恢复能力。