# V2X 地理网络规范 (Specification of V2X GeoNetworking) > **AUTOSAR CP Release 4.4.0** > **文档 ID 796: AUTOSAR_SWS_V2XGeoNetworking** ## 元信息 | 项目 | 内容 | | --- | --- | | 文档标题 | V2X 地理网络规范 | | 文档所有者 | AUTOSAR | | 文档责任方 | AUTOSAR | | 文档标识号 | 796 | | 文档状态 | Final | | 所属 AUTOSAR 标准 | Classic Platform | | 所属标准版本 | 4.4.0 | ## 文档变更历史 | 日期 | 版本 | 变更方 | 变更说明 | | --- | --- | --- | --- | | 2018-10-31 | 4.4.0 | AUTOSAR Release Management | 编辑变更 | | 2017-12-08 | 4.3.1 | AUTOSAR Release Management | 初版正式 | | 2016-11-30 | 4.3.0 | AUTOSAR Release Management | 引入 V2X GeoNetworking | --- ## 目录 - [1. 介绍](#1-介绍) - [2. 缩略语](#2-缩略语) - [3. 相关文档](#3-相关文档) - [4. 约束与假设](#4-约束与假设) - [5. 与其他模块的依赖](#5-与其他模块的依赖) - [6. 需求可追溯性](#6-需求可追溯性) - [7. 功能规范](#7-功能规范) - [8. API 规范](#8-api-规范) - [9. 时序图](#9-时序图) - [10. 配置规范](#10-配置规范) --- ## 1. 介绍 本规范规定了 AUTOSAR 基础软件模块 **V2X GeoNetworking** (V2xGn) 的功能、API 和配置。 V2xGn 实现 ETSI ITS 协议栈中的 GeoNetworking 协议(ETSI EN 302 636 系列),提供基于地理位置的 ad-hoc 路由。 ### 1.1 主要功能 - 基于地理位置的多跳路由 - GeoBroadcast / GeoAnycast / GeoUnicast 消息类型 - Single-Hop Broadcast (SHB) / Topologically Scoped Broadcast (TSB) - 位置服务 (Location Service, LS) - 信标 (Beacon) 消息 --- ## 2. 缩略语 | 缩略语 | 描述 | | --- | --- | | BSW | Basic Software | | BTP | Basic Transport Protocol | | CBF | Contention-Based Forwarding | | DET | Default Error Tracer | | GBC | GeoBroadcast | | GUC | GeoUnicast | | GAC | GeoAnycast | | GN | GeoNetworking | | HST | Hop limit Source Table | | LCT | Location Continuity Table | | LPV | Local Position Vector | | LS | Location Service | | SHB | Single Hop Broadcast | | TSB | Topologically Scoped Broadcast | | V2X | Vehicle-to-everything | --- ## 3. 相关文档 ### 3.1 输入文档 - [1] Layered Software Architecture - [2] General Specification of Basic Software Modules - [3] Requirements on V2X - [4] Specification of V2X Management ### 3.2 相关标准 - [5] ETSI EN 302 636-1 V1.2.1:GeoNetworking 概述 - [6] ETSI EN 302 636-4-1 V1.3.1:GeoNetworking 媒介独立 - [7] ETSI EN 302 636-6-1 V1.2.1:GeoNetworking ITS-G5 --- ## 4. 约束与假设 ### 4.1 限制 V2xGn 实现 ETSI GeoNetworking Release 1。 ### 4.2 适用车域 V2X 应用。 --- ## 5. 与其他模块的依赖 | 模块 | 依赖关系 | | --- | --- | | V2xBtp | 上层传输 | | EthIf | 下层(ITS-G5 接入层) | | V2xM | 时间、位置 | | Det | 错误上报 | --- ## 6. 需求可追溯性 | 需求 ID | 描述 | 满足者 | | --- | --- | --- | | SRS_BSW_00101 | 初始化 | SWS_V2xGn_00010 | | SRS_BSW_00407 | 版本信息 | SWS_V2xGn_00020 | | SRS_V2X_00001 | GeoNetworking 协议 | SWS_V2xGn_00030 | > **[摘要]** 完整需求追溯表见原文 PDF 第 15-20 页。 --- ## 7. 功能规范 ### 7.1 数据包类型 | 数据包类型 | 含义 | | --- | --- | | Beacon | 周期信标(GeoNetworking 邻居发现) | | GeoUnicast (GUC) | 地理单播(到特定目的地) | | GeoBroadcast (GBC) | 地理广播(到目的区域所有节点) | | GeoAnycast (GAC) | 地理任播(到目的区域任一节点) | | Topologically Scoped Broadcast (TSB) | 拓扑域广播 | | Single Hop Broadcast (SHB) | 单跳广播 | ### 7.2 包头格式 | 字段 | 大小 | 含义 | | --- | --- | --- | | Basic Header | 4 字节 | 版本、跳数、生命期 | | Common Header | 8 字节 | 流量类、传输类型、最大跳数等 | | Extended Header | 可变 | GUC、GBC、GAC 等特定头 | ### 7.3 路由算法 #### 7.3.1 Greedy Forwarding (GF) 转发到最接近目的地的邻居。 #### 7.3.2 Contention-Based Forwarding (CBF) 基于时间竞争决定转发节点(用于多跳)。 ### 7.4 位置服务 (LS) 通过 GN 请求/响应发现远程节点位置。 ### 7.5 邻居表 (Location Table) 维护近邻节点位置信息。 ### 7.6 错误分类 #### 7.6.1 开发错误 | 错误名 | 错误码 | 含义 | | --- | --- | --- | | V2XGN_E_UNINIT | 0x01 | 未初始化 | | V2XGN_E_PARAM_POINTER | 0x02 | NULL 指针 | | V2XGN_E_INVALID_PARAMETER | 0x03 | 无效参数 | --- ## 8. API 规范 ### 8.1 导入类型 | 模块 | 头文件 | 导入类型 | | --- | --- | --- | | ComStack_Types | ComStack_Types.h | PduIdType, PduInfoType | | Std_Types | Std_Types.h | Std_ReturnType, Std_VersionInfoType | ### 8.2 类型定义 #### 8.2.1 V2xGn_ConfigType ```c typedef struct V2xGn_ConfigType V2xGn_ConfigType; ``` #### 8.2.2 V2xGn_PacketType ```c typedef enum { V2XGN_BEACON, V2XGN_GUC, V2XGN_GBC, V2XGN_GAC, V2XGN_TSB, V2XGN_SHB } V2xGn_PacketType; ``` #### 8.2.3 V2xGn_AreaType (GBC/GAC 目的区域) ```c typedef struct { sint32 latitude; sint32 longitude; uint16 distanceA; uint16 distanceB; uint16 angle; } V2xGn_AreaType; ``` ### 8.3 函数定义 #### 8.3.1 V2xGn_Init ```c void V2xGn_Init(const V2xGn_ConfigType* configPtr) ``` #### 8.3.2 V2xGn_GetVersionInfo ```c void V2xGn_GetVersionInfo(Std_VersionInfoType* versionInfo) ``` #### 8.3.3 V2xGn_Transmit ```c Std_ReturnType V2xGn_Transmit( PduIdType TxPduId, const PduInfoType* PduInfoPtr, V2xGn_PacketType type, const V2xGn_AreaType* destArea ) ``` ### 8.4 回调通知 #### 8.4.1 V2xGn_RxIndication EthIf 通知收到 GN 包。 #### 8.4.2 V2xGn_TxConfirmation EthIf 确认 GN 包已发送。 ### 8.5 调度函数 #### 8.5.1 V2xGn_MainFunction ```c void V2xGn_MainFunction(void) ``` ### 8.6 期望接口 #### 8.6.1 强制接口 - EthIf_Transmit - V2xBtp_RxIndication - V2xM_GetPosition - Det_ReportError --- ## 9. 时序图 > **[摘要]** 详细时序图见原文 PDF 第 30-45 页。 --- ## 10. 配置规范 ### 10.1 容器与配置参数 #### 10.1.1 V2xGn 根容器。 #### 10.1.2 V2xGnGeneral | 参数 | 类型 | 说明 | | --- | --- | --- | | V2xGnDevErrorDetect | bool | DET 启用 | | V2xGnVersionInfoApi | bool | 版本信息 API | | V2xGnMainFunctionPeriod | float | main 周期 | | V2xGnItsGnVersion | int | 协议版本 | #### 10.1.3 V2xGnBeaconConfig 信标配置(周期、生命期等)。 #### 10.1.4 V2xGnLocationConfig 位置表配置。 > **[摘要]** 完整配置详见原文 PDF 第 45-50 页。 --- ## 翻译说明 - 本译本基于 AUTOSAR CP 4.4.0 的 V2X 地理网络规范 (Document ID 796,共 50 页) - 摘要标记位置:第 6 章需求追溯、第 9 章时序图、第 10 章配置