0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于IP網(wǎng)絡(luò)的診斷通信流程分析

jf_EksNQtU6 ? 來源:車端 ? 作者:車端 ? 2022-11-07 15:56 ? 次閱讀

1 概述

DoIP全稱為基于IP網(wǎng)絡(luò)的診斷通信Diagnostic communication over Internet Protocol,由ISO 13400標準定義,是基于IP的汽車診斷協(xié)議。由于DoIP可以傳輸大量數(shù)據(jù),以及響應(yīng)速度快,且可以通過以太網(wǎng)進行遠程診斷,因此DoIP逐步成為代替?zhèn)鹘y(tǒng)的CAN等總線方式,成為車載網(wǎng)絡(luò)診斷的必然趨勢。DoIP診斷經(jīng)由通用的統(tǒng)一診斷服務(wù)UDS協(xié)議引入診斷服務(wù),通過傳輸控制協(xié)議TCP、用戶數(shù)據(jù)報協(xié)議UDP和以太網(wǎng)協(xié)議IP,完成外部測試設(shè)備與ECU間的診斷通信。在OSI 7層模型中,ISO 13400規(guī)定了DoIP的傳輸層、網(wǎng)絡(luò)層、數(shù)據(jù)鏈路層和物理層。應(yīng)用層和會話層部分和基于CAN總線診斷一樣采用ISO 14229實現(xiàn)。當然,DoIP并不僅僅只是UDS的載體,雖然在ISO13400標準中內(nèi)容不多,但是它也有自己的一些邏輯,不可能說在TCP/IP之上加了一層封裝就完成了自己的任務(wù),這樣的話安全性就沒有保證了,畢竟車載以太網(wǎng)通過網(wǎng)絡(luò)能夠?qū)④噧?nèi)與車外進行網(wǎng)絡(luò)的連接,而DoIP又是診斷的入口,這個門口如果不好好看住,會存在安全性的問題的。

2 網(wǎng)絡(luò)拓撲

下圖為未來整車架構(gòu)的網(wǎng)絡(luò)拓撲圖,根據(jù)該拓撲結(jié)構(gòu),5個域控制器:車身、動力總成、底盤、信息娛樂、高級駕駛員輔助系統(tǒng)ADAS,通過以太網(wǎng)作為主干網(wǎng)連接,每個域內(nèi)部均可使用不同網(wǎng)絡(luò),當域與域之間需要信息交流時,報文可經(jīng)由域控制器路由轉(zhuǎn)發(fā)到目標網(wǎng)絡(luò)。

bc39979a-5c3c-11ed-a3b6-dac502259ad0.png

注意圖中的一些關(guān)鍵信息可參考DoIP中的以下幾個關(guān)鍵概念來理解:

DoIP entity(DoIP實體):實現(xiàn)DoIP協(xié)議的節(jié)點,即DoIP gateway或者DoIP node;

DoIP gateway( DoIP網(wǎng)關(guān)):實現(xiàn)DoIP協(xié)議,并能進行協(xié)議轉(zhuǎn)發(fā)的節(jié)點;

DoIP node(DoIP節(jié)點):實現(xiàn)DoIP協(xié)議,但不能進行協(xié)議轉(zhuǎn)發(fā)的節(jié)點;

DoIP edge node(DoIP邊緣節(jié)點):連接以太網(wǎng)激活線的DoIP節(jié)點,此部分和DoIP gateway有什么區(qū)別?其實沒什么區(qū)別,唯一的區(qū)別就是多了個使能線的判斷,從圖中可以看出External test equipment和DoIP edge node gateway之間有一條線叫做Activation line。那么這條線的功能就是對協(xié)議棧進行使能作用的,當然External test equipment和DoIP edge node gateway之間不只是Activation line相連的,這個圖只是功能示意圖,少了很多細節(jié),其實是通過標準的OBD-II接頭相連的,其中一個針腳就是Activation line。

Network Node(網(wǎng)絡(luò)節(jié)點):連在IP網(wǎng)絡(luò)上,但不能實現(xiàn)DoIP的節(jié)點。

External test equipment:此部分為外部測試設(shè)備,通常為OBD診斷儀或者其他診斷客戶端

端口:指定了端口號,客戶端和服務(wù)端可以在此端口上進行收發(fā)數(shù)據(jù)。我們知道不管是TCP還是UDP,都包含源端口號和目的端口號,在DoIP報文中用到了以下三種端口:

UDP_DISCOVERY:端口類型-UDP,端口號-13400,該端口有以下兩個應(yīng)用場景:

1) 被用于診斷設(shè)備發(fā)送給DoIP節(jié)點的車輛信息請求報文和DoIP節(jié)點控制報文,此時該端口在報文中被設(shè)置為目的端口。

2) 被用于DoIP節(jié)點在沒有收到請求的時候發(fā)送的UDP報文,如車輛聲明報文。此時該端口同樣被設(shè)置為目的端口,源端口可以為該端口,也可以由發(fā)送方動態(tài)定義。

UDP_TEST_EQUIPMENT_REQUEST:端口類型-UDP,端口號-動態(tài)定義(49152-65535):該端口由外部診斷設(shè)備在49152-65535范圍內(nèi)動態(tài)定義,用于診斷設(shè)備向DoIP節(jié)點發(fā)送的UDP報文,在報文中作為源端口,報文的目的端口應(yīng)設(shè)置為UDP_DISCOVERY。當DoIP節(jié)點向診斷設(shè)備發(fā)送響應(yīng)的時候,報文中的目的端口應(yīng)設(shè)置為UDP_TEST_EQUIPMENT_REQUEST,源端口可以為UDP_DISCOVERY,也可以有DoIP節(jié)點動態(tài)定義。

TCP_DATA:端口類型-TCP,端口號-13400:該端口用于外部診斷設(shè)備和DoIP節(jié)點之間的TCP通信,如路由報文和診斷報文。當診斷設(shè)備向DoIP節(jié)點發(fā)送報文時,使用TCP_DATA作為目的端口號;當DoIP節(jié)點向診斷設(shè)備發(fā)送報文時,使用TCP_DATA作為源端口號。

bc697e74-5c3c-11ed-a3b6-dac502259ad0.png

DoIP在車載領(lǐng)域的應(yīng)用首先汽車系統(tǒng)的整體框架要能夠支持DoIP,正因為車載以太網(wǎng)的快速發(fā)展,相較于傳統(tǒng)的車載系統(tǒng),目前的車載系統(tǒng)的整體框架都會加入一層DoIP協(xié)議層,在TCP/IP之上。并且為了更好的配合OBD診斷,遠程診斷,F(xiàn)OTA等等技術(shù),對整體的車載架構(gòu)進行了調(diào)整,利用swich將MPU,MCU,其它以太網(wǎng)ECU統(tǒng)統(tǒng)通過以太網(wǎng)進行連接,并對外網(wǎng)與內(nèi)網(wǎng)進行隔離。

DoIP架構(gòu)模型必須實現(xiàn)以下特征:

①車輛與測試設(shè)備能夠加入到網(wǎng)絡(luò)中并識別對方;②汽車具有聲明存在且被檢測到的能力;③獲取車輛基本狀態(tài)信息(如Power Mode狀態(tài));④通信建立,如雙方通信請求建立,保持,以及對網(wǎng)關(guān)的控制等;⑤汽車網(wǎng)關(guān)實現(xiàn)診斷設(shè)備與車輛子網(wǎng)組件之間的數(shù)據(jù)路由;⑥錯誤狀態(tài)處理。

3 DoIP幀格式

DoIP報文由DoIP報頭和Payload(有效載荷)組成,具體如下圖所示。

bc92d04e-5c3c-11ed-a3b6-dac502259ad0.png

bcb4436e-5c3c-11ed-a3b6-dac502259ad0.png

1)DoIP報頭包含:DoIP協(xié)議版本號,目前為0x02(DoIP

2012)。

2)協(xié)議版本號取反,目前為0xFD。注意:協(xié)議書上特別說明了Protocol version可以為0xFF,設(shè)這個值的作用是,當客戶端和服務(wù)端的協(xié)議版本不匹配,可以設(shè)置此值繞過協(xié)議頭版本不匹配而拒絕請求的case。

3)Payload類型,分為3大類:

①節(jié)點管理類,包含DoIP報頭否定應(yīng)答、車輛聲明及標識、路由激活、在線檢查;

②車輛信息類,包含DoIP實體狀態(tài)、診斷電源模式信息;

③診斷數(shù)據(jù)類,包含診斷報文。

關(guān)于每個類型的含義如下表所示,具體含義參考標準即可。

bce279e6-5c3c-11ed-a3b6-dac502259ad0.png

4 DoIP狀態(tài)機和通信流程

c013c6f6-5c3c-11ed-a3b6-dac502259ad0.png

DoIP實體內(nèi)管理著一個DoIP connection table ,用來記錄和維護診斷通信的邏輯連接。上圖就是這個表中的一個元素,即一個邏輯連接的狀態(tài)機。上圖中的方框就是連接所處的狀態(tài),[Step]是狀態(tài)之間跳轉(zhuǎn)時發(fā)生的事情。

[Step1] 當一個新的套接字建立,邏輯連接的狀態(tài)就從“l(fā)isten”跳轉(zhuǎn)到“socket initialized”,同時啟動一個定時器, initial inactivity timer。

[Step2] 當DoIP實體接收到tester發(fā)來的一個routing activation信息后,邏輯連接的狀態(tài)就從“socket initialized”跳轉(zhuǎn)到“Registered [Pending for Authentication]” ,此時 initial inactivity timer被停止,啟動一個名為general inactivity timer的定時器。

[Step3] 在完成Authentication之后,邏輯連接的狀態(tài)就從“Registered [Pending for Authentication]”跳轉(zhuǎn)到“Registered [Pending for Confrmation]” 。

[Step4] 在完成Confrmation之后,邏輯連接的狀態(tài)就從“Registered [Pending for Confrmation]”跳轉(zhuǎn)到“Registered [Routing Active] ” 。

[Step5] 如果initial timer 或general inactivity timer 過期后仍沒收到后續(xù)請求,或者authentication 和 confrmation 被拒絕了,又或者外部測試設(shè)備對alive check 消息沒有響應(yīng),則邏輯連接進入“Finalize”狀態(tài)。

[Step6]進入Finalize后,此時TCP套接字將被關(guān)閉,并重新回到“l(fā)isten”狀態(tài)。

5 DoIP通信流程

通信的建立

當一輛車和外部測試設(shè)備都連接到DoIP網(wǎng)絡(luò)中,并且IP地址配置完成,DoIP實體將通過車輛公告信息廣播其VIN、EID、GID和邏輯地址3次,外部測試設(shè)備通過廣播發(fā)送車輛識別請求來觸發(fā)車輛識別響應(yīng),從而完成車輛聲明及標識步驟。打開Socket(套接字)是外部測試設(shè)備向車輛內(nèi)部DoIP實體發(fā)起連接的第一步,必須在交換任何報文前完成,一旦建立了連接,必須執(zhí)行一些初始化操作。為了激活初始化連接中的路由,外部測試設(shè)備將發(fā)送一個路由激活請求消息到DoIP實體。如果外部測試設(shè)備符合條件,DoIP實體將發(fā)送一個路由激活成功的響應(yīng),此時就可以對有效的DoIP報文(如DoIP診斷報文)進行轉(zhuǎn)發(fā)或處理。DoIP會話示例如下圖所示。

c02e094e-5c3c-11ed-a3b6-dac502259ad0.png

報文頭的處理

每個DoIP實體(實現(xiàn)了DoIP協(xié)議的節(jié)點)將按下圖中指定的順序處理所有DoIP報文的通用DoIP報頭結(jié)構(gòu)

c08ba4dc-5c3c-11ed-a3b6-dac502259ad0.png

如果接收到來自DoIP實體不正確的DoIP報文,外部測試設(shè)備不得發(fā)送通用DoIP報頭的否定應(yīng)答報文。通用DoIP報頭否定應(yīng)答報文只能用于確定先前發(fā)送的DoIP報文的錯誤條件。

審核編輯:郭婷

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 控制器
    +關(guān)注

    關(guān)注

    112

    文章

    16418

    瀏覽量

    178790
  • 以太網(wǎng)
    +關(guān)注

    關(guān)注

    40

    文章

    5452

    瀏覽量

    172190
  • 總線
    +關(guān)注

    關(guān)注

    10

    文章

    2894

    瀏覽量

    88227

原文標題:5 ?DoIP通信流程

文章出處:【微信號:談思實驗室,微信公眾號:談思實驗室】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    數(shù)據(jù)網(wǎng)絡(luò)分析儀的原理和應(yīng)用場景

    數(shù)據(jù)傳輸?shù)目煽啃院透咝浴?云計算環(huán)境:在云計算環(huán)境中,網(wǎng)絡(luò)分析儀可以幫助云服務(wù)提供商監(jiān)控虛擬網(wǎng)絡(luò)流量、優(yōu)化資源利用率,并確保云服務(wù)的穩(wěn)定性和安全性。 電信運營商:電信運營商需要管理龐大的通信網(wǎng)絡(luò)
    發(fā)表于 01-16 14:57

    時域網(wǎng)絡(luò)分析儀的原理和應(yīng)用場景

    制導(dǎo)、隱身及反隱身、航空航天、衛(wèi)星通信等新一代軍用電子裝備的研制、生產(chǎn)、維修和計量過程中,網(wǎng)絡(luò)分析儀發(fā)揮著不可替代的作用。 民用通信:在電纜長度的精確測量、網(wǎng)絡(luò)連接性的檢查、雙絞線長度
    發(fā)表于 01-13 16:03

    揭秘EtherNet/IP:工業(yè)設(shè)備的高效通信方案

    EtherNet/IP(EthernetIndustrialProtocol)是一種工業(yè)自動化網(wǎng)絡(luò)通信協(xié)議,基于標準的以太網(wǎng)技術(shù)。它的主要目的是在工業(yè)環(huán)境中實現(xiàn)設(shè)備之間的通信和數(shù)
    的頭像 發(fā)表于 11-08 16:20 ?686次閱讀
    揭秘EtherNet/<b class='flag-5'>IP</b>:工業(yè)設(shè)備的高效<b class='flag-5'>通信</b>方案

    什么是協(xié)議分析儀和訓(xùn)練器

    )是一種專用硬件或軟件工具,用于監(jiān)視、分析診斷計算機網(wǎng)絡(luò)中的通信協(xié)議。它能夠捕獲數(shù)據(jù)包、解析協(xié)議頭部信息、展示通信流量,并幫助用戶識別
    發(fā)表于 10-29 14:33

    矢量網(wǎng)絡(luò)分析儀出現(xiàn)故障,如何進行診斷與修復(fù)?

    網(wǎng)絡(luò)分析儀發(fā)生故障時,進行有效的故障診斷與修復(fù)至關(guān)重要,這要求操作者具備一定的電子測量知識與技術(shù)。以下概述了一系列基本且實用的故障診斷與修復(fù)步驟: 初步觀察與記錄 : 首先,需詳細記錄故障
    的頭像 發(fā)表于 10-11 16:41 ?629次閱讀

    IP 地址大數(shù)據(jù)分析如何進行網(wǎng)絡(luò)優(yōu)化?

    。 2.用戶行為分析 大數(shù)據(jù)分析可以對用戶的網(wǎng)絡(luò)行為進行分析,了解用戶的需求和偏好。通過對用戶行為數(shù)據(jù)的分析,可以為
    的頭像 發(fā)表于 10-09 15:32 ?265次閱讀
    <b class='flag-5'>IP</b> 地址大數(shù)據(jù)<b class='flag-5'>分析</b>如何進行<b class='flag-5'>網(wǎng)絡(luò)</b>優(yōu)化?

    ip網(wǎng)絡(luò)音頻終端是什么

    IP網(wǎng)絡(luò)音頻終端是一種數(shù)字通信設(shè)備,它結(jié)合了網(wǎng)絡(luò)技術(shù)和音頻處理技術(shù),用于實現(xiàn)網(wǎng)絡(luò)環(huán)境下的音頻通信
    的頭像 發(fā)表于 10-08 14:52 ?530次閱讀

    如何利用IP查詢技術(shù)保護網(wǎng)絡(luò)安全?

    技術(shù)? IP查詢技術(shù),簡而言之,是通過分析特定IP地址的活動和行為,來評估其潛在的網(wǎng)絡(luò)威脅和安全風險。這一技術(shù)不僅關(guān)注IP地址的所在位置、歷
    的頭像 發(fā)表于 09-09 10:10 ?353次閱讀

    IP風險畫像如何維護網(wǎng)絡(luò)安全

    的重要工具。 什么是IP風險畫像? IP風險畫像是一種基于大數(shù)據(jù)分析和機器學(xué)習(xí)技術(shù)的網(wǎng)絡(luò)安全管理工具。它通過對IP地址的
    的頭像 發(fā)表于 09-04 14:43 ?318次閱讀

    IP定位技術(shù)追蹤網(wǎng)絡(luò)攻擊源的方法

    線索我們可以一路追查,最終定位到攻擊源頭。 IP定位技術(shù)的工作流程 數(shù)據(jù)收集 通過網(wǎng)絡(luò)安全設(shè)備,例如入侵檢測系統(tǒng)IDS/IPS的實時監(jiān)測與分析,我們能夠捕獲到流經(jīng)
    的頭像 發(fā)表于 08-29 16:14 ?456次閱讀

    跨網(wǎng)段 IP 地址通信故障分析

    本文深入探討了在網(wǎng)絡(luò)環(huán)境中,跨網(wǎng)段 IP 地址通信故障的原因,重點闡述了路由設(shè)置不正確所引發(fā)的無法正常通信問題。通過實際案例分析和理論研究,
    的頭像 發(fā)表于 07-29 13:52 ?344次閱讀
    跨網(wǎng)段 <b class='flag-5'>IP</b> 地址<b class='flag-5'>通信</b>故障<b class='flag-5'>分析</b>

    CAN診斷線判斷教程

    與CAN_L)之間電阻為120歐姆,若車輛上有其他CAN網(wǎng)絡(luò)則可能為60歐姆; 3.若以上皆不符合則請檢查車輛線束,確保信號線能正常通信
    發(fā)表于 07-25 07:04

    IP地址與網(wǎng)絡(luò)監(jiān)控

    如何識別和應(yīng)對異常流量和可疑活動。 IP地址與網(wǎng)絡(luò)監(jiān)控的基礎(chǔ) IP地址是互聯(lián)網(wǎng)中設(shè)備的唯一標識符,它在網(wǎng)絡(luò)通信中起著至關(guān)重要的作用。通過監(jiān)控IP
    的頭像 發(fā)表于 07-09 16:41 ?452次閱讀

    工業(yè)交換機如何進行網(wǎng)絡(luò)診斷

    工業(yè)交換機在網(wǎng)絡(luò)中扮演著重要角色,其穩(wěn)定運行對于整個工業(yè)網(wǎng)絡(luò)的正常運轉(zhuǎn)至關(guān)重要。當工業(yè)交換機出現(xiàn)網(wǎng)絡(luò)故障時,網(wǎng)絡(luò)診斷就顯得尤為重要。
    的頭像 發(fā)表于 04-09 17:42 ?463次閱讀
    工業(yè)交換機如何進行<b class='flag-5'>網(wǎng)絡(luò)</b><b class='flag-5'>診斷</b>

    工廠網(wǎng)絡(luò)中出現(xiàn)相同IP設(shè)備如何進行實時通信

    在互聯(lián)網(wǎng)通信中,IP地址是每一臺設(shè)備的唯一標識,它由一串數(shù)字組成,通常由四個0到255之間的十進制數(shù)字組成,如192.168.1.1就是一個常見的IP地址。如果兩臺設(shè)備IP地址相同,就
    的頭像 發(fā)表于 03-20 15:19 ?524次閱讀
    工廠<b class='flag-5'>網(wǎng)絡(luò)</b>中出現(xiàn)相同<b class='flag-5'>IP</b>設(shè)備如何進行實時<b class='flag-5'>通信</b>