《深入理解OpenStackNeutron》是2018年1月1日機械工業出版社出版的圖書,作者是李宗標。
基本介紹
- 中文名:深入理解OpenStackNeutron
- 作者:李宗標
- 出版社:機械工業出版社
- ISBN:9787111584483
內容簡介,圖書目錄,
內容簡介
本書共8章。第1章講解Neutron概況。第2章介紹了Linux的虛擬網路知識。第3章講述了Neutron的實現模型。第4章講述的Neutron的資源模型。第5章講述了Neutron的基本架構,以及架構中所涉及的Web機制、通信機制、並發機制等。第6章深入介紹Neutron啟動服務的流程、通信機制與實現等。第7章深入分析了Neutron外掛程式的驅動、訊息處理機制。第8章詳細講解了Neutron代理(OVS與L3)的實現。
圖書目錄
目 錄?Contents
序
前 言
第1章 Neutron概述 1
1.1 Neutron的由來 1
1.2 Neutron的特性與套用 3
1.2.1 基於OpenStack的套用 4
1.2.2 基於SDN的套用 6
1.3 Neutron的擴展能力 8
1.4 本章小結 9
第2章 Linux虛擬網路基礎 11
2.1 tap 11
2.2 namespace 13
2.3 veth pair 16
2.4 Bridge 17
2.5 Router 19
2.6 tun 21
2.7 iptables 24
2.7.1 NAT 27
2.7.2 Firewall 30
2.7.3 mangle 32
2.8 本章小結 32
第3章 Neutron的網路實現模型 34
3.1 Neutron的三類節點 34
3.2 計算節點的實現模型 35
3.2.1 VLAN實現模型 37
3.2.2 VXLAN實現模型 41
3.2.3 GRE實現模型 44
3.2.4 計算節點的實現模型小結 45
3.3 網路節點的實現模型 46
3.4 控制節點的實現模型 49
3.5 本章小結 49
第4章 Neutron的資源模型 51
4.1 Neutron資源的租戶隔離 51
4.1.1 Neutron語境下租戶隔離的
含義 52
4.1.2 Neutron在租戶隔離中的無限
責任和有限責任 53
4.1.3 Neutron的租戶隔離實現方案 54
4.1.4 租戶隔離小結 56
4.2 Network 57
4.2.1 運營商網路和租戶網路 58
4.2.2 物理網路 61
4.2.3 Network小結 64
4.3 Trunk Networking 65
4.3.1 Bridge的VLAN接口模式 65
4.3.2 VLAN aware VM與Trunk
Networking 69
4.3.3 Trunk Networking小結 78
4.4 Subnet 79
4.4.1 IP核心網路服務 80
4.4.2 Subnet資源池 81
4.5 Port 83
4.6 Router 86
4.6.1 Router的外部網關 88
4.6.2 增加Router接口 89
4.6.3 Router的路由表 91
4.6.4 Floating IP 92
4.6.5 Router小結 94
4.7 Multi-Segments 95
4.7.1 Multi-Segments的困惑 96
4.7.2 Multi-Segments的幾個套用
場景 98
4.8 BGP VPN 102
4.8.1 BGP VPN的使用場景 103
4.8.2 BGP VPN的實現模型 104
4.8.3 BGP VPN的資源模型 105
4.9 本章小結 109
第5章 Neutron架構分析 112
5.1 Neutron的Web框架與規範 115
5.2 Neutron的訊息通信機制 117
5.2.1 AMQP基本概念 118
5.2.2 AMQP的訊息轉發 118
5.3 Neutron的並發機制 122
5.3.1 協程概述 122
5.3.2 Neutron中的協程 124
5.4 通用庫Oslo 131
5.5 本章小結 131
第6章 Neutron的服務 132
6.1 Neutron啟動一個Web Server 133
6.1.1 Web Server的啟動過程 133
6.1.2 Web Server啟動過程中的
關鍵參數 135
6.1.3 Web Server的進程與協程 138
6.1.4 小結 142
6.2 載入WSGI Application 142
6.2.1 api-paste.ini對應的WSGI
Application 144
6.2.2 neutronapi_v2_0 section 146
6.3 Core Service API(RESTful)的
處理流程 148
6.3.1 Core Service的WSGI
Application 149
6.3.2 Core Service處理HTPP Request的基本流程 149
6.3.3 Core Service處理HTTP Request的函式映射 153
6.3.4 小結 162
6.4 Extension Service API(RESTful)的處理流程 164
6.4.1 Extension Service的類圖與載入 164
6.4.2 Extension Service的WSGI Application 167
6.4.3 Extension Service處理HTTP Request的基本流程 169
6.4.4 Extension Service處理HTTP Request的函式映射 171
6.4.5 小結 176
6.5 Plugin的載入 178
6.5.1 Core Service Plugin的載入 179
6.5.2 Extension Services Plugin的載入 180
6.6 RPC Consumer的創建 181
6.6.1 Neutron Plugin創建RPC Consumer的接口 182
6.6.2 Neutron Server啟動RPC Consumer 183
6.7 本章小結 187
第7章 Neutron的外掛程式 190
7.1 核心外掛程式 191
7.1.1 ML2外掛程式簡介 193
7.1.2 類型驅動 193
7.1.3 機制驅動 202
7.1.4 ML2外掛程式create_network函式剖析 224
7.1.5 ML2外掛程式create_subnet函式剖析 229
7.1.6 ML2外掛程式create_port函式剖析 240
7.2 業務外掛程式 249
7.2.1 Router Plugin的create_router函式分析 250
7.2.2 Router Plugin的add_router_interface代碼分析 257
7.3 Neutron Plugin的訊息發布和訂閱 260
7.3.1 Neutron Plugin中的Callbacks Module機制 261
7.3.2 Neutron Plugin中的RPC機制 265
7.4 本章小結 266
第8章 Neutron的代理 268
8.1 OVS Agent 270
8.1.1 三類關鍵的Bridge 270
8.1.2 內外VID的轉換 288
8.1.3 OVS Agent代碼分析 295
8.1.4 OVS Agent小結 309
8.2 L3 Agent 311
8.2.1 class OVSInterfaceDriver分析 312
8.2.2 class RouterInfo分析 317
8.2.3 L3 Agent代碼分析 326
8.2.4 L3 Agent小結 351
8.3 本章小結 352