《企業(yè)網(wǎng)D1Net》1月9日訊
隨著SDN關(guān)注熱度的走高,SDN的應(yīng)用也日益廣泛,與此同時,關(guān)于SDN的測試也受到廣泛關(guān)注,SDN測試平臺可以為SDN測試提供了測試工具和網(wǎng)絡(luò)環(huán)境。該測試平臺可以進行比較全面的SDN測試,包括但不限于以下類型的測試:SDN協(xié)議一致性測試、SDN互通性測試、SDN功能性測試、SDN性能測試、SDN解決方案測試。
該測試平臺提供了多種測試工具,包含流量生成器、SDN一致性測試儀、SDN功能性測試儀和SDN性能測試儀,可以用于不同類型的SDN測試和認證。同時,SDN測試平臺也提供了許多支持SDN的設(shè)備,如各種開源/商用的支持OpenFlow協(xié)議的交換機和控制器設(shè)備以及其它網(wǎng)絡(luò)設(shè)備,這為互通性測試做好了準備。測試平臺還包括一些SDN配置管理設(shè)備和OF配置節(jié)點,可以對SDN網(wǎng)絡(luò)和設(shè)備進行配置和管理,還可以對配置管理協(xié)議如of-config協(xié)議進行測試。另外,SDN測試平臺還可以展示和驗證一些SDN應(yīng)用和SDN解決方案。
SDN測試方法OpenFlow是SDN控制器和交換機之間的通信協(xié)議。下面介紹的SDN測試方法都是指基于OpenFlow的SDN測試。常見的SDN測試類型有協(xié)議一致性測試、互通性測試、功能測試和性能測試,下面對這幾個測試類型的測試方法分別進行介紹。
1. SDN協(xié)議一致性測試
協(xié)議一致性測試是對OpenFlow設(shè)備(交換機設(shè)備)對OpenFlow協(xié)議的符合情況進行測試和驗證。ONF即開放網(wǎng)絡(luò)基金會設(shè)立OpenFlow一致性測試項目,目前可以開展OpenFLow 1.0標準的一致性測試。OpenFLow 1.0一致性測試的規(guī)范是“Conformance Test Specification for OpenFlow Switch Specification 1.0.1”。規(guī)范中包含10個測試組,主要對以下10個方面進行測試:
測試組10: 基本能力檢查
測試組20: 基本OpenFlow協(xié)議消息
測試組30: 生成樹
測試組40: Flow modification消息
測試組50: 流匹配
測試組60: 計數(shù)器
測試組70: 行為
測試組80: 消息
測試組90: 異步消息
測試組100: 錯誤消息
協(xié)議一致性測試是對設(shè)備支持OpenFlow情況進行全面的檢查,包括必要的和可選的功能。有超過200個測試項,OpenFLow交換機需要通過所有必選的測試項才能通過一致性測試認證。
目前測試協(xié)議一致性使用OpenFlow協(xié)議一致性測試工具。測試拓撲如下圖所示:
OpenFlow一致性測試儀與支持OpenFlow的交換機之間建立1個控制平面的連接和4個數(shù)據(jù)平面的連接。測試儀可以模擬控制器發(fā)送OpenFlow協(xié)議消息來檢測交換機行為,數(shù)據(jù)平面的連接用于測試和驗證交換機能夠?qū)W(wǎng)絡(luò)數(shù)據(jù)包正確處理,包括轉(zhuǎn)發(fā),修改數(shù)據(jù)包指定字段等。
2. SDN互通性測試
互通性測試是不同廠商的OpenFlow設(shè)備之間互連互通能力的測試?;ネㄐ詼y試是非常必要的,這樣可以讓網(wǎng)絡(luò)中的設(shè)備不至于被綁定在同一家設(shè)備廠商。通過進行多廠商SDN 互通性測試,一方面能夠發(fā)現(xiàn)設(shè)備SDN實現(xiàn)的問題和對協(xié)議理解的問題,有助于自身SDN產(chǎn)品的協(xié)議實現(xiàn)方面完善和優(yōu)化,另一方面可以驗證SDN 標準的可執(zhí)行性和完整性,進一步促進OpenFlow協(xié)議不斷更新和完善,推動SDN產(chǎn)業(yè)的發(fā)展。
最基本的互通性測試包括:控制通道的建立;流表測試;請求消息測試;流超時等。下面以拓撲發(fā)現(xiàn)為例介紹互通性測試。
將不同廠商的控制器和交換機設(shè)備按照測試拓撲進行連接,并對所有網(wǎng)絡(luò)設(shè)備進行正確配置,控制器應(yīng)該能夠和所有交換機設(shè)備正常建立控制通道,正確發(fā)現(xiàn)所有網(wǎng)絡(luò)設(shè)備和它們之間的連接,并以圖形界面或在命令行正確顯示。
3. 功能性測試
功能測試是對OpenFlow設(shè)備的功能進行測試和驗證。在SDN發(fā)展的初期,各個廠商設(shè)備對OpenFlow協(xié)議支持的情況都不同,OpenFLow協(xié)議有很多可選的功能,廠商不同程度地支持這些功能。另外,許多廠商會自行對OpenFLow協(xié)議做一些擴展,添加一些有用的特性,所以除了協(xié)議一致性測試和互通性測試,功能性測試也是非常必要的。
功能性測試一般使用功能性測試儀作為測試工具,測試工具模擬控制器發(fā)送消息,有需要時能夠發(fā)送數(shù)據(jù)流量到交換機端口,同時可以對控制平面和數(shù)據(jù)平面的數(shù)據(jù)包進行抓包和分析,從而判斷和確定交換機支持的功能。
4. 性能測試
性能測試是對OpenFlow設(shè)備性能進行測試。由于目前測試整個網(wǎng)絡(luò)系統(tǒng)還有很大的挑戰(zhàn),所以這里的性能測試指的是單個網(wǎng)絡(luò)設(shè)備的性能。交換機流表容量測試和控制器最大連接交換機數(shù)量也屬于交換機性能測試的范疇。
SDN在迅速地發(fā)展,現(xiàn)在還處于一個早期的階段。相關(guān)標準仍不夠成熟、設(shè)備對標準的支持情況也還不夠成熟,不同設(shè)備廠商對標準理解不同,設(shè)備實現(xiàn)也不盡相同,所以測試的重要性是毋庸置疑的。通過測試,可以促進SDN更快被大家接納,讓大家對SDN設(shè)備建立信心,也讓設(shè)備的實現(xiàn)更加規(guī)范,可以用于商業(yè)部署。
D1Net評論:
從目前的現(xiàn)狀來看,SDN測試并沒有完全成熟,還存在很多的挑戰(zhàn)和困難,其中,測試方法單一和測試工具不完善是最主要的兩大問題,目前的測試多為對OpenFlow設(shè)備的測試和對SDN應(yīng)用的驗證。SDN網(wǎng)絡(luò)和系統(tǒng)的測試還存在很大的挑戰(zhàn)?,F(xiàn)階段,OpenFlow協(xié)議一致性測試和互通性測試都在積極開展。隨著SDN技術(shù)的發(fā)展,SDN的測試方法也將越來越完善。