隨著云計算、虛擬化、SDN等技術(shù)在數(shù)據(jù)中心持續(xù)落地,數(shù)據(jù)中心網(wǎng)絡(luò)到了不得不改變的時候了。為了滿足這些新的技術(shù)需求,數(shù)據(jù)中心網(wǎng)絡(luò)架構(gòu)也從傳統(tǒng)的三層網(wǎng)絡(luò)向大二層網(wǎng)絡(luò)架構(gòu)轉(zhuǎn)變,也就是新一代的數(shù)據(jù)中心將采用二層的網(wǎng)絡(luò)架構(gòu),所有的接入設(shè)備都連接到核心網(wǎng)絡(luò)設(shè)備上,然后通過核心設(shè)備路由轉(zhuǎn)發(fā)出去。在數(shù)據(jù)中心內(nèi)部完全是一個二層網(wǎng)絡(luò),而且為了實(shí)現(xiàn)跨數(shù)據(jù)中心的VM遷移,數(shù)據(jù)中心之間也可以跑二層,當(dāng)前是虛擬的二層網(wǎng)絡(luò),基于物理三層網(wǎng)絡(luò)來跑二層。數(shù)據(jù)中心內(nèi)部網(wǎng)絡(luò)架構(gòu)向大二層轉(zhuǎn)變的趨勢已經(jīng)無法更改,將會有越來越多的數(shù)據(jù)中心網(wǎng)絡(luò)架構(gòu)向這個方向發(fā)展。數(shù)據(jù)中心內(nèi)部網(wǎng)絡(luò)建設(shè)成為一個大的二層網(wǎng)絡(luò),雖然架構(gòu)上清晰了,簡單了,但是卻帶來不少的現(xiàn)實(shí)難題。下面就來說一說,新一代數(shù)據(jù)中心網(wǎng)絡(luò)架構(gòu)變革所遇到的難題。
大二層MAC容量問題
數(shù)據(jù)中心網(wǎng)絡(luò)架構(gòu)向著大二層方向演變,首先帶來的就是MAC容量的難題。二層網(wǎng)絡(luò)根據(jù)MAC地址來完成點(diǎn)到點(diǎn)的轉(zhuǎn)發(fā),在數(shù)據(jù)中心里擁有數(shù)千臺服務(wù)器是再普通不過的了,而如今跨數(shù)據(jù)中心之間也要實(shí)現(xiàn)二層轉(zhuǎn)發(fā),這樣就要求數(shù)據(jù)中心的核心設(shè)備MAC容量超大才行。比如一個中等城市寬帶網(wǎng)絡(luò)至少要擁有100萬個家庭,要實(shí)現(xiàn)所有的家庭寬帶上網(wǎng),若都采用二層的數(shù)據(jù)中心網(wǎng)絡(luò),則需要核心網(wǎng)絡(luò)設(shè)備可以處理1M的MAC容量,這對網(wǎng)絡(luò)設(shè)備提出了很高的要求。目前能夠達(dá)到1M的MAC容量的網(wǎng)絡(luò)設(shè)備的確有,但是應(yīng)用并不普遍,32K~256K是最常用的容量規(guī)格。采用1M的MAC容量設(shè)備,這樣的設(shè)備往往價格很高,會給數(shù)據(jù)中心帶來沉重的負(fù)擔(dān),而且這樣大規(guī)格的設(shè)備使用并不普及,設(shè)備的穩(wěn)定性低。很多能夠達(dá)到1M的MAC容量的設(shè)備采用的都是芯片外掛TCAM來實(shí)現(xiàn)的,這種方式由于是通過PCI總線來訪問外掛器件,訪問速度自然沒有芯片內(nèi)快,所以這種方式的MAC學(xué)習(xí)速度并不是線速的。在一些網(wǎng)絡(luò)環(huán)路、震蕩中,這些設(shè)備就會表現(xiàn)出MAC學(xué)習(xí)不穩(wěn)定,流量有丟包,顯示有問題等一系列待解決的問題。所以在大二層的數(shù)據(jù)中心網(wǎng)絡(luò)中,如何提升網(wǎng)絡(luò)設(shè)備的MAC容量,是當(dāng)前網(wǎng)絡(luò)技術(shù)中急需解決的問題。如今通過技術(shù)手段達(dá)到1M以上MAC容量并不是難事,但在這種網(wǎng)絡(luò)環(huán)境下,要保證網(wǎng)絡(luò)運(yùn)行的穩(wěn)定性,還有很多的技術(shù)難題要解決。
環(huán)路問題
二層網(wǎng)絡(luò)最常見的網(wǎng)絡(luò)故障就是環(huán)路問題,在網(wǎng)絡(luò)規(guī)模比較小的情況下,可以通過部署STP/MSTP這些環(huán)路協(xié)議避免環(huán)路的產(chǎn)生。當(dāng)然STP/MSTP協(xié)議有天生的缺陷,阻塞了備用鏈路,造成網(wǎng)絡(luò)帶寬的嚴(yán)重浪費(fèi),后來又出現(xiàn)了TRILL新的二層網(wǎng)絡(luò)環(huán)路協(xié)議。TRILL協(xié)議可以保證所有的鏈路都處于轉(zhuǎn)發(fā)狀態(tài),避免了網(wǎng)絡(luò)帶寬的浪費(fèi)。不過我們知道TRILL實(shí)際上要靠ISIS協(xié)議來維持TRILL協(xié)議的狀態(tài),當(dāng)網(wǎng)絡(luò)規(guī)模很大的時候,網(wǎng)絡(luò)設(shè)備要處理大量的ISIS協(xié)議,這對網(wǎng)絡(luò)設(shè)備是一個不小的沖擊。能夠擁有1M的MAC容量的網(wǎng)絡(luò)設(shè)備,端口數(shù)量要數(shù)百個,要保證所有這些的端口的TRILL狀態(tài)計算準(zhǔn)備,并且在有網(wǎng)絡(luò)震蕩的情況下,TRILL協(xié)議仍能正確切換,這對網(wǎng)絡(luò)設(shè)備要求很高,尤其要保證 TRILL協(xié)議的切換速度。比如像STP協(xié)議,在正常切換的情況下,速度都要30秒,而若網(wǎng)絡(luò)規(guī)模比較大,則所花費(fèi)的時間會更長,達(dá)到分鐘級別都是有可能的。TRILL協(xié)議也是如此,ISIS協(xié)議并不是快速收斂的協(xié)議,超時時間,切換速度都不比STP協(xié)議快,所以在TRILL的二層環(huán)路網(wǎng)絡(luò)中,一旦發(fā)生網(wǎng)絡(luò)切換,那么收斂速度是個問題。數(shù)據(jù)中心很多業(yè)務(wù)是非常敏感的,在網(wǎng)絡(luò)出現(xiàn)丟包或者震蕩數(shù)秒鐘,都會影響到業(yè)務(wù),所以當(dāng)數(shù)據(jù)中心二層網(wǎng)絡(luò)規(guī)模擴(kuò)大以后,環(huán)路協(xié)議的收斂問題突顯。有人建議將TRILL的ISIS協(xié)議處理提升優(yōu)先級,比如放到一個單核上處理,通過軟件中斷的方式處理響應(yīng),這樣能夠大大提升切換的速度,避免受到其它協(xié)議的影響,當(dāng)然這樣自然會占用更多的設(shè)備資源,而且效果也未知。
廣播域過大的問題
大二層還會遇到一個問題就是廣播域過大。因為整個數(shù)據(jù)中心,甚至多個數(shù)據(jù)中心之間都是二層的,那么一個廣播報文會在整個數(shù)據(jù)中心的設(shè)備上進(jìn)行廣播的,顯然會占用大量的網(wǎng)絡(luò)帶寬,如果廣播流量比較多,可能會造成個別的端口出現(xiàn)擁塞,從而影響業(yè)務(wù)。在正常的網(wǎng)絡(luò)中,肯定是廣播流量越小越好。對于大二層網(wǎng)絡(luò)廣播域過大的問題,還好有一些解決的方法,而且這些方法目前看是比較符合實(shí)際的。比如:默認(rèn)情況下,禁止廣播報文的轉(zhuǎn)發(fā),讓廣播報文和組播報文一樣,通過協(xié)議控制轉(zhuǎn)發(fā),只有協(xié)議狀態(tài)計算好之后,才允許廣播報文轉(zhuǎn)發(fā),而且是像組播一樣,只轉(zhuǎn)發(fā)給請求接收的端口,也就是在未來的數(shù)據(jù)中心里將沒有廣播的概念,只有單播和組播的概念。對于跨數(shù)據(jù)中心的二層,這種二層轉(zhuǎn)發(fā)實(shí)際上是一種邏輯上的二層轉(zhuǎn)發(fā),要通過物理三層轉(zhuǎn)發(fā),是一種封裝技術(shù),這樣就可以通過軟件控制這種情況下,廣播報文要不要轉(zhuǎn)發(fā)。在默認(rèn)情況下,跨數(shù)據(jù)中心的二層廣播報文是不轉(zhuǎn)發(fā)的,可以通過軟件設(shè)置讓特定的廣播報文轉(zhuǎn)發(fā)。還有就是對廣播報文設(shè)置廣播抑制比,當(dāng)端口上的廣播流量達(dá)到一定比例時,對廣播報文進(jìn)行丟棄。顯然,對于大二層廣播域過大的問題,目前已經(jīng)有了一些比較好的解決方法,可以很好地解決這一問題。
盡管數(shù)據(jù)中心網(wǎng)絡(luò)架構(gòu)的演變面臨著各種各樣的問題,但是向大二層轉(zhuǎn)變的趨勢已經(jīng)無法改變??v然這樣的架構(gòu)給數(shù)據(jù)中心帶來了新的問題,但是正是有了這些缺陷,也給了網(wǎng)絡(luò)設(shè)備商機(jī)會,誰能很好地解決這些問題,誰就能在未來的網(wǎng)絡(luò)市場上戰(zhàn)勝對手,贏得市場。