在上兩篇文章中: 分別介紹了Tester與車輛獲取物理連接、車輛聲明自身信息后接下來需要操作的就是本文所要分享的內(nèi)容:Tester與車輛控制器的通信建立。 一、通信模式 通信建立區(qū)分: 1、UnsecuredDoIP session; 2、Secured(TLS) DoIP session A、UnsecuredDoIP session;此DoIP會(huì)話模式為沒有經(jīng)過安全認(rèn)證。 如下圖所示,為了啟動(dòng)客戶端DoIP實(shí)體與車輛中的DoIP實(shí)體之間的連接,第一步就是打開套接字(Socket)。這一步是在任何報(bào)文交換前必須完成的。因此DoIP實(shí)體需要提供處理傳入通信請(qǐng)求的資源(Socket資源)。 為了激活初始化連接,Client需要發(fā)送路由激活請(qǐng)求報(bào)文(routingactivation request message)到DoIP實(shí)體。讓Socket狀態(tài)跳轉(zhuǎn)到“路由激活”(routingactive相當(dāng)于將此鏈路激活打通,可以進(jìn)行診斷通信)。當(dāng)診斷客戶端不在需要此連接,需要將此Socket斷開,就可以保證該Socket被其他新的請(qǐng)求使用。 B、Secured(TLS) DoIP session 關(guān)于經(jīng)過安全認(rèn)證后DoIP會(huì)話模式,其過程是增加了一步TLS安全認(rèn)證(TLS源于互聯(lián)網(wǎng),稍后會(huì)專門有文章說明此內(nèi)容)。 當(dāng)一個(gè)Socket連接建立后,TLS協(xié)議特定的握手初始化步驟由客戶端DoIP實(shí)體和DoIP實(shí)體執(zhí)行。TLS握手成功完成后,所有后續(xù)消息都通過此TLSTCP_DATA套接字交換。 同樣道理,當(dāng)DoIP客戶端不需要安全的TCP連接,需要將該Socket連接釋放,以便其他新的請(qǐng)求使用。 其中Socket套接字,一端是IP地址,一端是Port口。 二、路由激活(Routingactivation)格式首先需要清楚DoIP報(bào)文頭框架結(jié)構(gòu): 如上圖,是截取ISO13400協(xié)議關(guān)于DoIP報(bào)文頭框架,其中最需要注意的地方就是Payloadtype。它決定了該幀報(bào)文的具體功能類型。 回歸到本文話題,關(guān)于路由激活的Payloadtype: 截取Demo中Trace數(shù)據(jù)如下: 在協(xié)議中,定義路由激活報(bào)文格式如下: 其中關(guān)于Routingactivation request activation types定義如下: 其中對(duì)于激活報(bào)文的作用類型分了好多種,也預(yù)留了相應(yīng)位置,保證協(xié)議的靈活性;也預(yù)留給OEM自定義使用的權(quán)限。 將路由激活請(qǐng)求發(fā)送至DoIP實(shí)體,DoIP實(shí)體處理機(jī)制如下: 根據(jù)處理機(jī)制,DoIP響應(yīng)其請(qǐng)求 響應(yīng)格式如下 其中Routingactivationresponse code值詳細(xì)定義如下表: 路由激活響應(yīng)碼值由不同的觸發(fā)條件觸發(fā):
以上是關(guān)于DoIP通信前的路由激活全過程。 我相信時(shí)間的力量,愿你我每天進(jìn)步一點(diǎn)點(diǎn)! 自媒體提供了一個(gè)展現(xiàn)自己觀點(diǎn)的平臺(tái),我有幸參與其中,來暢所欲言的表達(dá)自己觀點(diǎn)。但鑒于眼界和以往經(jīng)驗(yàn),闡述的觀點(diǎn)有可能具有一定的局限性,望讀者批判性的閱讀。 若您有所收獲,我將萬分激動(dòng),因?yàn)樗说恼J(rèn)可是我幸福度提高的動(dòng)力和源泉,也是我不斷更新的動(dòng)力。 若您也發(fā)現(xiàn)有爭(zhēng)議的點(diǎn),歡迎郵件溝通交流哈?。?! 若您有所收獲,是我更新的最大動(dòng)力! 有關(guān)注,不迷路! 現(xiàn)階段可在私信上面溝通技術(shù)疑問,我會(huì)及時(shí)回復(fù)! ----------------------------------------- 作者簡(jiǎn)介 | 穿拖鞋的漢子 汽車電子工程師 chuantuoxiedehanzi@163.com 來,每天進(jìn)步一點(diǎn)點(diǎn)! |
|