鄧 理 吳偉楠 朱正一 陳 鳴
(南京航空航天大學計算機科學與技術學院 南京 211106)
隨著網絡應用在各行各業的普及,網絡攻擊手段層出不窮.為了防范網絡安全威脅,現行的TCPIP網絡體系結構采用“打補丁”的思路,通過不斷增加具有不同安全功能的專用設備,諸如防火墻、入侵檢測系統(IDSIPS)、深度報文檢測(DPI)等中間盒來加以應對.這導致了安全中間盒的類型、數量越來越多,并且使網絡的結構越來越復雜、開銷越來越高、性能越來越差、維護難度越來越大[1],從而使得網絡運營商不堪重負,嚴重抵消了IP技術帶來的性價比優勢.更嚴重的是,如果我們任由這種趨勢蔓延,互聯網可能變成一個功能上令人鼓舞,而技術上難以駕馭,開銷上難以承受的人造巨作.然而,提供一個完整的IP網絡安全性解決方案是非常困難的,它涉及到IP網絡體系結構等許多根本性問題[2].
考慮到在網絡的每個層次、每種協議設計上的不完善之處都可能成為網絡攻擊的對象,因此網絡安全問題實際上是許多安全問題的集合,難以通過加入具有某種安全機制的安全設備就能一勞永逸地保證網絡的安全性[3].“打補丁”的網絡安全架構浪費了大量資源,也導致網絡性能越來越差.這就要求網絡安全系統的架構應當能夠根據網絡安全需求進行智能定制,以改變現有的網絡安全系統存在的結構與功能僵化問題:1)能夠根據網絡安全的發展需求,采用軟件定義網絡(software-defined networking, SDN)技術靈活定制網絡安全系統的架構;2)能夠根據網絡安全機制多樣化的需求,采用網絡功能虛擬化(network function virtualization, NFV)的方式定制各種網絡安全機制和功能,降低資本支出(CAPEX)和運營支出(OPEX),因此這種將SDN與NFV綜合的技術是設計實現智能網絡安全系統的理想候選者.
在另一方面,不同的用戶群體有著不同的安全需求和業務需求,相應地網絡對于不同用戶群體也應當提供不同的網絡服務.例如某類用戶一直遵從網絡安全規則,沒有違反網絡安全的不良記錄.我們就沒有必要對這類用戶部署高強度、高開銷的安全中間盒處理序列(即安全服務鏈).只需要部署用戶業務所需的中間盒和低開銷的安全服務鏈,提供網絡服務和監視他們的通信行為,如Firewall→IDS→NAT.而對于出現網絡攻擊概率較大的高威脅用戶群體,就應當由特定的安全服務鏈進行專門安全監測和防范處理,如Firewall→IDSIPS→DDoS檢測→DPI→NAT.可見,在保證業務需求和網絡安全的情況下,為普通用戶部署的安全服務鏈與高威脅用戶群體部署的安全服務鏈相比,CAPEX和OPEX低,處理時延也低.
根據觀察與測試,絕大多數網絡用戶都是不會主動對網絡進行惡意攻擊的普通用戶.也存在普通用戶因為種種原因,如其設備沒有及時下載操作系統補丁程序等,導致被惡意攻擊者利用,成為發起網絡惡意攻擊的傀儡機.我們將偶爾出現網絡惡意行為的用戶稱為觀察用戶.的確存在少量用戶,他們為了達到某種目的,在網絡中嘗試惡意行為,向網絡中的其他用戶發起惡意攻擊,我們將其稱為可疑用戶.由此,我們將網絡中的用戶分為3類群體:普通用戶、觀察用戶和可疑用戶,其中觀察用戶和可疑用戶的群體數量通常較少,普通用戶的群體數量占多數.這樣,由于為多數的普通用戶提供的網絡服務的中間盒處理序列結構簡單且開銷支出低,而為可疑用戶或觀察用戶提供專門安全服務的中間盒序列盡管昂貴但數量有限,從而使得網絡安全服務整體開銷大為降低.我們將這種為不同的網絡用戶群體提供不同安全級別的服務稱為區分安全(differentiated security, DiffSec).
對支持DiffSec的網絡安全體系結構具有4項要求:
1) 能夠識別用戶身份設定其安全類別,也能夠通過其通信過程自動分析其安全行為,設定其安全類.我們將在第2節中詳細討論.
2) 為具有不同安全類別的用戶群體提供不同的安全服務,如設法為普通用戶類提供安全檢測服務,為特定的可疑用戶類提供特定的安全防范服務,為觀察用戶類提供類別轉換服務等安全服務,我們將在第2.2節中討論.
3) 能監控用戶行為,基于用戶安全行為實時變更用戶安全類別,動態調整用戶的安全服務鏈.我們將在第3節中討論.
4) 能夠在保證網絡安全的同時保證網絡的性能要求,減少CAPEX和OPEX.我們將在第4節中用原型系統實驗來驗證它.
因此,DiffSec架構設計面臨4項挑戰:
1) 新用戶接入識別和老用戶的信息存儲;
2) 實時調控用戶的安全級別,自動變更網絡為用戶提供的安全服務;
3) 支持安全服務鏈動態調控的,靈活地變更網絡轉發規則;
4) 不影響用戶原本的業務需求和網絡服務.
顯然,這種支持DiffSec的網絡安全體系結構是一種智能的新型網絡安全體系結構,需要支持實時和動態安全中間盒功能配置以及靈活的流量轉發,具有從用戶安全行為中學習的智能安全功能.SDN實現了轉發和控制的分離,網絡可編程化,通過編程配置轉發規則,為流量重定向提供了一個有前景的替代方案.NFV把中間盒的功能從硬件中移出并放到軟件中,中間盒變為運行在虛擬機中的軟件,降低了專用設備的購買成本,虛擬中間盒部署和遷移變得靈活可控.軟件定義的NFV利用網絡虛擬化和邏輯集中式管理,為DiffSec的部署提供了極大的靈活性、可編程性和智能性.本文研究目標是,論證DiffSec模型能夠在保證網絡安全的前提下,抑制網絡安全開銷不斷攀升的趨勢;在現有IP網絡的邊緣接入網中,利用SDNNFV技術設計支持DiffSec的智能安全架構.
網絡用戶行為會對網絡安全產生較大影響,網絡安全技術也必須理解網絡用戶的行為規律.文獻[4]認為,理解人類安全行為對于確保有效的信息安全環境是至關重要的,信息安全環境不能夠只依賴于技術,因此該文從歷史的視角理解和評估這些行為,通過尋找影響它們的重要因素和更好地評估,以幫助用戶來保護他們自己;文獻[5]討論了如何基于用戶過去的行為預測他們未來的行為,預測方法包括貝葉斯網絡建模,預測梯度、用戶行為的先驗概率的計算、用戶行為屬性的先驗概率計算和未來用戶行為的預測等;文獻[6]基于粒計算理論研究了網絡流量異常檢測和微博用戶行為分類技術,基于動態認知有效地識別用戶類型,對威脅行為進行安全預警;文獻[7]利用數據挖掘方法,提出了基于流量和屬性相似度的用戶分類模型,設計實現了網絡用戶關聯分析系統;文獻[8]研究了高可信網絡中的用戶業務行為,包括對網絡用戶行為的分類識別和關聯分析、用戶興趣偏好分析及預測、用戶行為熱點分析及業務審計和網絡用戶行為習慣與偏好分析挖掘技術等.盡管這些研究都僅從某個側面對用戶行為進行了分類研究,但說明用戶行為是有規律可循的.
本節給出了DiffSec的基本模型,討論了DiffSec中的用戶類型轉換,論證了DiffSec安全架構帶來的開銷增益和時延減小.
對DiffSec模型存在假設:
假設1.IP網絡中存在大量用戶,用戶集合S={Si|i=1,2,…,k}.用戶身份可識別,網絡通過對用戶通信行為數據的分析,能夠把用戶集合劃分為k個不同安全等級的子集;對于無法識別身份的用戶單獨設為一類.
S=S1∪S2∪…∪Sk,
?i≠j,Si∩Sj=?,1≤i≤k,1≤j≤k,
其中,S1是那些安全等級最高的普通用戶集合;S2是那些安全等級較高但可能出現某些安全隱患的觀察用戶集合;Si(i=3,4,…,k-1)是各種可疑用戶集合;Sk則是不能提供身份識別信息的用戶,如外部網絡用戶.


Fig. 1 Network security architecture based on multiple security middlebox combinations圖1 基于多種安全中間盒組合的網絡安全架構
設安全中間盒SMBi處理負載流量的網絡安全開銷是αi,其中i=1,2,…,m,單位為unitbit,則該安全服務鏈SSCn處理負載流量的網絡安全開銷是:
當前的網絡安全架構所需要網絡安全總開銷為
(1)

Fig. 2 DiffSec-based network security architecture圖2 基于DiffSec的網絡安全架構
假設3.對于S1子集中的用戶流量僅需要提供較少的安全服務,如安全檢測服務;對于S2中的用戶流量,則需要提供安全檢測、防火墻過濾和安全類型轉換等安全服務;對于Sk(k>2)則需要提供專門的SMB如DDoS檢測與處理等,以及深度報文檢測(DPI)等多SMB組合服務.這稱為DiffSec的網絡安全架構,如圖2所示:
此時讓每個用戶子集Si(i=1,2,…,k)的流量分別通過k條不同的安全服務鏈SSCi(i=1,2,…,k)在每條SSC上部署所需的SMB,而不是所有SMB的組合,使各類用戶得到了分類的網絡安全服務,這里的交換網絡是一種能夠區分不同安全類別用戶的接入流量,并讓不同安全類別的流量流經適當的SSCi.為了激勵用戶遵從網絡安全規則,SSC1的網絡性能應當顯著優于其他SSCi(i>1)的網絡性能.
這種架構將使網絡安全開銷和處理時延得到優化.在假設1的條件下,ni(i=1,2,…,k)表示SSCi中的SMB數量,則子集Si對應的安全服務鏈SSCi開銷分別是:

DiffSec網絡安全架構所需要安全開銷為

(2)
比較式(2)與式(1),顯然有:
CDiffSec (3) 我們優化網絡安全架構的目標是使網絡安全服務鏈的開銷總和最小化,約束條件包括中間盒功能可用性、部署中間盒和中間盒處理等的開銷.DiffSec架構的處理時延對于普通用戶流量已經降至最小,而這部分流量構成了整個網絡流量的主體,從而大大降低了網絡的平均時延. 考慮用該模型處理現實中的一個問題,如何有效地處理用戶安全類別轉換.例如情況1:因沒有及時下載并安裝操作系統的補丁程序而成為某種攻擊的代理的普通用戶;情況2:未提供身份信息的用戶Sk類用戶等.對于情況1,當他們的攻擊行為被檢測出后,該用戶將被標識為Si(i>2)類,并轉入相應通道進行處理;當該攻擊行為被清除后,它將被轉入S2類進行觀察.經過一段時間的觀察,如果行為正常,可以將其重新轉為S1類.然而,如果某用戶反復出現類似問題,他應當直接標識為Si(i>2)類,并不再讓其返回S1類.對于情況2,可以參照情況1處理流程進行. Fig. 3 User category conversion finite state machine in case 1圖3 情況1的用戶類別轉換有限狀態機 圖3給出了情況1的用戶類別轉換有限狀態機,其中的狀態Pi(i=1,2,…,k)表示某用戶位于類別Si的情況.每當檢測到攻擊i時,該用戶流就進入Pi(i≠2).系統將會隔離或清除該攻擊,并且當ω 設計該轉換有限狀態機的原則是:讓用戶安全等級轉換“慢升快降”,即一旦某用戶被檢測出有攻擊行為或沒有歷史數據說明他可信時,則一定要讓他在較低安全等級狀態停留一段時間,以便對他行為進行觀察,此時由于該類別的網絡傳輸性能比在普通用戶類中要低,從而對他的不安全或不確定的行為做出懲罰.而一旦發現某用戶進入攻擊狀態的次數大于N2,則該用戶就被確定為應當位于較低安全等級的狀態了.事實上,如果我們系統獲取了遵從DiffSec架構的網絡運行的大量數據后,就能夠采用人工智能方法學習到更為有效的狀態轉換方式和更為優化的控制方法.這是以后研究的課題. 本節采用林肯實驗室的KDD99數據集[16]對DiffSec模型進行性能評估.KDD99數據集由DARPA1999數據集經過清洗與整理而來,是IDS與機器學習研究領域中使用最多的數據集[17].KDD99數據集采用文本格式存儲,每條連接記錄表示一次完整的會話過程,記錄了41種不同特征,包含離散和連續2種數據類型.所有特征可分為網絡連接的基本特征、網絡連接的基于內容的特征和2 s時間單元的流量特征這3類.該數據集將每條記錄標記為正常和各種攻擊模式.攻擊模式分為4類:DoS(denial-of-service),R2L(unauthorized access from remote machine to a local machine),U2R(unauthorized access to local superset privileges by a local unprivileged user)和PROBE(surveillance and probing). 我們將KDD99數據集作為基礎數據集,通過對該數據集重組處理,構建具有不同網絡安全特征的數據集.我們基于KDD99數據集的標記信息將用戶分為正常模式(對應于普通用戶類)和攻擊模式(對應于可疑用戶類之一).根據DiffSec模型,我們對KDD99數據集進行處理:流量fi(i=1,2,…,5)共5類,其中fi的單位為分組(長度為1 480 B).每種類型流量對應的開銷為αi(i=1,2,…,5),αi包含了對應流量經過安全服務鏈的開銷βi和對應流量的檢測開銷γi,即αi=βi+γi.其中αi,βi,γi的單位為unitpkt.流量構成采用方案: 1) 用k+1倍KDD99數據集流量,按式(1)計算Ctraditional,則開銷為 (4) 2) 用k倍KDD99數據集流量作為計算正常流量,再將1倍KDD99數據集流量正常流量分為4份,加上2倍攻擊流量,作為4種攻擊流量,按式(2)計算CDiffSec,則開銷為 (5) 3) 計算CDiffSec與Ctraditional的比值RDiffSec: (6) 圖4給出了基于式(4)~(6)的計算結果,其中設置αi={0.1,1,1,1,1},βi={1,3,2,2,3},γi={0.1,1,1,1},k={1,2,…,9}. Fig. 4 Cost comparison of two network security architectures圖4 2種網絡安全架構的開銷對比 由圖4分析可知,隨著縱軸流量的增加,DiffSec架構的開銷增加幅度很小,表明DiffSec安全架構應對未來更多的網絡安全威脅將更具優勢.傳統網絡安全架構的開銷隨分類數量增加呈正比增長,而DiffSec架構開銷與傳統架構開銷的比值卻在下降;當正常流量所占比例越高,DiffSec架構的優勢愈明顯.其中,當k值趨于無窮時,CDiffSec與Ctraditional的比值: (7) 即隨正常流量所占比例逐漸增大時,DiffSec架構的開銷趨于占傳統網絡安全架構開銷的7%.由此證明DiffSec架構在理論上是有效的. 同時,我們可對DiffSec架構的安全處理時延進行評估.由于每類用戶的處理時延主要為對應安全服務鏈中各個SMB的處理時延與轉發時延之和,普通用戶類僅需少量的網絡安全服務,其處理時延遠小于其他安全類型用戶的處理時延.將普通用戶和具有4類攻擊模式用戶共5條安全服務鏈的處理時延分別設為di={5,60,60,60,60},單位為ms.則傳統的安全架構的時延: 圖5給出了2種網絡安全架構的處理時延比較.可以看出,DiffSec架構的每一條SSC的時延均低于Dtraditional架構SSC的,并且由于普通用戶的時延遠小于Dtraditional的,DiffSec架構的平均處理時延會更小.仍采用開銷評估中的流量構成,若傳統網絡安全架構的平均處理時延為 DiffSec架構的平均處理時延為 (8) Fig. 5 Delay time comparison of two network security architectures圖5 2種網絡安全架構的時延對比 DiffSec架構的平均處理時延的極限為 (9) Fig. 6 DiffSec average processing delay圖6 DiffSec的平均處理時延 如何基于當前IP網絡體系結構將DiffSec模型付諸實施是個挑戰.本節研究了基于SDN與NFV結合的技術,設計了采用DiffSec模型的安全接入網(SANet).探討了SDN控制器的DiffSec控制方法. 為了能夠與當前IP網絡有機融合,我們將采用DiffSec架構的安全系統部署在互聯網邊緣并與接入網融合.具體而言,我們設計了基于DiffSec架構的接入網,稱為SANet.圖7顯示了用戶端系統通過SANet接入公共互聯網的一種場景,其中的SANet既可以是NFV環境下的虛擬化SDN接入網絡,也可以采用實際SDN設備加上網絡安全設備實現.本文以虛擬化場景為例進行討論. Fig. 7 A secure access network scenario based on DiffSec圖7 一種基于DiffSec的安全接入網場景 在實踐中,如果發現一種新的網絡安全威脅,我們只需研發一種相應的vNSF,再采用軟件定義的方法修改編排器和SDN控制器的DiffSec控制流程,就能夠實現網絡安全系統升級,以應對不斷出現的網絡威脅. SANet的工作流程主要包括4個階段:用戶鑒別、控制器選路、SSC處理和安全等級調整. 1) 用戶鑒別.當某端系統接入到SANet時,SDN控制器會收到該用戶的Packet-in消息.控制器與端系統之間的流鑒別協議就能夠透明地鑒別該用戶身份并基于用戶庫信息確定其安全類別.流鑒別協議利用非對稱密鑰密碼來保證用戶身份的唯一性和鑒別信息的安全交互,實現用戶身份屬性鑒別和應用屬性鑒別[18]. 2) 控制器選路.SDN控制器根據該用戶的安全等級和DiffSec控制策略,計算得到最適合的轉發路由,并向相關SSCi下發流表形成應用流的路徑,使得該用戶流能夠到達特定的SSCi. 3)SSCi處理.用戶的分組流經過特定的SSCi時,安全服務鏈中的vNSF進行安全檢測或特定網絡安全處理,得到相應的網絡安全服務,使得分組流或被轉發到達互聯網、或被丟棄.該SSCi也會根據安全處理的結果和該流的狀態來決定它是否滿足安全類別調整的條件.如果該條件滿足,將會通告控制器. 4) 安全等級調整.SDN控制器收到某SSCi發來的安全類別調整請求,要基于DiffSec規則和系統狀態進行分析,改變該用戶的安全類別并調整網絡路徑.如何基于當前IP網絡體系結構將DiffSec模型付諸實施是個挑戰. 為了驗證DiffSec模型可行性和SANet設計方案的可用性,我們在實驗室的Lenovo ThinkServer RD550服務器上根據圖7實現了一個原型系統.該服務器具有2顆Intel Xeon E5-2620 v3 2.40 GHz CPU,RAM為32 GB,操作系統版本Ubuntu Server 14.04.4 LTS,Linux內核版本4.4.0-122-generic.服務器上的虛擬網絡環境可以通過2塊千兆以太網卡與外部實際網絡連接,如一塊卡與實驗室連接PC和便攜機的局域網相連,另一塊卡與校園網相連. 1) 基于虛擬中間盒的組件.我們采用Linux容器(LXC)作為虛擬中間盒,在該中間盒上運行相應的VNF,以構建相應的SDN控制器、vOFS、vNSF、虛擬路由器和虛擬主機等.為實現SDN網絡功能,我們在LXC中間盒上安裝配置了開源的SDN控制器ONOS,形成虛擬SDN控制器;安裝配置了Open vSwitch,形成虛擬SDN交換機.為實現vNSF功能,我們在LXC上安裝配置了Iptables,SnortSuricata等軟件,形成具有防火墻、IDSIPS等特定的vNSF.為了實現IP網絡功能,我們在LXC上安裝配置了Quagga,形成虛擬路由器和主機.通過使用Linux虛擬網橋技術,我們將虛擬中間盒按照圖5連接起來,構建成基于NFV的SANet原型系統. 2) 用戶安全服務映射.通過在ONOS控制器運行DiffSec控制程序,我們實現了DiffSec的基本邏輯,包括用戶身份識別、安全等級與身份映射、建立特定路徑、vNSF、控制器的北向接口以及用戶安全等級轉換等.在原型系統中,我們將用戶安全等級定義為5類:普通(NORMAL)、觀察(OBSERVED)、DDoS威脅(DDoS)、R2L威脅(R2L)和其他威脅(OTHERS).我們為每個授權用戶分配一個私鑰,作為Host ID;在控制器中存儲用戶安全服務映射表,表中的鍵值對表示形式為HostID,Level,Service,Level表示該用戶現在的安全等級,Service表示該用戶能夠使用的網絡服務資源,如訪問Web、電子郵件、音視頻和數據庫等.表1展示了一些用戶安全服務映射表的示例. Table 1 User Security Service Mapping Table表1 用戶安全服務映射表 Note:ωis the threshold number of times a user made security errors in the user security level conversion algorithm. 3) 用戶行為審計記錄 由于采用SDN技術,當每條流的首報文到達ONOS控制器時,控制器可以摘要提取報文首部信息,并存儲在MySQL或Hbase云計算數據庫中.這些海量的流信息可以用于用戶行為安全審計,也能夠使用人工智能技術確定新型網絡安全和網絡應用的模式. 4) 安全服務鏈通信 SSCi中的vSNF檢測到網絡攻擊并進行處理,由vSNF將有關處理信息發送給控制器ONOS,由SDN應用程序進行分析處理.為實現此功能,系統需要擴充SDN的北向接口.ONOS供外部訪問的接口有3種,即CLI,GUI和RESTful API.本系統基于RESTful API以HTTP請求的方式訪問接口,以實現對用戶的安全等級控制、流量分析和系統報警等功能. 我們在圖7所示的SANet原型系統中進行實驗,著重測試了與基于DiffSec模型的系統功能是否正確,以及SANet的性能是否合理,并對相關實驗數據進行了分析. 首先,我們要測試DiffSec控制方法是否達到了預定的效果.為使實驗更為高效,我們編制了一些測試用例,以測試用戶流是否根據預設邏輯運行,形成DiffSec的效果.其中包括主機通過SANet的路徑是否正確、特定的網絡安全功能是否起作用、合法流是否能夠訪問互聯網服務等. 1) 根據用戶類別選擇SSCi的功能.在原型系統中,我們設置了3個用戶user1,user2和user3,其安全等級分別預設為普通類、觀察類和可疑類.為此,我們首先在控制器的用戶安全服務映射表中設置相關信息,并使用他們終端系統上的瀏覽器經過SANet訪問互聯網上的某個Web服務器S1.當ONOS控制器中運行DiffSec控制方法后,我們觀察這些用戶流量經過SANet時的路徑是否正確.觀察方法是通過分析SDN控制器下發的流表,以及對SSCi中的虛擬安全中間盒使用Wireshark捕獲分組進行分析. 實驗結果是:DiffSec控制方法根據用戶類別選路的功能是正確的,并且用戶瀏覽器能夠訪問到Web服務器S1. 2) 用戶安全等級的動態調整功能.實驗的具體方案與過程如下: 對于屬于觀察類的user2端系統,使用Iperf程序以100 Mbps的速率發送分組,當N1分別設置為106,107,108,再次檢查其安全等級,發現分別經過約8,80,800 s后,該用戶可以轉變為普通類. 對于屬于普通類的user1端系統,首先讓user1和user2端系統使用Nmap軟件發送測試報文,以模擬攻擊行為.該攻擊行為包括2個特征:①在短時間內高速發送大量報文;②訪問TCP的5050和6060端口.其次,在SMB1的一個vNSF中設置Snort程序(一個常見的IDS軟件),設置2條檢測規則:檢測DDoS攻擊和禁止訪問TCP的5050,6060端口的規則.經上述實驗后,user1由普通類轉為觀察類. 實驗結果表明:SANet原型系統能夠正確地進行用戶安全等級的動態調整功能. 3) 安全等級與網絡性能的關系.為了激勵用戶養成遵守網絡安全規則的習慣,我們在SANet設計中,將SSC1路徑的SMB1帶寬設置為1 Gbps,時延設置為1 ms;而SSC2路徑的SMB2帶寬設置為10 Mbps,時延設置為100 ms.先將user1端系統設為普通類,讓其正常發送流量10 s,然后轉而發送端口掃描的流量40 s.圖8為我們使用Iperf測試得到的user1發送流量的帶寬和時延變化情況.網絡性能的這種變化反映出user1安全等級從普通類調整為觀察類.對user1的安全等級的檢查也證實了這一點. Fig. 8 user1 bandwidth and delay variation圖8 user1的帶寬和時延變化 實驗結果表明:SANet設計使得較高的安全等級的用戶具有較好的網絡性能. Fig. 9 Relationship between number of users and running time of DiffSec method圖9 DiffSec方法用戶數量和運行時間的關系 SANet原型系統采用NFV技術實現,這里需要關心此時該系統的性能是否能夠支撐實際使用. 1) 流表下發時間.在不同用戶數量時,SDN控制器在所有用戶同時發出網絡請求時,完成DiffSec控制方法的計算過程,并向vOFS發送命令,直到vOFS創建好流表項,這個過程需要的時間稱為流表下發時間.實驗中,在同一個端系統上啟動不同數量的線程發送請求,以模擬多用戶同時使用SANet的情況,統計在邊界vOFS上所有流表下發的平均時間.實驗結果如圖9所示. 實驗結果表明:流表下發時間隨用戶量增加而呈大致線性增長,并且具有較高的性能. Fig. 10 Host server CPU, memory usage and matching rules圖10 宿主服務器CPU、內存占用率與匹配規則的關系 2) 宿主服務器的CPU、內存使用情況.SANet和其他NFV網絡都運行在宿主服務器上,測量它們及其不同的安全中間盒對該服務器CPU和內存的影響非常重要.當我們分別運行防火墻(使用Iptables)、IDS(使用Snort)和DPI(使用Suricata)時,統計分析了資源使用情況.此時在Iptables,Snort上添加了數量相同的檢測規則,即檢測所有經過某個特定目的端口的TCP報文,處理方式則分別為丟棄和在日志文件中記錄特定消息.而在Suricata中則添加了一個與應用層報文匹配的規則,以模擬DPI功能,處理方式是在日志文件中記錄特定信息.我們在配置文件中分別添加了1 000和2 000條相同形式的規則,并且3個虛擬端系統每個都以10個線程進行網絡請求.圖10展示了同時使用3種安全功能對宿主服務器CPU和內存占用的影響,在設置2 000條規則時,此時CPU最大值沒有超過6%,而內存占用率沒有超過7%. 實驗結果表明:普通的宿主服務器能夠支持相當規模的SANet的傳輸與安全功能,并具有較好的網絡性能. Fig. 11 90 users’ average bandwidth, delay and packet loss圖11 90名用戶的平均帶寬、時延和丟包性能 3) 大規模用戶場景下的性能情況.采用上述測試安全等級與網絡性能的實驗場景,我們將接入網中的用戶數增加至90個.原型系統SANet中包括3條SSC路徑,其中SSC1和SSC2路徑SMB帶寬和時延設置與上述實驗完全相同,而SSC3路徑作為可信的普通用戶的通信鏈路,對它設置較小的時延參數,鏈路帶寬設置為10 Gbps.讓這90名用戶分別歸屬于3種安全類別,即普通類、觀察類和可疑類.通過用戶鑒別和路徑控制,SANet使這3類用戶分別經過上述3條SSC路徑,以測試SANet在此場合下能否滿足性能需求.圖11為我們在10 min內使用Iperf發送UDP流量,測試得到各種安全類別的用戶經過SANet所經歷的平均帶寬、平均時延和平均丟包的性能情況. 由圖11(a)可見,當用戶數量較多時,SANet原型系統對于普通用戶的用戶平均帶寬能夠到達120 Mbps以上,對于觀察類用戶平均帶寬也能夠限制在高于12 Mbps,對于可疑類用戶平均帶寬則被限制為較小.由圖11(b)可見,當用戶數量較多時,SANet對于普通用戶的平均時延為0.01 ms左右,對于觀察類用戶的平均時延也能夠控制在1 ms以上,對于可疑類用戶的平均時延則達到100 ms以上.由圖11(c)可知,當用戶數量較多時,SANet在SDN未建立流路徑時,丟包率為100%,因此在運行前30 s中平均丟包率達到30%左右;而隨著流路徑的建立,所有用戶的平均丟包率迅速下降,直至穩定在0.5%附近.這表明當用戶數量較多時,SANet原型系統有與用戶數量少時類似的性能,采用NFV與SDN結合技術實現具有DiffSec架構系統的實用性. 綜上所述,實驗結果表明:基于DiffSec模型的SANet原型網絡系統不僅功能正確,而且性能能夠滿足很多場合的實用需求. 隨著互聯網的發展,采用“打補丁”方式發展IP網絡安全架構難以為繼.為此,本文提出的區分安全模型DiffSec,為發展具有降低網絡安全的開銷和提升網絡性能潛力的新型網絡安全架構做了有益的嘗試.特別是在網絡邊緣采用基于DiffSec的接入網,不僅能夠兼容當前的互聯網技術與應用,而且能夠便于擴充新型網絡安全機制.本文基于SDN技術設計了安全接入網絡SANet的結構和智能控制,并結合了NFV技術實現了原型系統.原型系統的測試表明了基于DiffSec的SANet不僅技術上可行,而且已經具備了實用價值.下一步,我們將研究基于DiffSec的網絡安全實用化技術;在實用場景中建立測試和研究環境,采用人工智能技術分析實際數據以進一步優化設計SANet,使它適用面更廣、成本更低、效率更高.2.2 DiffSec中用戶類別轉換有限狀態機

2.3 DiffSec的性能評估






3 安全接入網的設計與實現
3.1 安全接入網的結構及其工作原理

3.2 原型系統的實現

4 原型系統實驗及其分析
4.1 功能測試與分析

4.2 性能測試與分析



5 總 結