








摘" 要:為解決傳統網絡架構中安全設備串接帶來的一系列管理問題,將軟件定義網絡(SDN)架構應用到校園網的設計中。文章對比現有網絡架構的優勢和不足,提出了一種基于SDN服務鏈資源池的網絡架構。通過對網絡架構進行重構,采用基于OpenFlow技術的交換機作為接入平臺,由SDN控制器作為轉發層面統一對所有的流量進行調度。然后,再運用高可用性(HA)技術來保障轉發層面的可靠性,旨在建立一個靈活性高、便利性強、可靠性高和安全可控的網絡。最后,經過長期測試證明,完全達到了預先設計的目標。
關鍵詞:軟件定義網絡;服務鏈;安全資源池;高可用性
中圖分類號:TP393.0" 文獻標識碼:A" 文章編號:2096-4706(2025)01-0115-05
Design of Campus Network Exit Scheme Based on SDN Service Chain Security Resource Pool
Abstract: To address the series of management issues caused by the serial connection of security devices in traditional network architecture, the Software Defined Network (SDN) architecture is applied to the design of campus network. This paper compares the advantages and disadvantages of existing network architectures, and proposes a network architecture based on SDN service chain resource pool. Through the reconstruction of the network architecture, it adopts the switch based on OpenFlow technology as the access platform, and the SDN controller is used as the forwarding layer to uniformly schedule all traffic. Then, High Availability (HA) technology is employed to ensure the reliability of the forwarding layer, aiming to establish a network with high flexibility, convenience, reliability, security and controllability. Finally, after long-term testing, it is fully proven to have achieved the pre-designed objectives.
Keywords: SDN; service chain; security resource pool; High Availability
0" 引" 言
隨著信息化的發展,如今高校越來越多的業務被搬上網絡。隨著各項網上業務的展開,各種安全問題也相繼出現。尤其是隨著關于信息化的國家法律日益完善,對各項信息化設施的要求也越來越高。為了保障信息系統的安全,等級保護(等保)變得必不可少,而要達到等級保護的要求,就必須部署各種類型的安全設備。許多安全設備若想達到理想效果,只能串聯在網絡鏈路中。設備越多,串聯的數量也越多,最終形成了類似“糖葫蘆”的結構。如此一來,鏈路中存在的隱患也會隨之增加,任意一臺設備的故障都可能影響整個網絡。然而,當基于SDN架構的服務鏈應用于網絡設計中時,可以很好地解決這類問題[1-4]。而且,設備串聯得越多,服務鏈的價值就越高。
1" 傳統園區網的出口安全設計及問題
在園區網的架構設計中,安全設備通常部署在核心和出口鏈路之間。通過串接各種安全設備來對流量進行精細化控制,如圖1所示。然而,串接的設備不僅會成為潛在的隱患,而且在平時的運維管理中也必須格外小心,任何疏忽都可能引發全網的震蕩。傳統的組網架構不僅要求運維人員具備較高地技能,還對時間、環境等方面有較高要求。比如,在更新升級安全設備時,一般都會選擇在不影響業務的時候進行,以降低對業務的影響;在調整策略時,策略的制定必須非常謹慎,確保萬無一失后才能執行配置。
安全設備串接過多還會帶來一個不良的影響,會嚴重影響排除故障的效率。一旦某臺設備出現BUG或類似的隱性故障,要想在不影響網絡正常運行的情況下高效地解決問題,是一件不太可能實現的事情。
2" SDN服務鏈原理
為了消除安全設備串接帶來的負面影響,基于SDN服務鏈的出口資源池方案被應用在網絡出口的設計中。
2.1" SDN原理
SDN起源于美國斯坦福大學的Clean Slate研究組,后由Nick Mckeown教授正式提出的一種創新型網絡架構。它可以通過軟件編程的方式來自定義和控制網絡。
傳統的計算機網絡是水平、開放的,有著統一的標準規范,方便各個方面的接入。然而正是因為這些特點,在某種程度上可以認為網絡在南北方向上是“相對封閉”和“沒有框架”的,在南北方向上創造應用和部署業務就沒有那么靈活。而SDN卻可以將整個網絡的南北方向變得開放、標準化、可編程,其核心思想就是使交換設備的控制與轉發相分離,進行分層協作,控制器分別采用南北向接口協議與上下層級進行交互,如此一來就實現了控制器和交換機的解耦。正是這種解耦的特點使SDN具備了強大的可編程能力,而這種強大的特性可以使網絡真正地被軟件所定義,從而根據不同的業務邏輯進行靈活、快速的定制,動態地進行業務管理,還可以簡化網絡運維。
SDN網絡架構可以分為應用層、控制層、設備層[5-8],如圖2所示。應用層負責業務的定制協同;控制層負責業務的編排控制;設備層負責業務數據的轉發,不同層之間通過標準的開放協議連接。如控制層分別通過北向接口協議連接應用層、南向接口協議連接設備層。
在現有用于南向接口的協議中,OpenFlow協議是最早也是應用比較成熟的一種協議,在此次方案設計中接入設備采用的就是基于OpenFlow協議的交換機。
2.2" OpenFlow技術
OpenFlow是由斯坦福大學的Nick McKeown教授在2008年4月ACM Communications Review上發表的一篇論文“OpenFlow:推動校園網絡的創新”首先詳細論述了OpenFlow的原理。OpenFlow最初的出發點是用于校園內網絡研究人員實驗其創新的網絡架構、協議等,但這樣的創新思想需要在實際網絡上才能得到更好的驗證。然而現有運行的設備并不能隨意地進行修改或變動,因此提出了OpenFlow的控制與轉發分離架構,將控制單元從網絡設備中分離出來。這樣,就可以在不改動現有網絡架構的情況下,通過任意的編程來驗證新型的網絡協議、拓撲結構等。
OpenFlow技術可謂是SDN架構中控制平面和數據層平面間的第一個標準通信接口[9-10]。現今,許多廠商已將其應用到交換機,并部署于各種應用場景。采用OpenFlow技術的交換機中都會有一個或多個流表。流表包含了一系列流表項,而每個流表項由首部字段值、計數器和動作三部分組成。數據包的匹配從第一個流表開始,依次向后進行;如果數據包與某個流表中的某條表項匹配,則執行相應的指令;如果不匹配,則繼續向后執行,直至終止。OpenFlow流表結構如圖3所示。
使用上述兩個關鍵的技術能保證網絡具備靈活性高、便利性強和安全可控的特點,但如何保證轉發層面的可靠性還需另外的技術來實現,高可用性(High Availability, HA)技術和虛擬局域網(Virtual Local Area Network, VLAN)技術。
2.3" HA技術
HA通常是通過一組硬件設備組成的集群作為一個透明的整體對外提供服務。成員之間互為備份,保證在任意單臺設備出現故障時,仍然可以不間斷地繼續提供服務,保持業務的連續性。具有冗余、透明的特點,并且發生故障、設備角色輪換時,用戶全程無感知,全程都是由集群自動處理。
HA雙機工作模式可以分為主備模式和雙機雙工模式(負載均衡):
1)主備模式。通常是一臺設備作為主設備,長期不間斷地提供服務,另一臺作為備用設備,一直監控著主設備。一旦主設備出現故障無法正常提供服務時,備用設備立即接手主設備的工作以保障業務的連續運轉。
2)雙機雙工模式。兩臺設備根據預先定義好的規則同時工作,互為備份,并且時刻監控對方的工作狀態。一旦其中一方出現問題,另一方立即接手對方的服務,可以最大化利用設備的性能。
2.4" VLAN技術
VLAN的組成依托于物理網絡,是運行在其上的邏輯網絡。通常一個物理網絡上會運行多個不能相互干擾的不同業務,因此要把這些業務區分開來,分別獨立組網。VLAN技術的誕生就是來解決這個問題的,它通過Vlan標簽來標記各個數據包,把一個物理網絡分成多個不同的邏輯網絡,使各項業務各行其是,互不干擾。
3" SDN服務鏈資源池實現
SDN服務鏈資源池的設計思想是將核心到出口的鏈路整合成一個資源池[9-10],所有設施統籌使用,然后根據不同的業務需求進行流量編排,任何流量都可以根據業務需求進行自定義定制,如圖4所示。
校園網絡在核心出口鏈路上通常都會有各種各樣的安全、控制、優化類的設備。然而,由于實際物理鏈路的限制,無法滿足各種業務的需求。此區域又是至關重要的,不能輕易變動的。通過這個方案可以很好地解決這類問題。
3.1" 業務變更
現有業務場景通過SDN服務鏈和主備方式組網,在正常情況下只有主設備這一側走流量,如圖5所示。
現有業務(如圖6)需求變更,業務流需跳過IPS 1,經過IPS 2(如圖7),在不影響業務正常運轉的情況下,我們可以通過HA鏈路把流量引入IPS 2,然后再次通過HA鏈路把流量引入到防火墻1。
在實現過程中,會遇到這樣一種情況,即流量經過HA線路之后到達另一條服務鏈后,會失去其來源信息,因此,需要對跨服務鏈的流量進行區分。而在該場景下,當數據經過核心設備后基本上不在攜帶Vlan信息,因為此時所有數據的Vlan在核心設備上已經被終結了,所以就需要通過給數據重新添加Vlan標簽來加以區分。下述為變更后的流表數據流向說明。
主服務鏈流表出方向:
1)Inport Ten0/1,action=output:Ten0/4。
2)Inport Ten0/3,action = push_Vlan:30, output:Agg 1(從流控 1設備出來的流量發送到Agg 1口,并且打上Vlan30標簽,到達備服務鏈后,以此作為匹配條件進行轉發)。
3)Inport Agg1,match=Vlan:20, action=pop _Vlan,output:Ten0/8(對應備服務鏈流表出方向的第2條流表,主服務鏈Agg 1口在收到之后,以Vlan20標簽作為匹配條件,剝離Vlan標簽后發送到所屬端口Ten0/8到達防火墻 1)。
4)Inport Ten0/7,action=output:Ten0/2。
備服務鏈流表出方向:
1)Inport Agg 1,match=Vlan:30,action=pop_ Vlan,output:Ten0/6(對應主服務鏈流表出方向的第2條流表,匹配Vlan30的流量,剝離Vlan標簽并發送到Ten0/6口到達IPS 2)。
2)Inport Ten0/5,action= push_Vlan:20,outp ut:Agg 1(從IPS 2出來的流量到達備服務鏈的端口Ten0/5,打上Vlan20標簽后,發送到Agg 1口轉發到主服務鏈)。
主服務鏈流表入方向:
1)Inport Ten0/2,action=output:Ten0/7。
2)Inport Ten0/8,action=push_Vlan:31,output:Agg1(從防火墻 1出來的流量發送到Agg 1口,并且流量打上Vlan31標簽,轉發到備服務鏈,以此作為匹配條件進行轉發)。
3)Inport Agg 1,match=Vlan:41,action=pop_Vlan,output:Ten0/3(對應備服務鏈流表入方向的第2條流表,主服務鏈Agg 1口在收到之后,以Vlan41標簽作為匹配條件,剝離Vlan標簽發送到所屬端口Ten0/3到達流控 1)。
4)Inport Ten0/4,action=output:Ten0/1。
備服務鏈流表入方向:
1)Inport Agg 1,match=Vlan:31,action=pop_ Vlan,output:Ten0/5(對應主服務鏈流表入方向的第2條流表,備服務鏈匹配Vlan31的流量后,剝離Vlan標簽并發送到端口Ten0/5到達IPS 2)。
2)Inport Ten0/6,action= push_Vlan:41,out put:Agg 1(從IPS 2出來的流量到達備服務鏈的端口Ten0/6,打上Vlan41標簽后,發送到Agg 1口轉發到主服務鏈)。
如此一來,就可以輕松地實現數據流向的自定義了。
傳統網絡中,在人員不到機房、不改動物理網絡的情況下,想實現上述場景是無法做到的;而通過SDN服務鏈和HA技術卻是可以輕而易舉地達成目的。運維人員只需要在控制器操作界面添加、移除相應的功能設備,就可以改變業務的流向,從而實現靈活、高效的業務自定義編排。
3.2" 增減設備和更新升級
在日常運維中,核心出口鏈路上的設備增減和更新升級是一項常態化的工作。如何保障業務的不間斷一直是困擾著運維人員的難點。通過運用SDN服務鏈來實現這些操作,可以很好地解決這些問題。當鏈路中增加設備時,首先將設備連接到SDN的交換機上,然后將設備添加到控制器管理平臺上,最后引入相應的流量,如圖8所示。此外,還可以根據需求和現場實際情況選擇設備的部署方式,如主備模式或負載均衡。
當設備需要更新升級時,可在SDN控制器操作界面上先將相應的安全設備停用下線,如圖9所示,使得正在運行的業務流跳過此設備,從而不影響生產、辦公。等到設備更新升級完成后,再將相應的流量引回到該設備,這樣不僅大大提升了運維效率,同時也極大地減少了運維人員的工作量。
4" 結" 論
針對傳統網絡架構下的部署模式,給日常運維人員帶來的管理不便問題,本設計采用SDN服務鏈技術對核心出口區域網絡進行重構,對此區域進行池化設計,使得網絡靈活性、便利性成指數性的提高,而且,此設計還適用于所有同類型下的校園網。將其部署于實際應用場景中,經過長期的測試,充分地驗證了這一設計的可行性,這一做法不僅極大提升了工作效率,還有效避免了多種潛在風險,解決了長久以來困擾著運維人員的難題,完全實現了預期的設計目標。
參考文獻:
[1] ASLAM M,YE D,HANIF M,et al. Adaptive Machine Learning: A Framework for Active Malware Detection [C]//2020 16th International Conferenceon Mobility, Sensing and Networking(MSN).Tokyo:IEEE,2020:57-64.
[2] SIVANATHAN A,GHARAKHEILI H H,LOI F,et al. Classifying IoT Devices in Smart Environments Using Network Traffic Characteristics [J].IEEE Transactions on Mobile Computing,2019,18(8):1745-1759.
[3] 趙季紅,蔡田杰,曲樺,等.SDN中應用網絡分區的控制器部署策略 [J].計算機工程,2019,45(1):79-83.
[4] 劉雪花,丁麗萍,劉文懋,等.一種基于軟件定義安全和云取證趨勢分析的云取證方法 [J].計算機研究與發展,2019,56(10):2262-2276.
[5] 保羅·戈朗生.深度剖析軟件定義網絡:第2版 [M].王海,張娟,等譯.北京:電子工業出版社,2019:26-32.
[6] 陳井泉,王龍,魏月蓮,等.基于SDN的云計算數據中心安全架構研究 [J].現代電子技術,2020,43(3):87-91.
[7] 居建濤,羅琴,鄭弘迪,等.SDN中基于鏈路特征的路由控制機制 [J].計算機應用,2019,39(S1):138-142.
[8] 李道全,黃泰銘,于波,等.基于流量分配傾向度的SDN多路徑負載均衡 [J].計算機工程與設計,2020,41(10):2718-2723.
[9] 魏占禎,王守融,李兆斌,等.基于OpenFlow的SDN終端接入控制研究 [J].信息網絡安全,2018(4):23-31.
[10] 竇浩銘,姜慧,陳思光.基于SDN的負載均衡網絡控制器算法 [J].計算機科學,2019,46(S1):312-316+331.