CN104580026A - 交换系统、交换控制系统和存储介质 - Google Patents
交换系统、交换控制系统和存储介质 Download PDFInfo
- Publication number
- CN104580026A CN104580026A CN201510082324.9A CN201510082324A CN104580026A CN 104580026 A CN104580026 A CN 104580026A CN 201510082324 A CN201510082324 A CN 201510082324A CN 104580026 A CN104580026 A CN 104580026A
- Authority
- CN
- China
- Prior art keywords
- grouping
- open flows
- forwarding
- communicator
- rule
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims description 54
- 238000012545 processing Methods 0.000 claims abstract description 26
- 230000008569 process Effects 0.000 claims description 43
- 238000004891 communication Methods 0.000 claims description 11
- 208000037656 Respiratory Sounds Diseases 0.000 claims 2
- 206010037833 rales Diseases 0.000 claims 2
- 230000009471 action Effects 0.000 description 154
- 230000006870 function Effects 0.000 description 134
- 238000010586 diagram Methods 0.000 description 21
- 230000007246 mechanism Effects 0.000 description 11
- 238000003860 storage Methods 0.000 description 11
- 230000000875 corresponding effect Effects 0.000 description 10
- 230000001276 controlling effect Effects 0.000 description 8
- 238000006243 chemical reaction Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 206010062575 Muscle contracture Diseases 0.000 description 3
- 230000006399 behavior Effects 0.000 description 3
- 208000006111 contracture Diseases 0.000 description 3
- 239000004065 semiconductor Substances 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000011112 process operation Methods 0.000 description 2
- 230000000717 retained effect Effects 0.000 description 2
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000003032 molecular docking Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000007480 spreading Effects 0.000 description 1
- 238000003892 spreading Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0806—Configuration setting for initial configuration or provisioning, e.g. plug-and-play
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
- H04L45/745—Address table lookup; Address filtering
- H04L45/74591—Address table lookup; Address filtering using content-addressable memories [CAM]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/34—Signalling channels for network management communication
- H04L41/342—Signalling channels for network management communication between virtual entities, e.g. orchestrators, SDN or NFV entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/25—Routing or path finding in a switch fabric
- H04L49/252—Store and forward routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/30—Peripheral units, e.g. input or output ports
- H04L49/3009—Header conversion, routing tables or routing tags
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
- H04L45/745—Address table lookup; Address filtering
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
一种交换机系统,通过使用交换机中的表作为现有资源,实现开放流表的条目数量的扩展。具体地,交换机基于在每个所述表中定义的条件和处理内容通过逻辑上合并多个表来配置开放流表,所述多个表中的每个表定义了给定分组的处理。交换机查阅开放流表,以确定对接收分组的处理内容。交换机基于所确定的处理内容执行接收分组的处理。
Description
本申请是2013年3月8日提交的、申请号为201180043295.5、发明名称为“交换系统、交换控制系统和存储介质”的专利申请的分案申请。
技术领域
本发明涉及交换系统,并具体地涉及其中每个交换机具有多个表的交换系统。
背景技术
为了控制网络系统中的通信路径,最近已经开发出来采用开放流(OpenFlow)技术作为针对通信设备的控制协议的路径控制方法。根据开放流技术控制路径的网络称为开放流网络。
在开放流网络中,控制器(例如OFC(开放流控制器))操作交换机(例如OFS(开放流交换机))的每个开放流表,以控制交换机的行为。控制器通过安全信道(Secure Channel)与交换机相连,以通过使用符合开放流协议的控制消息来控制交换机。
开放流网络中的交换机是构成开放流网络的边缘交换机和核心交换机,并且交换机是在控制器的控制之下。从在开放流网络中的输入侧边缘交换机处接收分组到在开放流网络中的输出侧边缘交换机处发送分组的一些列类型的分组处理称为流。
开放流表是其中注册有流条目的表,其定义了对符合预定匹配条件(规则)的分组(通信数据)要执行的预定处理内容(动作)。
根据包括在分组中协议层级的每层的首部字段中的目的地址、源地址、目的端口和源端口中的一些或所有的各种组合,定义流条目的规则,并且其可以被区别。上述地址包括MAC地址(媒体访问控制地址)和IP地址(因特网协议地址)。此外,与进入端口有关的信息也可用作流条目的规则。
流条目的动作指示操作,例如“向特定的端口输出”、“丢弃”和“重写首部”。例如,当输出端口的标识信息(例如输出端口号)出现在流条目的动作中时,交换机向该端口输出分组,并且当输出端口的标识信息没有出现时,交换机丢弃该分组。备选地,当首部信息出现在流条目的动作中时,交换机基于首部信息重写分组的首部。
开放流网络中的交换机对符合流条目的规则的分组组(分组序列)执行流条目的动作。
开放流交换机的细节在非专利文献1和2中描述。
需要大容量开放流表来控制网络上大量的流。在当前情况下,用于开放流表的TCAM(三重内容可寻址存储器)不具有大容量,并且因此不能保证必须和充足的容量。此外,难以增加在开放流表中使用的交换机的每个表(主要是TCAM)自身的容量。
作为解决上述问题的方法之一,可以使用外部TCAM,但这花费开销。此外,在用于高速传输(例如10G多端口)(具有多端口的网络设备,其可以与10G比特/秒的数据传递速率相对应)的设备中,不能使用外部TCAM。现在,不存在能够至少在10G交换机中操作的外部TCAM。
引用列表
[非专利文献1】“The OpenFlow Switch Consortium”<http://www.openflowswitch.org/>
[非专利文献2]“OpenFlow Switch Specification Version 0.9.0(Wire Protocol 0x98)July 20,2009
当前维护者:Brandon Heller(brandonhstanford.edu)”<http://www.openflowswitch.org/documents/openflow-spec-v0.9.0.pdf>
发明内容
本发明的目的是通过使用作为现有资源的交换机中的表,实现开放流表的条目数量的扩展。
本发明的交换系统包括:开放流功能部分,通过基于在每个表中定义的条件和处理内容而在逻辑上合并多个表来配置开放流表,多个表中的每个表定义对预定接收分组的处理,并且开放流功能部分查阅开放流表以确定对接收分组的处理内容;以及动作功能部分,基于预定处理内容对接收分组执行处理。
在开放流交换机中执行的本发明的交换控制方法,该交换控制方法包括:通过基于在每个表中定义的条件和处理内容在逻辑上合并多个表来配置开放流表,多个表中的每个表定义对预定接收分组的处理;查阅开放流表以确定对接收分组的处理内容;以及基于预定处理内容执行接收分组的处理。
根据本发明的程序是使用作交换机的计算机执行上述交换控制方法中的处理的程序。应当注意,根据本发明的程序可以存储在存储单元和存储介质中。
本发明允许控制器能够使用交换机中的多个表作为一个大容量的开放流表。
附图说明
图1是示出了根据本发明的交换系统的配置示例的概念性示意图;
图2是示出了根据本发明的第一示例性实施例的开放流功能部分的细节的概念性示意图;
图3是示出了根据本发明的第一示例性实施例的开放流动作解析器的细节的概念性示意图;
图4是示出了开放流表控制的概述的示意图;
图5是示出了第一类型的开放流表控制的示例的细节的示意图;
图6是示出了第二类型的开放流表控制的示例的细节的示意图;
图7A是示出了分组流入情况下,交换系统的第一操作示例的示意图;
图7B是示出了分组流入情况下,交换系统的第一操作示例的示意图;
图8A是示出了分组流入情况下,交换系统的第二操作示例的示意图;
图8B是示出了分组流入情况下,交换系统的第二操作示例的示意图;
图9是示出了第一类型的开放流表控制的特定示例的示意图;
图10是示出了开放流表控制的第二方法的特定示例的示意图;
图11是示出了根据本发明的第二示例性实施例的交换系统的示例1的细节的概念性示意图;
图12是示出了根据本发明的第二示例性实施例的交换系统的示例2的细节的概念性示意图;以及
图13是示出了根据本发明的第二示例性实施例的交换系统的示例3的细节的概念性示意图。
具体实施方式
[第一示例性实施例]
在下文中将参考附图描述本发明的第一示例性实施例。
(系统结构)
如图1所示,根据本发明的交换系统包括控制器101和交换机102。
控制器101在符合开放流协议的处理中控制交换机102。
(交换机结构)
交换机102包括协议控制部分103、输入端口104、开放流功能部分105、传统功能部分108、动作功能部分111和输出端口112。
当控制器101执行用于在符合开放流协议的处理中控制交换机102的通信时,协议控制部分103执行控制器101和交换机102之间的协议控制。协议控制部分103不需要提供在交换机102中,而可以提供在交换机102之前的级中。
输入端口104是分组输入接口。输入端口104具有开放流有效端口和开放流无效端口。开放流有效端口是符合开放流协议的输入端口,而开放流无效端口是不符合开放流协议的输入端口。
开放流功能部分105对从开放流有效端口输入的分组执行处理。
开放流功能部分105包括开放流表管理部分106和开放流动作解析器107。
开放流表管理部分106保留交换机102使用的开放流表。在开放流表中定义针对符合开放流协议的分组的动作(开放流处理的动作)。
开放流动作解析器107基于开放流表管理部分106的查询结果,确定开放流处理的动作。
传统功能部分108对从开放流无效端口输入的分组执行处理。
传统功能部分108包括传统表管理部分109和传统动作解析器110。
传统表管理部分109是交换机102使用的传统表。传统表管理部分109定义了针对不符合开放流协议的分组(通常分组等)的动作(传统处理的动作)。
传统动作解析器110基于传统表管理部分109的查询结果,确定传统处理的动作。在传统处理中,使用通常的交换功能。
动作功能部分111执行在开放流功能部分105或传统功能部分108中确定的动作。
输出端口112是分组输出接口。
(开放流处理和传统处理之间的区别)
在开放流处理中,通过外部控制器控制分组路径。控制器选择整个网络中的最优路径。相反,在传统处理中,如在通常的交换机和路由器中一样,通过自主分配来控制路径。通常的交换机和路由器从与它们的环境有关的信息确定网络状态,以选择最优路径。
在开放流处理中,可以基于多达12种类型的信息的组合来标识分组。另一方面,在传统处理中,用于标识分组的信息的类型个数少,例如在L2网络情况下的目的MAC地址和在L3网络情况下的目的IP地址。针对此原因,难以执行良好的流控制。例如,在传统处理中,具有相同目的IP地址但不同源TCP端口号的流被确定为不同的流,从而选择不同的路径。
(交换系统的完整操作)
在下文中将描述图1中的交换系统的完整操作。
(分组输入)
当新分组流入交换机102中时,交换机102在输入端口104处接收该分组。
交换机102检查接收该分组的输入端口104是否是开放流有效端口。例如,交换机102通过查阅交换机102自身或输入端口104的设置信息(config),检查接收该分组的输入端口104是否是开放流有效端口。
(从分组输入到开放流处理的转换)
当输入端口是开放流有效端口时,交换机102将分组从输入端口104向开放流功能部分105传递。
(开放流处理)
开放流功能部分105在保留交换机102的多个表的开放流表管理部分106中对传递的分组执行查询处理。
然后,开放流功能部分105基于查询结果和开放流动作解析器107中每个表的优先级,确定该分组的动作。优先级可以称为优先等级。
(从开放流处理到动作的执行的转换)
当所确定的动作是“分组输入”(向控制器询问分组的动作)时(例如当没有流条目存在时,不能确定动作),开放流功能部分105通过协议控制部分103向控制器101发出询问(例如分组的传送)。初始地,可以将除了目标是传统处理的分组的所有分组的动作设置为“分组输入”,而不加任何条件。开放流功能部分105接收作为对询问的响应的“分组输出”(来自控制器的对行为询问的结果),确定作为分组动作的内容,并将其注册到开放流表管理部分106保留的表中。在下文中,开放流功能部分105确定遵循与在开放流动作解析器107中的上述分组相同规则的分组的动作。
开放流功能部分105基于所确定的动作向动作功能部分111传送该分组。即,处理该分组的主单元从开放流功能部分105转换到动作功能部分111。
(从开放流处理到传统处理的转换)
当所确定的动作是“通常”(使用传统功能部分108处理分组)时,开放流功能部分105向传统功能部分108传递该分组。即,处理该分组的主单元从开放流功能部分105转换到传统功能部分108。
(从分组输入到传统处理的转换)
当输入端口104是开放流无效端口或先前(之前)在开放流功能部分105中确定的分组的动作是“通常”时,交换机102将该分组从输入端口104向传统功能部分108传递。即,处理该分组的主单元从输入端口104转换到传统功能部分108。
(传统处理)
传统功能部分108在被配置有交换机102的多个表的传统表管理部分109中对接收的分组执行查询处理。
(从传统处理到动作的执行的转换)
然后,传统功能部分108基于查询结果和传统动作解析器110中每个表的优先级,确定该分组的动作。即,处理该分组的主单元从传统功能部分108转换到动作功能部分111。
传统功能部分108到传统动作解析器110的传统处理使用通常的交换功能,因此省略其详细描述。
(动作的执行)
动作功能部分111执行在开放流功能部分105或传统功能部分108中确定的对该分组的动作。
作为开放流功能部分105中确定的动作的示例,列举了重写首部信息、从指定输出端口输出分组和丢弃分组的示例。作为传统功能部分108中确定的动作的示例,通过路由来传送分组等。然而,本发明不限于这些示例。
最后,当要执行的动作包括“分组输出”时,动作功能部分111根据该动作的内容,从合适的输出端口112输出分组。
(通过控制器控制开放流表)
控制器101可以通过协议控制部分103控制交换机102的开放流表管理部分106。这里,“控制开放流表管理部分106”的含义是开放流表中流条目的注册/改变/删除/批量删除等。
保留在开放流表管理部分106中用于开放流表的交换机102的每个表不一定符合开放流规范中定义的所有操作。
针对此原因,考虑到开放流表管理部分106针对开放流表保留的各个表可以实现的功能(可以设置的动作),控制器101需要控制开放流表管理部分106。
(开放流功能部分的细节)
图2是示出了本发明的开放流功能部分105的细节的示意图。
开放流功能部分105、开放流表管理部分106、开放流动作解析器107和动作功能部分111与其在图1中具有相同的机制和功能。
开放流功能部分105包括开放流表管理部分106和开放流动作解析器107。
开放流表管理部分106包括表组113和查询功能部分114。
表组113是构成开放流表的表组。
查询功能部分114基于表组113查询输入分组的数据。
查询功能部分114包括L2/L3/其他表(OF)查询功能部分115和TCAM(OF)查询功能部分116。
“OF”是“开放流”的缩写。
L2/L3/其他表(OF)查询功能部分115针对输入分组查阅L2表(OF)、L3表(OF)和其他表(OF),以查询条目。多播路由表作为其他表(OF)的示例。即,L2/L3/其他表(OF)查询功能部分115以协议的单元针对输入分组而查询表。
TCAM(OF)查询功能部分116针对输入分组查阅TCMA(OF),以查询条目。即,TCAM(OF)查询功能部分116针对输入分组查询TCAM。
(开放流功能部分的操作)
在下文中将描述图2中示出的开放流功能部分105的操作。
输入端口104将从开放流有效端口输入的分组向开放流功能部分105传递。
开放流功能部分105在被配置有交换机102的多个表的开放流表管理部分106中对传递的分组执行查询处理。
此时,开放流表管理部分106的查询功能部分114基于构成开放流表的表组113中注册的条目信息,执行查询处理。
具体地,在查询功能部分114中,L2/L3/其他表(OF)查询功能部分115首先执行查询处理,然后TCAM(OF)查询功能部分116执行查询处理。
查询功能部分114向开放流动作解析器107传递查询结果。
开放流动作解析器107基于查询结果和每个表的优先级,确定分组的动作。
(硬件的示例)
在下文中将描述用于实现根据本发明的交换系统的硬件的特定示例。
作为控制器101的示例,列举了计算机的示例,例如PC(个人计算机)、工作站、主机和超级计算机。控制器101可以是安装在计算机上的扩展板或构建在实体机器上的虚拟机(虚拟机(VM))。
作为交换机102的示例,列举了以下示例:L3交换机(层3交换机)、L4交换机(层4交换机)、L7交换机/应用交换机(层7交换机)或网络交换机(网络交换机)(例如多层交换机)。此外,作为交换机102的示例,列举了以下示例:路由器(路由器)、代理(代理)、网关、防火墙、负荷均衡器(负荷分配设备)、频带控制器/安全监控器控制器(看门人)、基站、接入点(AP)、通信卫星(CS)和具有多个通信端口的计算机。
可以通过基于程序运行并执行预定处理的处理器以及存储该程序和各种类型数据的存储器,实现协议控制部分103、开放流功能部分105、开放流表管理部分106、开放流动作解析器107、传统功能部分108、传统表管理部分109、传统动作解析器110和动作功能部分111。
作为上述处理器的示例,列举了如下示例:CPU(中央处理单元)、网络处理器(NP)、微处理器、微控制器或具有专用功能的半导体集成电路(集成电路(IC))。
作为上述存储器的示例,列举了如下示例:RAM(随机存取存储器)、半导体存储器件(例如ROM(只读存储器))、EEPROM(电可擦写可编程只读存储器)和闪存、辅助存储器件(例如HDD(硬盘驱动器)和SSD(固态驱动器))、可移除盘(例如DVD(数字通用盘))和存储介质(介质)(例如SD存储卡(安全数字存储卡))。可以采用缓冲器和寄存器。备选地,可以采用使用DAS(直接附接存储)、FC-SAN(光纤信道-存储区域网络)、NAS(网络附接存储)、IP-SAN(IP-存储区域网络)等。
可以集成处理器和存储器。例如,近年来,微计算机等已经集成到一个芯片中。因此,安装在电子设备中的单芯片微计算机可以具有处理器和存储器。
备选地,协议控制部分103、开放流功能部分105、开放流表管理部分106、开放流动作解析器107、传统功能部分108、传统表管理部分109、传统动作解析器110和动作功能部分111中的每个可以是安装在计算机上的扩展板或构建在实体机器上的虚拟机(VM)。
作为输入端口104和输出端口112的示例,列举了以下示例:半导体集成电路(例如符合网络通信的板(主板或I/O板))、网络适配器(例如NIC(网络接口卡)或类似扩展板)、通信设备(例如天线)以及通信端口(例如连接端口(连接器))。
此外,作为输入端口104和输出端口112使用的网络的示例,列举了以下示例:因特网、LAN(局域网)、无线LAN(无线LAN)、WAN(广域网)、骨干网(骨干网)、有线电视(CATV)线、固定电话网、移动电话网、WiMAX(IEEE 802.16a)、3G(第三代移动通信)、租赁线(租赁线)、IrDA(红外数据协会)、蓝牙(注册商标)、串行通信线以及数据总线。
应当注意,协议控制部分103、开放流功能部分105、开放流表管理部分106、开放流动作解析器107、传统功能部分108、传统表管理部分109、传统动作解析器110和动作功能部分111中的每个可以是模块(模块)、组件(组件)或专用设备,或它们的起始(调用)程序。
然而,本发明不限于这些示例。
(开放流动作解析器的细节)
图3是示出了本发明的开放流动作解析器107的细节的示意图。
开放流动作解析器107和TCAM(OF)查询功能部分116与其在图2中具有相同的机制和功能。
通过调整TCAM(OF)的条目映射,开放流动作解析器107可以实现为TCAM(OF)查询功能部分116的一部分。
为此原因,开放流动作解析器107和TCAM(OF)查询功能部分116实质上构成一个功能块(TCAM(OF)查询&开放流动作解析器)。该功能块具有表间优先级117和TCAM(OF)中的条目118。
表间优先级117指示期望动作优先级。TCAM(OF)中的条目118指示与优先级对应的TCAM(OF)中的条目映射。
TCAM(OF)中的条目118包括TCAM(OF)查询条目组119、L2表(OF)查询结果查阅条目120、L3表(OF)查询结果查阅条目121、其他表(OF)查询结果查阅条目122以及未命中(Miss-hit)条目123。
TCAM(OF)查询条目组119是用于实现TCAM(OF)查询功能部分116中的TCAM(OF)查询的条目集合。L2表(OF)查询结果查阅条目120是用于查阅L2表(OF)的查询结果的条目。L3表(OF)查询结果查阅条目121是用于查阅L3表(OF)的查询结果的条目。其他表(OF)查询结果查阅条目122是用于查阅其他表(OF)的查询结果的条目。未命中条目123是用于处理没有命中任何条目的作为“未命中”的条目。即,这些是定义上述相应动作的条目。
(开放流动作解析器的操作)
在下文中将描述图3中的开放流动作解析器107的操作。
作为开放流表中的查询顺序,最后,ICAM(OF)查询功能部分116执行查询。应当注意的是,在TCAM(OF)查询功能部分116的查询中,开放流动作解析器107可以通过调整可以查阅L2/L3/其他表的查询结果的交换机中的TCAM(OF)的条目映射来实现。
例如,如在表间优先级117中的针对每个表的期望动作优先级可以通过如TCAM(OF)中的条目118中的映射来处理。
在图3所示的示例的情况中,表间优先级117变成从最高优先级“全兼容(与TCAM(OF)等同)”、“L2兼容(与L2表(OF)等同)”、“L3兼容(与L3表(OF)等同)”、“其他兼容(与其他表等同)”。
用作TCAM(OF)中的条目映射,开放流动作解析器107可以按照从TCAM(OF)的最高查询优先级的如下顺序来布置“TCAM(OF)查询功能实现条目组119”、“L2表(OF)查询结果查阅条目120”、“L3表(OF)查询结果查阅条目121”、“其他表(OF)查询结果查阅条目122”和“未命中条目123”。
(TCAM(OF)查询条目组)
TCAM(OF)查询功能实现条目组119是用于实现针对查询功能的TCAM(OF)查询功能部分116的条目组。当输入分组命中TCAM(OF)查询功能实现条目组119的任意条目时,开放流动作解析器107选择该条目的动作,作为针对该分组的动作。
(L2表(OF)查询结果查阅条目)
当与输入分组对应的条目在L2表(OF)上存在时,基于L2表(OF)之前的查询结果确定命中了L2表(OF)查询结果查阅条目120。
例如,当与输入分组对应的条目在L2表(OF)的查询中存在时,设置标记“X=1”,并且当已经设置标记“X=1”时,确定在TCAM(OF)的L2表(OF)查询结果查阅条目120中命中了该条目。
当确定L2表(OF)查询结果查阅条目120被命中时,开放流动作解析器107选择L2表(OF)的条目的动作作为针对该分组的动作。
(L3表(OF)查询结果查阅条目)
当与输入分组对应的条目在L3表(OF)上存在时,基于L3表(OF)之前的查询结果,确定命中了查询结果查阅条目121。
例如,当与输入分组对应的条目在L3表(OF)的查询中存在时,设置标记“Y=1”,并且当已经设置了标记“Y=1”时,确定在TCAM(OF)上的L3表(OF)查询结果查阅条目121中命中了条目。
当确定L3表(OF)查询结果查阅条目121被命中时,开放流动作解析器107选择L3表(OF)的条目的动作作为针对该分组的动作。
(其他表(OF)查询结果查阅条目)
当与输入分组对应的条目在其他表(OF)上存在时,基于其他表(OF)之前的查询结果确定命中了查询结果查阅条目122。
例如,当与输入分组对应的条目在其他表(OF)的查询中存在时,设置标记“Z=1”,并且当已经设置了标记“Z=1”时,确定在TCAM(OF)的其他表(OF)查询结果查阅条目122中命中了条目。
当确定其他表(OF)查询结果查阅条目122被命中时,开放流动作解析器107选择其他表(OF)的条目的动作作为针对该分组的动作。
(未命中条目)
未命中条目123是当输入分组未命中任何TCAM(OF)条目时确定被命中的条目。
这里,未命中条目123是具有任意模式的分组命中的条目。当输入分组未命中任何TCAM(OF)条目并仅命中未命中条目123时,开放流动作解析器107根据分组流的设置选择“分组输入”(向控制器询问分组的动作)或“通常”(使用传统功能部分的分组处理)作为针对分组的动作。
当用户尝试改变每个表的动作优先级时,TCAM(OF)中条目的顺序可能改变。
(开放流表的控制的概述)
图4是示出了通过根据本发明的控制器进行开放流表控制的示意图。控制器101、交换机102、协议控制部分103和表组113具有与其在图1和图2中相同的机制和功能。
交换机102包括TCAM 124、L2表125、L3表126和其他表127。
TCAM 124包括TCAM(OF)和TCAM(传统)。L2表125包括L2表(OF)和L2表(传统)。L3表126包括L3表(OF)和L3表(传统)。其他表127包括其他表(OF)和其他表(传统)。
TCAM(OF)、L2表(OF)、L3表(OF)和其他表(OF)构成开放流表。
TCAM(传统)、L2表(传统)、L3表(传统)和其他表(传统)构成传统表。
通常地,交换机102上的TCAM 124、L2表125、L3表126和其他表127是物理上的一个表。
根据本发明的交换机102具有将单个物理表(TCAM 124、L2表125、L3表126和其他表127)逻辑上划分为构成开放流表的表组113和构成传统表的表组128的功能。即,交换机102基于针对每个表定义的条件和处理内容,划分并逻辑上集成一个物理表(TCAM 124、L2表125、L3表126和其他表127),以构建开放流表(表组113)和传统表(表组128)。
构成开放流表的表组113包括TCAM(OF)、L2表(OF)、L3表(OF)和其他表(OF)。
构成传统表的表组128包括TCAM(传统)、L2表(传统)、L3表(传统)和其他表(传统)。
(开放流表的控制的概述)
在下文中将描述通过图4中控制器进行开放流表控制的概述。
控制器101可以通过协议控制部分103控制交换机102的开放流表。
通常地,交换机102上的TCAM 124、L2表125、L3表126和其他表127是单个物理表。
根据本发明的交换机102具有以下功能:剪裁并使用表资源的一部分用于开放流;以及逻辑上构建构成开放流表的表组113和构成传统表的表组128。即,交换机102基于TCAM 124、L2表125、L3表126和其他表127来构建逻辑上的开放流表(表组113)和传统表(表组128)。
构成开放流表的表具有不同的可行的开放流功能。
针对此原因,控制器101需要考虑如下内容来执行开放流表控制:“1:在每个表中可以执行什么开放流功能?”和“2:要控制的条目属于哪个构成开放流表的表?”。
关于“1”,例如“控制器具有以下机制:先前输入(1nput)每个表中可以实现的功能,并当尝试其他类型的控制时返回错误”,以及“交换机具有以下机制:当目标表不具有与控制相对应的功能时,从控制器返回针对控制命令的错误”。
关于“2”,例如“将开放流表中特定范围的优先级(0-64k)分配给每个表,并且当控制器执行控制时,基于优先级范围确定要使用的表”,或“将ID分配给构成开放流表的每个表,当控制器执行控制时,基于ID确定要使用的表”。
(开放流表的控制的细节(1))
图5是示出了根据本发明的控制器进行开放流表控制的第一方法的示例的细节的示意图。这里,将描述通过使用优先级范围来指定表的情况。
控制器101、交换机102、开放流表管理部分106和表组113具有与其在图1和图2中相同的机制和功能。
开放流功能部分105的开放流表管理部分106将优先级范围分配给构成开放流表的表组113中的每个表。
在基于优先级范围指定表的情况中,表的优先级范围必须不重叠。总的优先级范围必须不超过开放流中规定的优先级范围。
控制器101基于分配给每个表的优先级范围中的值来指定表。
开放流功能部分105的开放流表管理部分106基于控制器101指定的优先级范围中的值,确定要使用的表。
(开放流表的控制的细节(2))
图6是示出了根据本发明的控制器进行开放流表控制的第二方法的示例的细节的示意图。这里,将描述通过使用表ID来指定表的情况。
控制器101、交换机102、开放流表管理部分106和表组113具有与其在图1和图2中相同的机制和功能。
开放流功能部分105的开放流表管理部分106将表ID 129分配给构成开放流表的表组113中的每个表。
在基于表ID来指定表的情况中,表ID必须不重叠。另一方面,针对表设置的优先级范围可能重叠。这是因为,根据表ID 129将每个表标识为单独的表,并且每个表的优先级是由开放流动作解析器107确定的。
控制器101根据分配给每个表的表ID 129来指定表。
开放流功能部分105的开放流表管理部分106基于由控制器101指定的表ID 129,确定要使用的表。
(分组进入时的处理操作示例(1))
图7A和7B示出了根据本发明的分组进入时交换系统的第一操作示例。为了简洁,仅示出了与操作相关的功能块。步骤S101至S107示出了从分组进入时的整个操作的流。
(1)步骤S101
控制器101向交换机102事先注册{匹配条件:目的IP=AA,动作:丢掉}的TCAM(OF)条目(1)。交换机102将TCAM(OF)条目(1)注册到表组113的TCAM(OF)中。
基于L1至L4的可选首部信息的组合,定义“匹配条件”。“动作”定义了例如对满足匹配条件的分组延迟/丢弃/重写首部信息的动作。
(2)步骤S102
控制器101向交换机102事先注册{匹配条件:目的IP=AA,动作:从端口1输出}的L3表(OF)条目(1)和{匹配条件:目的IP=BB,动作:从端口2输出}的L3表(OF)条目(2)。交换机102将L3表(OF)条目(1)和L3表(OF)条目(2)注册到表组113的L3表(OF)中。
(3)步骤S103
当分组进入时具有目的IP=AA的分组流入开放流有效端口时,输入端口104向开放流功能部分105发送该分组。
(4)步骤S104
当具有目的IP=AA的分组流到开放流有效端口时,开放流功能部分105处理该分组。
(5)步骤S105
首先,在开放流功能部分105中,L2/L3/其他表(OF)查询功能部分115在L2/L3/其他表(OF)中查询进入分组。在此查询中,分组命中L3表(OF)条目(1)。
(6)步骤S106
L2/L3/其他表(OF)查询功能部分115向开放流动作解析器107通知查询结果。在图7B中,开放流动作解析器107和TCAM(OF)查询功能部分116作为一个功能块(TCAM(OF)查询&开放流动作解析器)而示出。
(7)步骤S107
TCAM(OF)查询功能部分116在TCAM(OF)中查询进入分组。在此查询中,分组首先命中TCAM(OF)条目(1)。此时,TCAM(OF)的查询处理结束。TCAM(OF)查询功能部分116向开放流动作解析器107通知查询结果。
(8)步骤S108
开放流动作解析器107从L2/L3/其他表(OF)查询功能部分115和TCAM(OF)查询功能部分116中的每一个接收查询结果,并根据表间优先级确定针对进入分组的动作。这里,TCAM(OF)的优先级是最高的。针对此原因,开放流动作解析器107确定将TCAM(OF)条目(1)的动作(丢掉)作为针对进入分组的动作,并向动作功能部分111通知所确定的动作(丢掉)。
(9)步骤S109
动作功能部分111执行由开放流动作解析器107确定的动作(丢掉)。这里,因为动作是“丢掉”,动作功能部分111不输出该分组。动作功能部分111丢弃进入分组和属于相同流的随后的分组。
(分组进入时的处理操作示例(2))
图8A和8B示出了根据本发明的分组进入时交换系统的第二操作示例。为了简洁,仅示出了与操作相关的功能块。步骤S201至S210示出了从分组进入时的整个操作的流。
(1)步骤S201
控制器101向交换机102事先注册{匹配条件:目的IP=AA,动作:丢掉}的TCAM(OF)条目(1)。交换机102将TCAM(OF)条目(1)注册到表组113的TCAM(OF)中。
(2)步骤S202
控制器101向交换机102事先注册{匹配条件:目的IP=AA,动作:从端口1输出}的L3表(OF)条目(1)和{匹配条件:目的IP=BB,动作:从端口2输出}的L3表(OF)条目(2)。交换机102将L3表(OF)条目(1)和L3表(OF)条目(2)注册到表组113的L3表(OF)中。
(3)步骤S203
当分组进入时具有目的IP=BB的分组流入开放流有效端口时,输入端口104向开放流功能部分105发送该分组。
(4)步骤S204
当具有目的IP=BB的分组流到开放流有效端口时,开放流功能部分105处理该分组。
(5)步骤S205
首先,在开放流功能部分105中,L2/L3/其他表(OF)查询功能部分115在L2/L3/其他表(OF)中查询分组。在此查询中,分组命中L3表(OF)条目(2)。
(6)步骤S206
L2/L3/其他表(OF)查询功能部分115向开放流动作解析器107通知查询结果。在图8B中,开放流动作解析器107和TCAM(OF)查询功能部分116作为一个功能块(TCAM(OF)查询&开放流动作解析器)而示出。
(7)步骤S207
TCAM(OF)查询功能部分116在TCAM(OF)中查询进入分组。然而,因为进入分组是具有目的IP=BB的分组,该分组未命中TCAM(OF)中存在的任何条目。此时,TCAM(OF)的查询处理结束。TCAM(OF)查询功能部分116向开放流动作解析器107通知查询结果。此时,TCAM(OF)的查询处理结束。TCAM(OF)查询功能部分116向开放流动作解析器107通知查询结果。
(8)步骤S208
开放流动作解析器107从L2/L3/其他表(OF)查询功能部分115和TCAM(OF)查询功能部分116中的每一个接收查询结果,并根据表间优先级确定进入分组的动作。这里,仅在L3表(OF)条目(2)中存在目标条目。因此,开放流动作解析器107将L3表(OF)条目(2)的动作(从端口2输出)确定为针对进入分组的动作,并向动作功能部分111通知所确定的动作(从端口2输出)。
(9)步骤S209
动作功能部分111执行由开放流动作解析器107确定的动作(从端口2输出)。
(10)步骤S210
动作功能部分111向具有端口2的输出端口112输出进入分组和属于相同流的随后的分组。
(11)步骤S211
输出端口112向端口2输出从动作功能部分111输出的分组。
(12)步骤S212
从端口2输出的分组向网络流出,并向目的IP=BB发送。
在图8A和8B中,当进入分组命中多个表中的任意条目时,L2/L3/其他表(OF)查询功能部分115向开放流动作解析器107通知所有命中条目作为查询结果。当没有进入分组命中最高优先级的TCAM(OF)中的任意条目时,开放流动作解析器107在L2/L3/其他表(OF)查询功能部分115的查询结果中采用较高优先级的表中命中的条目。
在图8A和8B中,当进入分组命中与多个表中的条目时,L2/L3/其他表(OF)查询功能部分115可以根据表间优先级117向开放流动作解析器107通知在这些表中的较高优先级的表中命中的条目,作为查询结果。
(开放流表控制示例(1))
图9示出了在基于优先级范围指定表的情况下,控制器进行开放流表控制的第一方法的示例。
注册信息132是从控制器101到交换机102的开放流表管理部分106的信息。注册结果133是构成开放流表的表组113的注册结果。
当构成开放流表的表组113被假定为一个表时,交换机102根据优先级控制期望的表。
(1)步骤S301
控制器101向交换机102注册{优先级:50001,匹配条件:XXXX,动作:YYYY}的条目。
(2)步骤S302
当从控制器101注册条目时,交换机102根据条目的优先级选择L2表(OF)作为表,并将该条目注册到L2表(OF)中。
(开放流表控制示例(2))
图10示出了在基于表ID指定表的情况下,控制器进行开放流表控制的第二方法的示例。
注册信息134是从控制器到开放流表的注册信息。注册结果135是构成开放流表的表组的注册结果。
当构成开放流表的表组中的表被假定为不同的开放流表时,交换机102根据表ID控制期望的表。
(1)步骤S401
控制器101向交换机102注册{表ID:#2,优先级:1,匹配条件:XXXX,动作:YYYY}的条目。
(2)步骤S402
当从控制器101注册条目时,交换机102根据表ID选择L2表(OF)作为表,并将该条目注册到L2表(OF)中。
(第一示例性实施例的特征)
在第一示例性实施例中,开放流动作解析器可以集成多个表的资源,并相互比较表的优先级以解析动作。
因此,可以通过使用交换机的多个表的资源构建大容量的开放流表。从而,交换机可以控制大量流。
在此示例性实施例中,可以基于在使用开放流表作为一个大容量的开放流表的情况中的“优先级范围”或在使用构成开放流表的表组中的每个表作为多个不同的开放流表的情况中的“表ID”,来标识构成开放流表的每个表。
因此,由交换机的多个表构成的开放流表可以用作一个大容量的开放流表或多个不同的开放流表。从而,可以灵活控制从多个表配置的开放流表。
[第二示例性实施例]
在下文中将参考附图描述本发明的第二示例性实施例。第二示例性实施例是当TCAM(OF)查询功能部分不包括开放流动作解析器时开放流动作解析器的示例性实施例。
<示例1>
图11是示出了当通过“TCAM(OF)查询功能部分116”和“L2/L3/其他表(OF)查询功能部分115”并按此顺序执行查询时,开放流功能部分105的细节。
开放流功能部分105、开放流表管理部分106、开放流动作解析器107、动作功能部分111、表组113、查询功能部分114、L2/L3/其他表(OF)查询功能部分115和TCAM(OF)查询功能部分116具有与其在图2中相同的机制和功能。
参考图11,将描述当通过“TCAM(OF)查询功能部分116”和“L2/L3/其他表(OF)查询功能部分115”并按此顺序执行查询时,开放流功能部分105的操作。
图11示出了以下情况:在开放流表管理部分106的查询功能部分114中,TCAM(OF)查询功能部分116最终不执行查询。
在图11中,因为通过“TCAM(OF)查询功能部分116”和“L2/L3/其他表(OF)查询功能部分115”并按此顺序执行查询,则TCAM(OF)查询功能部分116可以不包括开放流动作解析器107。
<示例2>
图12是示出了当L2/L3/其他表(OF)查询功能部分115和TCAM(OF)查询功能部分116同时执行查询时,开放流功能部分105的细节的示意图。
开放流功能部分105、开放流表管理部分106、开放流动作解析器107、动作功能部分111、表组113、查询功能部分114、L2/L3/其他表(OF)查询功能部分115和TCAM(OF)查询功能部分116具有与其在图2中相同的机制和功能。
参考图12,将描述当L2/L3/其他表(OF)查询功能部分115和TCAM(OF)查询功能部分116同时执行查询时,开放流功能部分105的操作。
图12示出了以下情况:在开放流表管理部分106的查询功能部分114中,TCAM(OF)查询功能部分116最终不执行查询。
因为L2/L3/其他表(OF)查询功能部分115和TCAM(OF)查询功能部分116同时执行查询,则TCAM(OF)查询功能部分116可以不包括开放流动作解析器107。
<示例3>
图13示出了当TCAM(OF)查询功能部分116可以不包括开放流动作解析器107时开放流动作解析器107的示例性实施例。
开放流动作解析器107和动作功能部分111与其在图2中具有相同的机制和功能。
开放流动作解析器107包括查询接收部分(查询接收器)130和处理解析部分(动作解析器)131。
查询接收部分(查询接收器)130接收每个表的查询结果。处理解析部分(动作解析器)131基于每个表的查询结果,确定开放流处理。
参考图13,将描述当TCAM(OF)查询功能部分116可以不包括开放流动作解析器107时开放流动作解析器107的操作。
当TCAM(OF)查询功能部分116可以不包括开放流动作解析器107时,图13中示出的开放流动作解析器107安装在交换机102中。
在开放流动作解析器107中,查询接收部分(查询接收器)130接收每个表的查询结果。处理解析部分(动作解析器)131基于每个表的查询结果和先前设置的表间优先级,确定开放流的动作,并向动作功能部分111通知所确定的动作。
[其他示例性实施例]
虽然在每个上述示例性实施例中,将交换机102描述为开放流交换机,开放流交换机仅是示例。实际上,交换机不限于开放流交换机,并且本发明也可以适用于具有与开放流交换机相同机制和功能的任何交换机。
<本发明的特征>
本发明涉及通过集成多个表来扩展开放流表的方法。
根据本发明,在由交换机的单个表(主要是TCAM)构成的开放流表中,通过从交换机的多个表构建开放流表来实现开放流表中的流条目的数量的扩展。
在开放流技术中,传送功能和控制功能已经被安装在相同的NW设备(路由器/交换机等)中并且相互独立,传送功能仍然保留在NW设备中,而控制功能由外部控制器代替。控制器根据开放流协议,远程地操作NW设备中的开放流表以控制NW设备的行为。开放流表由包括三类信息({匹配条件、动作、统计信息})的流条目组构成。在开放流技术中,匹配条件定义了要控制的流,而动作和统计信息可以在流的单元中获取。
以下作出开放流的{匹配条件、动作、统计信息}的概述。
(匹配条件)
“进入端口(输入端口)”/“源MAC(源MAC地址)”/“目的MAC(目的地MAC地址)”/“以太类型(类型/领域)”/“VLAN ID(虚拟LAN标识信息)”/“VLAN优先级(虚拟LAN优先级)”/“源IP(源IP地址)”/“目的IP(目的地IP地址)”/“IP协议(IP协议号)”/“IP ToS(上6位)”/源端口(源端口号)”/“目的端口(目的地端口号)”。
(动作)
“转发(从物理端口输出)”/“所有(从除了输出端口以外的所有端口输出)”/“控制器(向控制器输出)”/“本地(向设备的本地栈输出)”/“表(根据开放流表中的内容输出)”/“输入端口(从输入端口输出)”/“通常(使用传统表中的内容输出)”/“泛滥(从除了输入端口和展开树的阻塞端口以外的所有端口输出)”/“丢掉(丢弃分组)”/“修改字段(重写分组的首部信息)”。
例如,在“修改字段”,“VLAN ID”、“VLAN优先级(优先级)”、“源MAC”、“目的MAC”、“源IP”、“目的IP”、“IP ToS”、“源端口”和“目的端口”的情况下可以重写。
(统计信息)
“表”、“流”、“物理端口”和“队列(队列)”单元中各种类型的统计信息。
根据本发明,通过使用交换机的多个表构成开放流表,可以实现如设备的开放流表中的流条目数量的扩展,而不增加交换机的表(主要是TCAM)自身的容量。即,交换机中多个表可以用作控制器侧的大容量的开放流表。
具体地,通过吸收每个表的功能之间的差异来实现向开放流表的集成。因为交换机的多个表中每一个具有原始用途(例如L2表中的L2中继、L3表中的L3中继),所有资源未被使用,并且部分资源被切掉并使用。
如上所述,本发明的特征是“吸收多个表的匹配条件/动作差异并将表集成到开放流表中”,以及“提供特定动作的确定方法”。
根据本发明,交换机的多个表资源的一部分用作开放流表。
根据本发明,根据可行功能(匹配条件/动作),将交换机的每个表看作“功能受限的开放流表资源”。
根据本发明,开放流动作解析器吸收每个表资源的功能(匹配条件/动作)之间的差异,并将资源集成作为开放流表资源。
根据本发明,开放流动作解析器基于包括TCAM的表的优先级(优先级)来确定动作。
在其中最终执行TCAM(OF)查询的交换机中,开放流动作解析器包括在TCAM(OF)查询功能部分中。
根据本发明,配置有多个表的开放流表由控制器灵活地控制。
根据本发明,当多个表用作一个开放流表时,基于优先级范围来标识表。
根据本发明,当多个表用作开放流表时,基于表ID来标识表。
虽然已经详细描述了本发明的示例性实施例,本发明不限于上述示例性实施例,并且不背离本发明的主题的修改落入本发明的范围中。
本申请要求基于日本专利申请号JP 2010-200690的优先权。其公开以引用方式并入本文。
Claims (10)
1.一种用于转发分组的通信装置,所述通信装置包括:
控制单元,用于基于预定控制协议与控制器进行通信,能够向多个通信装置发送第一分组转发规则;以及
表,被分为用于存储所述第一分组转发规则的第一区域和用于存储由所述通信装置设置的第二分组转发规则的第二区域。
2.根据权利要求1所述的通信装置,
其中,所述控制单元从所述控制器接收所述第一分组转发规则,所述第一分组转发规则包括:用于基于所述分组中包括的多个信息来识别所述分组的识别规则和与所述识别规则相对应的分组处理规则。
3.一种用于转发分组的通信装置,所述通信装置包括:
第一单元,用于基于预定控制协议与控制器进行通信,能够向多个通信装置发送第一分组转发规则;以及
第二单元,用于基于所述分组的输入端口,确定根据用于存储所述第一分组转发规则的第一区域还是用于存储由所述通信装置设置的第二分组转发规则的第二区域来处理分组。
4.根据权利要求3所述的通信装置,
其中,所述第一单元从所述控制器接收所述第一分组转发规则,所述第一分组转发规则包括:用于基于所述分组中包括的多个信息来识别所述分组的识别规则和与所述识别规则相对应的分组处理规则。
5.根据权利要求3所述的通信装置,
其中,所述第二单元基于所述输入端口是否与所述控制协议相关联,确定根据所述第一区域还是所述第二区域来处理所述分组。
6.一种用于转发分组的通信装置,所述通信装置包括:
第一单元,用于基于预定控制协议与控制器进行通信,能够向多个通信装置发送用于转发所述分组的第一分组转发规则;以及
第二单元,用于当用于存储所述第一分组转发规则的第一区域未存储用于转发所述分组的规则时,根据用于存储由所述通信装置设置的第二分组转发规则的第二区域来转发所述分组。
7.根据权利要求6所述的通信装置,
其中,所述第一单元从所述控制器接收所述第一分组转发规则,所述第一分组转发规则包括:用于基于所述分组中包括的多个信息来识别所述分组的识别规则和与所述识别规则相对应的分组处理规则。
8.一种通信方法,包括:
通信装置基于预定控制协议与控制器进行通信,能够向多个通信装置发送第一分组转发规则;
将所述第一分组转发规则存储到表的第一区域中;以及
将由所述通信装置设置的第二分组转发规则存储到所述表的第二区域中。
9.一种通信方法,包括:
用于转发分组的通信装置基于预定控制协议与控制器进行通信,能够向多个通信装置发送第一分组转发规则;以及
基于所述分组的输入端口,确定根据用于存储所述第一分组转发规则的第一区域还是用于存储由所述通信装置设置的第二分组转发规则的第二区域来处理所述分组。
10.一种通信方法,包括:
用于转发分组的通信装置基于预定控制协议与控制器进行通信,能够向多个所述通信装置发送用于转发所述分组的第一分组转发规则;以及
当用于存储所述第一分组转发规则的第一区域未存储用于转发所述分组的规则时,根据用于存储由所述通信装置设置的第二分组转发规则的第二区域来转发所述分组。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010200690 | 2010-09-08 | ||
JP2010-200690 | 2010-09-08 | ||
CN201180043295.5A CN103098427B (zh) | 2010-09-08 | 2011-07-21 | 交换系统、交换控制系统和存储介质 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201180043295.5A Division CN103098427B (zh) | 2010-09-08 | 2011-07-21 | 交换系统、交换控制系统和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104580026A true CN104580026A (zh) | 2015-04-29 |
CN104580026B CN104580026B (zh) | 2019-02-15 |
Family
ID=45810468
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510082324.9A Expired - Fee Related CN104580026B (zh) | 2010-09-08 | 2011-07-21 | 交换系统、交换控制系统和存储介质 |
CN201180043295.5A Expired - Fee Related CN103098427B (zh) | 2010-09-08 | 2011-07-21 | 交换系统、交换控制系统和存储介质 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201180043295.5A Expired - Fee Related CN103098427B (zh) | 2010-09-08 | 2011-07-21 | 交换系统、交换控制系统和存储介质 |
Country Status (10)
Country | Link |
---|---|
US (2) | US9577931B2 (zh) |
EP (1) | EP2615781B1 (zh) |
JP (3) | JP5561366B2 (zh) |
KR (2) | KR101538560B1 (zh) |
CN (2) | CN104580026B (zh) |
CA (1) | CA2810486A1 (zh) |
ES (1) | ES2639638T3 (zh) |
RU (1) | RU2595918C2 (zh) |
TW (1) | TWI520527B (zh) |
WO (1) | WO2012032864A1 (zh) |
Families Citing this family (55)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9117337B2 (en) * | 2011-10-26 | 2015-08-25 | Lamar Wilkinson | Performing an automatic fold-out command and assigning player entries in an online card game |
US9211474B2 (en) * | 2011-10-26 | 2015-12-15 | Lamar Wilkinson | Online card games using multiple online player preferences |
KR101577926B1 (ko) | 2012-03-19 | 2015-12-15 | 닛본 덴끼 가부시끼가이샤 | 통신 노드, 패킷 처리 방법 및 프로그램 |
US9225635B2 (en) | 2012-04-10 | 2015-12-29 | International Business Machines Corporation | Switch routing table utilizing software defined network (SDN) controller programmed route segregation and prioritization |
CN104365068B (zh) * | 2012-05-31 | 2017-08-04 | 日本电气株式会社 | 控制装置、通信系统、交换机控制方法及非瞬态计算机可读存储介质 |
US10104004B2 (en) * | 2012-11-08 | 2018-10-16 | Texas Instruments Incorporated | Openflow match and action pipeline structure |
CN103023782B (zh) * | 2012-11-22 | 2016-05-04 | 北京星网锐捷网络技术有限公司 | 一种访问三态内容寻址存储器的方法及装置 |
US9923831B2 (en) * | 2012-11-29 | 2018-03-20 | Futurewei Technologies, Inc. | Packet prioritization in a software-defined network implementing OpenFlow |
FI20126275L (fi) | 2012-12-07 | 2014-06-08 | Tellabs Oy | Menetelmä ja laitteisto ohjelmallisesti määriteltävän verkon konfiguroimiseksi |
JP5967222B2 (ja) * | 2012-12-19 | 2016-08-10 | 日本電気株式会社 | パケット処理装置、フローエントリの配置方法及びプログラム |
US9559897B2 (en) | 2012-12-21 | 2017-01-31 | Brocade Communications Systems, Inc. | Device ID assignment in a system of devices |
CN103888386B (zh) * | 2012-12-24 | 2017-10-17 | 华为技术有限公司 | 可扩展虚拟局域网报文的传输方法及装置、系统 |
KR101787861B1 (ko) * | 2013-02-27 | 2017-10-18 | 닛본 덴끼 가부시끼가이샤 | 제어 장치, 통신 시스템, 스위치 제어 방법 및 프로그램을 기록한 기록 매체 |
TWI586124B (zh) | 2013-04-26 | 2017-06-01 | Nec Corp | Communication node, communication system, packet processing method and program |
US9313102B2 (en) | 2013-05-20 | 2016-04-12 | Brocade Communications Systems, Inc. | Configuration validation in a mixed node topology |
US9853889B2 (en) | 2013-05-20 | 2017-12-26 | Brocade Communications Systems, Inc. | Broadcast and multicast traffic reduction in stacking systems |
CN103347013B (zh) * | 2013-06-21 | 2016-02-10 | 北京邮电大学 | 一种增强可编程能力的OpenFlow网络系统和方法 |
US9712431B2 (en) * | 2013-07-17 | 2017-07-18 | Kt Corporation | Methods for managing transaction in software defined network |
CN103428094B (zh) * | 2013-08-12 | 2016-08-17 | 杭州华三通信技术有限公司 | 开放流OpenFlow系统中的报文转发方法及装置 |
US10284499B2 (en) | 2013-08-22 | 2019-05-07 | Arris Enterprises Llc | Dedicated control path architecture for systems of devices |
CN104580027B (zh) * | 2013-10-25 | 2018-03-20 | 新华三技术有限公司 | 一种OpenFlow报文转发方法及设备 |
US9225641B2 (en) * | 2013-10-30 | 2015-12-29 | Globalfoundries Inc. | Communication between hetrogenous networks |
US10212083B2 (en) | 2013-10-30 | 2019-02-19 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | Openflow data channel and control channel separation |
US9185049B2 (en) | 2013-10-31 | 2015-11-10 | Brocade Communications Systems, Inc. | Techniques for simplifying stacking trunk creation and management |
US9577924B2 (en) * | 2013-11-14 | 2017-02-21 | Electronics And Telecommunications Research Institute | SDN-based network device with extended function and method of processing packet in the same device |
KR102193371B1 (ko) * | 2013-11-14 | 2020-12-21 | 한국전자통신연구원 | 확장된 기능을 구비한 sdn-기반 네트워크 장치 및 상기 장치에서의 패킷 처리 방법 |
CN105052087B (zh) * | 2013-11-19 | 2018-10-09 | 华为技术有限公司 | 一种基于流表的表项寻址方法、交换机及控制器 |
KR101527786B1 (ko) * | 2013-12-31 | 2015-06-09 | 쿨클라우드(주) | 하이브리드 sdn 네트워크 관리 방법 |
US9577932B2 (en) * | 2014-02-12 | 2017-02-21 | Brocade Communications Systems, Inc. | Techniques for managing ternary content-addressable memory (TCAM) resources in heterogeneous systems |
CN104869062B (zh) * | 2014-02-21 | 2018-11-09 | 华为技术有限公司 | 一种数据包转发方法及设备 |
EP2919423B1 (en) | 2014-03-12 | 2018-11-14 | Xieon Networks S.à.r.l. | A network element of a software-defined network |
US9692695B2 (en) | 2014-03-27 | 2017-06-27 | Brocade Communications Systems, Inc. | Techniques for aggregating hardware routing resources in a multi-packet processor networking system |
US9692652B2 (en) | 2014-04-03 | 2017-06-27 | Brocade Communications Systems, Inc. | Framework for reliably communicating port information in a system of devices |
US10257091B2 (en) | 2014-04-08 | 2019-04-09 | Hewlett Packard Enterprise Development Lp | Pipeline table identification |
US10142220B2 (en) | 2014-04-29 | 2018-11-27 | Hewlett Packard Enterprise Development Lp | Efficient routing in software defined networks |
WO2015167597A1 (en) * | 2014-04-30 | 2015-11-05 | Hewlett-Packard Development Company, L.P. | Data plane to forward traffic based on communications from a software defined networking (sdn) controller during control plane failure |
RU2668065C2 (ru) | 2014-05-27 | 2018-09-25 | Хуавей Текнолоджиз Ко., Лтд. | Способ управления таблицей потока и соответствующие устройство и система |
EP3142310B1 (en) * | 2014-06-30 | 2022-06-15 | Huawei Technologies Co., Ltd. | Method, device, and system for configuring flow entries |
WO2016017182A1 (ja) * | 2014-08-01 | 2016-02-04 | 日本電気株式会社 | 制御装置および制御方法 |
US10091059B2 (en) | 2014-12-16 | 2018-10-02 | Arris Enterprises Llc | Handling connections between network devices that support multiple port communication modes |
KR101669518B1 (ko) * | 2014-12-30 | 2016-10-27 | 주식회사 시큐아이 | Sdn 기반의 네트워크 모듈 관리 장치 및 방법 |
CN104683333A (zh) * | 2015-02-10 | 2015-06-03 | 国都兴业信息审计系统技术(北京)有限公司 | 基于sdn的实现异常流量拦截的方法 |
WO2017018989A1 (en) * | 2015-07-24 | 2017-02-02 | Hewlett Packard Enterprise Development Lp | Simultaneous processing of flow tables |
CN106302265B (zh) * | 2016-07-21 | 2019-08-06 | 新华三技术有限公司 | 报文转发方法及装置 |
US10439932B2 (en) * | 2016-10-05 | 2019-10-08 | Avago Technologies International Sales Pte. Limited | System and method for flow rule management in software-defined networks |
KR101870146B1 (ko) * | 2016-10-12 | 2018-06-25 | 아토리서치(주) | 리프-스파인 구조의 소프트웨어 정의 네트워킹에서 목적지 기반 패킷 전송 제어 방법 및 장치 |
CN106789706B (zh) * | 2016-11-11 | 2020-08-07 | 天津光电通信技术有限公司 | 一种基于tcam的网络分流系统 |
TWI626837B (zh) * | 2016-12-01 | 2018-06-11 | 財團法人工業技術研究院 | 封包傳遞方法、封包傳遞裝置及非暫態電腦可讀取媒體 |
US10404594B2 (en) * | 2016-12-13 | 2019-09-03 | Oracle International Corporation | System and method for providing partitions of classification resources in a network device |
RU178460U1 (ru) * | 2017-03-15 | 2018-04-04 | Общество с ограниченной ответственностью "БУЛАТ" | Управляемый Ethernet коммутатор |
KR101877004B1 (ko) * | 2017-09-29 | 2018-07-10 | 주식회사 쏠리드 | 오픈플로우 기반의 분산 안테나 시스템 |
CN109995659B (zh) | 2017-12-29 | 2022-03-01 | 阿里巴巴集团控股有限公司 | 一种网络通信方法及装置 |
RU183526U1 (ru) * | 2018-03-07 | 2018-09-25 | Общество с ограниченной ответственностью "БУЛАТ" | Ethernet коммутатор |
RU186859U1 (ru) * | 2018-11-21 | 2019-02-06 | Общество с ограниченной ответственностью "БУЛАТ" | Мультисервисный маршрутизатор |
KR102211282B1 (ko) * | 2019-11-20 | 2021-02-03 | (주)파이브텍 | 데이터 라우팅 방법 및 이를 지원하는 스위치 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040202158A1 (en) * | 2000-12-18 | 2004-10-14 | Hirokazu Takeno | Packet communication network and packet transfer control method |
CN1710879A (zh) * | 2004-06-17 | 2005-12-21 | 株式会社日立制作所 | 数据包传送装置 |
US20060101343A1 (en) * | 2004-11-05 | 2006-05-11 | Masahiro Machida | Image forming apparatus, display screen customization method in image forming apparatus and display screen customization program |
CN101753544A (zh) * | 2008-12-05 | 2010-06-23 | 华为技术有限公司 | 包过滤规则处理方法及系统、媒体网关和媒体网关控制器 |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100333250B1 (ko) * | 1998-10-05 | 2002-05-17 | 가나이 쓰토무 | 패킷 중계 장치 |
JP3936883B2 (ja) * | 2002-04-08 | 2007-06-27 | 株式会社日立製作所 | フロー検出装置およびフロー検出機能を備えたパケット転送装置 |
JP2003304293A (ja) * | 2002-04-10 | 2003-10-24 | Hitachi Ltd | パケット中継装置 |
NO318843B1 (no) * | 2002-11-13 | 2005-05-09 | Telenor Asa | AHN-nettverk |
FR2849975B1 (fr) | 2003-01-14 | 2005-09-23 | Cit Alcatel | Procede de configuration d'un chemin de routage dans un routeur ip et reseau |
US7308505B2 (en) | 2003-12-17 | 2007-12-11 | International Business Machines Corporation | Method, system and program product for facilitating forwarding of data packets through a node of a data transfer network using multiple types of forwarding tables |
JP4487237B2 (ja) * | 2003-12-25 | 2010-06-23 | エルピーダメモリ株式会社 | 半導体装置 |
JP2005252954A (ja) | 2004-03-08 | 2005-09-15 | Fujitsu Ltd | テーブル検索装置 |
JP2005277731A (ja) | 2004-03-24 | 2005-10-06 | Seiko Epson Corp | ネットワークシステム、ネットワーク機器、及び、これらの制御方法 |
JP2006101343A (ja) * | 2004-09-30 | 2006-04-13 | Oki Techno Creation:Kk | パケット処理装置、パケット処理方法およびパケット処理プログラム |
JP2006174350A (ja) * | 2004-12-20 | 2006-06-29 | Fujitsu Ltd | 通信装置 |
US7281085B1 (en) * | 2005-01-31 | 2007-10-09 | Netlogic Microsystems, Inc. | Method and device for virtualization of multiple data sets on same associative memory |
TWI325705B (en) * | 2006-06-01 | 2010-06-01 | Via Tech Inc | Method and apparatus for packet switching |
CN101247337B (zh) * | 2008-02-18 | 2012-11-21 | 华为技术有限公司 | 一种报文转发的方法和设备 |
JP5050978B2 (ja) * | 2008-04-21 | 2012-10-17 | 富士通株式会社 | 伝送情報転送装置及び方法 |
CN102308534A (zh) | 2009-02-03 | 2012-01-04 | 日本电气株式会社 | 应用交换机系统和应用交换机方法 |
JP2010200690A (ja) | 2009-03-04 | 2010-09-16 | Kyushu Univ | 新規スフィンゴ脂質及びその製造方法 |
US8289977B2 (en) * | 2009-06-10 | 2012-10-16 | International Business Machines Corporation | Two-layer switch apparatus avoiding first layer inter-switch traffic in steering packets through the apparatus |
US8677030B2 (en) * | 2009-12-09 | 2014-03-18 | Oracle America, Inc. | Apparatus and method for managing packet classification tables |
US8817629B2 (en) * | 2010-03-16 | 2014-08-26 | Deutsche Telekom Ag | Method for routing-assisted traffic monitoring |
-
2011
- 2011-07-21 RU RU2013110063/08A patent/RU2595918C2/ru not_active Application Discontinuation
- 2011-07-21 CA CA 2810486 patent/CA2810486A1/en not_active Abandoned
- 2011-07-21 US US13/821,344 patent/US9577931B2/en active Active
- 2011-07-21 JP JP2012532901A patent/JP5561366B2/ja not_active Expired - Fee Related
- 2011-07-21 CN CN201510082324.9A patent/CN104580026B/zh not_active Expired - Fee Related
- 2011-07-21 CN CN201180043295.5A patent/CN103098427B/zh not_active Expired - Fee Related
- 2011-07-21 ES ES11823343.6T patent/ES2639638T3/es active Active
- 2011-07-21 WO PCT/JP2011/066524 patent/WO2012032864A1/ja active Application Filing
- 2011-07-21 EP EP11823343.6A patent/EP2615781B1/en not_active Not-in-force
- 2011-07-21 KR KR1020137006089A patent/KR101538560B1/ko active IP Right Grant
- 2011-07-21 KR KR1020157007618A patent/KR101627475B1/ko active IP Right Grant
- 2011-07-28 TW TW100126737A patent/TWI520527B/zh active
-
2014
- 2014-04-16 JP JP2014084534A patent/JP5773020B2/ja not_active Expired - Fee Related
-
2015
- 2015-04-03 JP JP2015076975A patent/JP5962808B2/ja not_active Expired - Fee Related
- 2015-06-19 US US14/745,020 patent/US20150312147A1/en not_active Abandoned
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040202158A1 (en) * | 2000-12-18 | 2004-10-14 | Hirokazu Takeno | Packet communication network and packet transfer control method |
CN1710879A (zh) * | 2004-06-17 | 2005-12-21 | 株式会社日立制作所 | 数据包传送装置 |
US20060101343A1 (en) * | 2004-11-05 | 2006-05-11 | Masahiro Machida | Image forming apparatus, display screen customization method in image forming apparatus and display screen customization program |
CN101753544A (zh) * | 2008-12-05 | 2010-06-23 | 华为技术有限公司 | 包过滤规则处理方法及系统、媒体网关和媒体网关控制器 |
Non-Patent Citations (2)
Title |
---|
ONF: "OpenFlow Switch Specification Version 1.0.0(Wire Protocol 0x01)", 《OPENFLOW NETWORK FOUDATION》 * |
戴锦友等: "电信级以太网虚拟硬件方法的研究", 《算机科学》 * |
Also Published As
Publication number | Publication date |
---|---|
CN103098427B (zh) | 2015-10-21 |
KR20130050356A (ko) | 2013-05-15 |
JP5561366B2 (ja) | 2014-07-30 |
JP5773020B2 (ja) | 2015-09-02 |
CA2810486A1 (en) | 2012-03-15 |
ES2639638T3 (es) | 2017-10-27 |
JP5962808B2 (ja) | 2016-08-03 |
RU2013110063A (ru) | 2014-10-20 |
JPWO2012032864A1 (ja) | 2014-01-20 |
CN103098427A (zh) | 2013-05-08 |
EP2615781B1 (en) | 2017-06-14 |
TW201215037A (en) | 2012-04-01 |
KR101627475B1 (ko) | 2016-06-03 |
JP2015156697A (ja) | 2015-08-27 |
TWI520527B (zh) | 2016-02-01 |
EP2615781A1 (en) | 2013-07-17 |
WO2012032864A1 (ja) | 2012-03-15 |
US20130170495A1 (en) | 2013-07-04 |
KR20150039877A (ko) | 2015-04-13 |
RU2595918C2 (ru) | 2016-08-27 |
EP2615781A4 (en) | 2014-03-12 |
US20150312147A1 (en) | 2015-10-29 |
US9577931B2 (en) | 2017-02-21 |
JP2014161083A (ja) | 2014-09-04 |
CN104580026B (zh) | 2019-02-15 |
KR101538560B1 (ko) | 2015-07-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103098427B (zh) | 交换系统、交换控制系统和存储介质 | |
US12101218B2 (en) | Transmit specific traffic along blocked link | |
CN106789667B (zh) | 一种数据转发方法、相关设备及系统 | |
JP5440712B2 (ja) | 通信システム、通信装置、制御装置、パケットフローの転送経路の制御方法及びプログラム | |
US9215175B2 (en) | Computer system including controller and plurality of switches and communication method in computer system | |
RU2595963C2 (ru) | Система коммутации и способ пересылки данных | |
CN112448900A (zh) | 一种数据传输方法及装置 | |
CN103444143A (zh) | 网络系统及策略路由设置方法 | |
EP2596603B1 (en) | Ethernet switch and method for routing ethernet data packets | |
CN110300073A (zh) | 级联端口的目标选择方法、聚合装置及存储介质 | |
TWI432054B (zh) | 一種構建網路的方法和系統 | |
US6714556B1 (en) | In-band management of a stacked group of switches by a single CPU |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20190215 |