淺談數據中心網絡的SDN技術
SDN的大名如雷冠耳,是當前網絡領域的熱點,被業界普遍認為是未來網絡發展的方向,孕育著巨大的市場機會。SDN之所以能迅速崛起,主要的驅動力來自于數據中心,更準確的說,是來自于數據中心的網絡虛擬化,如果沒有網絡虛擬化,數據中心跟其它網絡對SDN而言沒啥區別。翻開SDN的介紹不難理解,SDN是一種將網絡控制層面和數據轉發層面分離的技術,可以為網絡帶來可編程的特性。未來的網絡將和計算機一樣,提供一個硬件平臺,在此基礎上通過軟件對網絡進行可編程設計。 SDN概念說起來簡單,但是實際應用卻面臨不少的困難,尤其是是當前實際應用并不多的情況下,真正了解SDN的人并不多,更多的人并不知道如何去使用SDN,怎么才能利用SDN提升網絡設計和管理的效率,本文通過通俗性的語言,簡單化的講解,讓大家對SDN有個感性的認識。
用過網絡測試儀的技術人員都知道,如果需要通過測試儀模擬各種測試流,需要提前對測試儀進行預設置,設置好發送報文的特征,然后點擊端口發送,就可以打出流量來,在這個過程中可以設置流量大小,抓包,反復修改報文特征。其實SDN的實現過程也和測試儀的設置過程類似,首先通過OpenFlow協議(SDN軟硬件通信的唯一標準協議,網絡設備支持對OpenFlow的響應)對網絡設備進行設置,在配置之前,首先收集網絡基本信息,包括:有多少端口,網絡帶寬,路由規格等等網絡技術參數,這些參數并不是某一臺網絡設備的,而是整個網絡環境具有的總體技術參數。然后根據這些參數,使用SDN的軟件控制器對路由協議,二層環網等進行設計,設計到參數后,通過OpenFlow協議向所有的網絡設備下發,如果網絡設備無法滿足設定的設計,將返回失敗,需要對設計方案進行修改。調整后設計方案后再下發,這樣經過反復的修改最終設計出最適合自己數據中心業務應用的網絡。不難看出,SDN***的好處就是可以很快地對網絡設計進行調整,通過軟件模擬設計網絡,有不合適的地方及時進行調整,擁有SDN將不需要使用者關心網絡設備是如何完成這些上層設計的,只通過SDN告訴網絡設備,路由要從哪個端口轉發到哪個端口,二層環路阻塞在哪里,甚至二層環路根本不用阻塞鏈路也可以保證沒有環路,這將數據中心的網絡技術人員從煩瑣的網絡設備配置中解脫出來,讓網絡人員可以更加聚焦于自己數據中心的應用業務,而且使用SDN后為網絡人員調整網絡提供了極大的便利,傳統調整網絡的方式,比如變更流量轉發端口,新增路由等都需要人到機房去布線調整,往往要花費幾天的工夫。采用SDN則不需要這樣,只要通過軟件調整幾分鐘就可以搞定,技術人員根本不用關心這些網絡設備在哪里,就是遠在美國的數據中心,也可以在北京的管理中心里順暢地部署業務。數據中心虛擬化技術已經實現了異地數據中心之間的業務遷移,處于北京和美國紐約的兩個數據中心網絡可能共同來完成SDN發出的網絡設計方案,網絡人員不用關心到底自己設計的業務跑在哪里,處于異地的兩個數據中心完全融合為網絡人員提供了一個網絡硬件平臺,網絡人員可以隨心所欲地設計網絡。
SDN除了為網絡設計帶來了極大便利,也便于對數據中心網絡進行管理,可以說SDN就是升級版的網絡管理軟件。通過網管軟件可以對所有的網絡設備進行管理,現有的數據中心網管具有網絡監控,管理,業務異常告警等功能。SDN除了具備這些網管的功能之外,還可以對網絡故障進行自愈。當網絡發生故障時,SDN控制器獲知網絡異常表現,采取自動恢復機制。這些恢復機制是提前通過軟件設置好的,一旦得到發送的指令,就可以通過SDN發送到相關的網絡設備上,執行恢復程序,這樣數據中心網絡可以自行進行故障恢復,只要整個網絡是全冗余的設計,通過SDN可以確保網絡業務永不中斷。針對不同的故障,SDN發出不同的網絡修復方法,現階段我們都是通過業務演練,故障模擬來驗證備份方案是否存在隱患的。在SDN的世界里,已經都可以通過軟件模擬,可以通過軟件構造出各種異常情況,然后制定解決方案,所以的故障模擬演練都可以通過軟件模擬,短短幾分鐘就可以做完各種故障模擬。因為SDN的設計完全是通過軟件對網絡進行定義和設計,下發硬件網絡設備后,可以不費吹灰之力就可以完成反復的模擬、操作、調整,這才是SDN真正強大的地方。
從以上的描述中不難發現,SDN實際就像計算機上安裝的各種編程環境,我們可以通過Visual C++編程環境設計出各種應用軟件系統,在Visual C++的環境中可以調試,編譯,最終完成軟件系統設計。SDN也是同樣,SDN控制器就像一個編程環境,網絡人員通過控制器進行網絡設計編程,這個過程可以調試,編譯和運行,最終設計出優秀的網絡,使用SDN,即使不懂TCP/IP為何物的人也可以設計出高效的網絡,這正是SDN的魅力所在。翻開網絡標準文檔RFC,已經更新到了6000多篇,哪個人也沒有精力將這么多的RFC 吃透,通過SDN可以將人們從浩瀚的網絡協議中解脫出來,只有設計網絡設備的人才用關心網絡協議的使用,使用網絡設備的人,只要通過SDN控制,就不用再關心網絡底層的實現。看到這里,作為一名網絡技術人員一定為此而興奮,是的,網絡可編程,這是一件多么酷的事情,未來不僅會有計算機編程專家,也會有網絡設計編程專家,這些人只需要懂得怎么玩SDN,就可以在數據中心網絡領域里混得游刃有余。