說實話,在深入了解業界主流商用SD-WAN之前,對以SD-WAN之名定義的軟件的認知,更多的是局限於傳統SDN所強調的控制平面與轉發平面分離的模糊概念。筆者曾先入為主地認為,SD-WAN采用的轉移與控制分離,是沿襲了學術SDN的經典套路,采用了類似Google基於Openflow跨全球數據中心搭建的B4 SD-WAN的思路——畢竟Google的B4 WAN才是SD-WAN的鼻祖。
然而,在初步接觸了幾大商用SD-WAN廠商的技術方案後,筆者突然覺得被騙了:這些SD-WAN方案中所謂的“SDNController”其實相當於壹個大家已經用了近20年的BGP RouteReflector,與SDN無關。這完全顛覆了作者的世界觀,讓我非常失望和不安。
然而,隨著進壹步深入了解,筆者發現這些所謂的“SDN控制器”與傳統的BGP路由反射器類似,但實際上是不同的。具體來說,這些假冒的“SDN控制器”雖然沒有學術界或者Google B4 SD-WAN所用的SDN控制器那麽理想和純粹,但確實繼承了SDN的壹些魅力。結果SD-WAN這個名字也不盡如人意。請慢慢聽我說:
首先來說說主流商用SD-WAN方案中的這些所謂的“SDN控制器”和傳統的BGP路由反射器有多相似。我們用壹個全球SD-WAN Top 2廠商Viptela的系統架構圖(圖1)來解釋壹下。(註:目前Viptela和VeloCloud誰是SD-WAN的市場主導者還存在爭議,但他們和大多數SD-WAN廠商的系統架構都非常相似。另外,有意思的是,這兩個Top 2廠商最近分別被思科和VMware收購,可見這個市場的熱度、競爭的激烈和日益飽和)。
圖1: Viptela SD-WAN系統架構
在圖1中,vSmart控制器就是Viptela所謂的“SDN控制器”,用來與用戶各個站點的CPE設備(圖中的vEdgeRouters)進行通信,以便在用戶各個站點之間交換路由信息。因此,從控制平面來看,各個站點的CPE設備不再相互交換路由信息,而是統壹發送給中央控制器。之後,中央控制器將路由信息發送給其他CPE設備。這種集中控制的思想是SDN的精髓。但是,如果我們仔細觀察這些CPE設備是如何與中央控制器交換路由信息的,我們發現主流SD-WAN廠商都是采用基於BGP協議的路由交換。BGP?是的,妳沒有看錯。永遠被祝福的是BGP,並不是因為SDN炒的火熱的新貴OpenFlow(註:SD-WAN廠商通常會在BGP的基礎上做壹些改動和擴展。例如,Viptela將修改的BGP協議稱為覆蓋管理協議(OMP)。詳情請參考他們的OMP專利申請:/patents/US9467478。)
看到這裏,讀者可能會有這樣的疑問:如果CPE設備和中央控制器都是基於BGP路由交換,那麽這和傳統的BGP路由反射器有什麽區別?(註:這裏是壹個傳統BGP路由反射器的示意圖,供您參考。它的中心思想是不再在BGP路由器之間建立網狀BGP會話來交換路由,而是以統壹的方式發送到中央BGP路由反射器,然後傳遞給所有其他BGP路由器。可見它和SD-WAN中的SDN控制器是多麽的相似)。
圖2:傳統的BGP路由反射器架構
BGP路由反射器早就有了,比今天大家都在猜測的SDN早了20年。這些主流SD-WAN廠商采用的技術是真的SDN,還是掛羊頭賣狗肉?
這個疑問伴隨了筆者很久,直到筆者仔細研究了這些SD-WAN廠商對BGP協議的改動和擴展,以及這些解決方案中對集中式策略的強調和使用,才發現SD-WAN中的SDN控制器大大超出了傳統BGP路由反射器的能力。以下是筆者總結的所謂SDN控制器與傳統BGP路由反射器的主要區別:
1.不同的目標
傳統的BGP路由反射器主要是解決iBGP網絡中BGP路由器之間的全網狀互聯問題。BGP路由反射器可以有效地將BGP會話的總數量從全網狀網絡中的N 2個減少到軸輻網絡中的N個。這對於降低超大規模BGP網絡的復雜性非常重要。
另壹方面,SD-WAN中SDN控制器的主要目的是提供壹種工具,用於對覆蓋網絡進行集中管理和配置。同時,SDN控制器不僅提供中心輻射模式的路由交換,還提供簡化的安全密鑰交換(用於在數據平面CPE設備之間建立IPSec隧道)、集中策略控制、VPN標簽分發等等。因此,SD-WAN中SDN控制器的目標和功能遠遠超出了傳統BGP路由反射器的簡單路由交換。
2.路由的不同實現方法。
當交換路由時,傳統的BGP路由反射器簡單地將從壹個CPE路由器接收的路由信息原封不動地“反射”到所有其他CPE路由器,這就是路由反射器名稱的由來。
但是,SD-WAN中的SDN控制器在接收到來自CPE路由器的路由信息後,在SDN控制器中進行大量的計算和處理,然後將過濾和處理後的路由信息發送給相應的CPE路由器(註意,不壹定是所有其他CPE路由器)。通常SDN控制器做如下處理:根據用戶自定義的策略修改路由參數,綜合所有接收到的路由信息計算出到任意用戶子網的最佳路由,並將計算出的最佳路由信息發送給壹些特定的CPE路由器(具體由用戶的策略決定)。從這裏我們可以看出,SD-WAN中的SDNController比傳統的BGP RouteReflector要復雜和強大得多。
當然,除了上面總結的兩個主要區別,它們之間還有其他壹些小的區別,比如路由攜帶的參數信息,最佳路由的算法,這裏就不展開了。
如果妳能堅持看到自己沒有睡著,沒有換朋友圈,那麽恭喜妳!-您已經掌握了市場主流SD-WAN廠商使用的核心路由技術及其與SDN的真實關系。當然,SD-WAN不僅僅是SDN,我們今天討論的路由技術也只是SD-WAN使用的眾多技術之壹。雖然筆者認為如何在覆蓋層構建路由是SD-WAN的核心技術,但我們不得不承認SD-WAN在覆蓋路由基礎上提供的各種功能和服務(如應用感知路由、集中式和接口策略控制、零接觸供應(ZTP)、VPN和分段)才是SD-WAN真正吸引客戶的地方。關於SD-WAN那些吸引顧客爭相掏出錢包的眼花繚亂的功能,下次找個特別的機會再說吧。
——摘自SD-WAN。這是怎麽回事?
如有違反,請及時通知並刪除。