一种高可用性无缝冗余环网重复帧丢弃方法及系统技术方案

技术编号:24503899 阅读:33 留言:0更新日期:2020-06-13 06:24
本申请公开了一种高可用性无缝冗余环网重复帧丢弃方法及系统,该方法包括:获取两路以太网数据;分别对两路以太网数据进行缓存;根据FIFO原则,对缓存后的以太网数据进行排序;对排序后的数据进行解析,并根据解析结果对相邻数据进行重复帧丢弃判断;缓存重复帧丢弃判断后的数据,并将重复帧丢弃判断后的数据经由PCIe接口传输至CPU。该系统包括:两个网口、两个第一数据缓存模块、多路复用模块、重复帧丢弃模块以及第二数据缓存模块。通过本申请,能够有效提高重复帧判断的准确性和判断效率。

A method and system of repeated frame dropping in seamless redundant ring network with high availability

【技术实现步骤摘要】
一种高可用性无缝冗余环网重复帧丢弃方法及系统
本申请涉及智能变电站通信
,特别是涉及一种高可用性无缝冗余环网重复帧丢弃方法及系统。
技术介绍
随着智能变电站的发展,智能变电站内部通信网络的复杂程度越来越高,相应地,对智能变电站内部通信网络的可靠性也提出了更高的要求。HSR(High-availabilitySeamlessRedundancyRing,高可用性无缝冗余环网)具有网络故障恢复零延时、故障时不丢帧、网络可靠性高以及系统费用低等优点,在智能变电站以及智能电网自动化领域越来越受到重视。通常,冗余装置通过两个以太网口接入到HSR环网中,当前冗余装置会在一定时间内收到两个相同的数据报文。也就是在HSR正常工作的情况下,每个冗余装置都会在一定时间内发送相同的两帧数据给目的节点,其中包括MAC地址和序列号。为提高冗余装置的数据处理效率,需要对数据进行判断并丢弃重复帧。因此,如何丢弃HSR中的重复帧是个重要的技术问题。目前在HSR中重复帧丢弃的方法通常是利用CPU进行判断,具体地,存储当前帧数据和前一帧数据,判断具有相同MAC地址的当前帧与前一帧数据的序列号是否相同,如果相同,则丢弃重复帧。然而,目前丢弃重复帧的方法中,由于是基于源MAC地址建立的序号比对信息,源MAC地址是48位宽度的数据,因此在对其判断是否为重复帧时,需要占用大量的存储空间,而且数据处理效率较低,从而导致重复帧判断效率较低。另外,目前丢弃重复帧的方法,只存储前一帧的数据,在目的节点收到乱序报文的情况下,无法准确地判断重复报文,因此,目前丢弃重复帧的方法导致判断准确性较低。
技术实现思路
本申请提供了一种高可用性无缝冗余环网重复帧丢弃方法及系统,以解决现有技术中对重复帧的判断不够准确以及重复帧判断效率较低的问题。为了解决上述技术问题,本申请实施例公开了如下技术方案:一种高可用性无缝冗余环网重复帧丢弃方法,所述方法包括:获取两路以太网数据;分别对两路以太网数据进行缓存;根据FIFO(FirstInputFirstOutput,先入先出队列)原则,对缓存后的以太网数据进行排序;对排序后的数据进行解析,并根据解析结果对相邻数据进行重复帧丢弃判断;缓存重复帧丢弃判断后的数据,并将重复帧丢弃判断后的数据经由PCIe接口传输至CPU。可选地,采用乒乓操作的方法,对排序后的数据进行解析,并根据解析结果对相邻数据进行重复帧丢弃判断。可选地,所述对排序后的数据进行解析,并根据解析结果对相邻数据进行重复帧丢弃判断的方法,包括:对排序后的以太网数据进行存储,并提取所述以太网数据中的源MAC地址和序列号,所述源MAC地址为48位;采用循环冗余校验算法,将48位的源MAC地址转换为8位的序列号检索地址;根据所述序列号检索地址,读取所述序列号检索地址下所存储的前n帧序列号;判断前n帧序列号中的任一序列号是否与当前数据帧的序列号相同;如果是,判定当前数据帧为重复帧;丢弃当前数据帧;如果否,判定当前数据帧不是重复帧;存储当前数据帧的序列号,并删除前n帧序列号中的第一帧序列号,形成更新后的n帧序列号;根据对当前数据帧的判断结果,确定重复帧丢弃判断后的数据。可选地,所述存储当前数据帧的序列号,并删除前n帧序列号中的第一帧序列号,形成更新后的n帧序列号的方法,具体为:采用RAM存储更新后的n帧序列号,所述更新后的n帧序列号包括:当前数据帧的序列号,以及,前n帧序列号中第一帧以外的序列号。可选地,所述采用RAM存储更新后的n帧序列号的方法,包括:将当前数据帧的序列号存储到RAM0的对应地址中;将RAMn-1相应地址中的数据帧存储至RAMn的对应地址中。一种高可用性无缝冗余环网重复帧丢弃系统,所述系统设置于一FPGA(Field-ProgrammableGateArray,现场可编程门阵列)芯片上,所述系统包括依次连接的:两个网口、两个第一数据缓存模块、多路复用模块、重复帧丢弃模块以及第二数据缓存模块,任一所述网口与一个所述第一数据缓存模块相匹配,所述第二缓存模块经由PCIe接口与CPU连接;两个所述网口,用于获取两路以太网数据;两个所述第一数据缓存模块,用于分别对两路以太网数据进行缓存,并传输至多路复用模块;所述多路复用模块,用于对以太网数据进行排序处理,并将排序处理后的数据发送至重复帧丢弃模块;所述重复帧丢弃模块,用于对排序处理后的数据进行解析,并根据解析结果对相邻数据进行重复帧丢弃判断;第二缓存模块,用于缓存重复帧丢弃判断后的数据。可选地,所述重复帧丢弃模块包括:数据存储解析单元,用于对排序后的以太网数据进行存储,并提取所述以太网数据中的源MAC地址和序列号,所述源MAC地址为48位;MAC地址变换单元,用于采用循环冗余校验算法,将48位的源MAC地址转换为8位的序列号检索地址;前n帧序列号读取单元,用于根据所述序列号检索地址,读取所述序列号检索地址下所存储的前n帧序列号;判断单元,用于判断前n帧序列号中的任一序列号是否与当前数据帧的序列号相同,如果是,判定当前数据帧为重复帧,否则,判定当前数据帧不是重复帧;序列号存储单元,用于当判断单元判定当前数据帧不是重复帧时,存储当前数据帧的序列号,并删除前n帧序列号中的第一帧序列号,形成更新后的n帧序列号;发送控制单元,用于根据判断单元的判断结果对当前数据帧进行处理。可选地,所述发送控制单元包括:丢弃子单元,用于当判断单元判定当前数据帧为重复帧时,丢弃当前数据帧;数据获取子单元,用于当判断单元判定当前数据帧不是重复帧时,将当前数据帧的数据传输至第二缓存模块。可选地,所述序列号存储单元为RAM。本申请的实施例提供的技术方案可以包括以下有益效果:本申请提供一种高可用性无缝冗余环网重复帧丢弃方法,该方法首先获取两路以太网数据,分别对这两路以太网数据进行缓存,并根据FIFO原则,对缓存后的以太网数据进行排序,其次,对排序后的数据进行解析,并根据解析结果对相邻数据进行重复帧丢弃判断,最后缓存重复帧丢弃判断后的数据,并将重复帧丢弃判断后的数据经由PCIe接口传输至CPU。本实施例通过对排序后的数据进行解析,具体地,对排序后的数据进行存储并提取以太网数据中的源MAC地址和序列号,然后将48位的源MAC地址转换为8位的序列号检索地址,能够大大降低后续重复帧判断的复杂度,有利于提高重复帧判断的效率。本实施例对相邻数据进行重复帧丢弃判断,具体采用乒乓操作的方法对相邻数据进行重复帧丢弃,通过充分利用数据处理和数据存储的间隔时间,能够提高数据处理的连续性和实时性,进而提高数据处理效率。本申请还提供一种高可用性无缝冗余环网重复帧丢弃系统,该系统设置于一FPGA芯片上,该系统主要包括:两个网口、两个第一数据缓存模块、本文档来自技高网
...

【技术保护点】
1.一种高可用性无缝冗余环网重复帧丢弃方法,其特征在于,所述方法包括:/n获取两路以太网数据;/n分别对两路以太网数据进行缓存;/n根据FIFO原则,对缓存后的以太网数据进行排序;/n对排序后的数据进行解析,并根据解析结果对相邻数据进行重复帧丢弃判断;/n缓存重复帧丢弃判断后的数据,并将重复帧丢弃判断后的数据经由PCIe接口传输至CPU。/n

【技术特征摘要】
1.一种高可用性无缝冗余环网重复帧丢弃方法,其特征在于,所述方法包括:
获取两路以太网数据;
分别对两路以太网数据进行缓存;
根据FIFO原则,对缓存后的以太网数据进行排序;
对排序后的数据进行解析,并根据解析结果对相邻数据进行重复帧丢弃判断;
缓存重复帧丢弃判断后的数据,并将重复帧丢弃判断后的数据经由PCIe接口传输至CPU。


2.根据权利要求1所述的一种高可用性无缝冗余环网重复帧丢弃方法,其特征在于,采用乒乓操作的方法,对排序后的数据进行解析,并根据解析结果对相邻数据进行重复帧丢弃判断。


3.根据权利要求1所述的一种高可用性无缝冗余环网重复帧丢弃方法,其特征在于,所述对排序后的数据进行解析,并根据解析结果对相邻数据进行重复帧丢弃判断的方法,包括:
对排序后的以太网数据进行存储,并提取所述以太网数据中的源MAC地址和序列号,所述源MAC地址为48位;
采用循环冗余校验算法,将48位的源MAC地址转换为8位的序列号检索地址;
根据所述序列号检索地址,读取所述序列号检索地址下所存储的前n帧序列号;
判断前n帧序列号中的任一序列号是否与当前数据帧的序列号相同;
如果是,判定当前数据帧为重复帧;
丢弃当前数据帧;
如果否,判定当前数据帧不是重复帧;
存储当前数据帧的序列号,并删除前n帧序列号中的第一帧序列号,形成更新后的n帧序列号;
根据对当前数据帧的判断结果,确定重复帧丢弃判断后的数据。


4.根据权利要求3所述的一种高可用性无缝冗余环网重复帧丢弃方法,其特征在于,所述存储当前数据帧的序列号,并删除前n帧序列号中的第一帧序列号,形成更新后的n帧序列号的方法,具体为:
采用RAM存储更新后的n帧序列号,所述更新后的n帧序列号包括:当前数据帧的序列号,以及,前n帧序列号中第一帧以外的序列号。


5.根据权利要求4所述的一种高可用性无缝冗余环网重复帧丢弃方法,其特征在于,所述采用RAM存储更新后的n帧序列号的方法,包括:
将当前数据帧的序列号存储到RAM0的对应地址中;
将RAMn-1相应地址中的数据帧存储至RAMn的对应地址中。

【专利技术属性】
技术研发人员:王彬李惠民王乐挺王化宗陈超吴莉钱春龑
申请(专利权)人:山东网聪信息科技有限公司
类型:发明
国别省市:山东;37

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1