將ip位址解析為乙太網mac位址
在網路傳輸中,主機a要發資料給主機b,那麼a需要知道b的ip位址才能通訊,由於ip位址必須要封裝成幀才能通過物理網路傳送,因此還需要知道對方的實體地址,所以裝置上需要存在乙個從ip位址到實體地址的對映關係,那麼arp應運而生。
其中,每個欄位的含義如下。
硬體型別:指明了傳送方想知道的硬體介面型別,乙太網的值為 1。
對於乙太網上 ip 位址的arp請求或應答來說,它們的值分別為 6 和 4。
操作型別:用來表示這個報文的型別,
arp 請求為 1,arp 響應為 2,rarp 請求為 3,rarp 響應為 4。
說明:
1. arp報文共28位元組,後面的數字表示佔位元組數
2. op操作型別:1表示arp請求,2表示arp應答
主機a向主機b發資料
首先,主機a檢視自己的arp表,確定其中是否包含有主機b的arp表項,如果找到對應的mac位址,就直接將ip資料報封裝成幀傳送出去。
如果沒有找到,則將先快取該ip資料報,然後廣播方式傳送乙個arp請求報文。arp請求報文中包括a的ip,mac位址,b的ip位址和全0的mac位址。廣播方式傳送,該網段上所有主機都能收到,但只有b會對該請求做處理;
b收到arp請求報文後,首先將arp請求報文中的a的ip,mac位址存入自己的arp表中,然後單播方式傳送arp應答報文給主機a,其中包含主機b的mac位址。
主機a收到arp應答報文後,將主機b的ip,mac位址加入自己的arp表中以用於後續報文的**,同時將快取的ip資料報傳送出去。
RFID學習(六)通訊協議概述
通訊協議是通訊的雙方或多方在交流時遵守的規矩,包括誰先發起通訊,先交流什麼,後交流什麼,一方如何問,另一方如何答等。在這裡通迅的雙方指的是讀寫器和卡片。首先是誰先發起通訊,很顯然有兩種,讀寫器先發言和卡片先發言。前一種叫reader talk first,簡稱為rtf 後一種叫tag talk fi...
Spring AOP(六)通知獲取引數
在之前aop的文章中,大部分我們沒有給通知傳遞引數。有時候我們希望能夠傳遞引數給通知。我們只需要子啊切點處加入對應的正則式就可以了。當然,對於非環繞通知我們還可以使用乙個連線點 pointcut 型別的引數,通過它也可以獲取引數。切面類myaspect package com.lay.springb...
智慧型家居通用管理平台 六 通訊協議
各廠商裝置的狀態資料和控制引數千差萬別,為了規範驅動程式 客戶端應用中使用資料的標準,我們制定了統一的資料格式,按照統一的協定,shp就可以統一的模式管理所有的裝置了。除了串列埠通訊外,訊息的傳遞採用stringjson物件。前面提到過,它實質是乙個資料字典,可以儲存任何內容。但儲存的內容,必須按照...