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