一种基于以太网传输的错误帧检测及处理方法与流程
- 国知局
- 2024-08-30 15:08:29
本发明涉及以太网通讯领域,具体是一种基于以太网传输的错误帧检测及处理方法。
背景技术:
1、如今随着计算机技术、通信行业的高速发展,以太网作为一种极为流行的局域网技术其运用领域也越来越广泛,然而在以太网技术的实际应用中,其传输数据并非百分之百的可靠,会受到使用环境,硬件设备条件等多种物理因素的影响,而如果传输数据存在问题,则又会引发系统出现一系列故障,进一步破坏整个域网的正常工作,导致业务活动的暂停,甚至会给人员财产造成巨大损失,所以,对于现今的以太网技术,人们对数据传输的安全性,可靠性的需求是无比迫切的。
2、因此,需要提出一种以太网传输的错误帧检测机制及处理方法,进行对以太网数据传输过程中精准识别出系统不该响应的错误帧并对这些错误帧进行统一处理以防其继续影响下一级,进而避免了传输数据存在的问题,引发系统出现故障,并避免其进一步破坏整个域网的正常工作。
技术实现思路
1、发明目的:提供一种基于以太网传输的错误帧检测及处理方法,以解决现有技术存在的上述问题。
2、技术方案:一种基于以太网传输的错误帧检测及处理方法,包括:
3、错误帧检测方法,包括物理链路错误、时钟频率错误、帧无sof指示错误、超长、超短帧错误、crc错误及带有nibble位错误检测;
4、错误帧处理方法,在本地对各种错误类型进行进一步的筛选,来决定是否对错误帧进行进一步的破坏处理,具体方法如下:
5、通过模块接口对各种错误类型的处理开关进行使能选通,选通的错误帧在被检测模块识别出来后,会在帧的末端(fcs校验码之后)多添加1个4bit的nibble位,作为一个错误帧识别出来后的指示标签,被打上标签后的帧进入下一级客户端将被破坏掉。用这种方式可以避免错误帧在级联链路中不断传播。
6、相较于大部分以太网芯片所使用的单一检测功能,错误帧检测模块有着如下几个显著优势:
7、(1)更加精准的错误检测:
8、该机制覆盖了以太网传输时所有可能发生的不满足协议规范的错误类型,且同时可从物理层和数据方面同时进行快速识别;
9、(2)对错误帧的可选处理:
10、用户可根据自身需求对不同的错误类型选择是否将其进一步破坏处理,破坏处理后的帧将不会进一步影响下一级客户端,避免其在级联链路中不断传播;
11、(3)快速识别以及极小的硬件资源占用:
12、先前叙述的所有错误帧检测都由最简单的基本计数器直接实现,运用的电路单元极少,几乎不占用任何资源并且所有错误类型都会在第一时间检测并汇报给用户,使用户可以在出错的第一时间对故障进行排查诊断。
13、在进一步实施例中,所述物理链路错误检测包括:
14、物理链路错误(rx错误)检测,该错误的源头为接收以太网帧的各个mii端口的rx_err信号,包括:
15、步骤11、通过设计错误帧检测计数器进行检测数据帧携带的rx错误,当错误帧检测计数器收到实际的数据帧开始计数时,表示rx_dv信号为高,rx_error信号被采集;
16、在错误帧检测计数器中,必须要有收到实际的数据帧才会开始计数,即需要rx_dv信号为高时,rx_error信号才会被采到;
17、步骤12、通过设计物理链路错误计数器,进行检测链路本身存在异常而产生的rx错误,当错误计数器在端口上采集到rx_err信号时,物理链路错误计数器开始计数。
18、在物理链路错误计数器中,该信号在端口上直接采集得到;
19、步骤13、基于步骤11、12判断是发送端的发送数据不符合协议要求存在问题或物理链路出现故障。
20、在进一步实施例中,所述时钟频率错误检测包括:
21、步骤21、以太网的传输包括10m/100m/1000m三种模式,因此mii接口上接收以太网帧的时钟(rx/tx_clk)为2.5m/25m/250m;
22、步骤22、用户要先选择当前以太网的速率模式,检测其对应的时钟频率是否正确。
23、例如当此时是百兆以太网的工作模式,但传输时钟却远大于或者远小于了25m,那么此时的通信必然是不可能正确的,长期工作在不符合要求的时钟频率下,甚至会引发芯片的损毁,那么此时该频率检测子模块就能将此类错误类型识别出来,供用户做进一步处理。
24、在进一步实施例中,所述帧无sof指示错误检测包括:
25、步骤31、当一个帧数据的传输过程中没有满足在一串连续的4比特 mii端口数据4’h5之后出现的第一个mii端口数据8’h5d时,则说明该帧是个不符合协议的错误帧,会将其识别出来。
26、ieee802.3协议里规定了标准以太网帧有着以0,1交替传输的前导数据,在每个帧的起始处提供5mhz的时钟信号,允许接收设备锁定进入的比特流,在其之后,定义了一个帧首定界符(sfd),它是长度为1个字节的10101011二进制序列,此码表示一帧的实际开始,以使接收器对实际帧的第一位定位。
27、实际帧是由余下的da+sa+l+llcpdu+fcs组成,一个合理的sof指示信号其形为在一串连续的4’h5之后出现的第一个8’h5d,才表明此时接收到了1个有效的数据,该错误类型会对帧起始符进行检测,倘若在一个帧数据的传输过程中没有满足上述情形的起始符,则说明该帧是个不符合协议的错误帧,会将其识别出来。
28、在进一步实施例中,超长、超短帧错误检测包括:
29、步骤41、超长帧错误,ieee802.3协议里规定了标准以太网帧的长度通常最大为1518(若带vlan tag则为1522)个字节,该子模块会通过设计数器计量一个帧由sof到eof之间所包含的有效数据量,若大于2000个字节,则判定为一种超长帧错误,将其识别;
30、步骤42、超短帧错误,ieee802.3协议里规定了标准以太网帧的长度最小为64个字节,该子模块会通过设计计数器计量一个帧由sof到eof之间所包含的有效数据量,若小于64个字节,则判定为一种超短帧错误,将其识别。
31、在进一步实施例中,所述crc错误检测包括:
32、步骤51、crc错误,这是对于所有以太网帧来说最为重要也最常见的检测内容,模块会将帧除了最后fcs段的所有有效数据进行标准crc校验;
33、若最终结果与fcs段相符,则判定crc正确;
34、若最终结果与fcs段相异,则判定为错误帧,将其识别;
35、在进一步实施例中,所述带有nibble位错误包括:
36、步骤61、带有nibble位错误,由于以太网帧的数据结构是以字节为最小单位的(8bit),而mii端口的接收是4bit传输,所以当一个数据帧累计计数接收了奇数个4bit,则相当于一个完整的数据帧多出或缺失半个字节,相当于多了一个无效的nibble数据,该模块将该情形识别为一种nibble位错误。
37、有益效果:本发明公开了一种基于以太网传输的错误帧检测及处理方法,本发明通过设计检测机处理方法覆盖了以太网传输时所有可能发生的不满足协议规范的错误类型,且同时可从物理层和数据方面同时进行快速识别,并可根据自身需求对不同的错误类型选择是否将其进一步破坏处理,破坏处理后的帧将不会进一步影响下一级客户端,避免其在级联链路中不断传播,错误帧检测由最简单的基本计数器直接实现,运用的电路单元极少,几乎不占用任何资源并且所有错误类型都会在第一时间检测并汇报给用户,使用户可以在出错的第一时间对故障进行排查诊断。
本文地址:https://www.jishuxx.com/zhuanli/20240830/285626.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。