的集合 8比特:(ar$hln)每種硬件地址的字節(jié)長度 8比特:(ar$pln)每種協(xié)議地址的。以太網(wǎng)地址轉(zhuǎn)換協(xié)議或轉(zhuǎn)換網(wǎng)絡(luò)協(xié)議地址( 二 )。" />

日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

以太網(wǎng)地址轉(zhuǎn)換協(xié)議或轉(zhuǎn)換網(wǎng)絡(luò)協(xié)議地址( 二 )


16比特:(ar$pro)協(xié)議地址空間 。對(duì)于以太網(wǎng)硬件,它屬于類型字段ether_type$<協(xié)
議>的集合
8比特:(ar$hln)每種硬件地址的字節(jié)長度
8比特:(ar$pln)每種協(xié)議地址的字節(jié)長度
16比特:(ar$op)操作碼(ares_op$REQUESTares_op$REPLY)
n字節(jié):(ar$sha)源硬件地址,n從ar$hln字段得到
m字節(jié):(ar$spa)源協(xié)議地址,m從ar$pln字段得到
n字節(jié):(ar$tha)目的硬件地址(假如知道的話)
m字節(jié):(ar$tpa)目的協(xié)議地址 。
7.發(fā)包
當(dāng)網(wǎng)絡(luò)層往下傳來一個(gè)包,路由將決定這個(gè)包下一跳的協(xié)議地址,并根據(jù)目的協(xié)議地
址決定用哪個(gè)硬件進(jìn)行傳輸 。在10兆以太網(wǎng)需要地址轉(zhuǎn)換 。一些更低的層次(像硬件驅(qū)動(dòng)層
)必須咨詢地址轉(zhuǎn)換模塊(也許在以太網(wǎng)支持模塊中實(shí)現(xiàn))把<協(xié)議類型,目的協(xié)議地址>對(duì)轉(zhuǎn)
換成48比特以太網(wǎng)地址 。地址轉(zhuǎn)換模塊試圖在一個(gè)表中尋找這個(gè)對(duì) 。假如找到,則返回相
應(yīng)的48比特以太網(wǎng)地址給調(diào)用者(硬件驅(qū)動(dòng)層) 。假如找不到,也許應(yīng)通知調(diào)用者這個(gè)包正
在被丟棄(假定包會(huì)被高層重傳),同時(shí)發(fā)出一個(gè)類型字段為ether_type$ADDRESS_RESOLUTI
ON的以太網(wǎng)包 。地址轉(zhuǎn)換模塊在ar$hrd字段中填ares_hrd$Ethernet,在ar$pro字段中填
要被轉(zhuǎn)換的協(xié)議類型,在ar$hln字段中填6(48比特以太網(wǎng)地址字節(jié)數(shù)),在ar$pln字段中
填該協(xié)議地址的字節(jié)數(shù),在ar$op字段中填ares_op$REQUEST,在ar$sha字段中填自己的48
比特以太網(wǎng)地址,在ar$spa字段中填自己的協(xié)議地址,在ar$tpa字段中填要訪問機(jī)器的協(xié)
議地址 。不能在ar$tha字段中填非凡的值,因?yàn)樗闹嫡且玫降?。假如實(shí)現(xiàn)上簡單的話,
ar$tpa字段可以填硬件的廣播地址(在10兆以太網(wǎng)上所有機(jī)器) 。根據(jù)原先的路由機(jī)制,這
個(gè)包將被廣播到所有在以太網(wǎng)電纜上的工作站 。
8.收包
當(dāng)收到地址轉(zhuǎn)換包時(shí),收包模塊把它送到運(yùn)行類似下面算法的地址轉(zhuǎn)換模塊 。條件不
成立意味著處理結(jié)束,并丟棄包 。
?我用ar$hrd字段中的硬件嗎?
是的:(幾乎肯定)
[檢查ar$hln的硬件地址長度(可選)]
?我用ar$pro字段中的協(xié)議嗎?
是的:
[檢查ar$pln的協(xié)議地址長度(可選)]
Merge_flag:=false
假如<協(xié)議類型,發(fā)送者協(xié)議地址>對(duì)在我的轉(zhuǎn)換表中,用包中的發(fā)送者硬件
地址更新表,并把Merge_flag設(shè)成true 。
?我是目的協(xié)議地址嗎?
是的:
假如Merge_flag是false,在轉(zhuǎn)換表中加入三元組<協(xié)議類型,發(fā)送者協(xié)
議地址,發(fā)送者硬件地址> 。
?操作碼是ares_op$REQUEST嗎?(現(xiàn)在看操作碼)
是的:
交換硬件和協(xié)議字段,把本地硬件和協(xié)議地址填在發(fā)送者字段中 。
在ar$op字段中填ares_op$REPLY 。然后從收到包的硬件上把這個(gè)包
發(fā)送到目的硬件地址 。
注重到在檢查操作碼之前,<協(xié)議類型,發(fā)送者協(xié)議地址,發(fā)送者硬件地址>三元組就
被加入轉(zhuǎn)換表中 。這是建立在通信是雙向的假設(shè)上的,假如A有某種理由與B“交談”,B也
會(huì)有某種理由與A“交談” 。還注重到假如<協(xié)議類型,發(fā)送者協(xié)議地址>對(duì)已存在表項(xiàng)中,
新的硬件地址將覆蓋舊的 。相關(guān)情況給出了這樣做的動(dòng)機(jī) 。

以太網(wǎng),就是<1,6> 。對(duì)于其它硬件網(wǎng)絡(luò),ar$prozi字段也許不再對(duì)應(yīng)以
太網(wǎng)類型字段,但會(huì)和地址轉(zhuǎn)換要看的協(xié)議有關(guān) 。
9.為什么這么做
定期廣播并不是所期望的,假設(shè)一個(gè)以太網(wǎng)上有100臺(tái)主機(jī),每隔10分鐘廣播地址轉(zhuǎn)換
信息(可能通過參數(shù)設(shè)置),這樣每隔6秒鐘就有一個(gè)包 。這完全合理,但有用嗎?工作站一

推薦閱讀