資料鏈路層負責相鄰裝置之間的傳輸,其關鍵作用的是mac位址。
mac位址用於識別資料鏈路中互聯的節點;mac位址長48個位元位。
型別:網路層使用的協議
crc校驗:檢驗資料鏈路層資料幀是否出錯
只要確定了ip位址,就可以像這個目標傳送ip資料報。在底層,進行實際通訊時有必要知道每個ip位址所對應的mac位址。
如果不知道,就無法傳輸資料了。
而解決這個問題,需要運用arp協議。
arp協議是通過ip位址獲取mac位址。
為了獲得目的主機的mac位址,要通過廣播傳送乙個arp請求包。這個包包含了想要知道的mac位址主機的ip位址。廣播的包被同一鏈路上所有的主機或路由器接收,並被解析。如果arp請求包中的目標ip位址和自己的ip位址一至,那麼就將自己的mac位址塞入arp響應包返回。
也就是說
arp協議只在子網內部有效
arp請求是廣播傳送的,如果目標主機收到則進行處理,如果不是目標主機收到,則丟棄掉。
如果每傳送乙個ip資料報都要進行一次arp請求以此確定mac位址,那麼將會造成不必要的網路流量。
為了解決上面問題,我們可以將剛得到的對映關係存入arp快取表一段時間(20min,即arp快取表的老化時間)。
如果在資料鏈路層沒有在快取表當中發現目的mac位址,則傳送arp請求獲取,否則直接從快取表當中獲取。
幀型別:表示上層使用的協議(arp協議是基於網路層和資料鏈路層之間的協議)
op:標識是arp請求還是arp應答 1標識請求,2表示應答
arp請求:填充 0x0000 0000 0000
乙太網幀格式 ARP協議 DNS ICMP協議
3.dns 4.icmp協議 arp協議建立了主機ip位址和mac位址的對映關係 知道了目的主機的網路位址,怎麼找對應的主機呢?dns是一整台從網域名稱對映到ip的系統 應用層協議 底層用udp 用ip位址可以直接訪問目標網路的主機嗎?當然可以!那為什麼要用網域名稱?常識告訴我們人更容易識別字串,比...
乙太網協議
乙太網協議 用於10mbps的乙太網,作者以下所說的乙太網均指10m乙太網,而不是100m,1000m的乙太網 乙太網協議有兩種,一種是ieee802.2 ieee802.3,還有一種是乙太網的封裝格式。現代的作業系統均能同時支援這兩種型別的協議格式。因此對我們來說只需要了解其中的一種就夠了,特別是...
一 乙太網協議
乙太網協議 用於10mbps的乙太網,作者以下所說的乙太網均指10m乙太網,而不是100m,1000m的乙太網 乙太網協議有兩種,一種是ieee802.2 ieee802.3,還有一種是乙太網的封裝格式。現代的作業系統均能同時支援這兩種型別的協議格式。因此對我們來說只需要了解其中的一種就夠了,特別是...