自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

實(shí)現(xiàn)微型化IPv6協(xié)議棧的步驟

網(wǎng)絡(luò) 網(wǎng)絡(luò)管理
關(guān)于微型化IPv6協(xié)議棧的實(shí)現(xiàn)步驟,首先我們對(duì)其中的IPv6協(xié)議模塊進(jìn)行了處理,然后就是ICMPV6,鄰居發(fā)現(xiàn)相關(guān)實(shí)現(xiàn)步驟。

我們了解了不少關(guān)于IPv6協(xié)議棧的知識(shí),前文我們也提到了有關(guān)于(嵌入式精簡(jiǎn)IPv6協(xié)議棧)微型化IPv6協(xié)議棧的具體知識(shí),現(xiàn)在我們就來(lái)把IPv6協(xié)議棧實(shí)現(xiàn)步驟呈現(xiàn)給大家。具體內(nèi)容請(qǐng)參照下文。

IPv6協(xié)議棧設(shè)計(jì)與實(shí)現(xiàn)

在設(shè)計(jì)協(xié)議棧過(guò)程中,我們?cè)谇度胧讲僮飨到y(tǒng)基礎(chǔ)上設(shè)計(jì)和實(shí)現(xiàn)一個(gè)操作系統(tǒng)模擬層,實(shí)現(xiàn)基本的時(shí)鐘,消息管理和進(jìn)程同步等基本操作系統(tǒng)功能。協(xié)議進(jìn)程方面,把所有的協(xié)議棧封裝到單獨(dú)進(jìn)程中,應(yīng)用程序可以駐留在其中或作為一個(gè)單獨(dú)的進(jìn)程,這樣既實(shí)現(xiàn)了與操作系統(tǒng)分離,又避免了層間切換。對(duì)于內(nèi)存管理采用類BSDbuf結(jié)構(gòu),把靜態(tài)緩沖區(qū)和動(dòng)態(tài)緩沖區(qū)鏈接起來(lái)。

IPv6協(xié)議

IPv6協(xié)議棧模塊主要用于完成對(duì)接收到的IPv6數(shù)據(jù)報(bào)進(jìn)行處理,對(duì)需要發(fā)送的IPv6數(shù)據(jù)包進(jìn)行構(gòu)造并遞交底層發(fā)送。當(dāng)接收到一個(gè)數(shù)據(jù)包時(shí),網(wǎng)絡(luò)設(shè)備驅(qū)動(dòng)調(diào)用ip_input()函數(shù)來(lái)對(duì)其IP報(bào)頭進(jìn)行檢查,檢查其版本號(hào),報(bào)文長(zhǎng)度,載荷長(zhǎng)度,目的節(jié)點(diǎn)地址和下一報(bào)頭,待檢查無(wú)誤后,根據(jù)下一包頭的類型分別提交給不同的處理模塊。當(dāng)要發(fā)送數(shù)據(jù)時(shí),必須要知道發(fā)送報(bào)文的下一跳IPv6地址,以及該地址的相對(duì)應(yīng)MAC地址,ip_route()函數(shù)就是為實(shí)現(xiàn)這樣的功能而設(shè)計(jì)的,其獲取下一跳IPv6地址與其對(duì)應(yīng)MAC地址的處理流程,目的緩存用來(lái)存儲(chǔ)著一系列最近的報(bào)文流量與對(duì)應(yīng)的下一跳IP地址的關(guān)系,前綴列表存儲(chǔ)著一系列子網(wǎng)前綴和其他地址前綴及其對(duì)應(yīng)的下一跳IP地址的關(guān)系,如果兩者中都沒(méi)有找到匹配的記錄,則再?gòu)那熬Y列表中選擇默認(rèn)路由器作為傳輸?shù)南乱惶鳬Pv6地址。

在成功獲取了下一跳IPv6協(xié)議地址后,數(shù)據(jù)就進(jìn)入傳輸階段,傳輸階段由ip_outputif()函數(shù)控制,ip_output()函數(shù)填充好報(bào)頭,選擇好發(fā)送網(wǎng)絡(luò)接口,然后激活發(fā)送網(wǎng)絡(luò)接口進(jìn)行數(shù)據(jù)發(fā)送。

ICMPV6

ICMPV6負(fù)責(zé)接收,解釋和發(fā)送ICMPV6報(bào)文。收到報(bào)文后,如果為鄰居信息報(bào)文則轉(zhuǎn)交給鄰居發(fā)現(xiàn)模塊,如果為診斷報(bào)文則交給ICMPV6診斷模塊。ICMPV6模塊只實(shí)現(xiàn)了應(yīng)答回復(fù)報(bào)文,目的不可達(dá)報(bào)文。當(dāng)處理到達(dá)的IP報(bào)文時(shí),如果下一報(bào)頭既不是TCP,UDP也不是ICMPV6,那么表示在嵌入式設(shè)備端的協(xié)議棧的已經(jīng)到達(dá)IP層,是端口不可達(dá),發(fā)送目的不可達(dá)報(bào)文。當(dāng)收到ICMPV6的應(yīng)答請(qǐng)求報(bào)文時(shí),就發(fā)送應(yīng)答回復(fù)報(bào)文,其格式與請(qǐng)求報(bào)文相似,在收到的請(qǐng)求報(bào)文的基礎(chǔ)上改變報(bào)文類型,重新計(jì)算校驗(yàn)和,在IP報(bào)頭中將源,目的地址對(duì)調(diào)就可以了。

鄰居發(fā)現(xiàn)

鄰居發(fā)現(xiàn)是精簡(jiǎn)IPv6協(xié)議棧最核心的協(xié)議,它利用鄰居請(qǐng)求報(bào)文和鄰居公告報(bào)文的交換,實(shí)現(xiàn)地址解釋,地址重復(fù)性檢測(cè),以及地址自動(dòng)配置功能。不實(shí)現(xiàn)路由器請(qǐng)求/路由器公告報(bào)文,和重定向報(bào)文。

◆鄰居請(qǐng)求報(bào)文

類型值為135,報(bào)文IP頭的源地址域?yàn)榘l(fā)送鄰居請(qǐng)求報(bào)文接口的地址或者未指定,目的地址域?yàn)榕c被請(qǐng)求目標(biāo)地址相關(guān)聯(lián)的被請(qǐng)求節(jié)點(diǎn)組播地址,或者就是被請(qǐng)求目標(biāo)地址本身。ICMPV6報(bào)頭域中的目標(biāo)地址域?yàn)楸徽?qǐng)求目標(biāo)地址。選項(xiàng)域可以包含源鏈路層地址選項(xiàng),用來(lái)告訴對(duì)方發(fā)送請(qǐng)求節(jié)點(diǎn)的MAC地址,當(dāng)源地址為指定地址時(shí)必須包含該選項(xiàng)。

◆鄰居公告報(bào)文

類型值為136,用來(lái)響應(yīng)鄰居請(qǐng)求報(bào)文,或者用來(lái)告知節(jié)點(diǎn)其鏈路層地址的改變,報(bào)文IP頭的源地址為發(fā)送鄰居公告報(bào)文的接口地址,目的地址為發(fā)送鄰居請(qǐng)求的單播地址,或者是用來(lái)公告給所有鄰居節(jié)點(diǎn)其鏈路層地址改變的全節(jié)點(diǎn)多播地址。目標(biāo)地址就是被解釋的IPv6地址,或者在地址***性驗(yàn)證中將要采用的IPv6協(xié)議地址。地址解釋就是節(jié)點(diǎn)僅僅知道鄰居節(jié)點(diǎn)IP地址的情況下,通過(guò)發(fā)送鄰居請(qǐng)求報(bào)文和接收鄰居公告報(bào)文,來(lái)得到對(duì)應(yīng)節(jié)點(diǎn)鏈路層地址的過(guò)程,是IPv6協(xié)議棧中鄰居發(fā)現(xiàn)模塊中最重要的一個(gè)功能模塊。

節(jié)點(diǎn)A知道節(jié)點(diǎn)B的鏈路IPv6協(xié)議地址

FEC0:0:0:1::B但不知道節(jié)點(diǎn)B的鏈路層地址00-10-5C-F7-5C-96,沿箭頭方向,A發(fā)送鄰居請(qǐng)求報(bào)文,IP域的目的地址是要求被解釋的目標(biāo)地址FEC0:0:0:1::B。節(jié)點(diǎn)B收到鄰居請(qǐng)求報(bào)文后,查看目標(biāo)地址就是屬于本機(jī),是則發(fā)送一個(gè)單播的鄰居公告報(bào)文給A,在鄰居公告報(bào)文的目的鏈路層地址選項(xiàng)里包含節(jié)點(diǎn)B的鏈路層地址00-10-5C-F7-5C-96。這樣節(jié)點(diǎn)A知道了節(jié)點(diǎn)B的鏈路層地址,地址解釋過(guò)程完成。

責(zé)任編輯:佟健 來(lái)源: 互聯(lián)網(wǎng)
相關(guān)推薦

2010-05-26 13:58:58

IPv6協(xié)議棧

2010-05-26 14:12:06

IPv6協(xié)議

2010-06-21 15:18:19

IPv6協(xié)議棧

2010-06-07 16:58:51

linuxIPv6協(xié)議棧

2010-05-26 15:06:44

IPv6協(xié)議棧

2010-06-02 10:34:47

IPv6協(xié)議棧

2010-05-26 14:56:05

IPv6協(xié)議棧

2010-06-08 17:30:56

IPv6協(xié)議棧

2010-06-10 12:10:23

嵌入式IPv6協(xié)議棧

2010-09-09 16:42:18

嵌入式IPv6協(xié)議棧

2010-06-09 11:20:15

嵌入式IPv6協(xié)議棧

2010-05-26 14:49:06

IPv6協(xié)議棧

2020-10-15 10:54:31

安全漏洞微軟

2010-05-26 15:23:00

IPv6協(xié)議棧

2010-06-01 13:52:03

IPv6協(xié)議路由協(xié)議

2019-06-05 15:43:34

IPV6IPV4網(wǎng)站

2010-06-12 14:34:52

ipv6協(xié)議

2010-05-26 14:02:02

Mobile IPv6

2019-01-04 11:27:26

IPv6雙協(xié)議棧組播

2010-06-09 11:15:57

IPv6協(xié)議棧無(wú)線傳感器
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)