搜索
高级检索
高级搜索
书       名 :
著       者 :
出  版  社 :
I  S  B  N:
文献来源:
出版时间 :
软件定义网络:SDN与OpenFlow解析
0.00    
图书来源: 浙江图书馆(由图书馆配书)
  • 配送范围:
    全国(除港澳台地区)
  • ISBN:
    9787115351470
  • 作      者:
    (美)Thomas D. Nadeau,(美)Ken Gray著
  • 出 版 社 :
    人民邮电出版社
  • 出版日期:
    2014
收藏
编辑推荐
  

  · 迄今为止SDN研究与实践领域重要的著作。一线专家多年厚积薄发的力作,网络可编程技术无可替代的专业解读,全面覆盖SDN全新定义、协议、标准和实践
  · ONF全球特邀研究顾问、中国SDN与开放式网络专委会副主任、贝尔实验室博士后、清华大学教授毕军倾情主译,思科高级顾问工程师刘军、思科中国技术总监周超联袂审校
  · 工业和信息化部电信研究院科技委主任蒋林涛,思科总架构师、首席技术官David Ward拨冗为本书中文版作序
  · 中国工程院院士、中国联通科技委主任刘韵洁,携手国内SDN/NFV领域顶端专家学者和思科、瞻博、VMware、博通、中兴等工业界企业领军人物近30人合力推荐
  思科全球副总裁、大中华区CTO江朝晖:“本书实为迄今为止该领域为专业而且全面的SDN 专著。”
  瞻博大中国区技术总监、CTO王卫:“本书结合了作者大量的实际工作和行业经验,给大家非常全面地介绍了主要的SDN 理念和实践。”
  清华大学电子工程系教授李星:“我推荐阅读这本书,更希望读者能够把解决实际问题贯穿到阅读的从始至终。”
  浙江大学教授吴春明:“本书的作者和译者在网络体系架构的研究领域有着很深的造诣,通过浅显易懂的语言对SDN 技术进行了深入的剖析,对网络工程及科研人员来说都是一本难得的学习与参考用书。”

展开
作者简介

  Thomas D. Nadeau,目前在博科公司任杰出工程师,曾任瞻博公司网络平台系统部首席技术专家办公室的杰出工程师。
  Ken Gray,目前在思科公司担任高级总监,曾负责瞻博公司网络平台系统部门的技术战略与创新。

 


  译者简介
  毕军,毕业于清华大学计算机系,获学士、硕士、博士学位。曾赴美留学,美国贝尔实验室博士后、研究员。现任清华大学网络科学与网络空间研究院研究室主任、教授、博导。主要从事新型互联网体系结构和协议的研究和教学工作。发表SCI/EI收录的学术论文百余篇,获国家发明专利授权十余项,颁布或获批RFC国际标准四项。入选教育部“新世纪优秀人才”,多次获国家和部级科技奖励。国家863项目“未来网络体系结构和创新环境”首席专家。任国际学术会议主席十余次,亚洲未来互联网学会共同主席,中美学术网未来互联网工作组共同主席,应ONF邀请担任全球十三位研究顾问之一。中国SDN与开放式网络专委会常务副主任。

 


  单业,计算机专业硕士,曾供职于多家软件公司从事软件开发工作,目前工作于厦门。

 


  张绍宇,上海交通大学计算机系研究生,本科毕业于浙江大学,目前在上海交通大学嵌入式与普适计算中心(EPCC)进行网络与分布式系统方面的学习。

 


    姚广。本科毕业于清华大学计算机系。2012年在清华大学计算机系获得博士学位之后,在清华大学网络科学与网络空间研究院从事博士后研究。主要研究方向包括SDN、复杂网络等。

 


  审校者简介
  刘军,网络规划设计师,思科高级顾问工程师,从业20年。参与多个国内网络行业标准编写制定工作,拥有国际专利和4个CCIE证书。熟悉网络硬件架构和芯片技术,专注于路由交换、数据中心、SDN等技术。

 


  周超,资深网络架构师,思科中国技术总监,长期在硅谷网络一线工作。参与制定多个国际国内网络标准,拥有多项国际国内专利。涉足广泛的网络技术领域,包括MPLS、快速路由转换、流量工程、数据中心、SDN等。

展开
内容介绍

  《软件定义网络:SDN与OpenFlow解析》是关于SND 的专业指南,全面介绍了SDN 的定义、协议、标准及应用,讨论了当前OpenFlow 模型及集中式网络控制、数据面生成、商业及开源控制器的结构与能力、赋予网络可编程能力的技术、数据中心由桌面向分布式演进的过程、网络功能可视化及服务链的关联、构建和维护SDN 拓扑,以及理想的SDN 框架等。
  读者通过本书可以了解SDN(软件定义网络、软件驱动网络或网络可编程性)的全新定义、协议和标准,理解如何构建一种新型的网络,实现通过软件控制应用程序与底层设施之间的双向通信。
  本书内容与厂商无关,它展示了SDN的应用案例,包括带宽调度和操控、输入流量和触发的动作,以及其他一些围绕大数据、数据中心叠加及网络功能虚拟化的案例。
  * 探索OpenFlow模型和集中式网络控制的全新进展
  * 深入分布式和集中式控制,以及数据面的生成
  * 考察各种商业及开源控制器的结构和功能
  * 学习当前的网络可编程性技术
  * 探寻现代数据中心由桌面中心向高度分布模型演进的过程
  * 将网络功能虚拟化与服务链的实例联系起来
  * 构建和维护SDN的网络拓扑
  * 研讨针对控制器、应用程序和生态系统的理想SDN框架
  本书适合网络相关的从业者、管理者、研究者、投资者阅读。

展开
精彩书评

  ★本书详尽、客观地介绍了SDN领域的全新进展,所有想认真研究SDN的人必读。
  ——Michael Beesley
  Sutterhill风险投资公司常驻工程师
  瞻博公司网络平台系统部前首席技术官

  ★两位作者尽力展示SDN的方方面面,将各方面知识结合起来形成了SDN的宏伟图景。
  ——David Ward
  思科公司总架构师

  ★业界对SDN是什么以及为什么SDN如此重要一直存在很大困惑,本书以令人耳目一新的方式对SDN进行全面剖析,使读者对业界的SDN炒作有清醒的认识。
  ——Mike Bushong
  Plexxi公司市场营销副总裁

  ★互联网不断超出预期的快速发展,使其在扩展性、安全性等方面的挑战日益严重。随着OTT等业务的迅猛增长,整个互联网的生态环境也将面临新的挑战,而网络技术的发展远远跟不上业务发展的需求。SDN技术的提出代表业界对网络变革的期盼,SDN的很多设计理念无疑是先进的,但目前还没有能解决网络中的很多问题。但它就像举起的一面旗帜,吹响了号角,号召大家共同关心、研究网络中的问题,并研究如何满足未来网络发展的需要。所以认真学习、了解国外在SDN方面的研究成果及国外同行思考问题的方式无疑对我们将有很大的帮助。
  ——刘韵洁
  中国工程院院士
  中国联通科技委主任

  ★列宁说过“没有革命的理论,就没有革命的行动”,目前网络的发展日新月异,具有极大的机会和挑战性,迫切需要相关的理论和模型指导,而软件定义的网络(SDN)应运而生。我推荐阅读这本书,更希望读者能够把解决实际问题贯穿到阅读的从始至终。如果在这个过程中发现SDN可以解决你所面临的在网络建设、运行、对应用的支持和商业模型上的核心问题,那就达到了我推荐这本书的目的。
  ——李星
  清华大学电子工程系教授、清华大学网络科学与网络空间研究院副主任
  中国教育和科研计算机网(CERNET)网络中心副主任
  中国计算机学会互联网专业委员会主任
  国际互联网体系结构委员会(IAB)委员

  ★SDN即软件定义网络,催生了新型网络体系结构的思维模式,其核心思想是通过硬件设备的标准化、网络层面的控制转发分离、对设备的抽象封装来增强网络可编程能力。通过网络操作系统对底层网络设备的抽象,为上层应用提供统一的管理视图和编程接口。进而,基于网络操作系统,用户可以开发各种网络应用程序,通过软件来定义网络的业务处理逻辑,实现高效灵活的管控。尽管近年来SDN得到了业界的广泛关注,但对其的争论与困惑也一直不绝于耳。本书的作者和译者在网络体系架构的研究领域有着很深的造诣,通过浅显易懂的语言对SDN技术进行了深入的剖析,对网络工程及科研人员来说都是一本难得的学习与参考用书。
  ——吴春明
  浙江大学教授、博士生导师

  ★SDN技术带来的变革刚刚开始,云计算和数据中心将迎来新的春天,互联网传奇在基础网络中延续。本书系统性地对SDN技术,尤其是SDN应用案例做了深入的解读,对业内人士来说,是不可多得的一次学习机会。
  ——刘东
  下一代互联网关键技术和评测工程研究中心主任
  全球SDN测试认证中心(ONF授权OpenFlow认证实验室)主席
  天地互连董事长

  ★SDN是数通行业多年来难得一见的“大潮”,吸引了学术界人士、运营商、客户、新老厂家等纷纷加入“淘金浪潮”。全球领先的IT技术书籍出版商O’Reily携手本书作者,硅谷一线的SDN专家,为读者拨开迷雾,全面阐述了SDN的前世今生、发展前景。本书实为迄今为止该领域为专业而且全面的SDN专著。
  ——江朝晖
  思科全球副总裁,大中华区CTO

  ★如果说SDN是一个巨大的变革,也许有些夸大,但它应该是近年来网络发展的一个重要驱动:从“高速公路说”到“以应用为中心”,也确实为以前只有少数网络人独享的“网络快乐”打开了一扇更透亮的窗,让网络专家及更多非网络专业人士一起来思考“那水面下到底是什么暗流在涌动”。不同厂家的反应,业界的不同观点——是一场新的洗牌,还是传统的弱肉强食的再现?至少从开启这本书开始,让我们一起思考……
  ——苏哲
  思科大中华区副总裁、企业部技术总监、CTO

  ★刚在美国硅谷落幕的ONF2014峰会上,AT&T全球高级执行副总裁John Donovan为与会者讲解了AT&T全面启动SDN的计划。有人问AT&T为什么要大动干戈采用SDN理念来驱动公司的转型和创新?Donavan是这样回答的:“势不可挡”!AT&T都已全面启动,从事技术工作的同仁准备好了吗?本书作者Nadeau和Gray都有资深的AT&T网络经验,由此,SDN的诠释也就更精彩!
  ——周明
  思科大中华区副总裁、转型事业部技术总监、CTO

展开
精彩书摘
  第1章 引言
  直到几年前,存储、计算和网络资源在物理上和运营上还是刻意分开的。甚至用来管理这些资源的系统也是分开的——通常是在物理上分开。运维监控系统等和资源进行交互的应用,都被非常复杂的访问策略、系统和访问规则等以安全的名义控制着。IT部门就喜欢这种方式。只有等到数据中心环境需要并引入廉价的计算能力、存储空间和网络连接之后,这些机构才不得不将这些网元设备放在一起考虑。这种范式上的变迁,让管理和操作这些资源的应用比以前更加紧密地联系在一起。
  数据中心最初被设计用来在物理上分隔传统计算单元(如PC服务器)、它们所用的存储,以及连接它们和用户的网络。这种数据中心的计算能力往往被用于特定的服务器功能,例如运行邮件服务器、数据库服务器或其他被广泛使用的功能,来为桌面客户端提供服务。以前,这些功能通常运行在企业机构中数千台(或更多)桌面电脑上,由专职部门内部使用的部门级服务器群提供服务。随着时间的推移,出于多种原因,部门级服务器群迁移到了数据中心,这样做主要是为了管理上的便利,其次是企业用户之间的资源共享。
  大约10年之前,发生了一个有趣的变化。一家叫做VMware的公司发明了一项有趣的技术,它允许一个或多个客户操作系统(如Windows)在流行的Linux发行版等主机操作系统上运行。VMware公司所做的是创建了一种小程序,用来建立集成了真实计算环境(如虚拟NIC、BIOS、声卡和视频装置)的虚拟环境,然后在多个虚拟机之间分配资源,并且将虚拟机隔离开。这种监控程序被称为虚拟机管理程序(hypervisor)。
  最初的时候,VMware软件是为那些想要在Linux下完成大多数计算任务,而只在某些需要Windows操作系统环境时才用Windows(那时候,这种情况在企业里是常态)的工程师们设计的。他们在Windows下完成操作后可以像关闭一个普通程序那样关掉Windows,然后继续使用Linux。有意思的是,这样用户就可以把客户操作系统当作其磁盘上的一个程序文件(尽管很大)。人们能够像操作其他文件那样操作这个文件(比如可以把它移动或复制到其他机器,而且还能像安装在原来的机器上一样运行)。更有意思的是,这个操作系统可以在它察觉不到的情况下被中止,实质上是让它进入历程中断状态(suspended animation)。
  随着操作系统虚拟化的出现,原本运行Microsoft Windows Server这种单一的、专用的操作系统以及运行为这些操作系统量身定做的应用的服务器,现在可以被看作普通的计算和存储平台。随着内存、计算能力、存储的进一步发展和增加,数据中心服务器增强了在虚拟化环境中同时运行多个操作系统的能力。VMware扩展了它的单机版,让它更加适用于数据中心环境,以便在一个终端上运行和控制成百上千的虚拟机。Windows Server这种以往占据整台物理机器的操作系统如今可以在一个个虚拟机中,各自运行着用户所需的应用。唯一不同的是,每个系统运行在自有的环境中,可以中止、迁移、克隆或者复制(比如备份)。弹性计算(elastic computing)的时代就这样开始了。
  在弹性计算环境中,运维部门只需简单地暂停虚拟机再复制文件,就可以将服务器迁移到数据中心的任意物理位置。它们甚至只需要克隆相同虚拟机的文件,然后让虚拟机管理程序将它作为新的实例来运行,就可以创建一个新的虚拟机。凭借这样的灵活性,网络管理员可以利用能源和冷却等指标,来优化数据中心里资源的位置。通过将所有运行中的虚拟机整合在一起,管理员可以让数据中心其他部分的服务器休眠或空转,调低这部分的冷却性能,从而优化了数据中心的冷却负荷。类似地,管理员也可以根据区域的需求,移动或动态地扩展计算、存储或网络资源。
  和所有技术上的进步一样,这种在操作部署计算、存储和网络资源上引入的新的灵活性也带来了一个新问题:在考虑对存储和计算能力实现最大化的同时,又要兼顾能源和冷却时的运营效率。正如前面提到的那样,网络管理员开始意识到,一般来说,对于计算能力的需求会随着时间而增长。为了跟上这种需求,IT部门(通常按年度分配预算)会预测并订购下一年所需的所有设备。然而,只要设备到位并且放置在了机架上,就算它尚未使用,那也还是会消耗电力、冷却和空间资源。亚马逊首先发现了这个左右为难的问题。当时亚马逊的业务正呈现出“曲棍球杆曲线”(hockey stick graph),每6~9个月翻一备。因此,为零售、库存和仓库管理系统以及内部IT系统提供计算服务的系统,其增长必须快于需求。所以亚马逊的IT部门不得不预先订购大量的存储、网络和计算资源,但他们又陷入了另一个窘境,在需求赶上之前,这些设备会一直处于闲置状态。为了商品化这些未利用的资源池,充分利用这些资源,亚马逊发布了Amazon Web Services(AWS)。当亚马逊的内部需要更多资源时,AWS就会简单地压缩零售用户的资源,否则零售用户可以用尽未使用的资源。有人称之为弹性计算服务,本书称之为超虚拟化(hyper virtualization)。
  从那时起,亚马逊、Rackspace等公司等为了价格优惠而大量购买存储和计算设备,结果发现他们并没有充分地利用自己的存储和计算资源,实际上他们可以将多余的计算能力和存储转售给外部用户,从而弥补一些资金投入。多租户的数据中心就这样兴起了。当然,这就引入了一个新的问题,如何将上千个潜在的租户互相隔离开,而这些租户所租用的资源却是任意地分散在不同数据中心的虚拟机上。
  还有一种理解这个困境的方式是,注意到在迁移到超虚拟化环境之前,(计算任务的)执行环境一般都是由单个企业或者组织来操作的。这就是说,他们通常拥有所有的计算和存储资源(尽管一些是租用的主机托管空间),并把这些资源看做一个连接了大量虚拟机或物理机以及存储设备的扁平局域网(LAN)来操作。(唯一的例外是在金融机构中,需要按照规范要求来实施隔离。)但是,在这些示例中,部门的数量都相对较小,不到100,所以这个问题可以简单地用现有的工具(如2层或3层MPLS VPN)来解决。就算使用这两种解决方案,连接所有计算和存储资源的网络组件也还相当简单,它基本上是一个连接所有物理机或虚拟机的扁平以太网LAN。因为这些机器都归一家企业所有,只供他访问,在绝大多数这样的环境中,所有(虚拟或物理的)设备都分配了同一个网络(可能是同一个IP子网)内的IP地址。这也意味着将虚拟机在同一家企业的不同数据中心之间迁移不会产生问题,因为它们也都在同一个路由域下,并且不管物理位置如何,都可以互相联通。
  多租户数据中心的计算、存储和网络资源可以分成相互独立或隔离的分片来提供服务。事实上,将它们隔离开十分关键。这带来了一些有趣的挑战,这些挑战在以往单租户数据中心环境下是不存在的。请记住,多租户的环境允许任意数量的操作系统和运行在这些操作系统上的应用,但如果它是要被其拥有者或者其他外部用户(如客户)访问的话,那么每个操作系统都需要一个唯一的网络地址。在过去,可以从单个、可能是私有网段的内部地址块分配,并且可以轻松在企业内部进行路由。然而现在需要分配唯一并且可以从外部路由和访问的地址。此外,考虑到相关虚拟机也都还有一个唯一的2层网络地址。路由器最终需要利用以太网来传送数据报文(而不仅仅通过IP)。这通常不成问题,除非需要考虑虚拟机的移动性(VM molibity)。在这些数据中心里,虚拟机会由于电力、冷却或计算密度等原因而迁移。难点就在这里,因为物理位置的迁移意味着物理地址的迁移。这也意味着可能需要对3层路由进行更改,以确保发往该机器原先所在位置的数据报文现在可以发送到新位置。
  在数据中心不断发展的同时,网络设备却似乎在满足吞吐量和速度以外的方面缺乏创新。也就是说,在IP、MPLS和移动技术出现之后,网络技术在交换结构能力和接口速度、数据通信以外的方面有些停滞不前。IP和MPLS允许网络管理员在这些基础网络上创建网络和虚拟叠加网络,就像数据中心管理员可以利用计算虚拟化技术在物理机上创建并运行虚拟机那样。网络虚拟化通常被称为虚拟专用网络(VPN),并且以多种形式存在,包括点对点(如个人VPN,在笔记本上用它来连接到公司的网络);3层(虚拟化IP或路由网络,比如网络管理员可以用它们将本企业的流量和其他流量隔离开,以此保证企业网络的安全)和2层VPN(交换网络虚拟化以提供和3层VPN类似的隔离,只不过这里用的是以太网地址)。
  商用路由器和交换机通常配备了管理接口,支持网络管理员配置和通过其他手段管理这些设备。这些管理接口包括命令行接口、XML/Netconf、图形用户界面(GUI)和简单网络管理协议(SNMP)等。通过这些接口,管理员可以用恰当的方式来管理设备,但是它们通常仍然对管理员隐藏了最底层的细节。例如,网络管理员可以编写静态路由表或其他静态的转发项,但是这些最终都要转化为传递给设备操作系统的请求。如果有人想利用设备上已有功能的语法或功能来配置,这通常不成问题。但如果有人希望试验新的路由协议,就只能使用固件中支持这种新协议的设备。在这种情况下,客户经常会向设备厂商提出功能增强的要求,并且需要等待很长的时间(等待数年也不罕见),客户请求的功能才会加入。
  与此同时,(至少在逻辑上)分布式控制平面的概念再一次出现在人们视野中。一个网络设备由数据平面和一个控制平面组成。数据平面通常是一个交换结构,连接了设备上的多个网络端口。控制平面则是设备的大脑。例如,用来在一个网络中构建无环路的路由协议,通常以分布式的方式实现。也就是说,网络中的每个设备都有一个实现了该协议的控制平面。这些控制平面相互沟通、协调,以构建网络路径。然而,在集中式控制平面范式中,会存在一个(至少在逻辑上)单独的控制平面。这个超级大脑会将命令推送到每个设备,从而指挥这些设备来操控各自的物理交换和路由硬件。应该特别注意的是,虽然构成设备数据平面的硬件仍然相当专业化,因而价格昂贵,但是控制平面却日益倾向于使用越来越便宜的通用计算设备,如Intel公司生产的中央处理单元。
  上面提到的都是重要的概念,因为它们为今天软件定义网络(SDN)的技术提供了核心动因。SDN的早期倡导者发现网络设备厂商不能满足他们的需求,尤其在功能开发和提供的创新空间上。高端的路由和交换设备也被认为定价过高,至少对于这些设备上的控制元件来说是这样。与此同时,他们看到了原材料价格,即弹性计算力的成本快速下降。这让一个人处理上千个处理器成为了现实。从那时起,他们意识到可以利用这些计算力来运行一个逻辑的集中式控制平面,这样就可以使用哪怕是廉价、商品级价位的交换硬件。斯坦福大学的几位工程师创造出了一种称为OpenFlow的协议,这个协议正好可以采用上述硬件配置来实现。OpenFlow的架构为一些只有数据平面的设备而设计,这些设备被一个(逻辑上的)集中式控制器所控制,这个控制器是该网络中唯一一个控制平面。这个控制器负责维护所有的网络路径,以及对其所控制的网络设备进行编程。OpenFlow的协议描述了这些指令和响应规范。值得一提的是,开放网络基金会(ONF)对SDN提供商业上的支持,并且今天仍然是其标准化和市场推广的权威机构。基于刚才所描述的这个基本架构,人们现在可以想象,在数据中心的廉价硬件上实现新的协议是多么地快捷和方便。更妙的是,人们可以在弹性计算环境中的虚拟机上实现它。
  对于SDN还有一个稍有不同的视角,业内一些人士称之为软件驱动网络(software-driven network),而不是软件定义网络。这种文字游戏并不是故意要把读者搞晕,而是为了突出在方法理念上的差别。在软件驱动的方式中,人们将OpenFlow及其架构视作所有可实现功能的一个特殊子集。不是在逻辑上把网络看做集中式控制平面和一堆非智能的网络设备,而是将这个世界看成新旧技术的混合体。更确切地说,把现有的网络都拆掉甩卖,让ONF和软件定义网络来构建新世界是不现实的。丢弃现有支撑着互联网的先进网络技术同样也是不现实的。然而,更现实的是一种混合的方式,网络的一部分被一个逻辑上的集中式控制器操控,而其他部分则由更传统的分布式控制平面来操控。这也意味着,这两个世界要彼此互通协作。
  有意思的是,人们发现在SDN和OpenFlow倡导者的众多努力中,有一个共同的主要内容,即实现更广泛、更灵活的网络设备可编程性。可编程性不一定与网络控制和数据平面的位置有关,但它关系到如何编写这些设备。不要忘记,创建SDN和OpenFlow的一个动机就是如何(how)对网络设备进行编程以获得灵活性,而不只是在哪里(where)进行编程。如果有人关注了SDN的体系结构设计方面正在进行的工作,就会发现可编程性和编程位置这两个问题都解决了。剩下的问题是,从可编程性的角度来解决问题是否是最优选择。
  最近,为了解决这个问题,来自思科公司(Cisco)、瞻博公司(Juniper)、Level3公司及其他厂商和运营商的技术人员率先为网络可编程性做出了努力,他们的工作成果称为路由系统接口(I2RS)。这些公司的一些同仁为多个相关的IETF草案做出过贡献,包括基本的需求和框架草案,Alia Atlas、David Ward和Tom是主要的贡献者。在不久的将来,至少会有十多份与此相关的草案公布在网络上。很明显,大家对这方面的工作都有着极大的兴趣。I2RS的基本思想是创建一个协议和多个组件,作为利用快速路径协议来编写网络设备路由信息库(RIB)的一种手段,这种协议支持快速直通式的业务开通配置操作,以允许RIB和控制它的RIB管理器之间进行实时交互。此前,通过设备的配置系统(对于Juniper的设备来说,是Netconf或SNMP)来操控RIB,是管理RIB的唯一方法。
  理解I2RS的关键在于,明白I2RS带来的绝不仅仅是一个业务开通配置协议。这是因为还有许多其他的关键概念组成了整套解决方案,来解决加速网元设备之间的反馈回路、网络编程、网络状态和统计信息获取和后期处理等综合问题。如今,这个反馈回路慢得令人感到痛苦。参与I2RS的人们认为可编程网络的未来就在于优化这条回路。
  为此,I2RS提供了网络编程的几种不同抽象级别,如网络路径、策略、端口配置,而这些都带来了同样的质量监督上的优势,把编程视作在提交命令前做检查的手段。举个例子,现有的某些用于编写硬件抽象层(HAL)的协议要么粒度过于精细,要么展示了过多的细节,这都影响网络的效率,实际上是给协议的运维系统带来了不必要的负担。另一个例子是为运营支撑系统(OSS)的应用程序提供快速和最佳的RIB访问,让程序变更更快速地生效,然后观察效果。为了优化网络操作,必须支持快速重新编程。这些例子的一个要点在于,应用程序和RIB之间的会话是通过RIB管理器进行的。这点很重要,这是因为许多管理员都希望保留他们在路由协议方面所做的工作,这些工作都位于Junos或IOS-XR等设备操作系统上,与此同时充分利用这个新颖实用的编程范式来进一步优化他们的网络。
  I2RS也非常适用于满足人们不断增加的对于逻辑上集中式路由、路径选择和可编程性的渴望。这个协议对于在网络设备上和网络设备之外运行都有要求。这样,可以在需要时使用分布式控制器的功能,也可以在需要时支持更加经典的分布式控制场景。
  最后,I2RS还有一个关键的子组件,就是归一化和抽象化的拓扑结构。定义一个公共可扩展的对象模型就可以表示这种拓扑结构。这种服务还允许公开拓扑表示的多种抽象。这个模型的一个关键在于非路由设备(或其他不支持路由协议的设备)可以更容易地操作和改变RIB状态持续转发。如今,非路由设备还不能很好地获取这个信息。持续转发、网络管理组件/OSS、分析和其他人们无法预见的应用,将会更快速和有效地与路由状态和网络拓扑进行交互。
  所以,人们应该对SDN下个定义,说明它是什么,以及会变成什么样。以下总结这些思考。
  软件定义网络(SDN):是一种优化和简化网络操作的体系结构方式,它将应用与网络服务、设备之间的交互(如服务开通配置、消息传递、警报)更紧密地结合在一起,不论它们是物理的还是虚拟化的。它通常利用一个逻辑上集中式的网络控制,通常被认为是由SDN控制器来实现,它编排、协调并促进希望与网元设备进行交互的应用程序,以及希望传送信息给应用的网元设备之间的通信。然后,控制器通过现代化的、应用友好的、双向的编程接口来展示、抽象网络功能和操作。
  所以,可以看到,软件定义、软件驱动、可编程网络具有一套丰富和复杂的历史传承、挑战,以及针对这些挑战的多种解决方案。正是软件定义、软件驱动和可编程网络出现之前的技术的成功,使得基于它们的先进技术成为可能。现实情况是,世界上的大多数网络(包括互联网)都运行在IP、BGP、MPLS和以太网的基础上。如今的虚拟化技术基于VMware公司多年前开创的技术,现在仍然是VMware公司和其他产品的基础。网络附加存储有着同样丰富的历史。
  只要能够解决网络、计算、存储虚拟化,以及超虚拟化环境下应用的编程性、易访问性、位置和迁移这些问题,I2RS也将会有同样的光明前景。
  虽然SDN控制器仍然在媒体中称王称霸,但写作本书时,许多其他技术进步也出现了。其中一个非常有吸引力且非常透明的项目就是Open Daylight项目。Open Daylight的任务是促进以社区为主导的、业界支持的开源框架,包括代码和架构,来加速和推动通用的、稳健的软件定义的网络平台。为此,Open Daylight项目作为Linux基金会托管的项目,将会有利于真正改变游戏规则,并有可能为SDN控制器的发展铺平道路。这方面的努力也将刺激在我们看来这个领域最重要的东西:应用的创新。在过去几年中,可以看到控制器的种种进步,控制器被认为真正代表了支持SDN的应用程序的基础架构。在这种思想的影响下,过去几年中,业界一直在努力设计和开发控制器,却大多忽视了应用。作者认为,SDN真正的意义在于运营上的优化和效率,利用这些优点的最好方式,是快速完善基础设施,然后让业界专注于应用和设备层的SDN架构创新。
  本书侧重于软件定义网络、软件驱动网络和可编程网络的网络部分,但也会包含足够多的虚拟化、位置和存储、网络和计算的编程等方面内容。本书的目标就是探索这些网络技术进步背后的细节和动机,这些细节和动机带来并且支撑了网络、存储和计算资源的超虚拟化,并且现在也被视为SDN的一部分。
  ……
展开
目录

蒋林涛推荐序
专家推荐语
译者序
2014:超越炒作,进入部署SDN 的时代(David Ward 中文版序)
作者中文版序
David Meyer 序
David Ward 序
前言
第1章 引言
第2章 集中式与分布式的控制平面和数据平面
2.1 引言
2.2 控制平面和数据平面做什么
2.2.1 控制平面
2.2.2 数据平面
2.2.3 在控制平面和数据平面之间传递信息
2.2.4 为什么控制平面与数据平面分离变得重要
2.3 分布式控制平面
2.3.1 IP 和MPLS
2.3.2 建立IP 承载网
2.3.3 收敛时间
2.3.4 负载均衡
2.3.5 高可用性
2.3.6 建立MPLS 叠加
2.3.7 组播复制
2.4 集中式控制平面
2.4.1 逻辑上的集中式与字面含义上的集中式
2.4.2 ATM/LANE
2.4.3 路由服务器
2.5 小结
第3章 OpenFlow
3.1 引言
3.2 OpenFlow 线路协议
3.2.1 复制
3.2.2 FAWG(转发抽象工作组,Forwarding Abstraction Workgroup)
3.2.3 配置和扩充性(Extensibility)
3.2.4 体系结构
3.3 混合方案
3.3.1 午夜行船模型
3.3.2 双功能交换机
3.4 小结
第4章 SDN 控制器
4.1 引言
4.2 基本概念
4.2.1 VMware 的控制器
4.2.2 Nicira 的控制器
4.2.3 VMware/Nicira 的控制器
4.2.4 OpenFlow 相关的控制器
4.2.5 Mininet 仿真器
4.2.6 NOX/POX 控制器
4.2.7 Trema 控制器
4.2.8 Ryu 控制器
4.2.9 Big Switch 公司/Floodlight 控制器
4.3 以网络三层为中心的架构
4.3.1 三层VPN 的控制器
4.3.2 路径计算单元(PCE)服务器
4.4 Plexxi 公司的控制器
4.5 Cisco 公司的OnePK 控制器
4.6 小结
第5章 网络可编程性
5.1 引言
5.2 管理接口
5.3 应用程序与网络之间的鸿沟
5.3.1 命令行界面(CLI)
5.3.2 NETCONF 和NETMOD
5.3.3 SNMP
5.4 现代的编程接口
5.4.1 发布和订阅接口
5.4.2 XMPP
5.4.3 谷歌公司的Protocol Buffers
5.4.4 Thrift
5.4.5 JSON
5.4.6 I2RS
5.5 现代的服务编排
5.5.1 OpenStack
5.5.2 CloudStack
5.5.3 Puppet
5.6 小结
第6章 数据中心的概念与结构
6.1 引言
6.2 多租户数据中心
6.3 虚拟化多租户数据中心
6.3.1 服务编排
6.3.2 连接租户到互联网/VPN
6.3.3 虚拟机迁移与弹性
6.3.4 数据中心互连(DCI)
6.3.5 关于数据中心分布式计算的谬误
6.3.6 数据中心分布式计算的陷阱
6.4 数据中心网络的SDN 解决方案
6.4.1 网络承载层
6.4.2 叠加网络
6.5 小结
第7章 网络功能虚拟化
7.1 引言
7.2 虚拟化与数据平面I/O
7.2.1 数据平面I/O
7.2.2 I/O 小结
7.3 服务工程路径(Service Engineered Path)
7.4 服务位置与服务链
7.4.1 元数据
7.4.2 一种应用层方法
7.4.3 规模
7.5 ETSI NFV
7.6 非ETSI NFV
7.6.1 Middlebox 研究
7.6.2 Embrane/LineRate
7.6.3 平台虚拟化
7.7 小结
第8章 网络拓扑结构与拓扑信息抽象
8.1 引言
8.2 网络拓扑结构
8.3 传统方法
8.4 LLDP
8.5 BGP-TE/LS
8.6 ALTO
8.7 I2RS 拓扑
8.8 小结
第9章 构建SDN 框架
9.1 引言
9.2 先写代码,再问问题
9.3 瞻博公司的SDN 框架
9.4 IETF 的SDN 框架
9.4.1 SDN(P)
9.4.2 ABNO
9.5 OpenDaylight 的控制器/ 框架
9.5.1 API
9.5.2 高可用性和状态存储
9.5.3 分析
9.5.4 策略
9.6 小结
第10章 带宽调度、操控和时间规划的用例
10.1 简介
10.2 带宽时间规划
10.2.1 基础拓扑结构以及基本概念
10.2.2 OpenFlow 和PCE 拓扑结构
10.2.3 配置示例
10.2.4 OpenFlow 业务开通示例
10.2.5 控制器增强
10.2.6 采用PCE 配置的叠加网络示例
10.2.7 深入调研:大举向新领域进军
10.3 在即时CSPF 中使用大数据和应用程序超虚拟化技术
10.4 扩展拓扑结构
10.5 小结
第11章 数据中心叠加网、大数据和网络功能虚拟化的用例
11.1 引言
11.2 数据中心服务编排
11.2.1 创建租户和虚拟机状态
11.2.2 转发状态
11.2.3 数据驱动的学习
11.2.4 控制平面发信令
11.2.5 对扩展性和性能的考虑
11.3 Puppet(DevOps 解决方案)
11.4 网络功能虚拟化(NFV)
11.5 优化的大数据
11.6 小结
第12章 输入流量监测、分类及触发操作的用例
12.1 引言
12.2 防火墙
12.3 防火墙即服务
12.4 网络访问控制的替代方案
12.5 采用虚拟防火墙来扩充用例
12.6 反馈与优化
12.7 入侵检测/ 威胁缓解
12.8 小结
第13章 最后的思考与结论
13.1 什么是真正的SDN
13.1.1 经济学
13.1.2 SDN 实际上与运行和管理相关
13.2 SDN 的多种定义
13.3 人们正在取得进步吗
术语表
关于封面

展开
加入书架成功!
收藏图书成功!
我知道了(3)
发表书评
读者登录

请选择您读者所在的图书馆

选择图书馆
浙江图书馆
点击获取验证码
登录
没有读者证?在线办证