资源描述
Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,32,37,Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,*,Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,*,Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,*,Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,*,Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,*,Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,*,Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,*,Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,*,Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,*,Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,*,Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,*,Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,*,1,Project 3,和软件定义的网络,(SDN),罗忠文,:/,内容取自BERKELEY,项目,3,介绍,Scott:,软件定义网络(,SDN,)背景,(40,分钟,),Yahel:,项目概述,(10,分钟,),Murphy:,软件架构,(10,分钟,),TD and Kyriakos:,演示及细节,(15,分钟,),2,基本介绍,想让大家对真实设备编程,Marwell,赠送了,250,台,PLUG,计算机,和,NUST,(巴基斯坦)共享,对我们好一些,我们也会对你好,你弄坏早一点,我们修好早一点,如果你们想用盒子做一些更好的事情,给我们一个提议,我们会让你们课完成后继续使用,不要弄丢盒子,我们需要退还,3,SDN,的看法,SDN,是网络的一个新的做法,不是关于架构:,IP,,,TCP,等,But about design of network control(routing,TE),完整讨论,:SDN,由,Nicira Network,发明,基于,Stanford,UCB,Princeton,CMU,的早期工作,这不是,Nicira,宣传广告,Nicira,出售的产品只是碰巧使用了,SDN,它不卖,SDN,,也不标榜自己是,SDN,公司,.,4,SDN,状况,Open Networking Foundation,是标准化实体,SDN,有,49,家公司支持,几乎所有都与之有关,.,市场上有少量产品,将来会更多,一些大公司在内部使用,SDN,SDN,在文字战中已经取胜,真实的战争即客户是否接受还刚刚开始,.,5,项目,3,与,SDN,是什么关系,?,项目,3,使用,SDN,技术,但,SDN,对你不可见(它也应该如此),你需要编写软件控制单个交换机,容易(,原理上),类似的软件可以控制整个网络,将提供,SDN,的动机和背景材料,当然是没有细节,6,约定规则,由于时间短,就不问问题了,如果对我所说的不理解,让我停止,.,想深入了解,课后再做,这里的目标不是深入,而是对,SDN,的一般直觉,7,两个主要定义,数据面,:,处理和发送包,基于路由器和端点中的状态,如, IP, TCP, Ethernet,等,快时标,(,每个包,),控制面,:,在路由器中建立状态,确定包如何转发及在转发到何处,路由,流量工程,防火墙状态, ,慢时标,(,每个控制事件,),8,网络未来,和协议的过去,Internet成功的关键: Layers,Applications,built on,built on,built on,built on,Reliable (or unreliable) transport,Best-effort global packet delivery,Best-effort local packet delivery,Physical transfer of bits,分层为什么如此重要?,将传输分解成基本部件,每层独立且兼容的,创新,应用上空前的成功,但在学术上却失败,建立人造物, 而非一个学科,“,系统,”,中的其他领域,: OS, DB, DS, etc.,讲授基本原理,较易管理,继续演化,网络,:,讲授大量协议,其管理上的困难是有名的,演化非常慢,为什么网络落后了?,网络过去很简单,: Ethernet, IP, TCP.,新的,控制,需求导致极大复杂性,独立,VLANs, ACLs,流量工程,MPLS, ECMP, Weights,包处理,防火墙, NATs, middleboxes,负载分析,深度包检查,(DPI),.,独立设计和布署机制,复杂的“控制面,”,设计,原始功能,栈相对于优美的模块,“,数据面,”,架构仍能工作!,仅,因为,“,我们” 管理复杂性的能力,这种管理复杂性的能力既是优点,也是缺点,!,关于复杂性的简单故事,1985: Don Norman visits Xerox PARC,讨论用户界面和变速杆操作方法,他的观点是什么?,管理复杂性,的能力和,提取简单性,的能力是不一样的,当最初让系统能工作时,.,关注管理复杂性,当让系统易用且易理解时,关注提取简单性,在提取简单性方面,将永远无法成功,如果不认识到其与管理复杂性的区别的话,作者,的观点是什么,?,网络仍然关注于管理复杂性,在控制面很少强调提取简单性,没有意识到存在不同,.,提取简单性建立了智能基础,有必要创立一个学科,.,这也是网络落后的原因,更好的例子: 程序设计,机器语言,:,没有抽象,掌控复杂性是关键,高级语言,: OS,和其他抽象,文件系统,虚拟内存,抽象数据类型, .,现代语言,:,更多抽象,面向对象, garbage collection,抽象是获取简单性的关键,“,抽象的力量,”,“,Modularity based on abstraction,is the way things get done,基于抽象的模块化是成事之路”, Barbara Liskov,抽象,接口,模块化,在网络中我们有什么抽象,?,层是伟大的抽象,层仅处理,数据面,没有强有力的,控制面,抽象,!,如何找到哪些控制面抽象,?,两步,:,定义,问题,然后,分解,它,.,网络控制问题,计算每个物理设备的配置,例,转发表, ACLs,没有通信保障的管理,在给定网络层协议上的管理,只有喜欢复杂性的人发现这是合理的需求,程序设计类比,程序员必须做下面事情时怎么办,:,指定每个位存储在哪里,显式地处理所有内部通信错误,在一个程序设计语言中仅拥有有限的表达能力时,程序员将重新定义问题,:,定义内存的一个更高级别的抽象,建立在可靠通信抽象的基础上,使用一个更通用的语言,抽象,将问题分割成易处理的片断,从而使程序员的任务更容易,从需求到抽象,没有通信保障的管理,需要对分布状态的抽象,2.,计算每个物理设备的配置,需要抽象以简化配置,3.,在给定网络层协议上的管理,需要对通用转发模型抽象,一旦所有这些抽象都做好了,控制机制就非常容易,SDN,由这样三个抽象,精确地,定义,分布,转发,配置,SDN,并非一个偶然的好想法,基本有效且通用,SDN,能帮助我们,最终,创建一个学科,抽象使得关于系统行为的推理成为可能,提供了使形式化成为可能的环境,.,好吧,这些抽象是什么,?,整个内容归纳成一句话,1. 分布式状态抽象,“状态分布下”保护了控制机制,同时允许访问这些状态,自然抽象,:,全局网络视图,通过,API,提供的注解网络图(,Annotated network graph,),用,“,网络操作系统,”,实现,控制机制现在是使用,API,的程序,不再是分布式协议,现在只是一个图算法,如使用,Dijkstra,而非,Bellman-Ford,控制程序,软件定义网络,(SDN),Network OS,全局网络视图,传统控制机制,交换机和,/,或路由器的网络,在邻居间运行分布式算法,如 寻路,访问控制,范型(Paradigm)的主要变化,不再设计分布式控制协议,设计一个分布式系统,(NOS),对所有控制功能都使用,现在只是定义一个中心化的控制,函数,配置,= Function(view),理解的同学请举手,2. 规格说明抽象,控制程序,应该,表示所需的行为,它,不应是,负责实现物理网络架构行为,自然抽象,:,网络的,简化模型,仅有足够细节来,指定,目标的简单模型,需要一个新的共享控制层,:,将抽象配置映射到物理配置,这是,“,网络虚拟化,”,简单示例: 访问控制,Global,Network View,Abstract Network,Model,How,What,网络,OS,全局网络视图,抽象网络模型,Control Program,网络虚拟化,软件定义网络,:,任务,2,此图意味着什么?,编写简单程序来配置简单模型,配置仅仅是一种方式用来指定你想要的,例,ACLs:,谁能和谁通话,孤立,:,谁能听到我的广播,路由,:,仅指定路由到你所关心的程度,一些通过卫星流,另一些在固话网,TE:,以服务质量形式指定,而非路由,虚拟化层,“,编译,”,这些需求,产生实验网络设备的合适配置,NOS,然后将这些设置转换成物理盒子,网络,OS,全局网络视图,抽象网络模型,控制程序,网络虚拟化,软件定义网络,:,任务,2,指定特性,编译到拓朴,转换到交换机,两个使用示例,外扩路由器,:,抽象视图是唯一路由器,物理网络是一组互联的交换机,允许路由器,“scale out, not up”,在顶层使用标准路由协议,多租用(,Multi-tenant,)网络,:,每个租户控制其自己的,“,私有,”,网络,网络虚拟化层编译所有这些单个控制需求到单一的物理配置中,没有,SDN,很难完成,有,SDN,很容易,(,在原理上,),3. 转发抽象,交换机有两个,“,大脑,brains”,管理,CPU (,聪明但很慢腾腾,),转发,ASIC (,快速但哑,dumb),对于两者需要一个转发抽象,CPU,抽象可以是几乎任何事情,ASIC,抽象更微秒一些,:,OpenFlow,OpenFlow:,通过插入,项控制交换机,基本工作是让,NOS,远程访问转发表,在,OpenvSwitch,中实例化,SDN能工作吗?,可扩展吗,?,Yes,反应不很灵敏吗,?,No,产生单点失效吗,?,No,固有的安全性不高吗,?,No,可增量部署吗,?,Yes,SDN: 关心问题的清晰分离,控制程序,:,在抽象模型上指定行为,由,操作需求,驱动,网络虚拟化,:,抽象模型映射到全局视图,由,规格抽象,驱动,NOS:,全局视图映射到物理交换机,API:,由,分布式状态抽象,驱动,交换机,/,结构,接口,:,由,转发抽象,驱动,我们实现了模块化!,模块化使独立创新成为可能,引起生态系统的繁荣,创新是,SDN,提议的真实价值,SDN,不允许你做不可能的事情,它只是让你非常容易地做可能的事情,这就是,SDN,是网络未来的原因,
展开阅读全文