SDN:軟件定義網絡


最近高級網絡課的小組任務是在老師給定的范圍內自選方向主題研究並做展示報告。我們組選了sdn。原以為這東西會是工業界無人問津的概念化產品,Google了一下卻發現其實sdn挺火的,由於它可能帶來的可擴展性,一些大互聯網企業也在開始涉足相關的研發,比如Google呵Facebook。這里簡要的梳理下我對SDN概念性的認識。

背景

虛擬化的大趨勢

近年來,大數據、雲計算興起,虛擬化技術的重要性越發突出。提到虛擬化,不得不提的是計算機行業里的一句老話:

計算機世界的絕大部分問題都可以通過分層的方法來解決

其實虛擬化也可以理解成一種分層的思想。就拿雲計算這個應用場景來說,虛擬化的技術就是在原有的硬件-操作系統-用戶層次中,增添了虛擬機這么一層,變成了硬件-虛擬機-操作系統-用戶,用虛擬機來管理硬件資源,增加了動態調整硬件資源的語義。

縱觀計算機的發展歷程,各方面都可以看到通過增加類似的虛擬化層次來提高生產效率的案例。比如高級語言之於匯編,比如圖形界面之於命令行。這種添加層次的解決方案,總是能讓問題得到更清晰的解決。

網絡虛擬化

網絡經歷了數十年的發展,如今在人們的生產、生活中發揮着巨大的作用。全球的網絡拓撲結構結構錯綜復雜,有許多的自制系統組成。數據包從中國的一台PC機發出,訪問到美國的主機,需經過一系列的路由、轉發,而經由的網絡拓撲節點由層層網關、路由器支配,難於控制。一些組織,在架設自身的可擴展、大規模網絡環境時,也同樣遇到了拓撲結構復雜、難於維護的問題。

如果能剝離開網絡的物理拓撲結構,將網絡資源虛擬化,隱藏物理結構的復雜性,統一的進行邏輯層的管理控制,就能滿足多變的網絡需求了。

SDN和OpenFlow就是一個這樣的解決方案。

OpenFlow和SDN

OpenFlow起源於斯坦福的Ethane項目。該項目試圖通過一個集中式的控制器,讓網絡管理員可以方便地定義基於網絡流的安全控制策略,並將這些安全策略應用到各種網絡設備中,從而實現對整個網絡通訊的安全控制。受到此項目的啟發,斯坦福的老師和學生將Ethane的設計更一般化,將傳統網絡設備的數據轉發(data plane)和路由控制(control plane)兩個功能模塊相分離,通過集中式的控制器(Controller)以標准化的接口對各種網絡設備進行管理和配置。2008年,他們提出了OpenFlow的概念。

這種分布式的實現方式,讓控制平面可以和轉發平面物理的分離開,控制平面完全可以運行在運算能力更強的服務器上,而不是路由器。OpenFlow協議則是分離的兩者之間的通信協議。關於OpenFlow的技術細節,《虛擬化的逆襲:OpenFlow和SDN》一文中有簡明介紹。

基於OpenFlow為網絡帶來的可編程的特性,有研究人員提出了SDN即Software Defined Network(2009年)。在這個概念中,網絡中所有的網絡設備被視為被管理的資源,以此抽象出一個網絡操作系統(Network OS)的概念,這個網絡操作系統一方面抽象了底層網絡設備的具體細節,同時還為上層應用提供了統一的管理視圖和編程接口。SDN的架構細節,參見《SDN是生意 OpenFlow是技術》

SDN和OpenFlow的關系,就像互聯網之於TCP/IP協議棧。OpenFlow是SDN的核心協議,用於控制轉發面設備的控制轉發。而SDN是上層的變成界面。

有觀點認為,『OpenFlow是技術,SDN是生意』。最近對SDN唱衰的報道也證明了這樁『生意』的前途未仆。

SDN的發展

在雲計算飛速發展的同時,SDN也喧囂塵上。Google,Facebook等大公司也結成了產業聯盟,來推動其發展。

但其現狀也並非一片明朗:

根據IDC的研究結果顯示,在2013年,整個企業網絡行業的市場價值為420億美元,其中將近一半來自2-3層網絡交換機市場。SDN只能產生約37億美元的價值(8.8%),而且要到2016年才能達到這個數字。與早前的預測相比,IDC的預測數字有所增加,但從整個網絡行業來看,SDN仍然相去甚遠。

一方面,SDN的性能還有待改善,另一方面,由於SDN的統一平台的思想,會帶來硬件設備的同質化,威脅到廠商的利益,將會面臨來自廠商鎖定的阻力。《理性看待SDN》一文中有較詳細的解釋。

雖然虛擬化能解放生產力,是大勢所趨,但就像功耗更大的復雜指令集在市場上戰勝了精簡指令集一樣,市場是殘酷的。只能期待開源和開放的腳步不要停下。

參考


PS:歡迎訪問博客新家 http://biaobiaoqi.me

注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2020 ITdaan.com