劉乃安,李曉輝,韋 娟,魏建軍
(西安電子科技大學 通信與信息工程實驗教學中心,陜西 西安;網絡與信息安全虛擬仿真實驗中心,陜西 西安 710071)
計算機網絡是一門實踐性很強的專業課程,其實驗教學與實踐環節不僅是理論教學的深化和補充,對于培養學生綜合運用所學知識解決實際問題的能力,也起著非常重要的作用。如何開展實驗教學課程體系、內容、方法的研究和探索,建立與理論教學改革相協調的實驗教學體系,保證和提高實驗教學質量,是值得探討和研究的問題[1]。
現有計算機通信網實驗存在很多問題,例如內容比較枯燥,缺少非常重要的測量方面的內容,缺少深層次的設計與實現方面的內容,缺少綜合遠程虛擬仿真的手段。軟件定義網絡(softwaredef ned networking,簡稱SDN)技術分離了網絡的控制平面和數據平面,為研發網絡新應用和未來互聯網技術提供了一種新的解決方案[2-3]。
SDN主要有如下3個特征[4-5]:①網絡開放可編程,SDN建立了新的網絡抽象模型,為用戶提供了一套完整的通用API,使用戶可以在控制器上編程,來實現對網絡的配置、控制和管理,從而加快網絡業務部署的進程。②控制平面與數據平面的分離[6],此處的分離是指控制平面與數據平面的解耦合。控制平面和數據平面之間不再相互依賴,兩者可以獨立完成體系結構的演進,類似于計算機工業的Wintel模式,雙方只需要遵循統一的開放接口進行通信即可。控制平面與數據平面的分離是SDN架構區別于傳統網絡體系結構的重要標志,是網絡獲得更多可編程能力的架構基礎。③邏輯上的集中控制,主要是指對分布式網絡狀態的集中統一管理。在SDN架構中,控制器會擔負起收集和管理所有網絡狀態信息的重任,邏輯集中控制為軟件編程定義網絡功能提供了架構基礎,也為網絡自動化管理提供了可能[7]。
基于SDN技術可以很好地解決上述問題,基于SDN技術的網絡創新實驗室可以讓學生親自進行交換機、路由器和SDN交換機系統的設計實現,從而讓學生直觀、全方位了解各種網絡設備,真正加深對網絡系統原理的認識,提高學生的網絡系統技能和實戰能力。
基于SDN技術的網絡及其測量創新實驗是西安電子科技大學的建設項目,是一個集計算機通信網絡、無線IP網絡與技術和現代網絡測量技術課程教學、學生創新實驗和科學研究的綜合網絡實驗平臺,其總體方案如圖1所示。

圖1 SDN實驗系統總體方案
整個實驗室提供一套完整的通信網絡實驗解決方案,可滿足60個學生的同步教學和實驗需求。目前配置有30臺接入層網絡設備,12臺核心/匯聚層網絡設備,3種無線網絡90臺,并設有配套網絡流量分析儀、網絡損傷儀(實現網絡性能模擬)、網絡協議分析儀等。
整個網絡可按需靈活搭建各種實驗網絡拓撲架構,標準的3層網絡架構如圖2所示。其中接入層網絡平臺可以按需接入實驗主機或無線AP設備。每名學生可以獨立擁有一個接入層網絡,包括一臺接入層網絡設備和無線AP設備。

圖2 SDN實驗網絡拓撲架構
實驗室會側重學生的實際系統設計經驗和系統實現能力。目前國內高校采用的教學網絡實驗平臺依然停留在軟件模擬和網絡設備配置的網絡協議學習層面。很多計算機網絡和通信方面的學生理論知識儲備很多,疲于埋頭學習各種網絡協議、各種網絡設備和通信理論知識,但是由于缺乏開放的網絡系統設計平臺和網絡實驗環境,學生失去了對網絡系統整體的把握和理解,也無法構成專業的知識結構體系。
實驗室提供開放的網絡創新平臺,學生可以從零開始搭建傳統網絡設備以及SDN網絡設備,在開放網絡實驗平臺上重新設計基于交換機和路由器的實驗網絡,自定義交換機功能模塊,模擬當前靜態網絡體系結構的諸多不足和限制因素。
實驗室提供豐富的網絡系統設計案例和小型網絡搭建實驗,能讓學生有機會進行實際操作,按照工業界標準開發流程設計實現網絡設備,開放的網絡實驗平臺還能讓學生在實踐中理解網絡系統設計和各種組網真實工作原理。
基于SDN技術的實驗平臺是一款基于全可編程SoC FPGA的網絡實驗平臺。該平臺提供了非常靈活的系統可編程能力,支持系統軟件層面和硬件層面的完全可編程能力。平臺本身采用了開放的軟硬件系統架構設計,支持現場可編程和設計升級,無需改變平臺硬件。
平臺采用Xilinx公司的Zynq全可編程器件,該器件系列集成 ARM處理器的軟件可編程性與FPGA 的硬件可編程性,配備雙核 ARM Cortex-A9 處理器,該處理器與可編程邏輯集成,可實現優異的性能功耗比和最大的設計靈活性,可針對不同應用定制不同硬件處理模塊,并可進行動態重構。支持512KB L2高速緩存和256KB片上存儲器可容納整個實時操作系統,ARM處理器與FPGA之間的帶寬高達100Gbps。
基于SDN技術的實驗平臺主要包括核心/匯聚層節點和接入層節點兩部分。每個網絡實驗平臺都可以按需配置成特定的網絡設備,比如交換機、路由器和SDN交換機等,包括開放軟件系統和開放的硬件參考設計,可用于各類網絡系統實驗、網絡原型設計和網絡產品設計。
核心/匯聚層節點采用Xilinx公司的Zynq系列高端器件XC7Z100芯片,利用其靈活的軟硬件可編程能力以及豐富的外設和接口,構建了一個可編程可重構的多功能網絡平臺。該平臺通過ZYNQ可編程邏輯部分擴展有八路千兆以太網、八路萬兆SFP+光接口,以及一個QSFP光接口;同時通過ZYNQ處理器部分擴展有用于調試的千兆以太網、串口以及USB-HUB、IIC、CAN等常用接口。利用ZYNQ軟硬件都可編程的特點,該平臺可實現功能靈活多變的網絡設備。
匯聚層/核心層節點硬件如圖3所示,其內部主要采用圖4所示的芯片和系統。

圖3 匯聚層/核心層節點硬件

圖4 匯聚層/核心層節點核心系統框圖
接入層節點采用Xilinx公司的ZYNQXC7Z020芯片,具有四路可重配置的千兆網絡接口,利用其靈活的軟硬件可編程能力以及豐富的外設和接口構建。該平臺采用ZYNQ 7020芯片,內嵌有ARM Cortex-A9雙硬核可支持Linux操作系統。同時片內具有豐富的可編程邏輯資源,可針對不同應用場景,不同需求而定制不同的硬件處理模塊,并且可以進行功能動態重構。此外,平臺還具有豐富的擴展IO,并且具有兼容樹莓派的GPIO、攝像頭和顯示屏接口,便于進行功能擴展。
詩眼即詩中最能體現情感傾向及內容意蘊的詞或句。有些詩鑒賞時只要找準詩眼并圍繞詩眼發散提問,就能“牽一發而動全身”,有關層次結構、思想內容、寫作手法的問題都能迎刃而解。
接入層節點硬件如圖5所示。
接入層節點系統框圖如圖6所示。

圖5 接入層節點硬件

圖6 接入層節點系統框圖
創新實驗室的實驗內容包括傳統網絡實驗和軟件定義網絡實驗兩部分。
傳統網絡實驗部分包括通信網絡實驗、無線網絡實驗和網絡測量實驗3部分,典型實驗見表1。
其中,每種實驗都包含了協議學習和配置、設備使用、網絡系統設計和分析3部分內容。以交換機部分實驗為例,典型實驗內容見表2。
軟件定義網絡實驗部分包括SDN基礎實驗和SDN高級實驗兩部分。
基礎實驗部分主要圍繞SDN體系結構和OpenFlow協議來設計實驗內容,高級實驗部分主要包括SDN系統設計和實現方面的內容,典型內容見表3和表4。

表1 傳統網絡實驗內容

表2 交換機部分實驗

表3 基礎實驗部分

表4 高級實驗部分
SDN作為新的下一代網絡體系結構,把下層基礎設施抽象給上層應用,使得網絡像計算機基礎設施一樣,可大規模編程和管理。基于SDN技術的網絡及其測量創新實驗建設意義重大,可以極大地提升學生的網絡系統能力,加深對網絡系統設計和實現本身的理解。
網絡創新實驗室使得學生能夠針對網絡系統設計和組網中碰到的問題,設計合理解決方案,設計滿足特定需求的流程,并能夠在實踐環節中體現創新意識,考慮成本、效率、精度等因素;能夠基于科學原理并采用科學方法對復雜工程問題進行研究,包括設計實驗方案、分析與解釋數據,并通過信息綜合得到合理有效的結論,對計算機網絡教學改革起到了極大的推進作用。
參考文獻:
[1]錢權, 張瑞, 袁方. 計算機網絡課程中的項目式實驗教學[J]. 實驗室研究與探索, 2013, 32(5): 142-145.
[2]張宇薇. 計算機網絡課程中的項目式實驗教學分析[J]. 信息與電腦(理論版), 2016(7): 227-228.
[3]劉睿瀟. 計算機網絡課程中的項目式實驗教學探討[J]. 電腦與電信, 2016(5): 94-95.
[4]Mckeown N, Anderson T, Balakrishnan H, et al. OpenFlow: Enabling innovation in campus networks[J]. Acm Sigcomm Computer Communication Review, 2008, 38(2): 69-74.
[5]雷葆華, 王峰, 王莤. SDN 核心技術剖析和實戰指南[M].北京:電子工業出版社, 2013.
[6]左青云, 陳鳴, 趙廣松, 等. 基于OpenFlow的SDN技術研究[J].軟件學報, 2013(5): 1078-1097.
[7]Lange S, Gebert S, Zinner T, et al. Heuristic approaches to the controller placement problem in lar ge scale SDN networks[J]. IEEE Transactions on Network & Service Management, 2015, 12(1): 4-17.