車載以太網(wǎng)是指將傳統(tǒng)的工業(yè)以太網(wǎng)技術(shù)應用在汽車電控領域。
車載以太網(wǎng)與工業(yè)以太網(wǎng)一樣,都是采用交換機式(SwitchedNetwork)的通信方式,交換機式通信指的是所有的終端節(jié)點都要通過交換機才能連接到一起,所有傳遞的信息都需要通過交換機進行轉(zhuǎn)發(fā)。
以太網(wǎng)網(wǎng)絡拓撲-交換機式
也就是說每個ECU節(jié)點上只有一個以太網(wǎng)端口,交換機有多個以太網(wǎng)端口,每個節(jié)點與交換機之間都是通過網(wǎng)線點對點相連,節(jié)點與節(jié)點之間都不直接相連。
這與CAN網(wǎng)絡的總線式拓撲完全不同,CAN網(wǎng)絡是所有的節(jié)點都通過總線相互直接連接,所以CAN網(wǎng)絡可以稱為CAN總線,但是以太網(wǎng)只能叫以太網(wǎng)網(wǎng)絡。
CAN網(wǎng)絡拓撲-線型總線
交換機的主要作用是轉(zhuǎn)發(fā)信息,這個功能有點類似于CAN總線中的網(wǎng)關(guān),但是它們的使用原因和場景不同。
網(wǎng)關(guān)是由于車內(nèi)中不同的網(wǎng)絡間需要信息交互而使用的,比如LIN與CAN之間,高速CAN與低速CAN之間,網(wǎng)關(guān)是根據(jù)實際網(wǎng)絡狀態(tài)和功能需求而使用,是用在不同的網(wǎng)絡之間,是可選的設備!
網(wǎng)關(guān)是用于網(wǎng)絡間交互的可選設備
而交換機是由于以太網(wǎng)的通信協(xié)議自身要求使用的,是在同一個網(wǎng)絡中使用的,而且是必須使用的設備!
交換機是因為自身的網(wǎng)絡要求必選的設備
1 物理層
車載以太網(wǎng)與CAN總線都是差分信號傳輸,都有專用的收發(fā)器芯片,傳輸介質(zhì)也都使用雙絞線。
CAN總線的傳輸速率最大是1Mbps(CANFD是8M);車載以太網(wǎng)的速率要快得多,速率范圍為10M-10Gbps,高速率適合數(shù)據(jù)量大,實時性強的系統(tǒng)應用,比如智能駕駛、車聯(lián)網(wǎng)、智能座艙、環(huán)視、雷達等產(chǎn)品。
工業(yè)以太網(wǎng)連接器插頭是RJ45,俗稱水晶頭,RJ45連接器有8個引腳。
RJ45連接器
工業(yè)以太網(wǎng)常使用2對或4對雙絞線和標準水晶頭連接。
工業(yè)以太網(wǎng)
但是RJ45的引腳數(shù)量多,連接后容易松動,并不適合車輛中的控制器使用。
因此車載以太網(wǎng)的物理層有專用標準和協(xié)議,主要目的是為了簡化接口,以便能夠通過單對雙絞線實現(xiàn)全雙工通信,使用汽車級接插件,降低系統(tǒng)的復雜度和成本。
車載以太網(wǎng)接口
與CAN的物理層采用統(tǒng)一的標準不同的是,車載以太網(wǎng)根據(jù)網(wǎng)速的不同,物理層標準分為10base-T1S、100base-T1、1000base-T1和2.5/5/10Gbase-T1共4個標準。
目前車輛內(nèi)部主要使用百兆以太網(wǎng)100base-T1和千兆以太網(wǎng)1000base-T1,其中的T表示Twisted pair雙絞線,1表示只使用1對雙絞線。
車用百兆/千兆以太網(wǎng)
車輛外部可以使用傳統(tǒng)的工業(yè)以太網(wǎng)標準,比如100BASE-TX可以用于診斷系統(tǒng)。連接車輛部分常用OBD連接口,連接診斷設備部分常用RJ45連接器。
OBD II接插件中有兩對雙絞線引腳
CAN的傳輸距離是40米,車載以太網(wǎng)的傳輸距離為15米,這是因為在串行通信中,速率越高,能傳輸?shù)木嚯x越短。
1.1收發(fā)器
以太網(wǎng)的收發(fā)器接口電路包括共模電感、直流阻斷電容(DC)、共模終端網(wǎng)絡(CMT)和可選的ESD。
100BASE-T1收發(fā)器接口電路
其中與CAN接口電路的主要差異是終端電路和直流阻斷電容。
終端電路的作用是隔離MDI,防止接地回路和驅(qū)動器直流偏移,可以改善共模噪聲,在保持高抗擾度的同時減少輻射發(fā)射。
直流阻斷電容用于隔離PHY端和RJ45端直流分量,防止外部干擾。
DC隔離電容
2 協(xié)議規(guī)范
2.1單播、多播和廣播
CAN總線某個節(jié)點發(fā)送CAN報文時,網(wǎng)絡中所有的節(jié)點都可以收到,發(fā)送方式是一點對多點的關(guān)系,這種方式稱為廣播式通信。其道理類似于村里的廣播,發(fā)出通知后,每個村民都能聽到,聽到跟自己相關(guān)的事情,就抓緊時間處理。
廣播時,所有人都能收到信息
與CAN總線不同,以太網(wǎng)某個節(jié)點發(fā)送報文時,網(wǎng)絡中只有對應的節(jié)點能收到,發(fā)送方式是點對點的關(guān)系,這種方式稱為單播式通信。
CAN報文只有發(fā)送地址(ID),而以太網(wǎng)的報文中不僅有發(fā)送地址,還要有接收地址。
交換機通過發(fā)送地址和接收地址,把對應的兩個節(jié)點連接起來。
以太網(wǎng)數(shù)據(jù)流-單播
交換機的內(nèi)部就像是一個組合開關(guān),ECU1連接到端口1,ECU2連接到端口2,當內(nèi)部開關(guān)把1和2連通后,信息就可以從節(jié)點ECU1傳輸?shù)搅斯?jié)點ECU2。
單播方式就像是某個人(節(jié)點1)先打通村里的總機電話(交換機),再按分機號(節(jié)點2)打通另一個人的電話。
單播方式就像撥通了分機號
但是如果有信息需要發(fā)給多個節(jié)點,怎么辦呢?
這時候就需要用到多播,多播實際上就是指以太網(wǎng)發(fā)送報文中的接收地址可以覆蓋很多個節(jié)點,這種地址稱為多播地址,交換機會按照多播地址逐個連接。
多播
當多播中的接收地址包括所有的節(jié)點時,就變成了廣播。交換機會根據(jù)廣播地址把發(fā)送端口和所有的端口連接起來。
廣播
多播和廣播就像是通過微信群發(fā)起電話會議,選擇幾個人(多播地址)就是多播,選擇所有人(廣播地址)就是廣播。
2.2幀結(jié)構(gòu)
以太網(wǎng)幀結(jié)構(gòu)
以太網(wǎng)的幀結(jié)構(gòu)中的前同步碼、幀開始符、FCS等都是一些數(shù)據(jù)鏈路層的數(shù)據(jù)和校驗等格式編碼,對我們的實際作用不大。
我們主要使用的是MAC幀中的目標地址、源地址、幀類型和數(shù)據(jù)這幾部分。
2.2.1MAC地址
MAC地址表示媒體存取控制地址,也稱為局域網(wǎng)地址,它屬于物理地址,與硬件綁定,在以太網(wǎng)的網(wǎng)絡中唯一標識一個節(jié)點(網(wǎng)卡),MAC地址長度為6個字節(jié),48位數(shù)。
目標MAC地址是指需要接收數(shù)據(jù)的節(jié)點地址。
源MAC地址就是當前正在發(fā)送數(shù)據(jù)的節(jié)點地址。
比如00-16-EA-AE-3C-40就是一個MAC地址,其中前3個字節(jié)表示網(wǎng)絡設備制造商編號,后24位表示網(wǎng)絡設備的序列號。
2.2.2幀類型
幀類型是2個字節(jié),表示以太網(wǎng)的類型,不同的幀類型值對應了不同的協(xié)議。
常見的幀類型
2.2.3 IP數(shù)據(jù)報
IP協(xié)議層的信息叫做IP數(shù)據(jù)報(IPDatagram),它不是數(shù)據(jù)鏈路層,屬于網(wǎng)絡層協(xié)議。
IP數(shù)據(jù)報中包含了我們最終要使用的應用數(shù)據(jù),數(shù)據(jù)長度為46-1500個字節(jié)。
IP數(shù)據(jù)報
這里要說一下,我們經(jīng)常看到的IP地址就是這一層,IP地址是邏輯地址,是一個動態(tài)分配(不固定)的地址,用于實現(xiàn)跨網(wǎng)絡(不同局域網(wǎng)間)的通信和路由。
而MAC地址是物理地址,是在數(shù)據(jù)鏈路層中使用的,是固定的地址,不能更改,用于實現(xiàn)局域網(wǎng)內(nèi)部的尋址和數(shù)據(jù)傳輸。
IP地址雖然是動態(tài)的(可更改的),但也是用于在互聯(lián)網(wǎng)上唯一標識一個網(wǎng)絡設備。
IP協(xié)議目前有兩個版本,分別是IPv4和IPv6。其中的IPv4使用32位二進制數(shù)來表示一個IP地址,IPV6是128位。
目前最廣泛使用的是IPv4,IP地址通常以點分十進制形式來顯示,例如192.168.1.1。
一個IPv4地址由兩部分組成:網(wǎng)絡號和主機號。網(wǎng)絡號表示該設備所屬的網(wǎng)絡,主機號表示該設備在該網(wǎng)絡中的編號,網(wǎng)絡號和主機號通過子網(wǎng)掩碼來區(qū)分,其中網(wǎng)絡號對應的位為1,與主機號對應的位為0。
比如IP地址為192.168.1.1,子網(wǎng)掩碼為255.255.255.0,則網(wǎng)絡號是192.168.1,主機號是1。
前面我們提到過單播、多播和廣播,這三種不同的發(fā)送方式就是通過IP地址來區(qū)分的。
單播很容易理解,就是一個固定的目標IP地址,比如192.168.1.1
廣播有兩種,一種是針對某個局域網(wǎng)絡中的所有節(jié)點,其格式為某個網(wǎng)絡號(Network ID) + 全1的主機號(Host ID):
比如192.168.1.255,就是向192.168.1.網(wǎng)段中所有的節(jié)點發(fā)送報文。
另一種是針對所有網(wǎng)絡中的所有節(jié)點,其格式為全1的網(wǎng)絡號?+ 全1的主機號,比如255.255.255.255,這個很少使用。
多播比較特殊,多播的IP地址不是按網(wǎng)絡號和主機號劃分,除了前4位的固定位外,只有一個多播組地址,地址范圍是224.0.0.0 → 239.255.255.255。
多播IP地址
多播組地址的含義是一個IP地址代表了一組設備。這類地址又進一步細分為三個子類,分別是:約定俗成的、全球通用的和本地自定義的。
比如約定俗成的有:224.0.0.1表示子網(wǎng)上的所有設備(all devices on the subnet);244.0.0.2表示子網(wǎng)上的所有路由器(all routers on the subnet)。
多播IP地址的三個子類
這里要說一下路由器主要是用于連接不同的網(wǎng)絡,如局域網(wǎng)(LAN)和廣域網(wǎng)(WAN),它使用IP地址進行路由和轉(zhuǎn)發(fā)數(shù)據(jù)包。
而前面提到的交換機是用于局域網(wǎng)(LAN)內(nèi)部,通過MAC地址轉(zhuǎn)發(fā)數(shù)據(jù)包;
IP地址在某個網(wǎng)絡中具有唯一性,但是在全球的范圍內(nèi),會有重復的現(xiàn)象;而MAC地址在全球范圍內(nèi)都是唯一的。
IP地址是用來實現(xiàn)整個網(wǎng)絡上設備間的數(shù)據(jù)傳輸,而MAC地址是用來實現(xiàn)局域網(wǎng)的內(nèi)部設備識別。
MAC協(xié)議(數(shù)據(jù)鏈路層)負責將IP協(xié)議(網(wǎng)絡層)打包的數(shù)據(jù)封裝成幀(frame),并根據(jù)目標MAC地址進行尋址和傳輸。也就是當一個主機要發(fā)送數(shù)據(jù)給另一個主機時,它需要知道目標主機的MAC地址,并將其寫入幀頭部。然后將幀發(fā)送出去。
當幀到達目標主機所在的局域網(wǎng)時,局域網(wǎng)內(nèi)的所有設備都會接收到該幀,并根據(jù)幀頭部的目標MAC地址判斷是否是自己。如果是自己,則接收該幀,并將其解封成數(shù)據(jù)包,交給網(wǎng)絡層處理。
如果不是自己,則丟棄該幀。在這個過程中,每個設備只需要知道與自己直連的設備的MAC地址,并不需要知道目標主機或其他中間節(jié)點的邏輯位置或網(wǎng)絡連接方式。
如果發(fā)送主機不知道目標主機的MAC地址,它會向局域網(wǎng)內(nèi)廣播一個特殊的幀,其中包含了自己的IP地址和MAC地址,以及目標主機的IP地址。該幀的目標MAC地址為廣播地址FF-FF-FF-FF-FF-FF,表示所有設備都要接收該幀。
接收節(jié)點收到后,發(fā)現(xiàn)目標IP地址是自己,就會向發(fā)送者單播一個特殊的幀,其中包含了自己的IP地址和MAC地址,也就是把自己的MAC地址告訴對方。
目標IP是最終節(jié)點,而目標MAC可能是中間節(jié)點,比如路由器。
IP地址就像是快遞時填寫的收發(fā)地址(填寫后即明確目的,但必要時可以修改)、而MAC地址像是貨物的中轉(zhuǎn)地(路由器),比如一個貨物從南京發(fā)往上海,整個過程為發(fā)送地址-南京轉(zhuǎn)運中心-上海轉(zhuǎn)運中心-接收地址。
整個過程中,收發(fā)地址并沒有變,但是中間要經(jīng)過多個轉(zhuǎn)運中心的地址。最終客戶(應用工程師)只關(guān)心接收地址(ip地址),但是快遞人員(路由器)更關(guān)心的是下一站的轉(zhuǎn)運地址(MAC地址),每個快遞人員的轉(zhuǎn)運地址對了,最后的接收地址自然就會對了。
MAC或IP地址不對,都無法到達目的地
小結(jié):
車載以太網(wǎng)憑借其快速、成熟、標準化的優(yōu)勢,將從面向車載診斷系統(tǒng)和ECU軟件刷新的運用,逐漸擴展到多媒體、駕駛輔助,最終可能會作為車載主干網(wǎng)絡,形成一個跨域的汽車網(wǎng)絡。
車載以太網(wǎng)與CAN總線從底層的物理層到上層的應用層都有很大的不同,其中底層協(xié)議中的主要區(qū)別以下表作為一個小結(jié):
審核編輯:黃飛
評論