新書推薦:
《
医学图形图像处理基于Python VTK的实现
》
售價:NT$
760.0
《
山家清供:小楷插图珍藏本 谦德国学文库系列
》
售價:NT$
653.0
《
政略与战略论
》
售價:NT$
638.0
《
百年词史-(1900-2000(全二册))
》
售價:NT$
1520.0
《
RDI人际关系发展疗法:修复孤独症核心障碍,让干预回归生活
》
售價:NT$
454.0
《
金融科技监管的目标、原则和实践:全球视野下加密货币的监管
》
售價:NT$
505.0
《
城市轨道交通绿色低碳规划设计研究——深圳地铁6号线工程创新与实践
》
售價:NT$
1010.0
《
艾尔米塔什国家博物馆 少年游学 人一生一定要看的博物馆
》
售價:NT$
173.0
|
編輯推薦: |
DPDK\OpenFlow\SDN\OpenDaylight\OpenStack\容器\Kubernetes网络\ Service Mesh等,堪称5G时代基础技术集!
《Linux开源网络全栈详解:从DPDK到OpenFlow》基于Linux基金会将开源网络技术划分的层次框架,对处于主导地位的、较为流行的开源网络项目进行阐述,主要介绍各个项目的起源发展及背后故事、实现原理与框架、要解决的网络问题,力争用轻松的语言对开源网络进行多方位、深层次的揭秘:
● 开源网络组织及生态
● OpenFlow
● Linux虚拟网络
● 高性能数据平面
● OpenDaylight
● OpenStack网络
● Kubernetes网络
● Service Mesh
● 网络编排与集成
|
內容簡介: |
本书基于Linux基金会划分的开源网络技术层次框架,对处于主导地位的、较为流行的开源网络项目进行阐述,包括DPDK、OpenDaylight、Tungsten Fabric、OpenStack Neutron、容器网络、ONAP、OPNFV等。本书内容主要围绕各个项目的起源与发展、实现原理与框架、要解决的网络问题等方面展开讨论,致力于帮助读者对Linux开源网络技术的实现与发展形成完整、清晰的认识。本书语言通俗易懂,能够带领读者快速走入Linux开源网络的世界并做出自己的贡献。本书适合参与Linux开源网络项目开发的读者阅读,也适合互联网应用的开发者、架构师和创业者参考。
|
關於作者: |
英特尔开源技术中心负责英特尔的开源技术中心的开源工作,英特尔的工程师都参与其中。您可以在一个地方找到我们维护和贡献的项目,从Linux内核到云编排,到ClearLinux和KATA容器等重点项目。每个项目都有自己的部分,在那里可以很容易地了解项目并参与到我们的全球社区中。
|
目錄:
|
第1章Linux开源网络1
1.1开源网络组织1
1.1.1云计算与三大基金会1
1.1.2LFN3
1.2网络标准及架构4
1.2.1OpenFlow4
1.2.2SDN10
1.2.3P414
1.2.4ETSI的NFV参考架构17
1.3Linux开源网络生态19
1.3.1开源硬件20
1.3.2虚拟交换21
1.3.3Linux操作系统22
1.3.4网络控制23
1.3.5云平台24
1.3.6网络编排27
1.3.7网络数据分析27
1.3.8网络集成28
第2章Linux虚拟网络29
2.1TAPTUN设备30
2.2Linux Bridge32
2.3MACVTAP33
2.4Open vSwitch35
2.5Linux Network Namespace37
2.6iptablesNAT42
2.7虚拟网络隔离技术45
2.7.1虚拟局域网(VLAN)45
2.7.2虚拟局域网扩展(VxLAN)47
2.7.3通用路由封装GRE49
2.7.4通用网络虚拟化封装(Geneve)50
第3章高性能数据平面52
3.1高性能数据面基础54
3.1.1内核旁路54
3.1.2平台增强59
3.1.3DPDK65
3.2NFV和NFC基础设施72
3.2.1网络功能虚拟化72
3.2.2从虚拟机到容器的网络IO虚拟化78
3.2.3NFVi平台设备抽象81
3.3OVS-DPDK86
3.3.1OVS-DPDK 概述86
3.3.2OVS-DPDK性能优化93
3.4FD.IO:用于报文处理的用户面网络协议栈98
3.4.1VPP98
3.4.2FD.IO子项目101
3.4.3与OpenDaylight 和OpenStack集成107
3.4.4vBRAS109
第4章网络控制112
4.1OpenDaylight114
4.1.1ODL社区114
4.1.2ODL体系结构115
4.1.3YANG120
4.1.4ODL子项目122
4.1.5ODL应用实例125
4.2Tungsten Fabric126
4.2.1Tungsten Fabric体系结构126
4.2.2Tungsten Fabric 转发平面134
4.2.3Tungsten Fabric实践138
4.2.4Tungsten Fabric应用实例145
4.2.5Tungsten Fabric与OpenStack集成146
第5章OpenStack网络147
5.1OpenStack网络演进150
5.2Neutron体系结构152
5.2.1网络资源模型152
5.2.2网络实现模型159
5.2.3Neutron软件架构164
5.3Neutron Plugin165
5.3.1ML2 Plugin165
5.3.2Service Plugin170
5.4Neutron Agent174
第6章容器网络177
6.1容器177
6.1.1容器技术框架180
6.1.2Docker184
6.1.3Kubernetes188
6.2Kubernetes网络196
6.2.1Pod内部的容器间通信196
6.2.2Pod间通信197
6.2.3Pod与Service之间的网络通信199
6.2.4Kubernetes外界与Service之间的网络通信202
6.3Kubernetes CNI202
6.4Service Mesh209
6.4.1Sidecar模式211
6.4.2开源Service Mesh方案213
6.5OpenStack容器网络项目Kuryr217
6.5.1Kuryr起源217
6.5.2Kuryr架构217
第7章网络编排与集成221
7.1ETSI NFV MANO221
7.1.1ETSI标准化进展221
7.1.2OASIS TOSCA223
7.1.3开源编排器224
7.2ONAP228
7.2.1ONAP基本框架230
7.2.2ONAP应用场景234
7.3OPNFV237
7.3.1OPNFV上游238
7.3.2OPNFV项目245
7.3.3OPNFV CI251
7.3.4OPNFV典型用例252
|
內容試閱:
|
自1991年诞生起,Linux已经走过了接近三十年。Linux早已没有了问世时的稚气,正在各个领域展示自己成熟的魅力。
以Linux为基础,也衍生出了各种开源生态,例如网络和存储。而生态离不开形形色色的开源项目,在人人谈开源的今天,一个又一个知名的开源项目正在全球快速生长。面对一个又一个扑面而来且快速更迭的新项目、新名词,我们会有一定的紧迫感,想去了解它们背后的故事,也会有一定的动力去踏上Linux开源网络世界之旅。面对这样的一段旅途,我们心底浮现的最为愉悦的开场白或许应该是说实话,我学习的热情从来都没有低落过。Just for Fun,正如Linus在自己的自传Just for Fun中所希望的那样。
面对Linux开源网络这么一个庞大而又杂乱的世界,让人最为惴惴不安的问题或许是:我该如何更快更好地适应这个全新的世界?人工智能与机器学习领域里研究的一个很重要的问题是为什么我们小时候有人牵一匹马告诉我们那是马,于是之后我们看到其他的马就知道那是马了?针对这个问题的一个结论是:我们头脑里形成了一个生物关系的拓扑,我们认知的各种生物都会放进这个拓扑的结构里,而我们随着年纪不断成长的过程就是形成并完善各种各样或树形或环形等拓扑的过程,并以此来认知我们面对的各种新事物。
由此可见,或许我们认知Linux开源网络世界最快也最为自然的方式就是努力地在脑海里形成它的拓扑,并不断地进行细化。例如这个生态里包括了什么样的层次,每个层次里又有什么样的项目去实现,各个项目又实现了哪些服务以及功能,这些功能又是以什么样的方式实现的,等等。对于我们感兴趣的项目,又可以更为细致地去勾勒其中的脉络。就好像我们头脑里形成的有关一个城市的地图,它有哪些区,区里又有哪些标志建筑以及街道,对于我们熟悉的地方可以将它的周围进行放大细化,甚至是一个微不足道的角落。
本书的组织形式
本书的内容组织正是为了尽一切能力帮助读者能够形成有关Linux开源网络世界比较细致的拓扑。首先是前两章,对Linux开源网络的生态以及Linux本身对网络的支持与实现进行了阐述,希望能够帮助读者对Linux开源网络有一个全面、基本的认识和了解。
第1章主要基于Linux基金会划分的开源网络技术层次框架,对Linux开源网络生态进行整体的介绍。此外,也介绍了与网络有关的开源组织与标准架构。
第2章详尽地介绍了Linux虚拟网络的实现,包括Linux环境下一些网络设备的虚拟化形式,以及组建虚拟化网络时涉及的主要技术,为更进一步讨论Linux开源网络生态下的开源项目打下基础。
第3~7章对Linux开源网络生态各个层次中处于主导地位的、较为流行的项目进行介绍。按照认识的发展规律,通过前面两章的介绍我们已经对Linux开源网络世界有了全局的认识和了解,接下来就可以按兴趣或工作需要为导向,选择一个项目进行深入的钻研和分析。这些章节的内容也是希望能够尽量帮助读者形成对相应项目的比较细致的拓扑,并不求对所有实现细节详尽分析。
网络数据平面的性能开销复杂多样且彼此关联,第3章即对相关的优化技术与项目进行讨论,包括DPDK、OVS-DPDK、FD.IO等。
第4章讨论网络的控制面,并介绍主要开源SDN(软件定义网络)控制器,包括OpenDaylight与Tungsten Fabric等。
第5章与第6章分别讨论OpenStack与Kubernetes两种主要云平台中的网络支持。没有网络,任何虚拟机或者容器都将只是这个虚拟世界中的孤岛,不知道自己生存的价值。
第7章讨论网络世界中的大脑编排器。内容主要涵盖两种开源的编排器,包括ONAP与OPNFV。
感谢
作为英特尔的开源技术中心,参与各个Linux开源网络项目的开发与推广是再自然不过的事情。除了为各个开源项目的完善与稳定贡献更多的思考和代码,我们也希望能通过这本书让更多的人更快捷地融入Linux开源网络世界的大家庭。
如果没有Sandra Rivera(英特尔高级副总裁兼网络平台事业部总经理)、Imad Sousou(英特尔公司副总裁兼系统软件产品部总经理)、Mark Skarpness(英特尔系统软件产品部副总裁兼数据中心系统软件总经理)、Timmy Labatte(网络平台事业部副总裁兼软件工程总经理)、练丽萍(英特尔系统软件产品部网络与存储研发总监)、冯晓焰(英特尔系统软件产品部安卓系统工程研发总监)、周林(网络平台事业部中国区软件开发总监)、梁冰(英特尔系统软件产品部市场总监)、王庆(英特尔系统软件产品部网络与存储研发经理)的支持,这本书不可能完成,谨在此感谢他们的关怀与帮助。
也要感谢本书的编辑孙学瑛老师与宋亚东老师,从选题到最后的定稿,整个过程中,都给予我们无私的帮助和指导。
然后要感谢参与各章内容编写的各位同事,他们是郭瑞景、陆连浩、秦凯伦、徐琛杰、应若愚、丁亮、朱礼波、黄海滨、任桥伟、梁存铭、胡雪焜、胡嘉瑜、王潇、何少鹏、姚磊、倪红军、吴菁菁、陈兆彦。为了本书的顺利完成,他们付出了很多努力。
最后感谢所有对Linux开源网络技术抱有兴趣或从事各个Linux开源网络项目工作的人,没有你们的源码与大量技术资料,本书便会成为无源之水。
作 者
|
|