關(guān)于我們
書單推薦
新書推薦
|
云數(shù)據(jù)中心網(wǎng)絡(luò)與SDN:技術(shù)架構(gòu)與實現(xiàn)
全書講解了4個方面的內(nèi)容。1.對SDDCN的背景知識進行介紹,主要包括傳統(tǒng)的數(shù)據(jù)中心網(wǎng)絡(luò)和SDN,并對SDDCN的頂層設(shè)計進行概括性的介紹。2.對SDDCN的典型的商用、開源方案進行具體的分析,包括技術(shù)背景、架構(gòu)設(shè)計以及各方案的橫向測評。對于一些開源的SDDCN解決方案還會深入地剖析其代碼實現(xiàn)。3.從學(xué)術(shù)界的角度出發(fā),對SDDCN未來的發(fā)展方向進行展望。4.對與SDDCN的外延技術(shù)進行分析,如容器網(wǎng)絡(luò)和數(shù)據(jù)平面技術(shù)等。
前 言 Preface為什么要寫這本書這本書的寫作前前后后花了兩年多的時間,我曾無數(shù)次地想過會有那么一個周末的下午,洋洋灑灑地寫著前言,每念及于此,總有一種激揚文字、揮斥方遒的感覺。到了這一天,醞釀多時后坐在桌前,先是寫了一些行業(yè)點評,雖然氣勢磅礴但不夠接地氣,反反復(fù)復(fù)地修改卻始終沒能令自己滿意。最后想著,反正寫前言就是在和讀者聊天,也沒有必要給書里的內(nèi)容扣個大大的帽子,倒不如來說說情懷、談?wù)劺硐耄彤?dāng)是給自己這幾年的青春做一個注腳吧。
最開始其實并沒有寫書的打算,做研究的動力一方面是來源于對網(wǎng)絡(luò)技術(shù)的興趣與熱愛,另一方面,坦白講,那個時候在數(shù)據(jù)中心網(wǎng)絡(luò)這塊想到了一些新的點子,希望能夠借著SDN的東風(fēng)把想法做成實打?qū)嵉漠a(chǎn)品。于是,最初是帶著做調(diào)研的想法,開始對云數(shù)據(jù)中心SDN的技術(shù)與產(chǎn)品進行梳理。沒有想到的是,這調(diào)研一做竟是兩年多的時間,這兩年里既看到了很多原來自己并不了解的技術(shù),數(shù)次感嘆于知識海洋的廣袤無垠,也目睹了自己的一些想法被別人進行了變現(xiàn),無奈地明白做產(chǎn)品需要分秒必爭。 確立寫書的想法是在2016年,實際上當(dāng)時SDN圈子的風(fēng)潮已經(jīng)開始從云數(shù)據(jù)中心轉(zhuǎn)向了企業(yè)級廣域網(wǎng),各路廠商、創(chuàng)業(yè)公司和媒體都已經(jīng)開始圍著SDWAN的概念在轉(zhuǎn)了。和業(yè)界的一些同行聊過之后,其中有一部分人認(rèn)為云數(shù)據(jù)中心的網(wǎng)絡(luò)已經(jīng)沒什么值得研究的了。聽多了類似的說法,給我個人的感覺是:SDN的出現(xiàn)既讓網(wǎng)絡(luò)這個圈子變得時髦,又讓圈子里的人變得浮躁。于是,我決定把調(diào)研的內(nèi)容寫成一本書,希望能夠使讀者了解到,數(shù)據(jù)中心SDN在技術(shù)上還遠(yuǎn)遠(yuǎn)沒有達(dá)到標(biāo)準(zhǔn)化,在產(chǎn)品上還有較大的提升空間,很多同行仍然在全力地投身于相關(guān)技術(shù)的演進和產(chǎn)品的迭代中。跟隨先進的理念固然重要,但是踏踏實實地做事才是行業(yè)能夠得以長久發(fā)展的關(guān)鍵。 本書還有另外一個出發(fā)點,是由于傳統(tǒng)網(wǎng)絡(luò)與SDN的糾葛長久以來都沒能真正化解開來,很多人還是抱著非此即彼的錯誤觀點。因此本書在介紹各個SDN技術(shù)和產(chǎn)品的時候,都會力爭把控制和轉(zhuǎn)發(fā)的邏輯說清楚,能分析到數(shù)據(jù)包處理流程這個層面的,都會加以詳細(xì)分析。這么做的目的,是希望讀者能夠明白SDN雖然改變了網(wǎng)絡(luò)的交付模式,但是API遠(yuǎn)遠(yuǎn)不是SDN的全部,網(wǎng)絡(luò)架構(gòu)本身的設(shè)計仍然是不可動搖的技術(shù)基礎(chǔ)。另外,在一些情況下,SDN并不是解決問題的最好方式,因此本書還介紹了一些非SDN的數(shù)據(jù)中心網(wǎng)絡(luò)技術(shù),希望能夠幫助讀者拓寬技術(shù)視野,打開新的研究思路。 成書的過程中,最大的感悟是新技術(shù)發(fā)展得太快,很多章節(jié)的內(nèi)容都不得不多次進行更新與修訂。ICT的融合為傳統(tǒng)的通信行業(yè)帶來了前所未有的機遇,同時也要求我們能夠調(diào)整好學(xué)習(xí)的心態(tài)。回顧這兩年多的時間,幾乎每日每夜都把自己泡在了各種各樣的資料中,讀了廠商不計其數(shù)的產(chǎn)品手冊和技術(shù)文檔,一行一行地去啃開源平臺的代碼,其中不乏很多有價值的內(nèi)容,但由于成書時間與篇幅上的限制未能在書中進行介紹,多少還是有些遺憾吧。 同時,伴隨著知識的逐步豐富,我也更加真切地體會到了個人的渺小。學(xué)習(xí)永無止境,不忘初心,方得始終,在探索技術(shù)的路上愿與諸君共勉。 本書特色本書涉及云數(shù)據(jù)中心網(wǎng)絡(luò)很多塊的內(nèi)容,主要包括傳統(tǒng)技術(shù)、商用SDN方案、開源SDN方案以及相關(guān)的學(xué)術(shù)論文,覆蓋了目前絕大部分的主流技術(shù)以及一些其他較為新穎的技術(shù),是目前市面上少數(shù)能夠切入SDN某一個具體行業(yè)應(yīng)用場景,并對相關(guān)技術(shù)和產(chǎn)品進行系統(tǒng)性介紹的書籍之一。 實際上,把本書中每一塊的內(nèi)容拿出來都能單獨寫一本書。不過,為了讓讀者能夠通過一本書,迅速并全面地掌握這些塊內(nèi)容,因此在寫作的過程中就不得不去摳每一句話,甚至每一個字和詞,力爭簡短、清晰、準(zhǔn)確地呈現(xiàn)出核心的技術(shù)內(nèi)容。如果相關(guān)行業(yè)的技術(shù)寬度為100,每種技術(shù)的深度為100,本書希望能夠同時在寬度和深度上達(dá)到80 的水平,做到樣樣通而樣樣不松。 同時,為了能夠捋順這些五花八門的技術(shù)間的關(guān)系,行文過程中還對部分技術(shù)的產(chǎn)生背景與演進歷程進行了介紹,希望讀者在讀過本書后,做到既能知其然,又能知其所以然。 讀者對象CTO、CIO數(shù)據(jù)中心架構(gòu)師SDN架構(gòu)師SDN產(chǎn)品經(jīng)理SDN研發(fā)人員高校與科研院所網(wǎng)絡(luò)研究人員其他對網(wǎng)絡(luò)技術(shù)感興趣的人員如何閱讀本書閱讀本書前,需要讀者對傳統(tǒng)網(wǎng)絡(luò)技術(shù)和SDN基礎(chǔ)知識有一定的了解。 第1章會對云數(shù)據(jù)中心網(wǎng)絡(luò)演進的技術(shù)主線進行介紹,主要包括從3-Tier架構(gòu)向Leaf-Spine架構(gòu)的演進、從xSTP向大二層的演進、從傳統(tǒng)網(wǎng)絡(luò)向SDN的演進,以及傳統(tǒng)網(wǎng)絡(luò)的最新進展等內(nèi)容。第1章可以看作本書的背景知識,用于引出后面章節(jié)對于數(shù)據(jù)中心SDN的介紹,講述的過程中會以技術(shù)特征為分類依據(jù),介紹廠商相關(guān)的私有技術(shù)與產(chǎn)品,以及IEEE、IETF相關(guān)的技術(shù)標(biāo)準(zhǔn)。第1章中所介紹的一些技術(shù)目前已經(jīng)退出了歷史舞臺,為了保證講述的完整性仍然保留了相關(guān)的介紹,讀者可以有選擇地進行閱讀。 第2章將以雜談的形式對SDN的本質(zhì)進行論述,包括轉(zhuǎn)發(fā)與控制分離、網(wǎng)絡(luò)可編程以及集中式控制,并對SDN在IT層面的設(shè)計思路進行了總結(jié)。通過第2章的內(nèi)容,希望可以幫
Contents?目 錄
技術(shù)審校 本書贊譽 前言 第1章 云數(shù)據(jù)中心網(wǎng)絡(luò)演進 1 1.1 傳統(tǒng)的3-Tier架構(gòu) 1 1.2 設(shè)備多虛一虛擬機框 2 1.2.1 Cisco VSS 2 1.2.2 Juniper VC與H3C IRF 4 1.3 高級STP欺騙跨設(shè)備鏈路聚合 4 1.3.1 Cisco vPC 4 1.3.2 Juniper MC-LAG和Arista M-LAG 6 1.4 變革3-Tier向Leaf-Spine演進 6 1.5 初識大二層 9 1.6 插敘虛擬機的接入 10 1.6.1 VEB 10 1.6.2 Cisco VN-TAG 11 1.6.3 VEPA 12 1.6.4 VEB性能優(yōu)化 13 1.7 消除STPUnderlay L2MP 14 1.7.1 TRILL 15 1.7.2 SPB 17 1.8 Cisco私有的大二層FabricPath 19 1.8.1 整體設(shè)計 19 1.8.2 控制與轉(zhuǎn)發(fā)過程分析 21 1.8.3 其他技術(shù)細(xì)節(jié) 25 1.9 Juniper私有的大二層QFabric 25 1.9.1 整體設(shè)計 26 1.9.2 集中式的控制機制 29 1.9.3 控制與轉(zhuǎn)發(fā)過程分析 30 1.10 Brocade私有的大二層VCS 32 1.10.1 整體設(shè)計 33 1.10.2 控制與轉(zhuǎn)發(fā)過程分析 33 1.10.3 其他技術(shù)細(xì)節(jié) 35 1.11 跨越數(shù)據(jù)中心的二層DCI優(yōu)化 36 1.11.1 Cisco OTV 36 1.11.2 HUAWEI EVN與H3C EVI 38 1.12 端到端的二層NVo3的崛起 39 1.12.1 VxLAN 39 1.12.2 NvGRE 41 1.12.3 STT 42 1.12.4 Geneve 43 1.13 新時代的開啟SDN入場 45 1.14 Overlay最新技術(shù)EVPN 46 1.14.1 傳統(tǒng)網(wǎng)絡(luò)對SDN的反擊 46 1.14.2 組網(wǎng)與數(shù)據(jù)模型 47 1.14.3 控制信令的設(shè)計 48 1.15 Underlay最新技術(shù)Segment Routing 55 1.15.1 SID與Label 56 1.15.2 控制與轉(zhuǎn)發(fā)機制 57 1.15.3 SDN 2.0? 60 1.16 本章小結(jié) 62 第2章 雜談SDN 63 2.1 SDN與傳統(tǒng)網(wǎng)絡(luò)新概念下的老問題 63 2.2 轉(zhuǎn)控分離白盒的曙光 66 2.2.1 芯片級開放 68 2.2.2 操作系統(tǒng)級開放 71 2.2.3 應(yīng)用級開放 75 2.2.4 機箱級開放 76 2.2.5 白盒的通與痛 77 2.3 網(wǎng)絡(luò)可編程百家爭鳴 78 2.3.1 芯片可編程 78 2.3.2 FIB可編程 80 2.3.3 RIB可編程 83 2.3.4 設(shè)備配置可編程 85 2.3.5 設(shè)備OS和控制器可編程 88 2.3.6 業(yè)務(wù)可編程 88 2.4 集中式控制與分布式的哲學(xué)之爭 89 2.4.1 在功能上找到平衡點 90 2.4.2 在擴展性和可用性上找到平衡點 91 2.5 回歸軟件本源從N到D再到S 94 2.5.1 模塊管理 94 2.5.2 模塊間通信 95 2.5.3 接口協(xié)議適配 96 2.5.4 數(shù)據(jù)庫 97 2.5.5 集群與分布式 98 2.5.6 容器與微服務(wù) 99 2.6 本章小結(jié) 100 第3章 SDDCN概述 101 3.1 需求 101 3.1.1 自動化與集中式控制 101 3.1.2 應(yīng)用感知 103 3.2 整體架構(gòu) 105 3.2.1 實現(xiàn)形態(tài) 105 3.2.2 功能設(shè)計 107 3.3 關(guān)鍵技術(shù) 107 3.3.1 網(wǎng)絡(luò)邊緣 107 3.3.2 網(wǎng)絡(luò)傳輸 110 3.3.3 服務(wù)鏈 112 3.3.4 可視化 115 3.3.5 安全 117 3.3.6 高可用 120 3.4 本章小結(jié) 122 第4章 商用SDDCN解決方案 123 4.1 VMware NSX 123 4.1.1 從NVP到NSX 124 4.1.2 NVP控制平面設(shè)計 125 4.1.3 NVP數(shù)據(jù)平面設(shè)計 125 4.1.4 NVP轉(zhuǎn)發(fā)過程分析 126 4.1.5 NSX-V整體架構(gòu) 128 4.1.6 NSX-V管理平面設(shè)計 129 4.1.7 NSX-V控制平面設(shè)計 130 4.1.8 NSX-V數(shù)據(jù)平面設(shè)計 132 4.1.9 NSX-V轉(zhuǎn)發(fā)過程分析 132 4.1.10 NSX-MH與NSX-T 139 4.2 Cisco ACI 140 4.2.1 整體架構(gòu) 141 4.2.2 管理與控制平面設(shè)計 142 4.2.3 數(shù)據(jù)平面設(shè)計 145 4.2.4 轉(zhuǎn)發(fā)過程分析 152 4.2.5 議ACI與SDN 154 4.3 Cisco VTS 155 4.3.1 整體架構(gòu) 156 4.3.2 管理與控制平面設(shè)計 158 4.3.3 數(shù)據(jù)平面設(shè)計 159 4.4 Juniper Contrail 162 4.4.1 整體架構(gòu) 164 4.4.2 管理與控制平面設(shè)計 167 4.4.3 數(shù)據(jù)平面設(shè)計 173 4.4.4 轉(zhuǎn)發(fā)過程分析 175 4.5 Nuage VCS 176 4.5.1 整體架構(gòu) 178 4.5.2 管理平面設(shè)計 179 4.5.3 控制平面設(shè)計 179 4.5.4 數(shù)據(jù)平面設(shè)計 180 4.6 Arista EOS與CloudVison 181 4.6.1 整體架構(gòu) 183 4.6.2 管理與控制平面設(shè)計 185 4.6.3 數(shù)據(jù)平面設(shè)計 187 4.7 HUAWEI AC-DCN 187 4.7.1 整體架構(gòu) 187 4.7.2 管理平面設(shè)計 189 4.7.3 控制平面設(shè)計 189 4.7.4 數(shù)據(jù)平面設(shè)計 193 4.8 Bigswitch BCF與BMF 194 4.8.1 整體架構(gòu) 195 4.8.2 BCF控制平面設(shè)計 196 4.8.3 BMF控制平面設(shè)計 201 4.8.4 數(shù)據(jù)平面設(shè)計 205 4.9 Midokura Midonet 207 4.9.1 整體架構(gòu) 207 4.9.2 控制平面設(shè)計 210 4.9.3 數(shù)據(jù)平面設(shè)計 213 4.10 PLUMgrid ONS 217 4.10.1 整體架構(gòu) 217 4.10.2 數(shù)據(jù)平面設(shè)計 219 4.10.3 控制平面設(shè)計 221 4.10.4 轉(zhuǎn)發(fā)過程分析 222 4.11 Plexxi Switch與Control 225 4.11.1 整體架構(gòu) 225 4.11.2 數(shù)據(jù)平面設(shè)計 227 4.11.3 控制平面設(shè)計 229 4.12 Pluribus 230 4.12.1 Server Switch設(shè)計 231 4.12.2 Netvisor設(shè)計 232 4.12.3 再議數(shù)據(jù)中心SDN 235 4.13 本章小結(jié) 236 第5章 開源SDDCN:OpenStack Neutron的設(shè)計與實現(xiàn) 237 5.1 網(wǎng)絡(luò)基礎(chǔ) 237 5.1.1 網(wǎng)絡(luò)結(jié)構(gòu)與網(wǎng)絡(luò)類型 238 5.1.2 VLAN網(wǎng)絡(luò)類型中流量的處理 239 5.2 軟件架構(gòu) 242 5.2.1 分布式組件 242 5.2.2 Core Plugin與Service Plugin 243 5.3 WSGI與RPC的實現(xiàn) 245 5.3.1 Neutron Server的WSGI 245 5.3.2 Neutron Plugin與Neutron Agent間的RPC 247 5.4 虛擬機啟動過程中網(wǎng)絡(luò)的相關(guān)實現(xiàn) 248 5.4.1 虛擬機的啟動流程 248 5.4.2 Nova請求Port資源 250 5.4.3 Neutron生成Port資源 250 5.4.4 Neutron將Port相關(guān)信息通知給DHCP Agent 252 5.4.5 DHCP Agent將Port相關(guān)信息通知給DHCP Server 252 5.4.6 Nova拉起虛擬機并通過相應(yīng)的Port接入網(wǎng)絡(luò) 252 5.5 OVS Agent的實現(xiàn) 253 5.5.1 網(wǎng)橋的初始化 253 5.5.2 使能RPC 255 5.6 OVS Agent對Overlay L2的處理 256 5.6.1 標(biāo)準(zhǔn)轉(zhuǎn)發(fā)機制 256 5.6.2 arp_responder 258 5.6.3 l2_population 260 5.7 OVS Agent對Overlay L3的處理 261 5.7.1 標(biāo)準(zhǔn)轉(zhuǎn)發(fā)機制 261 5.7.2 DVR對東西向流量的處理 262 5.7.3 DVR對南北向流量的處理 267 5.8 Security-Group與FWaaS 268 5.8.1 Neutron-Security-Group 268 5.8.2 FWaaS v1 269 5.8.3 FWaaS v2 269 5.9 LBaaS 270 5.9.1 LBaaS v1 270 5.9.2 LBaaS v2 271 5.9.3 Octavia 271 5.10 TaaS 272 5.11 SFC 274 5.12 L2-Gateway 275 5.13 Dynamic Routing 277 5.14 VPNaaS 279 5.15 Networking-BGPVPN與BagPipe 280 5.15.1 Networking-BGPVPN 280 5.15.2 BagPipe 280 5.16 DragonFlow 282 5.17 OVN 287 5.18 本章小結(jié) 290 第6章 開源SDDCN:OpenDaylight相關(guān)項目的設(shè)計與實現(xiàn) 291 6.1 架構(gòu)分析 291 6.1.1 AD-SAL架構(gòu) 292 6.1.2 MD-SAL架構(gòu) 293 6.1.3 YANG和YANG-Tools 294 6.1.4 MD-SAL的內(nèi)部設(shè)計 294 6.1.5 MD-SAL的集群機制 296 6.1.6 其他 298 6.2 OpenFlow的示例實現(xiàn) 298 6.2.1 OF交換機的上線 299 6.2.2 l2switch獲得PacketIn 301 6.2.3 l2switch下發(fā)PacketOut和FlowMod 302 6.3 OpenStack Networking-ODL 303 6.3.1 v1 303 6.3.2 v2 304 6.4 Neutron-Northbound的實現(xiàn) 306 6.4.1 對接Networking-ODL 306 6.4.2 RESTful請求的處理示例 306 6.5 Netvirt簡介 307 6.5.1 OVSDB-Netvirt和VPNService的合并 307 6.5.2 Genius 309 6.6 Netvirt-OVSDB-Neutron的實現(xiàn) 311 6.6.1 net-virt分支 311 6.6.2 net-virt-providers分支 317 6.7 Netvirt-VPNService的實現(xiàn) 321 6.7.1 elanmanager 323 6.7.2 vpnmanager 326 6.8 SFC的實現(xiàn) 328 6.8.1 sfc-openflow-renderer分支 328 6.8.2 sfc-scf-openflow分支 335 6.9 VTN Manager的實現(xiàn) 336 6.9.1 neutron分支 337 6.9.2 implementation分支 339 6.10 本章小結(jié) 342 第7章 開源SDDCN:ONOS相關(guān)項目的設(shè)計與實現(xiàn) 343 7.1 架構(gòu)分析 343 7.1.1 分層架構(gòu) 344 7.1.2 分層架構(gòu)的實現(xiàn) 345 7.1.3 模塊的開發(fā) 347 7.1.4 分層架構(gòu)存在的問題 347 7.1.5 數(shù)據(jù)存儲與集群 348 7.1.6 其他 349 7.2 OpenFlow的示例實現(xiàn) 349 7.2.1 OF交換機的上線 350 7.2.2 fwd獲得PacketIn 352 7.2.3 fwd下發(fā)PacketOut和FlowMod 356 7.3 ONOSFW的實現(xiàn) 359 7.3.1 vtnmgr分支 359 7.3.2 sfcmgr分支 363 7.4 SONA的實現(xiàn) 365 7.4.1 openstacknode分支 366 7.4.2 openstacknetworking分支 368 7.5 CORD簡介 371 7.5.1 R-CORD的架構(gòu) 372 7.5.2 R-CORD的控制與轉(zhuǎn)發(fā)機制 373 7.6 本章小結(jié) 376 第8章 學(xué)術(shù)界相關(guān)研究 377 8.1 拓?fù)? 377 8.1.1 FatTree 377 8.1.2 VL2 379 8.1.3 DCell 380 8.1.4 FiConn 382 8.1.5 BCube 384 8.1.6 MDCube 385 8.1.7 CamCube 387 8.2 路由 388 8.2.1 Seattle 388 8.2.2 FatTree 391 8.2.3 VL2 393 8.2.4 PortLand 396 8.2.5 SecondNet 400 8.2.6 SiBF 401 8.2.7 SPAIN 402 8.2.8 WCMP 404 8.2.9 OF-based DLB 406 8.2.10 Flowlet與CONGA 406 8.2.11 Hedera 408 8.2.12 DevoFlow 409 8.2.13 MicroTE 409 8.2.14 Mahout 410 8.2.15 F10 410 8.2.16 DDC 411 8.2.17 SlickFlow 412 8.2.18 COXCast 413 8.2.19 Avalanche 415 8.3 虛擬化 416 8.3.1 NetLord 416 8.3.2 FlowN 418 8.3.3 FlowVisor 420 8.3.4 ADVisor 421 8.3.5 VeRTIGO 423 8.3.6 OpenVirteX 424 8.3.7 CoVisor 426 8.4 服務(wù)鏈 427 8.4.1 pSwitch 427 8.4.2 FlowTags 428 8.4.3 Simple 430 8.4.4 StEERING 432 8.4.5 OpenSCaaS 434 8.4.6 SPFRI 435 8.5 服務(wù)質(zhì)量 437 8.5.1 NetShare 437 8.5.2 Seawall 438 8.5.3 GateKeeper 439 8.5.4 El
你還可能感興趣
我要評論
|