欢迎光临
免费的PDF电子书下载网站

云计算网络珠玑 PDF下载

编辑推荐

  《云计算网络珠玑》受到了业内众多专家一致好评:UCloud CTO 莫显峰、杜玉杰、《深度解析SDN:利益、战略、技术、实践》作者张卫峰、微软(中国)周博洋、Pica8杜林、Pica8杨勇涛、世纪互联常晓东、H3C叶航晖、华为赵博、网络从业者KkBLuE、网锐张立岗、绿盟科技刘文懋、孔令贤、时培昕、SDNAP.com 吴应辉、AWCloud马力、新浪司迎春、南京叠锶杨泽卫UnitedStack 创始人&;CEO 程辉、陈沙克联合力荐!

  《云计算网络珠玑》从网络的基本原理,常用技术、主流网络应用协议、交换的基本原理和Linux操作系统的网络实现等内容作为引入,SDN与OVS技术作为基础以及Neutron作为实践,由浅入深、从原理到实践地讲解了基础网络向SDN网络演进的过程。

  作者具有多年的底层网络研发经验,在传统网络通信到虚拟云计算的网络开发都有着丰富的实战经验,可谓“跨界高手”,本书中他将其积累的经验倾囊相授,授人以渔,非常难得。

  无论是想从头开始学习网络技术的小白,还是已经有一定基础的网络工程师,都可以从《云计算网络珠玑》中找到通往云计算数据中心网络的快速路径。

推荐购买:

云计算时代——本质、技术、创新、战略

实战Java虚拟机——JVM故障诊断与性能优化

大型分布式网站架构设计与实践

老码说编程之玩转Swift江湖

 ;

内容简介

  本书着眼于讲解云计算网络虚拟化中所用到的网络技术原理,重点展示以太网及TCP/IP网络中各种技术内在的关联脉络,包括从传统的MAC、IP、安全和QoS等到新兴的Trill、LISP、DPI和CDN等技术,从以太网交换机的二层转发、三层路由和Linux的TCP/IP协议栈到MAC-in-MAC、VXLAN和Neutron等新方案,以及从传统的数据中心三层架构到扁平化大二层和SDN/NFV等新架构。另外,本书对一些网络新技术和新方案(如SR-IOV、Openflow、DPDK、Serverswitch等)也进行了阐述,并讨论了在若干技术问题上网络的发展趋势。

  本书内容囊括了以太网和TCP/IP网络技术的每个方面,并选择大量的实例进行详细描述,其中每个技术点和实例都是经过精心选择的,既兼顾网络技术发展的顺序,也遵循TCP/IP网络四层从下到上的划分;另外,还从当前的技术热点上选取了SDN、Openflow、VXLAN等新兴技术的发展现状和发展趋势进行详细剖析,便于读者在逻辑思维上顺畅地理解,并向读者提供了一条快速掌握网络技术的学习途径。通览全书后,读者可以尽快建立自己在网络方面的技术知识体系。

作者简介

  李俊武,80后,北京邮电大学军事通信工程专业硕士;Sina微博@北京-小武,SDNAP群(QQ群号:279796875)群管理员@北京-小武;2010年毕业到现在一直专注网络技术的研发和方案架构设计工作;曾参与神州数码网络公司(DCN)首款全万兆交换机工作,后在百度系统部负责百度自研交换机的研发,现就职于易云捷迅科技(北京)有限公司,主要负责云计算中网络虚拟化研发和私有云网络方案架构工作;熟悉Broadcom的ESW系列交换芯片、Marvell的CAT芯片及Intel的FM系列交换芯片的转发流程,熟悉Linux内核及TCP/IP协议栈的实现机制,熟悉传统网络基础原理和SDN/NFV的架构思想,熟悉OpenStack中Neutron的上层结构和底层Plugin原理,喜欢并擅长解决网络研发中所遇到的技术难题,对各种新兴的网络技术、方案和产品有着浓厚狂热的兴趣,为朋友们错爱,送号“武神”;现在主要混迹于SDN和OpenStack两个技术圈子,常在技术Blog或SDNAP上分享技术观点。

云计算网络珠玑 PDF下载

目录

第1部分 网络基本原理
第1章 TCP/IP网络技术
1.1 信息网络
1.2 以太网技术
1.3 网络传输设备
1.4 MAC和VLAN
1.5 MAC-in-MAC
1.6 STP和Trill
1.7 IP技术
1.7.1 IP地址
1.7.2 IP报文格式简介
1.7.3 TCP和UDP
1.7.4 TCP与UDP检验和
1.8 DNS和DHCP
1.9 ICMP报文
1.10 ARP和RARP
1.11 路由协议
1.11.1 RIP和BGP
1.11.2 OSPF协议
1.12 NAT技术
1.13 隧道技术
1.14 MPLS和VPLS
1.15 QoS功能
1.16 网络安全和监控
1.17 LB、CDN和DPI
1.18 LISP和LLDP
1.19 网络架构
第2章以太网交换机
2.1 交换机转发流程
2.2 交换机端口处理
2.3 交换机二层转发
2.4 交换机三层转发
2.5 交换机ACL和QoS
2.5.1 ACL功能
2.5.2 QoS功能
2.6 交换机的虚拟化支持
2.7 交换机的CPU
第3章 Linux网络基础
3.1 网卡和数据包的收发
3.1.1 Linux网卡收包流程
3.1.2 多网卡Bonding
3.1.3 SR-IOV
3.1.4 DPDK
3.2 TUN/TAP
3.3 Linux Bridge和VLAN
3.4 TCP/IP协议栈
3.5 IPtables
3.6 QoS模块
3.7 Dnsmasq
第4章SDN网络架构
4.1 什么是SDN
4.2 OpenFlow与OpenvSwitch
4.2.1 OpenFlow简介
4.2.2 Open vSwitch简介
4.3 能为SDN做什么
第2部分 云计算及OpenStack的网络
第5章 OpenStack的网络
5.1 云计算及OpenStack
5.2 OpenStack的网络介绍
5.2.1 Nova-Network
5.2.2 Neutron网络
5.2.3 OpenStack存储网络
5.3 Neutron底层网络原理
5.3.1 Neutron组件的构成
5.3.2 Neutron网络的隔离
5.3.3 Neutron网络的互通
5.4 Neutron主要功能
5.4.1 互通与隔离功能
5.4.2 防火墙与安全组
5.4.3 LBaas和VPNaas
5.4.4 监控安全和数据中心互联
5.4.5 Neutron中的QoS功能
5.4.6 Neutron部署运维
5.5 VXLAN隔离环境通信实例详解
5.5.1 VXLAN报文解析
5.5.2 VXLAN通信流程
5.6 Neutron网络高级话题讨论
5.6.1 常见Neutron网络问题
5.6.2 Neutron网络性能
5.6.3 Neutron网络稳定性
5.6.4 Neutron在折翼
第6章 Neutron网络发展趋势
6.1 SDN的结合
6.2 硬件网络设备解决性能问题
6.3 安全和监控
6.4 虚拟网络中的路由协议
6.5 IaaS上的商业模式
6.6 云计算时代的终结
附录
附录A Open vSwitch基本命令
附录B 深入理解OpenStack 云计算VLANManager网络流的六种场景
附录C RDO配置文件网络部分--VLAN隔离
附录D VXLAN通信抓包实例
参考文献

媒体评论

  《云计算网络珠玑》这本书从网络的基本原理,常用技术、主流网络应用协议、交换的基本原理和Linux操作系统的网络实现等内容作为引入,SDN与OVS技术作为基础以及Neutron作为实践,由浅入深、从原理到实践地讲解了基础网络向SDN网络演进的过程,是网络工作者以及SDN软件工作者一本不可多得的启蒙性和工具性书籍。
  ——UCloudCTO莫显峰
  《云计算网络珠玑》这本书从网络TCP/IP技术基本原理开始,陆续讲到了SDN、云计算及OpenStack的网络,我们不仅能从原理中系统地梳理相关知识,而且也能学习到网络技术的发展趋势,尤其是其中大量篇幅涉及OpenStack网络的相关知识,对于学习和掌握OpenStack也有很大帮助,感谢作者的辛勤付出,也希望读者能从中学习和了解当前网络发展的*状态
  ——杜玉杰(新浪微博@ben杜玉杰)
  经常听人说,OpenStack平台中最复杂最难处理的就是网络问题。之所以会这样,除了OpenStackNeutron确实存在一些不足之外,一个很重要的原因就是从事OpenStack研发和部署的工程师中,很多人对网络不了解,正所谓难者不会,会者不难。而李俊武的这本书可谓是及时雨,根据自己多年的底层网络研发经验,深入剖析了OpenStack网络架构,实乃OpenStack网络从业者必读书籍。
  ——《深度解析SDN:利益、战略、技术、实践》作者,盛科网络SDN云计算研发总监张卫峰(新浪微博@盛科张卫峰)
  小5决定写这本书的时候,曾经让我看过初稿,其中对传统网络的介绍是我很高兴看到的,这实际上也给想走上这条路的程序员们一个了解网络知识体系的平台,让他们可以创造出更好的上层应用。
  ——微软(中国)云计算解决方案架构师周博洋(花名学霸,新浪微博@种地的天使?重生)
  今天有机会为俊武的新作《云计算网络珠玑》写推荐序也让我感到新一代的工程师不再是“自学自乐”,他们更希望能够分享知识,希望把自己的经验积累传播给更多的同路者。衷心希望有更多的学有所成者开始行动,像俊武一样为网络行业的生态繁荣贡献自己的力量!
  ——Pica8公司创始人兼工程副总裁杜林
  今天很高兴看到《云计算网络珠玑》一书的出版,在众多的SDN相关书籍中,我认为俊武的*力作是我心目当中最理想的教学材料。从硬件平台到软件架构,从网络基础知识到*的OpenStack应用,这本来自一线工程师的著作很好地解答了同学们关于SDN的种种问题。
  ——Pica8公司中国区业务发展总监杨勇涛
  从本书的章节设计就可以看出作者的良苦用心,首先是网络基础知识的讲解,然后从硬件层面和操作系统层面分别进行讲解,最后拔高到包括SDN、Openflow、OpenVswtich等业界新技术的介绍。当然理论离不开实践,紧接着作者就以OpenStack中的Neutron为例详细阐述了云计算网络虚拟化的功能点和底层实现,这部分可以说正是作者多年研究之所在。
  ——曾任世云计算平台CloudEx的研发经理,现在中国数码集团旗下北京新网数码信息技术有限公司(www.xinnet.com)云计算事业部任高级产品运营经理常晓东
  没有对云计算的热爱,没有对SDN、NFV、Overlay等新网络技术的深度理解,小武就不会有这本书。新IT时代新技术层出不穷,但追本溯源,唯有网络是上层应用的基础。小武这本书来源于他从业以来的经验积累,通过实际出发帮助网络爱好者打好这个基础,这是很多同类书籍未必能做到的,在这里分享给大家。
  ——H3C网络及安全产品部副部长叶航晖(新浪微博@叶航晖)
  SDN网络为沉寂已久的网络世界带来了变革的机会,对网络从业人员的知识体系结构也提出了更高的要求,产业界非常需要大量的专业书籍来加快完善从业人员的知识体系。本书是为数不多的一本专注于SDN网络开源技术的专业书籍,对OpenStack、Openflow等开源技术进行了深入的讲解,同时对网络设备的转发流程做了深入的讲解,很好地兼顾了网络工程师和软件工程师的需求,也适合从事网络售前、营销工作的专业人士阅读。
  ——华为公司售前工程师赵博(新浪微博@胖猴信徒赵博)
  俊武从真实的网络场景出发,根据自身经验,把SDN的技术逐一梳理,从软件到硬件,从系统到网络,可谓面面俱到,可以让读者看到SDN的“全貌”,所以是一本不可多得的学习指南。恰恰也是因为俊武本身的“跨界”能力和经验,才可以使得这本书有别于其他纯软件或纯网络的技术书籍。该书文字言简意赅,浅显易懂,图文并茂,有理有据,在阅读的过程中,带给我们一种技术上的“实在”,相信一定会给致力于SDN产业的从业人员带来帮助。
  ——网络从业者KkBLuE(新浪微博@KkBLuE知行合一)
  市面上涉及网络技术相关的书不一而足。从最基础的TCP/IP到最流行的SDN,包括当下最热的OpenStack中的网络模块,俊武的这本书都做了深入的分析。xNet(网锐)公司是一家在南京注册的开放网络和SDN/NFV方案提供商,我会把这本书推荐给我们公司的员工,它应该能帮助各个级别的读者快速理解和认识各种网络技术。
  ——xNet(网锐)公司联合创始人张立岗
  这本书循序渐进地阐述了云网络实践所需的基本概念,着重介绍了围绕OpenStack平台Neutron组件的研究探索,此举势必会促进业界深化对云计算网络的认知,推动SDN和NFV的落地实施。作者将其积累的经验倾囊相授,授人以渔,推荐大家一阅!
  ——江苏省未来网络创新研究院SDNLAB平台负责人魏亮)
  这本书从网络基础入手,进而介绍以OpenStackNeutron网络虚拟化,深入浅出。第一部分介绍了传统网络的架构、协议和实现,以及相关的网络技术,这些技术往往会被用于网络虚拟化的实现中,如隧道、VLAN等部分有助于读者理解Neutron中节点在Overlay网络如何连接,Iptables有助于理解Neutron的安全组和FWaaS等机制,openvswitch和SDN部分有助于理解OpenStack如何和SDN控制器对接。作者俊武对Neutron有很深入的研究,他针对Neutron高级话题的讨论和Neutron发展的分析,都非常值得相关从业人员思考和讨论。
  ——绿盟科技研究院资深研究员博士刘文懋(新浪微博@marvel)
  记得我在2012年最开始研究OpenStack时,网络基础较差,而网络又是OpenStack乃至云计算应用中的重要组成部分,因此在对Neutron项目的学习中花费了相当大的精力。route,iptables,namespace,OpenvSwitch,Vxlan等光这些命令、工具和概念就足以让人眼花缭乱。虽然自己也在博客中记录了一些,但终归是不够系统,不够专业。直到看到俊武这本书,我在想,我是不是该删掉那些粗浅的博客了……
  ——孔令贤(新浪微博@孔令贤HW)
  这本书是一本非常优秀的计算机网络普及读物,从计算机网络的初期发展一直到新的云计算数据中心的新生态环境,以及OpenStack下各种网络配置和实现方式,都给予了非常深入的讲解,无论是想从头开始学习网络技术的小白,还是已经有一定基础的网络工程师,都可以从中找到通往云计算数据中心网络的快速路径。
  ——北京寄云鼎城科技有限公司(寄云科技)总经理时培昕(新浪微博@时培昕)
  这本书有利于做云计算开发的,尤其是做OpenStack开发的了解基本的网络知识;同时有利于做传统网络通信的同学了解基本的SDN及云平台OpenStack的网络基本情况,因此我推荐给大家!
  本人与这本书的作者有过多次深入的交流,小武根据自身丰富的从业经验,为读者展现了云计算网络里的世界,既涵盖了传统以太网技术,也详细分析了SDN、网络虚拟化等新兴技术,书中亦不乏作者的真知灼见,值得推荐。
  ——AWCloud系统架构师马力
  今天我看到俊武的《云计算网络珠玑》一书心头一热啊,该书从理论基础到实际开发详细地阐述了这几年网工们是怎么探索云计算的虚拟化之路的,是怎么从深不可测的网络盒子走到服务器操作系统的……
  ——新浪网技术(中国)有限公司基础架构部网络资深架构师司迎春(新浪微博@司迎春-Winters)
  经常能看到传统网络工程师的困惑,云计算和SDN来了,该怎么办?一方面是在继续学习的道路上到底应该怎样抉择?另一方面是SDN给程序员打开了一扇进军网络领域的门,对于他们来说,又需要补充哪些网络基础知识?这本书的内容给我们提供了很好的指引,相信能解答心中的困惑。
  ——《零存整取NetFPGA开发指南》作者,SDN初创公司南京叠锶联合创始人杨泽卫(新浪微博@杨泽卫-MeshSr)
  小武同学的《云计算网络珠玑》一书详细介绍了SDN网络所依赖的一些基本技术和原理,并以OpenStackNeutron为例,深入浅出地介绍了如何用Linux网络技术实现一个大规模的SDN网络,值得网络初学者和从业人员一读。
  ——UnitedStack创始人&;CEO程辉(新浪微博@程辉)
  由于网络是一个专业性和实践性非常强的技术领域,很难从小白入手快速提升成专家。而俊武的这本书,从基本的TCP/IP以太网原理开始,用其特有的理解思路,讲述了SDN/NFV、Neutron等相关知识以及它们之间的内在关联,并且对很多高级话题的讨论俊武也发表了自己的观点,同样也令该领域的高手们深思。想学习网络的初学者和负责Neutron的研发者,建议如果有问题可以先参阅一下这本书。
  ——陈沙克(新浪微博@陈沙克)

前沿

前 言
写作缘由
记得刚毕业那年,找工作的个人简历上写着“精通计算机网络”,而实际上连IP报文头部有哪些字段都说不上来,更别说能回答二层转发和三层路由的细节区别等问题。后来虽然有幸进入网络领域从事研发工作,但是总感觉一直对网络还是没有太深入的理解。最开始从事的工作是交换机驱动开发,一年前工作开始转向了云计算网络领域。在这近五年的时间里,我本着学东西就要弄清楚其中所有原理的原则,逐渐积累起自己对网络技术的系统性认识。随着工作经验的积累,参与了业界的很多交流活动,在各种机缘下有幸认识了很多网络领域的专家和大拿,让我对网络的理解更提升了一个层次,尤其是通过SDNAP的QQ群认识的“网友们”。
在交流的过程中,结合自身的不足也发现了一些问题,比如计算机网络领域是极其博大精深的,有着大量的规范和协议,尤其是现在网络虚拟化、SDN/NFV技术的出现,更是让很多初学者摸不清头绪,无法抓住理解的要领;还有很多公司的系统工程师兼负着网络工程师的工作,在这种情况下若不深入理解网络设备(比如交换机)底层的工作机制,其设计的网络架构将存在很大的潜在风险。我本人也一直在用“LINUX BRIDGE与二层交换芯片处理报文的流程上有何不同”这个问题,来区分应聘者的背景是系统工程师还是网络工程师。如何快速学习网络知识,如何快速在网络领域提升技术能力,面对众多新兴的网络技术如VXLAN、LISP等该如何快速理解并应用?面对如此多的问题,于是我萌生了一个念头,何不将自己对传统以太网络、网络虚拟化、SDN/NFV的相关技术的积累和理解进行汇总以串联起来?既方便自己查阅,也能为网络技术的传播尽自己的绵薄之力。
最开始想写这本书的时候是我参加工作的第三年初,写了一段便感觉自己没有足够的积累让自己在写作中选择好一条写作的主线。直到开始从事云计算网络研发,心中萌生的写书念头再次袭来,而这次想法也更加清晰,于是便开始了整理材料和规整思路。因为还要做好公司的工作任务,所以只能每天早晨上班前和晚上下班回家后写作稿件,最终历经三个多月的时间,终于成稿。
本书内容
本书内容涉及的网络技术点比较广泛,虽然主要谈及的还是以太网技术,但仍然无法将所有相关技术列举完全;并且根据云计算网络的主线,技术点阐述也有详有略。而网络技术发展也极为迅速,书稿写作时其中讨论的问题,可能在书稿出版时已经有了新技术对其进行了很好的解决。如果将来有精力希望可以对其中的内容进行补充完善,必然会再结合自己的新理解,融合到本书的第二版里,读者也可随时在我的博客上查阅相关更新。希望本书能抛砖引玉,为读者在自己的网络之路上的探索起到一定的帮助作用。
信息技术加快了人类社会的信息化发展进程,互联网尤其是移动互联网的出现为人类分享和获取信息提供了新的方式;网络技术的发展历程中,出现了很多技术标准或产品方案,尤其是以太网技术和TCP/IP协议的出现,以及太网交换机和路由器等网络设备商的出现,使得网络设备开始标准化大批量生产使用,从而让信息技术的服务受众变得平民化。信息社会的需求不断变化,需要网络技术不断创新,云计算中的网络虚拟化很快成为网络技术的焦点,而SDN/NFV技术的出现更是在网络界掀起了一场技术革命。
本书共分为6章,各章的主要内容如下。
第1章主要介绍网络基础知识。既有传统的MAC、VLAN、ARP、TCP/IP、路由协议、NAT、MPLS、QoS、CDN、安全监控等技术的介绍,也有Mac-in-Mac、Trill、DPI、LISP等新兴技术的讲解,还有负载均衡和数据中心扁平化二层等方面相关的架构知识。让读者对后续网络技术的学习建立有一个良好的基础。
第2章综合了商业交换芯片的网络转发流程的内容,分别详细介绍了交换芯片端口处理、二层转发、三层转发、ACL/QOS、虚拟化和交换机CPU的详细介绍。让没有接触过交换机研发的读者对神秘的交换机黑盒子在逻辑上有一个深入理解。
第3章则选择当今比较流行的服务器操作系统Linux中的TCP/IP协议栈来介绍协议栈的功能技术点,还对网络虚拟化常用的Linux Bridge、TUN/TAP、IPtables、DPDK和Dnsmasq进行了介绍和归纳总结。
第4章主要集中于SDN和Openflow及相关衍生的一些技术,包括SDN的部分控制器和OpenVswtich等。让读者体会一览新技术的快感。
第5章是本书的重点,在前面介绍网络基础知识的基础上,以Openstack中的Neutron为例详细阐述了云计算网络虚拟化的功能点和底层实现,并以VXLAN隔离环境为例分析Neutron底层通信流程和常见问题的解决方法。另外,本章还关注以前Nova-network技术、热门的ML2插件和新的J版的DVR技术,并进行了一定深度的介绍和探讨。
第6章则是对Openstack中云计算网络技术Neutron的一些高级话题的讨论,包括SDN技术的结合、硬件设备研发来提高网络性能、云计算的商业模式,以及云计算的发展个人思考等。
本书读者
本书面向的读者对象面较广,可以是没有任何网络基础、但想学习网络技术的零基础人员,也可以是有网络基础知识且想从事云计算网络研发的转型开发者,还可以是想深层理解网络底层细节的云计算网络上层开发者。另外,本书也为具备网络基础知识和云计算网络技能的网络技术专家准备了SDN/NFV和云计算网络若干问题的研究讨论。
致谢
本书在创作过程中得到了许多朋友的鼓励和帮助,包括高飞、张建勋、周博洋、马力和贾豪杰等人的技术协助,SDNAP社区负责人吴应辉的推荐,以及为本书写推荐的各位专家的认可,在此俊武表示衷心的感谢!
另外非常感谢电子工业出版社的董英编辑,没有她的辛勤付出,可以说本书很难能够出版!并且在审阅过程中,她能够“容忍”我多次在提交稿件后依然继续修改,导致已经编排整齐的文档又被我弄乱。
最后感谢我的所有家人们,包括我的父母和岳父母等,尤其是我的妻子王青青,在本书的几个月写作过程中,没有足够的时间来陪伴你;如果没有妻子一直的鼓励和默默的支持,可以说我不可能有足够的耐心和毅力来完成本书,谨以此来表示对你永远的爱!
因笔者水平有限,本书难免存在错漏,恳请读者批评、指正。

李俊武
2014年圣诞夜于北京

免费在线读

  5.2.2Neutron网络
  Neutron是OpenStack的网络组件,通过Neutron的CLI或者Horizon的页面调用RestfulAPI配置了OpenStack某个网络功能后,就会调用Neutron的Python代码的API,将配置信息下发到底层网络;比如建立VM连接某个私有网络时,当Plugin是OpenvSwitch的情况下则生成对应的OpenvSwitch的规则命令下发到底层OpenvSwitch上,并将相关的VM的虚拟网卡和对应网桥等网络设备等进行互联,底层就提供了相应的网络转发功能的连通链路(如果支持的话则正常下发,有的功能不支持可能也不报错,比如H版对IPv6转发的支持)。这些网络功能包括二层VLAN或VXLAN等租户之间的隔离、FloatingIP之间的三层转发和NAT转换、防火墙、VPN和负载均衡等,根据官网介绍中还有IDS和DC互联等功能。
  图5-3是OpenStack平台上用Neutron网络建立的一个网络拓扑图,如果初学者能配置出如图5-3中的网络拓扑且VM都能访问外网和租户间相互隔离,说明对Neutron的底层网络技术有了入门级的掌握。如果用OpenvSwitch作为Plugin的话需要注意,里面的一个虚拟路由器并不是直接对应创建一个OpenvSwitch,很有迷惑性,在底层其仅仅是在OpenvSwitch上创建了一个该租户VLAN的端口,配置添加了一个三层接口地址,并且新建了一对和这个网段相关联的虚拟Port。另外对于VM直接挂在公网有时候会有需求(即如图5-3中VMA01-CA、VMA02-CA和VMA03-CB等连接网络的方式),这种网络连接方式通过非常少的底层配置,在任意拓扑或隔离技术下都可以很容易实现。
  OpenvSwitch是Nicira(后被VMWare于2012年收购)一个开源Apache2.0的虚拟交换机软件,最初虚拟机之间的隔离是采用Nova-network,其底层采用的是LinuxBridge技术,虚拟网络的组建和配置非常的不灵活而且很多情况下网络配置信息无法模板化,这些缺陷导致使用Nova-network是无法搭建复杂的虚拟网络的;并且在Nova-network下对于虚拟网络的调试、监控、故障定位都有一些不方便的情况;OpenvSwitch的出现解决了上述这些问题,因为OpenvSwitch支持QoS功能、镜像功能、CFM功能、netFlow功能等特性,而且它还可以支持OpenFlow协议以比较容易的方式和某些SDN控制器的网络融合;OpenvSwitch里最重要的是采用了一套用高可移植性C语言开发的开源实现,导致其在网络虚拟化领域里得到了极大的重视,OpenvSwitch现已经可以在FreeBSD、Windows甚至在non-POSIX等嵌入式平台里运行了。
  相对于盒式交换机整个系统来说,Neutron其实是起着Openstack网络系统中管理平台的作用,其提供配置命令及参数检查的API,并把网络功能用一种业务上的逻辑组织起来;但是底层的Plugin最终无论是用OpenvSwitch还是硬件交换机来提高稳定性和性能,Neutron自身并不提供任何网络功能,它只是一个负责为底层网络设备向上提供接口的空架子。Neutron的网络功能大部分是Plugin提供的,除了DHCP和L3Agent等的某些功能。
  Neutron将网络按照三层交换机的概念有以下几个重要的部分。
  ?Network:相当于三层交换机上根据VLAN创建的一个三层网络接口,该接口范围内对应一个二层隔离网络,属于同一个network中的VM处于同一个广播域内,一个network类似于现实世界中的一个局域网。
  ?Subnet:相当于三层交换机创建了一个三层接口的地址,属于一个subnet中的VM处于同一个IP段范围内,具有同样的网络掩码,并且具有相同的网络默认网关。
  ?Port:相当于三层交换机的一个物理端口,但是这个端口大都有一个MAC地址,可能没有IP地址或者有一个地址,虽然数据库可能会指定一个IP地址,但现实中这个端口由于各种环境因素或网络链路连通性异常的原因,可能会导致该端口不一定能从其相应网段的Dnsmasq进程中获取到该网段中的IP地址。
  Neutron里有两种类型的Plugin:CorePlugin和ServicePlugin。CorePlugin完成二层网络隔离的相关配置和实现互通性的VM的报文转发,现在大约有近20种,属于Neutron中必须配置的网络选项,使用时只能选择一个;另一种ServicePlugin主要是实现三层网络功能及三层以上的业务应用功能,比如Meter/Router/FWaas/LBaas/VPNaas等底层所用的PluginAgent;每种应用的底层ServicePlugin也可能会有多种,和CorePlugin一样,基本只能选择其中的一个来使用。Neutron支持的CorePlugin有以下种类:
  OpenvSwitchPlugin
  CiscoUCS/NexusPlugin
  LinuxBridgePlugin
  ModularLayer2Plugin
  NiciraNetworkVirtualizationPlatform(NVP)Plugin
  RyuOpenFlowControllerPlugin
  NECOpenFlowPlugin
  BigSwitchControllerPlugin
  CloudbaseHyper-VPlugin
  MidoNetPlugin
  BrocadeNeutronPluginBrocadeNeutronPlugin
  PLUMgridPlugin
  MellanoxNeutronPluginMellanoxNeutronPlugin
  EmbraneNeutronPlugin
  还有一些非官方维护的:
  OpenContrailPlugin
  ExtremeNetworksPlugin
  RuijieNetworksPlugin
  JuniperNetworksNeutronPlugin
  Neutron支持如此众多种类的CorePlugin,那么开发或者部署过程中如何选择哪种Plugin就成了技术或方案上的难题,每种Plugin都有其优势和劣势,但是如果要每种Plugin都部署环境来测试对比下相关性能数据,这种做法几乎是不太可能的,因为除去时间和精力上的问题,还有一个原因就是测试方案还需要大量投资到服务器和相关网络设备的硬件上,这个对于调研工作者来说是一笔不小的花费;对于实际中的研发工作的选择来讲,就有一些因素可以参考,比如Plugin的被采纳的使用情况、对网络功能的支持程度、实际部署中的容易程度和后续实施方案中是否会被特定厂家设备所绑定等因素。
  对于这些Plugin的在实际使用部署中的具体汇总情况,会对调研者选择使用哪一种Plugin有一定的参考价值,因为当很多云计算研发企业或云计算项目实施方案中,某种Plugin被大量使用的时候,使用者共同积累的使用经验会比较多;这时候使用者一旦遇到问题,可以通过网络社区或技术交流等途径及时得到解决问题的答案或技术方案;另外使用者对该种Plugin的使用时间越久,被纠正的缺陷和优化的技术点就会越多,那么该CorePlugin也就越成熟,并更适用于实际的部署方案的需求;在里有一些有意思的统计信息,比如不同用户对不同Plugin的选择大致比例如图5-4所示。
  通过图5-4可以看出在实际部署和调研中Openstack的Neutron组件OpenvVwich是被使用最多的CorePlugin,其次是LinuxBridge以其简洁高效赢得了大批量的客户,这两个Plugin赢得约市场上70%的用户;笔者觉得主要原因是两者都是用开源软件实现的,因为软件代码的开源是一个趋势,在实施中投资会相对节省,尤其是针对某些客户已有用于部署云计算的服务器设备和网络设备的情况下,这种方案更容易被接受;从这一点上也体现出网络研发相关软件的开源也越来越多的趋势,其中甚至盛科的交换芯片SDK源代码也已经开源,这个是网络设备研发界非常巨大的进步;并且云私有云计算的客户和云计算网络技术开发者的方案都不太想被一些厂商的网络设备所绑定,所以白牌交换机在云计算网络里将继续会发挥优势。另外一种需要被提及的Plugin是ML2(ModularLayer2),从Havana开始支持,其出发点是考虑现实中这些Plugin所对应的设备,在现有的数据中心物理网络中的使用是可以同时存在的情况,所以其目的是想实现原来各种Plugin同时协调工作,并且通过非常少的初始化和持续努力且很容易地添加对新Plugin的支持,具有良好的扩展性支持多种Agent实现多种隔离技术,又可为L3Agent的扩展整合提供一种ServicePlugin的机制;这种机制为Neutron多种隔离技术并存或从VLAN扩展到VXLAN提供了思路。ML2有两个重要的概念:TypeDrivers和MechanismDrivers,TypeDrivers是从Neutron的网络拓扑结构来为用户分配网络、提供网络验证、管理可用网络类型和维护网络的相应网络状态,具体来讲就是决定了Neutron网络的拓扑形式,比如可以是Local、FLAT、VLAN、GRE和VXLAN等几种网络类型。MechanismDrivers主要靠CorePlugin来实现,用于网络工作机制的管理和底层网络隔离的实现;支持的主要有OpenvSwitchAgent、LinuxBridgeAgent、Hyper-VAgent、L2Population、CiscoNexus和Arista等。后续Juno发布的DVR即是基于ML2的OpenvSwitch这种Plugin来实现。ML2可以有效提高网络的可靠性和性能,可以预见是未来生产环境中非常重要的一个特性,目前来看ML2Plugin是有前景的Plugin,但是其在实际部署中对云计算厂商来将带来了一定的复杂度,实际业务有这种需求的情况可能开始于Neutron网络的隔离技术的升级服务。
  Neutron中各种Plugin的性能和稳定性如何?这个暂时没看到确切的比对测试数据,但是毋庸置疑的是,硬件的Plugin使用方式合理的话应比软件方式的Plugin性能上有所提升,毕竟购买硬件设备是有相应成本上的投资。仅从LinuxBridge和OpenvSwitch两种软件方式的Plugin上来说,肯定也会有所区别,因为毕竟不同的技术环境里,数据报文虚拟机和物理服务器转发出去的流程有非常大的区别,而且OpenvSwitch自身的隔离方式不同(比如用VLAN、NVGRE或VXLAN等),其数据报文传输性能的测试结论也肯定不尽相同,仅从性能上来说LinuxBridge应更好一些,但是从功能丰富性来说OpenvSwitch是趋势。
  至于NeutronPlugin是路由器还是交换机,这个也无法明确,确切来说是看所用的Plugin以及其能提供的功能,毕竟Neutron有L2Agent和L3Agent,这些功能对于底层的Plugin需要相互协作才能完成二层转发和三层路由;但是选择的Plugin满足自己的需求才是最重要的,至于工作在几层似乎是个多余的问题,应该要问的是自己的知识储备和需求是什么,两者的结合点在哪里。

云计算网络珠玑 pdf下载声明

本pdf资料下载仅供个人学习和研究使用,不能用于商业用途,请在下载后24小时内删除。如果喜欢,请购买正版

pdf下载地址

版权归出版社和作者所有,下载链接已删除。如果喜欢,请购买正版!

链接地址:云计算网络珠玑