筆者撰寫這篇文章的目的並不在於排斥新技術,作為身在網路行業的我只是想通過一種善意的提醒,為近年來被業界炒作壞了的名詞降降溫。最關鍵的一點在於:我不希望新技術成為技術的掘墓者,更不希望新技術毀掉我們已經構建好的技術體系。

------題記


當下,在網路和it領域,最火爆的名詞莫過於:雲計算、大數據、虛擬化、軟體定義網路、網路功能虛擬化、人工智慧......數不勝數,但是在這些新技術呱呱墜地之時,我們是否冷靜思考了它們在各個方面的影響。我想,我們更多的關注了它們的優勢,對於劣勢甚至危害,並沒有清醒的認識。筆者在此將列舉一二淺顯的認識。

1.SDN在數據災難前的脆弱性

我現在從網路的歷史說起:

Internet的雛形階段

1969年,美國國防部高級研究計劃局(Advance Research Projects Agency,ARPA)開始建立一個命名為ARPANET的網路。當時建立這個網路的目的是出於軍事需要,計劃建立一個計算機網路,當網路中的一部分被破壞時,其餘網路部分會很快建立起新的聯繫。人們普遍認為這就是Internet的雛形。(來源:百度百科)

可以見到,網路最開始的目的更多的是為了通信災備和數據容災,正是在這種指導思想下,路由技術誕生了,路由簡言之就是將信息從本端傳輸到對端的路徑。在不可靠的物理鏈路上,信息的丟失損壞,信道的中斷和雜訊,隨時威脅網路整體的安全,於是出現了這種拓撲:

圖片來源網路

在這種拓撲結構的保證下,當單一物理信道出現網路不可達到的情況下,動態路由協議(dynamic routing protocol)將會在其他可達路由中選取網路開銷最小的一條,通過這種容錯機制進而保證網路整體的健壯性。

但是當SDN(軟體定義網路,以下簡稱SDN)技術出現在現網當中,整體的情況發生了巨大的改變,架構上大體類似此圖:

圖片來源網路

在整體網路轉發麵通過北向介面與SDN Controller通信,進而完成數據的轉發,雖然保證了網路的高拓展性、伸縮性和自動化運維,但是因此也帶來了巨大的安全隱患與業務中斷風險。當SDN Controller本身出現不可恢復的故障,網路整體的容錯能力將會瞬間崩潰;當北向介面的數據鏈路出現無法到達的情況,所有轉發層設備都會宕機。儘管SDN確實有多控制器冗餘互備和轉發層StandAlone模式負隅頑抗,但是不可否認SDN在數據災難面前,遠遠沒有傳統路由交換堅固。請試想,當千年蟲事件爆發時,為什麼沒有造成全球生產網路中斷,正是不同設備間的互補和架構容錯保證了部分網路結點故障仍可運作。

2.技術集成化帶來的風險集中

眾所周知,任何事物的複雜性都與故障率存在不可割斷的聯繫,如果各位有現網設備的調試經驗,你會明白,如果一臺設備(網路設備或者伺服器)上運行了多種協議或服務,那麼故障出現的頻率和平均故障恢復時間會大大增加,平均無故障時間大大減少。這種情況是系統中多個組件之間的衝突與兼容性問題。

現在有很多國內數通廠商都在生產UTM設備,但是這種看似高度集成的設備僅僅在SMB市場得以取得成功,在大型企業網中沒有得到廣泛應用,某大型企業中設備選型如圖:

你可以看到,沒有任何一臺設備身兼數職,同時進行安全審計、數據轉發、流量過濾、安全策略等各種工作,這裡就在很有力的說明高度集成化的設備並不適合規模化組網以及對業務敏感的環境。

但是,UTM僅僅是對網路部分功能的集成,對於SDN Controller而言,集成了網路整體流量的路由與交換,還要與北向的Application進行交互,大大增加了複雜度。我想,可能這比UTM設備面臨更嚴峻的挑戰。

3.高層級應用的低可靠性

即使不是網路行業的從業者,對這一點都會有深刻的體會:主板的BIOS程序只要你不去亂改,沒事不要去刷新,那麼不會出現任何問題。但是,Windows在使用中,即使你不去做任何調整和更改,隨著使用時間的增加,系統運行會逐步暴露出各種未知的,可復現或者不可復現的錯誤和中斷。對於個人而言,也許這並不會造成災難的後果,但是對於一個企業、一個數據中心、一個ISPICP而言,這一點是不可忍受的。他們沒有任何理由去接受突然發生業務中斷,也許某些ICT廠商鼓吹雲技術能降低客戶TCO,但是長久以來,一次業務中斷,絕對不是網路部署時期所節約的成本所能夠彌補的。

允許我舉一個很不恰當的例子:功能豐富的安卓手機和老舊的功能機相比,安卓機擁有很高的定製特性和遷移性,但是在可靠性這一硬指標面前,功能機可以用十多年零故障秒殺掉市面上所有的智能手機。這並不是因為功能機多麼黑科技,相反,功能機廠商在技術上被智能手機廠商甩了八條街都不止,僅僅是因為功能機工作在穩定的底層,而安卓機將更多的底層業務放置在與用戶的直接交互層完成。筆者不是開發人員,如果此段內容存在技術錯誤,還請廣大同仁批評指正。

4.防範非法入侵的複雜性

在網路安全日益受到重視的今天,SDN技術其實並不能滿足這一需求。對於傳統路由器交換機防火牆而言,操作系統是高度嵌入式的Unix系統,已經經過了廠商的各種測試和考驗,確保其安全性。儘管如此,設備仍然不夠安全,如果你關心網路安全方面,很多數通廠商都會定期對網路設備發布安全補丁或者風險警示,但是當SDN真正到來後,更多的安全依賴於應用層面的防範,如果作為網路核心的SDN控制器為了網路的定製化而極大豐富對外開放的介面時,也等於為非法訪問和惡意攻擊打開了更多的大門。目前為止,SDN控制器的存在無疑讓網路受到更多安全風險的威脅。


歸根結底,我並不是說SDN一無是處,我只是想說SDN有它自己固有的市場,但是一切認為SDN顛覆傳統路由交換市場的觀點都有待商榷。在未來的30年內,傳統網路仍然會是網路不可或缺的一部分。過早取代傳統網路,只會讓技術為自己掘墓,那時候可能會有一場信息災難。但是SDN確實能提高網路效率,這一點我從來不否認,傳統網路應當在一定程度上借鑒SDN的優點。

(未完待續)

--------2018年10月2日


推薦閱讀:
相關文章