车载SOA基础详解之四—车载以太网SOMEIP报文详解

目录

1 概述

2  以太网的帧结构

3 带VLAN标签的以太网帧

4 SOME/IP协议详解

4.1 SOME/IP服务接口类型

4.1.1 Method(方法)

4.1.2 Event(事件)

4.1.3 Field(字段)

4.2 SOME/IP报文格式解析

5 一个完整的报文解析

5.1 数据链路层 (以太网帧 + VLAN)

5.2 网络层 (IPv4)

5.3 传输层(TCP)

5.4 应用层(SOME/IP)

6 总结


1 概述

    在之前的文章中,我们探讨了车载SOA的基础概念。作为SOA通信的核心实现协议之一,SOME/IP(Scalable service-Oriented MiddlewarE over IP)在基于以太网的车载通信中扮演着至关重要的角色。本文将深入SOME/IP协议的内部,通过详细解析其报文格式,并结合实际的以太网数据帧,带您一窥车载以太网通信的全貌。

2  以太网的帧结构

    所有上层协议,包括SOME/IP,最终都需要封装在以太网帧中在物理介质上传输。理解以太网帧结构是进行更深层次报文分析的基础。

    一个完整的以太网II帧格式包含以下字段:

字段 (Field) 长度 (Bytes) 描述 (Description)
前导码 (Preamble) 7 同步时钟,值为 0xAA
帧起始定界符 (SFD) 1 标识帧的开始,值为 0xAB
目标MAC地址 6 接收方物理地址
源MAC地址 6 发送方物理地址
帧类型 (EtherType) 2 上层协议类型 (如 0x0800 代表 IPv4)
IP数据 (Payload) 46~1500 网络层数据包,SOME/IP报文就封装在此处
帧校验序列 (FCS) 4 循环冗余校验,用于检错
帧间隙 (IFG) >=12 帧与帧之间的间隔
  • 最小帧长度:为了保证冲突检测机制的有效性,传统以太网规定整个帧(从目标MAC地址到FCS)的最小长度为64字节。计算方式为:6 (目标MAC) + 6 (源MAC) + 2 (类型) + 46 (数据) + 4 (FCS) = 64 字节。如果上层数据不足46字节,则需要填充(Padding)到46字节。

  • 最大帧长度:标准以太网帧的最大长度为1518字节,计算方式为:6 + 6 + 2 + 1500 (最大数据) + 4 = 1518 字节。

3 带VLAN标签的以太网帧

     在复杂的车载网络环境中,为了进行网络隔离和管理(如区分娱乐系统和自动驾驶系统的流量),我们通常会使用VLAN技术。IEEE 802.1Q协议定义了如何在标准以太网帧中插入VLAN标签。

VLAN标签位于源MAC地址之后,帧类型(EtherType)之前,共4个字节:

  • TPID (Tag Protocol Identifier, 2字节):标识这是一个带VLAN标签的帧,固定值为 0x8100

  • TCI (Tag Control Information, 2字节)

    • PRI (Priority, 3位):优先级,用于服务质量(QoS)。

    • CFI (Canonical Format Indicator, 1位):标准格式指示符,在以太网中通常为0。

    • VID (VLAN Identifier, 12位):VLAN ID,标识数据帧所属的VLAN,范围从0到4095。

    VLAN标签的详细介绍在本专栏的第二讲有详细的讲解,如有其它疑问可以参考本专栏第二讲相关内容。

4 SOME/IP协议详解

    SOME/IP协议位于OSI模型的第5-7层(会话层、表示层、应用层),其报文作为“IP数据”被封装在TCP或UDP段中。SOME/IP定义了一套标准化的通信模式和方法,使得服务与客户端之间能够高效地交互。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

车载网络小D

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值