CN104796336B - 一种配置、下发流表项的方法及装置 - Google Patents
一种配置、下发流表项的方法及装置 Download PDFInfo
- Publication number
- CN104796336B CN104796336B CN201410025787.7A CN201410025787A CN104796336B CN 104796336 B CN104796336 B CN 104796336B CN 201410025787 A CN201410025787 A CN 201410025787A CN 104796336 B CN104796336 B CN 104796336B
- Authority
- CN
- China
- Prior art keywords
- flow table
- flow
- data packet
- table item
- message
- 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.)
- Active
Links
Classifications
-
- 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/42—Centralised 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/02—Topology update or discovery
- H04L45/036—Updating the topology between route computation elements, e.g. between OpenFlow controllers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请提供了一种配置、下发流表项的方法及装置,交换机向控制器发送一个请求下发流表项的请求消息,请求消息中携带有待转发的数据包,控制器接收该请求消息后,生成与待转发的数据包匹配的所有流表项,并向交换机返回一个携带有与待转发的数据包匹配的所有流表项的响应消息,交换机接收到该响应消息后,从响应消息中提取出与待转发的数据包匹配的所有流表项,将提取出的所有流表项聚合为硬件层的流表项,并在交换机支持硬件层的流表项时,将硬件层的流表项配置到硬件层的流表中。本申请提供的配置、下发流表项的方法及装置,能够缩短硬件层的流表项配置到硬件层的流表中的时间,进而能够缩短数据包的转发时延,并且,能够降低数据包的丢包数量。
Description
技术领域
本发明涉及通信网络技术领域,尤其涉及一种配置、下发流表项的方法及装置。
背景技术
OpenFlow网络,是一种新型的网络创新架构,主要由控制器和交换机组成。交换机功能专注而简化,只负责数据转发,控制器则对整个网络进行集中控制,实现控制层功能。控制器通过标准的OpenFlow协议与交换机进行信息交互,从而进行统一、灵活、高效的网络维护和管理。
交换机是整个OpenFlow网络的核心部件,而流表记录了交换机转发数据包的规则。流表通常由多个流表项组成,每个流表项为一个数据包转发规则,交换机通过查询流表来获得转发数据包的转发规则。交换机的软件系统包括软件层和硬件层,在现有技术中,交换机与控制器的工作过程为:交换机接收到一个数据包后,在硬件层的流表中查找与数据包匹配的流表项,如果在硬件层的流表中没有查找到匹配的流表项,则在软件层的流表中接着查找流表项,如果在软件层的流表中也没有查找到匹配的流表项,就把数据包上报给控制器;控制器产生与数据包匹配的流表项,并将数据包和流表项(下发的流表项可以是匹配的所有流表项,也可以是匹配的所有流表项中从未下发过的流表项)下发给交换机;交换机接收到控制器下发的流表项后,先将其保存到软件层的流表中,然后在软件层的流表中查找与数据包匹配的所有流表项,最后将匹配的所有流表项聚合为硬件层的流表项,并将该硬件层的流表项保存到硬件层的流表中。当交换机后续再接收到数据包后,就可以直接在硬件层的流表中查找匹配的流表项,并按照该匹配的流表项的数据包转发规则转发该数据包。
发明人在实现本发明创造的过程中发现:在现有技术中,当交换机配置硬件层的流表项时,需要在软件层的流表中查找与数据包匹配的所有流表项,而在软件层的流表中查找匹配的所有流表项的过程本身往往会经历比较长的时间,由此也会增加硬件层的流表项的配置时间,进而导致数据包的转发时延增大,并且,可能产生数据丢包的问题,特别是在高速转发数据包的情况下,数据包丢包的问题可能会更加严重。
发明内容
有鉴于此,本发明提供了一种配置、下发流表项的方法及装置,用以解决现有技术中硬件层的流表项的配置时间较长,导致数据包的转发时延增大,并且,可能产生数据丢包的问题,其技术方案如下:
第一方面,一种配置流表项的方法,所述方法包括:
交换机向控制器发送一个请求下发流表项的请求消息,所述请求消息中携带有待转发的数据包;
所述交换机接收所述控制器返回的一个响应消息,所述响应消息中携带有与所述待转发的数据包匹配的所有流表项;
所述交换机从所述响应消息中提取与所述待转发的数据包匹配的所有流表项;
所述交换机将提取出的所有流表项聚合为硬件层的流表项,并在所述交换机支持所述硬件层的流表项时,将所述硬件层的流表项配置到硬件层的流表中。
结合第一方面,在第一方面的第一种可能的实现方式中,所述方法还包括:
通过所述响应消息中携带的,与所述待转发的数据包匹配的所有流表项转发所述待转发的数据包。
结合第一方面、第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述交换机和所述控制器之间通过OpenFlow协议进行通信,所述请求消息和所述响应消息通过所述OpenFlow协议传输。
结合第一方面的第二种可能的实现方式,在第一方面的第三种可能的实现方式中,所述响应消息为扩展的ofp_flow_mod消息,所述扩展的ofp_flow_mod消息为在ofp_flow_mod消息中定义一个数组后所得到的消息,并且,所述扩展的ofp_flow_mod消息通过定义的数组可同时携带多个流表项。
结合第一方面的第三种可能的实现方式,在第一方面的第四种可能的实现方式中,所述响应消息还携带有消息类型标识以及流表项数量标识,所述消息类型标识用于指示所述响应消息为扩展的ofp_flow_mod消息,所述流表项数量标识用于指示所述扩展的ofp_flow_mod消息中携带的流表项的数量。
结合第一方面、第一方面的第一种可能的实现方式、第一方面的第二种可能的实现方式、第一方面的第三种可能的实现方式、第一方面的第四种可能的实现方式,在第一方面的第五种可能的实现方式中,所述方法还包括:将提取出的所有流表项配置到软件层的流表中。
第二方面,一种下发流表项的方法,所述方法包括:
控制器接收交换机发送的一个请求下发流表项的请求消息,所述请求消息中携带有待转发的数据包;
所述控制器生成与所述待转发的数据包匹配的所有流表项;
所述控制器向所述交换机返回一个响应消息,所述响应消息中携带有与所述待转发的数据包匹配的所有流表项,其中,与所述数据包匹配的所有流表项用于聚合为硬件层的流表项,所述硬件层的流表项用于配置到所述交换机的硬件层的流表中。
结合第二方面,在第二方面的第一种可能的实现方式中,所述控制器和所述交换机之间通过OpenFlow协议进行通信,所述请求消息和所述响应消息通过所述OpenFlow协议传输。
结合第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,所述响应消息为扩展的ofp_flow_mod消息,所述扩展的ofp_flow_mod消息为在ofp_flow_mod消息中定义一个数组后所得到的消息,并且,所述扩展的ofp_flow_mod消息通过定义的数组可同时携带多个流表项。
第三方面,一种配置流表项的装置,所述装置包括:
发送模块,用于向控制器发送一个请求下发流表项的请求消息,所述请求消息中携带有待转发的数据包;
接收模块,用于接收所述控制器返回的一个响应消息,所述响应消息中携带有与所述待转发的数据包匹配的所有流表项;
提取模块,用于从所述接收模块接收的所述响应消息中提取与所述待转发的数据包匹配的所有流表项;
硬件层配置模块,用于将所述提取模块提取出的所有流表项聚合为硬件层的流表项,并在所述交换机支持所述硬件层的流表项时,将所述硬件层的流表项配置到硬件层的流表中。
结合第三方面,在第三方面的第一种可能的实现方式中,所述装置还包括:
转发模块,用于通过所述接收模块接收的所述响应消息中携带的与所述待转发的数据包匹配的所有流表项转发所述待转发的数据包。
结合第三方面、第三方面的第一种可能的实现方式,在第三方面的第二种可能的实现方式中,所述交换机和所述控制器之间通过OpenFlow协议进行通信,所述请求消息和所述响应消息通过所述OpenFlow协议传输。
结合第三方面的第二种可能的实现方式,在第三方面的第三种可能的实现方式中,所述响应消息为扩展的ofp_flow_mod消息,所述扩展的ofp_flow_mod消息为在ofp_flow_mod消息中定义一个数组后所得到的消息,并且,所述扩展的ofp_flow_mod消息通过定义的数组可同时携带多个流表项。
结合第三方面的第三种可能的实现方式中,在第三方面的第四种可能的实现方式中,所述响应消息还携带有消息类型标识以及流表项数量标识,所述消息类型标识用于指示所述响应消息为扩展的ofp_flow_mod消息,所述流表项数量标识用于指示所述扩展的ofp_flow_mod消息中携带的流表项的数量。
结合第三方面、第三方面的第一种可能的实现方式、第三方面的第二种可能的实现方式、第三方面的第三种可能的实现方式、第三方面的第四种可能的实现方式,在第三方面的第五种可能的实现方式中,所述装置还包括:
软件层配置模块,用于将提取出的所有流表项配置到软件层的流表中。
第四方面,一种下发流表项的装置,所述装置包括:
接收模块,用于接收交换机发送的一个请求下发流表项的请求消息,所述请求消息中携带有待转发的数据包;
流表项生成模块,用于生成与所述待转发的数据包匹配的所有流表项;
发送模块,用于向所述交换机返回一个响应消息,所述响应消息中携带有与所述待转发的数据包匹配的所有流表项,其中,与所述待转发的数据包匹配的所有流表项用于聚合为硬件层的流表项,所述硬件层的流表项用于配置到所述交换机的硬件层的流表中。
结合第四方面,在第四方面的第一种可能的实现方式中,所述控制器和所述交换机之间通过OpenFlow协议进行通信,所述请求消息和所述响应消息通过所述OpenFlow协议传输。
结合第四方面的第一种可能的实现方式,在第四方面的第二种可能的实现方式中,所述响应消息为扩展的ofp_flow_mod消息,所述扩展的ofp_flow_mod消息为在ofp_flow_mod消息中定义一个数组后所得到的消息,并且,所述扩展的ofp_flow_mod消息通过定义的数组可同时携带多个流表项。
上述技术方案具有如下有益效果:
本发明提供的配置、下发流表项的方法及装置,由于控制器可将与数据包匹配的所有流表项绑定在一起通过一条消息下发至交换机,因此,交换机在接收到控制器下发的消息时,可从接收的消息中获取与数据包匹配的所有流表项,从而可以直接将与数据包匹配的所有流表项聚合为硬件层的流表项并配置到硬件层的流表中。本发明提供的配置、下发流表项的方法及装置与现有技术相比,由于交换机不用在软件的层流表中查找与数据包匹配的所有流表项,因此,缩短了硬件层的流表项的配置时间,进而缩短了数据包的转发时延,并且,降低了数据包的丢包数量。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例提供的一种配置流表项的方法的流程示意图;
图2为本发明实施例提供的另一种配置流表项的方法的流程示意图;
图3为本发明实施例提供的一种下发流表项的方法的流程示意图;
图4为控制器产生的与数据包匹配的流表项的示意图;
图5为本发明实施例提供的一种配置流表项的装置50的结构示意图;
图6为本发明实施例提供的一种下发流表项的装置60的结构示意图;
图7为本发明实施例提供的一种交换机70的结构示意图;
图8为本发明实施例提供的一种控制器80的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在现有技术中,控制器确定出与交换机上报的数据包匹配的流表项之后,将数据包和匹配的流表项下发给交换机,在第一种可能的情况中,控制器下发与数据包匹配的所有流表项,在第二种可能的情况中,控制器只下发其没有下发过的流表项,具体的,控制器通过ofp_flow_mod消息下发流表项,对于ofp_flow_mod消息而言,其只能携带一个流表项。示例性的,与数据包匹配的流表项为流表项a、流表项b、流表项c和流表项d,对于第一种可能的情况,控制器将与数据包匹配的流表项a、流表项b、流表项c和流表项d全部下发,具体的,控制器通过四条ofp_flow_mod消息下发流表项a、流表项b、流表项c和流表项d;对于第二种可能的情况,如果流表项b和流表项c已下发过,那么控制器只下发流表项a和流表项d,具体的,控制器通过两条ofp_flow_mod消息下发流表项a和流表项d。
对于第一种可能的情况,交换机虽然能够接收到控制器下发的与数据包匹配的所有流表项,但由于这些流表项是通过多条ofp_flow_mod消息下发下来,因此,这些流表项对于交换机而言就是一个个孤立的流表项,交换机不知道这些流表项之间是否有关联。对于第二种可能情况,一方面,交换机不知道控制器下发的流表项之间是否有关联,另一方面,由于控制器下发的只是与数据包匹配的部分流表项,因此,交换机无法得知其它与数据包匹配的流表项。
上述过程导致,交换机在接收到控制器下发的流表项后,必须先把接收的流表项保存到软件层的流表中,然后再在软件层的流表中查找,才能得到与接收的数据包匹配的所有流表项,进而进行硬件层的流表项的配置。而在软件层的流表中查找与数据包匹配的所有流表项的过程导致硬件层的流表项配置到硬件层的时延增大,进而导致在硬件层转发数据包的时延增大,并且,在高速发包的情况下,数据包丢包严重。
基于上述问题,请参阅图1,为本发明实施例提供的一种配置流表项的方法的流程示意图,本实施例所述技术方案可具体应用于OpenFlow网络中,OpenFlow网络中的交换机和控制器之间通过OpenFlow协议进行通信,该方法可以包括:
步骤S101:交换机向控制器发送一个请求下发流表项的请求消息,请求消息中携带有待转发的数据包。
交换机在接收到待转发的数据包时,先在硬件层的流表中查找与待转发的数据包匹配的流表项,如果没有查找到与待转发的数据包匹配的流表项,则接着在软件层的流表中查找与待转发的数据包匹配的流表项,如果在软件层的流表中也没有查找到与待转发的数据包匹配的流表项,则向控制器发送一个请求下发流表项的请求消息,请求消息中携带待转发的数据包。
具体的,在OpenFlow网络中,请求下发流表项的请求消息可以为packet_in消息。
步骤S102:交换机接收控制器返回的一个响应消息。
其中,响应消息中携带有与待转发的数据包匹配的所有流表项。
在本实施例中,控制器通过一个响应消息将与待转发的数据包匹配的所有流表项下发给交换机,即,与待转发的数据包匹配的所有流表项是绑定在一起通过一条消息下发下来的。
步骤S103:交换机从响应消息中提取与待转发的数据包匹配的所有流表项。
当交换机接收到控制器发送的响应消息时,可从该响应消息中提取出与待转发的数据包匹配的所有流表项。
步骤S104:交换机将提取出的所有流表项聚合为硬件层的流表项,并在交换机支持该硬件层的流表项时,将该硬件层的流表项配置到硬件层的流表中。
由于从接收的响应消息中提取的流表项为与待转发的数据包匹配的所有流表项,因此,交换机不需要再在软件层的流表中查找与待转发的数据包匹配的流表项,而是可以直接将提取出的所有流表项聚合成硬件层的流表项,在交换机支持该硬件层的流表项时,将该硬件层的流表项配置到硬件层的流表中。
本发明实施例提供的配置流表项的方法中,由于控制器可将与数据包匹配的所有流表项绑定在一起通过一条消息下发至交换机,因此,交换机在接收到控制器下发的消息时,可获取与数据包匹配的所有流表项,从而可以直接将与数据包匹配的所有流表项聚合为硬件层的流表项并配置到硬件层的流表中。本发明实施例提供的配置流表项的方法与现有技术相比,由于不用在软件层的流表中查找与数据包匹配的流表项,因此,缩短了硬件层的流表项的配置时间,进而缩短了数据包的转发时延。
并且,由于软件层的处理能力有限(数据包的转发速度较慢),因此,当硬件层向软件层发送的数据包数量超出软件层的处理能力时,会丢弃一些数据包(例如,软件层每秒能转发5个数据包,而现在硬件层收到10个数据包,那么,硬件层在向软件层发送数据包时会丢弃5个数据包),在本实施例中,硬件层的流表项的配置时间缩短,这使得本来应该发送至软件层进行转发的数据包能够在硬件层实现转发,相比软件层,硬件层的处理能力较强(数据包的转发速度较快),因此,降低了数据包的丢包数量。
请参阅图2,为本发明实施例提供的另一种配置流表项的方法的流程示意图,本实施例所述技术方案可具体应用于OpenFlow网络中,OpenFlow网络中的交换机和控制器之间通过OpenFlow协议进行通信,该方法可以包括:
步骤S201:交换机向控制器发送一个请求下发流表项的请求消息,请求消息中携带有待转发的数据包。
交换机在接收到待转发的数据包之后,先在硬件层的流表中查找与待转发的数据包匹配的流表项,如果没有查找到与待转发的数据包匹配的流表项,则接着在软件层的流表中查找与待转发的数据包匹配的流表项,如果在软件层的流表中也没有查找到与待转发的数据包匹配的流表项,则向控制器发送一个请求下发流表项的请求消息,请求消息中携带待转发的数据包。
具体的,在OpenFlow网络中,请求下发流表项的请求消息可以为packet_in消息。
步骤S202:交换机接收控制器返回的一个响应消息。
其中,响应消息中携带有与待转发的数据包匹配的所有流表项。
在本实施例中,控制器通过一个响应消息将与待转发的数据包匹配的所有流表项下发给交换机,即,与待转发的数据包匹配的所有流表项是绑定在一起通过一条消息下发下来的。
在一种可能的实现方式中,控制器返回的响应消息可以为扩展的ofp_flow_mod消息。
扩展的ofp_flow_mod消息为在ofp_flow_mod消息中定义一个数组后所得到的消息,并且,扩展的fpt_flow_mod消息通过定义的数组可同时携带多个流表项。
其中,ofp_flow_mod消息为现有技术中基于OpenFlow协议定义的消息,现有技术中的每个ofp_flow_mod消息只能携带一个流表项,即,如果OpenFlow控制器需要下发的流表项有多个,那么,其就需要下发多个ofp_flow_mod消息。
在本实施例中,扩展的ofp_flow_mod消息除了携带有与数据包匹配的所有流表项外,还携带有消息类型标识以及流表项数量标识。其中,消息类型标识用于指示响应消息为扩展的ofp_flow_mod消息,流表项数量标识用于指示扩展的ofp_flow_mod消息中携带的流表项的数量。
由于扩展的ofp_flow_mod消息携带的流表项有多个,因此,ofp_flow_mod消息可通过携带流表项数量标识指示扩展的ofp_flow_mod消息所携带的流表项的数量。
可以理解的是,实际应用中,交换机可能既需要支持现有技术中配置流表项的方式,又要支持本发明实施例提供的配置流表项的方式,即能够兼容两种配置流表项的方式。在这种情况下,交换机接收的响应消息就会有两种,一种为现有技术中的ofp_flow_mod消息,一种为本发明实施例提供的扩展的ofp_flow_mod消息,为了区分这两种消息,可在扩展的ofp_flow_mod消息中携带消息类型标识,交换机在接收到扩展的ofp_flow_mod消息后,通过消息中携带的消息类型标识,就可知道接收的消息为携带有多个流表项的扩展的ofp_flow_mod消息。
扩展的ofp_flow_mod消息的结构体如下所示:
其中,number表示扩展的ofp_flow_mod消息中携带的流表项的数量,flow_mod包含与待转发的数据包匹配的所有流表项。
步骤S203:交换机从响应消息中提取与待转发的数据包匹配的所有流表项。
具体的,交换机从扩展的ofp_flow_mod消息中提取出与待转发的数据包匹配的所有流表项。进一步的,可通过流表项数量标识指示的流表项的数量对提取出的流表项的数量进行验证。
步骤S204:交换机将提取出的所有流表项聚合为硬件层的流表项。
其中,每个流表项均包括匹配域信息和转发动作信息。
则交换机将所有流表项聚合为硬件层的流表项,具体为:将提取的所有流表项中的匹配域信息进行聚合,得到硬件层的流表项的匹配域信息,将提取的所有流表项中的转发动作信息进行聚合,得到硬件层的流表项的转发动作信息,硬件层的流表项的匹配域信息和硬件层的流表项的转发动作信息组成硬件层的流表项。
步骤S205:交换机判断自身是否支持硬件层的流表项,如果是,进入步骤S206a,否则,进入步骤S206b。
在本实施例中,交换机判断自身是否支持硬件层的流表项具体为:交换机将聚合得到的流表项中的匹配域信息与硬件层的流表中的匹配域信息进行比较,如果聚合得到的流表项中的匹配域信息与硬件层的流表中的匹配域信息相同,或者,硬件层的流表中的匹配域信息中包括聚合得到的流表项中的匹配域信息,则判定自身支持硬件层的流表项,否则,判定自身不支持硬件层的流表项。
示例性的,聚合得到的流表项中的匹配域信息包括三个匹配字段A、B、C,硬件层的流表中的匹配域信息同样包括三个匹配字段A、B、C,则判定交换机支持硬件层的流表项。
示例性的,聚合得到的流表项中的匹配域信息包括三个匹配字段A、B、C,硬件层的流表中的匹配信息包括五个匹配字段A、B、C、D、E,由于硬件层的流表中的匹配信息A、B、C、D、E中包括聚合得到的流表项中的匹配域信息A、B、C,因此,判定交换机支持硬件层的流表项。
示例性的,聚合得到的流表项中的匹配域信息包括三个匹配字段A、B、C,硬件层的流表中的匹配信息包括五个匹配字段A、B、D、E、F,由于硬件层的流表中的匹配信息中不包括匹配字段C,因此,判定交换机不支持硬件层的流表项。
步骤S206a:当交换机自身支持硬件层的流表项时,将该硬件层的流表项配置到硬件层的流表中。
由于从扩展的ofp_flow_mod消息中提取的流表项为与数据包匹配的所有流表项,因此,交换机可直接将提取出的所有流表项聚合成硬件层的流表项,在交换机支持该硬件层的流表项时,将该硬件层的流表项配置到硬件层的流表中,当交换机再接收到数据包后,就可以直接在硬件层的流表中查找匹配的流表项,并按照该匹配的流表项的数据包转发规则转发该数据包,而不用像现有技术那样,将接收的流表项保存到软件层,在软件层的流表中查找到与数据包匹配的所有流表项后,才能将所有的流表项聚合成硬件层的流表项。
步骤S206b:当交换机自身不支持硬件层的流表项时,将提取出的所有流表项配置到软件层的流表中。
在本发明实施例中,当交换机自身不支持硬件层的流表项时,表明当接收到同样的数据包时,无法在硬件层转发该数据包,为了能够实现数据包的转发,将提取出的所有流表项配置到软件层的流表中,这样,在硬件层无法实现数据包的转发时,使软件层能实现数据包的转发。
需要说明的是,在本发明实施例中,当交换机自身不支持硬件层的流表项时,才会将提取出的所有流表项保存到软件层的流表中,在另一种可能的实现方式中,交换机在扩展的ofp_flow_mod消息中提取出所有流表项后,将提取的所有流表项保存到软件层的流表中,并将提取的所有流表项聚合成硬件层的流表项,在自身支持该硬件层的流表项时,将该硬件层的流表项配置到硬件层的流表中,在自身不支持该硬件层的流表项时,丢弃该硬件层的流表项,即,在这种实现方式中,交换机不管自身是否支持硬件层的流表项,都先将提取的所有流表项配置到软件层的流表中。
本发明实施例提供的配置流表项的方法中,由于控制器可将与数据包匹配的所有流表项绑定在一起通过一条消息下发至交换机,因此,交换机在接收到控制器下发的消息时,可获取与数据包匹配的所有流表项,从而可以直接将与数据包匹配的所有流表项聚合为硬件层的流表项并配置到硬件层的流表中。本发明实施例提供的配置流表项的方法与现有技术相比,由于不用在软件层的流表中查找与数据包匹配的流表项,因此,缩短了硬件层的流表项配置到硬件层时间,进而缩短了数据包的转发时延。
并且,由于软件层的处理能力有限(数据包的转发速度较慢),因此,当硬件层向软件层发送的数据包数量超出软件层的处理能力时,会丢弃一些数据包(例如,软件层每秒能转发5个数据包,而现在硬件层收到10个数据包,那么,硬件层在向软件层发送数据包时会丢弃5个数据包),在本实施例中,硬件层的流表项的配置时间缩短,这使得本来应该发送至软件层进行转发的数据包能够在硬件层实现转发,相比软件层,硬件层的处理能力较强(数据包的转发速度较快),因此,降低了数据包的丢包数量。
上述任一实施例提供的配置流表项的方法还可以包括:在接收到控制器下发的响应消息后,将待转发的数据包转发出去。
具体的,将待转发的数据包转发出去的实现方式有多种。在一种可能的实现方式中,可在接收到控制器下发的响应消息后,直接通过响应消息中携带的与待转发的数据包匹配的所有流表项将待转发的数据包转发出去,在另一种可能的实现方式中,可在将响应消息中携带的与待转发的数据包匹配的所有流表项配置到软件层后,从软件层转发待转发的数据包,在又一种可能的实现方式中,可在将聚合得到的硬件层的流表项配置到硬件层后,从硬件层转发待转发的数据包。
请参阅图3,为本发明实施例提供的一种下发流表项的方法的流程示意图,该方法可以包括:
步骤S301:控制器接收交换机发送的一个请求下发流表项的请求消息。
其中,请求消息中携带有待转发的数据包。
步骤S302:控制器生成与待转发的数据包匹配的所有流表项。
具体的,控制器通过待转发的数据包中的信息确定与待转发的该数据包匹配的流表项。
示例性的,控制器在接收到Mpls_label为10,目的IP为192.168.0.6的数据包后,会产生如图4所示的T0_1流表项和T2_1流表项,然后通过一条消息将T0_1和T2_1两条流表项绑定到一起下发给交换机。具体的,控制器通过Mpls_label和目的IP可确定与数据包匹配的流表T0表和T1表,然后在T0表和T1表中确定出与数据包匹配的流表项T0_1和T2_1。需要说明的是,T0表中的Mpls_label为T0表支持的匹配字段,T1表中的Eth_type、Src_ip和Dst_ip为T2表支持的匹配字段,T0表和T1表中的action表示转发动作。
步骤S303:控制器向交换机返回一个响应消息。
其中,响应消息中携带有与待转发的数据包匹配的所有流表项,其中,与待转发的数据包匹配的所有流表项用于聚合为硬件层的流表项,硬件层的流表项用于配置到交换机的硬件层的流表中。
在一种可能的实现方式中,响应消息为扩展的ofp_flow_mod消息,扩展的ofp_flow_mod消息为在ofp_flow_mod消息中定义一个数组后所得到的消息,并且,扩展的fpt_flow_mod消息通过定义的数组可同时携带多个流表项。
其中,ofp_flow_mod消息为现有技术中基于OpenFlow协议定义的消息,现有技术中的每个ofp_flow_mod消息只能携带一个流表项,即,如果控制器需要下发的流表项有多个,那么,其就需要下发多个ofp_flow_mod消息。
在本实施例中,扩展的ofp_flow_mod消息除了携带有与待转发的数据包匹配的所有流表项外,还携带有消息类型标识以及流表项数量标识。其中,消息类型标识用于指示响应消息为扩展的ofp_flow_mod消息,流表项数量标识用于指示扩展的ofp_flow_mod消息中携带的流表项的数量。
本发明实施例提供的下发流表项的方法中,控制器可将与数据包匹配的所有流表项绑定在一起通过一条消息下发至交换机,这使得交换机在接收到控制器下发的消息时,可获取与数据包匹配的所有流表项,从而可以直接将与数据包匹配的所有流表项聚合为硬件层的流表项并配置到硬件层的流表中。本发明实施例提供的下发流表项的方法使得交换机不用在软件层的流表中查找与数据包匹配的流表项,因此,使得交换机将硬件层的流表项配置到硬件层的流表的时间缩短,进而使交换机转发数据包的时延缩短。
并且,由于软件层的处理能力有限(数据包的转发速度较慢),因此,当硬件层向软件层发送的数据包数量超出软件层的处理能力时,会丢弃一些数据包(例如,软件层每秒能转发5个数据包,而现在硬件层收到10个数据包,那么,硬件层在向软件层发送数据包时会丢弃5个数据包),在本实施例中,硬件层的流表项的配置时间缩短,这使得本来应该发送至软件层进行转发的数据包能够在硬件层实现转发,相比软件层,硬件层的处理能力较强(数据包的转发速度较快),因此,降低了数据包的丢包数量。
请参阅图5,为本发明实施例提供的配置流表项的装置的结构示意图,该装置可以包括:发送模块501、接收模块502、提取模块503和硬件配置模块504。其中:
发送模块501,用于向控制器发送一个请求下发流表项的请求消息。
其中,请求消息中携带有待转发的数据包。
接收模块502,用于接收控制器返回的一个响应消息。
其中,响应消息中携带有与待转发的数据包匹配的所有流表项。
提取模块503,用于从接收模块502接收的响应消息中提取与数据包匹配的所有流表项。
硬件配置模块504,用于将提取模块503提取出的所有流表项聚合为硬件层的流表项,并在交换机支持该硬件层的流表项时,将该硬件层的流表项配置到硬件层的流表中。
本发明实施例提供的配置流表项的装置中,由于控制器可将与数据包匹配的所有流表项绑定在一起通过一条消息下发至交换机,因此,交换机在接收到控制器下发的消息时,可获取与数据包匹配的所有流表项,从而可以直接将与数据包匹配的所有流表项聚合为硬件层的流表项并配置到硬件层的流表中。本发明实施例提供的配置流表项的装置在配置流表项的过程中,由于不用在软件层的流表中查找与数据包匹配的流表项,因此,缩短了硬件层的流表项的配置时间,进而缩短了数据包的转发时延,并且。降低了数据包的丢包数量。
上述实施例提供的配置流表项的装置还可以包括:转发模块。
转发模块,用于通过接收模块502接收的响应消息中携带的与待转发的数据包匹配的所有流表项转发待转发的数据包。
上述实施例提供的配置流表项的装置还可以包括:软件配置模块。
软件配置模块,用于将提取模块503提取出的所有流表项配置到软件层的流表中。
在一种可能的实现方式中,上述实施例中接收模块502接收的响应消息为扩展的ofp_flow_mod消息。
扩展的ofp_flow_mod消息为在ofp_flow_mod消息中定义一个数组后所得到的消息,并且,扩展的fpt_flow_mod消息通过定义的数组可同时携带多个流表项。
其中,ofp_flow_mod消息为现有技术中基于OpenFlow协议定义的消息,现有技术中的每个ofp_flow_mod消息只能携带一个流表项,即,如果控制器需要下发的流表项有多个,那么,其就需要下发多个ofp_flow_mod消息。
请参阅图6,为本发明实施例提供的一种下发流表项的装置的结构示意图,该装置可以包括:接收模块601、流表项生成模块602和发送模块603。
其中:
接收模块601,用于接收交换机发送的一个请求下发流表项的请求消息,请求消息中携带有待转发的数据包。
流表项生成模块602,用于生成与接收模块601接收的数据包匹配的所有流表项。
发送模块603,用于向交换机返回一个响应消息,响应消息中携带有流表项生成模块602生成的与数据包匹配的所有流表项。
其中,与数据包匹配的所有流表项用于聚合为硬件层的流表项,硬件层的流表项用于配置到交换机的硬件层的流表中。
在一种可能的实现方式中,发送模块603向交换机返回的响应消息为一条扩展的ofp_flow_mod消息。
具体的,扩展的ofp_flow_mod消息为在ofp_flow_mod消息中定义一个数组后所得到的消息,并且,扩展的fpt_flow_mod消息通过定义的数组可同时携带多个流表项。
本发明实施例提供的下发流表项的装置,可将与数据包匹配的所有流表项绑定在一起通过一条消息下发至交换机,这使得交换机在接收到控制器下发的消息时,可获取与数据包匹配的所有流表项,从而可以直接将与数据包匹配的所有流表项聚合为硬件层的流表项并配置到硬件层的流表中。本发明实施例提供的下发流表项的方法使得交换机不用在软件层的流表中查找与数据包匹配的流表项,因此,使得交换机将硬件层的流表项配置到硬件层的流表中的时间缩短,进而使数据包的转发时延缩短,并且,降低了数据包的丢包数量。
图5所示的配置流表项的装置,在实际应用中,具体应用于交换机中,部署如图5所示的配置流表项的装置的交换机,可以缩短硬件层的流表项的配置时间,进而缩短数据包的转发时延,并且,降低数据包的丢包数量。
请参见图7,为本发明实施例提供的一种交换机70的结构示意图,该交换机70至少可以包括存储器701和通过通信总线与存储器701连接的处理器702。
其中,存储器701,可用于存储软件程序以及模块,处理器702通过运行存储在存储器701中的软件程序以及模块,从而执行交换机70的各种功能应用以及数据处理。存储器701可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据交换机70的使用所创建的数据。此外,存储器701可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
处理器702是交换机70的控制中心,利用各种接口和线路连接整个服务器的各个部分,通过运行或执行存储在存储器701内的软件程序和/或模块,以及调用存储在存储器701内的数据,执行交换机70的各种功能和处理数据,从而对交换机70进行整体监控。可选的,处理器702可包括一个或多个处理单元;优选的,处理器702可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器702中。
在本发明实施例中,交换机70所包括的处理器7602具有以下功能:
向控制器发送一个请求下发流表项的请求消息,请求消息中携带有待转发的数据包;接收控制器返回的一个响应消息,响应消息中携带有与待转发的数据包匹配的所有流表项;从响应消息中提取与待转发的数据包匹配的所有流表项;将提取出的所有流表项聚合为硬件层的流表项,并在交换机支持该硬件层的流表项时,将该硬件层的流表项配置到硬件层的流表中。
图6所示的下发流表项的装置,在实际应用中,具体应用于控制器中,部署如图6所示的下发流表项的装置的控制器,可以使交换机配置硬件层的流表项的时间缩短,进而使交换机转发数据包的时延缩短,降低数据包的丢包数量。
请参见图8,为本发明实施例提供的一种控制器80的结构示意图,该交换机80至少可以包括存储器801和通过通信总线与存储器801连接的处理器802。
其中,存储器801,可用于存储软件程序以及模块,处理器802通过运行存储在存储器801中的软件程序以及模块,从而执行控制器80的各种功能应用以及数据处理。存储器801可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据控制器80的使用所创建的数据。此外,存储器801可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
处理器802是控制器80的控制中心,利用各种接口和线路连接整个服务器的各个部分,通过运行或执行存储在存储器801内的软件程序和/或模块,以及调用存储在存储器801内的数据,执行控制器80的各种功能和处理数据,从而对控制器80进行整体监控。可选的,处理器802可包括一个或多个处理单元;优选的,处理器802可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器802中。
在本发明实施例中,控制器80所包括的处理器802具有以下功能:
接收交换机发送的一个请求下发流表项的请求消息,请求消息中携带有待转发的数据包;生成与待转发的数据包匹配的所有流表项;向交换机返回一个响应消息,响应消息中携带有与待转发的数据包匹配的所有流表项,其中,与待转发的数据包匹配的所有流表项用于聚合为硬件层的流表项,硬件层的流表项用于配置到交换机硬件层的流表中。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
在本申请所提供的几个实施例中,应该理解到,所揭露的方法、装置和设备,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (18)
1.一种配置流表项的方法,其特征在于,所述方法包括:
交换机向控制器发送一个请求下发流表项的请求消息,所述请求消息中携带有待转发的数据包;
所述交换机接收所述控制器返回的一个响应消息,所述响应消息中携带有与所述待转发的数据包匹配的所有流表项;
所述交换机从所述响应消息中提取与所述待转发的数据包匹配的所有流表项;
所述交换机不在软件层的流表中查找与所述待转发的数据包匹配的流表项,直接将提取出的所有流表项聚合为硬件层的流表项,并在所述交换机支持所述硬件层的流表项时,将所述硬件层的流表项配置到硬件层的流表中。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
通过所述响应消息中携带的,与所述待转发的数据包匹配的所有流表项转发所述待转发的数据包。
3.根据权利要求1或2所述的方法,其特征在于,所述交换机和所述控制器之间通过OpenFlow协议进行通信,所述请求消息和所述响应消息通过所述OpenFlow协议传输。
4.根据权利要求3所述的方法,其特征在于,所述响应消息为扩展的ofp_flow_mod消息,所述扩展的ofp_flow_mod消息为在ofp_flow_mod消息中定义一个数组后所得到的消息,并且,所述扩展的ofp_flow_mod消息通过定义的数组可同时携带多个流表项。
5.根据权利要求4所述的方法,其特征在于,所述响应消息还携带有消息类型标识以及流表项数量标识,所述消息类型标识用于指示所述响应消息为扩展的ofp_flow_mod消息,所述流表项数量标识用于指示所述扩展的ofp_flow_mod消息中携带的流表项的数量。
6.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:将提取出的所有流表项配置到软件层的流表中。
7.一种下发流表项的方法,其特征在于,所述方法包括:
控制器接收交换机发送的一个请求下发流表项的请求消息,所述请求消息中携带有待转发的数据包;
所述控制器生成与所述待转发的数据包匹配的所有流表项;
所述控制器向所述交换机返回一个响应消息,所述响应消息中携带有与所述待转发的数据包匹配的所有流表项,其中,与所述数据包匹配的所有流表项用于由所述交换机直接聚合为硬件层的流表项,而不在软件层的流表中查找与所述待转发的数据包匹配的流表项,所述硬件层的流表项用于配置到所述交换机的硬件层的流表中。
8.根据权利要求7所述的方法,其特征在于,所述控制器和所述交换机之间通过OpenFlow协议进行通信,所述请求消息和所述响应消息通过所述OpenFlow协议传输。
9.根据权利要求8所述的方法,其特征在于,所述响应消息为扩展的ofp_flow_mod消息,所述扩展的ofp_flow_mod消息为在ofp_flow_mod消息中定义一个数组后所得到的消息,并且,所述扩展的ofp_flow_mod消息通过定义的数组可同时携带多个流表项。
10.一种配置流表项的装置,其特征在于,所述装置包括:
发送模块,用于向控制器发送一个请求下发流表项的请求消息,所述请求消息中携带有待转发的数据包;
接收模块,用于接收所述控制器返回的一个响应消息,所述响应消息中携带有与所述待转发的数据包匹配的所有流表项;
提取模块,用于从所述接收模块接收的所述响应消息中提取与所述待转发的数据包匹配的所有流表项;
硬件层配置模块,用于将所述提取模块提取出的所有流表项聚合为硬件层的流表项,并在交换机支持所述硬件层的流表项时,将所述硬件层的流表项配置到硬件层的流表中,其中,与所述数据包匹配的所有流表项用于由所述硬件层配置模块直接聚合为硬件层的流表项,而不在软件层的流表中查找与所述待转发的数据包匹配的流表项。
11.根据权利要求10所述的装置,其特征在于,所述装置还包括:
转发模块,用于通过所述接收模块接收的所述响应消息中携带的与所述待转发的数据包匹配的所有流表项转发所述待转发的数据包。
12.根据权利要求10或11所述的装置,其特征在于,所述交换机和所述控制器之间通过OpenFlow协议进行通信,所述请求消息和所述响应消息通过所述OpenFlow协议传输。
13.根据权利要求12所述的装置,其特征在于,所述响应消息为扩展的ofp_flow_mod消息,所述扩展的ofp_flow_mod消息为在ofp_flow_mod消息中定义一个数组后所得到的消息,并且,所述扩展的ofp_flow_mod消息通过定义的数组可同时携带多个流表项。
14.根据权利要求13所述的装置,其特征在于,所述响应消息还携带有消息类型标识以及流表项数量标识,所述消息类型标识用于指示所述响应消息为扩展的ofp_flow_mod消息,所述流表项数量标识用于指示所述扩展的ofp_flow_mod消息中携带的流表项的数量。
15.根据权利要求10或11所述的装置,其特征在于,所述装置还包括:
软件层配置模块,用于将提取出的所有流表项配置到软件层的流表中。
16.一种下发流表项的装置,其特征在于,所述装置包括:
接收模块,用于接收交换机发送的一个请求下发流表项的请求消息,所述请求消息中携带有待转发的数据包;
流表项生成模块,用于生成与所述待转发的数据包匹配的所有流表项;
发送模块,用于向所述交换机返回一个响应消息,所述响应消息中携带有与所述待转发的数据包匹配的所有流表项,其中,与所述待转发的数据包匹配的所有流表项用于由所述交换机直接聚合为硬件层的流表项,而不在软件层的流表中查找与所述待转发的数据包匹配的流表项,所述硬件层的流表项用于配置到所述交换机的硬件层的流表中。
17.根据权利要求16所述的装置,其特征在于,控制器和所述交换机之间通过OpenFlow协议进行通信,所述请求消息和所述响应消息通过所述OpenFlow协议传输。
18.根据权利要求17所述的装置,其特征在于,所述响应消息为扩展的ofp_flow_mod消息,所述扩展的ofp_flow_mod消息为在ofp_flow_mod消息中定义一个数组后所得到的消息,并且,所述扩展的ofp_flow_mod消息通过定义的数组可同时携带多个流表项。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410025787.7A CN104796336B (zh) | 2014-01-20 | 2014-01-20 | 一种配置、下发流表项的方法及装置 |
PCT/CN2014/095230 WO2015106623A1 (zh) | 2014-01-20 | 2014-12-27 | 一种配置、下发流表项的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410025787.7A CN104796336B (zh) | 2014-01-20 | 2014-01-20 | 一种配置、下发流表项的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104796336A CN104796336A (zh) | 2015-07-22 |
CN104796336B true CN104796336B (zh) | 2018-06-19 |
Family
ID=53542383
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410025787.7A Active CN104796336B (zh) | 2014-01-20 | 2014-01-20 | 一种配置、下发流表项的方法及装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN104796336B (zh) |
WO (1) | WO2015106623A1 (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106888165A (zh) * | 2015-12-15 | 2017-06-23 | 中国科学院沈阳自动化研究所 | 一种支持包头压缩的工业sdn网络数据传输方法与系统 |
WO2018018567A1 (zh) * | 2016-07-29 | 2018-02-01 | 华为技术有限公司 | 一种管理交换机的方法及装置 |
WO2018103825A1 (en) * | 2016-12-06 | 2018-06-14 | Huawei Technologies Co., Ltd. | System and method for low memory and low traffic overhead heavy-hitter detection |
CN107124300B (zh) * | 2017-04-01 | 2020-03-17 | 西安交通大学 | 一种软件定义网络中的交换机迁移方法 |
CN110300068B (zh) * | 2019-06-14 | 2023-04-07 | 杭州迪普科技股份有限公司 | Arp资源管理方法、装置、电子设备 |
CN110430138B (zh) * | 2019-07-26 | 2022-02-22 | 新华三技术有限公司合肥分公司 | 数据流转发状态记录方法及网络设备 |
CN117336169B (zh) * | 2023-09-28 | 2024-08-16 | 南京金阵微电子技术有限公司 | 以太网流表的配置方法、装置、芯片、交换机和介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102301663A (zh) * | 2011-07-06 | 2011-12-28 | 华为技术有限公司 | 一种报文处理方法及相关设备 |
CN103259728A (zh) * | 2013-05-24 | 2013-08-21 | 华为技术有限公司 | 一种ofs带内通信方法及ofs |
CN103428094A (zh) * | 2013-08-12 | 2013-12-04 | 杭州华三通信技术有限公司 | 开放流OpenFlow系统中的报文转发方法及装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100553222C (zh) * | 2006-08-15 | 2009-10-21 | 杭州华三通信技术有限公司 | 一种保障报文硬件转发的方法及装置 |
KR101887581B1 (ko) * | 2011-12-26 | 2018-08-14 | 한국전자통신연구원 | 플로우 기반의 패킷 전송 장치 및 그것의 패킷 처리 방법 |
-
2014
- 2014-01-20 CN CN201410025787.7A patent/CN104796336B/zh active Active
- 2014-12-27 WO PCT/CN2014/095230 patent/WO2015106623A1/zh active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102301663A (zh) * | 2011-07-06 | 2011-12-28 | 华为技术有限公司 | 一种报文处理方法及相关设备 |
CN103259728A (zh) * | 2013-05-24 | 2013-08-21 | 华为技术有限公司 | 一种ofs带内通信方法及ofs |
CN103428094A (zh) * | 2013-08-12 | 2013-12-04 | 杭州华三通信技术有限公司 | 开放流OpenFlow系统中的报文转发方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN104796336A (zh) | 2015-07-22 |
WO2015106623A1 (zh) | 2015-07-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104796336B (zh) | 一种配置、下发流表项的方法及装置 | |
CN106664261B (zh) | 一种配置流表项的方法、装置和系统 | |
US8718061B2 (en) | Data center network system and packet forwarding method thereof | |
CN104780088A (zh) | 一种业务报文的传输方法和设备 | |
CN104618243B (zh) | 路由方法、装置及系统、网关调度方法及装置 | |
CN105591974B (zh) | 报文处理方法、装置及系统 | |
CN101827038B (zh) | 分布式设备和分布式设备中报文转发的方法 | |
CN110351286B (zh) | 一种软件定义网络中链路洪泛攻击检测响应机制 | |
CN104380658A (zh) | 流分类器、业务路由触发器、报文处理的方法和系统 | |
CN103746927B (zh) | 基于优先级的流控pfc方法及发送设备、接收设备 | |
CN104243265A (zh) | 一种基于虚拟机迁移的网关控制方法、装置及系统 | |
CN102857414A (zh) | 一种转发表写入、报文转发方法及装置 | |
CN102118277A (zh) | 丢包检测方法和装置及路由器 | |
CN106375105B (zh) | 一种确定路径故障的方法、控制器、交换机和系统 | |
CN103929368A (zh) | 多业务单元负载均衡方法及装置 | |
CN103001892B (zh) | 基于云计算的网络资源分配方法及系统 | |
CN102739518A (zh) | 一种流量负载分担方法和设备 | |
CN107547391A (zh) | 一种报文传输方法和装置 | |
CN103269315A (zh) | 标签分配方法、装置、系统和网络设备 | |
CN108965134B (zh) | 报文转发方法及装置 | |
CN103200100A (zh) | 一种报文转发方法和设备 | |
CN105391651A (zh) | 一种虚拟光网络多层资源汇聚方法和系统 | |
CN111654559B (zh) | 一种容器数据传输方法及装置 | |
CN105812221B (zh) | 虚拟可扩展本地区域网络中数据传输的设备和方法 | |
CN103379033A (zh) | 报文转发方法和分组光传输网络设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
EXSB | Decision made by sipo to initiate substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CB03 | Change of inventor or designer information |
Inventor after: Wen Bailin Inventor after: Shen Weifeng Inventor after: Wang Tao Inventor before: Wen Bailin Inventor before: Shen Weifeng Inventor before: Wang Tao |
|
CB03 | Change of inventor or designer information |