IEEE 1722
1. 文档范围¶
本文档旨在为 AUTOSAR 中对桥接局域网内时间敏感应用的 IEEE 标准化传输协议(见 [1, IEEE Std 1722-2016])的支持定义功能需求与非功能需求。
2. 所用约定¶
2.1. 文档约定¶
AUTOSAR 文档中需求的表述遵循约束 TPS_STDT_00078 规定的表格,见 Standardization Template 的「Support for Traceability」章([2])。
需求的表达应使用约束 TPS_STDT_00053 规定的义务表达动词形式,见 Standardization Template 的「Support for Traceability」章([2])。
2.2. 需求指南¶
无可用指南。
3. 缩略语、缩写和定义¶
3.1. 缩略语和缩写¶
以下收录与 FO_RS_IEEE1722 相关、且未被 AUTOSAR TR 术语表收录的缩略语和缩写。
TSN
时间敏感网络(Time sensitive network)
TSpec
流量规范(Traffic specification),定义见 [3, IEEE Std 802.1Q-2022]
AVTP
音视频传输协议(Audio/Video Transport Protocol),定义见 [1, IEEE Std 1722-2016]
AVTPDU
音视频传输协议数据单元(Audio/Video Transport Protocol Data Unit),定义见 [1, IEEE Std 1722-2016]
IIDC
仪器与工业数码相机(Instrumentation and Industrial Digital Camera),定义见 [1, IEEE Std 1722-2016]
61883_IIDC
IEC 61883/IIDC 格式(IEC 61883/IIDC format),定义见 [1, IEEE Std 1722-2016]
AAF
AVTP 音频格式(AVTP Audio Format),定义见 [1, IEEE Std 1722-2016]
CRF
控制参考格式(Control Reference Format),定义见 [1, IEEE Std 1722-2016]
TSCF
时间敏感控制格式(Time Sensitive Control Format),定义见 [1, IEEE Std 1722-2016]
NTSCF
非时间敏感控制格式(None Time Sensitive Control Format),定义见 [1, IEEE Std 1722-2016]
ACF
AVTP 控制格式(AVTP Control Format),定义见 [1, IEEE Std 1722-2016]
ACF_CAN
控制器局域网(CAN)/CAN 弹性数据率(CAN FD)消息,定义见 [1, IEEE Std 1722-2016]
ACF_CAN_BRIEF
缩略 CAN/CAN FD 消息(Abbreviated CAN/CAN FD message),定义见 [1, IEEE Std 1722-2016]
ACF_LIN
LIN 消息,定义见 [1, IEEE Std 1722-2016]
RVF
原始视频格式(Raw Video Format),定义见 [1, IEEE Std 1722-2016]
gPTP
广义精确时间协议(generalized Precision Time Protocol)[4, IEEE Std 802.1AS]
3.2. 定义¶
3.2.1. 以太网分组(Ethernet packet)¶
定义:「以太网分组」是由 [5, IEEE Std 802.3-2022] 定义的线上格式,包含以下部分:前导码(Preamble,7 字节)、SFD(帧起始定界符,1 字节)、以太网帧(最长 2000 字节)。
3.2.2. 以太网帧(Ethernet frame)¶
定义:「以太网帧」是由 [5, IEEE Std 802.3-2022] 定义的线上格式,包含以下部分:MAC 目的地址字段(6 字节)、MAC 源地址字段(6 字节)、类型字段(2 字节)、MAC 客户数据字段(包含可选的 Q-Tag(4 字节))(最长 1982 字节)、可选的 PAD(填充字节)、FCS(帧校验序列,4 字节)。
3.2.3. 流(Stream)¶
定义:「流」表示由相似的帧属性(例如 MAC 源地址)分组在一起的多个以太网帧。
3.2.4. IEEE1722 流(IEEE1722 stream)¶
定义:「IEEE1722 流」表示 EtherType 设置为 AVTP EtherType(0x22F0)的多个以太网帧(见 [1, IEEE Std 1722-2016]),其携带 IEEE1722 规定的 AVTP 报头以及一个 AVTP 流数据子类型(例如 AAF(AVTP Audio Format))。
3.2.5. 流数据提供者(Stream data producer)¶
定义:「流数据提供者」表示以太网网络中(连续地)产生数据的终端节点。该数据经由一个流发送,并由一个或多个终端节点(流数据消费者)接收。
注意: 术语「talker」与「流数据提供者」同义。
3.2.6. 流数据消费者(Stream data consumer)¶
定义:「流数据消费者」表示以太网网络中(连续地)消费数据的终端节点。该数据经由流接收。
注意: 术语「listener」与「流数据消费者」同义。
3.2.7. AVTP 呈现时间(AVTP presentation time)¶
定义:「AVTP 呈现时间」由 [1, IEEE 1722-2016] 定义,表示 AVTPDU 载荷中的指定数据被传递给流数据消费者的时间敏感应用时的 gPTP 时间。报头格式为 AVTPDU-common-stream-header 的 AVTPDU 报头按照 [1, IEEE 1722-2016] 以 avtp_timestamp 携带该呈现时间。AVTP 呈现时间按 TavtpPresentationTime = TcurrentGlobalTime + TmaxTransitTime 计算。请注意:呈现时间不包含接收方时间敏感应用的格式转换时间和处理时间(见 [1, IEEE 1722-2016] 图 6「Figure 6 - AVTP Timing Reference Planes」)。
3.2.8. 最大传输时间(Max transit time)¶
定义:「最大传输时间」由 [1, IEEE 1722-2016] 定义,表示从流数据提供者的数据进入其发送队列起,经网络通过一个 IEEE1722 流传输,到该数据从接收方流数据消费者的接收队列转发给时间敏感应用为止的最大可接受延迟。
3.2.9. 媒体时钟(Media clock)¶
定义:「媒体时钟」由 [1, IEEE 1722-2016] 定义,表示一个产生速率的实体(例如具有恒定速率(如 48kHz)的精确硬件时钟)。媒体时钟由媒体时钟提供者承载。
3.2.10. 媒体时钟提供者(Media clock provider)¶
定义:「媒体时钟提供者」是网络中承载一个媒体时钟的终端节点。媒体时钟提供者向一个或多个媒体时钟消费者发送 IEEE1722 流。该 IEEE1722 流的子类型为 CRF(时钟参考格式),并包含若干与媒体时钟速率相关的呈现时间戳。
3.2.11. 媒体时钟消费者(Media clock consumer)¶
定义:「媒体时钟消费者」是网络中从媒体时钟提供者接收子类型为 CRF(时钟参考格式)的 IEEE1722 流的终端节点。媒体时钟消费者基于从媒体时钟提供者接收到的封装数据执行其媒体时钟恢复(例如 PLL)。
4. 需求规格¶
本章描述驱动 FO_RS_IEEE1722 定义工作的全部需求。
4.1. 功能概述¶
IEEE 为桥接局域网内的时间敏感应用规定了一种传输协议(见 [1, IEEE Std 1722-2016])。IEEE1722 流在流数据提供者与一个或多个流数据消费者之间传输数据。IEEE1722 流尤其携带所谓的「AVTP 呈现时间」。AVTP 呈现时间使得在局域网内多个经由 IEEE1722 流接收数据的终端节点上同步处理数据成为可能。IEEE1722 传输协议支持多种 AVTP 子类型以覆盖不同的用例,例如:
- 音视频流传输
- 分发所谓媒体时钟所产生的时钟速率
- 封装总线帧(例如 CAN 帧、LIN 帧)并经由 IEEE1722 流跨网络传输
本规范包含在经典平台与自适应平台中支持 IEEE1722 流处理的需求。
4.2. 功能需求¶
4.2.1. IEEE1722Tp 模块面向 IEEE1722 流的 API¶
IEEE1722Tp 模块应提供用于处理 IEEE1722 流发送与接收的 API。
| 描述 | IEEE1722Tp 模块应提供用于处理 IEEE1722 流发送与接收的 API。 |
|---|---|
| 理由 | 提供供上层和下层使用的 API |
| 依赖项 | - |
| 用例 | 音视频流传输 |
| 支撑材料 | - |
| 适用平台 | CP |
4.2.2. IEEE1722Tp 模块对 IEEE1722 流的处理¶
IEEE1722Tp 模块应在发送侧和接收侧处理 IEEE1722 流。
| 描述 | IEEE1722Tp 模块应在发送侧和接收侧处理 IEEE1722 流。附加信息:对 IEEE1722 流的处理包括: * 报头检查 * 载荷检查与封装载荷数据的解包 * 将接收到的 AVTPDU 转发给相应的使用者 * 按照所配置的 AVTP 消息子类型构造流报头 * 按照所配置的最大传输时间计算 AVTP 呈现时间 |
|---|---|
| 理由 | AUTOSAR 通信栈提供了经由 IEEE1722 流发送和接收数据的可能性。 |
| 依赖项 | - |
| 用例 | 音视频流传输 |
| 支撑材料 | - |
| 适用平台 | CP、AP |
4.2.3. IEEE1722Tp 模块对同步全局时间的访问¶
IEEE1722Tp 模块应支持对同步全局时间的访问。
| 描述 | IEEE1722Tp 模块应支持对同步全局时间的访问。 |
|---|---|
| 理由 | AUTOSAR 通信栈应能够计算 AVTP 呈现时间,并复核接收到的 AVTP 呈现时间是否有效。 |
| 依赖项 | - |
| 用例 | 音视频流传输 |
| 支撑材料 | - |
| 适用平台 | CP、AP |
4.2.4. IEEE1722Tp 模块媒体时钟处理¶
IEEE1722Tp 模块应支持在流数据提供者侧和流数据消费者侧与媒体时钟的交互。
| 描述 | IEEE1722Tp 模块应支持在流数据提供者侧和流数据消费者侧与媒体时钟的交互。IEEE1722Tp 模块应支持构造符合 CRF 的载荷包,并使用符合 CRF 的载荷包执行媒体时钟恢复。附加信息:流数据提供者与流数据消费者的媒体时钟必须同步到相同的时钟速率。 |
|---|---|
| 理由 | - |
| 依赖项 | - |
| 用例 | 音频数据由流数据提供者产生,并按照给定的处理时钟速率转发给流数据消费者,该速率可从系统范围内同步的媒体时钟速率导出。 |
| 支撑材料 | [1, IEEE Std 1722-2016] |
| 适用平台 | CP、AP |
4.2.5. IEEE1722Tp 模块的流激活与去激活¶
IEEE1722Tp 模块应提供在运行时激活和去激活已配置 IEEE1722 流的可能性。
| 描述 | IEEE1722Tp 模块应提供在运行时激活和去激活已配置 IEEE1722 流的可能性。 |
|---|---|
| 理由 | IEEE1722 流需要遵循 ECU 的通信模式 |
| 依赖项 | - |
| 用例 | 依据部分网络请求激活和去激活 IEEE1722 流 |
| 支撑材料 | [1, IEEE Std 1722-2016] |
| 适用平台 | CP、AP |
4.2.6. IEEE1722Tp 模块的立即和延迟传输请求¶
IEEE1722Tp 模块应支持按 IEEE1722 流立即和延迟处理传输请求。
| 描述 | IEEE1722Tp 模块应支持按 IEEE1722 流立即和延迟处理传输请求。如果一个 IEEE1722 流的传输请求被配置为立即处理,则该传输请求立即被转发给下层。如果一个 IEEE1722 流的传输请求被配置为延迟处理,则该传输请求被存储并在主函数中处理。 |
|---|---|
| 理由 | 低延迟 IEEE1722 流需要立即处理,以保证流数据消费者所期望的到达时间。 |
| 依赖项 | - |
| 用例 | 音频流传输 |
| 支撑材料 | |
| 适用平台 | CP、AP |
4.2.7. IEEE1722Tp 模块的立即和延迟接收处理¶
IEEE1722Tp 模块应支持按 IEEE1722 流立即和延迟处理接收指示。
| 描述 | IEEE1722Tp 模块应支持按 IEEE1722 流立即和延迟处理接收指示。如果一个 IEEE1722 流的接收指示被配置为立即处理,则该接收指示立即被转发给上层。如果一个 IEEE1722 流的接收指示被配置为延迟处理,则该接收指示被存储并在主函数中处理。 |
|---|---|
| 理由 | 低延迟 IEEE1722 流需要立即处理,以保证流数据消费者所期望的处理时间。 |
| 依赖项 | - |
| 用例 | 音频流传输 |
| 支撑材料 | |
| 适用平台 | CP、AP |
4.2.8. IEEE1722Tp 模块封装总线帧¶
IEEE1722Tp 模块应支持总线帧的封装。
| 描述 | IEEE1722Tp 模块应支持总线帧的封装: * 经由 IEEE1722 流传输封装的总线帧 * 在流数据消费者侧解包封装的总线帧,并将总线帧转发给本地总线系统和/或本地应用 |
|---|---|
| 理由 | 基于区域(Zone)的网络架构需要跨通信网络的区域间通信,其中同一总线类型的 ECU 经由以太网网络交换封装的总线帧。 |
| 依赖项 | §4.3.3 |
| 用例 | 区域间通信 |
| 支撑材料 | [1, IEEE Std 1722-2016] |
| 适用平台 | CP、AP |
4.2.9. IEEE1722Tp 模块收集待传输的总线帧¶
IEEE1722Tp 模块应支持收集经由 IEEE1722 流封装并传输的总线帧。
| 描述 | IEEE1722Tp 模块应支持收集经由 IEEE1722 流封装并传输的总线帧。 |
|---|---|
| 理由 | 基于区域的网络架构的网络通信需要低延迟流量与尽力而为流量之间的平衡措施。 |
| 依赖项 | - |
| 用例 | 区域间通信 |
| 支撑材料 | |
| 适用平台 | CP、AP |
4.2.10. IEEE1722Tp 模块已收集总线帧的发送触发条件¶
IEEE1722Tp 模块应在流数据提供者侧支持对已收集总线帧配置发送触发条件。
| 描述 | IEEE1722Tp 模块应在流数据提供者侧支持对已收集总线帧配置发送触发条件。IEEE1722Tp 模块应支持以下发送触发条件: * 由超时事件触发的发送触发条件 * 由超过阈值触发的发送触发条件 * 由一个被配置为始终触发发送的总线帧到达而触发的发送触发条件 |
|---|---|
| 理由 | 基于区域的网络架构的网络通信需要低延迟流量与尽力而为流量之间的平衡措施。 |
| 依赖项 | - |
| 用例 | 区域间通信 |
| 支撑材料 | |
| 适用平台 | CP、AP |
4.2.11. IEEE1722Tp 模块总线帧转发¶
IEEE1722Tp 模块应支持转发经由 IEEE1722 流接收到的总线帧。
| 描述 | IEEE1722Tp 模块应支持转发经由 IEEE1722 流接收到的总线帧。如果 IEEE1722Tp 模块在其 AVTP 呈现时间之前接收到一个总线帧,则 IEEE1722Tp 模块应在该总线帧的 AVTP 呈现时间转发它。如果 IEEE1722Tp 模块在其 AVTP 呈现时间之后接收到一个总线帧,则 IEEE1722Tp 模块不应转发该总线帧。 |
|---|---|
| 理由 | 基于区域的网络架构的网络通信可能需要跨多个流数据消费者同步转发总线帧。 |
| 依赖项 | - |
| 用例 | 经由 IEEE1722 流传输的总线帧向多个流数据消费者触发一个同步事件。 |
| 支撑材料 | |
| 适用平台 | CP、AP |
4.2.12. IEEE1722Tp 模块总线帧过滤¶
IEEE1722Tp 模块应在流数据提供者侧和流数据消费者侧支持对配置为经由 IEEE1722 流传输的总线帧进行过滤。
| 描述 | IEEE1722Tp 模块应在流数据提供者侧和流数据消费者侧支持对配置为经由 IEEE1722 流传输的总线帧进行过滤。如果被配置为经由 IEEE1722 流传输的总线帧到达流数据提供者,则 IEEE1722Tp 模块应支持基于帧 ID 的过滤器,以限制指定总线帧的传输开销。如果携带封装总线帧的 IEEE1722 流到达流数据消费者,则 IEEE1722Tp 模块应支持基于帧 ID 的过滤器,以限制向本地应用和本地总线的转发开销。 |
|---|---|
| 理由 | 基于区域的网络架构的网络通信需要限制区域间通信流量的措施。 |
| 依赖项 | - |
| 用例 | 区域间通信 |
| 支撑材料 | |
| 适用平台 | CP、AP |
4.3. 非功能需求¶
4.3.1. IEEE1722Tp 模块对 IEEE1722 流的定义¶
IEEE1722Tp 模块应支持 IEEE1722 流、流数据提供者、流数据消费者的定义。
| 描述 | IEEE1722Tp 模块应支持以下内容的定义: * IEEE1722 流 * 流数据提供者 * 流数据消费者 IEEE1722Tp 模块应支持多个流数据提供者引用同一个 IEEE1722 流。IEEE1722Tp 模块应支持多个流数据消费者从同一个 IEEE1722 流消费数据。 |
|---|---|
| 理由 | 需要定义流数据消费者与流数据提供者之间的通信关系,以设计合理的网络通信行为。 |
| 依赖项 | - |
| 用例 | 音视频流传输 |
| 支撑材料 | - |
| 适用平台 | CP、AP |
4.3.2. IEEE1722Tp 模块对 IEEE1722 流属性的支持¶
IEEE1722Tp 模块应能够配置 IEEE1722 流属性。IEEE1722Tp 模块应支持 TSpec 的使用。
| 描述 | IEEE1722Tp 模块应能够配置 IEEE1722 流属性。IEEE1722Tp 模块应支持 TSpec 的使用。附加信息: * IEEE1722 流属性:例如流 ID、AVTP 子类型 * TSpec:定义见 [3, IEEE Std 802.1Q-2022](见其第 35.2.2.8.4 节) * TSpec 支持:用于通信流量的流属性,例如最大传输时间 |
|---|---|
| 理由 | IEEE1722 流属性影响网络通信的行为。 |
| 依赖项 | - |
| 用例 | 音视频流传输 |
| 支撑材料 | 见 [3, IEEE Std 802.1Q-2022] 第 35.2.2.8.4 节、[1, IEEE Std 1722-2016] |
| 适用平台 | CP、AP |
4.3.3. IEEE1722Tp 模块对 IEEE1722 AVTP 流数据子类型的支持¶
IEEE1722Tp 模块应支持以下 AVTP 流数据子类型。
| 描述 | IEEE1722Tp 模块应支持以下 AVTP 流数据子类型: * 61883_IIDC(0x00) * AAF(0x02) * CRF(0x03) * RVF(0x07) * TSCF(0x05) * NTSCF(0x82) IEEE1722Tp 模块应支持以下 ACF 消息类型: * ACF_CAN(0x01) * ACF_CAN_BRIEF(0x02) * ACF_LIN(0x03) 附加信息: * ACF 消息类型:作为载荷携带于 AVTP 流数据子类型中 |
|---|---|
| 依赖项 | - |
| 用例 | 音视频流传输 |
| 支撑材料 | - |
| 适用平台 | CP、AP |
5. 参考文献¶
[1] IEEE Standard 1722-2016——IEEE Standard for a Transport Protocol for Time-Sensitive Applications in Bridged Local Area Networks
AUTOSAR_FO_TPS_StandardizationTemplate
[3] IEEE 802.1Q-2022——IEEE Standard for Local and Metropolitan Area Network Bridges and Bridged Networks
https://ieeexplore.ieee.org/
[4] IEEE Standard 802.1AS-2011
https://www.ieee802.org/3/
AUTOSAR_FO_RS_Main
A. 约束与规范项变更历史¶
请注意,本章中的列表还包括在后续版本中已从规范中移除的约束和规范项。这些约束和规范项在文档中不作为超链接出现。
A.1. 本文档依据 AUTOSAR 版本 R23-11 的变更历史¶
A.1.1. R23-11 中新增的需求¶
表A.1:R23-11 中新增的需求
| 标题 |
|---|
| IEEE1722Tp 模块面向 IEEE1722 流的 API |
| IEEE1722Tp 模块对 IEEE1722 流的处理 |
| IEEE1722Tp 模块对同步全局时间的访问 |
| IEEE1722Tp 模块媒体时钟处理 |
| IEEE1722Tp 模块的流激活与去激活 |
| IEEE1722Tp 模块的立即和延迟传输请求 |
| IEEE1722Tp 模块的立即和延迟接收处理 |
| IEEE1722Tp 模块封装总线帧 |
| IEEE1722Tp 模块收集待传输的总线帧 |
| IEEE1722Tp 模块已收集总线帧的发送触发条件 |
| IEEE1722Tp 模块总线帧转发 |
| IEEE1722Tp 模块总线帧过滤 |
| IEEE1722Tp 模块对 IEEE1722 流的定义 |
| IEEE1722Tp 模块对 IEEE1722 流属性的支持 |
| IEEE1722Tp 模块对 IEEE1722 AVTP 流数据子类型的支持 |
A.1.2. R23-11 中变更的需求¶
无
A.1.3. R23-11 中删除的需求¶
无