生活随笔
收集整理的這篇文章主要介紹了
数据中心网络架构的问题与演进 — 传统路由交换技术与三层网络架构
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
戳藍(lán)字“ CSDN云計(jì)算 ”關(guān)注我們哦! 文章目錄
目錄 傳統(tǒng)路由交換技術(shù) 路由和交換 交換技術(shù) 傳統(tǒng)的 2 層交換技術(shù) 具有路由功能的 3 層交換技術(shù) 具有網(wǎng)絡(luò)服務(wù)功能的 7 層交換技術(shù) 路由技術(shù) 三層網(wǎng)絡(luò)架構(gòu) 核心層(Core Layer) 匯聚層(Aggregation Layer) 接入層(Access Layer) 三層網(wǎng)絡(luò)架構(gòu)的設(shè)計(jì)原則 三層網(wǎng)絡(luò)架構(gòu)的特點(diǎn) 三層網(wǎng)絡(luò)架構(gòu)面臨的問(wèn)題 STP 協(xié)議既是良方又是毒藥 云計(jì)算推動(dòng)縱向流量向橫向流量的轉(zhuǎn)變 服務(wù)器虛擬化帶來(lái)的虛擬機(jī)遷移問(wèn)題
傳統(tǒng)路由交換技術(shù)
路由和交換
網(wǎng)絡(luò)的工作方式是使用兩種設(shè)備: 交換機(jī)和路由器,來(lái)將計(jì)算機(jī)與外圍設(shè)備連接起來(lái)。 這兩種工具使連接到網(wǎng)絡(luò)上的設(shè)備之間以及其它網(wǎng)絡(luò)相互通信。
雖然路由器和交換機(jī)看起來(lái)很像,但是它們?cè)诰W(wǎng)絡(luò)中的功能卻截然不同:
交換機(jī)(Switch): 主要用于將一棟大廈或一個(gè)校園里的多臺(tái)設(shè)備連接到同一個(gè)網(wǎng)絡(luò)上。 例如,一臺(tái)交換機(jī)可以將您的多臺(tái)計(jì)算機(jī)、打印機(jī)和服務(wù)器連接起來(lái),從而形成一個(gè)共享資源網(wǎng)絡(luò)。 交換機(jī)相當(dāng)于一個(gè)控制器,允許不同的設(shè)備共享信息并且彼此通信。 通過(guò)共享信息和合理地分配資源,交換機(jī)可以幫助您節(jié)省資金,提高工作效率。 交換機(jī)有兩種基本類(lèi)型: 非管理型和管理型。
非管理型交換機(jī): 拆箱即可投入使用,并且不允許進(jìn)行任何更改。 因此,家庭網(wǎng)絡(luò)設(shè)備通常使用非管理型交換機(jī)。 管理型交換機(jī): 則允許您對(duì)它進(jìn)行編程。 由此提供了更大的靈活性,因?yàn)槟梢岳帽镜鼗蜻h(yuǎn)程方式對(duì)其進(jìn)行監(jiān)控和調(diào)整,進(jìn)而控制網(wǎng)絡(luò)的通信流量及網(wǎng)絡(luò)用戶(hù)訪(fǎng)問(wèn)權(quán)。 管理性交換機(jī)的典型特征就是具有管理登錄 IP。 路由器(Router): 主要用于將多個(gè)網(wǎng)絡(luò)連接起來(lái)。 例如,您會(huì)用一臺(tái)路由器將聯(lián)網(wǎng)的計(jì)算機(jī)連接到互聯(lián)網(wǎng)上,從而使多名用戶(hù)共享一個(gè)互聯(lián)網(wǎng)連接。 路由器相當(dāng)于一個(gè)調(diào)度員,它會(huì)選擇最佳的路由路徑來(lái)傳送信息,以便您迅速收到信息。 首先,路由器會(huì)分析網(wǎng)絡(luò)發(fā)送的數(shù)據(jù),改變數(shù)據(jù)的打包方式,然后將數(shù)據(jù)發(fā)送到另一個(gè)網(wǎng)絡(luò)上或者其他類(lèi)型的網(wǎng)絡(luò)上。 它們將貴公司與外界連接起來(lái),保護(hù)信息不受安全威脅,甚至可以決定哪些計(jì)算機(jī)擁有更高的優(yōu)先級(jí)。 根據(jù)貴公司的具體需求和網(wǎng)絡(luò)計(jì)劃,可以選擇具有不同功能的路由器:
防火墻(Firewalls): 一種用于檢查接收的數(shù)據(jù)并且防止公司網(wǎng)絡(luò)受到攻擊的專(zhuān)業(yè)軟件。 虛擬專(zhuān)網(wǎng)(VPN): 一種允許遠(yuǎn)程員工從遠(yuǎn)程地點(diǎn)安全訪(fǎng)問(wèn)網(wǎng)絡(luò)的途徑。 IP 電話(huà)網(wǎng)絡(luò): 利用語(yǔ)音和電話(huà)會(huì)議技術(shù)將貴公司的計(jì)算機(jī)和電話(huà)網(wǎng)絡(luò)集成在一起,從而簡(jiǎn)化并統(tǒng)一公司的通信方式。 交換技術(shù)
交換技術(shù)是隨著電話(huà)通信的發(fā)展和使用而出現(xiàn)的通信技術(shù)。 電話(huà)剛開(kāi)始使用時(shí),只能實(shí)現(xiàn)固定的兩個(gè)人之間的通話(huà),隨著用戶(hù)的增加,人們開(kāi)始研究如何構(gòu)建連接多個(gè)用戶(hù)的電話(huà)網(wǎng)絡(luò),以實(shí)現(xiàn)任意兩個(gè)用戶(hù)之間的通信。
傳統(tǒng)的 2? 層交換技術(shù)
從廣義上講,任何數(shù)據(jù)的轉(zhuǎn)發(fā)都可以叫做交換(Switch)。 但是,傳統(tǒng)的、狹義的第 2 層交換技術(shù),僅包括數(shù)據(jù)鏈路層的轉(zhuǎn)發(fā)。 2 層交換機(jī)主要用在小型局域網(wǎng)中,計(jì)算機(jī)數(shù)量在二、三十臺(tái)以下,這樣的網(wǎng)絡(luò)環(huán)境下,廣播包影響不大,2 層交換機(jī)的快速交換功能、多個(gè)接入端口和低廉價(jià)格,為小型網(wǎng)絡(luò)用戶(hù)提供了完善的解決方案。 交換式局域網(wǎng)技術(shù)使專(zhuān)用的帶寬為用戶(hù)所獨(dú)享,極大地提高了局域網(wǎng)傳輸?shù)男省?/span>
具有路由功能的 3 層交換技術(shù)
在大規(guī)模局域網(wǎng)中,為了減小廣播風(fēng)暴的危害,就必須把大型局域網(wǎng)按功能或地域等因素劃分成多個(gè)小局域網(wǎng)。 與此同時(shí),就出現(xiàn)了不同子網(wǎng)間的互訪(fǎng)需求,但這是 2 層交換技術(shù)無(wú)法實(shí)現(xiàn)的。 為了從技術(shù)上解決這個(gè)問(wèn)題,網(wǎng)絡(luò)廠(chǎng)商利用第 3 層交換技術(shù)開(kāi)發(fā)了 3 層交換機(jī),又稱(chēng)路由交換機(jī),它是傳統(tǒng)交換機(jī)與路由器的智能結(jié)合。 簡(jiǎn)單地說(shuō),可以處理網(wǎng)絡(luò)第 3 層數(shù)據(jù)轉(zhuǎn)發(fā)的交換技術(shù)就是第 3 層交換技術(shù)。
從硬件上看,在第 3 層交換機(jī)中,與路由器有關(guān)的第 3 層路由硬件模塊,也插接在高速背板/總線(xiàn)上。 這種方式使得路由模塊可以與需要路由的其它模塊間,高速交換數(shù)據(jù)。 3 層交換機(jī)是為 IP 設(shè)計(jì)的,接口類(lèi)型簡(jiǎn)單,擁有很強(qiáng)的 3 層包處理能力,價(jià)格又比相同速率的路由器低得多,非常適用于大規(guī)模局域網(wǎng)絡(luò)。
具有網(wǎng)絡(luò)服務(wù)功能的 7 層交換技術(shù)
第 7 層交換技術(shù)通過(guò)逐層解開(kāi)數(shù)據(jù)包的每層封裝,并識(shí)別出應(yīng)用層的信息,以實(shí)現(xiàn)對(duì)數(shù)據(jù)內(nèi)容的理解。 可以處理網(wǎng)絡(luò)應(yīng)用層數(shù)據(jù)轉(zhuǎn)發(fā)的交換技術(shù)就是第 7 層交換技術(shù)。 其主要目的是充分利用帶寬資源,對(duì)互聯(lián)網(wǎng)上的應(yīng)用、內(nèi)容進(jìn)行管理,提高網(wǎng)絡(luò)服務(wù)水平,數(shù)據(jù)流優(yōu)化和智能負(fù)載均衡,完成互聯(lián)網(wǎng)向智能化的轉(zhuǎn)變。 第 7 層交換技術(shù)通過(guò)應(yīng)用層交換機(jī)實(shí)現(xiàn)了所有高層網(wǎng)絡(luò)的功能,使網(wǎng)絡(luò)管理者能夠以更低的成本,更好地分配網(wǎng)絡(luò)資源。
從硬件上看,7 層交換機(jī)將所有功能集中在一個(gè)專(zhuān)用的特殊應(yīng)用集成電路或 ASIC(Application-specific Integrated Circuit,專(zhuān)用集成電路)上。 ASIC 比傳統(tǒng)路由器的 CPU 便宜,而且通常分布在網(wǎng)絡(luò)端口上,在單一設(shè)備中包括了 50 個(gè) ASIC,可以支持?jǐn)?shù)以百計(jì)的接口。
路由技術(shù)
路由技術(shù)主要是指路由選擇算法、因特網(wǎng)的路由選擇協(xié)議的特點(diǎn)及分類(lèi)。
路由選擇算法:
靜態(tài)路由選擇算法: 是非自適應(yīng)路由選擇算法,這是一種不測(cè)量、不利用網(wǎng)絡(luò)狀態(tài)信息,僅僅按照某種固定規(guī)律進(jìn)行決策得簡(jiǎn)單得路由選擇算法。 靜態(tài)路由選擇算法得特點(diǎn)是簡(jiǎn)單和開(kāi)銷(xiāo)小,但是不能適應(yīng)網(wǎng)絡(luò)狀態(tài)的變化。 靜態(tài)路由選擇算法主要包括擴(kuò)散法和固定路由表法。 靜態(tài)路由是依靠手工輸入的信息來(lái)配置路由表的方法。 優(yōu)點(diǎn)是減小了路由器的日常開(kāi)銷(xiāo)。 在小型互聯(lián)網(wǎng)上很容易配置。 可以控制路由選擇的更新。 但是,靜態(tài)路由在網(wǎng)絡(luò)變化頻繁出現(xiàn)的環(huán)境中并不會(huì)很好的工作。 在大型的和經(jīng)常變動(dòng)的互聯(lián)網(wǎng),配置靜態(tài)路由是不現(xiàn)實(shí)。 動(dòng)態(tài)路由選擇算法: 是自適應(yīng)路由選擇算法,是依靠當(dāng)前網(wǎng)絡(luò)的狀態(tài)信息進(jìn)行決策,從而使路由選擇結(jié)果在一定程度上適應(yīng)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)和通信量的變化。 特點(diǎn)是能較好的適應(yīng)網(wǎng)絡(luò)狀態(tài)的變化,但是實(shí)現(xiàn)起來(lái)較為復(fù)雜,開(kāi)銷(xiāo)也比較大。 動(dòng)態(tài)路由選擇算法一般采用路由表法,主要包括分布式路由選擇算法和集中式路由選擇算法。 分布式路由選擇算法是每一個(gè)節(jié)點(diǎn)通過(guò)定期得與相鄰節(jié)點(diǎn)交換路由選擇得狀態(tài)信息來(lái)修改各自的路由表,這樣使整個(gè)網(wǎng)絡(luò)的路由選擇經(jīng)常處于一種動(dòng)態(tài)變化的狀況。 集中式路由選擇算法是網(wǎng)絡(luò)中設(shè)置一個(gè)節(jié)點(diǎn),專(zhuān)門(mén)收集各個(gè)節(jié)點(diǎn)定期發(fā)送得狀態(tài)信息,然后由該節(jié)點(diǎn)根據(jù)網(wǎng)絡(luò)狀態(tài)信息,動(dòng)態(tài)的計(jì)算出每一個(gè)節(jié)點(diǎn)的路由表,再將新的路由表發(fā)送給各個(gè)節(jié)點(diǎn)。 路由選擇協(xié)議的特點(diǎn):
自適應(yīng) 分布式 分層次(分自治系統(tǒng)內(nèi)部和自治系統(tǒng)外部) 路由選擇協(xié)議劃分為兩大類(lèi):
內(nèi)部網(wǎng)關(guān)協(xié)議(IGP,具體的協(xié)議有 RIP 和 OSPF 等) 外部網(wǎng)關(guān)協(xié)議(EGP,目前使用最多的是 BGP) 三層網(wǎng)絡(luò)架構(gòu)
三層網(wǎng)絡(luò)架構(gòu): 是采用層次化模型設(shè)計(jì)的三層網(wǎng)絡(luò),Cisco 稱(chēng)之為: 分級(jí)的互連網(wǎng)絡(luò)模型(Hierarchical Inter-networking Model)。 即將復(fù)雜的網(wǎng)絡(luò)設(shè)計(jì)分成幾個(gè)層次,每個(gè)層次著重于某些特定的功能,這樣就能夠使一個(gè)復(fù)雜的大問(wèn)題變成許多簡(jiǎn)單的小問(wèn)題。 三層網(wǎng)絡(luò)架構(gòu)設(shè)計(jì)的網(wǎng)絡(luò)有三個(gè)層次:
核心層(網(wǎng)絡(luò)的高速交換主干) 匯聚層(提供基于策略的連接) 接入層 (將工作站接入網(wǎng)絡(luò)) 為了方便管理、提高網(wǎng)絡(luò)性能,大中型網(wǎng)絡(luò)應(yīng)按照標(biāo)準(zhǔn)的三層結(jié)構(gòu)設(shè)計(jì)。 但是,對(duì)于網(wǎng)絡(luò)規(guī)模小,聯(lián)網(wǎng)距離較短的環(huán)境,可以采用 “收縮核心” 設(shè)計(jì),忽略匯聚層。 核心層設(shè)備可以直接連接接入層,這樣一定程度上可以省去部分匯聚層費(fèi)用,還可以減輕維護(hù)負(fù)擔(dān),更容易監(jiān)控網(wǎng)絡(luò)狀況。
核心層(Core Layer)
核心層: 核心交換機(jī)為進(jìn)出數(shù)據(jù)中心的包提供高速的轉(zhuǎn)發(fā),為多個(gè)匯聚層提供連接性,核心交換機(jī)為整個(gè)網(wǎng)絡(luò)提供一個(gè)彈性的 L3 路由網(wǎng)絡(luò)。
核心層是網(wǎng)絡(luò)的高速交換主干,對(duì)整個(gè)網(wǎng)絡(luò)的連通起到至關(guān)重要的作用。 核心層應(yīng)該具有如下幾個(gè)特性: 可靠性、高效性、冗余性、容錯(cuò)性、可管理性、適應(yīng)性、低延時(shí)性等。 在核心層中,應(yīng)該采用高帶寬的千兆以上交換機(jī),因?yàn)楹诵膶邮蔷W(wǎng)絡(luò)的樞紐中心,重要性突出。 核心層設(shè)備采用雙機(jī)冗余熱備份是非常必要的,也可以使用負(fù)載均衡功能,來(lái)改善網(wǎng)絡(luò)性能。 網(wǎng)絡(luò)的控制策略最好盡量少在核心層上實(shí)施。 核心層一直被認(rèn)為是所有外部網(wǎng)絡(luò)流量的最終承受者,所以對(duì)核心層的設(shè)計(jì)以及網(wǎng)絡(luò)設(shè)備的要求十分嚴(yán)格。 核心層設(shè)備將占投資的主要部分。
匯聚層(Aggregation Layer)
匯聚層: 匯聚交換機(jī)連接接入交換機(jī),同時(shí)提供其他的服務(wù),例如: 防火墻,SSL Offload,入侵檢測(cè),網(wǎng)絡(luò)分析等。
匯聚層是網(wǎng)絡(luò)接入層和核心層的 “中介(中間層)”,就是在 Server 接入核心層前先做匯聚,以減輕核心層設(shè)備的負(fù)荷。 匯聚層具有實(shí)施策略、安全、工作組接入、虛擬局域網(wǎng)(VLAN)之間的路由、源地址或目的地址過(guò)濾等多種功能。 在匯聚層中,應(yīng)該選用支持三層交換技術(shù)和 VLAN 的交換機(jī),以達(dá)到網(wǎng)絡(luò)隔離和分段的目的。
接入層(Access Layer)
接入層: 接入交換機(jī)通常位于機(jī)架頂部,所以它們也被稱(chēng)為T(mén)oR(Top of Rack)交換機(jī),它們物理連接服務(wù)器。
接入層是直接面向用戶(hù)連接的部分,向本地網(wǎng)段提供工作站接入,主要解決了相鄰用戶(hù)之間的互訪(fǎng)需求。 所以接入層可以選擇不支持 VLAN 和三層交換技術(shù)的普通交換機(jī),接入層交換機(jī)具有低成本、高端口密度且即插即用的特性。 接入層還應(yīng)當(dāng)適當(dāng)負(fù)責(zé)一些用戶(hù)管理功能(如: 地址認(rèn)證、用戶(hù)認(rèn)證、計(jì)費(fèi)管理等),以及用戶(hù)信息收集工作(如: 用戶(hù)的 IP 地址、MAC 地址、訪(fǎng)問(wèn)日志等)。
三層網(wǎng)絡(luò)架構(gòu)的設(shè)計(jì)原則
層次化設(shè)計(jì): 每個(gè)層可以看作為是一個(gè)具有特定角色和功能的、結(jié)構(gòu)定義良好的模塊,層次化的設(shè)計(jì)結(jié)構(gòu),易于擴(kuò)展和維護(hù),降低了設(shè)計(jì)的復(fù)雜度和難度。 三層網(wǎng)絡(luò)架構(gòu)可以更好地控制網(wǎng)絡(luò)規(guī)模和網(wǎng)絡(luò)質(zhì)量,同時(shí)也方便網(wǎng)絡(luò)管理和維護(hù)。 模塊化設(shè)計(jì): 每個(gè)模塊對(duì)應(yīng)一個(gè)部門(mén)、功能或業(yè)務(wù)區(qū)域,可根據(jù)網(wǎng)絡(luò)規(guī)模靈活擴(kuò)展,部門(mén)或區(qū)域內(nèi)部調(diào)整涉及范圍小,容易進(jìn)行問(wèn)題定位。 冗余設(shè)計(jì): 雙節(jié)點(diǎn)冗余性設(shè)計(jì)可以保證設(shè)備級(jí)可靠,適當(dāng)?shù)娜哂嗵岣呖煽啃?#xff0c;但過(guò)度的冗余也不便于運(yùn)行維護(hù)。 如果無(wú)法做好雙節(jié)點(diǎn)冗余設(shè)計(jì),對(duì)框式的核心交換機(jī)或者出口路由器,可以考慮單板級(jí)的冗余,如雙主控板,雙交換網(wǎng)板。 另外,關(guān)鍵鏈路可以采用 Eth-Trunk 鏈路實(shí)現(xiàn)鏈路級(jí)可靠性。 對(duì)稱(chēng)性設(shè)計(jì): 網(wǎng)絡(luò)的對(duì)稱(chēng)性便于業(yè)務(wù)部署,拓?fù)渲庇^,便于協(xié)議設(shè)計(jì)和分析。
三層網(wǎng)絡(luò)架構(gòu)的特點(diǎn)
通常情況下,匯聚交換機(jī)是 L2 和 L3 網(wǎng)絡(luò)的分界點(diǎn),匯聚交換機(jī)以下的是 L2 網(wǎng)絡(luò),以上是 L3 網(wǎng)絡(luò)。 每組匯聚交換機(jī)管理一個(gè) POD(Point Of Delivery),每個(gè) POD 內(nèi)都是獨(dú)立的 VLAN 網(wǎng)絡(luò)。 服務(wù)器在 POD 內(nèi)移動(dòng)不必修改 IP 地址和默認(rèn)網(wǎng)關(guān),因?yàn)橐粋€(gè) POD 對(duì)應(yīng)一個(gè) L2 廣播域。
匯聚交換機(jī)和接入交換機(jī)之間通常使用 STP(Spanning Tree Protocol,生成樹(shù)協(xié)議)。 STP 使得對(duì)于一個(gè) VLAN 網(wǎng)絡(luò)只有一個(gè)匯聚層交換機(jī)可用,其他的匯聚層交換機(jī)在當(dāng)前使用的匯聚層交換機(jī)出現(xiàn)故障時(shí)才被使用(下圖中的虛線(xiàn))。 也就是說(shuō)匯聚層是一個(gè) Active-Passive 的 HA 模式。 這樣在匯聚層,是做不到水平擴(kuò)展的,因?yàn)榫退慵尤攵鄠€(gè)匯聚層交換機(jī),仍然只有一個(gè)在工作。 一些私有的協(xié)議,例如 Cisco 的 vPC(Virtual Port Channel)可以提升匯聚層交換機(jī)的利用率。 但是,一方面,這是私有協(xié)議,另一方面,vPC 也不能真正做到完全的水平擴(kuò)展。 上圖是一個(gè)匯聚層作為 L2/L3 分界線(xiàn),且采用 vPC 的網(wǎng)絡(luò)架構(gòu)。
三層網(wǎng)絡(luò)架構(gòu)面臨的問(wèn)題
STP 協(xié)議既是良方又是毒藥
生成樹(shù)協(xié)議(Spanning Tree Protocol,STP),是一種工作在 OSI 網(wǎng)絡(luò)模型中的第二層(數(shù)據(jù)鏈路層)的通信協(xié)議,基本應(yīng)用是防止交換機(jī)冗余鏈路產(chǎn)生的環(huán)路,用于確保以太網(wǎng)中無(wú)環(huán)路的邏輯拓?fù)浣Y(jié)構(gòu),從而避免了廣播風(fēng)暴大量占用交換機(jī)的資源。
傳統(tǒng)的數(shù)據(jù)中心網(wǎng)絡(luò)技術(shù),STP 是二層網(wǎng)絡(luò)中非常重要的一種協(xié)議。 但是,在二層網(wǎng)絡(luò)中使用 STP 協(xié)議有一個(gè)相當(dāng)矛盾的點(diǎn),那就是 可靠性 和 安全性 的矛盾。
可靠性是指構(gòu)建二層網(wǎng)絡(luò)時(shí),一般會(huì)采用會(huì)采用設(shè)備冗余和鏈路冗余的方式。 安全性是指二層交換機(jī)同處于一個(gè)廣播域,廣播報(bào)文在環(huán)路中會(huì)反復(fù)持續(xù)傳送,可能會(huì)形成廣播風(fēng)暴,所以必須防止形成環(huán)路。 要想兩種同時(shí)達(dá)到,可以采用 STP(生成樹(shù)協(xié)議)自動(dòng)控制,即冗余設(shè)備和冗余鏈路成備份,在正常情況下被阻塞掉,當(dāng)出現(xiàn)鏈路故障時(shí)冗余的設(shè)備端口和鏈路才會(huì)被打開(kāi)。 為什么二層交換網(wǎng)絡(luò)會(huì)產(chǎn)生物理環(huán)路?
鏈路冗余: 交換機(jī)之間為了冗余、帶寬提升、或錯(cuò)誤連接難免會(huì)產(chǎn)生一個(gè)封閉的物理環(huán)路,而以太網(wǎng)的轉(zhuǎn)發(fā)機(jī)制又決定了不能有物理環(huán)路,一有環(huán)路,那些發(fā)給所有主機(jī)的 Broadcast 、Unknown Unicast Frame 就會(huì)肆無(wú)忌憚在環(huán)路上永不停歇地繞圈圈。 這些 Frame 永遠(yuǎn)無(wú)法到達(dá)目的地,對(duì)交換機(jī) CPU 是一個(gè)致命的打擊,如果有環(huán)路的發(fā)生,你可能無(wú)法本地、或遠(yuǎn)程登錄你的交換機(jī),只有重啟或拔線(xiàn)了。 二層交換機(jī)的轉(zhuǎn)發(fā)機(jī)制: 交換機(jī)對(duì)于從一個(gè) Port N 上 incoming 的 frame,學(xué)習(xí)其 Source MAC X,生成 MAC Address Table(MAC X: Port N)。 這樣它就會(huì)生成 MAC 地址和 Port 的映射表,如果收到一個(gè) Frame,就會(huì)通過(guò) Frame 的 Destination MAC 與 MAC Address Table 進(jìn)行匹配,繼而得出這個(gè) Frame 應(yīng)該從哪一個(gè) Port 發(fā)送出去。 如果沒(méi)有匹配到,就認(rèn)為是 unknown Unicast 或 broadcast,只好將它從所有 Port( 除了 incoming 口)發(fā)送出去,讓 Frame 到了其他的交換機(jī)上嘗試處理,于是這個(gè) Frame 就有可能會(huì)一直在封閉的環(huán)路里無(wú)限的循環(huán)。 STP 協(xié)議的設(shè)計(jì)思路: 人類(lèi)的很多智慧來(lái)自于大自然,同學(xué)們仔細(xì)觀察一棵樹(shù),會(huì)發(fā)現(xiàn)一棵樹(shù),有根,樹(shù)干,樹(shù)杈,樹(shù)枝,葉子,水分通過(guò)根,源源不斷地輸送到主干,樹(shù)杈,然后到達(dá)葉子。 水分在從根擴(kuò)散到葉子的過(guò)程中,一直是單向的; 而葉子因?yàn)楣夂献饔卯a(chǎn)生的能量,再沿著葉子到達(dá)樹(shù)枝,樹(shù)杈,樹(shù)干,一直到根。 水分和能量是相反方向的流量,如果定義根為上游,葉子為下游,則水是從上游流向下游; 而能量則是由下游流向上游。 無(wú)論是哪個(gè)方向的流量,都沒(méi)有在原地打轉(zhuǎn)的情況發(fā)生,那是因?yàn)闃?shù)的物理結(jié)構(gòu)是發(fā)散的,沒(méi)有樹(shù)干、樹(shù)杈、樹(shù)枝的物理交織,自然不會(huì)發(fā)生環(huán)路。 網(wǎng)絡(luò)科學(xué)家發(fā)現(xiàn)了這個(gè)規(guī)律,有一個(gè)大膽設(shè)想,既然二層網(wǎng)絡(luò)里有物理環(huán)路,那用一種邏輯的方法將物理的環(huán)路斬?cái)?#xff0c;斬成一個(gè)發(fā)散的樹(shù)狀架構(gòu),是不是Frame就不會(huì)無(wú)限循環(huán)下去了? 答案是肯定的,也是這么做的。 如果把樹(shù)的拓?fù)浣Y(jié)構(gòu)用于二層交換網(wǎng)絡(luò),在二層網(wǎng)絡(luò)里選擇一個(gè)根(Root Bridge),其它交換機(jī)當(dāng)作樹(shù)的樹(shù)杈,每個(gè)樹(shù)杈自然有一個(gè)根末梢(Root Port),這個(gè)就是交換機(jī)的上游接口,除了根末梢,其它的接口都是下游接口,至于下游接口是暢通的、還是阻斷的,取決于到根的路徑成本(Cost),誰(shuí)更接近根,誰(shuí)就暢通(Forwarding) ,即常說(shuō)的 Designated Port; 誰(shuí)遠(yuǎn)離根,誰(shuí)就需要被阻斷(Blocked),即常說(shuō)的 Non Designated Port。 通過(guò)這種仿生的機(jī)制,可以有效地避免網(wǎng)絡(luò)環(huán)路。
STP 協(xié)議的工作原理: 任意一個(gè)交換機(jī)中如果到達(dá)根網(wǎng)橋有兩條或者兩條以上的鏈路,生成樹(shù)協(xié)議都根據(jù)算法把其中一條切斷,僅保留一條,從而保證任意兩個(gè)交換機(jī)之間只有一條單一的活動(dòng)鏈路。 因?yàn)檫@種生成的這種拓?fù)浣Y(jié)構(gòu),很像是以根交換機(jī)為樹(shù)干的樹(shù)形結(jié)構(gòu),故為生成樹(shù)協(xié)議。
STP 的工作過(guò)程: 首先進(jìn)行根網(wǎng)橋的選舉,其依據(jù)是網(wǎng)橋優(yōu)先級(jí)(Bridge Priority)和 MAC 地址組合生成的橋 ID,橋 ID 最小的網(wǎng)橋?qū)⒊蔀榫W(wǎng)絡(luò)中的根橋(Root Bridge)。 在此基礎(chǔ)上,計(jì)算每個(gè)節(jié)點(diǎn)到根橋的距離,并由這些路徑得到各冗余鏈路的代價(jià),選擇最小的成為通信路徑(相應(yīng)的端口狀態(tài)變?yōu)?Forwarding),其它的就成為備份路徑(相應(yīng)的端口狀態(tài)變?yōu)?Blocking)。 STP 生成過(guò)程中的通信任務(wù)由 BPDU 完成,這種數(shù)據(jù)包又分為包含配置信息的配置 BPDU(其大小不超過(guò) 35B)和包含拓?fù)渥兓畔⒌耐ㄖ?BPDU(其長(zhǎng)度不超過(guò) 4B)。
由于 STP 協(xié)議造成的逐層收斂的性能問(wèn)題,一般情況下 STP 的網(wǎng)絡(luò)規(guī)模不會(huì)超過(guò) 100 臺(tái)交換機(jī)。 STP 的這種機(jī)制導(dǎo)致了二層鏈路利用率不足,尤其是在網(wǎng)絡(luò)設(shè)備具有全連接拓?fù)潢P(guān)系時(shí),這種缺陷尤為突出。 如下圖所示,當(dāng)采用全網(wǎng) STP 二層設(shè)計(jì)時(shí),STP 將阻塞大多數(shù)鏈路,使接入到匯聚間帶寬降至 1/4,匯聚至核心間帶寬降至 1/8。 這種缺陷造成越接近樹(shù)根的交換機(jī),端口擁塞越嚴(yán)重,造成的帶寬資源浪費(fèi)就越可觀。
云計(jì)算推動(dòng)縱向流量向橫向流量的轉(zhuǎn)變
早期數(shù)據(jù)中心的流量有 80% 為橫向(east-west,南北)流量,隨著云計(jì)算、分布式架構(gòu)的發(fā)展,現(xiàn)在已經(jīng)轉(zhuǎn)變?yōu)?70% 為縱向(north-south,東西)流量。 所謂縱向流量指的是從數(shù)據(jù)中心外部到內(nèi)部服務(wù)器之間交互的流量; 橫向流量指的是數(shù)據(jù)中心內(nèi)部服務(wù)器之間交互的流量。
隨著云計(jì)算的到來(lái),越來(lái)越豐富的業(yè)務(wù)對(duì)數(shù)據(jù)中心的流量模型產(chǎn)生了巨大的沖擊,如搜索、并行計(jì)算等業(yè)務(wù),需要大量的服務(wù)器組成集群系統(tǒng),協(xié)同完成工作,這導(dǎo)致服務(wù)器之間的流量變得非常大。 比如搜索,用戶(hù)只是發(fā)出一個(gè)搜索指令,服務(wù)器集群就在海量數(shù)據(jù)面前進(jìn)行搜索與計(jì)算,這個(gè)過(guò)程是非常復(fù)雜的,而只是將結(jié)果傳遞給用戶(hù)。 早期數(shù)據(jù)中心主要滿(mǎn)足外部對(duì)數(shù)據(jù)中心的訪(fǎng)問(wèn),所以流量就以 “南北” 為主。 這種流量模型受到了出口帶寬的限制,一般的數(shù)據(jù)中心訪(fǎng)問(wèn)都會(huì)存在收斂比,即網(wǎng)絡(luò)接入帶寬比較大,而出口帶寬比較小,訪(fǎng)問(wèn)的速度無(wú)法提升,在業(yè)務(wù)高峰期時(shí),用戶(hù)訪(fǎng)問(wèn)數(shù)據(jù)中心的體驗(yàn)感下降,這種網(wǎng)絡(luò)模型已經(jīng)不適應(yīng)現(xiàn)今數(shù)據(jù)中心的發(fā)展需要。
服務(wù)器虛擬化帶來(lái)的虛擬機(jī)遷移問(wèn)題
但隨著數(shù)據(jù)量的增長(zhǎng),數(shù)據(jù)中心運(yùn)營(yíng)者發(fā)現(xiàn)的服務(wù)器不夠了,當(dāng)時(shí)最早做出反應(yīng)是服務(wù)器層面,服務(wù)器虛擬化趨勢(shì)越來(lái)越強(qiáng),“提高服務(wù)器利用率”,“充分發(fā)揮計(jì)算資源效能”,成了當(dāng)時(shí)最常聽(tīng)到的聲音。 隨之而來(lái)的就是服務(wù)器與網(wǎng)絡(luò)之間的關(guān)系改變了,原來(lái)網(wǎng)絡(luò)和操作系統(tǒng)緊耦合的關(guān)系被打破,變成了松耦合的關(guān)系,網(wǎng)絡(luò)不再能直接感知到操作系統(tǒng)了。 而這種對(duì)應(yīng)關(guān)系上的變化又帶來(lái)了兩個(gè)層面的矛盾:
性能層面: 單臺(tái)物理機(jī)上的應(yīng)用多了,或者說(shuō)是虛擬機(jī)多了,單個(gè)網(wǎng)口上承載的數(shù)據(jù)流量大了,原來(lái)的鏈路不夠了; 功能層面: 物理服務(wù)器不是真正的業(yè)務(wù)所在了,真正的業(yè)務(wù)在虛擬機(jī)上,但是虛擬機(jī)要在服務(wù)器上漂移,不能夠被固定在原先一個(gè)區(qū)域當(dāng)中了; 在三層網(wǎng)絡(luò)架構(gòu)中,通常會(huì)將二層網(wǎng)絡(luò)的范圍限制在網(wǎng)絡(luò)接入層以下,避免出現(xiàn)大范圍的二層廣播域。 這就導(dǎo)致了服務(wù)器不能隨便在不同二層域之間移動(dòng),一旦服務(wù)器遷移到其他二層域,就需要變更 IP 地址,伴隨著生產(chǎn)業(yè)務(wù)中斷。 在具有網(wǎng)絡(luò)關(guān)聯(lián)性的服務(wù)器集群中甚至?xí)恳话l(fā)而動(dòng)全身,相關(guān)的服務(wù)器也要跟著變更相應(yīng)的配置,影響巨大。
由于這般限制,傳統(tǒng)數(shù)據(jù)中心的三層網(wǎng)絡(luò)架構(gòu)設(shè)計(jì)根本無(wú)法滿(mǎn)足服務(wù)器虛擬化中更靈活的、可自定義的虛擬機(jī)遷移策略。 服務(wù)器虛擬化從根本上改變了數(shù)據(jù)中心網(wǎng)絡(luò)架構(gòu)的需求,需求數(shù)據(jù)中心、甚至是跨數(shù)據(jù)中的網(wǎng)絡(luò)可以支持大范圍的二層域,二層網(wǎng)絡(luò)規(guī)模有多大,虛擬機(jī)才能調(diào)度、遷移有多遠(yuǎn)。
參考文獻(xiàn)
https://www.cisco.com/c/zh_cn/solutions/small-business/products/routers-switches/routing-switching-primer.html https://baike.baidu.com/item/三層網(wǎng)絡(luò)結(jié)構(gòu) https://baike.baidu.com/item/交換技術(shù)/6335745 https://baike.baidu.com/item/路由技術(shù) https://zh.wikipedia.org/wiki/生成樹(shù)協(xié)議 https://juejin.im/post/5c723943f265da2d943f69c1 https://www.zhihu.com/question/21327750 https://www.cnblogs.com/jmilkfan-fanguiju/p/10589744.html#_691
福利
掃描添加小編微信,備注“ 姓名+公司職位 ”,加入【 云計(jì)算學(xué)習(xí)交流群 】,和志同道合的朋友們共同打卡學(xué)習(xí)!
推薦閱讀:
微博宕機(jī)復(fù)盤(pán):什么樣的技術(shù)架構(gòu),可支持80個(gè)明星并發(fā)出軌?
漫畫(huà) | Kubernetes帶你一帆風(fēng)順去遠(yuǎn)航
Android 告急!
超酷炫!Facebook用深度學(xué)習(xí)和弱監(jiān)督學(xué)習(xí)繪制全球精準(zhǔn)道路圖
多地GitHub賬號(hào)使用受限;Python之父考慮重構(gòu)解釋器;62歲程序員埋邏輯炸彈 | 開(kāi)發(fā)者周刊
3個(gè)核心差異, 告訴你為什么Libra永遠(yuǎn)成不了比特幣!
真香,朕在看了!
總結(jié)
以上是生活随笔 為你收集整理的数据中心网络架构的问题与演进 — 传统路由交换技术与三层网络架构 的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
如果覺(jué)得生活随笔 網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔 推薦給好友。