[发明专利]一种报文转发方法、装置、电子设备及存储介质有效
申请号: | 202110391876.3 | 申请日: | 2021-04-13 |
公开(公告)号: | CN113328959B | 公开(公告)日: | 2022-05-27 |
发明(设计)人: | 吕磊;王彬;赵红海;程臻 | 申请(专利权)人: | 新华三信息安全技术有限公司 |
主分类号: | H04L49/90 | 分类号: | H04L49/90;H04L47/56;G06F15/78 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 230001 安徽省合肥市高新区*** | 国省代码: | 安徽;34 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 报文 转发 方法 装置 电子设备 存储 介质 | ||
1.一种报文转发方法,其特征在于,所述方法应用于叶子Leaf节点中的硬件芯片,所述方法包括:
启动等待定时器;
在所述等待定时器的计时时长内等待接收所述Leaf节点所属网络中的任一其他Leaf节点中的硬件芯片转发的数据报文;
若接收到该其他Leaf节点中的硬件芯片转发的所述数据报文,则判断所述数据报文中携带的起始标志位是否用于表征所述数据报文为起始报文,其中,所述数据报文为该其他Leaf节点中的硬件芯片通过轮询到的该其他Leaf节点与其连接的所有脊柱Spine节点之间的一条链路转发给所述Leaf节点中的硬件芯片的,且还携带有所述其他Leaf节点中的硬件芯片转发所述数据报文时分配的第一报文序列号和所述其他Leaf节点中的硬件芯片转发所述数据报文时的第一时间戳;
在判断出所述起始标志位用于表征所述数据报文为起始报文时,将环形链表中的起始指针、结尾指针和中间指针指向记录到所述环形链表中的所述第一报文序列号,其中,所述起始指针、结尾指针和中间指针初始时均指向预设的第一初始值,且所述起始指针指向的序列号用于表征所述Leaf节点已收到且未转发的数据报文中携带的报文序列号中的最大报文序列号,所述结尾指针指向的序列号用于表征所述Leaf节点已收到且未转发的数据报文中携带的报文序列号中的最小报文序列号,所述中间指针指向的序列号用于表征所述Leaf尚未收到且携带的报文序列号为所述最大报文序列号与所述最小报文序列号之间的最小报文序列号的数据报文中携带的报文序列号;
将用于记录所述Leaf节点即将转发的数据报文中携带的第二时间戳和用于记录所述Leaf节点收到且未转发的携带的报文序列号最大的数据报文中携带的第三时间戳均由预设的第二初始值更改为所述第一时间戳,并将所述等待定时器重新计时;
将随机存取存储器RAM表中所述第一报文序列号对应的初始的无效缓存表项更新为有效缓存表项,其中,更新后的有效缓存表项中记录有用于缓存所述数据报文的地址信息和所述第一时间戳;
根据更新后的缓存表项中的地址信息,转发所述数据报文;
将所述中间指针指向第二报文序列号,以及将所述结尾指针指向第三报文序列号,其中,所述第二报文序列号为所述Leaf节点对所述中间指针当前指向的报文序列号累加1后得到的报文序列号,所述第三报文序列号为所述Leaf节点对所述中间指针当前指向的报文序列号减1后得到的报文序列号;
判断所述RAM表中所述中间指针指向的第二报文序列号对应的缓存表项是否为有效缓存表项,在判断结果为是时,将所述第二时间戳赋为所述第二报文序列号对应的缓存表项中的时间戳,根据所述第二报文序列号对应的缓存表项中的地址信息,转发对应的数据报文,并将所述等待定时器重新计时;在判断结果为否时,判断所述第三时间戳与所述第二时间戳的差值是否大于设定阈值;
在判断出所述差值大于所述设定阈值时,执行将所述中间指针指向第二报文序列号,以及将所述结尾指针指向第三报文序列号的步骤;
在判断出所述差值不大于所述设定阈值时,执行判断是否在等待定时器的时长内接收到其他Leaf节点通过Spine节点发送的数据报文的步骤;
在判断出所述起始标志位用于表征所述数据报文为非起始报文时,判断所述结尾指针和所述中间指针是否均未指向所述预设的第一初始值;
在判断出所述结尾指针和所述中间指针均未指向所述预设的第一初始值时,将所述结尾指针指向所述第一报文序列号,以及将所述第二时间戳赋为所述第一时间戳,并将所述等待定时器重新计时;
判断所述第一报文序列号是否大于所述起始指针指向的报文序列号;
在判断出所述第一报文序列号不大于所述起始指针指向的报文序列号时,判断所述第一报文序列号是否等于所述中间指针指向的报文序列号的步骤;
在判断出所述第一报文序列号等于所述中间指针指向的报文序列号时,将所述第二时间戳赋为所述第一时间戳,并执行将RAM表中所述第一报文序列号对应的初始的无效缓存表项更新为有效缓存表项的步骤;
在判断出所述第一报文序列号不等于所述中间指针指向的报文序列号时,执行将所述RAM表中所述第一报文序列号对应的初始的无效缓存表项更新为有效缓存表项的步骤,并继续执行判断所述第三时间戳与所述第二时间戳的差值是否大于设定阈值的步骤;
在判断出所述第一报文序列号大于所述起始指针指向的报文序列号时,将所述起始指针指向所述第一报文序列号,将所述第三时间戳赋为所述第一时间戳,并执行判断所述第一报文序列号是否等于所述中间指针指向的报文序列号的步骤;
在判断出所述结尾指针和所述中间指针均指向所述预设的第一初始值时,将所述中间指针指向第四报文序列号,将所述结尾指针指向所述第一报文序列号,以及将所述第二时间戳赋为所述第一时间戳,并将所述等待定时器重新计时,继续执行判断所述第一报文序列号是否大于所述起始指针指向的报文序列号的步骤,其中,所述第四报文序列号为所述Leaf节点对所述第一报文序列号减1后得到的报文序列号。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于新华三信息安全技术有限公司,未经新华三信息安全技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110391876.3/1.html,转载请声明来源钻瓜专利网。