MAC幀格式:
龍勝網(wǎng)站建設(shè)公司成都創(chuàng)新互聯(lián)公司,龍勝網(wǎng)站設(shè)計(jì)制作,有大型網(wǎng)站制作公司豐富經(jīng)驗(yàn)。已為龍勝數(shù)千家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\成都外貿(mào)網(wǎng)站建設(shè)要多少錢(qián),請(qǐng)找那個(gè)售后服務(wù)好的龍勝做網(wǎng)站的公司定做!
以太網(wǎng)幀格式由5個(gè)字段組成,前兩個(gè)字段分別是6字節(jié)長(zhǎng)的目的地址和源地址字段,是指網(wǎng)卡的硬件地址(MAC地址)。第三個(gè)字段是2字節(jié)的類型字段,用來(lái)標(biāo)識(shí)上一層使用的是什么協(xié)議,以便把收到的MAC幀的數(shù)據(jù)上交給上一層的這個(gè)協(xié)議。例如,當(dāng)類型字段的值是0X0800時(shí),就表示上層使用的是IP數(shù)據(jù)報(bào)。第四個(gè)字段是數(shù)據(jù)字段,其長(zhǎng)度在46~1500字節(jié)之間。最后一個(gè)字段是4字節(jié)的幀檢驗(yàn)序列FCS(CRC檢驗(yàn))。最大值1500稱為以太網(wǎng)的最大傳輸單元(MTU),如果數(shù)據(jù)報(bào)長(zhǎng)度大于這個(gè)長(zhǎng)度,需要對(duì)數(shù)據(jù)報(bào)進(jìn)行分片。MTU指數(shù)據(jù)幀中有效載荷的最大長(zhǎng)度,不包括幀首部的長(zhǎng)度。
我們可以發(fā)現(xiàn),在MAC幀格式中,沒(méi)有一個(gè)幀長(zhǎng)度字段,MAC子層怎么知道從接收的以太網(wǎng)幀中取出多少字節(jié)的數(shù)據(jù)交付上一層呢?我們知道以太網(wǎng)發(fā)送的數(shù)據(jù)都使用曼徹斯特編碼信號(hào)的,在曼徹斯特編碼的每一個(gè)碼元的正中間一定有一次電壓的轉(zhuǎn)換,當(dāng)發(fā)送方把一個(gè)以太網(wǎng)幀發(fā)送完畢后,就不在發(fā)送其他碼元了,因此發(fā)送方網(wǎng)絡(luò)適配器的接口上的電壓也就不再變換了。這樣接收方就可以知道以太網(wǎng)幀的結(jié)束位置了。
ARP數(shù)據(jù)報(bào)格式:
下面我們解釋一下數(shù)據(jù)報(bào)格式中的部分字段:
幀類型為:ARP協(xié)議類型
硬件類型:指鏈路層網(wǎng)絡(luò)類型,1為以太網(wǎng);
協(xié)議類型:指要轉(zhuǎn)換的地址類型,例0X0800為IP地址;
后面兩個(gè)地址長(zhǎng)度:相對(duì)于以太網(wǎng)地址和IP地址分別為6字節(jié)和4字節(jié);
op字段:op為1表示ARP請(qǐng)求,op為2表示應(yīng)答;
在我們實(shí)際已經(jīng)知道了一個(gè)機(jī)器(主機(jī)或路由器)的IP地址,需要找到其相應(yīng)的硬件地址,地址解析協(xié)議ARP就是幫我們解決這個(gè)問(wèn)題的。它是為了從網(wǎng)絡(luò)層使用的IP地址解析出在數(shù)據(jù)鏈路層使用的硬件地址。每個(gè)主機(jī)都維護(hù)一個(gè)ARP緩存表,里面有本局域網(wǎng)上的各個(gè)主機(jī)和路由器的IP地址到硬件地址的映射表。
當(dāng)主機(jī)A要向本局域網(wǎng)上的某個(gè)主機(jī)B發(fā)送IP數(shù)據(jù)報(bào)時(shí),就先在其ARP高速緩存中查看有主機(jī)B的IP地址。如有,就在ARP高速緩存中查出其對(duì)應(yīng)的硬件地址,再把這個(gè)硬件地址寫(xiě)入MAC幀,然后通過(guò)局域網(wǎng)把該MAC幀發(fā)往此硬件地址。當(dāng)查不到主機(jī)B的IP地址時(shí),主機(jī)A自動(dòng)運(yùn)行ARP,然后按下面的方法找到主機(jī)B的硬件地址:
1.ARP進(jìn)程在本局域網(wǎng)上廣播發(fā)送一個(gè)ARP請(qǐng)求分組;
2.在本局域網(wǎng)上的所有主機(jī)上運(yùn)行的ARP進(jìn)程都能收到此ARP請(qǐng)求分組;
3.主機(jī)B的IP地址與ARP請(qǐng)求分組中要查詢的IP地址一致,就收下這個(gè)ARP請(qǐng)求分組,并向主機(jī)A 發(fā)送ARP響應(yīng)分組,并在這個(gè)ARP響應(yīng)分組中寫(xiě)上自己的硬件地址。其他所有的主機(jī)IP地址都與請(qǐng)求分組中查詢的IP地址不一致,不予回應(yīng)這個(gè)ARP請(qǐng)求分組。
4.主機(jī)A收到主機(jī)B的ARP響應(yīng)分組后,就在其ARP高速緩存中寫(xiě)入主機(jī)B的IP地址到硬件地址的映射。
注意:ARP是解決同一個(gè)局域網(wǎng)上的主機(jī)或路由器的IP地址和硬件地址的映射問(wèn)題。
IP數(shù)據(jù)報(bào)格式:
IP數(shù)據(jù)報(bào)格式能夠說(shuō)明IP協(xié)議具有什么功能。一個(gè)IP數(shù)據(jù)報(bào)由首部和數(shù)據(jù)兩部分組成。首部的前一部分是固定長(zhǎng)度,共20字節(jié)。后面是一些可選字段,其長(zhǎng)度是可變的。下面我們來(lái)說(shuō)下各字段的意義:
4位版本:對(duì)于IPv4,4位版本字段是4;
首部長(zhǎng)度:占4位,首部長(zhǎng)度字段所表示數(shù)的單位是32位子。因此,首部長(zhǎng)度字段的最小值是5.也就是說(shuō),首部長(zhǎng)度最小是20字節(jié),4位能表示的最大值是15,也就是首部長(zhǎng)度最大是60字節(jié)。
8位服務(wù)類型:有3個(gè)位用來(lái)指定IP數(shù)據(jù)報(bào)的優(yōu)先級(jí),還有4個(gè)位表示可選的服務(wù)類型,還有一個(gè)位總是0.
16位總長(zhǎng)度:是整個(gè)數(shù)據(jù)報(bào)的字節(jié)數(shù)。
16位標(biāo)識(shí):每傳送一個(gè)數(shù)據(jù)報(bào),計(jì)數(shù)器就加1
3位標(biāo)識(shí)和13位片移用于分片
生存時(shí)間:TTL,表明數(shù)據(jù)報(bào)在網(wǎng)絡(luò)中的壽命。由發(fā)出數(shù)據(jù)報(bào)的原點(diǎn)設(shè)置這個(gè)字段。其,其目的是防止無(wú)法交付的數(shù)據(jù)報(bào)無(wú)限制的在因特網(wǎng)中逗留而白白消耗網(wǎng)絡(luò)資源;
8位協(xié)議字段指出此數(shù)據(jù)包攜帶的數(shù)據(jù)是何種協(xié)議,以便使目的主機(jī)IP層知道應(yīng)將數(shù)據(jù)部分上交到那個(gè)處理過(guò)程
16位首部校驗(yàn)和:這個(gè)字段只檢驗(yàn)數(shù)據(jù)報(bào)的首部,但不包括數(shù)據(jù)部分。這是因?yàn)閿?shù)據(jù)報(bào)每經(jīng)過(guò)一個(gè)路由器,路由器都要重新計(jì)算一下首部校驗(yàn)和。數(shù)據(jù)的校驗(yàn)由更高層協(xié)議負(fù)責(zé)。