C V2X 網路層及適配層解析填充

2021-10-22 21:09:31 字數 2858 閱讀 2844

適配層提供底層接入技術與上層協議棧之間的傳輸適配功能。其中,適配層接收上層傳送的dsmp 資料報、ip 資料報或dme 資料報,區分待傳送資料報所使用的底層接入技術,並將相應資料報遞交到符合對應接入技術的底層進行傳輸;或接收來自底層的資料報,區分相應資料報所屬的上層協議型別,並將資料報遞交給指定的上層協議棧。

合作式智慧型運輸系統專用短程通訊網路層業務需支援無連線無確認的llc 操作、子網接入協議和ip 資料報傳輸協議。

適配層幀格式如下圖所示,適配層幀包含適配層幀頭以及適配層有效載荷兩部分。適配層有效載荷用於封裝上層資料報。適配層幀格式中的位元順序為高位在前(大端模式)。

其中協議型別(protocol type),用於指示上層資料報所使用的協議型別,目前所用的為dsmp協議,即「04」,具體見下表:

取值協議型別(protocol type)

0ipv61保留

2保留3保留

4dsmp協議

5ipv4

6~255

保留dsmp協議即專用短程通訊短訊息協議,關於dsm訊息的逐層定義如下圖所示:

dsm 的資料幀格式見下表。dsm 資料幀格式中的位元順序為高位在前(大端模式)。

欄位一字段二

欄位三字段四

欄位五字段六

欄位七3 bits

1bit

4bits

varvar

2octets

vardsmp version

dsmp option indicator

reserved

extension

aidlength

data

dsmp 版本

dsmp 可選域指示

預留擴充套件域

應用標識

資料長度資料

其中欄位一至四填0x00即可,欄位五aid應用標識用於區分不同的應用,詳見下表:

aid應用領域或其它描述

訊息17

在「四跨」活動前所有的應用標識均為17

-111

車車基本安全應用-普通車輛狀態

bsm,常規

112車車基本安全應用-普通車輛關鍵事件提醒

bsm,事件

113車車基本安全應用-緊急車輛狀態

bsm,常規

114車車基本安全應用-緊急車輛關鍵時間提醒

bsm,事件

3617

車車基本安全應用-後裝車載終端

bsm3618

地圖類應用

map3619

訊號燈類應用

spat

3620

道路資訊-靜態類應用

rsi3621

道路資訊-半靜態應用

rsi3622

道路資訊-動態應用

rsi3623

道路提醒類應用

rsm需要注意的是,aid 採用變長位元組表示形式,目前最多支援2 個位元組的表示,最少採用1 個位元組表示,方式見下表:

位元組0的最高兩位(x表示不關心)b7 b6

aid長度(byte

0 x1

1 02

1 1>=3 保留

如上表中aid區分,對於「車車基本安全應用-普通車輛狀態」,即aid為111,填充aid時則填充0x6f;而對於「地圖類應用」,即aid為3618,填充aid時則應填充為0x8e22,其中位元組0的前兩位「10」表示aid長度為2位元組,剩餘的14位「0xe22」表示為3618。

欄位六直接填應用層資料實體的資料長度即可,即不包含dsm報頭的資料載荷長度,其大小為2位元組,大端模式。

欄位七為應用層有效載荷,即經uper編碼後的應用層資料。

在上文中曾多次提及到大端模式,即對於乙個多位元組的資料,其高位元組資料存放在低位址,而低位元組資料存放在高位址,與小端模式(intel)正相反,

假如有乙個4位元組的資料為 0x12 34 56 78(十進位制:305419896,0x12為高位元組,0x78為低位元組),若將其存放於位址0x4000 8000中,則有:

如「網路層(dsmp)」一節中我們談到的aid為3618的地圖類應用,雖然其值為0x8e22,但是若我們的計算機預設是小端模式的,當經過如下賦值

aid =

0x8e22

;

則實際dsm協議解析出來的資料卻是「0x22 0x8e」,所以需要進行大端的轉換,由於網路位元組序一律為大端,而目前個人pc大部分都是x86的小端模式,因此網路程式設計中不可避免得要進行網路位元組序和主機位元組序之間的相互轉換,下面是 socket 提供的轉換函式,

#define ntohs(n)     

// 16位資料型別網路位元組順序到主機位元組順序的轉換

#define htons(n)

// 16位資料型別主機位元組順序到網路位元組順序的轉換

#define ntohl(n)

// 32位資料型別網路位元組順序到主機位元組順序的轉換

#define htonl(n)

// 32位資料型別主機位元組順序到網路位元組順序的轉換

byte aid[2]

;aid[0]

=0x8e

;aid[1]

=0x22

;

更多關於大小端模式的介紹,參考此篇部落格。

MEC與C V2X融合應用場景

智車科技 mec與c v2x融合可以對c v2x端到端通訊能力提供增強,也可以對c v2x應用場景提供輔助計算 資料儲存等支援。mec與c v2x融合具有網路資訊開放 低時延高效能 本地服務等特性。不同的c v2x場景可能需要其中某乙個或數個方面的能力 同乙個c v2x場景也可能通過mec與不同通訊...

C V2X模式4建模學習記錄1 資源介紹

博主是個小白,正在努力的學習中,如果有什麼地方寫得不對,特別感謝大家指出來,一起 學習學習。關於這個主題的主要內容是博主看 的一些心得體會,特此做個學習筆記記錄。c v2x或lte v標準旨在支援車輛到所有 v2x 通訊。該標準是lte的演進,已由3gpp在第14版中發布。此新標準引入了c v2x或...

關於C V2X 你需要知道的十件事

蜂窩車聯網,通訊正持續獲得生態系統的支援,將成為對汽車安全和未來自動駕駛至關重要的一項技術。在整個汽車和科技行業也都能看到c v2x技術的發展勢頭。舉例來說,5g汽車聯盟 5gaa 的成員數已超過60個,其中包括汽車製造商 一級 商 移動運營商 半導體公司 測試裝置 商 電信 商 交通訊號 商和公路...