日本无码免费高清在线|成人日本在线观看高清|A级片免费视频操逼欧美|全裸美女搞黄色大片网站|免费成人a片视频|久久无码福利成人激情久久|国产视频一二国产在线v|av女主播在线观看|五月激情影音先锋|亚洲一区天堂av

  • 手機(jī)站
  • 小程序

    汽車測(cè)試網(wǎng)

  • 公眾號(hào)
    • 汽車測(cè)試網(wǎng)

    • 在線課堂

    • 電車測(cè)試

AUTOSAR的E2E通信安全

2020-08-06 00:02:25·  來(lái)源:IoVSecurity  作者:司馬One  
 
AUTOSAR標(biāo)準(zhǔn)的安全通信為支持功能安全,AUTOSAR標(biāo)準(zhǔn)結(jié)合ISO 26262功能安全標(biāo)準(zhǔn),在基礎(chǔ)軟件層從安全執(zhí)行、安全通信以及安全內(nèi)建測(cè)試三個(gè)方面做出了規(guī)范,并規(guī)范
AUTOSAR標(biāo)準(zhǔn)的安全通信

為支持功能安全,AUTOSAR標(biāo)準(zhǔn)結(jié)合ISO 26262功能安全標(biāo)準(zhǔn),在基礎(chǔ)軟件層從安全執(zhí)行、安全通信以及安全內(nèi)建測(cè)試三個(gè)方面做出了規(guī)范,并規(guī)范了使用方法,本文主要介紹其安全通信部分。

1.安全通信組成部分

為了支持安全通信,AUTOSAR提供了三種機(jī)制,數(shù)據(jù)順序控制、PDU復(fù)制和K/N的投票機(jī)制以及端到端的保護(hù)機(jī)制。其中數(shù)據(jù)順序控制在COM中實(shí)現(xiàn);PDU復(fù)制和N分之K(簡(jiǎn)稱K/N)的投票機(jī)制涉及到COM和PduR模塊;端到端的保護(hù)機(jī)制借助于端到端保護(hù)庫(kù)(E2E庫(kù))來(lái)實(shí)現(xiàn)。

1.1 COM模塊

COM模塊為應(yīng)用程序提供基于信號(hào)的數(shù)據(jù)服務(wù)接口,并根據(jù)信號(hào)自身預(yù)定義的發(fā)送類型來(lái)發(fā)送報(bào)文。本模塊還提供了附加的服務(wù)接口可用于檢測(cè)是否成功發(fā)送報(bào)文、成功接收?qǐng)?bào)文以及報(bào)文是否超時(shí)等。對(duì)于多個(gè)通信通道的ECU,本模塊還提供了一個(gè)用于不同通信總線之間的信號(hào)路由即信號(hào)網(wǎng)關(guān)的功能。

同時(shí),為了支持安全通信,本模塊提供了兩種機(jī)制,數(shù)據(jù)順序控制和K/N的投票機(jī)制來(lái)增強(qiáng)通信的安全。

1.2 PduR模塊

PduR模塊主要提供兩類服務(wù):

承上啟下銜接上層和下層:發(fā)送時(shí)派發(fā)從高層模塊的PDU到低層模塊,并支持上層到下層的1對(duì)多映射即多播機(jī)制;接收時(shí)派發(fā)從底層模塊如If或者TP接收的PDU給高層模塊(COM,PduR)。

通信網(wǎng)絡(luò)中的網(wǎng)關(guān)功能:網(wǎng)關(guān)功能有兩種:從一個(gè)接口層到另外一個(gè)相同或者不同總線類型的接口層;從一個(gè)TP到另外一個(gè)相同或者不同總線類型的TP層。其中,路由協(xié)議基于一個(gè)靜態(tài)的路由表和PDU ID的概念。

1.3 E2E保護(hù)庫(kù)

E2E是一個(gè)端到端的通信保護(hù)庫(kù),只依賴于循環(huán)校驗(yàn)(簡(jiǎn)稱CRC)庫(kù)。為確保軟件的開放分層,應(yīng)當(dāng)考慮如下的通信故障檢測(cè):

1) 點(diǎn)對(duì)點(diǎn)通信的丟幀。

2) 無(wú)意義的重復(fù)發(fā)送相同的消息。

3) 發(fā)送過(guò)程中的消息丟失。

4) 接收到偽裝正確源地址的消息。

5) 接收到的消息序號(hào)和發(fā)送的消息序號(hào)不一致。

6) 消息在傳輸過(guò)程中損壞。

7) 未在指定的時(shí)間內(nèi)接收到消息。

8) 防止數(shù)據(jù)總線被錯(cuò)誤節(jié)點(diǎn)過(guò)度請(qǐng)求服務(wù)。

9) 一個(gè)故障節(jié)點(diǎn)的損壞導(dǎo)致整個(gè)總線的故障。

E2E支持的通信故障源包括:

1)軟件故障

例如COM通信協(xié)議棧和RTE的軟件模塊,因?yàn)橄到y(tǒng)性質(zhì)本身可能包含隱藏的錯(cuò)誤。系統(tǒng)故障可能發(fā)生在規(guī)范、設(shè)計(jì)、制造、操作、維護(hù)的任何階段的系統(tǒng)生命周期。他們出現(xiàn)的情況總是相同的(如觸發(fā)源的條件)。軟件故障可能會(huì)導(dǎo)致中斷通信,接收溢出,發(fā)送空消息等。為防止軟件故障的產(chǎn)生,應(yīng)當(dāng)采取適當(dāng)?shù)某绦虮O(jiān)控或E2E技術(shù)措施進(jìn)行檢查和處理是必要的。

2)硬件隨機(jī)故障

硬件隨機(jī)故障通常源自硬件電氣過(guò)載,退化,老化或受外部條件(例如環(huán)境壓力)影響。一個(gè)硬件隨機(jī)故障不能完全避免,但其概率可以通過(guò)適當(dāng)?shù)募夹g(shù)措施(例如診斷)評(píng)估。

3)外部環(huán)境因素

這些因素包括電磁干擾(EMI),靜電放電(ESD),空氣濕度,腐蝕,溫度,機(jī)械應(yīng)力(如震動(dòng))等等。

2.安全通信關(guān)鍵技術(shù)

本章分別介紹SmartSAR Core在AUTOSAR的安全通信實(shí)現(xiàn)中,采用的三個(gè)關(guān)鍵技術(shù),分別是數(shù)據(jù)順序控制機(jī)制、PDU復(fù)制和K/N的投標(biāo)機(jī)制、端對(duì)端的保護(hù)機(jī)制。

2.1 數(shù)據(jù)順序控制機(jī)制

AUTOSAR COM模塊基于PDU計(jì)數(shù)器提供了數(shù)據(jù)順序控制機(jī)制,亂序的PDU,比如重復(fù)的或者在丟失的PDU之后接收到的PDU就能被檢測(cè)出來(lái)并丟棄。這種機(jī)制需要發(fā)送端和接收端配合使用。

1)發(fā)送端

在發(fā)送端,對(duì)于配置了計(jì)數(shù)器的PDU,在COM初始化時(shí)或者PDU組以TRUE的方式啟動(dòng)時(shí)設(shè)置計(jì)數(shù)器為0。以后,在每次發(fā)送PDU之前,都會(huì)遞增這個(gè)計(jì)數(shù)器。如果調(diào)用PduR的向下發(fā)送服務(wù)返回失敗,則執(zhí)行減一操作,也就是對(duì)于一個(gè)PDU每成功發(fā)送一次,則對(duì)這個(gè)它的順序控制計(jì)數(shù)器執(zhí)行加一操作。

2)接收端

在接收端,對(duì)于配置了計(jì)數(shù)器的PDU,在COM初始化時(shí)或者PDU組以TRUE的方式啟動(dòng)時(shí)設(shè)置計(jì)數(shù)器為0。以后,無(wú)論順序計(jì)數(shù)器的值怎樣,都應(yīng)接受到來(lái)PDU。一旦接受一個(gè)包含順序計(jì)數(shù)器的PDU,COM模塊應(yīng)設(shè)置下一個(gè)期待的值為接收到的計(jì)數(shù)器的下一個(gè)值。

如果一個(gè)順序計(jì)數(shù)器是4位的,它有從0到15這16個(gè)可能值。如果一個(gè)接收到一個(gè)PDU,并且接收到的計(jì)數(shù)器是15,則下一個(gè)期待的值應(yīng)為0。不論接收到的值是否和實(shí)際期待的值相等,新的期待的值都應(yīng)被更新。

接收到一個(gè)包含順序計(jì)數(shù)器的PDU時(shí),COM應(yīng)先設(shè)置下一個(gè)期待的值,然后丟棄這個(gè)PDU,當(dāng)且僅當(dāng)這個(gè)PDU符合以下條件:

收到的PDU的順序計(jì)數(shù)器小于期待的PDU計(jì)數(shù)器,或者接收到的PDU順序計(jì)數(shù)器大于期待的PDU計(jì)數(shù)器和一個(gè)配置的容錯(cuò)閾值的和。

如果發(fā)生順序計(jì)數(shù)器不匹配,COM可以調(diào)用這個(gè)PDU的一個(gè)回調(diào)函數(shù)來(lái)通知用戶。

PDU順序計(jì)數(shù)器是4位,配置的容錯(cuò)閾值為1,則匹配情況如下表 1所示。

表 1 順序計(jì)數(shù)器為4位,容錯(cuò)閾值為1的樣例表

2.2 PDU復(fù)制和K/N的投票機(jī)制

安全相關(guān)的PDU可能需要在下層被復(fù)制來(lái)防止數(shù)據(jù)的損壞或丟失。在AUTOSAR中,PDU的復(fù)制在PduR中以多播的形式來(lái)實(shí)現(xiàn)。復(fù)制的PDU的比較和投票機(jī)制在COM中實(shí)現(xiàn)。由于復(fù)制的PDU沒有校驗(yàn)或者簽證以供比較使用,就需要在接收方存儲(chǔ)并比較整個(gè)PDU。

1)發(fā)送端

在發(fā)送端,只需要在PduR中為對(duì)應(yīng)的PDU配置多播路徑即可。但是,必須要確保復(fù)制的PDU配置有順序計(jì)數(shù)器,為了在接收端基于順序計(jì)數(shù)器來(lái)進(jìn)行投票。

對(duì)于K/N的投票機(jī)制,應(yīng)確保復(fù)制N份PDU發(fā)送出去。

2)接收端

在接收端,負(fù)責(zé)對(duì)接收到的復(fù)制的PDU進(jìn)行投票,并只向RTE傳遞成功發(fā)送的一直的PDU的消息。復(fù)制的PDU要配置有順序計(jì)數(shù)器。然而,建議配置容錯(cuò)閾值為0,避免情況太復(fù)雜。

對(duì)于K/N的投票機(jī)制,至少接收到相同的K份數(shù)據(jù)才保證數(shù)據(jù)是可靠的,才能提交這個(gè)PDU的消息給RTE。

2.3 端到端的保護(hù)機(jī)制

端到端的保護(hù)需要發(fā)送端和接收端的配合使用才能檢查出錯(cuò)誤。

發(fā)送端的流程如圖 1所示。首先,PDU的發(fā)送方初始化配置結(jié)構(gòu)體和狀態(tài)結(jié)構(gòu)體;然后用最新的信號(hào)的值更新PDU;取得PDU的數(shù)據(jù);根據(jù)這些參數(shù)調(diào)用E2E_PXXProtect,執(zhí)行E2E的邏輯,加入CRC校驗(yàn)信息,加入數(shù)據(jù)計(jì)數(shù)器信息,最后把數(shù)據(jù)一起發(fā)送到總線上。其中CRC校驗(yàn)信息可用來(lái)檢查一位到兩位錯(cuò)等硬件錯(cuò)誤,數(shù)據(jù)計(jì)數(shù)器信息可以輔助檢查到順序出錯(cuò)等問(wèn)題。


圖 1 E2E的發(fā)送方

接收端的流程如圖 2所示。首先,PDU的接收方初始化配置結(jié)構(gòu)體和狀態(tài)結(jié)構(gòu)體;然后接收PDU;取得PDU的數(shù)據(jù);根據(jù)這些參數(shù)調(diào)用E2E_PXXCheck,執(zhí)行E2E的邏輯,檢查CRC校驗(yàn)信息,檢查數(shù)據(jù)計(jì)數(shù)器信息,如果都沒有錯(cuò)誤才把收到的PDU中的數(shù)據(jù)提交給應(yīng)用。其中CRC校驗(yàn)信息可用來(lái)檢查一位到兩位錯(cuò)等硬件錯(cuò)誤,數(shù)據(jù)計(jì)數(shù)器信息可以輔助檢查到順序出錯(cuò)等問(wèn)題。



圖2 E2E的接收方

 
分享到:
 
反對(duì) 0 舉報(bào) 0 收藏 0 評(píng)論 0
滬ICP備11026917號(hào)-25