国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

一種面向IPv6的網(wǎng)絡拓撲發(fā)現(xiàn)系統(tǒng)的設計

2013-04-29 00:44:03曾滿江
電腦知識與技術 2013年7期
關鍵詞:雙棧隧道

曾滿江

摘要:作為網(wǎng)絡管理的基本功能,在IPv6網(wǎng)絡中研究拓撲發(fā)現(xiàn)具有重要意義。首先對比分析了IPv6與IPv4網(wǎng)絡在拓撲發(fā)現(xiàn)的差異,從地址空間、雙棧共存、隧道網(wǎng)絡等幾個方面具體分析了在IPv6網(wǎng)絡中進行拓撲發(fā)現(xiàn)需要解決的問題,結合IPv6網(wǎng)絡自身的特點,研究了進行IPv6拓撲發(fā)現(xiàn)需要掌握的關鍵技術,針對這些差異,給出了相應的拓撲發(fā)現(xiàn)解決方案。

關鍵詞:拓撲發(fā)現(xiàn);隧道;雙棧;IPv6

中圖分類號:TP393 文獻標識碼:A 文章編號:1009-3044(2013)07-1521-03

當前使用的IPv4網(wǎng)絡在可擴展性、信息安全、服務質(zhì)量、物聯(lián)網(wǎng)等端到端通信方面受到諸多制約,隨著全球范圍開展的下一代互聯(lián)網(wǎng)的部署,許多在當前互聯(lián)網(wǎng)條件下存在的問題都將迎刃而解。完全地取代IPv4網(wǎng)絡是一個曲折而漫長的過程,中國雖然在高校部署了全球最大的IPv6實驗網(wǎng)絡,在目前的應用來看,它仍然只是IPv4網(wǎng)絡的一種復制,并沒有很精彩的應用吸引眼球。無可否認的是,IPv6取代IPv4是大勢所趨,關于下一代互聯(lián)網(wǎng)的研究正成為一個新的研究熱點。

作為網(wǎng)絡管理中的一項基本功能,拓撲管理實現(xiàn)網(wǎng)絡拓撲的自動發(fā)現(xiàn),流量監(jiān)控,定期更新,設備管理等功能。由于IPv6網(wǎng)絡采用全新的地址空間,子網(wǎng)空間巨大,而且沒有在IPv4網(wǎng)絡中定義的ARP、RARP概念。在IPv4下所使用的窮舉法拓撲發(fā)現(xiàn)算法并不適用于IPv6網(wǎng)絡。

同時,針對IPv6的SNMP標準化工作尚未完成,支持IPv6的MIB對象比較少,許多字段目前還是不可訪問的(not-accessible)。針對這些問題,需要探索一種行之有效的針對IPv6的拓撲發(fā)現(xiàn)算法。

當前,國內(nèi)外對IPv6網(wǎng)絡拓撲發(fā)現(xiàn)的研究比較少。相關文獻中,法國ORIA-INRIA實驗室的I.Astic等提出了分層拓撲發(fā)現(xiàn)結構。該算法的中心思想是通過子網(wǎng)代理發(fā)送一組多播地址來發(fā)現(xiàn)子網(wǎng)內(nèi)所有節(jié)點的地址信息和主機信息,通過管理中心來處理本地代理送來的子網(wǎng)信息,由traceroute6來實現(xiàn)對骨干網(wǎng)絡的結構識別,進而分析出全網(wǎng)的拓撲結構。貝爾實驗室的Daniel G等人提出了一種基于源路由的拓撲發(fā)現(xiàn)思想,對6Bones網(wǎng)絡進行了大規(guī)模探測。Lorenzo Colitti等人提出了采用最大MTU和注入IP欺騙包的方法,該方法通過IP欺騙包的來判斷是否存在隧道,判斷隧道兩端節(jié)點信息。

以上方法針對IPv6拓撲發(fā)現(xiàn)的普遍問題,給出了相應的解決辦法,在IPv6拓撲發(fā)現(xiàn)的探索中具有借鑒意義,但由于研究人員研究的出發(fā)點、側重點不同,在一定條件下是有效的,但是在當前日趨復雜的IPv4/IPv6混合的網(wǎng)絡中不具有通用性。分層算法側重于局域網(wǎng)的管理,但是無法適用于分布式網(wǎng)絡,而且在每一個子網(wǎng)需要配置一個代理,實現(xiàn)較為復雜;源路由拓撲發(fā)現(xiàn)思想屬于實驗性質(zhì),并沒有發(fā)展為有效的拓撲管理,并且無法管理不支持源路由功能的路由器,不具備通用性;IP欺騙包算法側重于隧道網(wǎng)絡,對其他網(wǎng)絡情況沒有涉及。

本文以某高校校園網(wǎng)中存在的路由、交換設備為實驗對象,分析了IPv6網(wǎng)絡管理中的實際問題及涉及的關鍵技術,提出了一種行之有效的拓撲管理的系統(tǒng)架構。

1 IPv6拓撲發(fā)現(xiàn)關鍵技術

1.1 本地節(jié)點發(fā)現(xiàn)技術

在IPv4 網(wǎng)絡環(huán)境中,網(wǎng)絡拓撲發(fā)現(xiàn)一般通過ping遍歷子網(wǎng)空間,通過多線程發(fā)送ICMP請求發(fā)現(xiàn)在線的主機。對于一個C類子網(wǎng)來說,采用異步方式探測只需要幾秒鐘時間,也不會給網(wǎng)絡帶來負擔。而IPv6網(wǎng)絡,探測一個子網(wǎng)需要發(fā)送264個ICMP請求,這對網(wǎng)絡和程序本身來說都是不可接受的。

在RFC3513中定義了一組多播地址可以用來解決子網(wǎng)節(jié)點的探測問題。如表1所示。

[多播地址\&描述\&FF01::1\&所有本地接口地址\&FF01::2\&本地接口所有路由地址\&FF02::1\&所有本地鏈路地址\&FF02::2\&本地鏈路所有路由地址\&FF05::2\&本地站點所有路由地址\&]

對于目標地址為FF02::1的包,本地鏈路內(nèi)所有節(jié)點(包括路由器、主機)都會接收并響應;對于目標地址為FF02::2的包,本地鏈路內(nèi)所有路由器都會接收并響應。通過對這兩個多播地址發(fā)送ping6請求,即可區(qū)分本地鏈路內(nèi)的主機和路由器。

具體算法描述如下:

1) 向ping6 FF02::1 發(fā)送ICMPv6 Echo Request報文;

2) 根據(jù)收到的ICMPv6 Echo Reply 應答,將所有節(jié)點存入節(jié)點表中;

3) 向ping6 FF02::2 發(fā)送ICMPv6 Echo Request報文;

4) 根據(jù)收到的ICMPv6 Echo Reply 應答,將所有節(jié)點存入路由器表中;

5) 從節(jié)點表中取出不屬于路由器表中的項,加入到主機表中。

6) 對節(jié)點表中的設備異步讀取MIB信息,將有響應的設備存入交換機表。

此時得到的地址都是本地鏈路地址,本地鏈路地址無法與其他子網(wǎng)區(qū)分和通信,需要將本地鏈路地址轉換為全球單播地址。方法是根據(jù)無狀態(tài)自動分配地址的工作原理進行節(jié)點的全局地址配置。無狀態(tài)自動分配地址通過路由器定期發(fā)出包含子網(wǎng)前綴宣告,主機在收到宣告后根據(jù)子網(wǎng)前綴和本身的接口標識完成全局地址的配置過程。在獲得設備的本地鏈路地址后,模擬路由器以FF02::2為目的地址發(fā)送請求報文,獲得路由器宣告報文,解析得到的宣告報文即可獲得本地鏈路的子網(wǎng)前綴,將子網(wǎng)前綴與接口標識進行拼接則可得到設備的全球唯一單播地址。

1.2 骨干網(wǎng)拓撲發(fā)現(xiàn)

網(wǎng)絡層拓撲發(fā)現(xiàn)主要是對IPv6網(wǎng)絡中的路由器連接關系進行判斷,對存在的匿名路由器進行識別與合并, 從而形成最接近實際的網(wǎng)絡結構。

在骨干網(wǎng)拓撲發(fā)現(xiàn)中,可行的辦法是通過Traceroute6工具進行拓撲探測,traceroute6是一種用來進行網(wǎng)絡測量的工具,利用ICMPv6超時消息來發(fā)現(xiàn)從源地址到目的地址之間通過哪些路由器, traceroute6的結果中相鄰的兩跳路由器之間肯定是直接相連的。算法描述如下:

1) 讀取路由器IP地址列表

2) 對于列表中的每一個地址

①向該地址traceroute

②將traceroute返回的連接關系存入ConnectList

3) 整理結果

在實際的拓撲發(fā)現(xiàn)過程中,存在匿名路由器的問題,即相同匿名接口被當做不同的實際接口處理,造成拓撲更為復雜。在一個校園網(wǎng)中,網(wǎng)絡規(guī)模不大,匿名路由器現(xiàn)象并不多,在本系統(tǒng)的實際環(huán)境中簡化了設計,忽略了匿名路由器的存在。當探測對象是大規(guī)模的網(wǎng)絡環(huán)境時,必須考慮匿名路由器的問題。

1.3隧道發(fā)現(xiàn)

目前主要使用的隧道方式有6over4和6to4隧道,傳輸過程中,IPv6數(shù)據(jù)包用隧道源IPv4地址的報文進行二次封裝,經(jīng)過IPv4骨干網(wǎng)后,由另一端雙棧路由器去掉IPv4報文,繼續(xù)轉發(fā)IPv6報文。隧道發(fā)現(xiàn)模塊的功能就是對這樣的雙棧路由器進行識別,進而判斷存在雙棧的路由鏈路上是否為隧道。

1.3.1雙棧識別

在獲得了骨干網(wǎng)的每一條路徑后,首先對骨干網(wǎng)中的每個節(jié)點進行判斷是否為雙棧節(jié)點,如果是雙棧節(jié)點則繼續(xù)判斷是否存在隧道。

在判斷是否為雙棧的過程中,可通過SNMP分別讀取IPv6和IPv4地址下的MAC地址,記為、地址對的形式。交叉對比分析出來的、,如果MAC地址相同,則認為該路由器為雙棧。

算法的具體描述如下:

1) 分別讀取路由器鏈表Router4List和Router6List;

2) 依次對Router6List鏈表中的元素讀取ipv6NetToMediaPhysAddress,記錄地址對;

3) 依次對Router4List鏈表中的元素讀取PhysAddress, 記錄地址對;

4) 交叉比對、,標識具有相同MAC地址的路由器為雙棧路由器,存入雙棧路由器列表DualRouterList中。

1.3.2 隧道識別

當一個IPv6數(shù)據(jù)包經(jīng)過隧道時,IPv6數(shù)據(jù)包會被封裝到IPv4數(shù)據(jù)包中,封裝后的數(shù)據(jù)包會附加上IPv4包頭。所以,如果檢測到數(shù)據(jù)包的這種長度變化,就能判斷隧道的存在。

一般IPv6隧道將附加20B的IPv4報頭,GRE隧道附加24B或28B的IPv4報頭。假設一條鏈路的兩個端點分別為R1和R2。如果R1和R2之間不存在隧道,它們之間轉發(fā)的最大IPv6數(shù)據(jù)包長度為默認的1280B。如果存在隧道,那么能轉發(fā)的IPv6最大數(shù)據(jù)包長度則為{1500-20,1500-24,1500-28}。所以只需向目標節(jié)點發(fā)送超大報文,導致路由器對報文進行強制分片,對接收到的報文進行大小分析,當MTU∈{1480,1476,1472,1280}中某個值時,即可判斷該鏈路為隧道鏈路。

2 結論

IPv6網(wǎng)絡將解決IPv4網(wǎng)絡中暴露的諸多問題,但在全面推進的過程中也有重重困難。由于協(xié)議結構的變化,關于IPv6 SNMP標準化工作沒有完成,網(wǎng)絡管理工作在IPv6網(wǎng)絡中需要重新研究。該文分析了在IPv6網(wǎng)絡中進行拓撲發(fā)現(xiàn)的新問題,根據(jù)IPv6網(wǎng)絡的特點,引入了新的思路和方法以適應這樣的變化。在某高校的實驗網(wǎng)絡環(huán)境中能較好地適應,但介于當前實驗條件,以及IPv6 SNMP MIB定義不完整的限制,IPv6的鏈路層拓撲發(fā)現(xiàn)尚待進一步研究。

參考文獻:

[1] Daniel G W,F(xiàn)angzhe C,Ramesh Vet al.Topology Discovery for Public IPv6 Networks[J].ACM SIGCOMM Computer Communications Review,2003;33(3);59-68.

[2] 宮晨,朗昕培,陳英,等. IPv6骨干網(wǎng)絡拓撲發(fā)現(xiàn)[J].計算機科學,2006, 33( 4) : 29-31.

[3] 楊國正,陸余良,夏陽. IPv6網(wǎng)絡拓撲發(fā)現(xiàn)技術研究[J] .計算機工程,2007,33(2): 99-101.

[4] 岑賢道,安常青.網(wǎng)絡管理協(xié)議及應用開發(fā)[M].北京:清華大學出版社, 1998,20-25.

[5] 李玉鵬,王換招,田海燕,等.基于SNMP和Java的網(wǎng)絡拓撲發(fā)現(xiàn)[ J]. 計算機工程與應用, 2004,(5 ): 152-154.

[6] 楊柳,李振宇,張大方,等.冗余最小化IPv6拓撲發(fā)現(xiàn)方法[J].計算機研究與發(fā)展,2007,44(6):939-946

[7] 林之光,李英壯.一種改建的基于SNMP的網(wǎng)絡拓撲發(fā)現(xiàn)算法[J].中國海洋大學學報,2008,30(5):171-174.

[8] 楊國正,陸余良,夏陽,等.匿名路由器對抽樣網(wǎng)絡拓撲的影響分析 [J] .計算機工程,2009,35(16): 104-106.

猜你喜歡
雙棧隧道
與隧道同行
神奇的泥巴山隧道
小讀者(2019年24期)2019-01-10 23:00:37
淺析IPv6網(wǎng)絡演進及其部署方案
黑乎乎的隧道好可怕
IPv6在廣電網(wǎng)絡中的應用探討
科技資訊(2015年4期)2015-07-02 16:53:26
LED隧道照明節(jié)能改造探討
IPv4到IPv6演進技術及策略探討
IPv4和IPv6雙棧計費流程分析
電信科學(2013年1期)2013-02-28 03:04:24
上高县| 河间市| 定南县| 奉节县| 武隆县| 泗洪县| 沭阳县| 元朗区| 凤台县| 卓尼县| 庆元县| 邛崃市| 江油市| 三原县| 镇原县| 灵寿县| 徐州市| 珠海市| 大渡口区| 虎林市| 阿拉善右旗| 习水县| 武隆县| 辉县市| 新安县| 福鼎市| 绥芬河市| 嵊州市| 卓资县| 乌苏市| 汕尾市| 土默特右旗| 多伦县| 綦江县| 延吉市| 连云港市| 德令哈市| 汾西县| 肥西县| 十堰市| 荔浦县|