SDN作為一種新的網絡架構,正被應用到越來越多的網絡場景中。而網絡的關鍵在于通信,如何使得SDN網絡正常運行,并且能夠和傳統網絡相互通信是SDN組網需要解決的基本問題。本文將介紹SDN組網相關解決方案中的數據平面到控制平面的組網解決方案、多SDN域組網解決方案和SDN網絡與傳統網絡組網通信的解決方案。
SDN數據平面到控制平面組網目前為止,在數據層面到控制平面之間的組網方案主要有兩大類:帶外組網和帶內(in-band)組網。
帶外(out-band)組網:
數據平面到控制平面的控制數據通過專門的控制網絡,而不經過數據平面轉發,從而將數據平面的數據和控制平面數據隔離運行在兩張獨立的網絡中。在帶外組網方案中,每個交換機都有連接到控制平面的專屬線路,而無需通過其他數據平面交換機轉發。帶外組網可以減少組網的難度和運維的難度。缺點是交換機多時,鏈路數量較多。
圖1. out-band組網方案
帶內(in-band)組網
帶內組網指的是控制數據和數據平面數據可以共享一個物理鏈路。即數據平面的有些交換機直連控制器,而其他的交換機的需要經過數據平面的鏈路才能到達控制器。非直交換機的控制數據需要通過數據平面的鏈路進行轉發,并通過直連交換機轉發到控制器。此種組網方式可以減少許多交換機到控制器的鏈路數量,但是配置帶內組網比較麻煩,可靠性較低,維護成本也相對要高。
圖2. in-band組網方案
多SDN域組網方案當網絡規模過大時,需要部署多域的組網方案。其中每個SDN域都由各自的控制平面控制。多域組網方案有水平架構和垂直架構兩種。水平架構形式的多域組網方案中,域控制平面之間的關系是對等的。而在垂直架構中,則劃分為域控制器層和超級控制器層。其中域控制器層負責自身域內的控制,超級控制器層負責管理域間的通信。
水平架構
實現水平架構的多域控制器的解決方案有分布式集群和東西向接口協議兩種方式。部署分布式集群可以實現同類型多控制器實例的協同工作,無法支持異構控制器之間的協同工作。而東西向接口協議支持異構多域控制器之間的協同工作,其通過交換路由等信息實現多域網絡通信。水平架構多域組網架構圖如圖3所示:
圖3. 水平架構多域控制器組網方案
垂直架構
垂直架構的多域控制器組網中超級控制器負責域間通信,而域控制器負責域內的通信。超級控制器相當于集中式的路由器,負責域間的通信,而每一個域由的域控制器模擬成獨立的網絡域,從而實現全局網絡的管理。目前實現垂直架構的多域控制器協同工作的協議有Open eXchange 協議,其組網架構圖如圖4所示:
圖4. 垂直架構多域控制器組網方案
SDN與傳統互聯以上介紹的SDN組網僅僅是SDN網絡部分的組網,而如何與其他傳統網絡相互通信則是本小節的內容。根據現實網關功能的設備種類不同,可以將組網方案分為傳統設備組網方案和SDN設備組網方案兩種。采用傳統路由器作為網關方案中,SDN網絡作為內部網絡運營,而與其他網絡通信的工作由傳統路由器完成。
而采用SDN設備模擬網關時,由SDN控制器在邊緣交換機上模擬網關行為,從而完成與其他域之間的網絡通信。
傳統網絡設備作網關
在此方案中,采用傳統路由器作為網絡出口,由其完成和其他路由器之間的路由同步等工作。此方案中,復雜的網關功能由現網設備完成,而SDN控制器只需控制內部網絡節點,從而降低了組網的難度,也提升了對內部網絡的管控能力。
圖5. 采用傳統設備作網關方案
SDN數據交換機作網關
SDN設備解決方案中,SDN控制器需將邊緣交換機模擬成一個路由器,如運行BGP協議的路由器,從而實現對傳統路由協議的響應和支持,向外表現出路由器的特征,進而實現與互聯網的互聯互通。
圖6. 采用SDN設備模擬網關組網方案示意圖
總結作為一名SDN初學者,在平時學習研究中,僅僅需要通過Mininet模擬則可以完成實驗。而當真正部署SDN網絡時,則需要考慮到很多實際問題,尤其是基本的組網方案。本文從數據平面到控制平面組網、SDN域之間組網和SDN域與傳統網絡之間組網三個方面簡要介紹了SDN組網的相關解決方案。以此作為一個學習的總結,同時也希望這篇文章能幫助到有需要的研究人員。
作者簡介:
李呈,2014/09-至今,北京郵電大學信息與通信工程學院未來網絡理論與應用實驗室(FNL實驗室)攻讀碩士研究生。
個人博客:www.muzixing.com