CN115460298A - 一种以太网数据封装发送方法 - Google Patents
一种以太网数据封装发送方法 Download PDFInfo
- Publication number
- CN115460298A CN115460298A CN202211058366.5A CN202211058366A CN115460298A CN 115460298 A CN115460298 A CN 115460298A CN 202211058366 A CN202211058366 A CN 202211058366A CN 115460298 A CN115460298 A CN 115460298A
- Authority
- CN
- China
- Prior art keywords
- length
- field
- ethernet
- packet
- crc
- 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 39
- 238000005538 encapsulation Methods 0.000 title claims abstract description 30
- 239000012634 fragment Substances 0.000 claims abstract description 18
- 230000005540 biological transmission Effects 0.000 claims description 5
- 230000009191 jumping Effects 0.000 claims description 4
- 238000012545 processing Methods 0.000 claims description 4
- 238000013467 fragmentation Methods 0.000 abstract description 7
- 238000006062 fragmentation reaction Methods 0.000 abstract description 7
- 238000004891 communication Methods 0.000 abstract description 4
- 238000012544 monitoring process Methods 0.000 abstract description 3
- MHABMANUFPZXEB-UHFFFAOYSA-N O-demethyl-aloesaponarin I Natural products O=C1C2=CC=CC(O)=C2C(=O)C2=C1C=C(O)C(C(O)=O)=C2C MHABMANUFPZXEB-UHFFFAOYSA-N 0.000 description 3
- 230000006855 networking Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000000354 decomposition reaction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
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/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/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明针对车载以太网网络,提出了一种以太网数据封装发送方法,该方法能够将车辆的状态信号按照设计的格式进行封装,实现车辆状态信号发送和接收解析,该方法包括在以太网标准格式的Payload部分,定义一个以太网数据包包头,所述以太网数据包包头包括:协议版本号和版本管理字段Version、CRC算法长度字段CRC_Length、CRC结果值字段CRC_Value、报文序列号字段Counter、数据字节长度字段Length、报文作用字段MessageType、分片报文字段Frag_set以及分片包偏移量字段Frag_offset。本发明对以太网通信功能安全要求分解,满足ASIL B等级要求,并支持CRC算法类型和长度选择,解决需使用不同端口号监听不同数据带来的端口资源消耗实现在应用层层级的以太网报文分片,避免使用TCP分片和IP分片带来的对控制器缓存要求。
Description
技术领域
本发明属于汽车智能网联的技术领域,具体涉及一种以太网数据封装发送方法。
背景技术
随着智能网联汽车发展,整车通信网络在传统CAN网络基础上逐步引入更高带宽的车载通信技术,如车载以太网。与传统消费领域以太网网络组网相比,车载以太网网络具备安全要求高、节点数量固定等特点。因此需设计一种基于车载以太网网络的以太网配置设计方法。
针对以太网传输,专利号CN104010049B提供的方法可概括为:基于SDN的以太网IP报文封装方法及网络隔离和DHCP实现方法,解决上述由于报文二层头部封装引人的转发流程复杂和传输效率降低等技术问题。该专利仅介绍了从物理层到数据链路层和TCP/IP头的封装步骤,并未描述以太网数据Payload中的详细封装方法。专利号CN101119290B介绍的方法可概括为:路由器在进行SSM转发IP报文的以太网封装时,将SS-DMAC作为DMAC标识封装到报文中,使得以太网报文的DMAC中含有组播源SIP的信息,从而使以太网交换设备在进行基于VLAN+DMAC的组播转发时,能够支持SSM。该专利介绍了将特定标志位封装到以太网的报文Payload中,但并未介绍用于信号传输的以太网数据封装方法。
传统的互联网协议有多种类型,如RTP、HTTPS、FTP等,该类协议可实现对音视频、网页、文件等数据类型的传输。使用车载以太网在车载网络中传输以太网数据时,除上述的数据类型外,还需要传输车内的信号,比如车辆运行相关的状态信号,该类信号不适用于传统以太网协议,故需设计一种基于车载以太网的以太网数据封装方法,提供一种标准格式用于封装车载系统中的信号,并进行传输。针对以太网数据封装,AUTOSAR组织定义了一种SOME/IP协议,该协议定义了使用SOME/IP协议传输时,以太网数据的封装格式。但该协议存在逻辑较复杂、资源消耗较大等特征,对于传统车载网络控制器,特别是针对仅具备MCU的控制器不适用。
发明内容
本发明的目的是:针对车载以太网网络,提出了一种以太网数据封装发送方法,该方法能够将车辆的状态信号按照设计的格式进行封装,实现车辆状态信号发送和接收解析,解决背景技术中指出的问题。
为实现上述技术目的,本发明采用的技术方案如下:
本发明的一个方面,提供了一种以太网数据封装方法,适用于TCP或UDP协议,包括以下步骤:
在以太网标准格式的Payload部分,定义一个以太网数据包包头,所述以太网数据包包头包括:用于表征协议版本号和版本管理的Version字段、用于表征所使用CRC算法的长度的CRC_Length字段、用于表征经特定CRC算法后的CRC结果值CRC_Value字段、用于表征该帧报文的序列号的Counter字段、用于表征该帧数据字节长度的Length字段、用于区分不同作用的报文的MessageType字段、用于表征该帧报文是否为分片报文的Frag_set字段以及用于表征分片包偏移量的Frag_offset字段。
作为优选的技术方案,所述Version字段的长度定义为一个字节,默认填充零。
作为优选的技术方案,所述CRC_Length字段的长度定义为一个字节,表征的CRC长度为8bit、16bit、32bit;
CRC_Value字段的长度定义为四个字节,为计算后的CRC结果,采用IEEE-802.3CRC32 Ethernet Standard算法。
作为优选的技术方案,所述Counter字段的长度定义为2个字节,计数从0至0xFFFF循环。
作为优选的技术方案,所述Length字段的长度定义为4个字节。
作为优选的技术方案,所述MessageType字段的长度定义为4个字节,用于区别数据包。
作为优选的技术方案,所述Frag_set字段的长度可以定义为2个字节,表达该帧以太网报文是一个分片包或是一个未分片包;
Frag_offset字段的长度可以定义为2个字节,用于表征分片包偏移量;并将实际分片包长度除以8,最大为512k分片。
作为优选的技术方案,在定义每包最大长度时,其长度为8的整数倍。
本发明的另一个方面,提供了一种以太网数据发送方法,应用上述的一种以太网数据封装方法,包括以下步骤:
S101,判断所需发送数据的长度,若发送的以太网数据包的长度加包头长度超过MAX_PACKET_SIZE,则跳转至步骤S102,否则跳转至步骤S103;
S102,当需要分包处理时,将包按照MAX_PACKAGE_SIZE进行拆分,同时需定义最大包大小MAX_PACKAGE_SIZE;
S103,将拆分后的数据包按照上述的一种以太网数据封装方法进行封装发送。
作为优选的技术方案,最大包大小MAX_PACKAGE_SIZE为8的整数倍。
采用上述技术方案的发明,具有如下优点:
(1)采用本技术方案中的CRC、Length、Counter字段,可支持功能安全对以太网通信的功能安全要求分解,并满足ASIL B等级要求,并可支持CRC算法类型和长度可选;
(2)本技术方案中的MessageType字段可支持使用一个端口号监听并区分不同物理含义的以太网报文,从而解决需使用不同端口号监听不同数据带来的端口资源消耗;
(3)本技术方案利用在以太网报文的数据场定义分片字段和偏移量字段,可实现在应用层层级的以太网报文分片,避免使用TCP分片和IP分片带来的对控制器缓存要求。
附图说明
本发明可以通过附图给出的非限定性实施例进一步说明;
图1为本发明提供的一种以太网报文封装格式示意图;
图2为本发明提供的以太网数据包发送处理流程。
具体实施方式
以下将结合附图和具体实施例对本发明进行详细说明,需要说明的是,在附图或说明书描述中,相似或相同的部分都使用相同的图号,附图中未绘示或描述的实现方式,为所属技术领域中普通技术人员所知的形式。另外,实施例中提到的方向用语,例如“上”、“下”、“顶”、“底”、“左”、“右”、“前”、“后”等,仅是参考附图的方向,并非用来限制本发明的保护范围。
实施例1
图1中所述的Ethernet Header包含以太网标准数据帧中的MAC地址、VLAN等字段;
所述IP Header包含以太网数据帧中的IP地址;
所述TCP/UDP Header包含以太网的TCP和UDP的字段;
所述PacketHeader包含以太网数据包包头;
本实施例提供了一种以太网数据封装方法,该设计方法针对以太网的Payload部分进行设计。在以太网标准格式的Payload部分,定义一个以太网数据包包头,该包头的目的是识别该报文的用途,指示实际有效数据的长度,携带CRC校验信息以及报文计数器Counter,数据偏移量。
所述以太网数据封装方法,适用于TCP或UDP协议。
所述以太网数据封装方法中,在以太网标准格式的Payload部分,除以太网数据包包头,其余部分为需要传输的具体信号。
所述以太网数据包头中,包含了一个Version字段,用于表征协议版本号和版本管理。所述Version字段的长度可以定义为一个字节,默认填充零;
所述以太网数据包头中,包含了一个CRC_Length字段,用于表征所使用CRC算法的长度。所述CRC_Length字段的长度可以定义为一个字节,通常表征的CRC长度为8bit、16bit、32bit,可分别用0x01、0x10、0x11表示;
所述以太网数据包头中,包含了一个CRC_Value字段,用于表征经特定CRC算法后的CRC结果值。所述CRC_Value字段的长度可以定义为四个字节,为计算后的CRC结果,推荐但不限于采用IEEE-802.3CRC32 Ethernet Standard算法;
所述以太网数据包头中,包含了一个Counter字段,用于表征该帧报文的序列号。所述Counter字段的长度可以定义为2个字节,计数可从0至0xFFFF循环;
所述以太网数据包头中,包含了一个Length字段,用于表征该帧数据字节长度。所述Length字段的长度可定义为4个字节;
所述以太网数据包头中,包含了一个MessageType字段,用于区分不同作用的报文。所述MessageType字段的长度可定义为4个字节,可通过其数值区别数据包,如0x0001可表达一个10ms周期发送的以太网报文,0x0002可表达一个20ms周期发送的以太网报文,0x0003可表达一个事件触发型的以太网报文;
所述以太网数据包头中,包含了一个Frag_set字段,用于表征该帧报文是否为分片报文。所述Frag_set字段的长度可以定义为2个字节,可使用0x0001表达该帧以太网报文是一个分片包,00x0000表达该帧以太网报文是一个未分片包;
所述以太网数据包头中,包含了一个Frag_offset字段,用于表征该帧报文在分片报文中的分片顺序。所述Frag_offset字段的长度可以定义为2个字节,用于表征分片包偏移量,为缩短该字段的长度,需将实际分片包长度除以8,最大支持512k分片;
在定义每包最大长度时,其长度需是8的整数倍。
可以在车内禁用IP分片的情况下,在以太网报文应用层设计一种分片方法,用于传输大数据量数据。在上述以太网数据包头中定义了数据偏移标志位和偏移量,用于识别是否为分片报文及分片顺序。
实施例2
如图2所示,本实施例提供了一种以太网报文的分片封装发送方法,该方法可应用上述实施例的一种以太网数据封装方法,包括以下步骤:
S101,判断所需发送数据的长度,如果发送的以太网数据包的长度加包头长度超过MAX_PACKET_SIZE,就需要分包,否则按照S103规定的步骤直接发送;
S102,当需要分包处理时,将包按照MAX_PACKAGE_SIZE进行拆分,同时需定义最大包大小MAX_PACKAGE_SIZE,该值需是8的整数倍,比如定义为1472;
S103,将拆分后的数据包按照前述实施步骤规定的报文封装方法进行封装发送。
举例说明如下:
举例一:发送1000字节的数据封装方式
message_type | length | frag_set | frag_offset | payload |
0x100 | 1000 | 0 | 0 | 1000字节信息 |
举例二:发送4000字节的数据封装方式
MAX_PACKAGE_SIZE为1472,包头大小为20,因包大小需为8的整数倍,所以每包payload大小为1448,4000字节需要拆分为3个包来发送
第一个包:
message_type | length | frag_set | frag_offset | payload |
0x200 | 1448 | 1 | 0 | 1448字节信息 |
第二个包:
message_type | length | frag_set | frag_offset | payload |
0x200 | 1448 | 1 | 181 | 1448字节信息 |
第三个包:
以上对本发明提供的一种基于智能驾驶的纯电动车整车功能安全概念分析方法进行了详细介绍。具体实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
Claims (10)
1.一种以太网数据封装方法,适用于TCP或UDP协议,其特征在于,包括以下步骤:
在以太网标准格式的Payload部分,定义一个以太网数据包包头,所述以太网数据包包头包括:用于表征协议版本号和版本管理的Version字段、用于表征所使用CRC算法的长度的CRC_Length字段、用于表征经特定CRC算法后的CRC结果值CRC_Value字段、用于表征该帧报文的序列号的Counter字段、用于表征该帧数据字节长度的Length字段、用于区分不同作用的报文的MessageType字段、用于表征该帧报文是否为分片报文的Frag_set字段以及用于表征分片包偏移量的Frag_offset字段。
2.根据权利要求1所述的一种以太网数据封装方法,其特征在于,所述Version字段的长度定义为一个字节,默认填充零。
3.根据权利要求1所述的一种以太网数据封装方法,其特征在于,所述CRC_Length字段的长度定义为一个字节,表征的CRC长度为8bit、16bit、32bit;
CRC_Value字段的长度定义为四个字节,为计算后的CRC结果,采用IEEE-802.3CRC32Ethernet Standard算法。
4.根据权利要求1所述的一种以太网数据封装方法,其特征在于,所述Counter字段的长度定义为2个字节,计数从0至0xFFFF循环。
5.根据权利要求1所述的一种以太网数据封装方法,其特征在于,所述Length字段的长度定义为4个字节。
6.根据权利要求1所述的一种以太网数据封装方法,其特征在于,所述MessageType字段的长度定义为4个字节,用于区别数据包。
7.根据权利要求1所述的一种以太网数据封装方法,其特征在于,所述Frag_set字段的长度可以定义为2个字节,表达该帧以太网报文是一个分片包或是一个未分片包;
Frag_offset字段的长度可以定义为2个字节,用于表征分片包偏移量;并将实际分片包长度除以8,最大为512k分片。
8.根据权利要求1所述的一种以太网数据封装方法,其特征在于,在定义每包最大长度时,其长度为8的整数倍。
9.一种以太网数据发送方法,其特征在于,应用权利要求1-8中任一项所述的一种以太网数据封装方法,包括以下步骤:
S101,判断所需发送数据的长度,若发送的以太网数据包的长度加包头长度超过MAX_PACKET_SIZE,则跳转至步骤S102,否则跳转至步骤S103;
S102,当需要分包处理时,将包按照MAX_PACKAGE_SIZE进行拆分,同时需定义最大包大小MAX_PACKAGE_SIZE;
S103,将拆分后的数据包按照权利要求1-8中任一项所述的一种以太网数据封装方法进行封装并发送。
10.根据权利要求9所述的一种以太网数据发送方法,其特征在于,最大包大小MAX_PACKAGE_SIZE为8的整数倍。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211058366.5A CN115460298A (zh) | 2022-08-31 | 2022-08-31 | 一种以太网数据封装发送方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211058366.5A CN115460298A (zh) | 2022-08-31 | 2022-08-31 | 一种以太网数据封装发送方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115460298A true CN115460298A (zh) | 2022-12-09 |
Family
ID=84300598
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211058366.5A Pending CN115460298A (zh) | 2022-08-31 | 2022-08-31 | 一种以太网数据封装发送方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115460298A (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101783772A (zh) * | 2010-03-23 | 2010-07-21 | 华为技术有限公司 | 报文封装和解封装方法、装置及系统 |
CN102025601A (zh) * | 2009-09-17 | 2011-04-20 | 中兴通讯股份有限公司 | 一种数据封装方法及系统 |
CN107483279A (zh) * | 2017-10-10 | 2017-12-15 | 福建星网智慧软件有限公司 | 一种基于以太网侦的本地批量操作网络设备的方法 |
CN110149242A (zh) * | 2019-04-25 | 2019-08-20 | 中国人民解放军战略支援部队信息工程大学 | 一种支持srio与以太网的协议转换功能验证装置及方法 |
-
2022
- 2022-08-31 CN CN202211058366.5A patent/CN115460298A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102025601A (zh) * | 2009-09-17 | 2011-04-20 | 中兴通讯股份有限公司 | 一种数据封装方法及系统 |
CN101783772A (zh) * | 2010-03-23 | 2010-07-21 | 华为技术有限公司 | 报文封装和解封装方法、装置及系统 |
CN107483279A (zh) * | 2017-10-10 | 2017-12-15 | 福建星网智慧软件有限公司 | 一种基于以太网侦的本地批量操作网络设备的方法 |
CN110149242A (zh) * | 2019-04-25 | 2019-08-20 | 中国人民解放军战略支援部队信息工程大学 | 一种支持srio与以太网的协议转换功能验证装置及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7688857B2 (en) | Data transmission method using packet aggregation | |
US11005905B2 (en) | Data processing apparatus, data processing method, and program | |
US9236936B2 (en) | System and method for low-complexity, high-speed preprocessing of encapsulated packets in a broadband communications network | |
US7990971B2 (en) | Packet processing apparatus and method codex | |
EP2383957B1 (en) | Method and apparatus for formatting headers in a communication frame | |
CN107493238A (zh) | 一种网络拥塞控制方法、设备及系统 | |
WO2020150872A1 (en) | Ethernet and controller area network protocol interconversion for in-vehicle networks | |
WO2010031324A1 (zh) | 数据传输的方法、装置和系统 | |
CN107079017B (zh) | 一种报文转换方法及装置 | |
WO2006019501A2 (en) | Efficient data transmission by data aggregation | |
US20130136003A1 (en) | Method and Apparatus for Ethernet Data Compression | |
WO2009033371A1 (fr) | Système et appareil de remplissage d'unité de données de protocole (pdu) et son procédé de traitement correspondant | |
US9036640B2 (en) | Encapsulation of data | |
CN110012314B (zh) | 一种基于dtmb的ip传输方法及系统 | |
EP4274123A1 (en) | Packet encapsulation and de-encapsulation method and device, storage medium, and electronic device | |
US11736977B2 (en) | Method for header compression of ethernet frame, terminal device | |
CN112737967A (zh) | 一种基于Flow Director实现IPv4 GRE报文负载均衡的方法 | |
CN115460298A (zh) | 一种以太网数据封装发送方法 | |
WO2022193767A1 (zh) | 一种以太报文的处理方法以及相关设备 | |
CN115314450A (zh) | 直通转发模式低速率端口适配高速率端口的实现方法 | |
US8583822B2 (en) | Method and system for minimum frame size support for a communication protocol encapsulated over Ethernet | |
KR100411517B1 (ko) | 병렬 냇-피티를 이용한 인터넷 프로토콜 변환장치 및 그를이용한 인터넷 프로토콜 버전 변환 방법 | |
EP3664371B1 (en) | Switching method and apparatus | |
JP5588795B2 (ja) | 伝送装置 | |
CN117041143A (zh) | 一种基于标签交换技术实现的卫星数据转发方法和系统 |
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 |