有时,我喜欢写一些更未来的东西,一些还不够常见到进入思科证书轨道的东西。因为我这周要去Interop,网络世界的人建议我仔细看看一个叫做OpenFlow的新计划。有个足球雷竞技app今天我已经介绍了一些背景知识,一旦我去了OpenFlow实验室和供应商展台,并且更好地理解了这些知识,我会给你一个更新。
历史与互操作
在节目开始前,我采访了InteropNet的首席网络工程师格伦·埃文斯。除了OpenFlow,我们还讨论了一些Interop的历史,特别是InteropNet,我发现它很有趣,所以当我们在这里的时候……
Interop开始于20世纪80年代末。这早于10BaseT(局域网交换机),当时大多数公司还没有路由器。是的,那是在科技时代。当Interop开始时,部分动机——甚至名字——来自计算机技术世界,特别是网络部分,需要有互操作部分的想法。回到20世纪70年代和80年代,大多数公司使用一个供应商的网络设备,该设备实现了该供应商的专有协议栈(EG、IBM和SNA、DEC和DECNet)。但随着TCP/IP的出现,那个时代即将结束。
作为展览的一部分,Interop构建了InteropNet。供应商们出现了,在他们的展位上设置了他们的设备,并连接到InteropNet。在Interop,供应商可以展示什么可以与其他设备一起工作,看看什么不能,测试,提高互操作性,并帮助建立一个所有部件一起工作的世界。
Interop网站的部分营销文案提到,InteropNet是创建有用的网络标准过程的一部分。我向Glenn询问了一些例子:TCP/IP、OSPF和MPLS。从本质上讲,在早期,InteropNet是一个真正的“插件盛会”——每个人都插进去看看发生了什么,我们一起改进。
今天,InteropNet基本上是展会的生产网络,任何想要上网或在展会展台之间上网的人都可以使用。但是今年展会上的OpenFlow测试实验室是对旧的InteropNet插件集会的一种倒退,在那里玩OpenFlow游戏的厂商将连接并展示OpenFlow技术。
OpenFlow基础知识
要理解OpenFlow的重要思想,首先考虑一下第二层交换机是如何工作的。(我们也可以使用路由器,但还是用交换机吧。)交换机均使用生成树协议(Spanning Tree Protocol)。最终的结果吗?每个交换机在每个接口上选择转发还是阻塞。总的来说,STP拓扑定义了通过二层域的唯一路径,通常是每个VLAN。因此,从一个角度来看,集合交换机上的STP选择了通过交换机可以使用的路径,以及不能使用的路径。
我们使用这个术语控制飞机来引用那个工作,因为它控制着转发路径。
当交换机转发帧时,它们不必在转发帧之前发送一堆控制平面STP消息。相反,交换机使用MAC地址表和一些基本的转发逻辑来匹配帧的目的MAC地址到该表。表中列出了正确的出接口。
现在,实际的转发处理发生在asic上,目的是做低延迟/大容量的帧转发。这些asic依赖于MAC地址表,或该表的某些派生。该表的内容依赖于控制平面所做的工作:只有STP转发接口用于转发帧。例如,交换机只有在F0/1当前处于STP转发状态时,才学习到F0/1是出接口的MAC表项。
因此,数据平面进行帧转发,但数据平面使用的路径取决于控制平面做出的选择。
高速、大容量的数据平面转发必须发生在交换机上。然而,相对缓慢的速度(发生在几十秒,而不是几十微秒)控制平面功能可以在其他地方完成,在其他设备上;OpenFlow就是这样做的。
OpenFlow采用控制平面函数并将其移动到服务器 - 不要为现有的控制平面逻辑作出另一个位置,而是作为开发新的控制平面逻辑和概念的位置。除此之外,OpenFlow会创建服务器与每个交换机的协议。服务器执行控制平面逻辑,并使用这些协议消息来对交换机上的转发表进行编程,以准备数据平面进行通常的作业。
你会问为什么?答案分为两类,下一讲。
为什么# 1:创新/研究
如果你读其中一个pdf文件上发现的OpenFlow.org的网站,你可以看到第一手第一个大问题OpenFlow解决:这是一个研发问题。
大学的研究人员想做R&D了解如何更好地进行网络 - 如何创建通过网络选择路径的新规则,如何获得大量的设备一起工作,如何更好地进行管理,更好地进行管理,任何内容。但是要做那个,并负担得起档位,并进行压力测试,他们需要齿轮,他们需要进入齿轮的内部。如果你想抛出门,并通过完全不同的逻辑选择通过交换机的路径,而且你想实验,你有选择,但没有完美。您可以构建具有大量以太网卡的PC,以便您可以编程新的协议和规则,但它与交换机中的ASIC相比慢慢执行。或者,您求求供应商来访问如何操纵其硬件,如何加载您为其设备编写的新的控制平面代码等。它很乱。
OpenFlow为研究解决了这个问题。当供应商提供支持OpenFlow的设备时(我想我们会在Interop上听到不同供应商的时间表),这样的声明可能意味着:它支持某些外部OpenFlow服务器执行控制平面功能的能力,并在交换机上对数据平面进行编程。然后,研究人员可以在他们的研究中包括该设备,创建运行在服务器上的新的控制平面逻辑/代码,但也可以通过运行来自供应商的真实设备的流量来进行功能和压力测试。
请注意,实现OpenFlow并不是全部或全部—您可以分离出一个VLAN来进行测试,但是其他的一切都按照您在交换机上期望的通常逻辑发生。(我们甚至可以称其为虚拟化,将开发的一小部分开关分割开来,但我认为这个术语已经有足够的用途了。)
简而言之,“为什么”的一个答案是,OpenFlow应该开放世界来推动创新,这最终应该对我们所有人都有好处。至少,这是它的意图。
为什么第二:解决真实网络的问题——但问题是什么?
2ndOpenFlow的主要原因与如何向市场交付新特性有关。假设研究人员提出了一种新的第二层转发范式来取代STP。进入市场的一种方法是把它卖给供应商,让供应商弄清楚如何在他们的设备上实现它,如何将它输入一个标准流程,这样其他供应商最终也会支持相同的功能。另一种方法是将其发送给IETF或IEEE等,使其标准化,由供应商按照他们认为合适的方式加入。不管怎样,最后,这些供应商都会把控制平面的功能放到运行在每个机器上的操作系统中,就像他们现在通常做的那样,为他们的产品添加这些特性。
OpenFlow创建了一个选项,可以使用开发期间使用的相同架构来部署这些新特性。有了OpenFlow,供应商可以将控制平面特性作为OpenFlow服务器的一部分出售给您,您可以使用控制平面在该服务器上运行您的生产网络。如果现有的网络设备(交换机、路由器)已经支持OpenFlow,那么升级需要向服务器添加新软件,但不需要新的交换机,现在就进行软件升级。(好吧,至少这是可能的。)服务器根据新的控制平面逻辑将转发项下推到每个交换机。
第一印象
我必须承认,我的第一印象是OpenFlow对于我的第一个目标来说非常有意义。至于第二部分,我仍然无法弄清楚这是一项有用的革命性技术,还是一个寻找问题的解决方案,抑或是众多已知问题的解决方案之一。
另一方面,许多供应商似乎认为OpenFlow很重要。不,思科不在这事上Interop的OpenFlow实验室赞助商名单,但我会让思科展台的人看看他们的座位。这个列表包括许多日常使用的名字,如Broadcom、Extreme、HP和Juniper等。
所以,我去Interop展示一个怀疑者;我会在节目的最后再写一遍,告诉你我是变成了一个信徒,还是仍然是一个怀疑论者。更多的来!
链接
在我离开之前:如果你想了解更多,这里有一些相关链接。
关于数据包推送器OpenFlow的讨论。
http://packetpushers.net/show-40-upending-networking/
Interop的主要OpenFlow链接:http://www.interop.com/lasvegas/it-expo/interopnet/openflow-lab/
OpenFlow组织:http://www.openflow.org/
漂亮的OpenFlow概述PDF:
http://www.openflow.org/documents/openflow-wp-latest.pdf
相关文章: