産品特色
內容簡介
全書講解瞭4個方麵的內容。1.對SDDCN的背景知識進行介紹,主要包括傳統的數據中心網絡和SDN,並對SDDCN的頂層設計進行概括性的介紹。2.對SDDCN的典型的商用、開源方案進行具體的分析,包括技術背景、架構設計以及各方案的橫嚮測評。對於一些開源的SDDCN解決方案還會深入地剖析其代碼實現。3.從學術界的角度齣發,對SDDCN未來的發展方嚮進行展望。4.對與SDDCN的外延技術進行分析,如容器網絡和數據平麵技術等。
目錄
Contents?目 錄
技術審校
本書贊譽
前言
第1章 雲數據中心網絡演進 1
1.1 傳統的3-Tier架構 1
1.2 設備“多虛一”——虛擬機框 2
1.2.1 Cisco VSS 2
1.2.2 Juniper VC與H3C IRF 4
1.3 高級STP欺騙——跨設備鏈路聚閤 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性能優化 13
1.7 消除STP——Underlay L2MP 14
1.7.1 TRILL 15
1.7.2 SPB 17
1.8 Cisco私有的大二層——FabricPath 19
1.8.1 整體設計 19
1.8.2 控製與轉發過程分析 21
1.8.3 其他技術細節 25
1.9 Juniper私有的大二層——QFabric 25
1.9.1 整體設計 26
1.9.2 集中式的控製機製 29
1.9.3 控製與轉發過程分析 30
1.10 Brocade私有的大二層——VCS 32
1.10.1 整體設計 33
1.10.2 控製與轉發過程分析 33
1.10.3 其他技術細節 35
1.11 跨越數據中心的二層——DCI優化 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最新技術——EVPN 46
1.14.1 傳統網絡對SDN的反擊 46
1.14.2 組網與數據模型 47
1.14.3 控製信令的設計 48
1.15 Underlay最新技術——Segment Routing 55
1.15.1 SID與Label 56
1.15.2 控製與轉發機製 57
1.15.3 SDN 2.0? 60
1.16 本章小結 62
第2章 雜談SDN 63
2.1 SDN與傳統網絡——新概念下的老問題 63
2.2 轉控分離——白盒的曙光 66
2.2.1 芯片級開放 68
2.2.2 操作係統級開放 71
2.2.3 應用級開放 75
2.2.4 機箱級開放 76
2.2.5 白盒的“通”與“痛” 77
2.3 網絡可編程——百傢爭鳴 78
2.3.1 芯片可編程 78
2.3.2 FIB可編程 80
2.3.3 RIB可編程 83
2.3.4 設備配置可編程 85
2.3.5 設備OS和控製器可編程 88
2.3.6 業務可編程 88
2.4 集中式控製——與分布式的哲學之爭 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 接口協議適配 96
2.5.4 數據庫 97
2.5.5 集群與分布式 98
2.5.6 容器與微服務 99
2.6 本章小結 100
第3章 SDDCN概述 101
3.1 需求 101
3.1.1 自動化與集中式控製 101
3.1.2 應用感知 103
3.2 整體架構 105
3.2.1 實現形態 105
3.2.2 功能設計 107
3.3 關鍵技術 107
3.3.1 網絡邊緣 107
3.3.2 網絡傳輸 110
3.3.3 服務鏈 112
3.3.4 可視化 115
3.3.5 安全 117
3.3.6 高可用 120
3.4 本章小結 122
第4章 商用SDDCN解決方案 123
4.1 VMware NSX 123
4.1.1 從NVP到NSX 124
4.1.2 NVP控製平麵設計 125
4.1.3 NVP數據平麵設計 125
4.1.4 NVP轉發過程分析 126
4.1.5 NSX-V整體架構 128
4.1.6 NSX-V管理平麵設計 129
4.1.7 NSX-V控製平麵設計 130
4.1.8 NSX-V數據平麵設計 132
4.1.9 NSX-V轉發過程分析 132
4.1.10 NSX-MH與NSX-T 139
4.2 Cisco ACI 140
4.2.1 整體架構 141
4.2.2 管理與控製平麵設計 142
4.2.3 數據平麵設計 145
4.2.4 轉發過程分析 152
4.2.5 議ACI與SDN 154
4.3 Cisco VTS 155
4.3.1 整體架構 156
4.3.2 管理與控製平麵設計 158
4.3.3 數據平麵設計 159
4.4 Juniper Contrail 162
4.4.1 整體架構 164
4.4.2 管理與控製平麵設計 167
4.4.3 數據平麵設計 173
4.4.4 轉發過程分析 175
4.5 Nuage VCS 176
4.5.1 整體架構 178
4.5.2 管理平麵設計 179
4.5.3 控製平麵設計 179
4.5.4 數據平麵設計 180
4.6 Arista EOS與CloudVison 181
4.6.1 整體架構 183
4.6.2 管理與控製平麵設計 185
4.6.3 數據平麵設計 187
4.7 HUAWEI AC-DCN 187
4.7.1 整體架構 187
4.7.2 管理平麵設計 189
4.7.3 控製平麵設計 189
4.7.4 數據平麵設計 193
4.8 Bigswitch BCF與BMF 194
4.8.1 整體架構 195
4.8.2 BCF控製平麵設計 196
4.8.3 BMF控製平麵設計 201
4.8.4 數據平麵設計 205
4.9 Midokura Midonet 207
4.9.1 整體架構 207
4.9.2 控製平麵設計 210
4.9.3 數據平麵設計 213
4.10 PLUMgrid ONS 217
4.10.1 整體架構 217
4.10.2 數據平麵設計 219
4.10.3 控製平麵設計 221
4.10.4 轉發過程分析 222
4.11 Plexxi Switch與Control 225
4.11.1 整體架構 225
4.11.2 數據平麵設計 227
4.11.3 控製平麵設計 229
4.12 Pluribus 230
4.12.1 Server Switch設計 231
4.12.2 Netvisor設計 232
4.12.3 再議數據中心SDN 235
4.13 本章小結 236
第5章 開源SDDCN:OpenStack Neutron的設計與實現 237
5.1 網絡基礎 237
5.1.1 網絡結構與網絡類型 238
5.1.2 VLAN網絡類型中流量的處理 239
5.2 軟件架構 242
5.2.1 分布式組件 242
5.2.2 Core Plugin與Service Plugin 243
5.3 WSGI與RPC的實現 245
5.3.1 Neutron Server的WSGI 245
5.3.2 Neutron Plugin與Neutron Agent間的RPC 247
5.4 虛擬機啓動過程中網絡的相關實現 248
5.4.1 虛擬機的啓動流程 248
5.4.2 Nova請求Port資源 250
5.4.3 Neutron生成Port資源 250
5.4.4 Neutron將Port相關信息通知給DHCP Agent 252
5.4.5 DHCP Agent將Port相關信息通知給DHCP Server 252
5.4.6 Nova拉起虛擬機並通過相應的Port接入網絡 252
5.5 OVS Agent的實現 253
5.5.1 網橋的初始化 253
5.5.2 使能RPC 255
5.6 OVS Agent對Overlay L2的處理 256
5.6.1 標準轉發機製 256
5.6.2 arp_responder 258
5.6.3 l2_population 260
5.7 OVS Agent對Overlay L3的處理 261
5.7.1 標準轉發機製 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 本章小結 290
第6章 開源SDDCN:OpenDaylight相關項目的設計與實現 291
6.1 架構分析 291
6.1.1 AD-SAL架構 292
6.1.2 MD-SAL架構 293
6.1.3 YANG和YANG-Tools 294
6.1.4 MD-SAL的內部設計 294
6.1.5 MD-SAL的集群機製 296
6.1.6 其他 298
6.2 OpenFlow的示例實現 298
6.2.1 OF交換機的上綫 299
6.2.2 l2switch獲得PacketIn 301
6.2.3 l2switch下發PacketOut和FlowMod 302
6.3 OpenStack Networking-ODL 303
6.3.1 v1 303
6.3.2 v2 304
6.4 Neutron-Northbound的實現 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的實現 311
6.6.1 net-virt分支 311
6.6.2 net-virt-providers分支 317
6.7 Netvirt-VPNService的實現 321
6.7.1 elanmanager 323
6.7.2 vpnmanager 326
6.8 SFC的實現 328
6.8.1 sfc-openflow-renderer分支 328
6.8.2 sfc-scf-openflow分支 335
6.9 VTN Manager的實現 336
6.9.1 neutron分支 337
6.9.2 implementation分支 339
6.10 本章小結 342
第7章 開源SDDCN:ONOS相關項目的設計與實現 343
7.1 架構分析 343
7.1.1 分層架構 344
7.1.2 分層架構的實現 345
7.1.3 模塊的開發 347
7.1.4 分層架構存在的問題 347
7.1.5 數據存儲與集群 348
7.1.6 其他 349
7.2 OpenFlow的示例實現 349
7.2.1 OF交換機的上綫 350
7.2.2 fwd獲得PacketIn 352
7.2.3 fwd下發PacketOut和FlowMod 356
7.3 ONOSFW的實現 359
7.3.1 vtnmgr分支 359
7.3.2 sfcmgr分支 363
7.4 SONA的實現 365
7.4.1 openstacknode分支 366
7.4.2 openstacknetworking分支 368
7.5 CORD簡介 371
7.5.1 R-CORD的架構 372
7.5.2 R-CORD的控製與轉發機製 373
7.6 本章小結 376
第8章 學術界相關研究 377
8.1 拓撲 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 服務鏈 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 服務質量 437
8.5.1 NetShare 437
8.5.2 Seawall 438
8.5.3 GateKeeper 439
8.5.4 El
前言/序言
前 言 Preface為什麼要寫這本書這本書的寫作前前後後花瞭兩年多的時間,我曾無數次地想過會有那麼一個周末的下午,洋洋灑灑地寫著前言,每念及於此,總有一種激揚文字、揮斥方遒的感覺。到瞭這一天,醞釀多時後坐在桌前,先是寫瞭一些行業點評,雖然氣勢磅礴但不夠接地氣,反反復復地修改卻始終沒能令自己滿意。最後想著,反正寫前言就是在和讀者聊天,也沒有必要給書裏的內容扣個大大的帽子,倒不如來說說情懷、談談理想,就當是給自己這幾年的青春做一個注腳吧。
最開始其實並沒有寫書的打算,做研究的動力一方麵是來源於對網絡技術的興趣與熱愛,另一方麵,坦白講,那個時候在數據中心網絡這塊想到瞭一些新的點子,希望能夠藉著SDN的東風把想法做成實打實的産品。於是,最初是帶著做調研的想法,開始對雲數據中心SDN的技術與産品進行梳理。沒有想到的是,這調研一做竟是兩年多的時間,這兩年裏既看到瞭很多原來自己並不瞭解的技術,數次感嘆於知識海洋的廣袤無垠,也目睹瞭自己的一些想法被彆人進行瞭變現,無奈地明白做産品需要分秒必爭。
確立寫書的想法是在2016年,實際上當時SDN圈子的風潮已經開始從雲數據中心轉嚮瞭企業級廣域網,各路廠商、創業公司和媒體都已經開始圍著SDWAN的概念在轉瞭。和業界的一些同行聊過之後,其中有一部分人認為雲數據中心的網絡已經沒什麼值得研究的瞭。聽多瞭類似的說法,給我個人的感覺是:SDN的齣現既讓網絡這個圈子變得時髦,又讓圈子裏的人變得浮躁。於是,我決定把調研的內容寫成一本書,希望能夠使讀者瞭解到,數據中心SDN在技術上還遠遠沒有達到標準化,在産品上還有較大的提升空間,很多同行仍然在全力地投身於相關技術的演進和産品的迭代中。跟隨先進的理念固然重要,但是踏踏實實地做事纔是行業能夠得以長久發展
雲數據中心網絡與SDN:技術架構與實現 下載 mobi epub pdf txt 電子書 格式