两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

基于路由模擬的性能優(yōu)化方法與流程

文檔序號:11878417閱讀:423來源:國知局

本發(fā)明涉及計算機網絡安全,特別涉及一種基于路由模擬的性能優(yōu)化方法。



背景技術:

隨著網絡帶寬的日益增長,網絡攻擊活動也以指數(shù)形式增長,如果要保證網絡安全,就需要進行網絡探測。由于現(xiàn)代網絡拓撲的復雜性,以往構建真實網絡運行時,往往需要大量的網絡設備,投資巨大。每次搭建真實網絡運行前,準備工作復雜、配置時間長,實驗完成之后系統(tǒng)恢復耗時較長。尤其是在真實系統(tǒng)上進行實驗可能會引起系統(tǒng)破壞或發(fā)生故障,造成很大的風險和損失。在這種背景下,網絡仿真運行平臺應運而生,在平臺上構建一個或多個網絡拓撲環(huán)境,為外界提供網絡服務、允許路由探測和安全掃描,并且在遠程主機看來,這是一個真實的網絡環(huán)境,大大縮減管理員對網絡探測的配置時間和系統(tǒng)恢復時間。然而現(xiàn)有的系統(tǒng)平臺設計時沒有考慮到平臺與遠程主機的數(shù)據交互與數(shù)據捕捉問題,同時無法將物理主機隱藏在虛擬網絡運行中,進行有效保護。



技術實現(xiàn)要素:

為解決上述現(xiàn)有技術所存在的問題,本發(fā)明提出了一種基于路由模擬的性能優(yōu)化方法,包括:

在真實主機與虛擬主機之間設置虛擬路由器,對來自網絡仿真運行平臺的數(shù)據進行處理,轉送給目標主機,并且將虛擬主機向外發(fā)送的報文封裝成數(shù)據幀發(fā)送給所述網絡仿真運行平臺。

優(yōu)選地,所述虛擬路由器進一步包括網絡接口單元、數(shù)據處理單元、路由規(guī)劃單元和數(shù)據轉送單元,所述網絡接口單元用于接收和發(fā)送報文;數(shù)據處理單元用于數(shù)據檢驗、誤差控制、IP包過濾、丟包與延遲計算,其中數(shù)據檢驗包括,依次檢驗IP包頭部的校驗和、是否為錯誤報文以及是否為組播報文;誤差控制包括,處理出現(xiàn)錯誤的報文,向源主機發(fā)送報文報告出錯原因,實現(xiàn)查詢報文和誤差報告報文;IP包過濾包括,針對廣播包實現(xiàn)對IP包的過濾,丟包與延遲計算用于計算報文每經過一個路由器,所產生的延遲,以及路由器在轉送之前應該計算出的延遲,以及鏈路中的丟包率;所述路由規(guī)劃單元利用IP包實現(xiàn)路由規(guī)劃算法,從而實現(xiàn)路由規(guī)劃,并且對路由表進行維護以及更新,所述數(shù)據轉送單元根據目的IP地址查找虛擬路由表,決定向哪個虛擬路由器發(fā)送。

優(yōu)選地,所述虛擬主機用于虛擬路由器轉送給虛擬主機數(shù)據和遠程主機接收的虛擬主機訪問數(shù)據;所述虛擬主機分為網絡接口單元、通信單元、線程單元和文件處理單元,其中虛擬主機通過網絡接口單元,接收路由平臺捕捉的并通過路由器轉送的報文,所述線程單元的服務線程,啟動服務仿真腳本并建立通信,服務線程如需訪問文件,則由文件處理單元的文件系統(tǒng)代理程序執(zhí)行訪問操作;虛擬主機訪問遠程主機時,系統(tǒng)通過激活線程單元的活動線程,由活動線程啟動網絡通信軟件,注入捕捉程序;啟動網絡通信軟件,捕捉傳送數(shù)據,傳送數(shù)據經活動線程處理為虛擬主機的數(shù)據,再由通信單元加載虛擬主機特征,之后交給虛擬路由器處理,最后由平臺來發(fā)送數(shù)據。

優(yōu)選地,所述網絡仿真運行平臺在運行后,首先對自身進行初始化;將平臺調整到就緒狀態(tài),等待用戶的操作;虛擬網絡設備提供的服務通過編寫腳本來實現(xiàn),通過腳本解釋器的初始化工作完成對腳本解釋器配置文件的讀取,獲得各類腳本解釋器所在的目錄,供執(zhí)行腳本時調用;分析特征庫文件,通過加載特征庫仿真多種操作系統(tǒng)和識別遠程訪問主機的操作系統(tǒng);加載預設的網絡設備特征模板,所述特征模板也可在構建網絡運行過程中添加,供配置設備屬性時使用;打開日志文件,向文件中寫入數(shù)據,該日志文件用于網絡行為的監(jiān)控和分析;初始化平臺與外部網絡的接口,用于報文的捕捉和轉送;為緩存池分配一定的內存空間暫存收發(fā)的報文,用來虛擬網絡延遲;初始化數(shù)據量統(tǒng)計隊列,統(tǒng)計單位時間內流經平臺和虛擬網絡設備的報文流量,包括接收流量和發(fā)送流量;在初始化完成后,用戶選擇載入已經建立的網絡或新建一個網絡,完成對設備屬性的配置,設置相應的參數(shù),指定該設備所對應的接口并進行初始化,按預先設計的網絡拓撲連接各設備,對網絡的邏輯正確性進行檢驗,包括IP地址格式是否正確,是否存在相同IP,網絡連接是否正確,如果配置不正確,則將錯誤信息反饋給用戶使其重新配置,仿真過程結束后,平臺清理垃圾,關閉打開的接口和管道,釋放平臺所開辟的內存空間,同時保存網絡拓撲圖。

本發(fā)明相比現(xiàn)有技術,具有以下優(yōu)點:

本發(fā)明提出了一種基于路由模擬的性能優(yōu)化方法,不改變協(xié)議整體架構,自主構建網絡和配置參數(shù),為網絡攻擊和防御的分析提供了良好的環(huán)境。

附圖說明

圖1是根據本發(fā)明實施例的基于路由模擬的性能優(yōu)化方法的流程圖。

具體實施方式

下文與圖示本發(fā)明原理的附圖一起提供對本發(fā)明一個或者多個實施例的詳細描述。結合這樣的實施例描述本發(fā)明,但是本發(fā)明不限于任何實施例。本發(fā)明的范圍僅由權利要求書限定,并且本發(fā)明涵蓋諸多替代、修改和等同物。在下文描述中闡述諸多具體細節(jié)以便提供對本發(fā)明的透徹理解。出于示例的目的而提供這些細節(jié),并且無這些具體細節(jié)中的一些或者所有細節(jié)也可以根據權利要求書實現(xiàn)本發(fā)明。

本發(fā)明的一方面提供了一種基于路由模擬的性能優(yōu)化方法。圖1是根據本發(fā)明實施例的基于路由模擬的性能優(yōu)化方法流程圖。

本發(fā)明基于網絡仿真運行平臺,模擬各種操作系統(tǒng)及服務漏洞。在用一臺物理主機實現(xiàn)真實網絡運行仿真的基礎上,將多臺物理主機仿真的小規(guī)模網絡連接成較大規(guī)模的網絡,并為每一個網絡設備配置設備特征。對于一般用戶,平臺作為一種網絡構建工具,在平臺提供的顯示單元觀測流經平臺及網絡設備的流量。對于開發(fā)人員,平臺提供開發(fā)接口,開發(fā)滿足需要的功能塊。

整個平臺依次分為四層:控制層、設備層、程序層和通信層。各層的功能分別介紹如下:

(1)控制層負責平臺和功能塊的初始化以及運行過程中對功能塊的控制,并提供用戶接口。包括三個子單元:設備控制單元、網絡配置單元和用戶接口單元。設備控制單元負責對具體的網絡設備進行設置,包括設定操作系統(tǒng)、文件系統(tǒng)和開放的端口;網絡配置單元負責網絡拓撲的生成和輸入路由器的配置;用戶接口單元用于與仿真設備交互的接口。

(2)設備層用于模擬網絡運行中的各種網絡設備,包括主機、服務器、防火墻、路由器、集線器設備。其中主機和服務器有兩種類型,一種是仿真的網絡設備,一種是集成到真實網絡中的物理設備。

(3)程序層負責網絡設備上運行的程序和服務以及運行程序和服務所需的文件系統(tǒng),它由服務程序、通信程序和文件接口組成。服務程序包括模擬腳本或控制臺程序,用來虛擬網絡設備上運行的各種網絡服務。通信程序指具有網絡通信功能的應用軟件,通過配置,將這些應用軟件作為網絡設備上的應用程序運行,使得網絡設備以主動的方式與其它主機進行通信。文件接口用來虛擬主機的文件系統(tǒng),對線程提供文件操作服務并反映所模擬的操作系統(tǒng)的特征,包括文件的組織和文件的操作兩部分。

(4)通信層負責網絡設備的通信工作,包括協(xié)議特征庫、TCP/IP協(xié)議棧、網絡接口和顯示接口。協(xié)議特征庫包含各種操作系統(tǒng)的協(xié)議棧特征信息,用于給虛擬網絡設備的操作系統(tǒng)加載協(xié)議棧特征,識別遠程訪問主機的操作系統(tǒng)。TCP/IP協(xié)議棧用于管理平臺中的所有連接,保證設備通信的正確完成。平臺處理的協(xié)議有鏈路層協(xié)議、ARP、IP、TCP、UDP協(xié)議,應用層協(xié)議則交給應用程序實現(xiàn)。該子單元實現(xiàn)了對TCP/IP協(xié)議族的封裝,向用戶提供了各個層次上的協(xié)議數(shù)據封裝接口。這些接口可用于封裝需要傳輸?shù)膱笪?,也可以利用這些接口提取出報文中感興趣的字段進行分析。網絡接口用于將平臺接入到真實網絡中,并在平臺運行的過程中對網絡數(shù)據進行捕捉。平臺捕捉數(shù)據有兩種模式,分別是用戶模式和內核模式,用戶模式下只能工作在TCP/IP協(xié)議的傳輸層,無法直接截取數(shù)據鏈路層幀和網絡層報文,而內核模式可以獲取鏈路層的幀,實現(xiàn)中間層驅動級捕捉,包括報文捕捉、報文注入、網絡監(jiān)控和存儲到磁盤,網絡接口為用戶進行網絡應用開發(fā)和研究提供了統(tǒng)一的函數(shù)接口,利用這些接口,用戶可以對平臺進行二次開發(fā),加載功能塊。顯示接口為上層提供一些必要的顯示函數(shù)。設備層調用顯示接口,顯示接口調用系統(tǒng)顯示函數(shù)或自定義顯示函數(shù)。

各層協(xié)議使用模塊化設計,每種協(xié)議都有自己的協(xié)議頭定義,并提供對協(xié)議頭的分析和封裝操作。對于分析操作,當平臺收到數(shù)據幀時,將包含的每層數(shù)據進行相應的處理,通過多次解幀解包的操作,檢查報文頭部中的各個標志字符,確定接收數(shù)據的上層協(xié)議,最后將幀中的應用層數(shù)據交付給應用程序。對于封裝操作,當應用層數(shù)據需要通過平臺發(fā)送時,需要將數(shù)據通過協(xié)議棧進行封裝,每次封裝都要在收到數(shù)據的基礎上增加幀頭信息,最后形成可以在以太網上傳輸?shù)臄?shù)據幀。

平臺通過網絡接口捕捉到數(shù)據幀后,根據幀的類型字段判斷是地址分析報文還是IP報文,如果是地址分析報文則由平臺直接進行響應,丟棄本機發(fā)送的地址分析報文,否則交由虛擬網絡設備進行處理,處理完成的報文由平臺發(fā)送。

在報文進入虛擬網絡的入口設置輸入路由器,為了將報文交給輸入路由器進行處理,定義了平臺與輸入路由器間的緩存池,平臺將處理完的報文送入緩存池,報文在緩存池中以動態(tài)鏈表的方式存儲,如果緩存池已滿則丟棄新包。虛擬網絡設備處理報文的流程具體包括:

輸入路由器從緩存池中讀取報文,首先對報文進行預處理,檢查包的長度和校驗碼,然后從報文中分析目的地址和數(shù)據,最后根據路由表將數(shù)據發(fā)送給目標主機。主機處理完成后,在將報文發(fā)送到網關路由之前,還需要進行封裝,加載預定的特征,使其符合配置的操作系統(tǒng)特征,最后報文經輸入路由器存入緩存池。

在構建仿真的網絡時可能用到的網絡設備有主機、路由器、防火墻、集線器等。本發(fā)明的實施例只對仿真的路由器和主機進行說明。虛擬路由器是網絡環(huán)境與虛擬主機進行通信的橋梁,因此虛擬路由器不僅具有數(shù)據轉送功能,同時提供與平臺進行數(shù)據交互的接口。將路由器分為四個單元,分別為網絡接口單元、數(shù)據處理單元、路由規(guī)劃單元和數(shù)據轉送單元。各單元的功能及設計實現(xiàn)介紹如下:

網絡接口單元的功能是接收和發(fā)送報文。從路由器接入網絡的角度將路由器分為兩類:輸入路由器和普通路由器。輸入路由器是邏輯上與真實主機所在網絡直接相連的路由器,普通路由器直接或間接與輸入路由器相連。輸入路由器作為數(shù)據進入虛擬網絡運行的入口,需要對來自平臺的數(shù)據進行處理,并轉送給目標主機;同時入口路由器也需要把虛擬主機向外發(fā)送的報文封裝成數(shù)據幀交給平臺。

數(shù)據處理單元負責數(shù)據檢驗、誤差控制、IP包過濾、丟包與延遲計算。數(shù)據檢驗包括依次檢驗IP包頭部的校驗和、是否為錯誤報文以及是否為組播報文;誤差控制包括處理出現(xiàn)錯誤的報文,向源主機發(fā)送報文報告出錯原因,實現(xiàn)了兩種報文,分別是查詢報文和誤差報告報文;IP包過濾實現(xiàn)對IP包的過濾,針對的是廣播包;報文每經過一個路由器,都會產生相應的延遲,路由器在轉送之前,應該計算出延遲,同時鏈路還有一定的丟包率,丟包與延遲計算可以完成此功能。

路由規(guī)劃單元利用IP包實現(xiàn)路由規(guī)劃算法,從而實現(xiàn)路由規(guī)劃。還可以負責對路由表的維護以及更新。

轉送單元根據目的IP地址查找虛擬路由表,決定向哪個虛擬路由器發(fā)送。

平臺接入網絡的方法有多種,本實施例采用以下方法將虛擬網絡運行接入真實網絡。假設B為平臺所在的真實主機,通過路由器A接入Internet,V1-Vn為真實主機上仿真的n臺主機。若訪問者位于虛擬主機所在的局域網范圍之內。當訪問者試圖與虛擬主機Vi通信時,其中1≤i≤n,發(fā)現(xiàn)虛擬主機Vi與其位于同一個網段,則它會首先查找自己的地址分析緩存。如果緩存中有虛擬主機Vi的MAC地址,則報文直接發(fā)送出去;如果沒有虛擬主機Vi的MAC地址,則發(fā)送地址分析包來請求虛擬主機Vi的MAC地址,得到虛擬主機Vi的MAC地址后再發(fā)送數(shù)據。當虛擬主機Vi通過互聯(lián)網接收到一個遠程訪問者發(fā)送的一個報文時,路由器A接收到報文的同時并開始嘗試向外發(fā)送此包。路由器通過路由表進行檢索,并確定將此Vi包發(fā)送到什么地方。如果路由指向Vi,則該路由器則會放棄當前報文;路由器A將收到的報文轉送到另外的路由器;若路由器所在的局域網內存在Vi,Vi則會收到由路由器A傳送的包。將VI的數(shù)據流傳輸至真實主機B的過程采用以下兩種方式之一:真實主機B由發(fā)送虛擬主機Vi的路由入口來設定。通過這種方式,報文則會通過路由器轉送到虛擬主機上繼而直接發(fā)送給真實主機。在無特殊配備的路由器的情形中,路由器會使用地址分析協(xié)議的指令來查詢虛擬主機的硬件地址。但是因為沒有能做出響應的虛擬主機,分析協(xié)議的查詢指令不會得到應答。此時用真實主機的硬件地址響應上述查詢指令。允許路由器將Vi的報文傳送至真實主機。在更為復雜特殊的網絡環(huán)境下,或將一段空閑的網絡地址空間通過路由封裝連接到真實主機。

虛擬路由器從數(shù)據處理、路由規(guī)劃和數(shù)據轉送三個方面模擬了路由器的功能特性,從數(shù)據檢驗、誤差控制、IP包過濾、丟包和延遲五個方面體現(xiàn)了路由器的控制機制和鏈路特性,能夠滿足路由器仿真的要求。

對于主機的仿真,從操作系統(tǒng)的網絡構成入手,將虛擬主機分為以下四個單元,其組成為網絡接口單元、通信單元、線程單元和文件處理單元。

虛擬主機用于處理兩個來源的數(shù)據:虛擬路由器轉送給虛擬主機數(shù)據,和遠程主機接收的虛擬主機訪問數(shù)據。處理這兩種數(shù)據的方式為:主機通過網絡接口單元,接收路由平臺捕捉的通過路由器轉送的報文。線程單元的服務線程,服務線程啟動服務仿真腳本并建立通信,服務線程如需訪問文件則由文件處理單元的文件系統(tǒng)代理程序執(zhí)行訪問操作;虛擬主機訪問遠程主機時,系統(tǒng)通過激活線程單元的活動線程,由活動線程啟動網絡通信軟件,注入捕捉程序。然后,網絡通信軟件啟動,捕捉其傳送數(shù)據。傳送數(shù)據經活動線程處理為虛擬主機的數(shù)據,再由通信單元加載虛擬主機特征,之后交給虛擬路由器處理,最后由平臺來發(fā)送數(shù)據。虛擬主機各個單元的功能及設計實現(xiàn)逐一介紹如下:

網絡接口單元:在計算機網絡中主機通過IP地址來唯一標識。計算機之間的傳送數(shù)據是通過虛擬路由器來發(fā)送和接收的,虛擬主機必須連接虛擬路由器才能接入網絡。虛擬主機使用IP地址來標識,使用輸入路由器的MAC地址進行網絡通信。虛擬主機通過接收路由器轉送的報文獲取發(fā)送給自身的數(shù)據。

通信單元:實現(xiàn)對發(fā)送數(shù)據的封裝和對接收數(shù)據分類及解封裝。協(xié)議特征庫借助于現(xiàn)有掃描軟件的內置特征庫實現(xiàn)。

線程單元:主機仿真中的服務線程是為其它主機訪問虛擬主機提供服務的,通過外置的腳本或控制臺程序來實現(xiàn),并且只有在被訪問時啟動運行。服務線程與仿真腳本之間使用管道進行通信;主機仿真中的活動線程是指操作系統(tǒng)中具有網絡通信功能的線程,它可以主動向遠程主機發(fā)起連接并建立通信?;顒泳€程用于模擬線程的活動情況和網絡通信情況。

文件處理單元:文件系統(tǒng)用于對線程提供文件操作服務,它包括文件的組織和文件的操作。文件的組織采用磁盤數(shù)據組織格式將其存為一個文件,該文件分為四部分:第一部分是保留區(qū),記錄基本輸入輸出參數(shù)塊;第二部分是文件分配表,用于記錄文件系統(tǒng)空間的使用分配情況;第三部分是文件目錄,用于存儲文件的長度、地址、日期等信息;第四部分是數(shù)據區(qū),用于文件存放。

本發(fā)明的網絡仿真運行平臺運行后,首先對自身進行初始化。初始化過程將平臺調整到就緒狀態(tài),等待用戶的操作。虛擬網絡設備提供的服務都是通過編寫腳本來實現(xiàn)的,通過腳本解釋器的初始化工作完成對腳本解釋器配置文件的讀取,獲得各類腳本解釋器所在的目錄,供執(zhí)行腳本時調用。分析特征庫文件,通過加載特征庫仿真多種操作系統(tǒng)和識別遠程訪問主機的操作系統(tǒng)。加載預設的網絡設備特征模板,特征模板也可在構建網絡運行過程中添加,供配置設備屬性時使用。打開日志文件,向文件中寫入數(shù)據。日志文件用于網絡行為的監(jiān)控和分析。初始化平臺與外部網絡的接口,用于報文的捕捉和轉送。為緩存池分配一定的內存空間暫存收發(fā)的報文,用來虛擬網絡延遲。初始化數(shù)據量統(tǒng)計隊列,統(tǒng)計單位時間內流經平臺和虛擬網絡設備的報文流量,包括接收流量和發(fā)送流量。

用戶選擇載入已經建立的網絡,或新建一個網絡,按照實驗的需要添加網絡設備,并按預先設計的網絡拓撲連接各設備,形成完整的網絡模擬。添加網絡設備過程實際上是完成對設備屬性的配置,設置相應的參數(shù),指定該設備所對應的接口并將其初始化。用戶完成對網絡的配置后,對網絡的邏輯正確性進行檢驗,包括IP地址格式是否正確,是否存在相同IP,網絡連接是否正確。如果配置不正確,則平臺將錯誤信息以對話框的形式反饋給用戶,以便用戶根據反饋信息對網絡重新配置,直到網絡配置正確為止。準備就緒后,平臺即按照預定義的程序開始工作,直到實驗結束。在此期間,用戶可以實時觀測網絡的狀態(tài),也可以暫停網絡運行來查看運行情況,之后再恢復網絡的運行,還可以直接中止網絡運行。

仿真過程結束后,平臺清理垃圾,關閉打開的接口和管道,釋放平臺所開辟的內存空間,同時保存網絡拓撲圖。

綜上所述,本發(fā)明提出了一種基于路由模擬的性能優(yōu)化方法,不改變協(xié)議整體架構,自主構建網絡和配置參數(shù),為網絡攻擊和防御的分析提供了良好的環(huán)境。

顯然,本領域的技術人員應該理解,上述的本發(fā)明的各單元或各步驟可以用通用的計算系統(tǒng)來實現(xiàn),它們可以集中在單個的計算系統(tǒng)上,或者分布在多個計算系統(tǒng)所組成的網絡上,可選地,它們可以用計算系統(tǒng)可執(zhí)行的程序代碼來實現(xiàn),從而,可以將它們存儲在存儲系統(tǒng)中由計算系統(tǒng)來執(zhí)行。這樣,本發(fā)明不限制于任何特定的硬件和軟件結合。

應當理解的是,本發(fā)明的上述具體實施方式僅僅用于示例性說明或解釋本發(fā)明的原理,而不構成對本發(fā)明的限制。因此,在不偏離本發(fā)明的精神和范圍的情況下所做的任何修改、等同替換、改進等,均應包含在本發(fā)明的保護范圍之內。此外,本發(fā)明所附權利要求旨在涵蓋落入所附權利要求范圍和邊界、或者這種范圍和邊界的等同形式內的全部變化和修改例。

當前第1頁1 2 3 
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
宣武区| 科技| 伊宁市| 寿宁县| 沂水县| 湘潭县| 巍山| 广饶县| 娄底市| 托克逊县| 临清市| 黄龙县| 昌图县| 论坛| 东阿县| 旌德县| 资源县| 德阳市| 抚顺市| 临高县| 宁津县| 冀州市| 昂仁县| 启东市| 和静县| 陇川县| 奉新县| 漳州市| 连山| 正镶白旗| 诸暨市| 龙陵县| 黎川县| 仪陇县| 文成县| 和平区| 临潭县| 荥阳市| 基隆市| 桓仁| 洛宁县|