DoIP技术
本文是關(guān)于DoIP技術(shù)的第一篇文章,主要進行一些概念介紹,具體的細節(jié)會在后續(xù)的文章中和大家探討。
DoIP是Diagnostic communication over Internet Protocol 的簡稱,顧名思義,就是通過網(wǎng)絡(luò)協(xié)議進行診斷通信。這里的網(wǎng)絡(luò)協(xié)議,指的就是OSI七層模型中,通用計算機網(wǎng)絡(luò)所使用的從層4到層1這四層協(xié)議。
DoIP由ISO13400 系列標準定義,作為實現(xiàn)基于Ethernet的診斷通信的方案。本標準的各部分內(nèi)容如下:
— Part 1: General information and use case defnition
— Part 2: Transport protocol and network layer services
— Part 3: Wired vehicle interface based on IEEE 802.3
— Part 4: Ethernet Diagnostic Connector
— Part 5: Conformance test specifcation
我這里只有前四個,不知道第五個測試標準是否已經(jīng)定義完了。
DoIP的優(yōu)勢有以下幾點:
更快的診斷響應
傳輸大量數(shù)據(jù)的時間更短(用于軟件刷新和參數(shù)下載)
使得遠程的直接診斷成為可能
上圖展示了DoIP通信完整協(xié)議棧所使用的標準號。
ISO13400-1處于應用層(層7)之上,是對一些通用信息、應用場景的描述。
應用層基于ISO14229-1和ISO14229-5,前者是UDS的完整定義,后者是UDS通過網(wǎng)絡(luò)協(xié)議傳輸?shù)膶崿F(xiàn)。
會話層(層5),ISO14229-2對于所有的診斷通信都是一樣的,目的是為上層提供統(tǒng)一的接口,使上層應用不需要隨著底層通信技術(shù)的變化而改變。
傳輸層和網(wǎng)絡(luò)層(層4和層3)由ISO13400-2定義,ISO13400-2中規(guī)定了DoIP通信在傳輸層中使用TCP和UDP協(xié)議,在網(wǎng)絡(luò)層中使用IPv4或IPv6。此標準中還定義了專屬于DoIP通信的信息內(nèi)容,這些信息和上層的診斷命令共同構(gòu)成了傳給TCP或UDP協(xié)議的SDU。
ISO13400-2定義了DoIP診斷通信對Ethernet數(shù)據(jù)鏈路層(層2)和物理層(層1)的要求,比如,規(guī)定DoIP通信在這兩層上支持100BASE-TX (100 Mbit/s Ethernet) 和10BASE-T (10 Mbit/s Ethernet) 兩種方案。
DoIP數(shù)據(jù)的基本結(jié)構(gòu)
在這里插入圖片描述
DoIP數(shù)據(jù)作為SDU層層向下傳遞,直至構(gòu)成完整的以太網(wǎng)幀,通過物理層的介質(zhì)發(fā)送出去。DoIP的數(shù)據(jù)內(nèi)容分為5個部分:
address、receiver address、 應用數(shù)據(jù)這三部分。
應用場景
ISO13400中定義了DoIP的4種使用場景,如下四幅圖所示:
路由機制
根據(jù)隱藏在Gateway后面的控制器的診斷類型的不同(比如有的通過DoIP,有的通DoCAN等),DoIP的路由機制可以分為兩種,分別是CutThrough(以太網(wǎng)對以太網(wǎng)) 和Store&Forward-Routing (以太網(wǎng)對CAN, CAN FD 和LIN等)。
我用PPT粗略地畫了兩個示意圖展示一下:
原理很簡單,當網(wǎng)關(guān)后面被診斷的ECU也支持DoIP時,則網(wǎng)關(guān)每收到一個以太網(wǎng)幀,只需要更改以太網(wǎng)幀包頭中的地址信息即可轉(zhuǎn)發(fā)出去。而如果網(wǎng)關(guān)后面被診斷的ECU不支持Ethernet,則網(wǎng)關(guān)需要完整地接收所有的診斷數(shù)據(jù)之后,再從應用層開始重新組織適合其他總線傳輸?shù)臄?shù)據(jù)幀。
轉(zhuǎn)載鏈接:https://zhuanlan.zhihu.com/p/32898969
總結(jié)
- 上一篇: 【c基础】入门语法
- 下一篇: day22 Java学习 IO流