CN104871501A - 分组处理装置、流表项配置方法和程序 - Google Patents
分组处理装置、流表项配置方法和程序 Download PDFInfo
- Publication number
- CN104871501A CN104871501A CN201380066973.9A CN201380066973A CN104871501A CN 104871501 A CN104871501 A CN 104871501A CN 201380066973 A CN201380066973 A CN 201380066973A CN 104871501 A CN104871501 A CN 104871501A
- Authority
- CN
- China
- Prior art keywords
- priority
- list item
- entry
- stream
- flow
- 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.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/64—Hybrid switching systems
- H04L12/6418—Hybrid transport
-
- 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/54—Organization of routing tables
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W72/00—Local resource management
- H04W72/50—Allocation or scheduling criteria for wireless resources
- H04W72/56—Allocation or scheduling criteria for wireless resources based on priority criteria
-
- 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/02—Topology update or discovery
-
- 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/38—Flow based routing
-
- 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/64—Routing or path finding of packets in data switching networks using an overlay routing layer
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明减少在将新的流表项记录在按优先级顺序排列并保存流表项的分组处理装置中时的排序成本。所述分组处理装置具有:流表,在所述流表中能够将流表项存储在按优先级组顺序分配的区域中;表项管理单元,在从指定控制装置接收到新的流表项的情况下,根据所述新的流表项属于多个优先级组中的哪个优先级组,以及用于确定所述优先级组内的位置的层2优先级,确定所述流表中的存储位置;以及表项检索单元,从所述流表的起点进行扫描,检索具有与接收到的分组相匹配的匹配条件的表项,并确定要向接收到的分组应用的处理。
Description
技术领域
相关申请的交叉引用
本申请要求日本专利申请No.2012-276734(2012年12月19日提交)的优先权,该申请的内容通过全文应用合并于此。本发明涉及一种分组处理装置,一种流表项配置方法和一种程序,具体地,涉及一种分组处理装置,一种流表项配置方法和一种程序,其中保存多个流表项并对其进行分组处理。
背景技术
非专利文献1和2提出了称为开放流(OpenFlow)的技术。在开放流中,将通信认为是端到端的流,以每个流为单位执行路径控制、故障恢复、负载平衡和优化。非专利文献2中说明的开放流交换机设置有用于与开放流控制器进行通信的安全信道,并根据流表进行操作,在流表中,由开放流控制器根据需要命令添加或重写。在流表中,对于每个流,定义了用于与分组首部进行核对的匹配条件集合(匹配域)、流统计信息(计数器)和定义处理内容的指令(指令)(参考非专利文献2中的“5.2流表”)。
例如,当开放流交换机接收到分组时,从流表中搜索具有与接收到的分组的首部信息相匹配的匹配条件(参考非专利文献2中的“5.3匹配”)的表项。作为搜索的结果,在发现与接收到的分组相匹配的表项的情况下,开放流交换机更新流统计信息(计数器)并还对接收到的分组执行在该表项的指令域中所述的处理内容(从特定端口进行分组传输,洪泛、丢弃等)。另一方面,作为搜索的结果,在没有发现与接收到的分组相匹配的表项的情况下,开放流交换机经由安全信道向开放流控制器发送设置表项的请求,即请求发送用于处理接收到的分组的控制信息的请求。开放流交换机接收由处理内容确定的流表项并更新流表。这样,开放流交换机使用存储在流表中的表项作为控制信息,执行分组转发。
专利文献1公开了一种信息呈现装置,所述信息呈现装置包括:信息存储装置,从网络收集信息;优先级确定装置,确定信息的优先级;重要程度确定装置,根据用户对该信息的兴趣,确定重要程度;兴趣信息管理装置,管理指示用户兴趣的信息;优先级比较装置,根据优先级确定对该信息的输出和存储;排序装置,将信息按重要程度高低的顺序进行排序;详细程度确定装置,根据重要程度将该信息转换为详细程度;简约化装置,产生简约化信息;历史管理装置,排列所存储的信息;信息存储装置,存储所收集的信息;优先级监控装置,记录输出信息的优先级;以及呈现定时控制装置,控制向终端输出所收集的信息以及从网络收集信息的定时,其中所述装置以合适的定时并以合适的量呈现从网络收集的信息。
专利文献2公开了缓冲控制移位寄存器(具有优先级处理功能的移位寄存器),用于传输在ATM交换装置中存储的ATM单元,与此同时根据单元的期限执行管理。
引用列表
专利文献
1.JP专利文献特开No.JP09-81099A
2.JP专利文献特开No.JP07-254906A
非专利文献
1.Nick McKeown及7位其他作者,“OpenFlow:EnablingInnovation in Campus Networks”,[在线],[2012年11月24日执行搜索],因特网<URL:http://www.openflow.org/documents/openflow-wp-latest.pdf>
2.“Openflow Switch Specification”Version 1.3.1Implemented(Wire Protocol 0x04),[在线],[2012年12月11日执行搜索],因特网<URL:https://www.opennetworking.org/images/stories/downloads/specification/openflow-spec-v1.3.1.pdf>
发明内容
技术问题
根据本发明提供以下分析。在非专利文献1或2的开放流交换机中,已知按优先级的顺序排列和保存流表项,以较高速度执行对流表项的检索。
当从开放流控制器接收到新的流表项时,如下所述,具有上述功能的开放流交换机将新的流表项存储在流表中。首先,开放流交换机将现有的流表项的优先级与新的流表项的优先级进行比较。作为比较结果,开放流交换机检测与新的流表项最接近的低优先级侧的流表项和高优先级侧的流表项。然后,开放流交换机计算记录这两个流表项的位置,将新的流表项存储在它们之间的中间位置。
此时,可能存在将2个流表项连续存储在流表中的情况,其中在中间位置处没有空区域。在这种情况下,开放流交换机搜索与存储位置最接近的空区域,执行将现有流表项的存储位置移位预定数目个表项的处理。例如,根据移位目标的空区域的大小来确定此时的移位量。
因此,存在如下问题:在新的流表项的优先级被偏置到特定值的情况下,在流表中排序流表项的频率增加。此外,存在如下问题:根据新的流表项的优先级,当记录了1个流表项时,由于流表项的移位而导致大量排序,使得用于排序的处理时间增加,记录新的流表项所需的时间增加。
本发明的目的在于提供一种分组处理装置、一种流表项配置方法和一种程序,可以用于减少当在如上述开放流交换机所表示的以优先级顺序排列并保存将流表项分组处理装置中记录新的流表项时的排序成本。
解决方案
根据本发明的第一方面,提供了一种分组处理装置,所述分组处理装置具有:流表,在所述流表中能够将流表项存储在按优先级组顺序分配的区域中;表项管理单元,在从指定控制装置接收到新的流表项的情况下,根据所述新的流表项属于多个优先级组中的哪个优先级组,以及用于确定所述优先级组内的位置的层2优先级,确定所述流表中的存储位置;以及表项检索单元,从所述流表的起点进行扫描,检索具有与接收到的分组相匹配的匹配条件的表项,并确定要向接收到的分组应用的处理。
根据第二方面,提供了一种分组处理装置中的流表项配置方法,所述分组处理装置包括:流表,在所述流表中能够将流表项存储在按优先级组顺序分配的区域中;以及表项检索单元,从所述流表的起点进行扫描,检索具有与接收到的分组相匹配的匹配条件的表项,并确定要向接收到的分组应用的处理,所述方法包括以下步骤:在从指定控制装置接收到新的流表项的情况下,基于所述新的流表项中包括的优先级信息,辨识所述新的流表项所属的优先级组;基于所述新的流表项中包括的优先级信息,辨识用于确定在所辨识出的优先级组中的位置的层2优先级;以及在流表中将所述新的流表项存储在与所述优先级组和所述层2优先级相对应的区域中。所述方法与被称为分组处理装置的特定机制相关,在分组处理装置中,按优先级顺序排列并保存流表项。
根据第三方面,提供了一种在安装于分组处理装置中的计算机上执行的程序,所述分组处理装置包括:流表,在所述流表中能够将流表项存储在按优先级组顺序分配的区域中;以及表项检索单元,从所述流表的起点进行扫描,检索具有与接收到的分组相匹配的匹配条件的表项,并确定要向接收到的分组应用的处理,所述程序执行以下处理:在从指定控制装置接收到新的流表项的情况下,基于所述新的流表项中包括的优先级信息,辨识所述新的流表项所属的优先级组;基于所述新的流表项中包括的优先级信息,辨识用于确定在所辨识的优先级组中的位置的层2优先级;以及在流表中将所述新的流表项存储在与所述优先级组和所述层2优先级相对应的区域中。应注意,这种程序可以记录在计算机可读(非瞬时性)存储介质上。也就是说,本发明可以表现为计算机程序产品。
本发明的有利效果
根据本发明,当将新的流表项记录在按优先级顺序排列并保存流表项的分组处理装置中时,可以减少排序成本。
附图说明
图1是示出了在本发明的第一示例实施例中的分组处理装置的配置的图。
图2是示出了在本发明的第一示例实施例中的分组处理装置的详细配置的图。
图3是示出了在本发明的第一示例实施例中的分组处理装置的表项检索单元中保存的流表的示例的图。
图4是示出了在本发明的第一示例实施例中的分组处理装置的表项管理单元中保存的表项管理表的示例的图。
图5是示出了图3的表项管理表和图4的流表之间的对应关系的图。
图6是表示本发明的第一示例实施例的操作的序列图。
图7是在图5所示的状态中,在新接收到新的流表项F的情况下相应表的变化(不必要移位)的图。
图8是在图6的步骤S003中,在判断表项的移位处理是必要的的情况下进行的操作的序列图。
图9是表示在图7所示的状态中,在新接收到新的流表项G的情况下的相应表的改变(必要移位)的图。
图10是图9的接续图。
图11是图10的接续图。
具体实施方式
首先,参考附图,描述了本发明的示例实施例的概述。应注意,为了帮助理解,示例性地向相应元素添加在对概述所附的附图中的附图标记,这些附图标记不是为了将本发明限制为附图所示的模式。
在本发明的示例实施例中,本发明可以实现为分组处理装置,所述分组处理装置设置有表项管理单元(图1中的22)以及表项检索单元(图1中的21),从起点扫描流表(图1中的211),检索具有与接收到的分组相匹配的匹配条件的表项,并确定要向接收到的分组应用的处理。
更具体地,流表(图1中的211)能够将流表项存储在按优先级组顺序分配的区域中。在从指定控制装置(图1中的10)接收到新的流表项的情况下,表项管理单元(图1中的22)根据多个优先级组中新的流表项属于哪个优先级组以及确定在优先级组内的位置的层2优先级,确定在流表中的存储位置。
如上所述,在流表(图1中的211)中,由于按优先级组顺序分配区域,如果在新的流表项所属的优先级区域中存在空区域,则基于优先级的排序是不必要的。即使在新的流表项所属的优先级组的相关位置处没有空区域,仍可以在记录新的流表项时减小排序成本,而无需执行搜索最接近的空区域并移位流表项的处理。
[第一示例实施例]
图1是示出了在本发明的第一示例实施例中的分组处理装置的配置的图。参考图1,该配置示出为包括:控制装置10,对分组处理装置20发送指示在流表211中设置流表项的流表项设置消息;以及分组处理装置20,参考从控制装置10接收到的流表项,处理从另一分组处理装置、终端、服务器等接收到的分组。
控制装置10根据来自分组处理装置20的设置流表项的请求或预定通信策略,创建要在分组处理装置20中设置的流表项,并向分组处理装置20发送流表项设置消息。应注意,针对流表项,可以使用用于与分组首部核对的匹配条件(匹配域)与限定处理内容的指令(指令)的关联。应注意,针对这种类型的控制装置10,可以使用非专利文献1或2的开放流控制器。
分组处理装置20设置有表项检索单元21,从流表211中检索具有与接收到的分组相匹配的匹配条件的流表项;以及表项管理单元22,管理流表211中的流表项配置等。针对这种类型的控制装置10,除了功能性与非专利文献1或2的开放流交换机相似的物理交换机之外,还可以引述在虚拟服务器上操作的虚拟交换机,或处理来自在用户终端等上运行的高级应用的分组的软件交换机。
图2是示出了上述分组处理装置的具体配置的图。在图2的示例中,流表211能够按较高优先级的顺序存储N个流表项。当从另一分组处理装置、终端、服务器等接收到分组时,表项检索单元21将接收到的分组的首部等按顺序从在流表211中具有最高优先级的表项1开始与流表项匹配条件进行核对。作为核对的结果,在图2中的表项X处匹配条件与接收到的分组相匹配的情况下,表项检索单元21执行在与匹配条件相匹配的流表项的指令(指令)中所描述的内容处理(转发接收到的分组,重写首部等)。此外,在发现如上所述的与接收到的分组相匹配的流表项的情况下(图2中的“条件匹配”),表项检索单元21省略在表项X和以下处核对流表项过程(图2中的“省略检索”)。
图3是示出了流表211的示例的图。在本示例实施例的流表211中,按优先级组的顺序分配多个区域,可以按优先级组顺序存储流表项。通过在向每个优先级组分配的区域中的存储位置表示属于所述优先级组的流表项的组内优先级等级(层2优先级)(在本示例实施例中,优先级等级越高,存储位置就越高)。例如,图3中的表项1和表项2属于在现有流表项中具有最高优先级的优先级组=2,由于表项1比表项2具有更高的组内优先级(层2优先级),按表项1、表项2的顺序设置流表项。类似地,图3中的表项(N-1)和表项N二者都属于在现有流表项中具有最低优先级的优先组=8,由于表项(N-1)比表项N具有更高的组内优先级(层2优先级),按表项(N-1)、表项N的顺序设置流表项。应注意,图3中具有标记“:”的区域是空区域。
可以提前确定流表211中的每个优先级组中分配用于流表项存储的区域的数目,或可以在操作期间动态改变该数目。这样,可以容易地掌握在流表211中的每个优先级组中的空表项的数量。
表项管理单元22设置有表项管理表222,管理在流表211中设置的流表项的内容和位置;以及表项设置单元221,基于表项管理表222执行操作,例如请求向流表211写入等。
图4是示出了表项管理表222的示例的图。参考图4,关于存储在流表211中的每个流表项,该图示出了将优先级组、组内优先级(层2优先级)和流表项内容相关的表项以及表项号。例如,在表项管理表222中的表项No.1具有与图3的流表211的表项(N-1)的存储位置(优先级)相关的内容以及流表项内容。
图5是示出了在图3的流表211和图4的表项管理表222之间的对应关系的图。当从控制装置10接收到新流表项设置消息时,表项设置单元221根据其内容获得优先级组及组内优先级,在表项管理表222中进行记录,将该流表项记录在流表211中由优先级组和组内优先级标识的位置处。当从控制装置10接收到流表项删除指令消息时,表项设置单元221参考表项管理表222,在删除流表211中的相关流表项之后,在表项管理表222中删除与所删除的流表项相对应的表项。
应注意,在记录新的流表项的情况下(例如,在表项1和表项2之间,以及在图3的表项(N-1)和表项N之间),可以存在在流表211中根据优先级组和组内优先级标识的位置不为空的情况。在这种情况下,表项设置单元221搜索最接近的空区域,移位流表项以便确保用于存储相关的新的流表项的区域。例如,在从控制装置10接收到要在图3的表项1和表项2之间存储流表项的情况下,表项设置单元221将表项2向下移位一位,将新的流表项存储在此前存储表项2的位置处。
应注意,图1和图2所示的分组处理单元20的表项检索单元22可以由计算机程序实现,在使用其硬件配置分组处理装置20的计算机上,该计算机程序执行流表211的操作处理,并与上述表项管理表222一同工作。
接下来,参考附图,考虑本示例实施例的操作,给出了详细描述。图6是表示本发明第一示例实施例的操作的序列图。控制装置10根据来自分组处理装置20的设置流表项的请求或预定通信策略,创建要在分组处理装置20中设置的流表项,并向分组处理装置20发送流表项设置消息(步骤S001)。
当接收到新流表项设置消息时,分组处理装置20标识新的流表项所属的优先级组以及组内优先级(层2优先级)(步骤S002)。针对标识优先级组和组内优先级的方法,可以考虑多种方法:例如,可以将在来自控制装置10的新流表项设置消息中指定的优先级信息的高位比特用于标识优先级组,将低位比特用于标识组内优先级。
接下来,分组处理装置20确认在流表211中与所标识的优先级组和组内优先级相对应的位置是否为空,即对现有表项的移位操作是否是必要的(步骤S003)。
作为确认的结果,在流表211中与所标识的优先级组和组内优先级相对应的位置为空的情况下,即在可以存储新的流表项而无需执行将现有表项移位的操作的情况下(步骤S003中的“否”),分组处理装置20将新的流表项记录在流表221的相关位置中(步骤S004、S005),并将流表211中的位置(表项号)记录在表项管理表222的相关表项的表项号列中(步骤S006)。
图7是对于图5所示的状态,表示相应表在新接收新的流表项F的情况下的改变的图,其中新的表项F的优先级组为“4”且组内优先级为“2”。分组处理装置20确认在流表211中与优先级组为“4”且组内优先级为“2”相对应的位置是否为空。在图5的时间点,由于流表211中与优先级组为“4”且组内优先级为“2”相对应的位置为空,分组处理装置20将流表项F记录在从流表211顶部开始的第(X-1)个区域内。分组处理装置20将(X-1)记录在表项管理表格222中作为流表项F的表项号。
图8是在判断在流表211中没有与所标识的优先级分组和组内优先级相对应的空位置的情况下(作为图6的步骤S003的确认结果)进行的操作的序列图,即在对现有表项的移位操作是必要的情况下(步骤S003中的“是”)进行的操作的序列图。在这种情况下,分组处理装置20在所述优先级组中搜索与流表211的相关位置最接近的空区域。作为搜索的结果,在所述优先级组中没有发现空区域的情况下,分组处理装置20删除流表项设置消息,并向控制装置10返回错误(步骤S103)。控制装置10接收错误响应,并考虑从流表211中删除不必要的流表项。
另一方面,作为搜索的结果,在所述优先级组中发现了空区域的情况下,分组处理装置20通过沿空区域的方向对属于所述优先级组的流表项进行移位,来创建空区域,其中将与所标识的优先级组和组内优先级相对应的位置作为起点(步骤S104)。此后,分组处理装置20返回到图6中的步骤S004和以下步骤,执行将新的流表项记录在流表211中以及并对表项管理表222的更新。
图9是对于图7所示的状态,表示相应表在新接收新的流表项G的情况下的改变的图,其中新的表项G的优先级组为“2”且组内优先级为“4”。分组处理装置20确认在流表211中是否在与优先级组为“2”且组内优先级为“4”相对应的位置处存在空区域。在图7的时间点,由于连续存储了属于优先级组“2”的表项1(组内优先级为“2”)和表项2(组内优先级为“6”),在组内优先级为“4”流表211中没有与优先级组为“2”且组内优先级为“4”相对应的空位置。
因此,如图10所示,分组处理装置20检测到在流表211中在表项2之后存在空区域,执行将表项2的存储位置向下移位一位的移位处理。与此相结合,分组处理装置20将在表项管理表222中该表项此前为2的表项号修改为“3”。应注意,这里所述的移位操作可以仅是新的流表项的量,也就是说,仅移位1位,或考虑到将来使用,可以进行移位以便制造出多个空区域。
当可以通过移位处理来确保空区域时,在流表211中,如图11所示,分组处理装置22将新的流表项G(新的表项2)记录为表项号2。分组处理装置20将“2”记录在表项管理表222中的新的流表项G的表项号列中。
从以上描述中应清楚,根据本示例实施例,可以通过按照优先级顺序排列流表项来实现使匹配处理加速,并可以在记录新的流表项时减小排序成本。
针对本发明的相应示例实施例进行了描述,然而本发明不限于上述示例实施例,可以在不脱离本发明的基础技术构思的范围内进行多种修改、替换和调整。例如,相应附图所示的网络配置和元素配置是示例性的,以便帮助理解本发明,不是为了将本发明限制为附图所示的配置。
例如,尽管在上述示例实施例中描述了将在来自控制装置10的新流表项设置消息中指定的优先级信息的低位比特用作组内优先级,但是还可以将来自控制装置10的流表项设置消息的到达顺序用作组内优先级(层2优先级)。通过这样做,可以进一步限制流表项的移位处理的发生频率。
在上述示例实施例中,描述了当在存储新的流表项的相同优先级组中没有发现空区域时,分组处理装置20删除流表项设置消息并向控制装置10返回错误,但是还可以如下所示地执行修改实现方案。
(1)在流表211的另一优先级组中存在空区域的情况下,将新的流表项记录在相关空区域中。此外,将记录新的流表项的区域添加到向流表211的相关优先级组分配的区域(从向存在空区域的另一优先级组分配的区域删除记录先前新的流表项的区域)。在这种情况下,在存在具有空区域的多个优先级组的情况下,可以选择具有最低优先级的优先级组,或最接近该优先级的优先级组。应注意,为了不集中分配特定优先级组中的区域,对空区域的分配可以返回到删除相关优先级组的流表项时的原始优先级组。
(2)在流表211中的所有优先级组中没有空区域的情况下,删除由指定参考选择的流表项,向控制装置10进行报告。应注意,对于指定参考,可以根据例如最近使用的低优先级组和组内优先级等的参考,选择要删除的流表项。
(3)可以将流表项211的若干区域确定为初始状态下不属于任何优先级组的共享区域。这样做,可以更有效地使用流表211的区域。
最终,总结本发明的优选模式。
[第一模式]
(参考根据上述第一方面所述的分组处理装置)
[第二模式]
第一模式的分组处理装置,其中,在不存在根据所述层2优先级确定的空位置的情况下,以根据所述层2优先级确定的位置作为起点,所述表项管理单元将与所述新的流表项属于相同优先级组的流表项沿所述相同优先级组中最接近的空区域的方向移位,以存储所述新的流表项。
[第三模式]
第一或第二模式的分组处理装置,其中,所述表项管理单元使用表项管理表来管理所述流表中设置的流表项,所述表项管理表保存与所述流表中的表项一一对应的管理表项。
[第四模式]
第一模式的分组处理装置,其中,将从所述指定控制装置接收新的流表项的顺序用作所述层2优先级。
[第五模式]
根据第一到第四模式中的任一模式所述的分组处理装置,其中,当接收到新的流表项时,在所述新的流表项所属的优先级组中没有空区域的情况下,所述表项管理单元将所述新的流表项存储在所述流表中比所述新的流表项所属的优先级组低的优先级组的空区域中。
[第六模式]
第五模式的分组处理装置,其中,在所述新的流表项所属的优先级组中与所述层2优先级相对应的组内位置处没有空区域的情况下,作为存储所述新的流表项的优先级组,将所述新的流表项存储在具有空区域的优先级组中具有最低优先级的优先级组的空区域中。
[第七模式]
(参考根据以上第二方面所述的流表项配置方法。)
[第八模式]
(参考根据上述第三方面所述的程序)
应注意,与第一模式一样,第七和第八模式可以扩展为第二到第六模式。
应注意,上述专利文献和非专利文献的多种公开通过参考合并与此。可以在本发明的全部公开的范围(包括权利要求的范围)内进行对示例实施例和示例的修改和调整,还可以基于基础技术构思来进行这种修改和调整。此外,多种所公开的元素(包括对应权利要求的对应元素、对应示例实施例和示例的对应要素,对应附图的对应元素等)的多种组合和选择可以在本发明的权利要求的范围内。也就是说,本发明明确地包括本领域技术人员可以根据包括权利要求范围的整个公开及其技术构思而实现的每种类型的变形和修改。具体地,相对在本说明书中所述的数字范围,即使没有特定说明,然而应将在相对范围内包括的任意数值或小范围理解为是具体描述的示例。
附图标记列表
10 控制装置
20 分组处理装置
21 表项检索单元
22 表项管理单元
211 流表
221 表项设置单元
222 表项管理表
Claims (8)
1.一种分组处理装置,包括:
流表,在所述流表中能够将流表项存储在按优先级组顺序分配的区域中;
表项管理单元,在从指定控制装置接收到新的流表项的情况下,根据所述新的流表项属于所述多个优先级组中的哪个优先级组,以及用于确定所述优先级组内的位置的层2优先级,确定所述流表中的存储位置;
以及表项检索单元,从所述流表的起点进行扫描,检索具有与接收到的分组相匹配的匹配条件的表项,并确定要向所述接收到的分组应用的处理。
2.根据权利要求1所述的分组处理装置,其中,在不存在根据所述层2优先级确定的空位置的情况下,以根据所述层2优先级确定的位置作为起点,所述表项管理单元将与所述新的流表项属于相同优先级组的流表项沿所述相同优先级组中最接近的空区域的方向移位,以存储所述新的流表项。
3.根据权利要求1或2所述的分组处理装置,其中,所述表项管理单元使用表项管理表来管理所述流表中设置的所述流表项,所述表项管理表保存与所述流表中的表项一一对应的管理表项。
4.根据权利要求1所述的分组处理装置,其中,将从所述指定控制装置接收新的流表项的顺序用作所述层2优先级。
5.根据权利要求1-4中的任一权利要求所述的分组处理装置,其中,当接收到新的流表项时,在所述新的流表项所属的优先级组中没有空区域的情况下,所述表项管理单元将所述新的流表项存储在所述流表中比所述新的流表项所属的所述优先级组低的优先级组的空区域中。
6.根据权利要求5所述的分组处理装置,其中,在所述新的流表项所属的优先级组中与所述层2优先级相对应的组内位置处没有空区域的情况下,作为存储所述新的流表项的优先级组,将所述新的流表项存储在具有空区域的优先级组中具有最低优先级的优先级组的空区域中。
7.一种分组处理装置中的流表项配置方法,所述分组处理装置包括:流表,在所述流表中能够将流表项存储在按优先级组顺序分配的区域中;以及表项检索单元,从所述流表的起点进行扫描,检索具有与接收到的分组相匹配的匹配条件的表项,并确定要向所述接收到的分组应用的处理,所述方法包括以下步骤:
在从指定控制装置接收到新的流表项的情况下,基于所述新的流表项中包括的优先级信息,辨识所述新的流表项所属的优先级组;
基于所述新的流表项中包括的优先级信息,辨识用于确定在所辨识的优先级组中的位置的层2优先级;以及
在所述流表中将所述新的流表项存储在与所述优先级组和所述层2优先级相对应的区域中。
8.一种在安装于分组处理装置中的计算机上执行的程序,所述分组处理装置包括:流表,在所述流表中能够将流表项存储在按优先级组顺序分配的区域中;以及表项检索单元,从所述流表的起点进行扫描,检索具有与接收到的分组相匹配的匹配条件的表项,并确定要向所述接收到的分组应用的处理,所述程序执行以下处理:
在从指定控制装置接收到新的流表项的情况下,基于所述新的流表项中包括的优先级信息,辨识所述新的流表项所属的优先级组;
基于所述新的流表项中包括的优先级信息,辨识用于确定在所辨识的优先级组中的位置的层2优先级;以及
在所述流表中将所述新的流表项存储在与所述优先级组和所述层2优先级相对应的区域中。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012-276734 | 2012-12-19 | ||
JP2012276734 | 2012-12-19 | ||
PCT/JP2013/083857 WO2014098114A1 (ja) | 2012-12-19 | 2013-12-18 | パケット処理装置、フローエントリの配置方法及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104871501A true CN104871501A (zh) | 2015-08-26 |
Family
ID=50978439
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201380066973.9A Pending CN104871501A (zh) | 2012-12-19 | 2013-12-18 | 分组处理装置、流表项配置方法和程序 |
Country Status (9)
Country | Link |
---|---|
US (1) | US9876716B2 (zh) |
EP (1) | EP2938029B1 (zh) |
JP (1) | JP5967222B2 (zh) |
KR (1) | KR101746316B1 (zh) |
CN (1) | CN104871501A (zh) |
BR (1) | BR112015014211A2 (zh) |
CA (1) | CA2895688A1 (zh) |
RU (1) | RU2628477C2 (zh) |
WO (1) | WO2014098114A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI626837B (zh) * | 2016-12-01 | 2018-06-11 | 財團法人工業技術研究院 | 封包傳遞方法、封包傳遞裝置及非暫態電腦可讀取媒體 |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
ES2628094T3 (es) * | 2012-11-28 | 2017-08-01 | Nec Corporation | Dispositivo de conmutación, método y programa de gestión de configuración de VLAN |
US9692684B2 (en) * | 2014-09-05 | 2017-06-27 | Telefonaktiebolaget L M Ericsson (Publ) | Forwarding table precedence in SDN |
CN104283805B (zh) * | 2014-10-27 | 2017-11-10 | 新华三技术有限公司 | 一种sdn网络报文发送方法及设备 |
US10003529B2 (en) | 2015-08-04 | 2018-06-19 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and system for memory allocation in a software-defined networking (SDN) system |
US10911376B2 (en) * | 2016-03-31 | 2021-02-02 | Nec Corporation | Software-enhanced stateful switching architecture |
US11632332B2 (en) * | 2018-06-07 | 2023-04-18 | Vmware, Inc. | Packet classification with multiple classifiers |
JP7046288B2 (ja) | 2020-03-10 | 2022-04-01 | 三菱電機株式会社 | コントローラ、ネットワークシステムおよびフロー管理方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5535202A (en) * | 1994-03-16 | 1996-07-09 | Mitsubishi Denki Kabushiki Kaisha | Priority processing of ATM cells using shift register stages |
US20110145255A1 (en) * | 2009-12-11 | 2011-06-16 | Sap Ag. | Systems and methods for distribution of data in a database index |
WO2011083786A1 (ja) * | 2010-01-06 | 2011-07-14 | 日本電気株式会社 | 通信制御システム、及び通信制御方法 |
CN102263664A (zh) * | 2011-08-11 | 2011-11-30 | 北京星网锐捷网络技术有限公司 | 一种会话流处理方法及装置 |
WO2012032864A1 (ja) * | 2010-09-08 | 2012-03-15 | 日本電気株式会社 | スイッチシステム、スイッチ制御方法、及び記憶媒体 |
Family Cites Families (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2783212B2 (ja) | 1995-09-08 | 1998-08-06 | 日本電気株式会社 | 情報提示装置 |
JP3449326B2 (ja) * | 1999-12-08 | 2003-09-22 | 日本電気株式会社 | データ検索システム及びパケット処理装置並びに制御方法 |
US7089240B2 (en) * | 2000-04-06 | 2006-08-08 | International Business Machines Corporation | Longest prefix match lookup using hash function |
JP3591420B2 (ja) * | 2000-04-07 | 2004-11-17 | 日本電気株式会社 | ルータにおけるキャッシュテーブル管理装置およびプログラム記録媒体 |
JP2002185513A (ja) * | 2000-12-18 | 2002-06-28 | Hitachi Ltd | パケット通信ネットワークおよびパケット転送制御方法 |
JP3936883B2 (ja) * | 2002-04-08 | 2007-06-27 | 株式会社日立製作所 | フロー検出装置およびフロー検出機能を備えたパケット転送装置 |
AU2003260876A1 (en) | 2002-09-26 | 2004-04-19 | Koninklijke Philips Electronics N.V. | Multiple stream readout |
US20040151197A1 (en) * | 2002-10-21 | 2004-08-05 | Hui Ronald Chi-Chun | Priority queue architecture for supporting per flow queuing and multiple ports |
AU2004207949B8 (en) * | 2003-01-24 | 2010-05-13 | Unium Inc. | Method for secure communication and resource sharing |
US7418505B2 (en) * | 2003-05-26 | 2008-08-26 | Ewha University Industry Collaboration Foundation | IP address lookup using either a hashing table or multiple hash functions |
US7787471B2 (en) * | 2003-11-10 | 2010-08-31 | Broadcom Corporation | Field processor for a network device |
JP4336625B2 (ja) * | 2004-06-17 | 2009-09-30 | 株式会社日立製作所 | パケット転送装置 |
KR100612256B1 (ko) * | 2005-01-14 | 2006-08-14 | 삼성전자주식회사 | 터너리 내용 주소화 메모리 관리 장치 및 그 방법 |
JP4556761B2 (ja) * | 2005-05-06 | 2010-10-06 | 株式会社日立製作所 | パケット転送装置 |
EP1915732A4 (en) * | 2005-08-01 | 2010-07-14 | Volt Inf Sciences Inc | SYSTEM AND METHODS FOR MANAGING THE PROVISION OF EXCAVATED AGREEMENTS AT SERVICE LEVEL |
US7606968B2 (en) * | 2006-05-08 | 2009-10-20 | Mcdata Corporation | Multi-level content addressable memory |
JP2009239401A (ja) * | 2008-03-26 | 2009-10-15 | Alaxala Networks Corp | パケット転送装置 |
US20100064072A1 (en) * | 2008-09-09 | 2010-03-11 | Emulex Design & Manufacturing Corporation | Dynamically Adjustable Arbitration Scheme |
CN102308534A (zh) * | 2009-02-03 | 2012-01-04 | 日本电气株式会社 | 应用交换机系统和应用交换机方法 |
JP5640986B2 (ja) | 2009-10-07 | 2014-12-17 | 日本電気株式会社 | 通信システムの制御装置、制御方法及びプログラム |
US8677030B2 (en) * | 2009-12-09 | 2014-03-18 | Oracle America, Inc. | Apparatus and method for managing packet classification tables |
JP5720668B2 (ja) * | 2010-02-16 | 2015-05-20 | 日本電気株式会社 | パケット転送装置、通信システム、処理規則の更新方法およびプログラム |
KR101887581B1 (ko) * | 2011-12-26 | 2018-08-14 | 한국전자통신연구원 | 플로우 기반의 패킷 전송 장치 및 그것의 패킷 처리 방법 |
-
2013
- 2013-12-18 US US14/651,641 patent/US9876716B2/en active Active
- 2013-12-18 CN CN201380066973.9A patent/CN104871501A/zh active Pending
- 2013-12-18 EP EP13866082.4A patent/EP2938029B1/en not_active Not-in-force
- 2013-12-18 CA CA2895688A patent/CA2895688A1/en not_active Abandoned
- 2013-12-18 WO PCT/JP2013/083857 patent/WO2014098114A1/ja active Application Filing
- 2013-12-18 KR KR1020157019071A patent/KR101746316B1/ko not_active Expired - Fee Related
- 2013-12-18 JP JP2014553172A patent/JP5967222B2/ja active Active
- 2013-12-18 BR BR112015014211A patent/BR112015014211A2/pt not_active IP Right Cessation
- 2013-12-18 RU RU2015129507A patent/RU2628477C2/ru active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5535202A (en) * | 1994-03-16 | 1996-07-09 | Mitsubishi Denki Kabushiki Kaisha | Priority processing of ATM cells using shift register stages |
US20110145255A1 (en) * | 2009-12-11 | 2011-06-16 | Sap Ag. | Systems and methods for distribution of data in a database index |
WO2011083786A1 (ja) * | 2010-01-06 | 2011-07-14 | 日本電気株式会社 | 通信制御システム、及び通信制御方法 |
WO2012032864A1 (ja) * | 2010-09-08 | 2012-03-15 | 日本電気株式会社 | スイッチシステム、スイッチ制御方法、及び記憶媒体 |
CN102263664A (zh) * | 2011-08-11 | 2011-11-30 | 北京星网锐捷网络技术有限公司 | 一种会话流处理方法及装置 |
Non-Patent Citations (2)
Title |
---|
OPEN NETWORKONG FOUNDATION: "OpenFlow Switch Specification version 1.3.0", 《OPENFLOW SWITCH SPECIFICATION》 * |
Y MANOLOPOULOUS: "《Advanced Database indexing》", 7 September 2012 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI626837B (zh) * | 2016-12-01 | 2018-06-11 | 財團法人工業技術研究院 | 封包傳遞方法、封包傳遞裝置及非暫態電腦可讀取媒體 |
Also Published As
Publication number | Publication date |
---|---|
WO2014098114A1 (ja) | 2014-06-26 |
KR101746316B1 (ko) | 2017-06-12 |
CA2895688A1 (en) | 2014-06-26 |
EP2938029A4 (en) | 2016-08-10 |
EP2938029A1 (en) | 2015-10-28 |
US20150326477A1 (en) | 2015-11-12 |
JPWO2014098114A1 (ja) | 2017-01-12 |
EP2938029B1 (en) | 2019-03-27 |
RU2015129507A (ru) | 2017-01-26 |
US9876716B2 (en) | 2018-01-23 |
KR20150097663A (ko) | 2015-08-26 |
BR112015014211A2 (pt) | 2017-07-11 |
JP5967222B2 (ja) | 2016-08-10 |
RU2628477C2 (ru) | 2017-08-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104871501A (zh) | 分组处理装置、流表项配置方法和程序 | |
EP2552059B1 (en) | Packet transfer system, control apparatus, transfer apparatus, method of creating processing rules, and program | |
EP2985971B1 (en) | Reputation-based instruction processing over an information centric network | |
RU2523917C2 (ru) | Система управления связью и способ управления связью | |
US8432807B2 (en) | Network traffic analysis using a flow table | |
KR101577926B1 (ko) | 통신 노드, 패킷 처리 방법 및 프로그램 | |
KR20130052031A (ko) | 스위치 시스템, 및 데이터 전송 방법 | |
JP2014502794A (ja) | 通信経路制御システム、経路制御装置、通信経路制御方法および経路制御プログラム | |
JP3753070B2 (ja) | ノード装置 | |
JPWO2014112616A1 (ja) | 制御装置、通信装置、通信システム、スイッチの制御方法及びプログラム | |
KR101500251B1 (ko) | 통신 시스템, 노드, 패킷 전송 방법 및 프로그램을 기록한 컴퓨터 판독가능 기록 매체 | |
RU2621619C2 (ru) | Узел связи, устройство управления, система связи, способ обработки пакетов, способ управления узлом связи и программа | |
EP2938028B1 (en) | Communication node, control device, method for managing control information entries, and program | |
JPWO2014061583A1 (ja) | 通信ノード、制御装置、通信システム、パケット処理方法及びプログラム | |
KR101812856B1 (ko) | 스위치 장치, vlan 설정 관리 방법, 및 컴퓨터 판독가능 저장매체 | |
US20150381775A1 (en) | Communication system, communication method, control apparatus, control apparatus control method, and program | |
WO2014157460A1 (ja) | 通信システム、制御装置、情報収集方法およびプログラム | |
JPWO2014010723A1 (ja) | スイッチ、通信システム、スイッチ制御方法及びプログラム | |
JP6187466B2 (ja) | 制御装置、通信システム、通信方法及びプログラム | |
JP2008085886A (ja) | パケット処理装置、パケット処理方法及びパケット処理プログラム | |
JP6321496B2 (ja) | パケットヘッダ識別制御装置、制御方法、制御プログラム、および、管理装置 | |
WO2014038143A1 (en) | Flow information collecting system, method and program | |
JPWO2014010724A1 (ja) | 制御装置、通信システム、通信方法及びプログラム | |
WO2019050423A1 (ru) | Способ организации автоматической балансировки потоков многопоточного соединения на коммутационных устройствах с использованием их самообучения |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
EXSB | Decision made by sipo to initiate substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20150826 |