发明名称 共享缓存式以太网交换机的缓存资源控制方法及装置
摘要 本发明公开了一种共享缓存式以太网交换机的缓存资源控制方法及装置,涉及通信领域,该方法包括以下步骤:收到数据包时,进行哈希计算,得到数据包的流索引,根据流索引检索数据流数组,得到流信息;根据队列索引检索队列数组,得到当前队列长度和队列中的流数量;根据数据包的长度更新流信息中的已使用缓存变量值;根据流信息中的已占用缓存、当前信用值和系统均缓存、攻击流信用阈值、攻击流缓存阈值的比较结果,作出不同的流行为判断处理;转发数据包后,更新流信息中的已使用缓存、当前信用值、队列的活跃流计数、队列长度。本发明能根据当前缓存的使用情况及时响应,快速发现攻击行为,防止攻击行为消耗缓存资源,有效控制网络拥塞。
申请公布号 CN103023806B 申请公布日期 2015.09.16
申请号 CN201210551390.2 申请日期 2012.12.18
申请人 武汉烽火网络有限责任公司 发明人 罗婷;汪学舜
分类号 H04L12/861(2013.01)I 主分类号 H04L12/861(2013.01)I
代理机构 北京捷诚信通专利事务所(普通合伙) 11221 代理人 魏殿绅;庞炳良
主权项 一种共享缓存式以太网交换机的缓存资源控制方法,其特征在于,包括以下步骤:S1、共享缓存式以太网交换机的物理端口共享缓存管理单元收到数据包时,根据数据包的具体内容进行哈希计算,得到该数据包的流索引;每个流初始化时,当前信用值获得最大信用值,最大信用值为数据流的已使用缓存大于系统平均缓存时最大允许转发的数据包个数;S2、共享缓存管理单元根据流索引检索数据流数组,得到流信息,流信息包括该条流的已使用缓存、当前信用值和该条流的队列索引;根据数据包的信息和调度规则,为数据流分配队列,得到该数据包的队列索引;S3、共享缓存管理单元根据队列索引检索队列数组,得到当前队列长度和队列中的流数量,将队列长度除以队列中的流数量,得到当前队列中每个流占有的平均缓存;S4、共享缓存管理单元根据接收数据包的长度更新流信息中的已使用缓存变量值:将已使用缓存加上发送数据包的长度,作为新的已使用缓存;S5、共享缓存管理单元设置攻击流信用阈值和攻击流缓存阈值,攻击流信用阈值为判断数据流是否为攻击流的信用门限值,攻击流缓存阈值为攻击流所能占用的最大缓存值,根据流信息中的已占用缓存、当前信用值和系统平均缓存、攻击流信用阈值、攻击流缓存阈值的比较结果,作出以下7种不同的流行为判断和处理:(1)如果流的已使用缓存未超过系统平均缓存,则判定为非攻击包,共享缓存管理单元正常转发数据包;(2)如果流的已使用缓存超过系统平均使用缓存、但当前信用值等于系统最大信用值,按照概率随机丢弃数据包;(3)如果流的当前信用值<攻击流信用阈值,判定该流为攻击流,将攻击流使用缓存限定在攻击流缓存阈值以内,丢弃攻击流所在数据包的后续包,并将该流的信用值递减到0;(4)如果流的已使用缓存>攻击流缓存阈值、且流的当前信用值≤攻击流信用阈值,则判定该数据流为攻击流,根据概率随机丢弃一个数据包,该流的信用值随机递减;(5)如果流的发送源端没有响应丢弃事件、继续高速率发包,且该流使用缓存仍然超过系统平均缓存,则根据概率随机丢弃一个数据包,该流的信用值随机递减;(6)如果流的已使用缓存≤系统平均缓存、且当前信用值≤攻击流信用阈值,说明该数据流为攻击流,但缓存使用较小,正常转发数据包,但该流的当前信用值递增;(7)如果流的已使用缓存≤系统平均缓存、且当前信用值>攻击流信用阈值,说明该流曾经是攻击流,但已经变为正常流,将该流的性用值重新置为系统的最大信用值,并按正常流进行数据包转发;S6、共享缓存管理单元转发数据包后,更新流信息中的已使用缓存、当前信用值、队列的活跃流计数、队列长度;S7、对端口队列中的数据流进行出方向调度处理,更新队列数据信息。
地址 430074 湖北省武汉市东湖高新东信路5号关东光通信产业大楼