互聯(lián)網(wǎng)創(chuàng)建之初,以IP技術(shù)為核心,網(wǎng)絡(luò)架構(gòu)簡潔高效,網(wǎng)絡(luò)設(shè)備功能簡單,在提供高效的計算機間信息交互的同時,也提供了很好的擴展能力,使得計算機網(wǎng)絡(luò)迅速從實驗室走向了世界。
計算工業(yè)迅猛發(fā)展,推進了互聯(lián)網(wǎng)業(yè)務(wù)的創(chuàng)新繁榮。互聯(lián)網(wǎng)已經(jīng)從計算機間信息交互,發(fā)展為連接人與信息、人與商品、人與人、人與服務(wù)的紐帶,已經(jīng)溶于到我們?nèi)粘9ぷ鳌⑸钆c生產(chǎn)中。
騰訊作為一家大型互聯(lián)網(wǎng)公司,提供眾多的互聯(lián)網(wǎng)業(yè)務(wù)服務(wù)(微信、QQ、QQ空間、游戲、QZone、音樂、視頻、新聞、互聯(lián)網(wǎng)金融、公有云等),并且有著龐大的用戶群體(QQ月活躍帳戶數(shù)8.6億、微信&Wechat月活躍用戶數(shù)6.5億、QQ空間月活躍用戶數(shù)6.53億,等)。數(shù)據(jù)引自《騰訊公布 2015 年第三季度業(yè)績》。
騰訊快速的業(yè)務(wù)創(chuàng)新與日益龐大的用戶群,對網(wǎng)絡(luò)也提出了越來越來多的訴求,對底層基礎(chǔ)網(wǎng)絡(luò)設(shè)施帶來巨大的挑戰(zhàn):
挑戰(zhàn)一:資源調(diào)度網(wǎng)絡(luò)設(shè)備對網(wǎng)絡(luò)所承載的應(yīng)用層業(yè)務(wù)缺乏感知,網(wǎng)絡(luò)設(shè)備處理數(shù)據(jù)包時依據(jù)鏈路負(fù)載均衡、流量控制等機制自主調(diào)控,顆粒度大,同時也缺乏全局的信息,無法依據(jù)業(yè)務(wù)以及網(wǎng)絡(luò)的實時情況,從整網(wǎng)的視角進行更細(xì)粒度的調(diào)控。造成了網(wǎng)絡(luò)設(shè)備利用率低、網(wǎng)絡(luò)資源沒有得到最大化的利用。
挑戰(zhàn)二:網(wǎng)絡(luò)運營傳統(tǒng)運營模式下,運營人員不僅需要關(guān)心路由轉(zhuǎn)發(fā),還需要關(guān)心負(fù)載均衡、安全、NAT、QOS、流量工程等越來越多的復(fù)雜功能,需要依據(jù)具體協(xié)議在網(wǎng)絡(luò)節(jié)點上進行命令配置,在海量網(wǎng)絡(luò)設(shè)備場景下,網(wǎng)絡(luò)變更工作量巨大、業(yè)務(wù)響應(yīng)時間過長,同時對運營人員的技能也有非常高的要求。
挑戰(zhàn)三:云業(yè)務(wù)服務(wù)以虛擬化技術(shù)為核心的云計算,提供主機出租、私有云服務(wù),在傳統(tǒng)的數(shù)據(jù)中心的基礎(chǔ)上,提供多租戶自定義數(shù)據(jù)中心的服務(wù),傳統(tǒng)的為單一用戶設(shè)計的網(wǎng)絡(luò)架構(gòu)(傳統(tǒng)網(wǎng)絡(luò)以IP為核心,IP地址同時包含了標(biāo)識和位置信息的雙重身份)非常難以支撐多租戶高動態(tài)的網(wǎng)絡(luò)服務(wù)發(fā)放需求。
傳統(tǒng)網(wǎng)絡(luò)的限制互聯(lián)網(wǎng)以IP技術(shù)為核心的理念,簡單、靈活、易于擴展,促進了網(wǎng)絡(luò)的推廣普及。但在發(fā)展過程中也不斷暴露出問題。IP盡力而為的轉(zhuǎn)發(fā)設(shè)計,無法避免網(wǎng)絡(luò)的丟包,作為彌補,設(shè)計了TCP協(xié)議,通過在主機側(cè)的可靠性傳輸來確保信息的完整性。隨著網(wǎng)絡(luò)規(guī)模與流量的增加,網(wǎng)絡(luò)的擁塞問題變得更加凸顯了,于是參考ATM的理念,設(shè)計了MPLS,通過規(guī)劃流量傳輸路徑,優(yōu)化網(wǎng)絡(luò)資源。MPLS依然無法滿足基于IP級別流量調(diào)度力度以及流量感知,于是各種路由策略出現(xiàn)了,期待以此來約束路由選路,但是卻都無法很好的解決實時、細(xì)粒度的流量調(diào)度能力,而引入的大量的協(xié)議和路由策略,卻大幅提升了網(wǎng)絡(luò)的復(fù)雜程度。新的業(yè)務(wù)的需求,也催生了大量的復(fù)雜的功能與協(xié)議,如為了滿足云業(yè)務(wù)需求,一大堆的功能特性被開發(fā)出來,如QBR、VXLAN、EVPN等。
越來越多功能像補丁一樣被集成到網(wǎng)絡(luò)設(shè)備中,網(wǎng)絡(luò)設(shè)備越來越臃腫,網(wǎng)絡(luò)更新的速度嚴(yán)重滯后于互聯(lián)網(wǎng)業(yè)務(wù)發(fā)展的速度。
另一方面,傳統(tǒng)網(wǎng)絡(luò)設(shè)備面向人的網(wǎng)絡(luò)運維理念,基于CLI等人機交互的手段對網(wǎng)絡(luò)設(shè)備進行管控,無法適應(yīng)海量網(wǎng)絡(luò)規(guī)模、云網(wǎng)絡(luò)業(yè)務(wù)快速發(fā)放的需求。基于CLI、SNMP的管理層級的開放,也難以基于業(yè)務(wù)感知的全局精細(xì)化流量調(diào)度優(yōu)化。
SDN帶來的革新基于此背景,一批計算領(lǐng)域的專家,包括我們所熟知的Nick McKeown、Martin Casado等大牛,嘗試從計算機的視角,來解決網(wǎng)絡(luò)的問題。SDN的理念基于此:底層轉(zhuǎn)發(fā)平面支持精簡通用轉(zhuǎn)發(fā)行為,通過精簡的指令(OpenFlow)與上層網(wǎng)絡(luò)操作系統(tǒng)交互(控制器),網(wǎng)絡(luò)操作系統(tǒng)標(biāo)準(zhǔn)化北向接口(套接字)與上層網(wǎng)絡(luò)應(yīng)用交互。SDN通過轉(zhuǎn)發(fā)、控制與應(yīng)用的分層解耦的架構(gòu),給網(wǎng)絡(luò)設(shè)計規(guī)劃與管理提供了極大的靈活性,方便網(wǎng)絡(luò)開發(fā)者的創(chuàng)新,也便于用戶通過簡單的編程,實現(xiàn)對網(wǎng)絡(luò)的靈活的控制和基于DEVOPS的自動化運維方法。
SDN技術(shù)給沉寂已久的網(wǎng)絡(luò)領(lǐng)域帶來了巨大的活力,包括眾多高校等科研機構(gòu)在內(nèi),幾乎所有的網(wǎng)絡(luò)芯片公司、網(wǎng)絡(luò)設(shè)備公司、IT公司、運營商、互聯(lián)網(wǎng)公司都積極投入的大量的資源進行SDN研究和探索,越來越多的成功案例被部署在生產(chǎn)網(wǎng)絡(luò)上,給運營、業(yè)務(wù)、成本帶來巨大的價值。
騰訊SDN的探索騰訊在自身業(yè)務(wù)的驅(qū)動下,也積極的探索采用SDN的理念應(yīng)對日益龐大的網(wǎng)絡(luò)規(guī)模帶來的運營挑戰(zhàn),尋求采用SDN的方法提升運維的效率,減少運維的工作量,提高網(wǎng)絡(luò)資源的利用率,借助SDN柔性的網(wǎng)絡(luò)架構(gòu)模型來應(yīng)對數(shù)據(jù)中心云化帶來的復(fù)雜多變的網(wǎng)絡(luò)需求。
基于騰訊網(wǎng)絡(luò)的現(xiàn)狀,騰訊的SDN創(chuàng)新是以服務(wù)業(yè)務(wù)、優(yōu)化運營為主要目的,需要平滑兼容現(xiàn)網(wǎng)數(shù)量龐大的網(wǎng)絡(luò)設(shè)備,在已有的基礎(chǔ)上累積,在迭代式創(chuàng)新的前進路上,與伙伴們一起,不斷地推進SDN生態(tài)的成熟,逐步邁向網(wǎng)絡(luò)的開放與開源。
從2013年起,騰訊在數(shù)據(jù)中心云網(wǎng)絡(luò)、數(shù)據(jù)中心間網(wǎng)絡(luò)、廣域網(wǎng)、波分以及安全等領(lǐng)域都積極開展SDN的研究,并有很多的項目在生產(chǎn)網(wǎng)部署上線,給業(yè)務(wù)和運營帶來了價值,以下是選取的兩個在騰訊實踐中的例子:
2013年6月,騰訊數(shù)據(jù)中心間網(wǎng)絡(luò)DCI的SDN項目啟動,旨在通過SDN思路和技術(shù)解決廣域網(wǎng)絡(luò)利用率、差異化QoS網(wǎng)絡(luò)質(zhì)量保障、業(yè)務(wù)冗余調(diào)度等問題,采用兼容現(xiàn)網(wǎng)的漸進式南向協(xié)議,構(gòu)建基于騰訊運營場景的控制器和業(yè)務(wù)編排系統(tǒng)。2015年初上線部署,全面提升帶寬利用率、網(wǎng)絡(luò)質(zhì)量與調(diào)度能力。
2013年12月,數(shù)據(jù)中心網(wǎng)絡(luò)虛擬化需求日趨明顯,Overlay技術(shù)趨于成熟,騰訊開始啟動代號為CODENET的網(wǎng)絡(luò)解決方案項目。基于NFV、Overlay以及集中控制器的方案,提供靈活的網(wǎng)絡(luò)資源調(diào)度與編排,支撐數(shù)據(jù)中心網(wǎng)絡(luò)虛擬化場景。截至15年底,已經(jīng)規(guī)模上線企業(yè)混合云解決方案。
基于ODL的開源實踐騰訊進行SDN的研究之初,就意識到控制器的重要性,開始對SDN控制器進行研究開發(fā),2014年4月,騰訊自研控制器完成系統(tǒng)開發(fā)與測試,支持控制器集群,提供高性能并發(fā)的接入能力,南向集群負(fù)載、冗余接入,故障自切換,并支持Openflow、netconf等南向協(xié)議。但是團隊面臨新的挑戰(zhàn):不同的SDN解決方案紛紛啟動,對控制器的需求繁多(不同的南向協(xié)議,不同的控制應(yīng)用,不同的集群需求),獨立開發(fā)的控制器系統(tǒng)需要持續(xù)不斷的投入很大的人力資源。
而此時ODL開源社區(qū)成立,并發(fā)布了ODL的版本, ODL良好的生態(tài),彈性可擴展的架構(gòu),日漸豐富的特性與協(xié)議,明晰的版本演進,動搖了我們自研的信心。經(jīng)過多方的調(diào)研與分析,內(nèi)部多次的討論與分析,我們做了一個艱難的決定:全面切換SDN應(yīng)用到ODL軟件平臺上。迄今為止,我們基于ODL平臺進行SDN研發(fā)已1年多,我們推出了廣域網(wǎng)SDN、Hyena項目,并成功上線部署運行,也正基于ODL開發(fā)包括DCI SDN 二期、波分在內(nèi)的眾多的SDN的解決方案。
騰訊認(rèn)識到SDN的開源軟件的生態(tài)對于SDN的推廣的重要性。為了更好地提升我國開源SDN社區(qū)的技術(shù)水平,騰訊聯(lián)手阿里、百度等國內(nèi)企業(yè)開始倡導(dǎo)和參與開源SDN在中國的建設(shè),發(fā)起并成立了中國開源SDN實踐委員會(China Open SDN Committee, COS),在2015年4月組織了全球首屆開源SDN/ODL實戰(zhàn)集訓(xùn)營暨黑客馬拉松,并計劃于2016年1月19日-23日在深圳大學(xué)舉辦為期一周的第二屆開源SDN/ODL實戰(zhàn)集訓(xùn)營。并以此為契機,在2016年1月18日下午在深圳大學(xué)舉辦“中國SDN/ODL技術(shù)實踐峰會”(歡迎各道同仁一同參會 https://jinshuju.net/f/Z4sJZr)。
面對日益龐大的網(wǎng)絡(luò)基礎(chǔ)設(shè)施和復(fù)雜的運營需求,騰訊正以積極開放的態(tài)度,擁抱SDN,,也希望與行業(yè)伙伴們一起,營造一個良性循環(huán)的網(wǎng)絡(luò)生態(tài)系統(tǒng),推進SDN與開源實踐,服務(wù)好互聯(lián)網(wǎng)的業(yè)務(wù)快速發(fā)展與創(chuàng)新。