作者 | 雨田
小編 | 不吃豬頭肉 引言
在當今快速發展的汽車行業中,車載以太網正逐步成為推動汽車智能化、網聯化浪潮的核心技術之一。作為傳統以太網技術在汽車領域的創新應用,車載以太網不僅繼承了以太網的開放性、成熟性和互操作性,還針對車輛特有的環境和需求進行了優化與定制,為車載內部的復雜數據傳輸提供了高速、可靠、低延遲的通信平臺。
在復雜的車載網絡拓撲中,主機間通信最初只知道目標設備的IP地址,那如何獲取目標設備的MAC地址呢,這就不得不提到一個關鍵協議——ARP協議。
ARP概念
ARP協議(Address Resolution Protocol,地址解析協議)在車載以太網中的作用與傳統以太網中作用相同,是一種網絡層協議,在網絡世界中扮演著至關重要的角色,它就像是網絡中的地址翻譯官,負責將網絡層的IP地址轉換為數據鏈路層的MAC地址。ARP工作原理
當主機A向主機B發送數據包時,會經過以下幾步:
1.ARP緩存查詢:主機A首先會在自己的ARP緩存表中查找主機B 的IP地址對應的MAC地址,如在緩存表中存在映射關系,則將IP數據包封裝成以太網幀并發送給主機B。
2.ARP請求廣播:如果主機A在本地ARP表中查詢不到主機B對應的MAC地址,主機A會以廣播方式發送一條ARP請求報文,ARP報文中源IP地址和MAC 地址為主機A的IP地址和MAC地址,目標IP地址是主機B地址,目標MAC地址設置為000000:00 。
3.ARP響應:因ARP報文以廣播方式發送,網段上所有主機都會接收到ARP請求,當主機B收到ARP請求后會比較自己的IP地址和報文中的目標IP地址是否相同,如果相同則回復一條單播ARP響應報文給主機A,響應報文中包含了主機B的IP地址和MAC地址,同時將發送端的IP地址和MAC地址存入主機B的ARP緩存表中。
4.緩存更新:主機A收到ARP應答后,將主機B的IP地址和MAC地址的對應關系存入自己的ARP緩存表中。
5.數據傳輸:主機A知道了主機B的IP地址和MAC地址,將IP數據包封裝到以太網幀中發送到主機B。
ARP數據格式
1.以太網幀頭
目的MAC地址:占6字節,表示目標主機的MAC地址,作為ARP請求幀,目標MAC地址應設置為FFFFFF:FF;源MAC地址:占6字節,表示源主機的MAC地址;幀類型:占2字節,表示后面報文類型,對于ARP報文來說該字段值為0x0806;
2.ARP報文格式(以常用ARP報文為例)
硬件類型:占2字節,表示硬件地址的類型。它的值為 1即表示以太網地址;
協議類型:占2字節,表示要映射的協議地址類型,值等于0x0800時為IPv4協議;
MAC地址長度:占1字節,表示MAC地址長度,值為6;
IP地址長度:占1字節,表示IP地址長度,值為4;
操作類型:占2字節,表示ARP報文類型,值等于1時為APR請求報文,值等于2時為ARP應答報文;
源MAC地址:占6字節,表示源主機的MAC地址;
源IP地址:占4字節,表示源主機的IP地址;
目的MAC地址:占6字節,表示目標主機的MAC地址,在ARP請求報文中該字段值全為0 ;
目的IP地址:占4字節,表示目標主機的IP地址;
報文解析示例
ARP請求報文解析示例:
ARP應答報文解析示例:ARP表
ARP表是主機內部的一個高速緩存表,用于臨時存儲IP地址和MAC地址的映射關系,可分為靜態ARP表和動態ARP表:
靜態ARP表:通過手工配置和維護,不會被老化,不會被動態ARP表項覆蓋。
動態ARP表:動態ARP表由ARP協議通過ARP報文自動生成和維護,可以被老化,可以被新的ARP報文更新,也可以被靜態ARP表項覆蓋。
常見ARP老化過程
ARP 老化是指 ARP 緩存表中的條目在一定時間內沒有使用而被刪除的過程:
1. 老化時間內:當一個緩存條目在老化時間內沒有被使用(即沒有通過該條目發生過通信),它就會被視為過時并從ARP表中刪除。
2. 更新重置:在老化時間內有新的數據包需要通過此ARP條目轉發,該條目的老化周期將被重置,即其老化計時器會被重新開始計算。
3. ARP探測報文:當達到老化時間后,系統會發送一定次數的ARP探測報文,以確認該條目是否仍然有效,若探測失敗,則刪除該緩存條目。
免費ARP
當主機發送ARP請求,但請求的目標IP地址是自己本身的IP地址。這種類型的ARP不是為了獲取MAC地址,而是用于更新網絡中的ARP緩存、檢測IP地址沖突或宣告主機更換了新的IP地址。
因免費ARP這些特性使其在DHCP(動態主機配置協議)過程中扮演著重要角色,當DHCP客戶端從服務器獲得了一個新的IP地址后,會發送一個免費ARP廣播包,其目的是檢查網絡中是否有其他設備在使用相同的IP地址,如果存在另一臺設備使用相同IP地址,它將響應這個ARP請求,從而客戶端可以意識到地址沖突并重新向DHCP服務器請求一個新的IP地址。在此過程中確保了新分配的IP地址的唯一性,并促進了網絡中的設備能迅速識別出客戶端的IP地址和MAC地址映射關系。
總結
ARP協議是網絡通信的基石之一,它的實現也需要符合特定的標準和規范(如IEEE 802.3以太網標準)。作為車載以太網相關測試人員了解ARP協議概念及原理是重要的,在車載網絡中可能包含來自不同制造商的主機,它們在實現ARP協議時可能存在差異,通過測試可以驗證整個網絡中所有主機都能遵循相同的規則進行地址解析。同時為了提高車載網絡中不同主機間的兼容性,OPEN聯盟發布了相應的測試規范,其中《OPEN Alliance Automotive Ethernet ECU Test Specification Layer 3-7》文檔中定義了ARP協議相關測試內容,如字段檢測、動態學習、老化機制等。
-
網絡
+關注
關注
14文章
7565瀏覽量
88788 -
ARP協議
+關注
關注
0文章
10瀏覽量
6888 -
車載以太網
+關注
關注
18文章
222瀏覽量
23000
發布評論請先 登錄
相關推薦
評論