車載以太網(wǎng)通常采用OSI(開放系統(tǒng)互連)模型的分層結構,該模型將網(wǎng)絡通信劃分為七個不同的層次,每個層次負責不同的功能。以下是車載以太網(wǎng)的分層結構,與OSI模型的對應關系:
應用層(Application Layer):
負責定義應用程序之間的通信和數(shù)據(jù)交換規(guī)則。
用于實現(xiàn)車輛應用層的數(shù)據(jù)交換,如車載娛樂系統(tǒng)、導航系統(tǒng)等。
表示層(Presentation Layer):
主要負責數(shù)據(jù)格式的轉換、加密和壓縮等,以確保不同設備間的數(shù)據(jù)格式兼容。
在車載以太網(wǎng)中可能用于數(shù)據(jù)的編解碼,以便不同系統(tǒng)之間的通信。
會話層(Session Layer):
管理和維護數(shù)據(jù)傳輸中的會話和連接。
可以用于車載網(wǎng)絡中的連接管理和狀態(tài)維護。
傳輸層(Transport Layer):
負責數(shù)據(jù)分割、重組和錯誤檢測等,以確保數(shù)據(jù)可靠傳輸。
在車載以太網(wǎng)中可能用于TCP(傳輸控制協(xié)議)或UDP(用戶數(shù)據(jù)報協(xié)議)傳輸,以滿足不同應用的需求。
網(wǎng)絡層(Network Layer):
負責數(shù)據(jù)的路由和尋址,確保數(shù)據(jù)能夠在網(wǎng)絡中正確傳輸。
在車載以太網(wǎng)中可能涉及IP(Internet協(xié)議)尋址和路由。
數(shù)據(jù)鏈路層(Data Link Layer):
分為兩個子層:邏輯鏈路控制(LLC)子層和介質訪問控制(MAC)子層。
MAC子層負責幀的組裝和解析,以及訪問物理媒體的控制。
在車載以太網(wǎng)中,常使用Ethernet協(xié)議作為數(shù)據(jù)鏈路層的協(xié)議。
物理層(Physical Layer):
負責實際的物理信號傳輸,包括電壓、頻率、編碼方式等。
在車載以太網(wǎng)中,物理層實現(xiàn)了數(shù)據(jù)的電氣傳輸,如使用雙絞線、光纖等傳輸介質。
簡化為如下五層分層結構:
? ? ? ? ?
Someip,Someipsd,Doip位于以太第五層應用層:Someip協(xié)議,,Someipsd協(xié)議,doip協(xié)議本質上是規(guī)定了對網(wǎng)絡層傳遞的數(shù)據(jù)的處理,適應了不同的應用場景。在CP中,實際上Soad,SD,Doip,Soemipxf都是在實現(xiàn)應用層功能。
SOME/IP的業(yè)務流程:
1)SWC通過RTE接口將數(shù)據(jù)傳遞至RTE中。
2)RTE通過使用SOMEIPXF的功能實現(xiàn)序列化,即將SWC輸出的結構體數(shù)據(jù)序列化為字節(jié)流信號。
3)Ldcom模塊位于RTE與PDUR之間的模塊,負責將RTE中的字節(jié)流信號轉換成pdu數(shù)據(jù)傳遞給PDUR。
4)PDUR模塊作為CP中最重要的路由模塊,能實現(xiàn)模塊與模塊之間的PDU路由,在SOMEIP架構中,以太網(wǎng)通信一定要經(jīng)過Soad模塊,因此PDUR實現(xiàn)了以太PDU數(shù)據(jù)在LDCOM與SOAD之間的路由。
5) 在上述模塊中,SOMEIP數(shù)據(jù)本質上還是以PDU的形式進行傳遞,但是以太網(wǎng)是以套節(jié)字(包括本地ip地址,遠程ip地址,本地port,遠程port,UDP/TCP協(xié)議)為基礎的通信。SOAD實現(xiàn)了在基于PDU的 AUTOSAR通信服務模塊和基于SOCKET的TCP/IP堆棧之間創(chuàng)建一個鏈接。為PDU選擇合適套接字進行報文的發(fā)送或者接收。
6)在Someip報文發(fā)送鏈路中,TCPIP模塊會為以太網(wǎng)報文增加鏈路層,網(wǎng)絡層,傳輸層的報文頭,鏈路層:本地的mac地址以及對端的mac地址。網(wǎng)絡層:本地的ip地址,對端的ip地址,傳輸層:本地的port,對端的port,TCP/UDP協(xié)議。
SOME/IP SD服務發(fā)現(xiàn)的流程:
1)對于SoemipSd服務發(fā)現(xiàn)報文的發(fā)送與接收,依然會用到Soad,TCPIP,EthIf,Eth模塊,這些模塊屬于公共模塊,無論是doip,sd還是someip都會用到這些模塊做基礎數(shù)據(jù)傳輸。
2)服務發(fā)現(xiàn)報文作為格式固定的報文數(shù)據(jù),不需要用戶自定義Payload,直接發(fā)送至SD模塊進行處理,不需要通過PDUR,Ldcom等模塊。
3)SD在收到SomeipSd服務發(fā)現(xiàn)報文之后,通過內部的協(xié)議計算,對Soad的以太網(wǎng)發(fā)送進行實時控制。
DoIP的流程:
1)診斷儀或者作為診斷Client端的ECU發(fā)送的基于以太的診斷報文通過Switch能夠轉發(fā)至對應ECU中。
2)在診斷報文的收發(fā)中,Soad,TCPIP.Ethif,Eth作為公共模塊,完成數(shù)據(jù)鏈路層以及傳輸層的報文接收與發(fā)送任務。
3)Doip模塊基于以太網(wǎng)的通訊協(xié)議對UDS數(shù)據(jù)進行傳輸,主要實現(xiàn)的基于ISO13400中規(guī)定的協(xié)議功能。在Doip模塊收到Soad模塊的診斷報文后,會將診斷報文解析成對應指令通過PDUR傳輸至DCM中,DCM對該診斷指令進行處理(比如11復位指令)。注意:因為PDUR可以支持跨核信號路由,因此DCM可以與以太棧(ETH,TCPIP等)位于不同的核。
4)同時,Doip具有與SD模塊一樣的功能,能對Soad模塊中套接字進行控制,從而達到控制doip發(fā)送開關的效果。
基于以太網(wǎng)的網(wǎng)絡管理報文:
1)基于以太網(wǎng)的網(wǎng)絡管理功能由兩部分模塊組成,第一部分:以太棧基礎模塊Soad,TcpIp,EthIf,Eth模塊,這部分基本模塊完成以太報文接收發(fā)送基本功能。第二部分:ComM,Nm,EthSm,UdpNm,這部分是AUTOSAR中管理棧的模塊,完成通信狀態(tài)的管理。
2)UdpNm網(wǎng)絡管理模塊Nm和 TcpIp之間的適配層,主要用于管理NM集群中NM節(jié)點的網(wǎng)絡管理狀態(tài)機。UdpNm模塊的功能與CanNM類似,CanNm管理的是基于Can的Nm節(jié)點的網(wǎng)絡管理狀態(tài)機,而UdpNm管理的是基于UDP的Nm節(jié)點的網(wǎng)絡管理狀態(tài)機。
3)UdpNm在解析完Nm報文并且處理網(wǎng)絡管理狀態(tài)機后,將控制指令通過NM模塊傳輸至COMM模塊,最終通過EthSm模塊控制TCPIP以及Ethif模塊,從而達到控制以太報文收發(fā)開關的效果。
審核編輯:劉清
評論
查看更多