CN116567096A - 以太帧的传输方法、电子设备及存储介质 - Google Patents
以太帧的传输方法、电子设备及存储介质 Download PDFInfo
- Publication number
- CN116567096A CN116567096A CN202310528819.4A CN202310528819A CN116567096A CN 116567096 A CN116567096 A CN 116567096A CN 202310528819 A CN202310528819 A CN 202310528819A CN 116567096 A CN116567096 A CN 116567096A
- Authority
- CN
- China
- Prior art keywords
- preamble
- type
- value
- data
- receiving end
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 72
- 230000005540 biological transmission Effects 0.000 title description 25
- 238000012545 processing Methods 0.000 claims abstract description 56
- 230000008569 process Effects 0.000 claims description 30
- 238000004590 computer program Methods 0.000 claims description 7
- 238000005516 engineering process Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 10
- 238000004891 communication Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 238000013507 mapping Methods 0.000 description 6
- 238000013461 design Methods 0.000 description 5
- 238000002955 isolation Methods 0.000 description 5
- 238000011161 development Methods 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 229920001690 polydopamine Polymers 0.000 description 1
- 239000004984 smart glass Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/03—Protocol definition or specification
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/06—Notations for structuring of protocol data, e.g. abstract syntax notation one [ASN.1]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/322—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
- H04L69/324—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the data link layer [OSI layer 2], e.g. HDLC
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
本说明书一个或多个实施例提供一种以太帧的传输方法、电子设备及存储介质。该方法可以包括:生成包含前导码和媒体访问控制MAC帧的以太帧,所述前导码中类型识别域的取值用于表征所述MAC帧所含目标数据的目标类型;向接收端发送所述以太帧,以由所述接收端根据所述类型识别域的取值对所述MAC帧进行分流处理。
Description
技术领域
本说明书一个或多个实施例涉及通信技术领域,尤其涉及一种以太帧的传输方法、电子设备及存储介质。
背景技术
计算机网络的快速发展对数据接收和处理设备的网络性能提出了更高的要求,对此,计算机网络中的数据接收端可以识别数据类型并进行针对性的处理。通过识别数据类型,数据接收端一方面可以实现不同数据流之间的有效隔离,进而对各个数据流实现个性化处理,达到提升网络处理性能的目的;另一方面可以降低数据流处理pipeline(流水线)的复杂度、简化网络设备的架构设计。显然,从数据类型识别的角度来看,越前置的数据流识别,这两方面的收益越明显。
现阶段,数据接收端通常采用基于端口识别或者基于载荷识别的方案,这些识别方案需要解析接收到的数据包(如MAC帧等)实现识别。
发明内容
有鉴于此,本说明书一个或多个实施例提供一种以太帧的传输方法、电子设备及存储介质。
为实现上述目的,本说明书一个或多个实施例提供技术方案如下:
根据本说明书一个或多个实施例的第一方面,提出了一种以太帧的传输方法,包括:
生成包含前导码和媒体访问控制MAC帧的以太帧,所述前导码中类型识别域的取值用于表征所述MAC帧所含目标数据的目标类型;
向接收端发送所述以太帧,以由所述接收端根据所述类型识别域的取值对所述MAC帧进行分流处理。
根据本说明书一个或多个实施例的第二方面,提出了一种以太帧的传输方法,包括:
接收以太帧包含的前导码,所述以太帧还包含封装有目标数据的媒体访问控制MAC帧,所述前导码中类型识别域的取值用于表征所述目标数据的目标类型;
根据所述类型识别域的取值对所述MAC帧进行分流处理。
根据本说明书一个或多个实施例的第三方面,提出了一种电子设备,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器通过运行所述可执行指令以实现如第一方面或第二方面中任一项所述的方法。
根据本说明书一个或多个实施例的第四方面,提出了一种计算机可读存储介质,其上存储有计算机指令,该指令被处理器执行时实现如第一方面或第二方面中任一项所述方法的步骤。
根据本说明书一个或多个实施例的第五方面,提出了一种计算机程序产品,包括计算机程序和/或指令,所述计算机程序和/或指令被处理器执行时实现如第一方面或第二方面中任一项所述的方法。
通过前述实施例,针对待发送的包含目标数据的MAC帧,发送端会生成包含前导码和所述MAC帧的以太帧,而所述前导码中类型识别域的取值可以用于表征所述目标数据的目标类型。而接收端在接收到所述以太帧包含的前导码的情况下,即可根据该前导码中所述类型识别域的取值对该以太帧中包含的MAC帧进行分流处理。
可见,本说明书提出了一种新型前导码结构,即定义了一种可以自定义类型识别域取值的前导码,使得目标数据的发送方在生成前导码时,可以根据目标数据的目标类型相应的设置其中所述类型识别域的取值。从而,目标数据的接收端可以通过该取值快速获知目标数据的目标类型,而无需等待MAC帧全部接收到完毕对其进行解析以确定目标类型。显然,相对于需要解析MAC帧才能够获知其中目标数据的目标类型的相关技术,本方案的接收端可以通过前导码快速、准确地确定后续接收到的MAC帧中目标数据的目标类型,从而将数据类型的识别过程进一步前置(相对于相关技术更加靠前),不仅有助于实现更有效的数据隔离和个性化处理,从而提升网络处理性能;而且可以进一步降低数据流处理pipeline的复杂度、简化网络设备的架构设计。换言之,本说明书通过将数据类型识别过程更加前置,使得上述两方面的收益更加明显。
附图说明
图1是相关技术中的一种信息传输过程的数据流示意图。
图2是相关技术中采用的以太帧的结构示意图。
图3是一示例性实施例提供的一种以太帧的传输方法的流程图。
图4是一示例性实施例提供的一种以太帧的结构示意图。
图5是一示例性实施例提供的另一种以太帧的传输方法的流程图。
图6是一示例性实施例提供的一种接收端对以太帧的处理流程的示意图。
图7是一示例性实施例提供的一种设备的结构示意图。
图8是一示例性实施例提供的一种以太帧的传输装置的流程图。
图9是一示例性实施例提供的另一种以太帧的传输装置的流程图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本说明书一个或多个实施例相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本说明书一个或多个实施例的一些方面相一致的装置和方法的例子。
需要说明的是:在其他实施例中并不一定按照本说明书示出和描述的顺序来执行相应方法的步骤。在一些其他实施例中,其方法所包括的步骤可以比本说明书所描述的更多或更少。此外,本说明书中所描述的单个步骤,在其他实施例中可能被分解为多个步骤进行描述;而本说明书中所描述的多个步骤,在其他实施例中也可能被合并为单个步骤进行描述。
计算机网络的快速发展对数据接收和处理设备的网络性能提出了更高的要求,对此,计算机网络中的数据接收端可以识别数据类型并进行针对性的处理。通过识别数据类型,数据接收端一方面可以实现不同数据流之间的有效隔离,进而对各个数据流实现个性化处理,达到提升网络处理性能的目的;另一方面可以降低数据流处理pipeline(流水线)的复杂度、简化网络设备的架构设计。显然,从数据类型识别的角度来看,越前置的数据流识别,这两方面的收益越明显。
OSI(Open System Interconnection Reference Model,开放式通信系统互联参考模型)模型,是国际标准化组织(International Organization for Standardization,ISO)提出的一种用于网络互联的标准框架。作为基础设施级别的通信标准,OSI模型被广泛应用于通信技术领域。
在OSI模型定义了网络互连的七层模型,由低到高依次为物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。对于需要传输的应用层数据,发送端的各个层会按照从高到低的顺序将其依次封装为相应的数据块,最终在物理层按位传输至接收端。其中,在接收到数据链路层封装得到的MAC(Media Access Control Address,媒体访问控制)帧之后,物理层会按照预设协议在MAC帧前端添加固定长度(8个字节)和取值的前导码,并按照先前导码后MAC帧的顺序依次发送。
如图1所示,对于需要传输至接收端的信息massage,通常会将其拆分成多个数据段(当然,在massage数据量足够小时也可以不拆分),如Part 1、Part 2……Part s等,并将每个数据段作为一个目标数据构造数据包。其中,任一数据段对应的任一数据包除了包含该数据段之外,通常还会在其之前包含前导码。相关技术中以太帧的结构如图2所示,除了包含目标数据的MAC帧之外,该以太帧还包含8个字节的前导码,该前导码包括7个字节的前同步码(取值为2bit的01循环)和1个字节的SFD(Start of Frame Delimiter,帧开始定界符,取值为10101011)。所述前导码和MAC帧前后拼接构成以太帧。所述前同步码有时也被称为前导码,此时该前导码和SFD共同构成广义的前导码,特此说明。其中,所述前同步码用于使发送端与接收端在以太帧的传输过程中保持时钟对齐,所述SFD用于向接收端指示MAC帧传输的开始,即在SFD之后传输的数据即为MAC帧。可见,所述前导码具有“时钟对齐”和“指示MAC帧传输开始”这两种功能。
在现阶段的数据传输过程中,数据接收端通常采用基于端口识别或者基于载荷识别的方案,这些识别方案需要解析接收到的数据包(如MAC帧等)实现识别。例如,接收端会在接收到图2所示的以太帧完成后,通过解析MAC帧得到其中记录的端口号(Port),进而根据该端口号确定其中所包含数据的数据类型;或者直接解析该MAC中的有效载荷(Payload),进而确定该载荷(本质上就是数据)的数据类型。可见,该方案需要解析MAC帧才能够实现获知数据类型。
对此,本说明书对相关技术中的前导码(即前述广义前导码)进行改进,提出一种包含类型识别域的新型前导码,并由发送端根据目标数据的目标类型设置所述类型识别域的取值,使得接收端可以根据该取值直接确定后续MAC帧中目标数据的目标类型,而无需解析MAC帧,从而将针对目标数据的类型识别过程进一步前置。
在本说明书实施例中,目标数据的发送端和接收端均遵守前述七层模型,其中发送端中的各个层用于按照由高到低的顺序对目标数据进行封装。其中,数据链路层将自身封装的MAC帧(其中包含所述目标数据)提供至物理层,物理层可以针对该MAC帧生成相应的前导码——该前导码和所述MAC帧即构成以太帧,进而可以将该以太帧发送至接收端,即按照先前导码后MAC帧的顺序依次发送所述前导码和MAC帧。相应的,接收端在接收到所述前导码的情况下,可以根据其中类型识别域的取值对相应的MAC帧进行分流处理。
另外,本说明书所述的发送端和接收端中的任一设备,可以是遵守前述七层模型的任意形式的电子设备。示例性的,该设备可以为中心化网络架构下的服务端设备,如可以为包含一独立主机的物理服务器,也可以为主机集群承载的虚拟服务器、云服务器等。或者,该设备也可以为中心化网络架构下的客户端设备,如可以为手机、平板设备、笔记本电脑、掌上电脑(PDAs,Personal Digital Assistants)、可穿戴设备(如智能眼镜、智能手表等)、VR(Virtual Reality,虚拟现实)设备、AR(Augmented Reality,增强现实)设备等,本说明书一个或多个实施例并不对此进行限制。示例性的,所述任一设备还可以为分布式网络架构下的电子设备,如在区块链场景下,可以为部署有区块链节点的节点设备,或者也可以为节点设备所连接的区块链客户端等,不再赘述。另外,本说明书前述发送端和接收端之间可以通过网络进行通信,该网络可以包括至少一种类型的有线或无线网络。
如前所述,相关技术中的前导码具有“时钟对齐”和“指示MAC帧传输开始”这两种功能。相对于此,本说明书所述的新型前导码除了具有这两种功能之外,还通过合理设置其中类型识别域的取值,使其具有“指示MAC帧中数据的类型”的全新功能。实际上,正是因为具有该全新作用,才使得接收方无需解析MAC帧即可快速确定目标数据的目标类型,即实现了数据类型识别的前置。
其中,为了实现上述三种功能,本说明书定义了一种新型的前导码结构,如下表1所示:
表1
如表1所示,该新型前导码中“时钟对齐域”、“类型识别域”和“开始标识域”这三个域分别对应于“时钟对齐”、“指示MAC帧中数据的类型”和“指示MAC帧传输开始”这三个功能。其中,各个域的位宽分别标识其长度,即用于表示该域共包含多少比特位。下面结合附图对该新型前导码(下称前导码)以及基于该新型前导码传输以太帧的过程进行详细说明。
请参见图3,图3是一示例性实施例提供的一种以太帧的传输方法的流程图。如图3所示,该方法应用于目标数据的发送端,具体而言,可以视为该方案应用于发送端的物理层。可以包括下述步骤302-304。
步骤302,生成包含前导码和所述MAC帧的以太帧,所述前导码中类型识别域的取值用于表征所述MAC帧所含目标数据的目标类型。
针对数据链路层封装的MAC帧,发送端可以在物理层为其生成相应的前导码,即确定该前导码中各个域(即域中每个bit位)的取值。如前所述,前导码中包含的类型识别域的取值可以用于指示MAC帧中数据的类型。因此,发送端在生成前导码之前可以先确定MAC帧中目标数据的类型(即所述目标类型),以便根据该类型确定所述类型识别域的取值。
在一实施例中,鉴于所述MAC帧通常由应用层(即前述OSI模型的最上层)生成,因此所述应用层通常已知所述目标类型,所以应用层可以为所述目标数据添加类型标识,以便所述物理层根据该类型标识确定目标数据的目标类型。其中,所述类型标识可以由发送端所维护以便物理层查询,或者也可以由应用层提供至所述物理层。或者,鉴于所述MAC帧中包含目标数据,所以发送端也可以通过解析MAC帧得到所述目标数据的数据特征,并根据该数据特征确定目标数据的目标类型。通过上述方式确定出的目标类型,即可被发送端用于确定所述类型识别域的取值。
在一实施例中,发送端可以按照预设的前导码格式生成所述前导码,预设的该前导码格式由发送端和接收端功能遵守,以便接收端能够根据该格式顺利解析接收到的前导码中各个域的取值及其含义。另外,通过预设所述前导码格式,有助于发送端快速生成前导码以及接收端快速解析所述前导码,从而一定程度上提升以太帧的传输效率。其中,所述前导码格式可以用于定义(如记录)前导码中各个域的位数(即前述比特位宽),还可以定义至少部分域的中至少部分位的取值。例如,可以定义时钟对齐域的位数和各个比特位的取值、类型识别域的位数以及开始标识域的位数和各个比特位的取值等。
其中,在生成所述前导码之前,发送端可以通过多种方式预先设置所述前导码格式。例如,发送端和接收端可以分别获取到相同的格式配置参数并分别按照该参数配置自身遵守的前导码格式;换言之,发送端可以按照获取到的格式配置参数配置自身遵守的前导码格式,而所述格式配置参数还被所述接收端用于配置自身遵守的前导码格式。其中,上述格式配置参数可以由发送端和接收端的操作人员通过区别于发送端和接收端通信的其他方式(如线下方式、使用二者分别使用的其他设备交互等)进行约定,本说明书实施例对其约定方式以及参数内容并不进行限制,可以根据实际需求进行合理选择。实际上,所述“相同的格式配置参数”应当被理解为发送端和接收端在配置完成后分别得到相同的前导码格式,而对于二者分别获取格式配置参数本身的参数数量、参数格式等,本说明书并不进行限制。示例性的,发送端的格式配置参数可以采用XML(Extensible Markup Language,可扩展标记语言)格式,而接收端的格式配置参数可以采用JSON(JavaScript ObjectNotation,JS对象表示法)格式。
再例如,考虑到发送端和接收端的配置过程可能较为复杂,而且所述前导码格式可能需要更新等,为了减少配置过程的工作量并尽量确保发送端和接收端的前导码格式相同,也可以由发送端和接收端共同参与协商所述前导码格式。即发送端可以与所述接收端通过协商过程确定所述前导码格式,通过该方式协商出的所述前导码格式由所述发送端和所述接收端分别遵守。其中,所述协商过程可以发生在发送端与接收端建立物理层连接的过程中或之后。另外,发送端和接收端在本地已经维护有(预先配置或协商得到)前导码格式的情况下,还可以通过前述协商过程对该前导码格式进行更新,不再赘述。
通过前述方式确定出的前导码格式,可以用于定义时钟对齐域中比特位的位数和各个比特位的取值、类型识别域中比特位的位数以及开始标识域中比特位的位数和各个比特位的取值等。示例性的,可以通过下述规则确定上述三个域的比特位宽及其中各个比特位的取值:
时钟对齐域:
(1)时钟对齐域的比特位宽、类型识别域的比特位宽和开始标识域的比特位宽之和(即本方案所述前导码的比特位宽)等于整数倍字节(byte)的位宽,即等于8bit的整数倍;
(2)在满足(1)的同时,时钟对齐域的比特位宽可以尽可能的短,以尽量缩短前导码长度,节省传输带宽;
(3)时钟对齐域的比特位宽确定后,其内容可以设置为全0或全1,或者也可以设置为“1010……10”,以尽可能兼容相关技术中的前同步码。
类型识别域:
考虑到类型识别域的取值用于表征数据类型,所以类型识别域的位数对应的数据类型总数可以不小于所述发送端和所述接收端之间需要发送的数据的类型总数。如前述表1所示,在类型识别域的位数为n(即类型识别域由n个连续的bit位构成)的情况下,类型识别域的位数对应的数据类型总数为2n,若所述发送端和所述接收端之间需要发送的数据的类型总数为N,则n应当满足2n≥N,即n≥log2(N)。
开始标识域:
开始标识域仅用于向接收端指示MAC帧传输开始,其比特位宽可以设置得尽量短,如其位数可以为2bit,取值可以为“00”或“11”等;当然,也可以设置为1比特或4比特等,不再赘述。
如前所述,前导码中包含类型识别域,所述按照预设的前导码格式生成前导码,即包括按照该格式确定类型识别域的取值。在一实施例中,可以确定预设的前导码格式中定义的所述类型标识域的位数,并根据所述目标类型确定所述类型标识域中各个比特位的取值;其中,所述类型标识域的位数对应的数据类型总数不小于所述发送端和所述接收端之间需要发送的数据的类型总数。以前述协商过程为例,发送端和接收端可以在协商过程确定出二者在后续数据传输过程中需要发送的数据的类型总数。其中,考虑到数据发送和接收的方向性,在发送端和接收端需要互相发送数据(即发送端需要向接收端发送数据且接收端也需要向发送端方数据)的情况下,可以确定出发送端需要向接收端发送的数据的第一类型总数以及接收端需要向发送端发送的数据的第二类型总数,然后将第一类型总数和第二类型总数中的较大者确定为二者在后续数据传输过程中需要发送的数据的类型总数。
示例性的,不妨假设预设的前导码格式中定义的表1所述n=2,则此时类型识别域的位数对应的数据类型总数为2n=4;进一步假设所述发送端和所述接收端之间需要发送的数据的类型总数为N=3,则此时类型识别域的取值与数据类型的映射关系可以参见下表2:
表2
类型识别域的取值 | 数据类型 |
00 | 类型1 |
01 | 类型2 |
11 | 类型3 |
10 | 保留 |
基于表2所示的映射关系以及前述实施例确定的目标数据的目标类型,发送端可以在生成前导码时确定出类型识别域的取值。如在目标类型为类型2的情况下,可以确定类型识别域的取值为“01”,不再赘述。由此可见,类型识别域的长度与所述发送端和所述接收端之间需要发送的数据的类型总数相对应,并能够满足该类型总数的传输需求,显然,本说明书所述的类型识别域的位数n并非固定值,从而本说明书所述的新型前导码能够适用于更多的应用场景。
如前所述,前导码中可以包含时钟对齐域,所述按照预设的前导码格式生成前导码,可以包括按照该格式确定时钟对齐域的取值。在一实施例中,发送端可以确定预设的前导码格式中定义的所述前导码中时钟对齐域的位数;或者,在前述预设的前导码格式中并未定义时钟对齐域的位数的情况下,发送端也可以根据所述发送端和所述接收端的时钟参数确定所述前导码中时钟对齐域的位数。
示例性的,在确定类型识别域的比特位宽为2后,同时考虑到开始标识域的比特位宽也为2,此时可以设置时钟对齐域的比特位宽为4。
进而,可以按照预设的前导码格式中定义的时钟对齐域的基本位取值,填充所述时钟对齐域中各个比特位的取值。可见,在预设的前导码格式中定义有时钟对齐域的位数的情况下,可以按照该位数确定相应的取值;而在预设的前导码格式中未定义时钟对齐域的位数的情况下,发送端可以根据自身与接收端的时钟参数临时确定该位数。另外,预设的前导码格式中可以定义所述时钟对齐域中各个比特位的取值,如在其中定义有时钟对齐域的位数的情况下,可以在该格式中直接记录各个比特位的取值;而在其中并未记录时钟对齐域的位数的情况下,可以定义时钟对齐域的取值以2bit的基本位取值为单位进行填充,如该前导码格式中可以记录2bit的基本位取值为“10”,则在确定出时钟对齐域的位数为4bit的情况下,可以时钟对齐域的取值即为“1010”(填充2个基本位取值);而在确定出时钟对齐域的位数为6bit的情况下,可以时钟对齐域的取值即为“101010”(填充3个基本位取值),不再赘述。可见,与前述类型识别域类似的,时钟对齐域的长度也并非固定值,同样可以根据发送端和接收端的实际情况确定,以使其能够在充分满足发送端和接收端的时钟延迟、网络时延等实际情况的同时,占用尽量少的位数。
如前所述,前导码中可以包含开始标识域,所述按照预设的前导码格式生成前导码,可以包括按照该格式确定开始标识域的取值。在一实施例中,发送端可以确定预设的前导码格式中定义的所述前导码中开始标识域的位数以及各个比特位的取值。可见,预设的前导码格式中可以定义开始标识域的位数以及各个比特位的取值,如可以直接记录开始标识域的取值为“11”。
示例性的,假设当前MAC帧中记录的MAC帧的目标类型为表2所示的类型1,此时通过前述方式生成的前导码可参见下表3:
表3
其中,时钟对齐域长度为4bit、取值为“1010”;类型识别域长度为2bit、取值为“00”,该取值用于表征MAC帧的目标类型为前述类型1;开始标识域长度为2bit、取值为“11”。
步骤304,向接收端发送所述以太帧,以由所述接收端根据所述类型识别域的取值对所述MAC帧进行分流处理。
在通过前述方式生成前导码(即其中各个域的取值)后,该前导码与所述MAC帧即在逻辑上构成以太帧,实际上并不会对二者进行“拼接”或“封装”等操作。示例性的,通过前述方式生成的MAC帧如图4所示,可见,此时前导码的位数为1字节;换言之,仅需要1字节的前导码,即可同时实现“时钟对齐”、“指示MAC帧中数据的类型”和“指示MAC帧传输开始”这三个功能,相对于相关技术中需要8个字节固定长度的前导码,显著缩短了前导码的长度,有效节省了发送端和接收端之间的通信带宽。
基于此,发送端向接收端发送所述以太帧,即按照先前导码后MAC帧的顺序依次发送二者,相应的,接收端也会按照上述顺序依次接收到二者。对于接收端而言,其可以按照前述前导码格式解析接收到的前导码,从中确定类型识别域的取值并基于该取值对MAC帧进行分流处理。其中,所述类型识别域的取值用于表征MAC帧的目标类型,所以接收端可以根据该取值确定所述目标类型,进而将当前已经接收到或者在当前时刻之后接收到的首个MAC帧(该MAC帧即为前述前导码对应的MAC帧)提供至所述目标类型对应的处理模块进行处理。
通过前述实施例,针对待发送的包含目标数据的MAC帧,发送端会生成包含前导码和所述MAC帧的以太帧,而所述前导码中类型识别域的取值可以用于表征所述目标数据的目标类型。而接收端在接收到所述以太帧包含的前导码的情况下,即可根据该前导码中所述类型识别域的取值对该以太帧中包含的MAC帧进行分流处理。
可见,本说明书提出了一种新型前导码结构,即定义了一种可以自定义类型识别域取值的前导码,使得目标数据的发送方在生成前导码时,可以根据目标数据的目标类型相应的设置其中所述类型识别域的取值。从而,目标数据的接收端可以通过该取值快速获知目标数据的目标类型,而无需等待MAC帧全部接收到完毕对其进行解析以确定目标类型。显然,相对于需要解析MAC帧才能够获知其中目标数据的目标类型的相关技术,本方案的接收端可以通过前导码快速、准确地确定后续接收到的MAC帧中目标数据的目标类型,从而将数据类型的识别过程进一步前置(相对于相关技术更加靠前),不仅有助于实现更有效的数据隔离和个性化处理,从而提升网络处理性能;而且可以进一步降低数据流处理pipeline的复杂度、简化网络设备的架构设计。换言之,本说明书通过将数据类型识别过程更加前置,使得上述两方面的收益更加明显。
请参见图5,图5是一示例性实施例提供的一种以太帧的传输方法的流程图。如图5所示,该方法应用于目标数据的接收端,具体而言,可以视为该方案应用于接收端的物理层。可以包括下述步骤502-504。
步骤502,接收以太帧包含的前导码,所述以太帧还包含封装有目标数据的媒体访问控制MAC帧,所述前导码中类型识别域的取值用于表征所述目标数据的目标类型。
步骤504,根据所述类型识别域的取值对所述MAC帧进行分流处理。
在一实施例中,接收端可以在接收到完整的以太帧之后解析其中的前导码,并根据解析得到的类型识别域的取值对MAC帧进行分流。或者,考虑到以太帧中的前导码和MAC帧被按照先后顺序依次传输至接收端,所以接收端也可以在接收到发送端发送的前导码的情况下,立即解析该前导码确定类型识别域的取值,并据此对后续接收到的MAC帧进行分流。显然,因为将对目标类型的识别过程前置,接收端无需等待MAC帧接收完毕即可开始对其进行分流,即可以在接收MAC帧的同时对其进行分流,显著提升了以太帧的处理效率。当然,无论是在接收到完整以太帧之后再解析前导码还是在接收到前导码时立即对其进行解析,都不影响后续对MAC帧的分流过程。其中,接收端可以按照自身遵守的前述前导码格式解析接收到的所述前导码,不再赘述。
在一实施例中,接收端可以根据所述类型识别域的取值确定所述目标类型,并将在所述前导码之后接收到的首个MAC帧分流至所述目标类型对应的目标处理模块。其中,接收端可以维护有类型识别域的取值与数据类型之间的第一映射关系(如前述表2),从而在解析接收到的前导码得到类型识别域的取值后,可以从第一映射关系中查询相应的目标类型。另外,接收端还可以维护数据类型与处理模块之间的第二映射关系,从而在确定出目标类型的情况下,可以从第二映射关系中查询相应的目标处理模块。
接收端接收以太帧并对MAC帧进行分流的过程可以参见图6,其中包括下述步骤602-608。
步骤602,接收端的物理端口接收到发送端发送来的以太帧。
步骤604,接收端的物理层解析以太帧中的前导码,以确定其中类型识别域的取值。
步骤606,接收端根据类型识别域的取值确定MAC帧中目标数据的目标类型。
步骤608,接收端根据目标类型将MAC帧分流至相应的处理模块进行处理。
其中,接收端可以关联处理模块,如可以在本地部署处理模块,或者连接至其他设备中部署的处理模块等。可以理解的是,鉴于MAC帧中包含被传输的数据(如前述目标数据),所以将任一类型的MAC帧分流至相应的处理模块,可以视为将相应的数据(即该MAC帧中包含的数据)分流至该处理模块。其中,任一类型可以对应于一个或多个处理模块:在任一类型对应于一个处理模块的情况下,可以将包含该类型数据的MAC帧分流至该处理模块;在任一类型对应于多个处理模块的情况下,可以将包含该类型数据的MAC帧分别分流至这些处理模块(即各个处理模块分别接收并处理同一MAC帧)。
示例性的,若所述发送端和所述接收端之间需要发送的数据的类型总数为N,则接收端所关联的处理模块的数量可以不小于N。例如,在一个数据类型的数据仅被分流至一个处理模块的情况下,若类型识别域的位数为n(2n≥N),则接收端最多可以关联2n个处理模块,如图6所示。或者,在包含某一类型的数据的MAC帧可以被分流至多个处理模块的情况下,接收端也可以关联多于2n个处理模块,不再赘述。
可见,本说明书提出了一种新型前导码结构,即定义了一种可以自定义类型识别域取值的前导码,使得目标数据的发送方在生成前导码时,可以根据目标数据的目标类型相应的设置其中所述类型识别域的取值。从而,目标数据的接收端可以通过该取值快速获知目标数据的目标类型,而无需等待MAC帧全部接收到完毕对其进行解析以确定目标类型。显然,相对于需要解析MAC帧才能够获知其中目标数据的目标类型的相关技术,本方案的接收端可以通过前导码快速、准确地确定后续接收到的MAC帧中目标数据的目标类型,从而将数据类型的识别过程进一步前置(相对于相关技术更加靠前),不仅有助于实现更有效的数据隔离和个性化处理,从而提升网络处理性能;而且可以进一步降低数据流处理pipeline的复杂度、简化网络设备的架构设计。换言之,本说明书通过将数据类型识别过程更加前置,使得上述两方面的收益更加明显。
图7是一示例性实施例提供的一种设备的示意结构图。请参考图7,在硬件层面,该设备包括处理器702、内部总线704、网络接口706、内存708以及非易失性存储器710,当然还可能包括其他功能所需要的硬件。本说明书一个或多个实施例可以基于软件方式来实现,比如由处理器702从非易失性存储器710中读取对应的计算机程序到内存708中然后运行。当然,除了软件实现方式之外,本说明书一个或多个实施例并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。图7所示的设备可以用于实现前述各个实施例对应的以太帧的传输装置。
请参考图8,在一软件实施方式中,所述以太帧的传输装置可以包括:
以太帧生成单元801,用于生成包含前导码和媒体访问控制MAC帧的以太帧,所述前导码中类型识别域的取值用于表征所述MAC帧所含目标数据的目标类型;
以太帧发送单元802,用于向接收端发送所述以太帧,以由所述接收端根据所述类型识别域的取值对所述MAC帧进行分流处理。
可选的,还包括:
目标类型确定单元803,用于根据解析所述MAC帧得到的所述目标数据的数据特征确定所述目标类型;或者,根据生成所述目标数据的应用层为所述目标数据添加的类型标识确定所述目标类型,
其中,所述目标类型用于确定所述类型识别域的取值。
可选的,所述以太帧生成单元801具体用于:
按照预设的前导码格式生成所述前导码,所述前导码格式由所述发送端和所述接收端共同遵守。
可选的,还包括:
格式配置单元804,用于按照获取到的格式配置参数配置自身遵守的前导码格式,所述格式配置参数还被所述接收端用于配置自身遵守的前导码格式;或者,
格式协商单元805,用于与所述接收端通过协商过程确定所述前导码格式,协商出的所述前导码格式由所述发送端和所述接收端分别遵守。
可选的,所述以太帧生成单元801具体用于:
确定预设的前导码格式中定义的所述类型标识域的位数,并根据所述目标类型确定所述类型标识域中各个比特位的取值;其中,所述类型标识域的位数对应的数据类型总数不小于所述发送端和所述接收端之间需要发送的数据的类型总数。
可选的,所述以太帧生成单元801具体用于:
确定预设的前导码格式中定义的所述前导码中时钟对齐域的位数,或者根据所述发送端和所述接收端的时钟参数确定所述前导码中时钟对齐域的位数;
按照预设的前导码格式中定义的时钟对齐域的基本位取值,填充所述时钟对齐域中各个比特位的取值。
可选的,所述以太帧生成单元801具体用于:
确定预设的前导码格式中定义的所述前导码中开始标识域的位数以及各个比特位的取值。
请参考图9,在一软件实施方式中,所述以太帧的传输装置可以包括:
前导码接收单元901,用于接收以太帧包含的前导码,所述以太帧还包含封装有目标数据的媒体访问控制MAC帧,所述前导码中类型识别域的取值用于表征所述目标数据的目标类型;
MAC帧分流单元902,用于根据所述类型识别域的取值对所述MAC帧进行分流处理。
可选的,所述MAC帧分流单元902具体用于:
根据所述类型识别域的取值确定所述目标类型,并将在所述前导码之后接收到的首个MAC帧分流至所述目标类型对应的目标处理模块。
本说明书还提出了一种电子设备,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器通过运行所述可执行指令以实现如前述任一项所述的方法。
本说明书还提出了一种计算机可读存储介质,其上存储有计算机指令,该指令被处理器执行时实现如前述任一项所述方法的步骤。
本说明书还提出了一种计算机程序产品,包括计算机程序和/或指令,所述计算机程序和/或指令被处理器执行时实现如前述任一项所述的方法。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
在一个典型的配置中,计算机包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带、磁盘存储、量子存储器、基于石墨烯的存储介质或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
在本说明书一个或多个实施例使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书一个或多个实施例。在本说明书一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本说明书一个或多个实施例可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施例范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
以上所述仅为本说明书一个或多个实施例的较佳实施例而已,并不用以限制本说明书一个或多个实施例,凡在本说明书一个或多个实施例的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本说明书一个或多个实施例保护的范围之内。
Claims (12)
1.一种以太帧的传输方法,其特征在于,包括:
生成包含前导码和媒体访问控制MAC帧的以太帧,所述前导码中类型识别域的取值用于表征所述MAC帧所含目标数据的目标类型;
向接收端发送所述以太帧,以由所述接收端根据所述类型识别域的取值对所述MAC帧进行分流处理。
2.根据权利要求1所述的方法,其特征在于,还包括:
根据解析所述MAC帧得到的所述目标数据的数据特征确定所述目标类型;或者,根据生成所述目标数据的应用层为所述目标数据添加的类型标识确定所述目标类型,
其中,所述目标类型用于确定所述类型识别域的取值。
3.根据权利要求1所述的方法,其特征在于,生成所述前导码,包括:
按照预设的前导码格式生成所述前导码,所述前导码格式由所述发送端和所述接收端共同遵守。
4.根据权利要求3所述的方法,其特征在于,还包括:
按照获取到的格式配置参数配置自身遵守的前导码格式,所述格式配置参数还被所述接收端用于配置自身遵守的前导码格式;或者,
与所述接收端通过协商过程确定所述前导码格式,协商出的所述前导码格式由所述发送端和所述接收端分别遵守。
5.根据权利要求3所述的方法,其特征在于,所述按照预设的前导码格式生成所述前导码,包括:
确定预设的前导码格式中定义的所述类型标识域的位数,并根据所述目标类型确定所述类型标识域中各个比特位的取值;其中,所述类型标识域的位数对应的数据类型总数不小于所述发送端和所述接收端之间需要发送的数据的类型总数。
6.根据权利要求3所述的方法,其特征在于,所述按照预设的前导码格式生成所述前导码,包括:
确定预设的前导码格式中定义的所述前导码中时钟对齐域的位数,或者根据所述发送端和所述接收端的时钟参数确定所述前导码中时钟对齐域的位数;
按照预设的前导码格式中定义的时钟对齐域的基本位取值,填充所述时钟对齐域中各个比特位的取值。
7.根据权利要求3所述的方法,其特征在于,所述按照预设的前导码格式生成所述前导码,包括:
确定预设的前导码格式中定义的所述前导码中开始标识域的位数以及各个比特位的取值。
8.一种以太帧的传输方法,其特征在于,包括:
接收以太帧包含的前导码,所述以太帧还包含封装有目标数据的媒体访问控制MAC帧,所述前导码中类型识别域的取值用于表征所述目标数据的目标类型;
根据所述类型识别域的取值对所述MAC帧进行分流处理。
9.根据权利要求8所述的方法,其特征在于,根据所述类型识别域的取值对所述MAC帧进行分流处理,包括:
根据所述类型识别域的取值确定所述目标类型,并将在所述前导码之后接收到的首个MAC帧分流至所述目标类型对应的目标处理模块。
10.一种电子设备,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器通过运行所述可执行指令以实现如权利要求1-9中任一项所述的方法。
11.一种计算机可读存储介质,其上存储有计算机指令,其特征在于,该指令被处理器执行时实现如权利要求1-9中任一项所述方法的步骤。
12.一种计算机程序产品,包括计算机程序和/或指令,其特征在于,所述计算机程序和/或指令被处理器执行时实现如权利要求1至9中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310528819.4A CN116567096A (zh) | 2023-05-09 | 2023-05-09 | 以太帧的传输方法、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310528819.4A CN116567096A (zh) | 2023-05-09 | 2023-05-09 | 以太帧的传输方法、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116567096A true CN116567096A (zh) | 2023-08-08 |
Family
ID=87492620
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310528819.4A Pending CN116567096A (zh) | 2023-05-09 | 2023-05-09 | 以太帧的传输方法、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116567096A (zh) |
-
2023
- 2023-05-09 CN CN202310528819.4A patent/CN116567096A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108965484B (zh) | 一种物联网数据的传输方法、系统及终端 | |
CN110022289B (zh) | 数据传输方法、装置及系统 | |
CN112688967B (zh) | 一种物联网数据处理方法、装置、设备及存储介质 | |
WO2019000866A1 (zh) | 一种数据处理方法及物联网网关 | |
CN110740481B (zh) | 基于服务质量的数据处理方法、设备和计算机存储介质 | |
CN110297944B (zh) | 分布式xml数据处理方法及系统 | |
US20210083977A1 (en) | Packet Transmission Method, and Communications Apparatus and System | |
CN113079082B (zh) | 消息传输方法及装置 | |
CN111294235A (zh) | 数据处理方法、装置、网关及可读存储介质 | |
CN111541521B (zh) | 一种数据包长度识别方法及系统 | |
AU2021277366A1 (en) | Port status configuration method, apparatus,and system, and storage medium | |
CN112422485B (zh) | 一种传输控制协议的通信方法及装置 | |
CN110661745B (zh) | 一种开销传输方法、装置、设备及计算机可读存储介质 | |
CN109639555B (zh) | 链路层报文生成方法、链路层报文生成装置及终端设备 | |
CN116567096A (zh) | 以太帧的传输方法、电子设备及存储介质 | |
CN110545556B (zh) | 一种mac ce、信息发送方法、接收方法及通信设备 | |
US20240015780A1 (en) | Communication method and communication device | |
CN114168315A (zh) | 基于多核的报文处理方法、装置、电子设备及存储介质 | |
CN113395730B (zh) | 一种物联网终端网络参数上报方法、装置和存储介质 | |
CN110730126B (zh) | 链路汇聚系统、数据帧的发送或接收方法及其装置 | |
CN116319619A (zh) | 网络处理模块、数据处理方法、网络节点和存储介质 | |
CN112532644A (zh) | 一种基于Tbox新能源汽车的实时数据分析系统 | |
CN112637151A (zh) | 数据消息的传输方法、终端设备、服务器及存储介质 | |
CN114079675B (zh) | 报文处理方法、装置、终端设备及移动宽带上网设备 | |
CN114928581B (zh) | 基于autosar架构的can报文转发方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |