999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于RIP的網絡保護的分析與研究

2008-12-31 00:00:00茅趙陽
電腦知識與技術 2008年34期

摘要:自主路由系統常使用多種內部網關協議和外部網關協議進行路由信息交換。通過對RIP協議的深入研究和對Quagga代碼的分析、修改,文章對RIP協議的運用進行了擴展。普通的RIP協議以到達接口的跳數作為衡量距離的標準,文章在此基礎上引入新的命令因子(阻塞命令、非阻塞命令、系統負載等),這些命令與跳數的轉換相結合,向路由表內加入特殊路徑,從而實現Quagga功能的擴展和網絡的保護。

關鍵詞:路由;網關協議;RIP;命令因子;擴展

中圖分類號:TP393文獻標識碼:A文章編號:1009-3044(2008)34-1573-03

Analysis and Research of Network Protection Using RIP

MAO Zhao-yang

(College of Software Engineering of Southeast University, Nanjing 211189, China)

Abstract: In a Routing AS, multiple IGP and EGP protocols are used to exchange routing information.This paper extends the function of RIP based on the deep analyze of RIP protocol and modification of Quagga code.Normal RIP measures the distance through the number of hops as the metric.This paper introduces some new command factors combining the hop and adds new entries into the routing table for in order to extend the functionality of Quagga and protect the network.

Key words: routing; gateway protocol; RIP; command factor; extending

1 RIP協議簡介

RIP協議的全稱是路由信息協議(Routing Information Protocol),它是一種內部網關協議(IGP),用于一個自治系統(AS)內的路由信息的傳遞[1]。在Quagga中RIP作為一個系統長駐進程(daemon)負責從網絡系統的其它路由器接收路由信息,從而對本地IP層路由表作動態的維護,保證IP層發送報文時選擇正確的路由,同時廣播本路由器的路由信息,通知相鄰路由器作相應的修改。RIP協議處于UDP協議的上層,其所接收的路由信息都封裝在UDP的數據報中,并對本地的路由表做相應的修改,同時通知其它路由器。通過這種方式,達到全局路由的有效。RIP使用距離矢量算法來生成自己的路由表。

2 Quagga的功能及結構

Quagga 是一個多線程,多服務分布式的免費路由軟件,它提供了OSPFv2, OSPFv3, RIP v1 and v2, RIPng 和BGP-4在多種平臺上的實現[2]。它在設計上針對每一個協議都采用一個單獨的進程來進行實現,因此Quagga具有良好的適應性和可靠性[3]。它的每一個模塊都可以單獨的更新,同時也能阻止一個模塊的錯誤擴散到整個系統中。Quagga中實現的每一個路由協議并不直接和Linux內核交互。相反,Quagga通過自己的Zebra來管理內部進程間交流,即任何別的協議的進程不能直接相互交互,只能和Zebra交互。同時Zebra負責和Linux內核進行交互。可以將Quagga模擬了一個客戶服務器模型。在這個模型當中各個協議的進程作為客戶端。而Zebra作為服務器端,負責從Linux內核分派服務和資源給客戶[4]。每一個后臺進程都有自己的路由表,Zebra進程負責內核路由表的更新和在各個協議的重分配。而別的進程主要對自身的協議實現負責。Quagga的體系結構如圖1所示[5]。

3 Quagga的功能改進分析

由于Quagga中的RIP采用的是普通的RIPV2數據包[6],在網絡節點出現問題時,會出現降低網絡數據傳輸效率,甚至會癱瘓網絡。圖2給出了一個問題網絡。

RTA和RTB分別代表正常路由器,X代表出現有問題的路由器或交換機。由于X已經出現了相關的軟件或是硬件問題,而RTA和RTB并未得知X的狀況,繼續向其發送數據信息或者通過它路由,這樣勢必會降低整個網絡的性能。為了避免類似情況的發生,應該設計一種機制,使得在X出現問題時能及時通知RTA和RTB,使它們在接收到X的問題類型的信息后能以不同的方式修改自身的路由表。比如RTA和RTB在收到X已經不能工作的信息時,可以立刻增加一條新特殊路徑,其目標為路由器X,其metric為16,進而創建一個過濾器,阻礙一切前往路由器X的包,這樣在一定程度上保護了整個網絡。

由于Quagga中沒有這樣的機制,所以本文使用一種特殊的RIP—SRIP包將特殊狀態的網絡節點的信息傳給網絡上其他需要的節點。改進目標如下所示:

1) 源路由器能夠產生RIP包并能將發送到網絡。

2) 源路由器能夠產生SRIP包來表示路由器的特殊狀態并能將其發送到網絡中。

3) 目標路由器能識RIP包并能修改自身路由表且根據特殊的RIP包采取不同的行為。

4) 目標路由器能識別SRIP包并能根據SRIP包采取不同的行為。

5) 一旦目標路由器修改了自身的路由表,它應該可以立即通知他的鄰居。

4 基于RIP的網絡保護設計

4.1 SRIP數據包格式設計

SRIP數據包使用和普通RIPv2一樣的頭部,但在其命令域中則使用12來表示SRIP數據包。圖3給出了SRIP的包頭格式。

圖3 SRIP的包頭格式

而在8比特的command位上,由于1到11已經使用,如表1所示,所以本文使用12來標識SRIP數據包。

SRIP包中的條目(entry)與普通的RIPv2包有著很大的區別:本文使用T.L.V來作為條目的內容,如圖4所示,T代表type,V代表value,L代表length。根據類型和值域,保護機制將采用不同的措施,當然在采取這些相應的措施前,得先從包頭部中提取源IP,因為有許多措施基于源地址。

圖4 SRIP的Entry格式

SRIP中的T使用兩個字節,其所代表的數據包類型如表2所示。

Block:將阻塞路由器在網絡中的使用,Unblock:恢復路由器在網絡中的使用,System load:由于負載均衡,Application:根據V中的值來做相應的操作,AdminCmd:管理員用來發送命令。

表2 Type的字段類型

4.2 保護算法設計思路

算法分為發送方和接收方。

發送方算法設計:

1) 用戶決定發送特殊包,在命令行界面鍵入相關命令。

2) 經過修改后的ripd進程將接受用戶輸入,并將其放入一個新的全局變量rte_special中,填充其內部相關的域值。

3) 在形成了全局變量rte_special后,經過修改的Ripd將使用rip_request_neighbor_all()把特殊包發送給全部鄰居。由于rip_request_neighbor_all ()發送包的機制是基于rip_request_send ()的,所以我們設計由rip_request_send ()通過檢測rte_special是否被設置來決定是否發將特殊包發送給指定目標地址。

4) 修改rip_output_process()使其周期性的發送特殊包,因為接受方加入的路徑,其實現機制當用戶輸入命令發送SRIP包,我們將對此類型的包進行一個復制,產生一個復制品,Extern struct rte_special *rte_special_regular,此特殊結構將在rip_request_send ()將rte_special設為缺省值之前,將值賦入。最后在rip_output_process()有規律的發送此副本,若要停止有規律的發送,只需要將此副本設回為默認值即可。

接收方算法設計:

1) 使用rip_read()對接收包進行一些普通的合法性檢查。

2) 從類型為Union的rip_buf中獲取數據包信息。

3) 檢查其command域中值是否是12。

4) 如果不是特殊類型則采用原有的方法進行檢驗。

5) 如果是,則使用SRIP類型來獲得rip_buf的值,然后創建一個新的普通類型的包含前面所述的特殊路徑,使用rip_response_process(rip_new_packet, size,from,ifc)將其加入路由表。

5 實驗結果分析

在RedHat 9上運行Quagga 0.99.6的結果如下。圖5所示的是本機向目標機器發送一個類型為Block的數據包,目標機器獲得這個信息,將路由表中將目的地是本機的路由設為不可達。這樣網絡中的數據信息就不會經過本機,這樣在一定程度上保護了網絡。

圖5 在目標機器中加入特殊路徑

6 結束語

RIP作為一種老式且廣泛應用的內部網關協議,有著其他許多協議不可比擬的優點,但其應用還局限于普通的路由交換,因此我們構想在可用的RIP程序中增加一種特征,使得路由表計算能夠與部分應用程序進行配合,即能將一定的應用程序(或別的路由器)的狀態或請求傳達給目的路由器,目的路由器根據收到的相關信息,采取相應的措施,這樣將單純的路由信息交互擴展到能夠實現阻塞等用戶功能,并為進一步進行擴展提供了空間。通過這樣一個對RIP協議的修改,在理論上減少了無關的路由信息,能提高網絡的傳輸速度。

參考文獻:

[1] RFC 2453[S].IETF,1998:.3-33.

[2] 黃瑜岳.基于IPV6的邊界網關路由協議BGP-4+的研究與應用[D].天津:天津工業大學,2006.

[3] Feng M,Leung R,Jun D S.Sumer Report 1999 Linux Network[D].加拿大:Network Architecture Lab Electrical and Computer Engineering University of Toronto,1999.

[4] Aweya J.IP Router Architectures: An Overview [R].1999.

[5] Brian \"Beej\" Hallr. Beej's Guide to Network Programming Using Internet Sockets[S].2005.

[6] 郭霞.路由器的開發——RIP的研究和實現[D].成都:電子科技大學,2001.

[7] Quaggaorg.Quagga 0.98 document[EB/OL].http://www.quagga.net/docs/quagga-0.98.pdf.

[8] Xuzhikun.Zebra基本配置[EB/OL].http://www.chinalinuxpub.com/read.php?wid=624.2005.

主站蜘蛛池模板: 久久a级片| av色爱 天堂网| 国产本道久久一区二区三区| 九九久久99精品| 亚洲天堂视频网站| 制服丝袜在线视频香蕉| 特级做a爰片毛片免费69| 操美女免费网站| 91破解版在线亚洲| 欧美另类第一页| 午夜欧美理论2019理论| 精品国产一区二区三区在线观看 | 国产一区二区色淫影院| 日韩区欧美国产区在线观看 | 国产激情无码一区二区免费| 露脸国产精品自产在线播| 孕妇高潮太爽了在线观看免费| 一级爱做片免费观看久久| 久久精品亚洲专区| 先锋资源久久| 福利小视频在线播放| 日韩麻豆小视频| 国产呦视频免费视频在线观看| 欧美日韩国产高清一区二区三区| 精品国产免费第一区二区三区日韩| 亚瑟天堂久久一区二区影院| 喷潮白浆直流在线播放| 午夜日b视频| 亚洲中文字幕久久无码精品A| 国产成人综合久久精品下载| 亚洲成A人V欧美综合| 国内黄色精品| 熟妇人妻无乱码中文字幕真矢织江| yy6080理论大片一级久久| 欧美一级视频免费| 亚洲欧美日韩中文字幕在线一区| 激情午夜婷婷| 成人在线观看一区| 久久公开视频| 国产aⅴ无码专区亚洲av综合网| 国内精品久久九九国产精品| 日韩精品亚洲一区中文字幕| 99999久久久久久亚洲| 香蕉99国内自产自拍视频| 中文字幕2区| 香蕉久久永久视频| 这里只有精品在线| 亚洲欧洲免费视频| 欧美在线一二区| 国产成人福利在线视老湿机| 香港一级毛片免费看| 国产福利在线观看精品| 久草网视频在线| 无码电影在线观看| 成年人视频一区二区| 国产又爽又黄无遮挡免费观看| 欧美精品成人| 99re这里只有国产中文精品国产精品| 狠狠色综合久久狠狠色综合| 中文字幕在线日本| 亚洲资源站av无码网址| 亚洲欧美人成人让影院| 中文字幕免费视频| 先锋资源久久| 国产哺乳奶水91在线播放| 国产91丝袜在线播放动漫 | 亚洲第一视频网| 国产成人一区在线播放| 青草精品视频| 波多野结衣一二三| 大香网伊人久久综合网2020| 最新无码专区超级碰碰碰| 99热国产这里只有精品9九| 凹凸精品免费精品视频| 四虎成人在线视频| 天天干天天色综合网| 亚洲综合国产一区二区三区| 国外欧美一区另类中文字幕| 嫩草影院在线观看精品视频| 在线中文字幕网| 亚洲91精品视频| 欧美亚洲国产日韩电影在线|