[发明专利]一种流表处理方法和设备有效
申请号: | 202010189009.7 | 申请日: | 2020-03-18 |
公开(公告)号: | CN111431806B | 公开(公告)日: | 2022-07-08 |
发明(设计)人: | 孔令春;陈永慈 | 申请(专利权)人: | 北京京安佳新技术有限公司 |
主分类号: | H04L45/7453 | 分类号: | H04L45/7453;H04L45/74 |
代理公司: | 北京睿博行远知识产权代理有限公司 11297 | 代理人: | 龚家骅 |
地址: | 100089 北京市海淀区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 处理 方法 设备 | ||
1.一种流表处理方法,其特征在于,所述流表中包括组合散列表和三向链表,所述组合散列表中包括记录所述三向链表中各节点的位置的桶、指向所述三向链表中最大时间戳节点的第一指针和指向所述三向链表中最小时间戳节点的第二指针,所述三向链表中包括指向前一节点的前向指针、指向后一节点的后向指针以及指向冲突节点的冲突节点指针,所述方法包括:
根据所述第二指针的指向信息和所述最小时间戳节点的时间戳确定所述流表中的超时节点;
调整所述第二指针指向所述超时节点的下一个节点,并根据所述超时节点在所述桶中的位置地址判断是否存在所述超时节点的冲突节点,所述位置地址是根据所述超时节点的预设键哈希对应的流通道确定的;
当存在所述冲突节点时,基于所述冲突节点指针确定所述超时节点在所述桶中的不为空的新位置地址,并根据所述新位置地址和所述冲突节点指针的指向信息处理所述超时节点。
2.如权利要求1所述的方法,其特征在于,根据所述新位置地址和所述冲突节点指针的指向信息处理所述超时节点,具体为:
当所述新位置地址对应的第一流通道为所述超时节点对应的第二流通道且所述冲突节点指针不为空时,将所述新位置地址赋值给所述超时节点的下一冲突节点,以覆盖所述超时节点;
当所述第一流通道为所述第二流通道且所述冲突节点指针为空时,删除所述超时节点。
3.如权利要求2所述的方法,其特征在于,根据所述超时节点在所述桶中的位置地址判断是否存在所述超时节点的冲突节点,具体为:
判断所述位置地址对应的第三流通道是否为所述第二流通道;
若是,确定不存在所述冲突节点;
若否,确定存在所述冲突节点。
4.如权利要求1所述的方法,其特征在于,根据所述第二指针的指向信息和所述最小时间戳节点的时间戳确定所述流表中的超时节点,具体为:
获取当前时间点位;
判断所述第二指针是否为空;
当所述第二指针不为空且所述当前时间点位与所述时间戳对应的时间点位的差值大于预设阈值时,将所述最小时间戳节点确定为所述超时节点;
当所述第二指针为空,或当所述第二指针不为空且所述差值不大于预设阈值时,确定所述最小时间戳节点不是所述超时节点。
5.如权利要求2所述的方法,其特征在于,在调整所述第二指针指向所述超时节点的下一个节点之后,还包括:
再次判断所述第二指针是否为空;
若是,将所述第一指针置空;
若否,将所述下一个节点的前向指针置空;
通过所述超时节点的预设键哈希对应的流通道确定所述位置地址。
6.如权利要求1所述的方法,其特征在于,所述方法还包括:
当接收到节点插入请求时,根据新节点的预设键哈希确定所述新节点在所述桶的新节点位置地址,所述新节点的内存在所述流表外部分配;
当所述新节点位置地址不为空时,基于所述冲突节点指针确定所述新节点为空的新的新节点位置地址,并将所述新的新节点地址赋值所述新节点;
判断所述第一指针是否为空;
若是,将所述第一指针和所述第二指针指向所述新节点;
若否,将所述第一指针指向所述新节点;
将所述三向链表的节点个数加一。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京京安佳新技术有限公司,未经北京京安佳新技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010189009.7/1.html,转载请声明来源钻瓜专利网。