ODL技术内幕:架构设计与实现原理
出版时间:
2019-09
版次:
1
ISBN:
9787111635093
定价:
79.00
装帧:
平装
开本:
16开
纸张:
胶版纸
页数:
247页
5人买过
-
内容简介
这是一本从源代码层面深入剖析ODL的著作,旨在帮助读者在透彻理解ODL的先进架构、设计思想和实现原理后,能更有高效地进行SDN开发。
作者是的ODL专家,是SDN领域的布道者,有在通讯类软件研发和系统设计领域有超过15年的经验对ODL及其源码有深入的研究和理解。ODL架构演进极快,核心模块和接口变动频繁,ODL子项目众多,功能和接口碎片化严重,学习门槛很高,面对数百万行的源代码更是无从下手。
作者根据自己的经验,对ODL的核心功能及其源代码(氟版本和氖版本)进行反复提炼、抽丝剥茧,不仅让读者理解ODL的系统架构、设计思想、实现原理,而其能让读者领略ODL实现源码中的代码和设计模式,*终实现让读者更高效地使用SDN的目的,掌握SDL的精髓。
全书13章,分为三个部分:
第壹部分 基础环境篇(第1-2章)
主要介绍了ODL的核心概念、架构、设计目标、编译构建环境的搭建、源码阅读的方法,以及ODL社区对众多子项目的管理实践。
第二部分 核心架构篇(第3-10章)
从源代码的角度详细分析了ODL的基本对象、数据树、MD-SAL DataStore、MD-SAL RPC、MD-SAL Notification、MD-SAL Mount、MD-SAL Cluster Service的工作机制与实现原理;
第三部分 公共组件篇(第11-13章)
从源代码角度详细分析了ODL的AAA、RESTCONF、Blueprint等公共组件的设计、实现与扩展。 耿兴元
ODL技术专家,目前就职于中兴通讯,是操作系统及支撑平台的软件专家级工程师,在通讯类软件研发及系统设计领域已有超过15年的工作经验。2015~2017年期间,负责基于ODL的商用SDN控制器平台的设计和研发管理工作。
在ODL领域有多年的研究和实践经验,曾与SDNLAB一起创建了开源项目Jaguar(基于ODL的Kubernetes网络解决方案),是该开源项目的主要管理者与贡献者。在SDNLAB上录制了ODL的系列课程,深受读者欢迎。 前言
第一部分 基础环境篇
第1章 阅读源代码前的准备 2
1.1 ODL项目介绍 2
1.1.1 ODL框架之争 3
1.1.2 SAL的演进 3
1.1.3 ODL的子项目及分类 4
1.1.4 ODL项目的管理 6
1.2 搭建ODL编译构建环境 6
1.3 阅读和调试ODL源代码 9
1.3.1 ODL项目源码下载 9
1.3.2 IntelliJ IDEA安装 10
1.3.3 IntelliJ IDEA调试ODL的项目源码 11
1.4 ODL设计目标 12
1.5 ODL总体架构 13
1.6 本章小结 15
第2章 ODL项目管理设计详解 16
2.1 问题的提出 16
2.2 解决思路 17
2.3 实现详解 20
2.3.1 基础parent设计 20
2.3.2 模块构建 23
2.3.3 feature组织 24
2.3.4 版本打包 25
2.4 项目模板 26
2.5 本章小结 28
第二部分 核心原理篇
第3章 ODL基本对象的设计与实现 30
3.1 QName 30
3.2 YangInstanceIdentifier 38
3.3 NomalizedNode 44
3.4 本章小结 49
第4章 数据树的设计与实现 50
4.1 基本概念 50
4.2 数据树的设计与实现 52
4.3 数据树的读写过程 59
4.4 MVCC机制与实现 63
4.5 本章小结 67
第5章 MD-SAL DataStore接口设计 68
5.1 基本概念 69
5.2 DataStore SPI设计 72
5.3 DataStore DOM API设计 77
5.4 DataStore Binding API设计 82
5.5 本章小结 87
第6章 MD-SAL DataStore的实现原理 88
6.1 概述 89
6.2 Raft算法及其实现 92
6.3 DataStore后端实现详解 106
6.4 DataStore前端实现详解 113
6.5 Binding DataBroker的实现 125
6.6 本章小结 130
第7章 MD-SAL RPC的设计与实现 131
7.1 一个实例 131
7.2 RPC机制的总体设计 136
7.3 RPC机制实现详解 141
7.4 Remote RPC实现详解 149
7.5 本章小结 155
第8章 MD-SAL Notification的设计与实现 156
8.1 一个实例 156
8.2 MD-SAL Notification接口设计 158
8.3 MD-SAL Notification实现剖析 161
8.4 本章小结 171
第9章 MD-SAL Mount机制与NETCONF 172
9.1 Mount服务接口设计 172
9.2 Mount机制的实现 175
9.3 本章小结 186
第10章 MD-SAL Cluster Service 187
10.1 EntityOwnershipService 187
10.2 ClusterSingletonService 195
10.3 本章小结 198
第三部分 公共组件篇
第11章 AAA 200
11.1 Shiro框架介绍 201
11.2 AAA实现原理 210
11.3 本章小结 219
第12章 RESTCONF 220
12.1 RFC 8040解读 220
12.2 RESTCONF的实现 226
12.3 本章小结 236
第13章 Blueprint及其扩展 237
13.1 Blueprint 238
13.2 Blueprint的使用 244
13.3 本章小结 247
-
内容简介:
内容简介
这是一本从源代码层面深入剖析ODL的著作,旨在帮助读者在透彻理解ODL的先进架构、设计思想和实现原理后,能更有高效地进行SDN开发。
作者是的ODL专家,是SDN领域的布道者,有在通讯类软件研发和系统设计领域有超过15年的经验对ODL及其源码有深入的研究和理解。ODL架构演进极快,核心模块和接口变动频繁,ODL子项目众多,功能和接口碎片化严重,学习门槛很高,面对数百万行的源代码更是无从下手。
作者根据自己的经验,对ODL的核心功能及其源代码(氟版本和氖版本)进行反复提炼、抽丝剥茧,不仅让读者理解ODL的系统架构、设计思想、实现原理,而其能让读者领略ODL实现源码中的代码和设计模式,*终实现让读者更高效地使用SDN的目的,掌握SDL的精髓。
全书13章,分为三个部分:
第壹部分 基础环境篇(第1-2章)
主要介绍了ODL的核心概念、架构、设计目标、编译构建环境的搭建、源码阅读的方法,以及ODL社区对众多子项目的管理实践。
第二部分 核心架构篇(第3-10章)
从源代码的角度详细分析了ODL的基本对象、数据树、MD-SAL DataStore、MD-SAL RPC、MD-SAL Notification、MD-SAL Mount、MD-SAL Cluster Service的工作机制与实现原理;
第三部分 公共组件篇(第11-13章)
从源代码角度详细分析了ODL的AAA、RESTCONF、Blueprint等公共组件的设计、实现与扩展。
-
作者简介:
耿兴元
ODL技术专家,目前就职于中兴通讯,是操作系统及支撑平台的软件专家级工程师,在通讯类软件研发及系统设计领域已有超过15年的工作经验。2015~2017年期间,负责基于ODL的商用SDN控制器平台的设计和研发管理工作。
在ODL领域有多年的研究和实践经验,曾与SDNLAB一起创建了开源项目Jaguar(基于ODL的Kubernetes网络解决方案),是该开源项目的主要管理者与贡献者。在SDNLAB上录制了ODL的系列课程,深受读者欢迎。
-
目录:
前言
第一部分 基础环境篇
第1章 阅读源代码前的准备 2
1.1 ODL项目介绍 2
1.1.1 ODL框架之争 3
1.1.2 SAL的演进 3
1.1.3 ODL的子项目及分类 4
1.1.4 ODL项目的管理 6
1.2 搭建ODL编译构建环境 6
1.3 阅读和调试ODL源代码 9
1.3.1 ODL项目源码下载 9
1.3.2 IntelliJ IDEA安装 10
1.3.3 IntelliJ IDEA调试ODL的项目源码 11
1.4 ODL设计目标 12
1.5 ODL总体架构 13
1.6 本章小结 15
第2章 ODL项目管理设计详解 16
2.1 问题的提出 16
2.2 解决思路 17
2.3 实现详解 20
2.3.1 基础parent设计 20
2.3.2 模块构建 23
2.3.3 feature组织 24
2.3.4 版本打包 25
2.4 项目模板 26
2.5 本章小结 28
第二部分 核心原理篇
第3章 ODL基本对象的设计与实现 30
3.1 QName 30
3.2 YangInstanceIdentifier 38
3.3 NomalizedNode 44
3.4 本章小结 49
第4章 数据树的设计与实现 50
4.1 基本概念 50
4.2 数据树的设计与实现 52
4.3 数据树的读写过程 59
4.4 MVCC机制与实现 63
4.5 本章小结 67
第5章 MD-SAL DataStore接口设计 68
5.1 基本概念 69
5.2 DataStore SPI设计 72
5.3 DataStore DOM API设计 77
5.4 DataStore Binding API设计 82
5.5 本章小结 87
第6章 MD-SAL DataStore的实现原理 88
6.1 概述 89
6.2 Raft算法及其实现 92
6.3 DataStore后端实现详解 106
6.4 DataStore前端实现详解 113
6.5 Binding DataBroker的实现 125
6.6 本章小结 130
第7章 MD-SAL RPC的设计与实现 131
7.1 一个实例 131
7.2 RPC机制的总体设计 136
7.3 RPC机制实现详解 141
7.4 Remote RPC实现详解 149
7.5 本章小结 155
第8章 MD-SAL Notification的设计与实现 156
8.1 一个实例 156
8.2 MD-SAL Notification接口设计 158
8.3 MD-SAL Notification实现剖析 161
8.4 本章小结 171
第9章 MD-SAL Mount机制与NETCONF 172
9.1 Mount服务接口设计 172
9.2 Mount机制的实现 175
9.3 本章小结 186
第10章 MD-SAL Cluster Service 187
10.1 EntityOwnershipService 187
10.2 ClusterSingletonService 195
10.3 本章小结 198
第三部分 公共组件篇
第11章 AAA 200
11.1 Shiro框架介绍 201
11.2 AAA实现原理 210
11.3 本章小结 219
第12章 RESTCONF 220
12.1 RFC 8040解读 220
12.2 RESTCONF的实现 226
12.3 本章小结 236
第13章 Blueprint及其扩展 237
13.1 Blueprint 238
13.2 Blueprint的使用 244
13.3 本章小结 247
查看详情
-
全新
河北省保定市
平均发货32小时
成功完成率87.68%
-
全新
北京市房山区
平均发货21小时
成功完成率90.94%
-
全新
河北省保定市
平均发货27小时
成功完成率88.59%
-
全新
天津市西青区
平均发货15小时
成功完成率91.64%
-
5
九五品
河北省保定市
平均发货32小时
成功完成率81.32%
-
5
全新
北京市丰台区
平均发货28小时
成功完成率86.24%
-
九品
北京市海淀区
平均发货22小时
成功完成率90.09%
-
九品
北京市昌平区
平均发货24小时
成功完成率88.45%
-
全新
河北省保定市
平均发货28小时
成功完成率87.91%
-
全新
北京市房山区
平均发货33小时
成功完成率82.93%
-
全新
河北省保定市
平均发货25小时
成功完成率92.95%
-
2
全新
河北省保定市
平均发货25小时
成功完成率90.67%
-
全新
河北省保定市
平均发货26小时
成功完成率85.88%
-
全新
北京市东城区
平均发货22小时
成功完成率87.7%
-
全新
天津市河东区
平均发货25小时
成功完成率87.76%
-
2
全新
河北省保定市
平均发货26小时
成功完成率88.87%
-
全新
江苏省南京市
平均发货7小时
成功完成率95.42%
-
全新
江苏省南京市
平均发货15小时
成功完成率81.87%
-
全新
四川省成都市
平均发货20小时
成功完成率78.36%
-
全新
北京市顺义区
平均发货11小时
成功完成率94.24%
-
全新
广东省广州市
平均发货17小时
成功完成率95.09%
-
全新
北京市西城区
平均发货11小时
成功完成率93.54%
-
全新
广东省广州市
平均发货17小时
成功完成率94.35%
-
全新
北京市海淀区
平均发货9小时
成功完成率97.57%
-
全新
北京市通州区
平均发货9小时
成功完成率90.23%
-
全新
河北省保定市
平均发货26小时
成功完成率89.49%
-
全新
江苏省无锡市
平均发货8小时
成功完成率96.37%
-
全新
北京市海淀区
平均发货15小时
成功完成率87.57%
-
全新
河北省廊坊市
平均发货9小时
成功完成率89.34%
-
全新
河北省保定市
平均发货21小时
成功完成率80.91%
-
全新
河北省保定市
平均发货24小时
成功完成率83.82%
-
全新
四川省成都市
平均发货20小时
成功完成率78.36%
-
2
全新
河北省保定市
平均发货15小时
成功完成率91.86%
-
2
全新
江苏省无锡市
平均发货10小时
成功完成率96.72%
-
全新
河北省保定市
平均发货15小时
成功完成率91.86%
-
全新
江苏省南京市
平均发货15小时
成功完成率81.87%
-
2
全新
河北省廊坊市
平均发货27小时
成功完成率87.26%
-
2
全新
河北省保定市
平均发货28小时
成功完成率86.92%
-
8
全新
四川省成都市
平均发货22小时
成功完成率87.66%
-
6
八五品
北京市昌平区
平均发货6小时
成功完成率97.87%
-
全新
广东省广州市
平均发货10小时
成功完成率90.72%
-
4
九品
河南省开封市
平均发货11小时
成功完成率95.09%
-
3
全新
湖北省武汉市
平均发货12小时
成功完成率95.06%
-
3
九品
北京市通州区
平均发货6小时
成功完成率96.75%
-
全新
河北省保定市
平均发货27小时
成功完成率73.25%
-
全新
北京市通州区
平均发货13小时
成功完成率54.17%
-
全新
北京市丰台区
平均发货27小时
成功完成率74.67%
-
全新
广东省广州市
平均发货7小时
成功完成率89.62%
-
九五品
北京市房山区
平均发货18小时
成功完成率68.75%
-
全新
河北省保定市
平均发货10小时
成功完成率85.73%