操作包含影子表的转发元件的方法以及相关的转发元件技术

技术编号:10638208 阅读:175 留言:0更新日期:2014-11-12 13:13
可提供方法来在包含转发平面和控制平面的网络的转发平面中操作转发元件。方法可包含通过转发元件的输入/输出端口来接收分组并且尝试匹配分组与转发元件的流表。响应于分组未命中与流表的匹配,转发元件可尝试匹配分组与转发元件的影子表。响应于分组与影子表匹配,可基于来自影子表的匹配的影子规则在流表中安装新的流规则。还讨论了有关的转发元件。

【技术实现步骤摘要】
【国外来华专利技术】操作包含影子表的转发元件的方法以及相关的转发元件
本公开指向通信,并且更特别地指向网络通信方法以及相关网络元件。
技术介绍
大多数现代以太网转发元件(例如,交换机和路由器)包含流表(通常从TCAM或三元内容可寻址存储器建立),流表以线路速率运行来实现防火墙、NAT(网络地址转换)和QoS(服务质量),并且收集统计。虽然不同供应商的流表可以不同,但是OpenFlow开发在许多交换机和路由器中运行的一组公共功能。OpenFlow提供开放协议来对不同的转发元件(例如,交换机和路由器)中的流表进行编程。例如,网络管理者可以将业务划分成生产流和研究流,和/或研究员可以通过选择他们的分组遵循的路线以及他们接收的处理来控制他们自己的流。以此方式,研究员可以尝试新的路由协议、安全模型、寻址方案以及甚至IP(因特网协议)的备选。在相同的网络上,生产业务可以是传统地隔离并且处理。OpenFlow转发元件(例如,交换机)的数据路径可包含流表,以及与包含在流表中的每个流规则(也被称作流条目)关联的动作。OpenFlow转发元件所支持的一组动作可以是可扩展的。为了高性能和低成本,数据路径可具有仔细划定的灵活度,这可意味着放弃规定每个分组的任意处理的能力并且寻求更有限的(但仍然有用的)动作范围。OpenFlow转发元件可包含具有多个流规则(具有与每个流规则关联的动作)的流表来告诉转发元件如何处理相应流,将交换机连接到远程OpenFlow控制器的安全信道(允许使用OpenFlow协议(它为控制器提供与转发元件通信的开放和标准方式)在控制器与转发元件之间发送命令和分组)。通过规定标准接口(OpenFlow协议)(可使得用外部控制器通过标准接口来定义转发元件流表中的规则/条目),研究员可不需要个别地对OpenFlow转发元件进行编程。OpenFlow转发元件可包含一个或多个流表和组表(它们可执行分组查找和转发)以及到外部OpenFlow控制器的OpenFlow信道。OpenFlow控制器经由OpenFlow协议来管理转发元件。使用此协议,控制器可以添加、更新、并且删除流规则/条目,反应性地(响应于在转发元件处接收的分组)和主动地(例如,对新的转发元件的流表进行编程)。转发元件中的每个流表可包含一组规则/条目。每个流规则/条目可包含匹配的字段、计数器和应用于匹配分组的一组指令。在转发元件处的匹配可开始于第一流表(也被称作主流表)并且可继续到转发元件的附加的流表。流规则/条目以优先级次序匹配数据分组,使用每个表中的第一匹配规则/条目。如果为流表中的数据分组找到匹配的规则/条目,则为数据分组执行与具体流规则/条目关联的指令。如果没有找到流表中的数据分组的匹配,则结果可取决于转发元件配置。可在OpenFlow信道上将数据分组转发到控制器,可分出数据分组,或匹配数据分组的尝试可继续到转发元件的下一流表。与每个流规则/条目关联的指令描述数据分组转发、数据分组修改、组表处理和管线处理。管线处理指令允许数据分组被发送到后续表用于进一步处理并且允许信息(例如,以元数据的形式)在表之间通信。当与匹配的流规则/条目关联的指令集不规定下一表时,可停止表管线处理。在此点上,通常可修改并且转发数据分组。流规则/条目可将相应数据分组转发到端口。这通常是物理端口,但它还可以是由交换机定义的虚拟端口或由OpenFlow交换机规范定义的预留虚拟端口。预留虚拟端口可规定一般转发动作,例如,使用非OpenFlow方法来发送到控制器、泛洪或转发,例如“正常”交换机处理,而交换机定义的虚拟端口可规定链路聚合组、隧道或回送接口。流规则/条目还可指向规定附加的处理的群组。群组表示用于泛洪的动作的集合,以及更复杂的转发语义(例如,多路径、快速重新路由和链路聚合)。作为间接的一般层,群组也使多个流能够转发到单个标识符(例如,转发到公共下一跳的IP)。此抽象可允许有效率地改变跨流的公共输出动作。组表可包含组条目,其中每个组条目包含动作栏目的列表(具有依赖于组类型的具体语义)。一个或多个动作栏目中的动作适用于发送到群组的数据分组。例如,在“OpenFlow交换机规范”,实现版本1.1.0(有线协议0x02),2011年2月28日中,并且参考McKeown等的标题为“OpenFlow:EnablingInnovationInCampusNetworks”,2008年3月14日,讨论OpenFlow转发元件(例如,交换机和/或路由器)、控制器和协议。以上两个参考的文档的公开据此通过引用全部并入本文。OpenFlow信道是在OpenFlow接口上连接OpenFlow转发元件与控制器的接口。接口自身可以是具体的实现,并且它可使用TCP(传输控制协议)连接或SCTP(流控制传输协议)连接来实现。此外,TLS(传输层安全)可用于发送消息(消息是由控制器加密并且由转发元件解密)。尽管有以上讨论的网络,在本领域中继续存在对包含转发元件和控制器的网络中的改进操作的需要。
技术实现思路
因此目标是处理上述缺点中的至少一些和/或改进网络性能。根据一些实施例,可提供方法来在包含转发平面和控制平面的网络的转发平面中操作转发元件。方法可包含通过转发元件的输入/输出端口来接收分组并且尝试匹配分组与转发元件的流表。响应于分组未命中与流表的匹配,可执行匹配分组与转发元件的影子表的尝试。响应于分组与影子表匹配,可基于来自影子表的匹配的影子规则在流表中安装新的流规则。此外,安装新的流规则可包含基于来自影子表的匹配的影子规则在流表中安装新的流规则而不将分组从转发元件传送到网络的控制平面。可根据来自影子表的匹配的影子规则和/或根据新的流规则通过转发元件来处理分组。通过使用影子规则来安装流规则,可减少转发元件与控制平面之间的通信业务,和/或可减少在控制平面处的处理负担。响应于分组未命中与流表的匹配以及响应于分组未命中与影子表的匹配,可将分组内(packet-in)消息传送到网络的控制平面中的控制器,其中分组内消息包含分组。分组可以是数据分组,并且响应于数据分组未命中与流表的匹配以及响应于数据分组未命中与影子表的匹配,转发元件的学习表可更新为关联数据分组的源与输入/输出端口。此外,数据分组可以是第一数据分组。响应于从对应于分组内消息的控制器接收影子修改消息,可在影子表中安装影子规则,它关联来自由第一数据分组的目的地地址识别的源的后续数据分组与转发元件的虚拟内部端口。在安装影子规则之后,可通过转发元件的输入/输出端口来接收第二数据分组,第二数据分组具有匹配第一数据分组的目的地地址的源地址。可执行匹配第二数据分组与转发元件的流表的尝试。响应于第二数据分组未命中与流表的匹配,可执行匹配第二数据分组与转发元件的影子表的尝试。响应于第二数据分组与影子表的影子规则匹配,可基于来自影子表的匹配的影子规则在流表中安装新的流规则。可根据来自影子表的匹配的影子规则和/或根据新的流规则通过转发元件来处理第二数据分组。分组可以是在转发元件的控制端口处接收的第一控制分组,用于在客户端装置与服务器装置之间的会话。响应于从对应于分组内消息的控制器接收影子修改消息,可在影子表中安装影子规则,影子规则匹配在控制端口处接收的并且具有匹配第一控制分组的源地址和/本文档来自技高网
...
操作包含影子表的转发元件的方法以及相关的转发元件

【技术保护点】
一种在包含转发平面和控制平面的网络的所述转发平面中操作转发元件的方法,所述方法包括:通过所述转发元件的输入/输出端口来接收分组;尝试匹配所述分组与所述转发元件的流表;响应于所述分组未命中与所述流表的匹配,尝试匹配所述分组与所述转发元件的影子表;以及响应于所述分组与所述影子表匹配,基于来自所述影子表的匹配的影子规则在所述流表中安装新的流规则。

【技术特征摘要】
【国外来华专利技术】2012.03.05 US 13/4124901.一种在包含转发平面和控制平面的网络的所述转发平面中操作转发元件的方法,所述方法包括:通过所述转发元件的输入/输出端口来接收分组;尝试匹配所述分组与所述转发元件的流表;响应于所述分组未命中与所述流表的匹配,尝试匹配所述分组与所述转发元件的影子表;以及响应于所述分组与所述影子表匹配,基于来自所述影子表的匹配的影子规则在所述流表中安装新的流规则。2.根据权利要求1所述的方法,其中安装所述新的流规则包括基于来自所述影子表的所述匹配的影子规则在所述流表中安装所述新的流规则而不将所述分组从所述转发元件传送到所述网络的控制平面。3.根据权利要求1所述的方法,还包括:根据来自所述影子表的匹配的影子规则和/或根据所述新的流规则通过所述转发元件来处理所述分组。4.根据权利要求1所述的方法,还包括:响应于所述分组未命中与所述流表的匹配以及响应于所述分组未命中与所述影子表的匹配,将分组内消息传送到所述网络的所述控制平面中的控制器,其中所述分组内消息包含所述分组。5.根据权利要求4所述的方法,其中所述分组包括数据分组,所述方法还包括:响应于所述数据分组未命中与所述流表的匹配以及响应于所述数据分组未命中与所述影子表的匹配,更新所述转发元件的学习表来关联所述数据分组的源与所述输入/输出端口。6.根据权利要求5所述的方法,其中所述数据分组是第一数据分组,所述方法还包括:响应于从对应于所述分组内消息的所述控制器接收影子修改消息,在所述影子表中安装影子规则,所述影子规则关联来自由所述第一数据分组的目的地地址识别的源的后续数据分组与所述转发元件的虚拟内部端口;以及在安装所述影子规则之后,通过所述转发元件的输入/输出端口来接收第二数据分组,其中所述第二数据分组具有匹配所述第一数据分组的所述目的地地址的源地址;尝试匹配所述第二数据分组与所述转发元件的所述流表;响应于所述第二数据分组未命中与所述流表的匹配,尝试匹配所述第二数据分组与所述转发元件的所述影子表;响应于所述第二数据分组与所述影子表的影子规则匹配,基于来自所述影子表的所述匹配的影子规则在所述流表中安装新的流规则;以及根据来自所述影子表的匹配的影子规则和/或根据所述新的流规则通过所述转发元件来处理所述第二数据分组。7.根据权利要求4所述的方法,其中所述分组是在所述转发元件的控制端口处接收的第一控制分组,所述第一控制分组用于在客户端装置与服务器装置之间的会话,所述方法还包括:响应于从对应于所述分组内消息的所述控制器接收影子修改消息,在所述影子表中安装影子规则,所述影子规则匹配在所述控制端口处接收的并且具有匹配所述第一控制分组的源地址和/或目的地地址的源地址和/或具有匹配所述第一控制分组的所述源地址和/或目的地地址的目的地地址的后续控制分组,其中所述影子规则从匹配控制分组来识别端口命令;在安装所述影子规则之后,通过所述转发元件的所述控制端口来接收第二控制分组,其中所述第二控制分组具有匹配所述第一控制分组的所述源地址和/或目的地地址的源地址和/或具有匹配所述第一控制分组的所述源地址和/或目的地地址的目的地地址;尝试匹配所述第二控制分组与所述转发元件的所述流表;响应于所述第二控制分组未命中与所述流表的匹配,尝试匹配所述第二控制分组与所述转发元件的所述影子表;响应于所述第二控制分组匹配所述影子表的所述影子规则,执行所述影子规则的表达引擎来识别所述第二控制分组的命令类型;响应于识别所述第二控制分组的命令类型,基于所述第二控制分组的所述命令类型在所述流表中安装新的流规则;以及将所述第二控制分组从所述转发元件的输入/输出端口转发到目的地。8.根据权利要求7所述的方法,其中所述第二控制分组包括端口命令控制分组,所述端口命令控制分组识别用于在所述客户端与服务器装置之间传送的后续数据分组的数据端口,其中安装所述新的流规则包括安装所述新的流规则来定义用于在所述客户端与服务器装置之间传送的后续数据分组的针孔,所述方法还包括:在安装所述新的流规则之后,接收具有匹配所述第一控制分组的源地址和/或目的地地址的源地址和/或具有匹配所述第一控制分组的所述源地址和/或目的地地址的目的地地址的数据分组;尝试匹配所述数据分组与所述转发元件的所述流表;以及响应于所述数据分组与所述流表的所述新的流规则匹配,根据由所述新的流规则定义的所述针孔来处理所述数据分组。9.根据权利要求4所述的方法,其中所述分组是第一分组,所述方法还包括:响应于从对应于所述分组内消息的所述控制器接收影子修改消息,在所述影子表中安装影子规则,所述影子规则定义地址和/或端口的范围/列表以及与所述第一分组的源地址和/或目的地地址关联的新的流规则;在安装所述影子规则之后,通过所述转发元件的输入/输出端口来接收第二分组,其中所述第二分组具有匹配所述第一分组的所述源地址和/或目的地地址的源地址和/或具有匹配所述第一分组的所述源地址和/或目的地地址的目的地地址;尝试匹配所述第二分组与所述转发元件的所述流表;响应于所述第二分组未命中与所述流表的匹配,尝试匹配所述第二分组与所述转发元件的所述影子表;响应于所述第二分组匹配所述影子表的所述影子规则,比较所述第二分组的源端口和/或目的地端口与由所述影子规则定义的所述地址和/或端口的范围/列表;响应于所述第二分组的所述源端口和/或目的地端口匹配由所述影子规则定义的所述地址和/或端口的范围/列表,在所述流表中安装新的流规则用于具有匹配所述第一分组的所述源地址和/或目的地地址的源地址和/或具有匹配所述第一分组的所述源地址和/或目的地地址的目的地地址并且具有来自所述第二分组的所述地址和/或端口的分组;以及将所述第二分组从所述转发元件的输入/输出端口转发到目的地。10.根据权利要求9所述的方法,所述方法还包括:在安装所述新的流规则之后,接收具有匹配所述第一分组的源地址和/或目的地地址的源地址和/或具有匹配所述第一分组的所述源地址和/或目的地地址的目的地地址并且具有来自所述第二分组的所述地址和/或端口的第三分组;尝试匹配所述第三分组与所述转发元件的所述流表;以及响应于所述第三分组与所述流表的所述新的流规则匹配,根据所述新的流规则来处理所述第三分组。11.一种在包含转发平面和控制平面的网络的所述转发平面中的转发元件,所述转发元件包括...

【专利技术属性】
技术研发人员:R苏布拉玛尼亚姆R曼希尔马拉尼
申请(专利权)人:瑞典爱立信有限公司
类型:发明
国别省市:瑞典;SE

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1