以太网帧的处理方法、装置、设备及存储介质

文档序号:687774 发布日期:2021-04-30 浏览:8次 >En<

阅读说明:本技术 以太网帧的处理方法、装置、设备及存储介质 (Method, device and equipment for processing Ethernet frame and storage medium ) 是由 李�根 于 2020-12-16 设计创作,主要内容包括:本发明公开了一种以太网帧的处理方法、装置、设备及存储介质,该方法包括:响应于千兆以太网数据发送指令,在千兆数据包的第一字节数据之前配置起始标记SOF,在千兆数据包之后配置结束标记EOF,第一字节数据为千兆数据包中第一个字节数据;根据千兆数据包包含的字节数据的数量确定载波扩展码数量;根据载波扩展码数量在结束标记EOF尾部之后配置载波扩展码,得到当前千兆以太网帧,使得后续千兆以太网帧的起始标记SOF位于以太网数据流的偶数位;根据预设千兆以太网工作时钟将当前千兆以太网帧发送至目标设备。能够避免无法识别到奇数位的起始标记导致数据丢失的问题,提高以太网数据传输的稳定性。(The invention discloses a method, a device, equipment and a storage medium for processing an Ethernet frame, wherein the method comprises the following steps: responding to a gigabit Ethernet data sending instruction, configuring a start marker SOF before first byte data of a gigabit data packet, and configuring an end marker EOF after the gigabit data packet, wherein the first byte data is first byte data in the gigabit data packet; determining the number of carrier spreading codes according to the number of byte data contained in the gigabit data packet; configuring carrier spreading codes after the tail part of the end mark EOF according to the number of the carrier spreading codes to obtain a current gigabit Ethernet frame, so that the start mark SOF of a subsequent gigabit Ethernet frame is positioned at the even number of the Ethernet data stream; and transmitting the current gigabit Ethernet frame to the target equipment according to a preset gigabit Ethernet working clock. The problem that data loss is caused by the fact that the odd-numbered initial marks cannot be identified can be avoided, and stability of Ethernet data transmission is improved.)

以太网帧的处理方法、装置、设备及存储介质

技术领域

本发明实施例涉及以太网数据传输技术,尤其涉及一种以太网帧的处理方法、装置、设备及存储介质。

背景技术

以太网传输技术已较为成熟,并广泛应用于工业控制领域。针对不同应用场景和不同功能要求的情况,用户自定义高速串行收发器应运而生。

现场可编程逻辑门阵列(Field Programmable Gate Array,FPGA)等设备通过携带以太网网通信模块以实现以太网数据传输功能。以太网网通信模块可以在千兆模式和百兆模式下进行通信。

在以太网数据传输调试阶段,对以太网传输的数据包的完整性进行测试。发现存在以太网数据包丢包的问题,以太网数据传输不稳定。

发明内容

本发明提供一种以太网帧的处理方法、装置、设备及存储介质,以实现提高以太网数据传输的稳定性。

第一方面,本发明实施例提供了一种以太网帧的处理方法,包括:

响应于千兆以太网数据发送指令,在千兆数据包的第一字节数据之前配置起始标记SOF,在千兆数据包之后配置结束标记EOF,第一字节数据为千兆数据包中第一个字节数据;

根据千兆数据包包含的字节数据的数量确定载波扩展码数量;

根据载波扩展码数量在结束标记EOF尾部之后配置载波扩展码,得到当前千兆以太网帧,使得后续千兆以太网帧的起始标记SOF位于以太网数据流的偶数位;

根据预设千兆以太网工作时钟将当前千兆以太网帧发送至目标设备。

第二方面,本发明实施例还提供了一种以太网帧的处理方法,包括:

在以太网数据流的偶数位监听以太网帧的起始标记SOF;

若监听到以太网帧的起始标记SOF,则获取起始标记SOF标记的以太网帧。

第三方面,本发明实施例还提供了一种以太网帧的处理装置,包括:

起始标记配置模块,用于响应于千兆以太网数据发送指令,在千兆数据包的第一字节数据之前配置起始标记SOF,第一字节数据为千兆数据包中第一个字节数据;

结束标记配置模块,用于在千兆数据包之后配置结束标记EOF;

载波扩展码数量确定模块,用于根据千兆数据包包含的字节数据的数量确定载波扩展码数量;

载波扩展码配置模块,用于根据载波扩展码数量在结束标记EOF尾部之后配置载波扩展码,得到当前千兆以太网帧,使得后续千兆以太网帧的起始标记SOF位于以太网数据流的偶数位;

发送模块,用于根据预设千兆以太网工作时钟将当前千兆以太网帧发送至目标设备。

第四方面,本发明实施例还提供了一种以太网帧的处理装置,包括:

数据流接收模块,用于接收以太网数据流;

起始标记监听模块,用于在以太网数据流的偶数位监听以太网帧的起始标记SOF;

以太网帧获取模块,用于若监听到以太网帧的起始标记SOF,则获取起始标记SOF标记的以太网帧。

第五方面,本发明实施例还提供了一种以太网帧处理设备,包括:

一个或多个处理器;

存储装置,用于存储一个或多个程序,

当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如本申请实施例所示的以太网帧的处理方法。

第六方面,本发明实施例还提供了一种包含计算机可执行指令的存储介质,计算机可执行指令在由计算机处理器执行时用于执行如本申请实施例所示的以太网帧的处理方法。

本申请实施例提供的以太网帧的处理方案,能够响应于千兆以太网数据发送指令,在千兆数据包的第一字节数据之前配置起始标记SOF,在千兆数据包之后配置结束标记EOF;根据千兆数据包包含的字节数据的数量确定载波扩展码数量,根据载波扩展码数量在结束标记EOF尾部之后配置载波扩展码,得到当前千兆以太网帧,使得后续千兆以太网帧的起始标记SOF位于以太网数据流的偶数位;根据预设千兆以太网工作时钟将当前千兆以太网帧发送至目标设备。经过研究发现,目前千兆以太网数据丢失的原因在于起始标记有时在以太网数据流的奇数位有时在以太网数据流的偶数位,因此时常出现无法识别到起始标记,导致数据的丢失。本申请实施例提供的以太网帧的处理方案,能够根据数据包包含的字节数据的数量确定载波扩展码数量,进而在千兆以太网帧的末尾设置相应数量的载波扩展码,使得下一个千兆以太网帧的起始标记始终位于以太网数据流的偶数位,进而接收端可以在以太网数据流的偶数位上识别到起始标记,进而避免无法识别到奇数位的起始标记导致数据丢失的问题,提高以太网数据传输的稳定性。

附图说明

图1是本发明实施例一中的以太网帧的处理方法的流程示意图;

图2是本发明实施例一中的以太网数据流示意图;

图3是本发明实施例二中的以太网帧的处理方法的流程示意图;

图4是本发明实施例二中的以太网数据流示意图;

图5是本发明实施例三中以太网帧的处理方法的流程示意图;

图6是本发明实施例四中的一个以太网帧的处理装置的结构示意图;

图7是本发明实施例四中的另一个以太网帧的处理装置的结构示意图;

图8是本发明实施例五中的一个以太网帧的处理装置的结构示意图;

图9是本发明实施例六中的以太网帧的处理设备的结构示意图。

具体实施方式

下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。

实施例一

图1为本发明实施例一提供的以太网帧的处理方法的流程图,本实施例可适用于通过千兆以太网发送千兆以太网帧的情况,该方法可以由具备以太网传输接口的设备来执行,该设备可以为计算机设备,该设备用于向目标设备发送以太网帧,该方法具体包括如下步骤:

步骤110、响应于千兆以太网数据发送指令,在千兆数据包的第一字节数据之前配置起始标记SOF,在千兆数据包之后配置结束标记EOF,第一字节数据为千兆数据包中第一个字节数据。

本申请实施例使用千兆以太网向目标设备发送数据。当用户触发千兆以太网数据发送指令时,执行本申请实施例的设备响应千兆以太网数据发送指令,对待传输的数据包进行封装,以便得到用于传输该待传输的数据包的千兆以太网帧。

本申请实施例中将响应于千兆以太网数据发送指令所发送的数据包称为千兆数据包。千兆数据包中以字节为单位,包含多个字节数据。数据包可以包括校验位等不同字段,每个字段由多个字节数据组成。本申请实施例在千兆数据包的第一个字节数据之前添加起始标记(Start Of Packet,SOF),起始标记用于表示数据包的起始。在千兆数据包的最后一个字节数据之后配置结束标记(End Of Packet,EOF),结束标记用于表示数据包结束。

步骤120、根据千兆数据包包含的字节数据的数量确定载波扩展码数量。

载波扩展码数量为结束标记EOF之后配置的载波扩展码的数量。一个载波扩展码占用一个字节。载波扩展码的配置数量大于等于1。可以通过下述方式确定载波扩展码数量:

若千兆数据包包含的字节数据的数量为奇数,确定载波扩展码数量为一个;若千兆数据包包含的字节数据的数量为偶数,确定载波扩展码数量为两个。

获取千兆数据包包含的字节数据的数量。由于一个字节数据表示一个字节的数据,因此千兆数据包包含的字节数据的数量可以表示为千兆数据包的长度,也可以用于表示千兆数据包以字节为单位的数据量。例如,千兆数据包的长度(或数据量)为20字节Byte,则千兆数据包包含的字节数据为20,由于20为偶数,则确定载波扩展码数量为两个。

步骤130、根据载波扩展码数量在结束标记EOF尾部之后配置载波扩展码,得到当前千兆以太网帧,使得后续千兆以太网帧的起始标记SOF位于以太网数据流的偶数位。

从结束标记EOF后面一个字节开始配置载波扩展码(Carrier Extend,R码)。配置的载波扩展码的数量为步骤120确定的载波扩展码数量。千兆以太网帧包括起始标记、千兆数据包、结束标记以及载波扩展码。

假设当前千兆数据包的起始标记位于偶数位,结束标记占用一个字节位,若千兆数据包的长度为奇数,则需要增加一个字节的载波扩展码,以便使千兆以太网帧的长度为偶数字节数,进而使得后续的千兆以太网帧的起始标记SOF位于以太网数据流的偶数位。

假设当前千兆数据包的起始标记位于偶数位,结束标记占用一个字节位,若千兆数据包的长度为偶数,此时起始标记、数据包长度和结束标记的长度为偶数位的字节,但是由于协议规定(如IEEE802.3)载波扩展码数量需要大于等于1,因此配置两个载波扩展码,以便使千兆以太网帧的长度为偶数字节数,进而使得后续的千兆以太网帧的起始标记SOF位于以太网数据流的偶数位。

步骤140、根据预设千兆以太网工作时钟将当前千兆以太网帧发送至目标设备。

预设千兆以太网工作时钟可以为125Mhz,每个时钟周期传输8bit数据,即一个字节的数据,每秒可以传输1000Mbit的数据。当无数据包传输时,向目标设备发送空闲码(IDLE码)。当触发千兆数据包传输时,将上述步骤生成的千兆以太网帧按照预设千兆以太网工作时钟发送至目标设备。

通过上述步骤可以得一种包含以太网帧的以太网数据流,包括:至少一个以太网帧;以太网帧包括起始标记SOF、数据包、结束标记EOF和载波扩展码,起始标记SOF位于以太网数据流的偶数位。

具体的,在千兆以太网发送千兆以太网帧的情况下:以太网帧为千兆以太网帧,数据包为千兆数据包,千兆以太网帧中依次排列起始标记SOF、千兆数据包、结束标记EOF和载波扩展码;当千兆数据包包含的字节数据的数量为奇数时,载波扩展码的数量为一个,当千兆数据包包含的字节数据的数量为偶数时,载波扩展码的数量为两个。

示例性的,千兆数据包可以包括前导码、目标MAC地址、源MAC地址、类型、数据以及帧校验(Frame Check Sequence,FCS)。其中,前导码(Preamble)为千兆数据包的帧头,长度为8字节,内容可以为连续7个8’h55加1个8’hd5,表示一个帧的开始,用于双方设备数据的同步。目的MAC地址长度为6字节,用于存放目的设备的物理地址,即MAC地址源。源MAC地址长度为6字节,用于存放发送端设备的物理地址。类型长度为2字节,用于指定协议类型,常用的有0800表示互联网协议(Internet Protocol,IP),0806表示地址解析协议(AddressResolution Protocol,ARP),8035表示反向地址转换协议(Reverse Address ResolutionProtocol,RARP)等。数据长度为46字节-1500字节,若数据内容不足46字节则补全至46字节。帧校验FCS位于千兆数据包的帧尾,长度为4字节,又称为帧校验序列,采用32位循环冗余校验(Cyclic Redundancy Check,CRC),对目的MAC地址字段到数据字段进行校验。可见千兆数据包的长度会随数据的长度而变化,出现奇数或偶数的情况。千兆数据包包含的字节数据的数量为千兆数据包的长度。

当千兆数据包包含的字节数据的数量为奇数时,载波扩展码的数量为一个,当千兆数据包包含的字节数据的数量为偶数时,载波扩展码的数量为两个。

图2为本申请实施例提供的一个以太网数据流的示意图。如图2所示,在空闲状态向目标设备发送空闲码(IDLE码),当触发千兆以太网数据发送指令时,生成千兆以太网帧。图2给出了千兆以太网帧的部分内容,重点在于表示千兆以太网帧的起始标记SOF与帧头的位置关系,以及帧校验与结束标记EOF的位置关系,以及结束标记与载波扩展码的位置关系。其中,千兆数据包的第一字节数据为8’h55,起始标记SOF位于第一字节数据的前一个字节位置。千兆数据包的最后一个字节数据为4字节的帧校验中最后一个字节数据,结束标记EOF位于该最后一个字节数据的后一个字节位置。假设千兆数据包包含的字节数据的数量为奇数,此时在结束标记EOF的后一个字节位置配置一个字节的载波扩展码。从起始标记SOF开始到载波扩展码作为结束,形成千兆以太网帧。

使用上述千兆以太网帧进行传输时,作为接收端的目标设备可以在以太网数据流的偶数位对起始标记SOF进行识别,使目标设备能够在偶数位快速稳定的识别到起始标记,提高以太网数据传输的稳定性提高数据传输效率。

本申请实施例提供的以太网帧的处理方案,能够响应于千兆以太网数据发送指令,在千兆数据包的第一字节数据之前配置起始标记SOF,在千兆数据包之后配置结束标记EOF;根据千兆数据包包含的字节数据的数量确定载波扩展码数量,根据载波扩展码数量在结束标记EOF尾部之后配置载波扩展码,得到当前千兆以太网帧,使得后续千兆以太网帧的起始标记SOF位于以太网数据流的偶数位;根据预设千兆以太网工作时钟将当前千兆以太网帧发送至目标设备。经过研究发现,目前千兆以太网数据丢失的原因在于起始标记有时在以太网数据流的奇数位有时在以太网数据流的偶数位,因此时常出现无法识别到起始标记,导致数据丢失的。本申请实施例提供的以太网帧的处理方案,能够根据数据包包含的字节数据的数量确定载波扩展码数量,进而在千兆以太网帧的末尾设置相应数量的载波扩展码,使得下一个千兆以太网帧的起始标记始终位于以太网数据流的偶数位,进而接收端可以在以太网数据流的偶数位上识别到起始标记,进而避免无法识别到奇数位的起始标记导致数据丢失的问题,提高以太网数据传输的稳定性。

实施例二

图3为本申请实施例二提供的以太网帧的处理方法的流程图,本申请实施例提供的以太网帧的处理方法的可适用于在千兆以太网中兼容百兆以太网的情况,具体包括如下步骤:

步骤110、响应于千兆以太网数据发送指令,在千兆数据包的第一字节数据之前配置起始标记SOF,在千兆数据包之后配置结束标记EOF,第一字节数据为千兆数据包中第一个字节数据。

步骤120、根据千兆数据包包含的字节数据的数量确定载波扩展码数量。

其中,若千兆数据包包含的字节数据的数量为奇数,确定载波扩展码数量为一个;若千兆数据包包含的字节数据的数量为偶数,确定载波扩展码数量为两个。

步骤130、根据载波扩展码数量在结束标记EOF尾部之后配置载波扩展码,得到当前千兆以太网帧,使得后续千兆以太网帧的起始标记SOF位于以太网数据流的偶数位。

步骤140、根据预设千兆以太网工作时钟将当前千兆以太网帧发送至目标设备。

步骤310、响应于百兆以太网数据发送指令,根据千兆数据包中的字节数据生成对应的百兆数据包中的延长字节数据,延长字节数据的长度为字节数据长度的十倍。

本申请实施例使用千兆以太网模拟百兆频率向目标设备发送百兆以太网帧。当用户触发百兆以太网数据发送指令时,执行本申请实施例步骤310至步骤350的方式实现千兆兼容百兆的以太网传输。兼容时,以千兆数据包为基础生成延长字节数据,使得百兆数据包中的延长字节数据与千兆数据包中的字节数据一一对应。

百兆数据包包含一个第一延长数据和多个第二延长数据。第一延长字节数据为百兆数据包中的第一个延长字节数据。第一延长字节数据对应千兆数据包中的第一字节数据。第二字节数据为千兆数据包中除第一字节数据以外的任意一个字节数据。示例性的,将第二字节数据重复十次,得到第二字节数据对应的第二延长字节数据。将千兆数据包中每个第二字节数据均重复十次,得到相应的第二延长字节数据。

步骤320、将起始标记SOF嵌入到第一延长字节数据中。

第一延长字节数据中嵌入有起始标记SOF。与千兆以太网帧不同的是,在兼容百兆以太网络时,起始标记嵌入到第一延长字节数据中,而非配置到第一延长字节数据之前的字节位置。这样配置能够第一延长字节数据中不仅包含起始标记SOF,还包含了千兆数据包中的第一字节数据,起始标记SOF无需额外占用通信周期,提高带宽利用率。

示例性的,将起始标记SOF嵌入到第一延长字节数据的第一个字节位置,第一延长字节数据包括十个字节位置,每个字节位置的长度与第一字节数据长度相同;将第一字节数据重复填充到第一延长字节数据的其余九个字节位置。

假设第一字节数据为8’h55,则第一延长字节数据为起始标记SOF、8’h55、8’h55、8’h55、8’h55、8’h55、8’h55、8’h55、8’h55、8’h55。每个8’h55占用一个字节位置,第一延长字节数据共占用10字节位置,其中起始标记SOF位于第一个字节位置。

步骤330、在百兆数据包之后配置结束标记EOF。

结束标记EOF配置在百兆数据包的最后一个延长字节数据的后一位。

步骤340、在结束标记EOF之后,配置一个载波扩展码,得到百兆以太网帧。

在前兆兼容百兆的场景下,载波扩展码的数量为一个。配置在结束标记EOF的后一位。

步骤350、同步时钟信号,将百兆以太网帧通过千兆以太网发送至目标设备。

百兆数据包中,千兆数据包的每一个字节数据重复10次,得到延长字节数据,因此百兆数据包永远是10的偶数倍,但是由于工作时钟依旧是千兆模式的125M时钟,发送的起始标记SOF和结束标记EOF等功能码时,不是数据包的有效内容,因此不做重复10次处理,而他们用于识别数据包的位置,是识别百兆以太网帧的必要参数。所以在百兆模式下,将起始标记SOF码嵌入到报文前导码第一个8’h55(重复10次)中去,变为一个8’hfb加9个8’h55。EOF码保持不变,此时只需要每次在后面补充一个载波扩展码,便可以继续保持(下一个百兆数据包的)SOF码在偶数位,进而解决数据丢失的问题,提高千兆兼容百兆模式下以太网数据传输的稳定性。

通过上述步骤可以得一种包含以太网帧的以太网数据流,包括:至少一个以太网帧;以太网帧包括起始标记SOF、数据包、结束标记EOF和载波扩展码,起始标记SOF位于以太网数据流的偶数位。

进一步的,在千兆兼容百兆场景中,以太网帧为百兆以太网帧,数据包为百兆数据包,百兆数据包包括多个延长字节数据,每个延长字节数据分别对应千兆数据包中的一个字节数据;

第一延长字节数据为百兆数据包中的第一个延长字节数据,第一延长字节数据包括十个字节位置,每个字节位置的长度与第一字节数据长度相同;起始标记SOF嵌入在第一延长字节数据的第一个字节位置,第一字节数据重复填充在第一延长字节数据的其余九个字节位置,第一字节数据为千兆以太网数据包中的第一个字节数据;

第二延长字节数据为百兆数据包中除第一字节数据以外的任意一个延长字节数据,第二延长字节数据包括十个字节位置,第二字节数据重复填充在十个字节位置,第二字节数据为千兆以太网数据包中除第一个字节数据以外的任意一个字节数据。

图4为本申请实施例提供的一个以太网数据流的示意图。如图4所示,在空闲状态向目标设备发送空闲码(IDLE码),当触发百兆以太网数据发送指令时,生成百兆以太网帧。图4给出了百兆以太网帧的部分内容,重点在于表示百兆以太网帧的起始标记SOF与帧头的位置关系,以及帧校验与结束标记EOF的位置关系,以及结束标记与载波扩展码的位置关系。

其中,假设用于生成百兆数据包的千兆数据包为图2所示的内容,其中帧头包括8’h55*7+8’hD5,共八个字节数据。在生成百兆数据包的延长字节数据时,依次对每个字节数据重复十次,得到对应的延长字节数据。特别的,对于第一延长数据(即第一个延长数据)将其第一个字节位置配置为起始标记SOF。按照上述生成方式得到的帧头包括八个延长字节数据,分别为:起始标记SOF+8’h55*9、8’h55*10、8’h55*10、8’h55*10、8’h55*10、8’h55*10、8’h55*10、8’hD5*10。假设千兆数据包的尾部的帧校验为4字节,分别为FCS1、FCS2、FCS3、FCS4,则分别对每个字节重复十次,得到相应的延长字节数据,FCS4*10、FCS3*10、FCS2*10、FCS1*10。结束标记EOF位于最有一个延长字节数据FCS1*10的最后一个字节FCS1的后一个字节位置。

本申请实施例提供的以太网帧的处理方法,能够实现千兆兼容百兆的以太网数据传输。响应于百兆以太网数据发送指令,根据千兆数据包中的字节数据生成对应的百兆数据包中的延长字节数据,延长字节数据的长度为字节数据长度的十倍;将起始标记SOF嵌入到第一延长字节数据中,第一延长字节数据为百兆数据包中的第一个延长字节数据;在百兆数据包之后配置结束标记EOF;在结束标记EOF之后,配置一个载波扩展码,得到百兆以太网帧;同步时钟信号,将百兆以太网帧通过千兆以太网发送至目标设备。在实现千兆兼容百兆的同时,使得起始标记SOF时钟位于以太网数据流的偶数位,进而避免数据丢失,提高以太网数据传输的稳定性。

实施例三

图5为本发明实施例三提供的以太网帧的处理方法的流程图,本实施例可适用于通过千兆以太网接收千兆以太网帧或模拟的百兆以太网帧的情况,该方法可以由具备以太网传输接口的目标设备来执行,该目标设备可以为计算机设备,该目标设备用于接收以太网帧,该方法具体包括如下步骤:

步骤410、在以太网数据流的偶数位监听以太网帧的起始标记SOF。

其中,以太网帧为千兆以太网帧或百兆以太网帧。

上述实施例提供了使用千兆以太网传输千兆以太网帧的实现方式。以及使用千兆以太网模拟百兆以太网,构建百兆以太网帧,并通过千兆以太网发送百兆以太网帧的实现方式。

在使用千兆以太网传输千兆以太网帧或者百兆以太网帧时,以太网帧的起始标记SOF均位于以太网数据流的偶数位。因此,目标设备可以按照预定的工作频率监听以太网数据流的偶数位,进而识别千兆以太网帧或者百兆以太网帧。预定的工作频率可以为千兆以太网工作频率或百兆以太网工作频率。

步骤420、若监听到以太网帧的起始标记SOF,则获取起始标记SOF标记的以太网帧。

在监听到起始标记SOF后,按字节接收以太网帧,直至接收到内容为结束标记EOF时,确定以太网截止。

本申请实施例提供的以太网帧的处理方法,目标设备能够在以太网数据流的偶数位监听以太网帧的起始标记SOF。由于发送方将以太网帧的起始标记SOF配置在以太网帧的偶数位,因此目标设备通过监听以太网数据流的偶数位,可获取到全部以太网帧,进而识别到全部以太网帧,提高以太网数据传输的稳定性。

实施例四

图6为申请实施例四提供的一种以太网帧的处理装置的结构示意图,该装置适用于通过千兆以太网发送千兆以太网帧以及千兆以太网兼容百兆以太网的情况,该装置可以位于具备以太网输出传输接口的设备来执行,该设备可以为计算机设备,该装置包括:起始标记配置模块510、结束标记配置模块520、载波扩展码数量确定模块530、载波扩展码配置模块540以及发送模块550。

起始标记配置模块510,用于响应于千兆以太网数据发送指令,在千兆数据包的第一字节数据之前配置起始标记SOF,第一字节数据为千兆数据包中第一个字节数据;

结束标记配置模块520,用于在千兆数据包之后配置结束标记EOF;

载波扩展码数量确定模块530,用于根据千兆数据包包含的字节数据的数量确定载波扩展码数量;

载波扩展码配置模块540,用于根据载波扩展码数量在结束标记EOF尾部之后配置载波扩展码,得到当前千兆以太网帧,使得后续千兆以太网帧的起始标记SOF位于以太网数据流的偶数位;

发送模块550,用于根据预设千兆以太网工作时钟将当前千兆以太网帧发送至目标设备。

在上述实施例的基础上,载波扩展码数量确定模块530用于:

若千兆数据包包含的字节数据的数量为奇数,确定载波扩展码数量为一个;

若千兆数据包包含的字节数据的数量为偶数,确定载波扩展码数量为两个。

在上述实施例的基础上,如图7所示,还包括百兆兼容模块560,百兆兼容模块560用于:

响应于百兆以太网数据发送指令,根据千兆数据包中的字节数据生成对应的百兆数据包中的延长字节数据,延长字节数据的长度为字节数据长度的十倍;

将起始标记SOF嵌入到第一延长字节数据中,第一延长字节数据为百兆数据包中的第一个延长字节数据;

在百兆数据包之后配置结束标记EOF;

在结束标记EOF之后,配置一个载波扩展码,得到百兆以太网帧;

同步时钟信号,将百兆以太网帧通过千兆以太网发送至目标设备。

在上述实施例的基础上,百兆兼容模块560还用于:

将起始标记SOF嵌入到第一延长字节数据的第一个字节位置,第一延长字节数据包括十个字节位置,每个字节位置的长度与第一字节数据长度相同;

将第一字节数据重复填充到第一延长字节数据的其余九个字节位置;

将第二字节数据重复十次,得到第二字节数据对应的第二延长字节数据,第二字节数据为千兆数据包中除第一字节数据以外的任意一个字节数据。

本申请实施例提供的以太网帧的处理装置,起始标记配置模块510能够响应于千兆以太网数据发送指令,在千兆数据包的第一字节数据之前配置起始标记SOF,结束标记配置模块520在千兆数据包之后配置结束标记EOF;载波扩展码数量确定模块530根据千兆数据包包含的字节数据的数量确定载波扩展码数量,载波扩展码配置模块540根据载波扩展码数量在结束标记EOF尾部之后配置载波扩展码,得到当前千兆以太网帧,使得后续千兆以太网帧的起始标记SOF位于以太网数据流的偶数位;发送模块550根据预设千兆以太网工作时钟将当前千兆以太网帧发送至目标设备。经过研究发现,目前千兆以太网数据丢失的原因在于起始标记有时在以太网数据流的奇数位有时在以太网数据流的偶数位,因此时常出现无法识别到起始标记,导致数据丢失的。本申请实施例提供的以太网帧的处理装置,能够根据数据包包含的字节数据的数量确定载波扩展码数量,进而在千兆以太网帧的末尾设置相应数量的载波扩展码,使得下一个千兆以太网帧的起始标记始终位于以太网数据流的偶数位,进而接收端可以在以太网数据流的偶数位上识别到起始标记,进而避免无法识别到奇数位的起始标记导致数据丢失的问题,提高以太网数据传输的稳定性。

本发明实施例所提供的以太网帧的处理装置可执行本发明任意实施例所提供的以太网帧的处理方法,具备执行方法相应的功能模块和有益效果。

实施例五

图8为申请实施例五提供的一种以太网帧的处理装置的结构示意图,该装置适用于通过千兆以太网接收千兆以太网帧以及千兆以太网兼容百兆以太网的情况,该装置可以位于具备以太网输出传输接口的目标设备来执行,该设备可以为计算机设备,该装置包括:起始标记监听模块610和以太网帧获取模块620。

起始标记监听模块610,用于在以太网数据流的偶数位监听以太网帧的起始标记SOF;

以太网帧获取模块620,用于若监听到以太网帧的起始标记SOF,则获取起始标记SOF标记的以太网帧。其中,以太网帧为千兆以太网帧或百兆以太网帧。

本申请实施例提供的以太网帧的处理装置,起始标记监听模块610在以太网数据流的偶数位监听以太网帧的起始标记SOF。以太网帧获取模块620获取起始标记SOF标记的以太网帧,由于发送方将以太网帧的起始标记SOF配置在以太网帧的偶数位,因此目标设备通过监听以太网数据流的偶数位,可获取到全部以太网帧,进而识别到全部以太网帧,提高以太网数据传输的稳定性。

实施例六

图9为本发明实施例六提供的一种以太网帧处理设备的结构示意图,如图9所示,该以太网帧处理设备包括处理器70、存储器71、输入装置72和输出装置73;以太网帧处理设备中处理器70的数量可以是一个或多个,图9中以一个处理器70为例;以太网帧处理设备中的处理器70、存储器71、输入装置72和输出装置73可以通过总线或其他方式连接,图9中以通过总线连接为例。

存储器71作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的以太网帧的处理方法对应的程序指令/模块(例如,以太网帧的处理装置中的起始标记配置模块510、结束标记配置模块520、载波扩展码数量确定模块530、载波扩展码配置模块540、发送模块550以及百兆兼容模块560,或者起始标记监听模块610和以太网帧获取模块620)。处理器70通过运行存储在存储器71中的软件程序、指令以及模块,从而执行以太网帧处理设备的各种功能应用以及数据处理,即实现上述的以太网帧的处理方法。

存储器71可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器71可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器71可进一步包括相对于处理器70远程设置的存储器,这些远程存储器可以通过网络连接至以太网帧处理设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

输入装置72可用于接收输入的数字或字符信息,以及产生与以太网帧处理设备的用户设置以及功能控制有关的键信号输入。输出装置73可包括显示屏等显示设备。

实施例五

本发明实施例五还提供一种包含计算机可执行指令的存储介质,计算机可执行指令在由计算机处理器执行时用于执行一种以太网帧的处理方法,当该方法应用于以太网帧的发送方时,该方法包括:

响应于千兆以太网数据发送指令,在千兆数据包的第一字节数据之前配置起始标记SOF,在千兆数据包之后配置结束标记EOF,第一字节数据为千兆数据包中第一个字节数据;

根据千兆数据包包含的字节数据的数量确定载波扩展码数量;

根据载波扩展码数量在结束标记EOF尾部之后配置载波扩展码,得到当前千兆以太网帧,使得后续千兆以太网帧的起始标记SOF位于以太网数据流的偶数位;

根据预设千兆以太网工作时钟将当前千兆以太网帧发送至目标设备。

在上述实施例的基础上,根据千兆数据包包含的字节数据的数量确定载波扩展码数量,包括:

若千兆数据包包含的字节数据的数量为奇数,确定载波扩展码数量为一个;

若千兆数据包包含的字节数据的数量为偶数,确定载波扩展码数量为两个。

在上述实施例的基础上,还包括:

响应于百兆以太网数据发送指令,根据千兆数据包中的字节数据生成对应的百兆数据包中的延长字节数据,延长字节数据的长度为字节数据长度的十倍;

将起始标记SOF嵌入到第一延长字节数据中,第一延长字节数据为百兆数据包中的第一个延长字节数据;

在百兆数据包之后配置结束标记EOF;

在结束标记EOF之后,配置一个载波扩展码,得到百兆以太网帧;

同步时钟信号,将百兆以太网帧通过千兆以太网发送至目标设备。

在上述实施例的基础上,将起始标记SOF嵌入到第一延长字节数据中,包括:

将起始标记SOF嵌入到第一延长字节数据的第一个字节位置,第一延长字节数据包括十个字节位置,每个字节位置的长度与第一字节数据长度相同;

将第一字节数据重复填充到第一延长字节数据的其余九个字节位置;

根据千兆数据包中的字节数据生成对应的百兆数据包中的延长字节数据,包括:

将第二字节数据重复十次,得到第二字节数据对应的第二延长字节数据,第二字节数据为千兆数据包中除第一字节数据以外的任意一个字节数据。

当该方法应用于以太网帧的接收方时,该方法包括:在以太网数据流的偶数位监听以太网帧的起始标记SOF;若监听到以太网帧的起始标记SOF,则获取起始标记SOF标记的以太网帧。其中,以太网帧为千兆以太网帧或百兆以太网帧。

当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上的方法操作,还可以执行本发明任意实施例所提供的以太网帧的处理方法中的相关操作。

通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例的方法。

值得注意的是,上述搜索装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。

注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

18页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:水声通信时变定时偏移迭代估计和补偿方法及装置

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!