图书介绍

SDN环境部署与OpenDaylight开发入门2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

SDN环境部署与OpenDaylight开发入门
  • 程丽明编著 著
  • 出版社: 北京:清华大学出版社
  • ISBN:9787302493471
  • 出版时间:2018
  • 标注页数:680页
  • 文件大小:301MB
  • 文件页数:690页
  • 主题词:计算机网络-网络结构;软件开发-基本知识

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

SDN环境部署与OpenDaylight开发入门PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第一篇 理论篇——SDN概述、OpenDaylight简介、Controller项目总述3

第1章 什么是SDN3

1.1 SDN的诞生3

1.2 SDN的标准及组织机构5

1.3 SDN的一些典型应用场景6

1.3.1 SDN在数据中心的应用: Cisco的ACI和VMwart的NSX7

1.3.2 SDN在广域网的应用(SD-WAN):谷歌的B49

1.3.3 SDN与安全——一种基于SDN的云计算安全保护系统及方法10

1.4 SDN的一些重要学习资源12

1.5本章总结15

第2章SDN架构简析16

2.1 SDN架构总述17

2.2 SDN控制器18

2.3 SDN交换机20

2.4南向接口协议21

2.4.1 OpenFlow 1.022

2.4.2 OpenFlow 1.327

2.5北向接口协议32

2.6本章总结32

第3章 现有SDN交换机简介33

3.1 OVS简介33

3.1.1认识OVS33

3.1.2 OVS常用的命令35

3.1.3 OVS的学习参考49

3.2 SDN硬件交换机简介50

3.2.1思科50

3.2.2博科51

3.2.3华为51

3.2.4瞻博网络52

3.2.5 NEC52

3.2.6戴尔53

3.2.7 Arista53

3.2.8新华三54

3.2.9锐捷网络54

3.2.10 xNET网锐科技55

3.2.11盛科网络55

3.3本章总结56

第4章 现有SDN控制器简述57

4.1 OpenDaylight控制器58

4.2 ONOS控制器59

4.3 Floodlight控制器63

4.4 Ryu控制器65

4.5思科的APIC控制器和Open SDN控制器66

4.5.1思科APIC控制器66

4.5.2思科Open SDN控制器67

4.5.3思科SDN控制器的学习参考资源67

4.6 OpenContrail控制器67

4.7 NOX控制器69

4.8 POX控制器70

4.9 Beacon控制器70

4.10 Big Network控制器71

4.11博科的Brocade SDN控制器72

4.12 Maestro控制器73

4.13 IRIS控制器74

4.14 Extreme公司的OneController控制器75

4.15 本章总结76

第5章OpenDaylight综述77

5.1 OpenDaylight项目介绍77

5.2 OpenDaylight版本介绍80

5.2.1氢版本简介80

5.2.2氦版本简介82

5.2.3锂版本简介83

5.2.4铍版本简介85

5.2.5硼版本简介85

5.3 OpenDaylight的子项目简介89

5.3.1子项目AAA(认证、授权、审计项目)简介93

5.3.2子项目Federation(联合体项目)简介94

5.3.3子项目Infrastructure Utilities (基础设施项目)简介94

5.3.4子项目MD-SAL(模块驱动项目)简介95

5.3.5子项目ODL Root Parent(父项目)简介97

5.3.6子项目OpenDaylight Controller(控制器项目)简介97

5.3.7子项目YANG Tools (YANG工具项目)简介98

5.3.8 子项目 BGP LS PCEP (BGP和PCEP项目)简介99

5.3.9 NETCONF (NETCONF项目)子项目简介100

5.3.10子项目ODL Lisp Flow Mapping (LISP流映射项目)简介100

5.3.11子项目ODLOpenFlow Plugin (OpenFlow插件项目)简介101

5.3.12子项目OpenFlow Protocol Libra (OpenFlow协议库项目)简介101

5.3.13子项目OVSDB Integration (OVSDB集成项目)简介101

5.3.14子项目USC(统一安全通道项目)简介101

5.3.15 子项目FaaS(网络构造即服务项目)简介102

5.3.16子项目NeutronNorthbound (Neutron北向项目)简介102

5.3.17子项目ALTO(应用层流量优化项目)简介103

5.3.18子项目CAPWAP(无线接入点的控制和提供)简介103

5.3.19子项目Controller Core Functionality Tutorials(控制器核心功能向导项目)简介104

5.3.20子项目Controller Shield(控制器盾项目)简介104

5.3.21子项目DIDM(设备认证和驱动管理项目)简介104

5.3.22子项目Group Based Policy ( GBP )/Project Facts ( GBP项目)简介105

5.3.23子项目L2 Switch ( L2层交换机项目)简介106

5.3.24子项目LACP(链接聚合控制协议项目)简介106

5.3.25子项目OF-CONFIG (OF-CONFIG项目)简介106

5.3.26子项目OpenDaylight DLUX(ODL的DLUX项目)简介107

5.3.27子项目Service Function Chaining(服务功能链项目)简介107

5.3.28子项目VTN (VTN项目)简介108

5.4OpenDaylight学习参考108

5.5本章总结109

第6章OpenDaylight的Controller项目综述110

6.1 Controller简介110

6.1.1 OpenDaylight项目的控制器能满足当今网络发展的需求110

6.1.2 OpenDaylight项目的控制器及技术关键组成介绍111

6.2 Controller架构113

6.3 Controller项目的服务抽象层SAL114

6.3.1 MD-SAL119

6.3.2 AD-SAL120

6.4 Controller项目的学习参考121

6.5本章总结121

第二篇 实操篇——控制器的安装指南、操作指南、开发环境准备124

第7章SDN底层架构的搭建指南124

7.1 OVS安装指南125

7.1.1使用系统内置命令直接安装OVS125

7.1.2下载包并手动安装OVS126

7.2仿真环境Mininet安装指南129

7.2.1 Mininet的介绍129

7.2.2下载Mininet虚拟机文件进行安装131

7.2.3在本地下载源代码以安装Mininet133

7.2.4使用包安装Mininet135

7.2.5 Mininet的升级136

7.2.6升级Mininet的OVS版本137

7.2.7 Mininet常用命令140

7.3 Xen环境部署SDN网络的安装指南147

7.3.1安装Xen147

7.3.2安装OVS149

7.3.3创建虚拟机151

7.3.4对虚拟机文件进行修改151

7.3.5启动虚拟机153

7.4 KVM环境部署SDN网络的安装指南153

7.4.1安装KVM153

7.4.2安装OVS154

7.4.3在KVM上进行相关的配置156

7.4.4创建虚拟机并将其连接到OVS网桥上157

7.5 OpenStack环境部署SDN网络的安装指南157

7.5.1在现有的OpenStack的基础上安装OpenDaylight158

7.5.2使用DevStack以同时安装OpenStack和OpenDaylight164

7.6硬件环境部署SDN网络的安装指南165

7.6.1配置硬件交换机165

7.6.2配置硬件交换机所连接的控制器166

7.7本章总结167

第8章 控制器OpenDaylight安装指南、操作指南和开发环境准备169

8.1 Controller项目的源码安装指南169

8.1.1基础安装环境要求170

8.1.2项目编译和运行的软件环境要求170

8.1.3下载Controller项目的源码173

8.1.4编译Controller子项目的源码174

8.1.5 Controller项目更新176

8.1.6启动运行Conttrller项目176

8.1.7安装参考177

8.2 Controller项目的快速安装指南177

8.3 OpenDaylight的Controller项目的开发环境准备179

8.3.1设置Gerrit账户179

8.3.2 Eclipse的安装和设置183

8.3.3参考链接184

8.4 OpenDaylight的Controller项目的使用指南185

8.4.1使用Controller和Mininet搭建一个简单的SDN环境185

8.4.2控制器OpenDaylight之Controller控制台界面介绍186

8.4.3通过Postman下发、删除、更新流表的操作189

8.4.4相关参考200

8.5 OpenDaylight的通用项目源码安装指南200

8.5.1下载OpenDaylight子项目的源码201

8.5.2编译OpenDaylight子项目的源码202

8.5.3编译OpenDaylight子项目更新203

8.5.4启动运行OpenDaylight子项目203

8.5.5安装参考204

8.6 OpenDaylight的通用项目快速安装指南204

8.7 OpenDaylight的通用开发环境准备206

8.8控制器OpenDaylight的学习参考206

8.9本章总结206

第9章 控制器ONOS安装指南208

9.1控制器ONOS简介208

9.1.1 ONOS简述208

9.1.2 ONOS的使命210

9.1.3 ONOS创建组织简介211

9.2控制器ONOS源码安装指南212

9.2.1安装前提环境的准备212

9.2.2 ONOS源码的下载和安装216

9.2.3在本地的开发机器上运行控制器ONOS219

9.2.4安装参考220

9.3控制器ONOS下载包的安装指南221

9.4控制器ONOS通过下载虚拟机进行部署的安装指南222

9.5控制器ONOS的使用指南225

9.5.1控制器ONOS的控制台界面介绍225

9.5.2使用ONOS和Mininet搭建一个简单的SDN环境227

9.6控制器ONOS的学习参考228

9.7本章总结229

第10章 控制器Floodlight安装指南230

10.1控制器Floodlight源码安装指南230

10.1.1安装前提环境的准备230

10.1.2安装Floodlight231

10.1.3 Floodlight的更新升级231

10.2控制器Floodlight通过下载虚拟机进行部署的安装指南232

10.3控制器Floodlight的使用指南233

10.3.1控制器Floodlight的常用命令介绍233

10.3.2控制器Floodlight的启动235

10.3.3控制器Floodlight的界面介绍237

10.3.4使用Floodlight和Mininet搭建一个简单的SDN环境240

10.3.5使用Floodlight和硬件交换机连接以搭建一个简单的SDN环境245

10.4控制器Floodlight的学习参考245

10.5本章总结246

第11章 控制器Ryu安装指南247

11.1控制器Ryu源码安装指南247

11.1.1安装前提环境的准备247

11.1.2安装Ryu248

11.1.3安装参考248

11.2使用系统内置命令直接安装控制器的安装指南249

11.2.1安装前提环境的准备249

11.2.2使用系统内置命令直接安装Ryu249

11.2.3安装参考249

11.3控制器Ryu通过下载虚拟机进行部署的安装指南249

11.4控制器Ryu连接Mininet的实验250

11.4.1实验环境设计250

11.4.2控制器Ryu的启动251

11.4.3启动Mininet创建仿真网络251

11.5控制器Ryu的学习参考254

11.6本章总结254

第三篇 实操篇———OpenDaylight之MD-SAL开发指南256

第12章MD-SAL开发的一些必备知识256

12.1 OSGi257

12.2 Karaf259

12.3 Maven260

12.3.1 Maven的安装和配置261

12.3.2 Maven常用的命令261

12.3.3 POM及pom.xml文件的简要介绍263

12.3.4 Maven项目的配置文件settings.xml介绍283

12.3.5 Maven的学习参考291

12.4 MD-SAL291

12.4.1 MD-SAL的基本概念292

12.4.2 MD-SAL的消息类型292

12.4.3 MD-SAL的数据事务293

12.4.4 MD-SAL的RPC路由297

12.4.5 OpenDaylight控制器MD-SAL:RESTCONF299

12.4.6 WebSocket变化事件通知订阅300

12.4.7配置子系统302

12.4.8 MD-SAL的学习参考305

12.5 YANG305

12.5.1 YANG的重要术语说明307

12.5.2 YANG的语法规则308

12.5.3 YANG的声明介绍309

12.5.4 YANG Java Binding:映射规则345

12.5.5 YANG的学习参考363

12.6本章总结364

第13章 从简单的Hello World开始366

13.1项目开发环境准备366

13.2使用Maven原型opendaylight-startup-archetype创建项目367

13.3实现Hello World功能374

13.3.1在API目录下编写YANG模型374

13.3.2在impl目录下写实现功能代码——实现HelloService接口375

13.3.3注册RPC376

13.4项目hello的测试378

13.4.1使用HTTP协议通过API浏览器进行测试379

13.4.2使用OpenDaylight自带的YANG UI工具进行测试380

13.4.3使用REST客户端工具Postman进行测试382

13.4.4使用REST客户端curl命令行工具进行测试382

13.5本章总结384

第14章 创建一个简单的项目:myproject385

14.1创建项目385

14.1.1使用Maven原型创建项目385

14.1.2编译项目387

14.1.3将项目导入IDE中387

14.2项目创建的关键目录和文件介绍388

14.2.1子项目myproject-api介绍390

14.2.2子项目myproject-artifacts介绍391

14.2.3子项目myproject-features介绍392

14.2.4子项目myproject-impl介绍394

14.2.5子项目myproject-it介绍395

14.2.6子项目myproject-karaf介绍395

14.3 YANG常用的定义及其自动转化的Java代码396

14.3.1 identity声明实例及其生成的Java文件396

14.3.2 container声明实例及其生成的Java文件399

14.3.3 typedef声明实例及其生成的Java文件412

14.3.4 leaf声明实例及其生成的Java文件415

14.3.5 leaf-list声明实例及其生成的Java文件419

14.3.6 list声明实例及其生成的Java文件423

14.3.7 choice声明和case声明实例及它们生成的 Java文件437

14.3.8 grouping声明实例及其生成的Java文件450

14.3.9 uses声明实例及其生成的Java文件454

14.3.10 augment声明实例及其生成的Java文件464

14.3.11 YANG创建模型的一些实验475

14.4本章总结481

第15章RPC的开发482

15.1 RPC开发过程的简要说明482

15.2 RPC的YANG文件定义483

15.2.1 RPC的YANG文件示例483

15.2.2 RPC的YANG文件映射的包和Java文件487

15.2.3运行测试517

15.3 RPC的实现519

15.4注册RPC并处理相应的关闭工作526

15.4.1 MyprojectProviderjava的初始代码526

15.4.2在MyprojectProvider类中完成注册工作527

15.4.3编译528

15.5项目测试528

15.5.1启动myproject项目测试528

15.5.2 my-rpc0功能测试529

15.5.3 my-rpc1功能测试530

15.5.4 my-rpc2功能测试531

15.5.5 my-rpc3功能测试532

15.5.6 my-rpc4功能测试533

15.6本章总结535

第16章DataStore相关的开发536

16.1 DataStore相关开发过程的简要说明536

16.1.1使用DataBroker实现对DataStore的操作537

16.1.2完成Data Change事件的实现539

16.2利用DataBroker实现对DataStore的操作540

16.2.1实现对DataStore的异步读写操作540

16.2.2传递DataBroker参数543

16.2.3测试验证544

16.3 Data Change事件的实现546

16.3.1实现DataChangeListener接口完成onDataChange函数546

16.3.2将数据树变动的监听注册到MD-SAL547

16.3.3测试验证548

16.4本章总结550

第17章Notification的开发551

17.1 Notification开发过程的简要说明551

17.1.1通知提供的实现552

17.1.2通知接收处理的实现552

17.2在Yang Model中实现定义553

17.2.1 notification的YANG文件示例553

17.2.2 notification的YANG文件映射的包和Java文件555

17.3通知提供的实现577

17.3.1实现通知的提供577

17.3.2注册提供通知并传递NotificationProviderService参数579

17.4通知接收处理的实现580

17.4.1实现通知的接收580

17.4.2注册接收通知584

17.5项目测试584

17.6本章总结587

第18章 使用Eclipse进行项目开发的介绍588

18.1使用Eclipse创建项目588

18.2使用Eclipse导入项目594

18.3使用Eclipse编辑项目598

18.3.1使用Eclipse编辑YANG文件598

18.3.2使用Eclipse编辑其他普通文件600

18.3.3在Eclipse工具之外对项目进行修改后的处理600

18.4使用Eclipse调试运行项目601

18.4.1使用Eclipse调试在其中编辑的项目601

18.4.2使用其他工具调试在Eclipse中编辑的项目607

18.5一些可能出现的错误及其解决方法609

18.5.1新建项目中出现mavenarchiver相关错误及解决方法609

18.5.2 Maven的Lifecycle Mapping相关问题的解决方法611

18.5.3项目导入Eclipse后无法显示的解决方案616

18.4.4其他的一些错误和解决方法617

18.6本章总结618

第四篇 实操篇——OpenDaylight之北向开发指南620

第19章OpenDaylight北向开发的基础知识620

19.1 RestConf协议简介621

19.1.1 RestConf的HTTP方法623

19.1.2 RestConf的工作原理625

19.2 NetConf协议简介627

19.2.1 NetConf的协议层627

19.2.2 NetConf的内容层627

19.2.3 NetConf的操作层627

19.2.4 NetConf的消息层628

19.2.5 NetConf的安全传输层628

19.2.6 NetConf的参考资料629

19.3 OpenDaylight主要的北向接口630

19.4北向开发的官方参考资料631

19.5本章总结631

第20章 利用Java实现OpenDaylight北向下发流表的功能632

20.1 OpenDaylight北向下发流表开发的基础依据632

20.1.1模块opendaylight-action-types介绍632

20.1.2模块opendaylight-match-types介绍639

20.2获取流表的功能实现646

20.2.1代码展示646

20.2.2实验验证648

20.3添加流表的功能实现652

20.3.1代码展示652

20.3.2实验验证662

20.4删除流表的功能实现666

20.4.1代码展示666

20.4.2实验验证668

20.5 本章总结670

第21章 使用OpenDaylight北向接口的通用应用671

21.1获取北向接口的信息并进行开发671

21.2使用API进行北向编程674

21.3本章总结676

参考资料677

热门推荐