首页>参考读物>计算机科学与技术>计算机网络

云数据中心网络与SDN:技术架构与实现
作者 : 张晨 编著
出版日期 : 2018-02-02
ISBN : 978-7-111-59121-4
定价 : 119.00元
扩展资源下载
扩展信息
语种 : 简体中文
页数 : 550
开本 : 16
原书名 :
原出版社:
属性分类: 店面
包含CD : 无CD
绝版 : 未绝版
图书简介

全书讲解了5个方面的内容。1.对SDDCN的背景知识进行介绍,主要包括传统的数据中心网络和SDN,并对SDDCN的顶层设计进行概括性的介绍。2.对SDDCN的典型的商用、开源方案进行具体的分析,包括包括技术背景、架构设计以及各方案的横向测评。对于一些开源的SDDCN解决方案还会深入地剖析其代码实现。3.对与SDDCN的外延技术进行分析,如容器网络和数据平面技术等。4.对一些典型的SDDCN落地案例进行介绍。5.从学术界的角度出发,对SDDCN未来的发展方向进行展望。

图书特色

16位业界大咖联袂审校并推荐,提纲挈领式地梳理了行业发展的来龙去脉,深入地剖析了相关技术与产品的实现精髓
云数据中心网络技术全面覆盖,包括传统技术方案演进、商用与开源SDDCN方案、相关领域的学术研究,以及容器与融合等新型业务等

封底
经过十余年的演进与发展,SDN的星星之火目前已成燎原之势。SDN商用的第一枪在数据中心打响,虚拟化成为SDN摸索出的第一个杀手级应用,反过来SDN也在网络层面赋予了云计算更好的开放性、敏捷性与智能性。
本书对云数据中心网络技术进行了全面的介绍,是目前市面上极少数能够切入SDN某一具体应用场景,并对相关技术与产品进行系统性介绍的书籍之一。希望帮助读者了解并掌握以下方面的内容:
SDN与传统网络技术间的关系,以及SDN的核心特征;
数据中心网络技术的演化主线,以及SDN应用于数据中心网络的价值;
主流的商用SDDCN产品与开源SDDCN方案间差异化的设计与实现;
学术界在数据中心网络领域代表性的研究成果;
容器与融合等新兴业务对云数据中心网络技术的需求。



张 晨 
IP与SDN技术爱好者,毕业于北京邮电大学,现就职于中国电信北京研究院,从事SDN研发工作。


16位业界大咖联袂审校并推荐,提纲挈领式地梳理了行业发展的来龙去脉,深入地剖析了相关技术与产品的实现精髓。本书对云数据中心网络技术进行了全面讲解,包括传统技术方案演进、商用与开源SDDCN方案、相关领域的学术研究,以及容器与融合等新型业务等。
第1章作为本书的背景知识,对云数据中心网络演进的技术主线进行了介绍。
第2章以杂谈的形式对SDN的本质进行了论述,希望帮助读者重新认识SDN,并捋顺SDN与传统网络间的关系。
第3章对SDDCN落地的需求、实现的架构以及关键技术进行了高度精炼的介绍。
第4章收录了主流厂商和一些具有技术代表性的创业公司的SDDCN产品,希望帮助读者了解这些方案内部的设计机制与技术细节。
第5~7章分别对OpenStack Neutron、OpenDaylight和ONOS的设计架构以及SDDCN相关项目的核心代码实现进行了剖析,希望帮助读者获得相关项目二次开发的能力。
第8章介绍了学术界在相关领域的研究进展,其中不仅包括与SDN相关的设计,也包括很多非SDN的设计,希望能够帮助读者拓展技术视野,启发新的设计灵感。
第9~10章作为“番外”,对于容器和融合等新型业务进行了概要性的介绍。

图书前言

为什么要写这本书
这本书的写作前前后后花了两年多的时间,我曾无数次地想过会有那么一个周末的下午,洋洋洒洒地写着前言,每念及于此,总有一种激扬文字、挥斥方遒的感觉。到了这一天,酝酿多时后坐在桌前,先是写了一些行业点评,虽然气势磅礴但不够接地气,反反复复地修改却始终没能令自己满意。最后想着,反正写前言就是在和读者聊天,也没有必要给书里的内容扣个大大的帽子,倒不如来说说情怀、谈谈理想,就当是给自己这几年的青春做一个注脚吧。
最开始其实并没有写书的打算,做研究的动力一方面是来源于对网络技术的兴趣与热爱,另一方面,坦白讲,那个时候在数据中心网络这块想到了一些新的点子,希望能够借着SDN的东风把想法做成实打实的产品。于是,最初是带着做调研的想法,开始对云数据中心SDN的技术与产品进行梳理。没有想到的是,这调研一做竟是两年多的时间,这两年里既看到了很多原来自己并不了解的技术,数次感叹于知识海洋的广袤无垠,也目睹了自己的一些想法被别人进行了变现,无奈地明白做产品需要分秒必争。
确立写书的想法是在2016年,实际上当时SDN圈子的风潮已经开始从云数据中心转向了企业级广域网,各路厂商、创业公司和媒体都已经开始围着SDWAN的概念在转了。和业界的一些同行聊过之后,其中有一部分人认为云数据中心的网络已经没什么值得研究的了。听多了类似的说法,给我个人的感觉是:SDN的出现既让网络这个圈子变得时髦,又让圈子里的人变得浮躁。于是,我决定把调研的内容写成一本书,希望能够使读者了解到,数据中心SDN在技术上还远远没有达到标准化,在产品上还有较大的提升空间,很多同行仍然在全力地投身于相关技术的演进和产品的迭代中。跟随先进的理念固然重要,但是踏踏实实地做事才是行业能够得以长久发展的关键。
本书还有另外一个出发点,是由于传统网络与SDN的纠葛长久以来都没能真正化解开来,很多人还是抱着非此即彼的错误观点。因此本书在介绍各个SDN技术和产品的时候,都会力争把控制和转发的逻辑说清楚,能分析到数据包处理流程这个层面的,都会加以详细分析。这么做的目的,是希望读者能够明白SDN虽然改变了网络的交付模式,但是API远远不是SDN的全部,网络架构本身的设计仍然是不可动摇的技术基础。另外,在一些情况下,SDN并不是解决问题的最好方式,因此本书还介绍了一些非SDN的数据中心网络技术,希望能够帮助读者拓宽技术视野,打开新的研究思路。
成书的过程中,最大的感悟是新技术发展得太快,很多章节的内容都不得不多次进行更新与修订。ICT的融合为传统的通信行业带来了前所未有的机遇,同时也要求我们能够调整好学习的心态。回顾这两年多的时间,几乎每日每夜都把自己泡在了各种各样的资料中,读了厂商不计其数的产品手册和技术文档,一行一行地去啃开源平台的代码,其中不乏很多有价值的内容,但由于成书时间与篇幅上的限制未能在书中进行介绍,多少还是有些遗憾吧。
同时,伴随着知识的逐步丰富,我也更加真切地体会到了个人的渺小。学习永无止境,不忘初心,方得始终,在探索技术的路上愿与诸君共勉。
本书特色
本书涉及云数据中心网络很多块的内容,主要包括传统技术、商用SDN方案、开源SDN方案以及相关的学术论文,覆盖了目前绝大部分的主流技术以及一些其他较为新颖的技术,是目前市面上少数能够切入SDN某一个具体行业应用场景,并对相关技术和产品进行系统性介绍的书籍之一。
实际上,把本书中每一块的内容拿出来都能单独写一本书。不过,为了让读者能够通过一本书,迅速并全面地掌握这些块内容,因此在写作的过程中就不得不去抠每一句话,甚至每一个字和词,力争简短、清晰、准确地呈现出核心的技术内容。如果相关行业的技术宽度为100,每种技术的深度为100,本书希望能够同时在宽度和深度上达到80+的水平,做到“样样通”而“样样不松”。
同时,为了能够捋顺这些五花八门的技术间的关系,行文过程中还对部分技术的产生背景与演进历程进行了介绍,希望读者在读过本书后,做到既能“知其然”,又能“知其所以然”。
读者对象
CTO、CIO
数据中心架构师
SDN架构师
SDN产品经理
SDN研发人员
高校与科研院所网络研究人员
其他对网络技术感兴趣的人员
如何阅读本书
阅读本书前,需要读者对传统网络技术和SDN基础知识有一定的了解。
第1章会对云数据中心网络演进的技术主线进行介绍,主要包括从3-Tier架构向Leaf-Spine架构的演进、从xSTP向大二层的演进、从传统网络向SDN的演进,以及传统网络的最新进展等内容。第1章可以看作本书的背景知识,用于引出后面章节对于数据中心SDN的介绍,讲述的过程中会以技术特征为分类依据,介绍厂商相关的私有技术与产品,以及IEEE、IETF相关的技术标准。第1章中所介绍的一些技术目前已经退出了历史舞台,为了保证讲述的完整性仍然保留了相关的介绍,读者可以有选择地进行阅读。
第2章将以杂谈的形式对SDN的本质进行论述,包括转发与控制分离、网络可编程以及集中式控制,并对SDN在IT层面的设计思路进行了总结。通过第2章的内容,希望可以帮助读者重新认识SDN,并捋顺SDN与传统网络间的关系。第2章的内容相比于其他章节的内容较为独立,读者可以灵活地调整本章的阅读顺序。
从第3章开始,正式开始介绍本书的核心内容——云数据中心SDN(Software Defined Data Center Networking,以下简称SDDCN)。第3章首先对SDDCN落地需求、实现架构以及关键技术进行介绍,希望能够为后续章节的内容起到提纲挈领的作用。第3章的表述相对抽象,有网络架构设计经验或者实际工程经验的读者可以仔细阅读与体会,如果读者之前并没有接触过相关工作,阅读第3章时可以先简单地看一遍,完成后续章节内容的阅读后,回过头来再去体会第3章中的内容,会获得更好的效果。
第4章将对十余个商用SDDCN解决方案进行深入的介绍,收录了主流厂商和一些具有技术代表性的创业公司的SDDCN产品,希望通过本章的内容,帮助读者了解这些方案内部的设计机制与技术细节,而不是仅仅看到一个“网络黑箱”,否则SDN不过是另外一个黑箱。
第5章对OpenStack Neutron进行了详细的介绍,主要内容包括Neutron的组网原理、软件设计架构、虚拟机的接入、OVS Plugin/Agent的设计与实现,以及其他主要的扩展Plugin/Agent。第6章对OpenDaylight的架构设计、OpenFlow的典型实现,以及OpenDaylight中的SDDCN的相关实现进行了详细的介绍。第7章对ONOS的架构设计、OpenFlow的典型实现,以及ONOS中的SDDCN的相关实现进行了详细的介绍。
第5、6、7章的内容将涉及各个开源平台的核心代码,力争同时呈现出代码中上层的业务逻辑以及底层的控制与转发逻辑,希望帮助读者在使用这些开源方案时,能够具备二次开发的能力。需要说明的是,代码所用版本以章前引言中所提及的版本为准,代码的呈现方式将以“===”形式的分割线注明代码所在文件,通过“//”形式的注释符对关键代码的逻辑进行解析。受限于篇幅,这三章跳过了非核心代码,同时省略了非关键参数与Java中的花括号。
第8章对学术界在云数据中心网络的典型研究工作进行介绍,包括拓扑、路由、虚拟化、服务链、服务质量、传输层优化、测量与分析、安全、高可用、大数据优化这十个方向。这一章在内容上会力争把每个研究工作的技术要点都讲清楚,而不是仅仅用一两句话来概括思路。这些研究工作既包括SDN的设计,又包括很多非SDN的设计,希望能够帮助读者拓展技术视野,启发新的设计灵感。
第9章和第10章是本书的番外部分。第9章对容器网络进行了概要性的介绍,容器是与虚拟机相对应的负载形态,因此独立成章,其中涉及的网络技术都在其他章节中介绍过,用在容器网络里只是接入了不同形态的负载,而技术的本质并没有发生变化,因此第9章中不会再去详细讨论这些已经介绍过的技术。第10章以Fiber Channel和InfiniBand为代表,对数据中心内部的存储网络和高性能计算网络的技术体系进行了概要性的介绍,这两者是与以太网和TCP/IP相对应的异构网络技术,因此独立成章,另外第10章中还简单地介绍了将以太网与Fiber Channel和InfiniBand进行融合的思路。
最后要说明的是,本书所介绍的内容均为云数据中心内部的网络技术,限于成书时间和篇幅上的限制,对于云数据中心外部的网络技术,如企业网络入云、Internet流量入云、云数据中心ISP上行出口优化、云数据中心间流量优化,均未能进行介绍。另外NFV相关的内容,包括vSwitch、vRouter、BPF、VPP等datapath技术,以及DPDK、SR-IOV等IO加速技术,本书也未做专题性介绍。
勘误和支持
由于笔者的水平有限,书中难免会出现一些错误或者不准确的地方,恳请读者批评指正。读者可通过微信号gokd35直接联系笔者,或者通过邮箱sddcn_qa@126.com提出问题或者建议。愿我们在网络技术的进修之路上互勉共进。
致谢
感谢九州云的龚永生先生,盛科网络的张卫峰先生,Arista的杨文嘉先生,为本书进行了专业的技术审校。
感谢北京邮电大学的黄韬教授、清华大学的毕军教授、电信北京研究院的孙琼女士,移动研究院的王璐女士、联通研究院的徐雷先生、VMware的叶逾健先生、Juniper的马绍文先生、Arista的池惠澄先生、BigSwitch的蒋刊哲先生、互联港湾的张宇峰先生、云杉网络的张天鹏先生、ZStack的王为先生、Canonical的张华先生,为本书进行了精彩的推荐。
感谢北京邮电大学的李昕教授、F5的范恂毅先生、VMware的吉白先生、BigSwitch的吴鑫先生,在本书写作过程中提供的帮助。
再一次感谢上述各位业界前辈,在繁忙的工作后利用宝贵的休息时间来审阅此书,是他们的无私支持给了我修缮此书的动力。同时,他们为业界发展所做出的贡献令人尊重和钦佩,将不断激励着我们后辈学习与前进!
感谢机械工业出版社的编辑高婧雅女士,对本书写作的悉心指导,以及对我本人的包容和理解。感谢SDNLab的方辉先生,在我形成写书想法时的鼓励与支持。没有他们,就不会有这本书的出版。
最后感谢我的家人和朋友,他们在生活中的关怀和鼓励使我能够在这两年中踏踏实实地完成本书内容的编写。
声明
本书中所述一切观点仅代表作者本人,与作者所在单位以及其他机构无关。

上架指导

计算机\网络

封底文字

经过十余年的演进与发展,SDN的星星之火目前已成燎原之势。SDN商用的第一枪在数据中心打响,虚拟化成为SDN摸索出的第一个杀手级应用,反过来SDN也在网络层面赋予了云计算更好的开放性、敏捷性与智能性。
本书对云数据中心网络技术进行了全面的介绍,是目前市面上极少数能够切入SDN某一具体应用场景,并对相关技术与产品进行系统性介绍的书籍之一。希望帮助读者了解并掌握以下方面的内容:
 SDN与传统网络技术间的关系,以及SDN的核心特征。
 数据中心网络技术的演化主线,以及SDN应用于数据中心网络的价值。
 主流的商用SDDCN产品与开源SDDCN方案间差异化的设计与实现。
 学术界在数据中心网络领域代表性的研究成果。
 容器与融合等新兴业务对云数据中心网络技术的需求。

作者简介

张晨 编著:

图书目录

技术审校
本书赞誉
前言
第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 ElasticSwitch 440
8.5.5 SecondNet 441
8.5.6 Oktopus 441
8.6 传输层优化 443
8.6.1 MPTCP 443
8.6.2 DCTCP 446
8.6.3 D3 447
8.6.4 pFabric 449
8.6.5 Fastpass 450
8.6.6 OpenTCP 451
8.6.7 vCC 452
8.7 测量与分析 453
8.7.1 Pingmesh 453
8.7.2 OpenNetMon 454
8.7.3 FlowSense 455
8.7.4 Dream 455
8.7.5 OpenSample 457
8.7.6 Planck 458
8.7.7 OpenSketch 458
8.8 安全 460
8.8.1 SOM 460
8.8.2 FloodGuard 462
8.8.3 TopoGuard 463
8.8.4 FortNox 464
8.8.5 AVANT GUARD 466
8.8.6 OF-RHM 468
8.8.7 Fresco 470
8.9 高可用 471
8.9.1 ElastiCon 471
8.9.2 Ravana 473
8.9.3 BFD for OpenFlow 474
8.9.4 In-Band Control Recovery 476
8.9.5 OF-based SLB 477
8.9.6 Anata 478
8.9.7 Duet 480
8.10 大数据优化 482
8.10.1 BASS 482
8.10.2 OFScheduler 482
8.10.3 Phurti 483
8.10.4 Application-Aware Networking 484
8.10.5 CoFlow 485
8.11 本章小结 486
第9章 番外——容器网络 487
9.1 容器网络概述 487
9.2 容器网络模型 488
9.2.1 接入方式 488
9.2.2 跨主机通信 491
9.2.3 通用数据模型 492
9.3 Docker网络 494
9.3.1 docker0 495
9.3.2 pipework 496
9.3.3 libnetwork 496
9.4 Kubernetes网络 498
9.4.1 基于POD的组网模型 498
9.4.2 Service VIP机制 499
9.5 第三方组网方案 501
9.5.1 Flannel 501
9.5.2 Weave 502
9.5.3 Calico 504
9.5.4 Romana 506
9.5.5 Contiv 507
9.6 Neutron网络与容器的对接 508
9.7 本章小结 510
第10章 番外——异构网络与融合 511
10.1 融合以太网基础 511
10.1.1 PFC 512
10.1.2 ETS 513
10.1.3 QCN 513
10.1.4 DCBX 514
10.2 存储网络及其融合 514
10.2.1 FC的协议栈 515
10.2.2 FC的控制与转发机制 516
10.2.3 FCoE的控制与转发机制 517
10.2.4 昙花一现的SDSAN 520
10.3 高性能计算网络及其融合 524
10.3.1 InfiniBand的协议栈 525
10.3.2 InfiniBand的控制与转发机制 526
10.3.3 RoCE与RoCEv2 528
10.4 本章小结 530

教学资源推荐
作者: 蔡开裕,朱培栋,徐明
作者: [美]W. 理查德·史蒂文斯(W. Richard Stevens) 著
作者: (美)Kevin R. Fall, W. Richard Stevens 著
作者: (美)Behrouz A.Forouzan 著
参考读物推荐
作者: 杨保华 陈昌 编著
作者: Joel Sklar
作者: 黄凯 毛伟杰 顾骏杰 著
作者: (美)David Josephsen 著