前言
近些年來,隨著為了讓汽車更加安全、智能、環保等,一系列的高級輔助駕駛功能噴涌而出。未來滿足這些需求,就對傳統的電子電器架構帶來了嚴峻的考驗,需要越來越多的電子部件參與信息交互,導致對網絡傳輸速率,穩定性,負載率等方面都提出了更為嚴格的挑戰。
除此以外,隨著人們對汽車多媒體以及影音系統的需求越來越高,當前雖已有各式各樣的音視頻系統,可隨著汽車電動化進程的加速推進,手機控制車輛以及彼此交互的場景不斷擴大,可以想象未來聯網需求只會不斷拓展,無論是車內還是車外的聯網需求都不約而同的提出了更多網絡帶寬的重要性。
為此,車載以太網應運而生。首先以太網的首要優勢之一在于支持多種網絡介質,因此可以在汽車領域進行使用;同時由于物理介質與協議無關,因此可以在汽車領域可以做相應的調整與拓展,形成一整套車載以太網協議,該協議將會在未來不斷發展并長期使用。
今天,我們來一起探索車載以太網協議的基本面貌。為了便于大家理解,以下是本文的主題大綱:
正文
車載以太網發展歷史
自1980年至今,IEEE組織、OPEN Aliance SIG組織、寶馬、博通公司等為傳統以太網到汽車領域的應用拓展發揮了十分關鍵的作用,重要里程碑事件記錄如下:
1980年,Ethernet 1.0成功發布;
1985年,IEEE 802小組公布802.3協議,推出了基于CSMA/CD的10M以太網技術;
2004年,BMW公司考慮采用博通公司的以太網技術并于2008年在寶馬7系上成功量產以太網刷寫技術,其中關鍵點在于博通公司的單對非屏蔽以太網全雙工技術,并保證EMC測試全部PASS;
2013年,BroadR-reach技術成功在寶馬5系的環視系統中成功量產;
近年來由著名汽車整車廠與供應商組成的OPEN Aliance SIG相繼發布了TC8(車載以太網ECU測試規范)以及TC10(車載以太網休眠喚醒規范),同時攜手IEEE將車載以太網標準轉化為通用標準。
車載以太網總體架構
正由于上述IEEE組織,OPEN Aliance SIG組織, AVNU組織,AUTOSAR組織的共同發展與合作,進而規范了車載以太網符合OSI模型的整體架構,如下圖1所示:
圖1 車載以太網OSI總體架構
首先針對圖1中AVNU,IEEE,AUTOSAR以及OPEN Aliance SIG組織做簡要介紹,以便能夠較為清晰地了解各組織在車載以太網總體架構的主要貢獻及主要目標。
AVNU:致力于推進AVB/TSN時間敏感網絡在汽車領域的應用,使以太網成為一種時間確定性的實時網絡;
IEEE:電氣與電子工程師協會,其中802.3工作小組致力于推進以太網相關標準的制定與完善;
AUTOSAR:汽車開放式系統架構組織,致力于實現汽車軟硬之間解耦的標準同時也為車載以太網軟件層級作出了相關規范說明;
OPEN Aliance SIG:為非盈利性的汽車行業和技術聯盟,旨在鼓勵大規模使用以太網作為車聯網標準;
同時,從上圖中可以看出標記為“IT”則為傳統以太網技術協議規范,而標記為“Automotive”則為車載以太網技術協議規范。
顯而易見,除了物理層、UDP-NM、DOIP、SOME/IP、SD這五個模塊為車載以太網技術協議規范之外,其余均為傳統以太網技術。
物理層
車載以太網與傳統以太網相比,車載以太網僅需要使用1對雙絞線,而傳統以太網則需要多對,線束較多。
同時,傳統以太網一般使用RJ45連接器連接,而車載以太網并未指定特定的連接器,連接方式更為靈活小巧,能夠大大減輕線束重量。除此以外,車載以太網物理層需滿足車載環境下更為嚴格的EMC要求,對于非屏蔽雙絞線的傳輸距離可達15m(屏蔽雙絞線可達40m)。
雖然車載以太網只采用單對差分電壓傳輸的雙絞線,但是100M/s以太網可以通過回音消除技術來實現全雙工通信。下面就通過表格形式列舉出當前主流的物理層標準:
表1 車載以太網物理層標準
從上表可知,當下主流的車載以太網協議主要為IEEE 100BASE-T1以及IEEE 1000BASE-T1,常規使用可采用100BASE-T1,如果需要更高帶寬,可選擇1000BASE-T1。
不過因為速率越高,對車載以太網物理層一致性測試就更為嚴格。
其中以太網所有物理層的功能全部集中在一個稱為“PHY”的模塊中,它將以太網控制器以及物理介質連接在一起,并且通過一個標準化接口MII連接,同時PHY模塊與底層介質通過MDI接口連接,以100BSASE-T1所示,如下圖2所示:
圖2 物理層PHY接口結構圖 (來源:Vector)
模塊接口定義見上圖2,具體有關PHY模塊的內容在此不做展開,后續會單獨專題講解奉上,敬請關注!
數據鏈路層
數據鏈路層可細分為LLC(Logic Link Control)以及MAC(Media Access Control)兩個層級。此兩層級定義與作用如下:
LLC:負責向上層提供服務,管理數據鏈路通信,鏈接尋址定義等,與所用物理介質沒有關系;
MAC:負責數據幀的封裝,總線訪問方式,尋址方式以及差錯控制等,MAC層的存在則可以使得上層軟件與所用物理鏈路完全隔離,保證了MAC層的統一性;
其中LLC子層的服務與服務在IEEE 802.2 LAN協議中有所定義,MAC層的主要功能作用則在IEEE 802.3中定義,并采用CSMA/CD訪問控制方式,一般MAC層協議在俗稱的“網卡”中實現。
以太網幀格式
以太網隨著歷史發展總共存在5種幀格式,不同的以太幀存在不同的類型及MTU值(最大傳輸數據長度),且可以在同一物理介質上同時存在。
目前廣泛使用的以太網幀格式主要有2種,分別為Ethernet II幀格式與IEEE802.3幀格式。其中車載以太網主要采用Ethernet II幀格式。
完整Ethernet II幀格式
圖3 Ethernet II幀格式
完整IEEE802.3幀格式
圖4 IEEE 802.3幀格式
如上圖3與圖4進行對比可知,Ethernet II幀格式中的“類型”位置被802.3幀格式的“長度”所替代。上述不同字段的具體含義如下表2所示:
表2 以太網幀字段定義說明
特別的,我們可以通過判別“類型/長度”字段來進一步判斷當前幀的類型。若該字段值小于等于0x5DC,那么該幀為IEEE 802.3格式,若該字段值大于等于0x600,則該幀為Ethernet II幀格式。
同時需要注意Ethernet II幀格式并沒有LLC子層的概念,只有MAC層來處理數據服務等內容,而IEEE 802.3則可以。
MAC幀格式
對于MAC幀格式則是從“目標物理地址”開始至“幀校驗”結束為一完整的MAC幀。如下圖4所示為MAC的完整幀,包括目標物理地址,源物理地址,類型/長度,數據以及幀校驗CRC組成。
圖4 MAC完整幀格式
特別地,如圖中4所示,“VLAN Tag”字段可選,當沒有VLAN Flag則為Basic MAC幀,當存在該字段時,則為VLAN MAC幀,即MAC幀可分為基本MAC幀(無VLAN)和標記MAC幀(包括VLAN)兩種。
其中“類型”字段通常可以為以下幾種類型,且該類型列表由IEEE組織來維護,如下表3所示列舉了車載以太網領域常用的Ethernet Type:
表3 車載以太網常用類型
MAC尋址方式
MAC地址作為每個以太網接口的固定地址,一般由供應商出廠就固定下來不可更改。地址長度為6Byte,例如00-17-4F-08-78-88,其中前3個字節為組織編號,如下圖5所示為MAC地址的尋址方式以及字節定義:
圖5 MAC尋址方式(來源:Vector)
如上圖所示:前3個字節為組織唯一標識號,由IEEE分配給到網卡生產廠商,其中Byte5/Bit1表示該MAC地址是全球地址還是本地地址,Byte5/Bit 0 用于表示該幀為組播MAC地址,單播地址還是廣播地址;
0:單播地址(1對1),普通終端設備接收;
1:組播地址(1對多),僅交換機會接收,普通終端設備不會接收;
48個bit全為1:表示為廣播地址,所有設備均會接收;
MAC VLAN
VLAN作為一種分割廣播域的技術手段,能夠有效降低網絡不必要的開銷,全稱為虛擬局域網技術。該技術分割廣播域的方法有很多種,在此僅簡要介紹下基于MAC的動態VLAN技術,如下圖6所示:
圖6 基于MAC的動態VLAN技術(來源 Vector)
如上圖所示,ECU1與ECU2被劃分為屬于同一VLAN1,而ECU2與ECU4則被劃分為屬于同一VLAN2。只需要提前配置好各ECU所屬的VLAN即可,基于MAC的VLAN的優點在于即使換了連接端口或者交換機都可以自動重新識別,不需要重復進行配置,主要用于DHCP或者ARP協議發送廣播幀的場景。
正如前面所述MAC幀可分為基本MAC幀(無VLAN)和標記MAC幀(包括VLAN)兩種,而如果為如果時標記MAC幀,那么就會使用到VLAN Tag,同時“數據”字段的最小長度為不帶VLAN標記的46Byte與帶VLAN標記的42Byte,因為VLAN Tag占用了4個字節,最大數據長度均為1500Byte。
如下圖7所示則為VLAN Tag的含義說明:
圖7 VLAN Tag定義說明 (來源:Vector)
如上圖7所示,VLAN Tag總共可以分為以下3個部分:
PRI(3Bit):幀優先級,就是通常所說的802.1p;
CFI(1Bit):規范標識符,0為規范格式,用于802.3或Ethernet II以太網幀;
VLAN ID:就是VLAN的標識符ID;
網絡層
網絡層就是IP協議所在的層級,IP協議可以分為IPV4以及IPV6,常用的主要是IPV4,IP協議的主要作用就是基于IP地址轉發分包數據。
同時IP也是一種分組交換協議,但是IP卻不具備自動重發機制,即使數據沒有達到目的地也不會進行重發,所以IP協議屬于非可靠性協議。
車載以太網主要使用IPV4協議,同時由于該協議也屬于傳統以太網范疇,所以不會對該模塊做過多細節性闡述。
IPV4協議頭
圖8 IPV4協議頭
由上可知,IP首部為20Byte。
該協議頭的各部分解釋如下圖:
圖9 IPV4 協議頭信息表
IPV6協議頭
圖10 IPV6 協議頭
需要注意的是IPv6 數據報文是 IPv4 的 4 倍,IPv6 數據報文主要由兩個部分組成:Header(首部)和 Payload(負載)。其中,IPv6 Header 的大小是 IPv4 的 2 倍。該協議頭的各部分解釋如下圖:
圖11 IPV6協議信息表
傳輸層
傳輸層的協議就是TCP/UDP,這兩者協議彼此獨立,也可以同時存在,看具體使用場景需求。TCP/UDP作為傳統以太網的標準協議,在這里同樣不做過多展開,僅整體介紹下TCP與UDP的特點及區別。
TCP協議
圖12 TCP協議頭
如下圖13所示為TCP協議頭的字段解釋:
圖13 TCP協議頭信息表
TCP協議頭
TCP建立連接過程
TCP是面向連接的可靠的網絡通信,因此要通信雙方建立通信連接,必須經過我們常說的“三次握手”才能夠開啟以太網通信,如下圖14所示為TCP的“三次握手”連接過程。
圖14 TCP ”三次握手“過程
TCP斷開連接過程
TCP已經連接的雙方如果需要斷開,則需要“四次揮手“來完成此過程”,如下圖15所示:
圖15 TCP”四次揮手“過程
TCP協議特點
從上述的TCP建立連接以及斷開連接的過程,不難得出TCP是一種面向連接可靠的傳輸層協議。具體總結有以下一些特點:
UDP協議
UDP全稱為用戶數據包協議,在網絡中與TCP協議一樣用來處理數據包,是一種無連接的協議。同時UDP有不提供數據包分組、組裝和不能對數據包進行排序的缺點,也就是說,當報文發送之后,是無法得知其是否安全完整到達的。
UDP協議頭
如下圖所示為UDP 協議頭的組成:
圖16 UDP協議頭
如上圖所示,UDP首部為8Byte。
各字段的具體含義如下表所示:
圖17 UDP協議字段信息表
TCP與UDP區別
如下圖所示,較為清晰的解釋了TCP與UDP兩者之間的區別,這讓我們選擇何種傳輸層協議提供了判斷標準。
圖18 UDP與TCP區別關系表
面向無連接,即不需要建立連接便可以直接進行通信;
存在單播,多播,廣播的功能;
UDP是面向報文的,UDP的報文報經過IP層不會進行任何拆分或重組;
不可靠性:由于沒有像TCP的擁塞控制以及出錯自動重傳等機制,則會導致發送的報文無法保證接收方是否收到,因為網絡本身就存在諸多的不確定性;
UDP協議特點
對比TCP協議,UDP具備以下一些特點:
面向無連接,即不需要建立連接便可以直接進行通信;
存在單播,多播,廣播的功能;
UDP是面向報文的,UDP的報文報經過IP層不會進行任何拆分或重組
不可靠性:由于沒有像TCP的擁塞控制以及出錯自動重傳等機制,則會導致發送的報文無法保證接收方是否收到,因為網絡本身就存在諸多的不確定性;
TCP向上層提供面向連接的可靠服務 ,UDP向上層提供無連接不可靠服務;
雖然 UDP 并沒有 TCP 傳輸來的準確,但是也能在很多實時性要求高的地方有所作為;
對數據準確性要求高,速度可以相對較慢的,可以選用TCP。
應用層
在車載以太網領域,目前主流涉及到的應用協議主要有UDP-NM,DOIP,Some/IP,SD以及傳統以太網需配合支持的ICMP,ARP,DHCP等協議。
在本文我不會針對這些協議具體展開,因為每種協議內容不少,后續會專門針對這些應用層協議給大家講解分享,敬請大家多多關注。
如下圖19是我列舉車載以太網中這些應用協議的基礎特點以及作用場景給大家一個整體的認識。
圖19 車載以太網應用層協議一覽
審核編輯:湯梓紅
-
以太網
+關注
關注
40文章
5442瀏覽量
172057 -
AUTOSAR
+關注
關注
10文章
363瀏覽量
21627 -
ecu
+關注
關注
14文章
890瀏覽量
54587 -
車載以太網
+關注
關注
18文章
225瀏覽量
23036
原文標題:一文入門車載以太網,吐血整理! 不看可惜!
文章出處:【微信號:汽車電子expert成長之路,微信公眾號:汽車電子expert成長之路】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論