本發(fā)明屬于云環(huán)境多租戶網(wǎng)絡(luò)安全領(lǐng)域,特別是涉及一種面向云環(huán)境多租戶網(wǎng)絡(luò)的可信控制器架構(gòu)及其操作方法。
背景技術(shù):
:隨著云技術(shù)的不斷發(fā)展和日漸完善,許多企業(yè)紛紛把自己的it基礎(chǔ)設(shè)施外包給iaas云提供商以節(jié)省成本。從云提供商的角度看,這些被外包的it基礎(chǔ)設(shè)施都是虛擬的基礎(chǔ)設(shè)施,包括虛擬機以及虛擬的網(wǎng)絡(luò)設(shè)施。我們把一個被外包給云提供商的it基礎(chǔ)設(shè)施叫做租戶網(wǎng)絡(luò)(tenantnetwork,簡稱tn)。為了服務(wù)多個租戶,iaas提供商需要把一個物理的云網(wǎng)絡(luò)虛擬化成多個虛擬的tn。軟件定義網(wǎng)絡(luò)(software-definednetwork,簡稱sdn)因其網(wǎng)絡(luò)決策服務(wù)(控制層)和數(shù)據(jù)轉(zhuǎn)發(fā)功能相(數(shù)據(jù)層)分離的特點,而被越來越多的應(yīng)用于云環(huán)境,以方便云網(wǎng)絡(luò)管理,但其不能實現(xiàn)tn的自主管理。為了實現(xiàn)網(wǎng)絡(luò)虛擬化以及方便云租戶網(wǎng)絡(luò)自主管理,有人提出了虛擬軟件定義網(wǎng)絡(luò)(virtualizedsdn,簡稱vsdn)技術(shù),即在數(shù)據(jù)層和控制層之間引入sdn管理器(sdnhypervisor),它把底層的物理網(wǎng)絡(luò)映射成多個虛擬網(wǎng)絡(luò),每個虛擬網(wǎng)絡(luò)對應(yīng)一個租戶網(wǎng)絡(luò),有專門的vsdn控制器供tn管理員自主管理。然而,現(xiàn)有的vsdn技術(shù)存在以下的技術(shù)問題:首先,違背最小特權(quán)原則,即sdn管理器為云管理員提供了過大的網(wǎng)絡(luò)特權(quán),這意味著無論是云管理員本身成為內(nèi)部攻擊者,還是他所使用的管理終端被惡意入侵,都會威脅所有租戶網(wǎng)絡(luò)的安全;其次,違背職責(zé)分離原則,即vsdn控制器本來由tn管理員使用以管理租戶網(wǎng)絡(luò),而卻由云管理員分配,使得vsdn控制器的完整性易遭到惡意云管理員的破壞。技術(shù)實現(xiàn)要素:針對現(xiàn)有技術(shù)的以上缺陷或改進需求,本發(fā)明提供了一種面向云環(huán)境多租戶網(wǎng)絡(luò)的可信控制器架構(gòu)及其操作方法,其目的在于,解決現(xiàn)有vsdn技術(shù)中存在的違背最小特權(quán)和職責(zé)分離原則的問題,同時本發(fā)明在保證云租戶網(wǎng)絡(luò)自主管理的同時,提高其安全性和效率。為實現(xiàn)上述目的,按照本發(fā)明的一個方面,提供了一種面向云環(huán)境多租戶網(wǎng)絡(luò)的可信控制器架構(gòu),包括云管理員域、多個tn管理員域、以及控制域,云管理員域與外部的云管理員通信連接,tn管理員域與外部的tn管理員通信連接,控制域與云管理員域、tn管理員域、以及數(shù)據(jù)層通信連接,控制域包括網(wǎng)絡(luò)控制器和tn管理器,網(wǎng)絡(luò)控制器用于接收來自于云管理員域和tn管理員域的網(wǎng)絡(luò)命令,對該網(wǎng)絡(luò)命令進行處理后轉(zhuǎn)發(fā)給tn管理器,tn管理器用于使用虛實映射表將數(shù)據(jù)層抽象成多個虛擬的租戶網(wǎng)絡(luò),并包括網(wǎng)絡(luò)權(quán)限監(jiān)視器,用于區(qū)分和隔離云管理員和tn管理員的權(quán)限,并使用虛實映射表對來自于控制域的網(wǎng)絡(luò)命令進行轉(zhuǎn)換后,將該網(wǎng)絡(luò)命令發(fā)送給對應(yīng)的租戶網(wǎng)絡(luò),tn管理器還用于從數(shù)據(jù)層接收租戶網(wǎng)絡(luò)的狀態(tài)信息,并將狀態(tài)信息轉(zhuǎn)發(fā)到云管理域和租戶管理域,云管理員域用于運行來自于云管理員的云管理應(yīng)用程序,以實現(xiàn)對整個云網(wǎng)絡(luò)的管理,并用于啟動控制域和tn管理員域,tn管理員域用于運行來自于tn管理員的tn管理應(yīng)用程序,以實現(xiàn)對租戶網(wǎng)絡(luò)的管理。優(yōu)選地,控制域和tn管理員域都處于用戶域,云管理員域處于特權(quán)域。優(yōu)選地,虛實映射表是設(shè)置于控制器架構(gòu)的內(nèi)存中,用于記錄每個租戶網(wǎng)絡(luò)中的虛擬資源與數(shù)據(jù)層中的實際資源之間的映射關(guān)系,其中虛擬資源包括虛擬的交換機、端口、流表、組表、計量表,實際資源包括實際的交換機、端口、流表、組表、計量表。優(yōu)選地,本發(fā)明的控制器架構(gòu)進一步包括網(wǎng)絡(luò)驅(qū)動域和tn構(gòu)建域,其中網(wǎng)絡(luò)驅(qū)動域用于提供外部的云管理員與云管理員域、以及tn管理員與tn管理員域之間的通信連接,tn構(gòu)建域用于可信構(gòu)建網(wǎng)絡(luò)驅(qū)動域、控制域、以及tn管理員域??傮w而言,通過本發(fā)明所構(gòu)思的以上技術(shù)方案與現(xiàn)有技術(shù)相比,能夠取得下列有益效果:(1)本發(fā)明的控制器架構(gòu)能解決現(xiàn)有vsdn網(wǎng)絡(luò)架構(gòu)中存在的違背最小特權(quán)原則問題:由于本發(fā)明在在控制域中采用網(wǎng)絡(luò)權(quán)限監(jiān)視器,其區(qū)分和隔離了云管理員和tn管理員的網(wǎng)絡(luò)權(quán)限,因此可以有效防止云管理員本身被攻擊或他所使用的管理終端被惡意入侵所造成的攻擊tn的安全問題。(2)本發(fā)明的控制器架構(gòu)能解決現(xiàn)有vsdn網(wǎng)絡(luò)架構(gòu)中存在的違背職責(zé)分離原則問題:由于本發(fā)明采用了順序啟動和完整性驗證,其保證了架構(gòu)中各個域的啟動順序和啟動完整性,因此可以有效防止惡意云管理員破壞tn相關(guān)的網(wǎng)絡(luò)狀態(tài)完整性。(3)本發(fā)明的通用性好:首先,本發(fā)明能夠適用于任何多租戶網(wǎng)絡(luò)環(huán)境(不一定是云環(huán)境),任何多租戶網(wǎng)絡(luò)的開發(fā)者可以根據(jù)該安全需求說明部署網(wǎng)絡(luò)并且根據(jù)需要擴展新的安全需求;其次,本發(fā)明提出的基于sdn的多租戶網(wǎng)絡(luò)控制器架構(gòu)不局限于某個特定sdn控制器和虛擬化平臺,當(dāng)前任何商用的sdn控制器(比如floodlight,ryu等)和虛擬化架構(gòu)(比如xen和kvm等)都可以很容易擴展到該架構(gòu)上。(4)本發(fā)明的開銷低:在原來的vsdn架構(gòu)下tn管理應(yīng)用程序、控制器以及sdn管理器位于不同主機,頻繁的網(wǎng)絡(luò)通信會帶來不小的通信開銷。而本發(fā)明將控制器以及tn管理器放在同一個控制域,并且將tn管理應(yīng)用程序放在云內(nèi),有效的減少了頻繁的網(wǎng)絡(luò)通信帶來的開銷。按照本發(fā)明的另一方面,提供了一種面向云環(huán)境多租戶網(wǎng)絡(luò)的可信控制器架構(gòu)的操作方法,包括以下步驟:(1)云管理員域和控制域啟動,并等待接收來自于新租戶的租戶網(wǎng)絡(luò)創(chuàng)建請求;(2)云管理員域在接收到來自于新租戶的租戶網(wǎng)絡(luò)創(chuàng)建請求以后利用該租戶網(wǎng)絡(luò)創(chuàng)建請求中的系統(tǒng)內(nèi)核為該租戶創(chuàng)建tn管理員域,同時控制域根據(jù)該租戶網(wǎng)絡(luò)創(chuàng)建請求中的網(wǎng)絡(luò)需求創(chuàng)建對應(yīng)的租戶網(wǎng)絡(luò),為該租戶網(wǎng)絡(luò)分配網(wǎng)絡(luò)標(biāo)識,并將租戶網(wǎng)絡(luò)中的虛擬資源與數(shù)據(jù)層中的實際資源之間的映射關(guān)系記錄在其tn管理器的虛實映射表中;(3)tn管理員域啟動,并等待tn管理員登錄;(4)tn管理員域在tn管理員登陸后運行來自于該tn管理員的tn管理應(yīng)用程序,以生成網(wǎng)絡(luò)命令,并將該網(wǎng)絡(luò)命令發(fā)送到控制域;(5)控制域使用其網(wǎng)絡(luò)監(jiān)視器判斷接收到的網(wǎng)絡(luò)命令是否是符合權(quán)限,如果符合權(quán)限則轉(zhuǎn)入步驟(6),否則拒絕執(zhí)行該網(wǎng)絡(luò)命令;(6)控制域根據(jù)該網(wǎng)絡(luò)命令查看tn管理器中維護的虛實映射表,以將網(wǎng)絡(luò)命令中的虛擬資源轉(zhuǎn)換為實際資源,并將轉(zhuǎn)換后的網(wǎng)絡(luò)命令發(fā)送到數(shù)據(jù)層;(7)云管理員域和控制域在數(shù)據(jù)層處理完所有網(wǎng)絡(luò)命令以后等待接收來自于tn管理員的tn釋放請求;(8)云管理員域在接收到來自于tn管理員的tn釋放請求后回收租戶網(wǎng)絡(luò)中的虛擬資源,并銷毀tn管理員域;(9)控制域在tn管理器的虛實映射表中刪除租戶網(wǎng)絡(luò)中的虛擬資源與數(shù)據(jù)層中的實際資源之間的映射關(guān)系,并從數(shù)據(jù)層中刪除對應(yīng)的網(wǎng)絡(luò)命令。優(yōu)選地,本發(fā)明方法進一步包括在上述步驟(3)之后、步驟(4)之前,tn管理員域接收來自于tn管理員的完整性驗證請求,并根據(jù)該完整性驗證請求將其日志信息發(fā)送到tn管理員的步驟。優(yōu)選地,步驟(5)具體為,網(wǎng)絡(luò)監(jiān)視器是通過查看權(quán)限監(jiān)視器中的網(wǎng)絡(luò)權(quán)限判斷網(wǎng)絡(luò)命令的資源、操作和執(zhí)行者三者是否匹配來實現(xiàn)對于該網(wǎng)絡(luò)命令是否符合權(quán)限的判斷。按照本發(fā)明的另一方面,提供了一種面向云環(huán)境多租戶網(wǎng)絡(luò)的可信控制器架構(gòu)的操作方法,包括以下步驟:(1)云管理員域、tn構(gòu)建域、網(wǎng)絡(luò)驅(qū)動域和控制域依次可信啟動;其中在可信啟動過程中,由安全設(shè)備度量并記錄每個域啟動過程;(2)云管理域和控制域等待接收來自于新租戶的租戶網(wǎng)絡(luò)創(chuàng)建請求;;(3)云管理員域在接收到來自于新租戶的tn創(chuàng)建請求以后將該租戶網(wǎng)絡(luò)創(chuàng)建請求中的系統(tǒng)內(nèi)核轉(zhuǎn)發(fā)給tn構(gòu)建域,同時控制域根據(jù)該租戶網(wǎng)絡(luò)創(chuàng)建請求中的網(wǎng)絡(luò)需求創(chuàng)建對應(yīng)的租戶網(wǎng)絡(luò),為該租戶網(wǎng)絡(luò)分配網(wǎng)絡(luò)標(biāo)識,并將租戶網(wǎng)絡(luò)中的虛擬資源與數(shù)據(jù)層中的實際資源之間的映射關(guān)系記錄在其tn管理器的虛實映射表中;(4)tn構(gòu)建域利用從云管理員域接收到的系統(tǒng)內(nèi)核為該租戶可信創(chuàng)建tn管理員域。(5)tn管理員域可信啟動,并等待來自tn管理員的驗證請求;(6)網(wǎng)絡(luò)驅(qū)動域在接收到來自tn管理員的驗證請求后將其轉(zhuǎn)發(fā)給tn管理員域,tn管理員域?qū)踩O(shè)備中的日志信息通過網(wǎng)絡(luò)驅(qū)動域轉(zhuǎn)發(fā)給tn管理員,并等待tn管理員發(fā)送日志信息與tn管理員對應(yīng)的操作日志是否匹配的通知,若收到則表示匹配成功,轉(zhuǎn)到步驟(7),否則表示驗證失敗,拒絕登陸tn管理員域。(7)tn管理員域等待由網(wǎng)絡(luò)驅(qū)動域轉(zhuǎn)發(fā)的tn管理員登陸請求;(8)tn管理員域在接收到tn管理員登陸請求后向控制域發(fā)送驗證請求;(9)控制域在收到tn管理員的驗證請求后,將安全設(shè)備中的相關(guān)日志信息轉(zhuǎn)發(fā)給tn管理員域,通過網(wǎng)絡(luò)驅(qū)動域?qū)⑷罩拘畔⑥D(zhuǎn)發(fā)給tn管理員,并等待tn管理員發(fā)送日志信息與tn管理員對應(yīng)的操作日志是否匹配的通知,若收到則表示匹配成功,轉(zhuǎn)到步驟(10);否則表示驗證失敗,將錯誤信息匯報給云管理員和tn管理員。(10)tn管理員域運行來自于該tn管理員的tn管理應(yīng)用程序,以生成網(wǎng)絡(luò)命令,并將該網(wǎng)絡(luò)命令發(fā)送到控制域;(11)控制域使用其網(wǎng)絡(luò)監(jiān)視器判斷接收到的網(wǎng)絡(luò)命令是否是符合權(quán)限,如果符合權(quán)限則轉(zhuǎn)入步驟(12),否則拒絕執(zhí)行該網(wǎng)絡(luò)命令;(12)控制域根據(jù)該網(wǎng)絡(luò)命令查看tn管理器中維護的虛實映射表,以將網(wǎng)絡(luò)命令中的虛擬資源轉(zhuǎn)換為實際資源,并將轉(zhuǎn)換后的網(wǎng)絡(luò)命令發(fā)送到數(shù)據(jù)層;(13)云管理員域和控制域在數(shù)據(jù)層處理完所有網(wǎng)絡(luò)命令以后等待接收來自于tn管理員的tn釋放請求;(14)云管理員域在接收到來自于tn管理員的tn釋放請求后回收租戶網(wǎng)絡(luò)中的虛擬資源,并通過tn構(gòu)建域銷毀tn管理員域;(15)控制域在tn管理器的虛實映射表中刪除租戶網(wǎng)絡(luò)中的虛擬資源與數(shù)據(jù)層中的實際資源之間的映射關(guān)系,并從數(shù)據(jù)層中刪除對應(yīng)的網(wǎng)絡(luò)命令。優(yōu)選地,步驟(1)包括以下子步驟:(1-1)tn控制器節(jié)點的bios初始化硬件tpm的度量值,并通知啟動加載管理器加載xen虛擬機監(jiān)視器;(1-2)啟動加載管理器開始加載xen虛擬機監(jiān)視器、云管理員域的內(nèi)核和磁盤鏡像以及tn構(gòu)建域的內(nèi)核和磁盤鏡像,并將xen虛擬機監(jiān)視器和tn構(gòu)建域的度量值擴展到硬件可信平臺模塊的平臺配置寄存器中。(1-3)xen虛擬機監(jiān)視器啟動云管理員域和tn構(gòu)建域,并調(diào)度云管理員域進入運行狀態(tài);(1-4)云管理員域喚醒tn構(gòu)建域,由tn構(gòu)建域進一步啟動控制域和網(wǎng)絡(luò)驅(qū)動域,并將控制域和網(wǎng)絡(luò)驅(qū)動域的度量值擴展到硬件可信平臺模塊的平臺配置寄存器中??傮w而言,通過本發(fā)明所構(gòu)思的以上技術(shù)方案與現(xiàn)有技術(shù)相比,能夠取得下列有益效果:(1)本發(fā)明方法能解決現(xiàn)有vsdn網(wǎng)絡(luò)架構(gòu)中存在的違背最小特權(quán)原則問題:由于本發(fā)明在在控制域中采用網(wǎng)絡(luò)權(quán)限監(jiān)視器,其區(qū)分和隔離了云管理員和tn管理員的網(wǎng)絡(luò)權(quán)限,因此可以有效防止云管理員本身被攻擊或他所使用的管理終端被惡意入侵所造成的攻擊tn的安全問題。(2)本發(fā)明方法能解決現(xiàn)有vsdn網(wǎng)絡(luò)架構(gòu)中存在的違背職責(zé)分離原則問題:由于本發(fā)明采用了順序啟動和完整性驗證,其保證了架構(gòu)中各個域的啟動順序和啟動完整性,因此可以有效防止惡意云管理員破壞tn相關(guān)的網(wǎng)絡(luò)狀態(tài)完整性。(3)本發(fā)明方法能解決現(xiàn)有vsdn網(wǎng)絡(luò)架構(gòu)中存在的違背最小特權(quán)原則問題:由于本發(fā)明采用了步驟(11)和步驟(12),其檢查了云管理員和tn管理員的合法性,因此可以有效防止云管理員本身被攻擊或他所使用的管理終端被惡意入侵所造成的攻擊tn的安全問題。(4)本發(fā)明方法能解決現(xiàn)有vsdn網(wǎng)絡(luò)架構(gòu)中存在的違背職責(zé)分離原則問題:由于本發(fā)明采用了步驟(1)以及步驟(5)到步驟(9),其保證了架構(gòu)中各個域的啟動順序和啟動完整性,因此可以有效防止惡意云管理員破壞tn相關(guān)的網(wǎng)絡(luò)狀態(tài)完整性。(5)本發(fā)明的通用性好:首先,本發(fā)明能夠適用于任何多租戶網(wǎng)絡(luò)環(huán)境(不一定是云環(huán)境),任何多租戶網(wǎng)絡(luò)的開發(fā)者可以根據(jù)該安全需求說明部署網(wǎng)絡(luò)并且根據(jù)需要擴展新的安全需求;其次,本發(fā)明提出的基于sdn的多租戶網(wǎng)絡(luò)控制器架構(gòu)不局限于某個特定sdn控制器和虛擬化平臺,當(dāng)前任何商用的sdn控制器(比如floodlight,ryu等)和虛擬化架構(gòu)(比如xen和kvm等)都可以很容易擴展到該架構(gòu)上。(6)本發(fā)明的開銷低:在原來的vsdn架構(gòu)下,tn管理應(yīng)用程序、控制器以及sdn管理器位于不同主機,頻繁的網(wǎng)絡(luò)通信會帶來不小的通信開銷。而本發(fā)明將控制器以及tn管理器放在同一個控制域,并且將tn管理應(yīng)用程序放在云內(nèi),有效的減少了頻繁的網(wǎng)絡(luò)通信帶來的開銷。附圖說明圖1是根據(jù)本發(fā)明一種實施方式的面向云環(huán)境多租戶網(wǎng)絡(luò)的可信控制器架構(gòu)的架構(gòu)圖。圖2是根據(jù)本發(fā)明另一種實施方式的面向云環(huán)境多租戶網(wǎng)絡(luò)的可信控制器架構(gòu)的架構(gòu)圖。圖3是根據(jù)本發(fā)明一種實施方式的面向云環(huán)境多租戶網(wǎng)絡(luò)的可信控制器架構(gòu)的操作方法流程圖。圖4是根據(jù)本發(fā)明另一種實施方式的面向云環(huán)境多租戶網(wǎng)絡(luò)的可信控制器架構(gòu)的操作方法流程圖。具體實施方式為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點更加清楚明白,以下結(jié)合附圖及實施例,對本發(fā)明進行進一步詳細說明。應(yīng)當(dāng)理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。此外,下面所描述的本發(fā)明各個實施方式中所涉及到的技術(shù)特征只要彼此之間未構(gòu)成沖突就可以相互組合。本發(fā)明的最終目標(biāo)是實現(xiàn)云環(huán)境下多租戶網(wǎng)絡(luò)的安全可信管理,以減小惡意云管理員濫用權(quán)限攻擊租戶網(wǎng)絡(luò)。下面給出本發(fā)明基于xen虛擬化平臺和ryu控制器的具體實施方案。如圖1所示本發(fā)明面向云環(huán)境多租戶網(wǎng)絡(luò)的可信控制器架構(gòu)包括云管理員域、多個租戶網(wǎng)絡(luò)(tenantnetwork,以下簡稱tn)管理員域、以及控制域,云管理員域與外部的云管理員通信連接,tn管理員域與外部的tn管理員通信連接,控制域與云管理員域、tn管理員域、以及數(shù)據(jù)層通信連接??刂朴蚝蛅n管理員域都處于用戶域(在本發(fā)明中是xen的domu),而云管理員域處于特權(quán)域(在本發(fā)明中是xen的dom0)??刂朴虬ňW(wǎng)絡(luò)控制器(在本發(fā)明中使用的是ryu控制器)和tn管理器(tn_hypervisor),其中網(wǎng)絡(luò)控制器用于接收來自于云管理員域和tn管理員域的網(wǎng)絡(luò)命令,對該網(wǎng)絡(luò)命令進行處理后轉(zhuǎn)發(fā)給tn管理器。本發(fā)明中,tn管理員域和云管理員域是通過控制域提供的restapi接口向控制域發(fā)送網(wǎng)絡(luò)命令。tn管理器用于使用虛實映射表將數(shù)據(jù)層抽象成多個虛擬的租戶網(wǎng)絡(luò),并包括網(wǎng)絡(luò)權(quán)限監(jiān)視器,用于區(qū)分和隔離云管理員和tn管理員的權(quán)限,并使用虛實映射表對來自于控制域的網(wǎng)絡(luò)命令進行轉(zhuǎn)換后,將該網(wǎng)絡(luò)命令發(fā)送給對應(yīng)的租戶網(wǎng)絡(luò)。具體而言,虛實映射表是在控制器架構(gòu)的內(nèi)存中,用以記錄每個租戶網(wǎng)絡(luò)中的虛擬資源(包括虛擬的交換機、端口、流表、組表、計量表)與數(shù)據(jù)層中的實際資源(包括實際的交換機、端口、流表、組表、計量表)之間的映射關(guān)系。有了這張?zhí)搶嵱成浔?,各個租戶網(wǎng)絡(luò)之間的網(wǎng)絡(luò)資源得到了嚴格的隔離,因為控制域清楚的知道每個租戶網(wǎng)絡(luò)所占用的網(wǎng)絡(luò)資源,從而禁止tn管理員的非法訪問(比如一個tn管理員操縱另一個租戶網(wǎng)絡(luò)的網(wǎng)絡(luò)資源)。權(quán)限監(jiān)視器包括三類網(wǎng)絡(luò)權(quán)限如下:網(wǎng)絡(luò)劃分權(quán)限:如下表1所示,云管理員應(yīng)該擁有將網(wǎng)絡(luò)資源劃分成租戶網(wǎng)絡(luò)的權(quán)限,而tn管理員則可以將租戶網(wǎng)絡(luò)劃按需劃分成子網(wǎng)絡(luò)。此外,云管理無權(quán)配置租戶網(wǎng)絡(luò)的內(nèi)部網(wǎng)絡(luò)結(jié)構(gòu)。當(dāng)tn管理員申請?zhí)摂M機資源時,云管理員只是簡單的將虛擬機資源分配給tn管理員,由tn管理員決定如何使用這些資源。表1路由路徑權(quán)限:如下表2所示,路由路徑可分為物理路由路徑和虛擬機路由路徑兩種。tn管理員擁有在租戶網(wǎng)絡(luò)內(nèi)部配置或者查看虛擬路由路徑的權(quán)限,而云管理員則禁止配置任何物理路由路徑,因為虛擬路由路徑最終都映射成了一條或者多條物理路徑,這意味著惡意的云管理員可以篡改路由路徑攻擊租戶網(wǎng)絡(luò)。此外,云管理員也應(yīng)該禁止查看物理路由路徑,因為他可能會濫用這些路由信息攻擊租戶網(wǎng)絡(luò)。比如,假設(shè)云管理員知道兩個虛擬機之間的物理路徑經(jīng)過了一個交換機,那么惡意的云管理員則可以操縱直接連載該交換機上的虛擬機,進而偵聽或者篡改經(jīng)過該交換機的數(shù)據(jù)包。在本發(fā)明中,只有控制域有權(quán)配置查看物理路由路徑。表2網(wǎng)絡(luò)帶寬權(quán)限:如下表3所示,tn管理員有權(quán)限配置和查看租戶網(wǎng)絡(luò)內(nèi)部的帶寬和流量,而云管理員則只能配置每個租戶網(wǎng)絡(luò)的最大帶寬以及查看每個租戶網(wǎng)絡(luò)的總流量。資源操作執(zhí)行者tn的最大帶寬配置云管理員tn的最大流量查看云管理員tn內(nèi)部帶寬配置tn管理員tn內(nèi)部流量查看tn管理員表3tn管理器還用于從數(shù)據(jù)層接收租戶網(wǎng)絡(luò)的狀態(tài)信息,并將狀態(tài)信息轉(zhuǎn)發(fā)到云管理域和租戶管理域。云管理員域用于運行來自于云管理員的云管理應(yīng)用程序(云app),以實現(xiàn)對整個云網(wǎng)絡(luò)的管理,并用于啟動控制域和tn管理員域。tn管理員域用于運行來自于tn管理員的tn管理應(yīng)用程序(tnapp),以實現(xiàn)對租戶網(wǎng)絡(luò)的管理。與云管理員域不同的是,tn管理員域不需要運行一個完整的網(wǎng)絡(luò)操作系統(tǒng)(比如ryu網(wǎng)絡(luò)控制器),只需要運行一個輕量級的操作系統(tǒng)以支持tn管理應(yīng)用程序即可;此外,tn管理應(yīng)用程序運行在云中而不是在tn管理員的本地電腦。從安全角度考慮,云由專業(yè)的安全人員保護,tn管理應(yīng)用程序運行在云中降低了安全風(fēng)險;最后,從性能角度考慮,tn管理應(yīng)用程序需要與控制域進行頻繁的交互,tn管理應(yīng)用程序運行在云中一定程度上減少了通信開銷。與傳統(tǒng)的vsdn系統(tǒng)架構(gòu)相比,本發(fā)明將網(wǎng)絡(luò)控制器、tn監(jiān)視器放到同一個控制域域中,其優(yōu)勢在于域內(nèi)通信的效率要比域間通信效率高。如圖2所示,作為進一步優(yōu)選的,本發(fā)明面向云環(huán)境多租戶網(wǎng)絡(luò)的可信控制器架構(gòu)還可包括網(wǎng)絡(luò)驅(qū)動域和tn構(gòu)建域。網(wǎng)絡(luò)驅(qū)動域用于提供外部的云管理員與云管理員域、以及tn管理員與tn管理員域之間的通信連接。因為網(wǎng)絡(luò)驅(qū)動域只支持網(wǎng)絡(luò)驅(qū)動服務(wù),所以它只需要運行一個輕量級操作系統(tǒng)(比如minios)以及必要的庫程序即可。tn構(gòu)建域用于可信構(gòu)建網(wǎng)絡(luò)驅(qū)動域、控制域、以及tn管理員域。在本發(fā)明中,tn構(gòu)建域與本發(fā)明面向云環(huán)境多租戶網(wǎng)絡(luò)的可信控制器架構(gòu)上的硬件可信平臺模塊(trustedplatformmodule,簡稱tpm)交互,并運行一個用戶級守護程序用于實現(xiàn)虛擬化tpm(virtualizedtpm,簡稱vtpm),這使得控制域和tn管理員域可以分別使用各自的vtpm。值得注意的是控制域被禁止直接與硬件tpm交互,而所有的tpm操作,包括硬件tpm和vtpm操作都由tn構(gòu)建域執(zhí)行。如圖3所示,根據(jù)本發(fā)明的一個實現(xiàn)方式,本發(fā)明上述面向云環(huán)境多租戶網(wǎng)絡(luò)的可信控制器架構(gòu)的操作方法包括以下步驟:(1)云管理員域和控制域啟動,并等待接收來自于新租戶的租戶網(wǎng)絡(luò)創(chuàng)建請求;具體而言,租戶網(wǎng)絡(luò)創(chuàng)建請求中包含創(chuàng)建tn管理員域所需的系統(tǒng)內(nèi)核、以及該租戶的網(wǎng)絡(luò)需求(包括虛擬機的數(shù)量和網(wǎng)絡(luò)帶寬等);(2)云管理員域在接收到來自于新租戶的租戶網(wǎng)絡(luò)創(chuàng)建請求以后利用該租戶網(wǎng)絡(luò)創(chuàng)建請求中的系統(tǒng)內(nèi)核為該租戶創(chuàng)建tn管理員域,同時控制域根據(jù)該租戶網(wǎng)絡(luò)創(chuàng)建請求中的網(wǎng)絡(luò)需求創(chuàng)建對應(yīng)的租戶網(wǎng)絡(luò),為該租戶網(wǎng)絡(luò)分配網(wǎng)絡(luò)標(biāo)識,并將租戶網(wǎng)絡(luò)中的虛擬資源與數(shù)據(jù)層中的實際資源之間的映射關(guān)系記錄在其tn管理器的虛實映射表中;(3)tn管理員域啟動,并等待tn管理員登錄;(4)tn管理員域在tn管理員登陸后運行來自于該tn管理員的tn管理應(yīng)用程序,以生成網(wǎng)絡(luò)命令,并將該網(wǎng)絡(luò)命令發(fā)送到控制域;進一步優(yōu)選的,本發(fā)明的方法還可包括在上述步驟(3)之后、步驟(4)之前,tn管理員域接收來自于tn管理員的完整性驗證請求,并根據(jù)該完整性驗證請求將其日志信息發(fā)送到tn管理員的步驟。進一步優(yōu)選的,上述的步驟(4)也可被替換為,控制域在tn管理員登陸tn管理員域后接收來自于tn管理員的完整性驗證請求,并根據(jù)該完整性驗證請求將其日志信息發(fā)送到tn管理員,tn管理員域運行來自于該tn管理員的tn管理應(yīng)用程序,以生成網(wǎng)絡(luò)命令,并將該網(wǎng)絡(luò)命令發(fā)送到控制域的步驟。(5)控制域使用其網(wǎng)絡(luò)監(jiān)視器判斷接收到的網(wǎng)絡(luò)命令是否是符合權(quán)限,如果符合權(quán)限則轉(zhuǎn)入步驟(6),否則拒絕執(zhí)行該網(wǎng)絡(luò)命令;具體而言,網(wǎng)絡(luò)監(jiān)視器是通過查看上述表1、表2、表3判斷網(wǎng)絡(luò)命令的資源、操作和執(zhí)行者三者是否匹配來實現(xiàn)對于該網(wǎng)絡(luò)命令是否符合權(quán)限的判斷,比如,如果某個網(wǎng)絡(luò)命令的資源是子網(wǎng)絡(luò)劃分,操作是配置,執(zhí)行者是tn管理員,則其符合網(wǎng)絡(luò)權(quán)限;如果某個網(wǎng)絡(luò)命令的資源是子網(wǎng)絡(luò)劃分,操作是配置,執(zhí)行者是云管理員,則其不符合網(wǎng)絡(luò)權(quán)限;(6)控制域根據(jù)該網(wǎng)絡(luò)命令查看tn管理器中維護的虛實映射表,以將網(wǎng)絡(luò)命令中的虛擬資源轉(zhuǎn)換為實際資源,并將轉(zhuǎn)換后的網(wǎng)絡(luò)命令發(fā)送到數(shù)據(jù)層;(7)云管理員域和控制域在數(shù)據(jù)層處理完所有網(wǎng)絡(luò)命令以后等待接收來自于tn管理員的tn釋放請求;(8)云管理員域在接收到來自于tn管理員的tn釋放請求后回收租戶網(wǎng)絡(luò)中的虛擬資源,并銷毀tn管理員域;(9)控制域在tn管理器的虛實映射表中刪除租戶網(wǎng)絡(luò)中的虛擬資源與數(shù)據(jù)層中的實際資源之間的映射關(guān)系,并從數(shù)據(jù)層中刪除對應(yīng)的網(wǎng)絡(luò)命令。如圖4所示,根據(jù)本發(fā)明的另一個實施方式,面向云環(huán)境多租戶網(wǎng)絡(luò)的可信控制器架構(gòu)的操作方法包括以下步驟:(1)云管理員域、tn構(gòu)建域、網(wǎng)絡(luò)驅(qū)動域和控制域依次可信啟動;在可信啟動過程中,由安全設(shè)備度量并記錄每個域啟動過程,保證這些能夠順序啟動,在本實施方式中,安全設(shè)備是可信平臺模塊(trustedplatformmodule,簡稱tpm)。本步驟具體包括以下子步驟:(1-1)tn控制器節(jié)點的bios初始化硬件tpm的度量值,并通知啟動加載管理器(bootloader)加載xen虛擬機監(jiān)視器。(1-2)bootloader開始加載xen虛擬機監(jiān)視器、云管理員域的內(nèi)核和磁盤鏡像以及tn構(gòu)建域的內(nèi)核和磁盤鏡像,并將xen虛擬機監(jiān)視器和tn構(gòu)建域的度量值擴展到tpm的平臺配置寄存器(platformconfigurationregister,簡稱pcr)中。(1-3)xen虛擬機監(jiān)視器啟動云管理員域和tn構(gòu)建域,并調(diào)度云管理員域進入運行狀態(tài)。(1-4)云管理員域喚醒tn構(gòu)建域,由tn構(gòu)建域進一步啟動控制域和網(wǎng)絡(luò)驅(qū)動域,并將控制域和網(wǎng)絡(luò)驅(qū)動域的度量值擴展到tpm的pcr中。需要強調(diào)的是,控制域應(yīng)該在網(wǎng)絡(luò)驅(qū)動域之前完成啟動。因為網(wǎng)絡(luò)驅(qū)動域主要負責(zé)與云外部網(wǎng)絡(luò)的通信。如果網(wǎng)絡(luò)驅(qū)動域先于控制域啟動,控制域?qū)媾R許多不必要的安全風(fēng)險。比如,惡意的云管理員可以登錄到云管理員域并篡改控制域的磁盤鏡像??梢娛褂胻pm去記錄各個域的啟動順序是十分必要的。一旦某個域啟動完成,它將會加載相關(guān)軟件程序(比如控制域中的控制器服務(wù))和數(shù)據(jù)(比如tn監(jiān)視器中的虛實映射信息)。為了進一步可信驗證,這些軟件程序以及對應(yīng)的數(shù)據(jù)也會被度量并擴展到vtpm的相關(guān)pcr中。(2)云管理域和控制域等待接收來自于新租戶的租戶網(wǎng)絡(luò)創(chuàng)建請求;具體而言,租戶網(wǎng)絡(luò)創(chuàng)建請求中包含創(chuàng)建tn管理員域所需的系統(tǒng)內(nèi)核、以及該租戶的網(wǎng)絡(luò)需求(包括虛擬機的數(shù)量和網(wǎng)絡(luò)帶寬等);(3)云管理員域在接收到來自于新租戶的tn創(chuàng)建請求以后將該租戶網(wǎng)絡(luò)創(chuàng)建請求中的系統(tǒng)內(nèi)核轉(zhuǎn)發(fā)給tn構(gòu)建域,同時控制域根據(jù)該租戶網(wǎng)絡(luò)創(chuàng)建請求中的網(wǎng)絡(luò)需求創(chuàng)建對應(yīng)的租戶網(wǎng)絡(luò),為該租戶網(wǎng)絡(luò)分配網(wǎng)絡(luò)標(biāo)識,并將租戶網(wǎng)絡(luò)中的虛擬資源(包括虛擬的交換機、端口、流表、組表、計量表)與數(shù)據(jù)層中的實際資源(包括實際的交換機、端口、流表、組表、計量表)之間的映射關(guān)系記錄在其tn管理器的虛實映射表中;(4)tn構(gòu)建域利用從云管理員域接收到的系統(tǒng)內(nèi)核為該租戶可信創(chuàng)建tn管理員域。(5)tn管理員域可信啟動,并等待來自tn管理員的驗證請求;tn管理員域在啟動后,將加載相關(guān)軟件程序(比如tn管理應(yīng)用程序)和數(shù)據(jù)(比如tn管理應(yīng)用程序用到的數(shù)據(jù)),這些軟件程序以及對應(yīng)的數(shù)據(jù)也會被度量并擴展到vtpm的相關(guān)pcr中。(6)網(wǎng)絡(luò)驅(qū)動域在接收到來自tn管理員的驗證請求后將其轉(zhuǎn)發(fā)給tn管理員域,tn管理員域?qū)踩O(shè)備中的日志信息通過網(wǎng)絡(luò)驅(qū)動域轉(zhuǎn)發(fā)給tn管理員,并等待tn管理員發(fā)送日志信息與tn管理員對應(yīng)的操作日志是否匹配的通知,若收到則表示匹配成功,轉(zhuǎn)到步驟(7),否則表示驗證失敗,拒絕登陸tn管理員域。(7)tn管理員域等待由網(wǎng)絡(luò)驅(qū)動域轉(zhuǎn)發(fā)的tn管理員登陸請求;(8)tn管理員域在接收到tn管理員登陸請求后向控制域發(fā)送驗證請求;(9)控制域在收到tn管理員的驗證請求后,將安全設(shè)備中的相關(guān)日志信息轉(zhuǎn)發(fā)給tn管理員域,通過網(wǎng)絡(luò)驅(qū)動域?qū)⑷罩拘畔⑥D(zhuǎn)發(fā)給tn管理員,并等待tn管理員發(fā)送日志信息與tn管理員對應(yīng)的操作日志是否匹配的通知,若收到則表示匹配成功,轉(zhuǎn)到步驟(10);否則表示驗證失敗,將錯誤信息匯報給云管理員和tn管理員。(10)tn管理員域運行來自于該tn管理員的tn管理應(yīng)用程序,以生成網(wǎng)絡(luò)命令,并將該網(wǎng)絡(luò)命令發(fā)送到控制域;(11)控制域使用其網(wǎng)絡(luò)監(jiān)視器判斷接收到的網(wǎng)絡(luò)命令是否是符合權(quán)限,如果符合權(quán)限則轉(zhuǎn)入步驟(12),否則拒絕執(zhí)行該網(wǎng)絡(luò)命令;具體而言,網(wǎng)絡(luò)監(jiān)視器是通過查看上述表1、表2、表3判斷網(wǎng)絡(luò)命令的資源、操作和執(zhí)行者三者是否匹配來實現(xiàn)對于該網(wǎng)絡(luò)命令是否符合權(quán)限的判斷,比如,如果某個網(wǎng)絡(luò)命令的資源是子網(wǎng)絡(luò)劃分,操作是配置,執(zhí)行者是tn管理員,則其符合網(wǎng)絡(luò)權(quán)限;如果某個網(wǎng)絡(luò)命令的資源是子網(wǎng)絡(luò)劃分,操作是配置,執(zhí)行者是云管理員,則其不符合網(wǎng)絡(luò)權(quán)限;(12)控制域根據(jù)該網(wǎng)絡(luò)命令查看tn管理器中維護的虛實映射表,以將網(wǎng)絡(luò)命令中的虛擬資源轉(zhuǎn)換為實際資源,并將轉(zhuǎn)換后的網(wǎng)絡(luò)命令發(fā)送到數(shù)據(jù)層;(13)云管理員域和控制域在數(shù)據(jù)層處理完所有網(wǎng)絡(luò)命令以后等待接收來自于tn管理員的tn釋放請求;(14)云管理員域在接收到來自于tn管理員的tn釋放請求后回收租戶網(wǎng)絡(luò)中的虛擬資源,并通過tn構(gòu)建域銷毀tn管理員域;(15)控制域在tn管理器的虛實映射表中刪除租戶網(wǎng)絡(luò)中的虛擬資源與數(shù)據(jù)層中的實際資源之間的映射關(guān)系,并從數(shù)據(jù)層中刪除對應(yīng)的網(wǎng)絡(luò)命令。本領(lǐng)域的技術(shù)人員容易理解,以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。當(dāng)前第1頁12