本發(fā)明涉及Xen網(wǎng)絡(luò)通信監(jiān)控
技術(shù)領(lǐng)域:
:,具體涉及一種基于Xen特權(quán)域的網(wǎng)絡(luò)通信監(jiān)控系統(tǒng)及方法。
背景技術(shù):
::Xen是基于X86架構(gòu)、發(fā)展最快、性能最穩(wěn)定、占用資源最少的開源虛擬化技術(shù)。Xen可以在一套物理硬件上安全的執(zhí)行多個虛擬機(jī),與Linux是一個完美的開源組合。它特別適用于服務(wù)器應(yīng)用整合,可有效節(jié)省運(yùn)營成本,提高設(shè)備利用率,最大化利用數(shù)據(jù)中心的IT基礎(chǔ)架構(gòu)。Xen作為虛擬機(jī)監(jiān)控器直接運(yùn)行在硬件上,提供虛擬化環(huán)境。同時,在Xen上運(yùn)行一個具有管理接口(administrativeconsole)的虛擬機(jī)(Dom0)作為Xen的擴(kuò)展,管理Xen和其他虛擬客戶機(jī)(DomU)。Dom0是運(yùn)行在Xen之上獨(dú)一無二的虛擬機(jī),擁有訪問物理I/O資源的特權(quán),并且可以與運(yùn)行在Xen之上的其他虛擬機(jī)進(jìn)行交互。所有的Xen虛擬環(huán)境都需要先運(yùn)行Dom0,然后才可以運(yùn)行其他的虛擬客戶機(jī)。Dom0在Xen中擔(dān)任管理員的角色,它負(fù)責(zé)管理其他虛擬客戶機(jī),虛擬客戶機(jī)沒有直接訪問物理硬件的權(quán)限。作為客戶虛擬機(jī)系統(tǒng),虛擬客戶機(jī)在Xen上并行的存在多個,它們之間相互獨(dú)立,每個虛擬客戶機(jī)都擁有自己所能操作的虛擬資源(如:內(nèi)存,磁盤等)。而且允許單獨(dú)的虛擬客戶機(jī)進(jìn)行重啟和關(guān)機(jī)操作而不影響其他虛擬客戶機(jī)?,F(xiàn)有技術(shù)中對于虛擬機(jī)平臺上各虛擬域網(wǎng)絡(luò)通信信息的截獲、分析以及管理缺少行之有效的方案,需要進(jìn)一步創(chuàng)新及發(fā)展。技術(shù)實(shí)現(xiàn)要素:有鑒于此,本發(fā)明的目的在于實(shí)現(xiàn)對虛擬機(jī)平臺上各虛擬域網(wǎng)絡(luò)通信信息的截獲、分析以及管理控制,由此提出一種基于Xen特權(quán)域的網(wǎng)絡(luò)通信監(jiān)控系統(tǒng),同時提出一種基于Xen特權(quán)域的網(wǎng)絡(luò)通信監(jiān)控方法。為了實(shí)現(xiàn)以上目的,本發(fā)明提出的一種基于Xen特權(quán)域的網(wǎng)絡(luò)通信監(jiān)控系統(tǒng),包括用戶接口模塊、內(nèi)核監(jiān)控模塊和后端驅(qū)動模塊;用戶接口模塊用于獲得需要監(jiān)控的設(shè)備列表并構(gòu)建監(jiān)控任務(wù)鏈表,并傳遞進(jìn)行數(shù)據(jù)包截獲的命令和監(jiān)控任務(wù)鏈表參數(shù),同時開啟數(shù)據(jù)包接收線程;內(nèi)核監(jiān)控模塊用于根據(jù)數(shù)據(jù)包截獲命令從用戶空間將監(jiān)控任務(wù)鏈表的內(nèi)容拷貝到內(nèi)核中;后端驅(qū)動模塊用于將符合監(jiān)控任務(wù)鏈表中任務(wù)的數(shù)據(jù)包復(fù)制并存入數(shù)據(jù)包監(jiān)控隊(duì)列中;內(nèi)核監(jiān)控模塊還用于從數(shù)據(jù)包監(jiān)控隊(duì)列中取出套接字緩存結(jié)構(gòu),并將其中網(wǎng)絡(luò)傳輸?shù)臄?shù)據(jù)拷貝到用戶接口模塊中,供用戶接口模塊對數(shù)據(jù)包進(jìn)行解析及將結(jié)果顯示在用戶界面。本發(fā)明進(jìn)一步方案中,內(nèi)核監(jiān)控模塊設(shè)計(jì)為字符設(shè)備,在該模塊加載時被以設(shè)備的形式注冊到內(nèi)核中,用戶接口模塊通過控制設(shè)備的ioctl方法向內(nèi)核監(jiān)控模塊發(fā)送請求并獲取反饋數(shù)據(jù)。本發(fā)明進(jìn)一步方案中,用戶接口模塊中具有數(shù)據(jù)包分析子模塊,后端驅(qū)動模塊中具有數(shù)據(jù)包截獲子模塊;數(shù)據(jù)包經(jīng)過后端驅(qū)動被數(shù)據(jù)包截獲子模塊所截獲,后端驅(qū)動模塊拷貝一份數(shù)據(jù)包加入數(shù)據(jù)包分析隊(duì)列中;內(nèi)核監(jiān)控模塊從隊(duì)列中取出一個數(shù)據(jù)包并將其發(fā)送給用戶接口模塊;用戶接口模塊的數(shù)據(jù)包分析子模塊對數(shù)據(jù)包的信息進(jìn)行解析并顯示出來。本發(fā)明進(jìn)一步方案中,數(shù)據(jù)包分析子模塊具體用于根據(jù)套接字緩存結(jié)構(gòu)獲取相應(yīng)信息,逐級分析數(shù)據(jù)包的協(xié)議類型、地址、端口信息;并將截獲到的數(shù)據(jù)包根據(jù)系統(tǒng)對網(wǎng)絡(luò)協(xié)議的具體實(shí)現(xiàn)進(jìn)行重組和還原。本發(fā)明相應(yīng)提出的一種基于Xen特權(quán)域的網(wǎng)絡(luò)通信監(jiān)控方法,在上述基于Xen特權(quán)域的網(wǎng)絡(luò)通信監(jiān)控系統(tǒng)的基礎(chǔ)上實(shí)現(xiàn),其包括數(shù)據(jù)包截獲和分析方法;該數(shù)據(jù)包截獲和分析方法包括以下步驟:A1、用戶接口模塊讀取配置文件,從配置文件中獲得需要監(jiān)控的設(shè)備列表并構(gòu)建監(jiān)控任務(wù)鏈表;A2、用戶接口模塊調(diào)用ioctl系統(tǒng)調(diào)用,傳遞開始進(jìn)行數(shù)據(jù)包截獲的命令和監(jiān)控任務(wù)鏈表參數(shù),同時開啟數(shù)據(jù)包接收線程,每隔一定時間向內(nèi)核監(jiān)控模塊發(fā)送一次請求命令;A3、內(nèi)核監(jiān)控模塊接收到進(jìn)行數(shù)據(jù)包截獲的命令后,將數(shù)據(jù)包截獲功能使能標(biāo)記置為可用狀態(tài),然后從用戶空間將監(jiān)控任務(wù)鏈表的內(nèi)容拷貝到內(nèi)核中;A4、后端驅(qū)動模塊檢查到使能標(biāo)記為可用狀態(tài)后,將符合監(jiān)控任務(wù)鏈表中任務(wù)的數(shù)據(jù)包復(fù)制一份存入數(shù)據(jù)包監(jiān)控隊(duì)列中;A5、內(nèi)核監(jiān)控模塊每次收到用戶接口模塊的請求命令時,從數(shù)據(jù)包監(jiān)控隊(duì)列中取出一個套接字緩存結(jié)構(gòu),并將其中網(wǎng)絡(luò)傳輸?shù)臄?shù)據(jù)拷貝到用戶接口模塊中,數(shù)據(jù)包截獲過程完成;A6、用戶接口模塊在數(shù)據(jù)包接收線程中調(diào)用數(shù)據(jù)包解析函數(shù)對收到的數(shù)據(jù)包進(jìn)行解析,將結(jié)果顯示在用戶界面。本發(fā)明進(jìn)一步方案中,數(shù)據(jù)包截獲方法包括:從配置文件中讀取需要監(jiān)控的后端設(shè)備列表,并維護(hù)一個分析任務(wù)隊(duì)列,對數(shù)據(jù)包進(jìn)行初步檢查,符合該任務(wù)隊(duì)列中的某個任務(wù)時才會被拷貝截獲,否則直接放行。本發(fā)明進(jìn)一步方案中,用戶接口模塊在需要停止數(shù)據(jù)包截獲分析功能時,向內(nèi)核監(jiān)控模塊發(fā)送停止命令,并銷毀相關(guān)數(shù)據(jù)結(jié)構(gòu);內(nèi)核監(jiān)控模塊接到停止命令后將數(shù)據(jù)包截獲功能使能標(biāo)記置為不可用狀態(tài),以停止后端驅(qū)動模塊對數(shù)據(jù)包的截獲,并銷毀內(nèi)核中包括數(shù)據(jù)包監(jiān)控隊(duì)列在內(nèi)的相關(guān)數(shù)據(jù)結(jié)構(gòu)。本發(fā)明進(jìn)一步方案中,還包括后端設(shè)備查詢與控制方法;該后端設(shè)備查詢與控制方法包括以下步驟:B1、用戶接口模塊調(diào)用后端設(shè)備數(shù)查詢函數(shù),向內(nèi)核發(fā)送計(jì)數(shù)命令,獲取后端設(shè)備數(shù);B2、用戶接口模塊調(diào)用后端設(shè)備列表查詢函數(shù),根據(jù)獲得的設(shè)備數(shù),準(zhǔn)備好接收后端設(shè)備信息的鏈表,向內(nèi)核監(jiān)控模塊發(fā)送查看命令,接收到的后端設(shè)備信息存入準(zhǔn)備好的鏈表中,并顯示出來;B3、后端設(shè)備信息查詢函數(shù)以傳入的設(shè)備名稱參數(shù)為關(guān)鍵詞,在后端設(shè)備信息鏈表中查詢到設(shè)備的信息,同時顯示出來;B4設(shè)備的信息被作為用戶接口模塊傳入內(nèi)核監(jiān)控模塊的中斷命令或恢復(fù)命令的參數(shù);B5、內(nèi)核監(jiān)控模塊根據(jù)接收到的中斷命令或恢復(fù)命令,調(diào)用后端驅(qū)動模塊中的連接控制函數(shù),將對應(yīng)的后端設(shè)備的連接狀態(tài)字段相應(yīng)置為斷開或連接。本發(fā)明進(jìn)一步方案中,還包括虛擬機(jī)進(jìn)程網(wǎng)絡(luò)連接查詢方法;該虛擬機(jī)進(jìn)程網(wǎng)絡(luò)連接查詢方法包括以下步驟:C1、將虛擬機(jī)的物理地址機(jī)器地址轉(zhuǎn)換表內(nèi)存頁面映射到特權(quán)域中;C2、從Linux系統(tǒng)內(nèi)核符號導(dǎo)出表中查詢到init進(jìn)程的進(jìn)程描述符在內(nèi)核中的虛擬地址,通過物理地址機(jī)器地址轉(zhuǎn)換表將該虛擬地址轉(zhuǎn)換為該地址所處的頁框地址并計(jì)算出該地址在此頁框中的偏移;C3、根據(jù)內(nèi)核中進(jìn)程描述符的結(jié)構(gòu)定義,通過計(jì)算好的偏移量和之前得到的地址,獲取需要字段的值,從而獲得網(wǎng)絡(luò)連接相關(guān)的信息。有益效果:本發(fā)明充分利用Xen特權(quán)虛擬機(jī)對虛擬化平臺下其他虛擬機(jī)的有效管理,結(jié)合網(wǎng)絡(luò)虛擬化中特權(quán)虛擬機(jī)對所有網(wǎng)絡(luò)通信流量集中轉(zhuǎn)發(fā)處理的特點(diǎn),實(shí)現(xiàn)了對虛擬機(jī)平臺上各虛擬域網(wǎng)絡(luò)通信信息的截獲、分析,以及可實(shí)現(xiàn)在監(jiān)控網(wǎng)絡(luò)的同時主動地根據(jù)網(wǎng)絡(luò)運(yùn)行狀態(tài)實(shí)施人工的管理控制。附圖說明圖1是實(shí)施例一提出的基于Xen特權(quán)域的網(wǎng)絡(luò)通信監(jiān)控系統(tǒng)的原理框圖。圖2是圖1的基礎(chǔ)上增加的數(shù)據(jù)包截獲與分析原理框圖。圖3是圖1的基礎(chǔ)上增加后端設(shè)備查詢與控制原理框圖。圖4是圖1的基礎(chǔ)上增加的虛擬機(jī)進(jìn)程信息查看原理框圖。圖5是實(shí)施例二提出的基于Xen特權(quán)域的網(wǎng)絡(luò)通信監(jiān)控方法中數(shù)據(jù)包截獲截獲流程示意圖。圖6是實(shí)施例二提出的基于Xen特權(quán)域的網(wǎng)絡(luò)通信監(jiān)控方法中后端設(shè)備查詢與控制流程示意圖。具體實(shí)施方式為了便于本領(lǐng)域技術(shù)人員理解,下面將結(jié)合附圖以及實(shí)施例對本發(fā)明進(jìn)行進(jìn)一步描述。實(shí)施例一請參閱圖1,實(shí)施例提出的一種基于Xen特權(quán)域的網(wǎng)絡(luò)通信監(jiān)控系統(tǒng),包括用戶接口模塊10、內(nèi)核監(jiān)控模塊20和后端驅(qū)動模塊30;用戶接口模塊10用于(從配置文件中)獲得需要監(jiān)控的設(shè)備列表并構(gòu)建監(jiān)控任務(wù)鏈表,并傳遞進(jìn)行數(shù)據(jù)包截獲的命令和監(jiān)控任務(wù)鏈表參數(shù),同時開啟數(shù)據(jù)包接收線程;內(nèi)核監(jiān)控模塊20用于根據(jù)數(shù)據(jù)包截獲命令從用戶空間將監(jiān)控任務(wù)鏈表的內(nèi)容拷貝到內(nèi)核中;后端驅(qū)動模塊30用于將符合監(jiān)控任務(wù)鏈表中任務(wù)的數(shù)據(jù)包復(fù)制并存入數(shù)據(jù)包監(jiān)控隊(duì)列中;內(nèi)核監(jiān)控模塊20還用于從數(shù)據(jù)包監(jiān)控隊(duì)列中取出套接字緩存結(jié)構(gòu),并將其中網(wǎng)絡(luò)傳輸?shù)臄?shù)據(jù)拷貝到用戶接口模塊10中,供用戶接口模塊10對數(shù)據(jù)包進(jìn)行解析及將結(jié)果顯示在用戶界面。本實(shí)施例中,用戶接口模塊10承擔(dān)著接收用戶命令、處理內(nèi)核反饋的數(shù)據(jù)、顯示處理結(jié)果等功能。內(nèi)核監(jiān)控模塊20與用戶接口模塊10和后端驅(qū)動模塊30相互銜接,既有后臺對用戶命令進(jìn)行處理的功能,又承擔(dān)著在后端驅(qū)動和用戶接口之間傳遞數(shù)據(jù)的功能,同時會將一些命令請求傳遞給后端驅(qū)動來處理。后端驅(qū)動模塊30是在保留Xen后端驅(qū)動正常功能的前提下對其做了必要的修改,使其配合內(nèi)核監(jiān)控模塊20完成網(wǎng)絡(luò)通信監(jiān)控的功能。后端驅(qū)動模塊30和內(nèi)核監(jiān)控模塊20共享部分?jǐn)?shù)據(jù)結(jié)構(gòu),其中,后端驅(qū)動模塊30首先被加載到Linux內(nèi)核中,內(nèi)核監(jiān)控模塊20隨后加載,它們共享的數(shù)據(jù)結(jié)構(gòu)和函數(shù)均由后端驅(qū)動模塊30定義。內(nèi)核監(jiān)控模塊20設(shè)計(jì)為字符設(shè)備,在該模塊加載時被以設(shè)備的形式注冊到內(nèi)核中,用戶接口模塊10通過控制設(shè)備的ioctl方法向內(nèi)核監(jiān)控模塊20發(fā)送請求并獲取反饋數(shù)據(jù)。進(jìn)一步方案請參閱圖2,具體的,用戶接口模塊10中具有數(shù)據(jù)包分析子模塊,后端驅(qū)動模塊30中具有數(shù)據(jù)包截獲子模塊,數(shù)據(jù)包經(jīng)過后端驅(qū)動被數(shù)據(jù)包截獲子模塊所截獲,后端驅(qū)動模塊30拷貝一份數(shù)據(jù)包加入數(shù)據(jù)包分析隊(duì)列中;內(nèi)核監(jiān)控模塊20從隊(duì)列中取出一個數(shù)據(jù)包并將其發(fā)送給用戶接口模塊10;用戶接口模塊10的數(shù)據(jù)包分析子模塊對數(shù)據(jù)包的信息進(jìn)行解析并顯示出來。在經(jīng)過后端驅(qū)動的所有數(shù)據(jù)包中,并不是每一個都需要被截獲,系統(tǒng)從配置文件中讀取需要監(jiān)控的后端設(shè)備列表,并維護(hù)一個分析任務(wù)隊(duì)列,對數(shù)據(jù)包進(jìn)行初步檢查,符合該任務(wù)隊(duì)列中的某個任務(wù)時才會被拷貝截獲,否則直接放行。數(shù)據(jù)包的截獲僅供分析之用,不影響數(shù)據(jù)包的正常通過,因此數(shù)據(jù)包會在被拷貝后立刻得以正常發(fā)送或接收。數(shù)據(jù)包分析子模塊的具體功能是:根據(jù)套接字緩存結(jié)構(gòu)獲取相應(yīng)信息,逐級分析數(shù)據(jù)包的協(xié)議類型、地址、端口信息;并將截獲到的數(shù)據(jù)包根據(jù)系統(tǒng)對網(wǎng)絡(luò)協(xié)議的具體實(shí)現(xiàn)進(jìn)行重組和還原。本實(shí)施進(jìn)一步方案中還可包括數(shù)據(jù)包過濾模塊、后端設(shè)備查詢與控制模塊以及虛擬機(jī)進(jìn)程信息查看模塊。數(shù)據(jù)包過濾模塊利用Linux操作系統(tǒng)提供的基于包過濾技術(shù)的iptables防火墻技術(shù),將iptables防火墻作為數(shù)據(jù)包過濾模塊的主要構(gòu)成部分。本監(jiān)控系統(tǒng)在用戶接口模塊10中增加iptables防火墻規(guī)則創(chuàng)建、刪除及過濾開啟、關(guān)閉的功能子模塊,用戶通過規(guī)則設(shè)置界面,可以對iptables防火墻的規(guī)則進(jìn)行設(shè)置,或者查看已設(shè)置的規(guī)則并進(jìn)行刪除,增加,同時可以方便的開啟和關(guān)閉系統(tǒng)的過濾功能。請參閱圖3,后端設(shè)備查詢與控制模塊分為后端設(shè)備列表查詢、后端設(shè)備信息查詢和后端設(shè)備連接控制三部分功能。用戶接口模塊10進(jìn)行后端設(shè)備列表查詢時,首先調(diào)用后端設(shè)備數(shù)查詢函數(shù)獲取后端設(shè)備數(shù),然后調(diào)用后端設(shè)備列表查詢函數(shù)準(zhǔn)備好接收后端設(shè)備信息的鏈表并向內(nèi)核監(jiān)控模塊20發(fā)送有關(guān)命令;接收到的后端設(shè)備信息存入之前準(zhǔn)備好的鏈表中,并顯示在用戶界面中。后端設(shè)備查詢的命令由用戶接口模塊10發(fā)起,內(nèi)核監(jiān)控模塊20遍歷后端設(shè)備信息列表,將所有的后端設(shè)備相關(guān)信息返回給用戶接口模塊10。后端設(shè)備連接控制是通過用戶接口模塊10對后端設(shè)備發(fā)送控制命令到內(nèi)核監(jiān)控模塊20。內(nèi)核監(jiān)控模塊20通過查詢后端設(shè)備信息列表,找到該后端設(shè)備的信息,再調(diào)用后端驅(qū)動模塊,對該設(shè)備的連接狀態(tài)進(jìn)行改變,包括中端通信和通信恢復(fù)等。請參閱圖4,虛擬機(jī)進(jìn)程信息查看模塊主要采用虛擬機(jī)內(nèi)省技術(shù),通過在特權(quán)虛擬機(jī)中映射客戶虛擬機(jī)的內(nèi)存數(shù)據(jù),從Linux系統(tǒng)導(dǎo)出的內(nèi)核符號表讀取的init_task進(jìn)程描述符虛擬地址,遍歷系統(tǒng)中所有進(jìn)程描述符,獲取客戶虛擬機(jī)的進(jìn)程信息。該模塊主要完成三個功能,包括查詢進(jìn)程所有打開文件的信息、查詢該進(jìn)程對應(yīng)的網(wǎng)絡(luò)連接狀態(tài)和查詢進(jìn)程內(nèi)存映射的信息。實(shí)施例二在實(shí)施例一的基礎(chǔ)上,實(shí)施例二提出了一種基于Xen特權(quán)域的網(wǎng)絡(luò)通信監(jiān)控方法。以下主要介紹三部分:即包括數(shù)據(jù)包截獲和分析方法、后端設(shè)備查詢與控制方法、虛擬機(jī)進(jìn)程網(wǎng)絡(luò)連接查詢方法;1、數(shù)據(jù)包截獲和分析方法,請參閱圖5,包括以下步驟S110至S160:S110、用戶接口模塊讀取配置文件analysis.conf,從配置文件analysis.conf中獲得需要監(jiān)控的設(shè)備列表并構(gòu)建監(jiān)控任務(wù)鏈表analysis_task_list。S120、用戶接口模塊調(diào)用ioctl系統(tǒng)調(diào)用,傳遞開始進(jìn)行數(shù)據(jù)包截獲的命令START和監(jiān)控任務(wù)鏈表參數(shù),同時開啟數(shù)據(jù)包接收線程,每隔一定時間向內(nèi)核監(jiān)控模塊發(fā)送一次請求命令REQUEST。S130、內(nèi)核監(jiān)控模塊接收到進(jìn)行數(shù)據(jù)包截獲的命令后,將數(shù)據(jù)包截獲功能使能標(biāo)記置為可用狀態(tài),然后從用戶空間將監(jiān)控任務(wù)鏈表的內(nèi)容拷貝到內(nèi)核中。S140、后端驅(qū)動模塊檢查到使能標(biāo)記為可用狀態(tài)后,將符合監(jiān)控任務(wù)鏈表中任務(wù)的數(shù)據(jù)包復(fù)制一份存入數(shù)據(jù)包監(jiān)控隊(duì)列analysis_skb_queue中。S150、內(nèi)核監(jiān)控模塊每次收到用戶接口模塊的請求命令REQUEST時,從數(shù)據(jù)包監(jiān)控隊(duì)列analysis_skb_queue中取出一個套接字緩存結(jié)構(gòu),并將其中網(wǎng)絡(luò)傳輸?shù)臄?shù)據(jù)拷貝到用戶接口模塊中,數(shù)據(jù)包截獲過程完成。本實(shí)施例中數(shù)據(jù)包截獲方法包括:從配置文件中讀取需要監(jiān)控的后端設(shè)備列表,并維護(hù)一個分析任務(wù)隊(duì)列,對數(shù)據(jù)包進(jìn)行初步檢查,符合該任務(wù)隊(duì)列中的某個任務(wù)時才會被拷貝截獲,否則直接放行。S160、用戶接口模塊在數(shù)據(jù)包接收線程中調(diào)用數(shù)據(jù)包解析函數(shù)對收到的數(shù)據(jù)包進(jìn)行解析,將結(jié)果顯示在用戶界面。用戶接口模塊在需要停止數(shù)據(jù)包截獲分析功能時,向內(nèi)核監(jiān)控模塊發(fā)送停止命令,并銷毀相關(guān)數(shù)據(jù)結(jié)構(gòu);內(nèi)核監(jiān)控模塊接到停止命令后將數(shù)據(jù)包截獲功能使能標(biāo)記置為不可用狀態(tài),以停止后端驅(qū)動模塊對數(shù)據(jù)包的截獲,并銷毀內(nèi)核中包括數(shù)據(jù)包監(jiān)控隊(duì)列在內(nèi)的相關(guān)數(shù)據(jù)結(jié)構(gòu)。2、后端設(shè)備查詢與控制方法;請參閱圖6,包括以下步驟S210至S250:S210、用戶接口模塊調(diào)用后端設(shè)備數(shù)查詢函數(shù),向內(nèi)核發(fā)送計(jì)數(shù)命令COUNT,獲取后端設(shè)備數(shù)。S220、用戶接口模塊調(diào)用后端設(shè)備列表查詢函數(shù),根據(jù)獲得的設(shè)備數(shù),準(zhǔn)備好接收后端設(shè)備信息的鏈表,向內(nèi)核監(jiān)控模塊發(fā)送查看命令VIEW,接收到的后端設(shè)備信息存入準(zhǔn)備好的鏈表中,并顯示出來。S230、后端設(shè)備信息查詢函數(shù)以傳入的設(shè)備名稱參數(shù)為關(guān)鍵詞,在后端設(shè)備信息鏈表中查詢到設(shè)備的信息,同時顯示出來。S240設(shè)備的信息被作為用戶接口模塊傳入內(nèi)核監(jiān)控模塊的中斷命令I(lǐng)NTERRUPT或恢復(fù)命令RESUME的參數(shù)。250、內(nèi)核監(jiān)控模塊根據(jù)接收到的中斷命令I(lǐng)NTERRUPT或恢復(fù)命令RESUME,調(diào)用后端驅(qū)動模塊中的連接控制函數(shù),將對應(yīng)的后端設(shè)備的連接狀態(tài)字段相應(yīng)置為斷開或連接。3、虛擬機(jī)進(jìn)程網(wǎng)絡(luò)連接查詢方法;包括以下步驟S310至S330:S310、將虛擬機(jī)的物理地址機(jī)器地址轉(zhuǎn)換表內(nèi)存頁面映射到特權(quán)域中。S320、從Linux系統(tǒng)內(nèi)核符號導(dǎo)出表中查詢到init進(jìn)程的進(jìn)程描述符在內(nèi)核中的虛擬地址,通過物理地址機(jī)器地址轉(zhuǎn)換表(即p2mtable)將該虛擬地址轉(zhuǎn)換為該地址所處的頁框地址并計(jì)算出該地址在此頁框中的偏移。S330、根據(jù)內(nèi)核中進(jìn)程描述符的結(jié)構(gòu)定義,通過計(jì)算好的偏移量和之前得到的地址,獲取需要字段的值,從而獲得網(wǎng)絡(luò)連接相關(guān)的信息。以上所述實(shí)施例僅表達(dá)了本發(fā)明的幾種實(shí)施方式,其描述較為具體和詳細(xì),但并不能因此而理解為對本發(fā)明專利范圍的限制。應(yīng)當(dāng)指出的是,對于本領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明構(gòu)思的前提下,還可以做出若干變形和改進(jìn),這些都屬于本發(fā)明的保護(hù)范圍。因此,本發(fā)明專利的保護(hù)范圍應(yīng)以所附權(quán)利要求為準(zhǔn)。當(dāng)前第1頁1 2 3 當(dāng)前第1頁1 2 3