当前位置: 首页 > article >正文

车载以太网测试-14【交换机以及MAC地址表】

目录

  • 1 摘要
  • 2 车载交换机概述
    • 2.1 OSI 模型中的位置
    • 2.2 车载交换机在数据链路层的功能
  • 3 车载交换机的工作原理
    • 3.1 车载交换机的关键工作步骤
    • 3.2 车载交换机的关键技术
    • 3.3 车载交换机的工作示例
    • 3.4 MAC地址表
      • 3.4.1 MAC 地址表的工作原理
      • 3.4.2 MAC 地址表示例
      • 3.4.3 MAC 地址表的超时机制
  • 4 总结

1 摘要

车载交换机 工作在 OSI 模型数据链路层(Data Link Layer),具体来说是数据链路层的 MAC 子层。车载交换机在数据交互过程中扮演着很重要的角色,在之前的专题有介绍过以太网的单播、组播、广播;本文重点对车载交换机原理进行详细介绍。
上文专题如下:
车载以太网测试-6【数据链路层】
车载以太网测试-7【数据链路层】补充-单播、组播、广播

2 车载交换机概述

2.1 OSI 模型中的位置

以下是车载交换机在 OSI 模型中的位置及其相关功能:

OSI 模型层功能描述车载交换机的角色
物理层(Physical Layer)负责比特流的传输,定义电气、机械和时序特性(如电缆、光纤、无线信号)。车载交换机通过物理端口(如 RJ45 或 M12)连接车载设备,实现物理层的数据传输。
数据链路层(Data Link Layer)负责帧的传输,提供错误检测和流量控制,分为 LLC 子层MAC 子层车载交换机主要工作在 MAC 子层,负责 MAC 地址的学习、帧的转发和 VLAN 的管理。
网络层(Network Layer)负责数据包的路由和转发,实现不同网络之间的通信(如 IP 协议)。车载交换机不直接处理网络层协议,但可以支持 VLAN 和 TSN 等高级功能。
传输层(Transport Layer)提供端到端的通信服务(如 TCP 和 UDP)。车载交换机不处理传输层协议。
会话层(Session Layer)管理应用程序之间的会话(如建立、维护和终止会话)。车载交换机不处理会话层协议。
表示层(Presentation Layer)负责数据格式的转换(如加密、压缩)。车载交换机不处理表示层协议。
应用层(Application Layer)提供应用程序之间的通信服务(如 HTTP、FTP)。车载交换机不处理应用层协议。

2.2 车载交换机在数据链路层的功能

车载交换机在数据链路层的主要功能包括:

(1)MAC 地址学习

  • 交换机通过读取数据帧的 源 MAC 地址,动态更新 MAC 地址表,记录每个设备的 MAC 地址与其连接端口的映射关系。

(2)帧的转发

  • 交换机根据 目标 MAC 地址 查询 MAC 地址表,将数据帧从输入端口转发到正确的输出端口。
  • 如果目标 MAC 地址不在表中,交换机会将数据帧 广播 到所有端口(泛洪)。

(3)VLAN 管理

  • 交换机支持 VLAN(虚拟局域网),通过 VLAN ID 将网络划分为多个逻辑段,隔离不同类型的流量(如控制信号、视频流、诊断数据)。

(4)流量控制

  • 交换机通过 IEEE 802.3x 流量控制优先级队列 管理网络流量,避免拥塞和数据丢失。

(5)错误检测

  • 交换机通过 CRC(循环冗余校验) 检测数据帧是否在传输过程中发生错误,并丢弃错误的数据帧。

车载交换机主要工作在 数据链路层(MAC 子层),负责 MAC 地址的学习、帧的转发、VLAN 管理、流量控制和错误检测。虽然它主要处理数据链路层的任务,但也支持一些高级功能(如 TSN 和网络管理),以满足现代车载网络的需求。

3 车载交换机的工作原理

车载交换机 是车辆电子网络中的核心设备,负责在车载网络中的各个设备(如 ECU、传感器、摄像头等)之间高效、可靠地传输数据。以下是车载交换机的工作原理详解:

3.1 车载交换机的关键工作步骤

车载交换机的工作原理可以分为以下几个关键步骤:
(1)数据接收

  • 当数据包从某个端口进入交换机时,交换机会读取数据包的 源 MAC 地址目标 MAC 地址
  • 交换机会将源 MAC 地址与接收端口绑定,并更新其 MAC 地址表(也称为转发表)。
    (2)MAC 地址表查询
  • 交换机根据目标 MAC 地址查询 MAC 地址表,确定数据包应该转发到哪个端口。
  • 如果目标 MAC 地址不在表中,交换机会将数据包 广播 到所有端口(泛洪)。
    (3)数据转发
  • 如果目标 MAC 地址在表中,交换机会将数据包转发到对应的端口。
  • 如果目标 MAC 地址与源 MAC 地址位于同一端口,交换机会丢弃数据包(避免环路)。
    (4)流量控制
  • 交换机通过 流量控制机制(如 IEEE 802.3x)管理网络流量,避免端口拥塞。
  • 如果某个端口负载过高,交换机会通知发送设备暂停发送数据。
    (5)错误检测与处理
  • 交换机通过 CRC(循环冗余校验) 检测数据包是否在传输过程中发生错误。
  • 如果检测到错误,交换机会丢弃错误的数据包。
    (6)时间同步(TSN 支持)
  • 对于支持 时间敏感网络(TSN) 的交换机,交换机会根据 IEEE 802.1AS 等标准实现时间同步。
  • 交换机通过 时间戳调度机制 确保实时数据(如传感器数据、控制信号)的低延迟传输。

3.2 车载交换机的关键技术

车载交换机的工作原理依赖于以下关键技术:

(1)MAC 地址表

  • MAC 地址表记录了每个设备的 MAC 地址与其连接的交换机端口的映射关系。
  • 交换机通过学习和更新 MAC 地址表,实现高效的数据转发。

(2)VLAN(虚拟局域网)

  • VLAN 技术将网络划分为多个逻辑段,隔离不同类型的流量(如控制信号、视频流、诊断数据)。
  • 交换机通过 VLAN ID 标识不同的网络段,确保数据仅在特定段内传输。

(3)流量控制

  • 交换机通过 IEEE 802.3x 流量控制优先级队列 管理网络流量,避免拥塞和数据丢失。
  • 高优先级的数据(如实时控制信号)会被优先转发。

(4)时间敏感网络(TSN)

  • TSN 技术支持时间同步、流量调度和低延迟通信,适用于实时性要求高的应用(如 ADAS 和自动驾驶)。
  • 交换机通过 TSN 机制确保关键数据的实时传输。

(5)冗余与可靠性

  • 车载交换机通常支持 冗余网络拓扑(如环形拓扑),确保在某个链路故障时,数据仍能通过其他路径传输。
  • 交换机通过 快速生成树协议(RSTP)介质冗余协议(MRP) 实现快速故障恢复。

3.3 车载交换机的工作示例

以下是一个 车载交换机工作原理 的详细示例,包含具体的 报文数据。假设场景如下:

  • 网络设备
    • 车载交换机:支持 VLAN 和 TSN。
    • 摄像头:IP 地址 192.168.1.2,MAC 地址 00:1B:2C:3D:4E:5F,连接交换机端口 1。
    • ECU(电子控制单元):IP 地址 192.168.1.3,MAC 地址 00:1C:2D:3E:4F:5A,连接交换机端口 2。
    • 雷达:IP 地址 192.168.1.4,MAC 地址 00:1D:2E:3F:4A:5B,连接交换机端口 3。
  • VLAN 配置
    • 摄像头和 ECU 属于 VLAN 10。
    • 雷达属于 VLAN 20。
  • TSN 支持:交换机支持时间敏感网络(TSN),确保实时数据的低延迟传输。

1. 数据接收
摄像头通过端口 1 发送一个数据包到交换机,目标 MAC 地址为 ECU 的 MAC 地址。

  • 报文数据

    • 源 MAC 地址00:1B:2C:3D:4E:5F(摄像头)
    • 目标 MAC 地址00:1C:2D:3E:4F:5A(ECU)
    • VLAN ID10
    • 数据内容车速:60 km/h,温度:25°C
  • 报文示例

    Ethernet Header:
      Destination MAC: 00:1C:2D:3E:4F:5A
      Source MAC: 00:1B:2C:3D:4E:5F
      VLAN Tag: 10
    IP Header:
      Destination IP: 192.168.1.3
      Source IP: 192.168.1.2
    Data Payload:
      车速:60 km/h,温度:25°C
    

2. MAC 地址表查询
交换机读取数据包的源 MAC 地址和目标 MAC 地址,并更新 MAC 地址表。

  • MAC 地址表更新

    • 端口 1:00:1B:2C:3D:4E:5F(摄像头)
    • 端口 2:00:1C:2D:3E:4F:5A(ECU)
  • 查询结果

    • 目标 MAC 地址 00:1C:2D:3E:4F:5A 绑定到端口 2。

3. 数据转发
交换机根据 MAC 地址表将数据包从端口 1 转发到端口 2,发送给 ECU。

  • 转发后的报文数据

    • 源 MAC 地址00:1B:2C:3D:4E:5F(摄像头)
    • 目标 MAC 地址00:1C:2D:3E:4F:5A(ECU)
    • VLAN ID10
    • 数据内容车速:60 km/h,温度:25°C
  • 报文示例

    Ethernet Header:
      Destination MAC: 00:1C:2D:3E:4F:5A
      Source MAC: 00:1B:2C:3D:4E:5F
      VLAN Tag: 10
    IP Header:
      Destination IP: 192.168.1.3
      Source IP: 192.168.1.2
    Data Payload:
      车速:60 km/h,温度:25°C
    

4. 流量控制
如果端口 2 的负载过高,交换机会通过 IEEE 802.3x 流量控制 通知摄像头暂停发送数据。

  • 流量控制报文

    • 类型0x8808(IEEE 802.3x 流量控制)
    • 操作码0x0001(暂停)
    • 暂停时间100 ms
  • 报文示例

    Ethernet Header:
      Destination MAC: 01:80:C2:00:00:01 (IEEE 802.3x 组播地址)
      Source MAC: 00:1A:2B:3C:4D:5E (交换机 MAC)
    Control Frame:
      Type: 0x8808
      Opcode: 0x0001
      Pause Time: 100 ms
    

5. 时间同步(TSN 支持)
交换机支持 TSN,为数据包添加时间戳,并根据调度机制确保数据包在指定时间内到达 ECU。

  • 时间戳报文

    • 时间戳1633035600.123456(Unix 时间戳,精确到微秒)
    • 调度优先级
  • 报文示例

    Ethernet Header:
      Destination MAC: 00:1C:2D:3E:4F:5A
      Source MAC: 00:1B:2C:3D:4E:5F
      VLAN Tag: 10
    TSN Header:
      Timestamp: 1633035600.123456
      Priority: High
    IP Header:
      Destination IP: 192.168.1.3
      Source IP: 192.168.1.2
    Data Payload:
      车速:60 km/h,温度:25°C
    

6. 错误检测与处理
交换机通过 CRC(循环冗余校验) 检测数据包是否在传输过程中发生错误。

  • CRC 校验
    • 计算数据包的 CRC 值,并与报文中的 CRC 字段进行比较。
    • 如果 CRC 校验失败,交换机会丢弃数据包。

7. 冗余与故障恢复
交换机支持 冗余网络拓扑(如环形拓扑),确保在某个链路故障时,数据仍能通过其他路径传输。

  • 故障检测
    • 如果端口 2 发生故障,交换机会通过 快速生成树协议(RSTP)介质冗余协议(MRP) 重新计算路径。
    • 数据包通过备用路径(如端口 3)转发。

以上示例展示了车载交换机的工作原理,包括数据接收、MAC 地址表查询、数据转发、流量控制、时间同步、错误检测和冗余机制。车载交换机通过高效的数据转发和网络管理,确保车载网络的高性能和可靠性,满足 ADAS 和自动驾驶等应用的需求。

3.4 MAC地址表

车载交换机的 MAC 地址表 是其核心功能之一,用于记录网络中设备的 ==MAC 地址与其连接的交换机端口的映射关系。==通过 MAC 地址表,交换机能够高效地转发数据包,避免广播泛洪。以下是 MAC 地址表的工作原理及示例,包含具体的报文数据。

3.4.1 MAC 地址表的工作原理

(1)MAC 地址表的功能

  • 记录映射关系:MAC 地址表记录了每个设备的 MAC 地址与其连接的交换机端口的映射关系。
  • 数据转发:交换机根据 MAC 地址表将数据包从输入端口转发到正确的输出端口。
  • 动态更新:交换机通过 学习机制 动态更新 MAC 地址表。

(2)MAC 地址表的学习机制

  • 当交换机从某个端口接收到数据包时,会读取数据包的 源 MAC 地址
  • 交换机会将源 MAC 地址与接收端口绑定,并更新 MAC 地址表。
  • 如果 MAC 地址表中已经存在该 MAC 地址,交换机会更新其对应的端口和生存时间。

(3)MAC 地址表的查询机制

  • 当交换机需要转发数据包时,会读取数据包的 目标 MAC 地址
  • 交换机会查询 MAC 地址表,找到目标 MAC 地址对应的端口。
  • 如果目标 MAC 地址不在表中,交换机会将数据包 广播 到所有端口(泛洪)。

(4)MAC 地址表的超时机制

  • 每个 MAC 地址表项都有一个 生存时间(TTL),通常为 300 秒。
  • 如果某个 MAC 地址在生存时间内没有再次出现,交换机会将其从表中删除。

3.4.2 MAC 地址表示例

假设车载交换机的 MAC 地址表初始为空,以下是其工作流程及报文数据示例。

(1)初始状态

  • MAC 地址表:空

(2)摄像头发送数据包
摄像头通过端口 1 发送一个数据包到交换机,目标 MAC 地址为 ECU 的 MAC 地址。

  • 报文数据

    • 源 MAC 地址00:1B:2C:3D:4E:5F(摄像头)
    • 目标 MAC 地址00:1C:2D:3E:4F:5A(ECU)
    • 数据内容车速:60 km/h
  • 报文示例

    Ethernet Header:
      Destination MAC: 00:1C:2D:3E:4F:5A
      Source MAC: 00:1B:2C:3D:4E:5F
    IP Header:
      Destination IP: 192.168.1.3
      Source IP: 192.168.1.2
    Data Payload:
      车速:60 km/h
    
  • 交换机操作

    • 交换机读取源 MAC 地址 00:1B:2C:3D:4E:5F,并将其与端口 1 绑定。
    • 更新 MAC 地址表:
      MAC 地址端口
      00:1B:2C:3D:4E:5F1

(3)ECU 发送数据包
ECU 通过端口 2 发送一个数据包到交换机,目标 MAC 地址为摄像头的 MAC 地址。

  • 报文数据

    • 源 MAC 地址00:1C:2D:3E:4F:5A(ECU)
    • 目标 MAC 地址00:1B:2C:3D:4E:5F(摄像头)
    • 数据内容确认收到车速数据
  • 报文示例

    Ethernet Header:
      Destination MAC: 00:1B:2C:3D:4E:5F
      Source MAC: 00:1C:2D:3E:4F:5A
    IP Header:
      Destination IP: 192.168.1.2
      Source IP: 192.168.1.3
    Data Payload:
      确认收到车速数据
    
  • 交换机操作

    • 交换机读取源 MAC 地址 00:1C:2D:3E:4F:5A,并将其与端口 2 绑定。
    • 更新 MAC 地址表:
      MAC 地址端口
      00:1B:2C:3D:4E:5F1
      00:1C:2D:3E:4F:5A2

(4)雷达发送数据包
雷达通过端口 3 发送一个数据包到交换机,目标 MAC 地址为 ECU 的 MAC 地址。

  • 报文数据

    • 源 MAC 地址00:1D:2E:3F:4A:5B(雷达)
    • 目标 MAC 地址00:1C:2D:3E:4F:5A(ECU)
    • 数据内容前方障碍物距离:10 米
  • 报文示例

    Ethernet Header:
      Destination MAC: 00:1C:2D:3E:4F:5A
      Source MAC: 00:1D:2E:3F:4A:5B
    IP Header:
      Destination IP: 192.168.1.3
      Source IP: 192.168.1.4
    Data Payload:
      前方障碍物距离:10 米
    
  • 交换机操作

    • 交换机读取源 MAC 地址 00:1D:2E:3F:4A:5B,并将其与端口 3 绑定。
    • 更新 MAC 地址表:
      MAC 地址端口
      00:1B:2C:3D:4E:5F1
      00:1C:2D:3E:4F:5A2
      00:1D:2E:3F:4A:5B3

(5)数据转发
当交换机需要转发数据包时,会查询 MAC 地址表。例如:

  • 如果目标 MAC 地址是 00:1C:2D:3E:4F:5A(ECU),交换机会将数据包转发到端口 2。
  • 如果目标 MAC 地址不在表中,交换机会将数据包广播到所有端口。

3.4.3 MAC 地址表的超时机制

  • 如果某个 MAC 地址在生存时间(例如 300 秒)内没有再次出现,交换机会将其从表中删除。
  • 例如,如果摄像头在 300 秒内没有发送数据,交换机会删除其 MAC 地址表项:
    MAC 地址端口
    00:1C:2D:3E:4F:5A2
    00:1D:2E:3F:4A:5B3

车载交换机的 MAC 地址表通过动态学习和更新机制,记录了网络中设备的 MAC 地址与其连接端口的映射关系。通过查询 MAC 地址表,交换机能够高效地转发数据包,避免广播泛洪。MAC 地址表的超时机制确保了表的实时性和准确性。

4 总结

以上详细介绍了车载交换机的功能、工作原理、通信机制示例、MAC地址表机制以及示例;能更好地帮助大家理解车载以太网的通信,希望能对大家有所帮助!


http://www.kler.cn/a/588708.html

相关文章:

  • MongoDB 和 Elasticsearch的区别、优缺点对比,以及选型建议
  • Chrome/Edge浏览器离线安装插件全攻略:CRX/ZIP文件手动安装教程
  • std::list的模拟实现
  • 零成本本地化搭建开源AI神器LocalAI支持CPU推理运行部署方案
  • 【WEB APIs】DOM-节点操作
  • 钉钉项目报销与金蝶系统高效集成技术解析
  • 人工智能中的线性代数基础详解
  • RabbitMQ实现定时/延迟任务
  • ES6(2) 函数详解
  • 【RNN神经网络】序列模型与RNN神经网络
  • 易境通集运系统:拼团模式重构社交化集运新生态
  • MobileNet家族:从v1到v4的架构演进与发展历程
  • Vue源码深度解析:从2.x到3.x的架构演进与核心原理剖析
  • pycharm配置镜像源【pycharm最新版(23.2.5及以上)方法】
  • 记第一次跟踪seatunnel的任务运行过程三——解析配置的具体方法getLogicalDag
  • 【vue3学习笔记】(第147-149节)vue3响应式原理_Reflect;reactive对比ref;setup的两个注意点
  • Solana
  • 《Python深度学习》第二讲:深度学习的数学基础
  • C#—【在不同的场景该用哪种线程?】
  • Chrome 浏览器的很多扩展不能用了