CN103957157B - 一种网络接口可定义转发规则的路由方法 - Google Patents
一种网络接口可定义转发规则的路由方法 Download PDFInfo
- Publication number
- CN103957157B CN103957157B CN201410113080.1A CN201410113080A CN103957157B CN 103957157 B CN103957157 B CN 103957157B CN 201410113080 A CN201410113080 A CN 201410113080A CN 103957157 B CN103957157 B CN 103957157B
- Authority
- CN
- China
- Prior art keywords
- data processing
- message
- processing engine
- engine
- processing unit
- 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
Abstract
本发明公开了一种网络接口可定义转发规则的路由方法,其实施步骤如下:接收网络报文,分析所接收报文的传输模式,如果为数据报模式的报文,则提取报文的报文类型和流属性,并依此为报文在处理池单元中选择一个数据处理引擎组,通过所述数据处理引擎组的数据处理引擎处理报文并确定转发目标网络接口;如果为虚电路模式的报文,则根据预设的标签交换表指定报文的转发目标网络接口并进行标签置换;最终根据指定的转发目标网络接口选择对应的网络接口卡,然后将报文从所述网络接口卡输出至网络。本发明能够实现路由器接口资源与转发资源解耦,具有功能扩展方便、动态升级灵活性高、可提高处理资源利用率、改善系统节能性的优点。
Description
技术领域
本发明涉及路由器领域,具体涉及一种网络接口可定义转发规则的路由方法。
背景技术
在现有的分组交换技术中,可采用两种不同的方式来管理被传输的数据流:数据报方式和虚电路方式。数据报方式亦被称为无连接的数据交换方式,每个数据报独立地通过网络传往目的主机,到达同一目的主机的数据分组可能沿不同的路径进行传输;虚电路方式被称为面向连接的数据交换方式,需要在数据传输开始之前首先建立起一条逻辑传输通路,数据分组沿着建好的这条路径进行传输,无需重新进行路由选择。作为互联网核心设备的路由器在网络体系结构中起着通信枢纽的作用,将多个逻辑上分离的网络连接起来,为经过路由器的每一个报文寻找一条最佳的传输路径,从而将该报文有效地传送到目的站点。
现有网络中,除支持多协议标记交换(multi-protocol label switching,MPLS)功能的路由器可以同时支持数据报模式和虚电路模式,其他的路由器都是对这两种模式进行独立的支持。不论是哪一种路由器,其每个网络接口都具有适当的报文处理和缓存能力,在接收到虚电路模式的数据分组后,会依据分组头部的虚电路标识符(Virtual CircuitIdentifier,简称VCI)查找虚电路表进行数据转发,其中虚电路表记载当前已建立的虚电路的主要参数,包括:入接口、入VCI、出接口、出VCI,是虚电路模式数据分组进行转发的依据。在接收到数据报模式的分组后,则依据分组头部的目的IP地址查找转发信息表以获得该报文的输出接口信息,其中,转发信息表FIB(Forwarding Information Base)是主CPU所维护的IPv4路由表完整内容的一个镜像,与路由表前缀之间是一一对应的关系,存储于每个网络接口处。
对每一个网络接口而言,不论是处理虚电路模式报文,还是数据报模式报文,其对应的转发处理引擎是固定的,因此必须保证单个的转发引擎能够满足高速网络接口的线速处理需求,而在实际情况下,由于网络流量的突发性和不均衡性,可能导致某些网络接口卡负载过重而其它某些接口卡负载较轻的情况,影响路由器整体的性能与资源利用率。且现有路由器都是通过物理元器件来实现其特定的功能,并通过一定的工艺将这些物理元器件连接起来以实现报文的转发。由于这种连接方式的固定性,当某一个物理部件要升级时,功能上与之相关、结构上与之相连的物理部件也需要同时升级。这种关联性尤其体现在转发平面与交换平面上,即线卡上网络接口的数量和速率、转发引擎的处理速度以及数据交换平面的吞吐率之间必须相互匹配,因而当单个物理部件升级,例如将千兆以太网接口换成万兆以太网接口时,会要求转发引擎的处理能力和数据交换平面的吞吐率都需要相应提高。
发明内容
本发明要解决的技术问题是提供一种能够实现路由器的接口资源与转发资源解耦、且能够实现同一路由设备同时处理虚电路模式的报文和数据报模式的报文、功能扩展方便、动态升级灵活性高、可提高处理资源的利用率、改善系统节能性的网络接口可定义转发规则的路由方法。
为了解决上述技术问题,本发明采用的技术方案为:
一种网络接口可定义转发规则的路由方法,其实施步骤如下:
1)接收网络报文,分析所接收报文的传输模式,如果为数据报模式的报文,则跳转执行步骤2);如果为虚电路模式的报文,则跳转执行步骤3);
2)提取报文的报文类型和流属性,根据报文的报文类型和流属性在处理池单元中为报文选择一个数据处理引擎组,所述处理池单元包括多种异构的数据处理单元,任意一个数据处理单元包括至少一个用于完成指定功能的数据处理引擎,所述数据处理引擎组包括至少一种数据处理引擎,将报文发送给所述数据处理引擎组的第一个数据处理引擎,在所述数据处理引擎组的所有数据处理引擎处理完毕后,由所述数据处理引擎组的最后一个数据处理引擎选择转发目标网络接口,跳转执行步骤4);
3)根据预设的标签交换表指定报文的转发目标网络接口并进行标签置换;
4)根据指定的转发目标网络接口选择对应的网络接口卡,然后将报文从所述网络接口卡输出至网络。
进一步地,所述步骤2)的详细步骤如下:
2.1)提取报文的报文类型和流属性;
2.2)根据报文的报文类型和流属性查询预设的处理引擎选择表,看是否存在匹配表项,若存在,则跳转执行步骤2.3);否则跳转执行步骤2.4);
2.3)读取匹配表项中的数据处理引擎组,将报文发送给所述数据处理引擎组的第一个数据处理引擎,依照顺序在所述数据处理引擎组的所有数据处理引擎处理完毕后,由所述数据处理引擎组的最后一个数据处理引擎为报文指定转发目标网络接口,跳转执行步骤4);
2.4)根据报文的具体类型和流属性确定报文数据流所需经过的处理单元种类,然后去查询所需经过的数据处理单元中各数据处理引擎的运行状态信息,为报文确定一个具体的数据处理引擎组;
2.5)将报文类型、流属性以及生成的数据处理引擎组生成一条表项纪录,将所述表项纪录存入所述处理引擎选择表,跳转执行步骤2.2)。
进一步地,所述处理引擎选择表的每一条表项包含报文类型、流属性、数据处理引擎组共三个属性项,所述报文类型是指报文的具体类型;所述流属性是由网络管理员定义的多元组,用于标识报文所属数据流的属性,以判定该报文需要由哪些类别的数据处理单元进行处理;所述数据处理引擎组包括一种数据处理引擎或两种以上串行布置的数据处理引擎,所述数据处理引擎组是结合报文所需经过的数据处理单元类别、根据数据处理单元中各数据处理引擎的运行状态信息为报文所选择的。
进一步地,所述步骤2.4)中为报文确定一个具体的数据处理引擎组的详细步骤如下:
2.4.1)依据报文所需经过的处理单元类型查询数据处理单元中各数据处理引擎的运行状态信息,在每一种类的处理单元中选择一个合适的数据处理引擎,如果某一数据处理引擎已被标识为满载运行状态,那么下一时间片内就不再向其分配报文处理任务;如果某一数据处理引擎被标识为正常运行状态,那么下一时间片内正常向其分配报文处理任务;如果某一数据处理引擎被标识为轻松运行状态,那么下一时间片内增加其报文处理任务;而对于处于清闲运行状态的数据处理引擎,在正常运行状态的数据处理引擎和轻松运行状态的数据处理引擎能够满足业务处理需求的前提下,不再给清闲运行状态的数据处理引擎分配处理任务;
2.4.2)将选择的数据处理引擎根据报文所属数据流所需经过的数据处理单元种类顺序组装生成数据处理引擎组。
进一步地,所述数据处理单元中各数据处理引擎的运行状态信息是基于数据处理单元状态表实现的,所述数据处理单元状态表的每一条表项包含单元类别、引擎数量、引擎状态共三个属性项,所述数据处理单元状态表的每一条表项对应一类已开启的数据处理引擎,所述单元类别指处理池单元包括异构的数据处理单元的种类,所述引擎数量指该类数据处理单元所包含已开启数据处理引擎的数量,其取值范围是[1,N],其中N是指定的某种类型数据处理引擎的最大数量;所述引擎状态记录的是每一个数据处理引擎的运行状态,所述运行状态包括满载运行状态、正常运行状态、轻松运行状态和清闲运行状态,每一个数据处理引擎都有一个与之对应的状态管控程序,所述状态管控程序通过实时采集对应数据处理引擎的运行状态信息判断得出每一个数据处理引擎的运行状态。
进一步地,所述状态管控程序通过实时采集对应数据处理引擎的运行状态信息判断得出每一个数据处理引擎的运行状态的具体步骤如下:所述状态管控程序实时采集对应数据处理引擎的运行状态信息,如果数据处理引擎的负载量大于其处理能力的90%,则判定其运行状态为满载运行状态;如果数据处理引擎的负载量大于其处理能力的50%且小于或等于90%,则判定其运行状态为正常运行状态;如果数据处理引擎的负载量大于其处理能力的20%且小于或等于50%,则判定其运行状态为轻松运行状态;如果数据处理引擎的负载量为小于或等于其处理能力的20%,则判定其运行状态为清闲运行状态。
进一步地,还包括定时根据数据处理引擎的运行状态控制处理池单元中各个数据处理引擎的开启和关闭的步骤,其详细步骤如下:
a)检测处理池单元中每一种数据处理单元下所有已开启的数据处理引擎的运行状态,如果某一个数据处理单元中已开启的所有数据处理引擎在连续的指定个数时间片内都处于满载运行状态,则跳转执行步骤b);如果某一个数据处理引擎连续的指定个数时间片内都处于清闲运行状态,则判定该数据处理单元下其它类数据处理引擎的处理能力足以满足网络流量处理的需求,跳转执行步骤c);
b)在所述数据处理单元中新开启一个数据处理引擎,并将新开启的所述数据处理引擎的运行状态增加到数据处理单元状态表中,同时更新数据处理单元状态表中的其它数据处理的运行状态信息,跳转执行步骤a);
c)判断所述数据处理引擎所在的数据处理单元中是否只有所述数据处理引擎处于开启状态,如果是则跳转执行步骤a);否则,关闭所述数据处理引擎,将所述数据处理引擎在在数据处理单元状态表和处理引擎选择表中的相关记录加以删除,同时更新数据处理单元状态表中的其它数据处理引擎的运行状态信息,跳转执行步骤a)。
本发明网络接口可定义转发规则的路由方法具有下述技术效果:
1、本发明在接收报文后,通过分析报文的传输模式,对虚电路模式的报文和数据报模式的报文分别处理,针对虚电路模式的报文直接依据预设的标签交换表进行数据处理操作,针对数据报模式的报文在处理池单元中选择一个合适的数据处理引擎组进行处理,其中,处理池单元包括多种异构的数据处理单元,任意一个数据处理单元包括至少一个用于完成指定功能的数据处理引擎,数据处理引擎组包括至少一种数据处理引擎,从而实现了路由器接口资源与转发资源的解耦,实现了网络接口转发规则的可定义功能,能够实现同一路由设备同时处理虚电路模式的报文和数据报模式的报文。
2、本发明针对数据报模式的报文在处理池单元中选择一个合适的数据处理引擎组进行处理,因此通过数据处理引擎组的选择,能够支持同时实现多种报文处理功能,这些处理功能既包括针对不同类型报文的转发功能,如IPv4数据转发处理、IPv6数据转发处理、NDN数据转发处理,且转发的报文类型可以随着网络发展而增加;还可包括一些middlebox功能,如过滤、加密、解密等。而且,当需要在路由器上增加新的功能时,可以通过由网络管理员定义新的异构数据处理单元功能来实现。例如,要增加对NDN(Named DataNetworking)的支持,那么首先定义NDN数据处理引擎的功能,然后向控制平面进行注册,再由控制平面将相应的信息下发到接口池单元及处理池单元,为其进行数据处理单元选择以及数据处理时提供依据,具有功能扩展方便的优点。而且,由于数据处理引擎组包括至少一种数据处理引擎,因此实现每一种报文处理功能的数据处理引擎可以有多个,当数据处理引擎组包括两种以上的数据处理引擎时,这些处理引擎之间可并行工作,从而使得多个网络接口可以共用处理资源,因而可能提高处理资源的利用率及整个路由器的处理性能。
3、本发明针对数据报模式的报文在处理池单元中选择一个合适的数据处理引擎组进行处理,通过数据处理引擎组的选择实现了接口资源与转发资源的解耦,为路由器的动态升级提供了灵活性的基础,这种灵活性包括两个方面:一是单个部件功能升级的灵活性,二是整个路由器性能升级的灵活性。即当某一个物理部件单个升级时,仅需要与之相关的功能部件进行升级,而其它物理部件只通过必要的规模扩展,就可以实现对高性能部件的支撑。例如,当某一个数据处理引擎的能力不够时,可以开启一个已关闭的数据处理引擎或接入新的数据处理引擎来分担一些工作;同时,由于单个部件功能升级,可能导致路由器交换能力不够,此时只需要采用堆叠的方式多接入几个物理交换机,提供足够的交换端口数即可,具有动态升级灵活性高的优点。
4、本发明预设数据处理单元状态表后,进一步包括定时根据数据处理引擎的运行状态控制数据处理引擎的开启和关闭并更新数据处理单元状态表的步骤,默认设置各个数据处理单元中至少一个数据处理引擎开启,通过检测所有已开启的数据处理引擎的运行状态,来优化控制每一种数据处理单元中数据处理引擎开启和关闭的数量,确保数据处理引擎总是以最经济的能耗运行,并且在需要时开启数据处理引擎即可确保路由器的性能,具有能耗低的优点。
附图说明
图1为本发明实施例的实施流程示意图。
图2为本发明实施例中的处理引擎选择表的结构示意图。
图3为本发明实施例中数据处理单元状态表的结构示意图。
图4为本发明实施例中的数据处理单元的框架结构示意图。
图5为本发明实施例中的标签交换表的结构示意图。
图6为应用本发明实施例方法的路由器框架结构示意图。
具体实施方式
如图1所示,本实施例网络接口可定义转发规则的路由方法的实施步骤如下:
1)接收网络报文,分析所接收报文的传输模式,如果为数据报模式的报文,则跳转执行步骤2);如果为虚电路模式的报文,则跳转执行步骤3);
2)提取报文的报文类型和流属性,根据报文的报文类型和流属性在处理池单元中为报文选择一个数据处理引擎组,所述处理池单元包括多种异构的数据处理单元,任意一个数据处理单元包括至少一个用于完成指定功能的数据处理引擎,所述数据处理引擎组包括至少一种数据处理引擎,将报文发送给所述数据处理引擎组的第一个数据处理引擎,在所述数据处理引擎组的所有数据处理引擎处理完毕后,由所述数据处理引擎组的最后一个数据处理引擎选择转发目标网络接口,跳转执行步骤4);
3)根据预设的标签交换表指定报文的转发目标网络接口并进行标签置换;
4)根据指定的转发目标网络接口选择对应的网络接口卡,然后将报文从所述网络接口卡输出至网络。
本实施例中,步骤1)通过检查报文头部字段是否包含标签字段以确定报文的传输模式,如果包含标签字段,则为虚电路模式的报文,否则为数据报模式的报文。
参见图1,本实施例中步骤2)的详细步骤如下:
2.1)提取报文的报文类型和流属性;
2.2)根据报文的报文类型和流属性查询预设的处理引擎选择表,看是否存在匹配表项,若存在,则跳转执行步骤2.3);否则跳转执行步骤2.4);
2.3)读取匹配表项中的数据处理引擎组,将报文发送给所述数据处理引擎组的第一个数据处理引擎,依照顺序在所述数据处理引擎组的所有数据处理引擎处理完毕后,由所述数据处理引擎组的最后一个数据处理引擎为报文指定转发目标网络接口,跳转执行步骤4);
2.4)根据报文的具体类型和流属性确定报文数据流所需经过的处理单元种类,然后去查询所需经过的数据处理单元中各数据处理引擎的运行状态信息,为报文确定一个具体的数据处理引擎组;
2.5)将报文类型、流属性以及生成的数据处理引擎组生成一条表项纪录,将所述表项纪录存入所述处理引擎选择表,跳转执行步骤2.2)。
如图2所示,处理引擎选择表的每一条表项包含报文类型、流属性、数据处理引擎组共三个属性项,报文类型是指报文的具体类型,如IPv4报文;流属性是由网络管理员定义的多元组,用于标识报文所属数据流的属性,以判定该报文需要由哪些类别的数据处理单元进行处理;处理引擎组包括一种数据处理引擎或两种以上数据处理引擎,是结合报文所需经过的数据处理单元类别,根据数据处理单元状态表中各数据处理引擎的状态为报文所选择的。
本实施例中,步骤2.4)中为报文确定一个具体的数据处理引擎组的详细步骤如下:
2.4.1)依据报文所需经过的处理单元类型查询数据处理单元中各数据处理引擎的运行状态信息,在每一种类的处理单元中选择一个合适的数据处理引擎,如果某一数据处理引擎已被标识为满载运行状态,那么下一时间片内就不再向其分配报文处理任务;如果某一数据处理引擎被标识为正常运行状态,那么下一时间片内正常向其分配报文处理任务;如果某一数据处理引擎被标识为轻松运行状态,那么下一时间片内增加其报文处理任务;而对于处于清闲运行状态的数据处理引擎,在正常运行状态的数据处理引擎和轻松运行状态的数据处理引擎能够满足业务处理需求的前提下,不再给清闲运行状态的数据处理引擎分配处理任务;
2.4.2)将选择的数据处理引擎根据报文所属数据流所需经过数据处理单元种类顺序组装生成数据处理引擎组。
本实施例中,数据处理单元中各数据处理引擎的运行状态信息是基于数据处理单元状态表实现的。数据处理单元状态表是本实施例为虚电路模式以外的报文选择处理单元的依据,数据处理单元状态表的每一条表项对应一类已开启的数据处理单元。如图3所示,数据处理单元状态表的每一条表项包含单元类别、引擎数量、引擎状态共三个属性项。其中,单元类别指处理池单元中所包含的异构数据处理单元的种类,如现在的IPv4转发单元、未来可能有的IPv6转发单元,NDN转发单元等,其种类可能会随着网络的发展而变化;引擎数量是指该类异构数据处理单元中所包含的已开启数据处理引擎的数量,其取值范围是[1,N],其中,N是某种类型数据处理引擎的最大数量,这个数值是由ISP及网络管理员来决定的;1是每种类数据处理引擎的最小数量,表示即使因为节能原因可以关闭该种类数据处理引擎中的一部分,但是必须至少保留一个加以运行,这是出于节能与性能之间的折中考虑:如果将某一类数据处理引擎全部关闭,而在后续的数据处理过程中,前置控制组件在查询数据处理单元状态表时发现缺乏相应的数据处理单元,那么就需要向主控单元发送“资源请求失败”信息,接着由主控单元启动一个所需的处理引擎并更新数据处理单元状态表。只有等这整个流程结束之后,才能对该报文进行处理,这会增加数据的处理延时,降低处理器的吞吐量性能;引擎状态中记录的是每一类数据处理单元中每一个已开启的数据处理引擎的运行状态,共分为四种:满载运行状态、正常运行状态、轻松运行状态和清闲运行状态,分别以数值4、3、2、1来表示。每一个数据处理引擎都有一个与之对应的状态管控程序,状态管控程序通过实时采集对应数据处理引擎的运行状态信息判断得出每一个数据处理引擎的运行状态。
如图4所示,处理池单元包括数据处理引擎1、数据处理引擎2、……、数据处理引擎y,分别对应状态管控程序1、状态管控程序2、……、状态管控程序y,状态管控程序1负责采集数据处理引擎1的运行状态信息,状态管控程序2负责采集数据处理引擎2的运行状态信息,以此类推。状态管控程序实时采集对应数据处理引擎的负载量并根据预设的负载量阈值来判定对应数据处理引擎的运行状态,依据此判定结果,更新其在数据处理单元状态表中相应记录,并为控制各个数据处理单元中数据处理引擎开启和关闭操作提供依据。
本实施例中,状态管控程序通过实时采集对应数据处理引擎的运行状态信息判断得出每一个数据处理引擎的运行状态的具体步骤如下:状态管控程序实时采集对应数据处理引擎的运行状态信息,如果数据处理引擎的负载量大于其处理能力的90%,则判定其运行状态为满载运行状态;如果数据处理引擎的负载量大于其处理能力的50%且小于或等于90%,则判定其运行状态为正常运行状态;如果数据处理引擎的负载量大于其处理能力的20%且小于或等于50%,则判定其运行状态为轻松运行状态;如果数据处理引擎的负载量为小于或等于其处理能力的20%,则判定其运行状态为清闲运行状态。
本实施例还包括定时根据数据处理引擎的运行状态控制处理池单元中各个数据处理引擎的开启和关闭的步骤,其详细步骤如下:
a)检测处理池单元中每一种数据处理单元下所有已开启的数据处理引擎的运行状态,如果某一个数据处理单元中已开启的所有数据处理引擎在连续的指定个数时间片内都处于满载运行状态,则跳转执行步骤b);如果某一个数据处理引擎连续的指定个数时间片内都处于清闲运行状态,则判定该数据处理单元下其它类数据处理引擎的处理能力足以满足网络流量处理的需求,跳转执行步骤c);
b)在所述数据处理单元中新开启一个数据处理引擎,并将新开启的所述数据处理引擎的运行状态增加到数据处理单元状态表中,同时更新数据处理单元状态表中的其它数据处理的运行状态信息,跳转执行步骤a);
c)判断所述数据处理引擎所在的数据处理单元中是否只有所述数据处理引擎处于开启状态,如果是则跳转执行步骤a);否则,关闭所述数据处理引擎,将所述数据处理引擎在在数据处理单元状态表和处理引擎选择表中的相关记录加以删除,同时更新数据处理单元状态表中的其它数据处理引擎的运行状态信息,跳转执行步骤a)。
本实施例中,步骤3)的详细步骤如下:
3.1)提取原始报文首部所带有的入标签,根据入标签、接收报文的网络接口查询标签交换表,得到对应表项的出接口、出标签,指定对应表项的出接口为转发目标网络接口;如图5所示,标签交换表的每一个表项包括入接口、入标签、出接口、出标签共四个属性项,入接口指报文输入的网络接口,出接口指报文输出的网络接口,入标签指报文输入时所带有的虚电路标识号,出标签指报文输出时带有的虚电路标识号;
3.2)将对应表项的出标签替换原始报文首部所带有的入标签,跳转执行步骤4)。
标签交换表是本实施例中对虚电路模式报文进行数据转发的依据。由于采用虚电路模式的数据分组被发送到网络中之前,源节点和目的节点之间必须建立起一条逻辑连接,确定好分组的传输路径,同时在这个过程中形成一张标签交换表来指导后续报文的转发。一般来说,入标签和出标签是不同的,且当前路由器的出标签就是下一跳路由器的入标签。当源节点和目的节点之间的逻辑连接建立完成之后,一次通信的所有数据分组都从这条已建立好的逻辑通路上通过,在路径中间每个节点处无需重新选择路由,直接依据标签交换表进行转发操作即可。
如图6所示,应用本发明实施例方法的路由器包括接口池单元、交换单元、处理池单元和主控单元。接口池单元中包括多个网络接口卡(网络接口卡1、网络接口卡2、……、网络接口卡m、……、网络接口卡n)和多个前置控制组件(前置控制组件1、前置控制组件2、……、前置控制组件m、……、前置控制组件n),且网络接口卡与前置控制组件之间是一一对应的,接口池单元上还包括主控单元下发的一个标签交换表、一个处理引擎选择表和一个数据处理单元状态表,由其上的所有前置控制组件共同使用。每个网络接口卡包含多个网络接口,用于从网络中接收报文和发送报文到网络中,前置控制组件具体实施对报文的处理操作,标签交换表及数据处理单元状态表为前置控制组件实施报文处理提供依据。
前置控制组件的主要功能是依据所接收报文的传输模式、报文类型、流特性(报文所属流的特性)以及数据处理引擎的状态并结合一定的规则来选择一个功能部件对该报文进行数据处理。依据报文是否需要到达数据处理引擎上进行处理,可以将传统路由器中的数据转发路径划分为两个部分--快速转发路径/慢速转发路径,对不同转发路径上的报文,前置控制组件执行不同的操作。这里的快速转发与慢速转发是相对而言的,快速转发路径是指报文从某一前置控制组件经过交换单元直接到达另外的某一前置控制组件,然后通过与这个另外的某一前置组件相连的网络接口进入网络中,不需要到数据处理单元上进行处理,是针对虚电路模式报文的;而慢速处理路径是指报文从接口池单元中的某一前置控制组件经过交换单元到达处理池单元中的某一个数据处理单元上进行报文处理的至少一部分,整个处理操作完成后再通过交换单元到达与其输出接口相连的前置处理组件,继而由该输出接口发送到网络中,这种路径是针对数据报模式报文的。具体实施步骤为:检查报文头部字段是否包含标签字段来识别报文的传输模式以确定其转发路径类型,如果包含标签字段,则为虚电路模式的报文,那么就直接由该前置控制组件来对该报文进行处理;如果不包含标签字段,则为数据报模式的报文,那么首先确定其具体类型(在当前网络中,主要是IPv4类型报文,而随着网络的发展,还可以有其他多种类型的报文,如IPv6、NDN报文等),以及该报文所属数据流的流特性,为其分配一个合适的数据处理引擎组。在前置控制组件中,对快速转发路径上的报文,即虚电路模式报文的操作即为转发处理操作,对慢速转发路径上的报文,即数据报模式报文要进行的操作是选择一个合适的非满载的数据处理引擎组来对其进行转发处理及由主控单元定义的其他操作。具体来说,如果是快速转发路径的报文,前置控制单元会去查询标签交换表,对报文进行标签置换工作并确定其输出接口,然后将其发送到交换单元中。具体的转发过程包括接收一个分组,提取分组首部所带有的入标签,然后依据该入标签以及接收分组接口的组合查询标签交换表,就可以获得该分组的出标签以及输出接口,然后对分组进行标签置换,即用表中查询得到的出标签替换该报文首部所带有的入标签,并依据表中决定的输出接口将其转发出去;如果是慢速转发路径的报文,前置控制单元则需要查询处理引擎选择表来为该报文选择一个合适的数据处理引擎组,然后通过交换单元将报文发送过去。具体来说,是依据报文类型和标识数据流特性的元组去查找处理引擎选择表,如果存在匹配表项,那么直接将报文传送至表项记录中的数据处理引擎组中的第一个数据处理引擎,对报文进行处理;否则,依据报文类型、数据流特性确定该数据流所需经过的处理单元种类,而后依据报文所需经过的处理单元类型查询数据处理单元状态表,在每一种类的处理单元中选择一个合适的数据处理引擎,顺序组成一个数据处理引擎组,并将该结果添加至数据处理依据表,然后将报文传送至表项记录中的数据处理引擎组中的第一个数据处理引擎,对报文进行处理。依据数据处理单元状态表中的引擎状态属性来选择数据处理引擎的详细步骤如下:如果某一引擎已被标识为满载运行状态,那么下一时间片内就不再向其分配报文处理任务;如果某一引擎被标识为正常运行状态,那么下一时间片内正常向其分配报文处理任务;如果某一引擎被标识为轻松运行状态,那么下一时间片内增加其报文处理任务;而对于处于清闲运行状态的引擎,在正常运行引擎和轻松运行引擎能够满足业务处理需求的前提下,不再给清闲运行引擎分配处理任务。此外,前置控制组件还可以从交换单元接收报文,并将报文发送到与之相连的网络接口上等待输出即可。此外,前置控制组件的功能会依据异构数据处理单元种类的增加以及用户需求的变化而扩展。
交换单元的主要功能是在路由器内部进行数据的交换与传输。它可以接收从前置控制组件发送过来的报文,也能接收从异构数据处理单元发送的报文。当从前置控制组件接收到报文后,它能确定该报文是需要传送给某一前置控制组件还是需要传送给某一数据处理引擎,并将该报文传送过去;当从异构数据处理单元接收报文后,它能确定该报文所需要送达的前置控制组件,然后将报文传送过去。
处理池单元包括多个异构的数据处理单元(数据处理单元1、数据处理单元2、……、数据处理单元x),不同的数据处理单元执行不同的功能动作,每个数据处理单元包括多个同一种类的数据处理引擎和多个状态管控程序,二者呈一一对应关系。数据处理引擎接收从交换单元或另外的数据处理单元传送过来的报文,依据主控单元下发的信息执行相应的操作以完成整个数据处理过程的至少一部分,同种类型的数据处理引擎之间可并行工作,不同类型的数据处理引擎之间既可以并行工作,也能依据需求组成串行模型;状态管控程序用于采集每个数据处理引擎的运行状况并定时上报到主控单元,为主控单元开启某一类数据处理引擎或关闭某一个数据处理引擎提供依据。依据功能的不同,可以将这些数据处理单元大致划分为两类:1)转发处理单元,在现有网络中,主要指的是IPv4数据转发处理单元,用于实现数据报模式下IPv4报文的数据转发相关操作,且可以依据路由器运行状态的变化来增减该类数据处理单元中的数据处理引擎数量;2)自定义数据处理单元,可实现用户所需及网络管理员新定义的功能,且可以依据网络发展的需求及用户业务处理的需求添加或删除自定义数据处理单元或某一类自定义数据处理单元中的数据处理引擎。例如,如果未来网络中存在IPv6、NDN报文的传输,那么就可以定义相应的IPv6、NDN数据转发处理单元以实现对IPv6、NDN报文的处理,又例如,如果未来网络需要在路由器处增加middlebox的功能,那么可以通过网络管理员定义一些自定义数据处理单元来实现所需的middlebox功能,如NAT转换、过滤、加密、解密等。这两种类型的数据处理单元不仅在功能上有区别,在实现上有所区别,转发处理单元一般使用网络处理器(NP)或ASIC等专用硬件来实现,以实现高速的查找与转发操作,但是可编程性较差;支持middlebox功能及网络服务的数据处理单元一般采用灵活性及可编程性较好的通用处理器来实现。根据数据处理单元所属种类的不同,数据处理引擎的具体操作有所不同:如IPv4转发处理引擎所进行的操作包括IPv4报文头部认证、依据IPv4转发信息表进行路由查找以确定该报文的输出接口等,而过滤处理引擎所进行的操作主要包括从报文中提取关键字,然后依据过滤规则表加以过滤。这些数据处理单元之间可以并行工作,也可以串行工作。这种并行性主要指的是时间上的并行,既包括不同种类处理单元之间的并行,如在同一个时间片内,IPv4转发处理引擎为一个IPv4报文进行转发处理,IPv6数据处理引擎为一个IPv6报文执行处理操作;同样也包括同种类型数据处理单元内数据处理引擎之间的并行,如在同一个时间片内,多个IPv4转发处理引擎同时处理多个数据报模式报文。串行处理主要指的是功能上的串行叠加,如某一条流需要先过滤后转发,那么这条流的报文就先到过滤处理单元,如果不丢弃,然后再送到转发处理单元进行转发处理,之后再将报文传输到交换单元,以到达与其输出接口相连的前置控制组件等待输出,即串行模型中的最后一个数据处理引擎处理完报文之后将报文发送到交换单元,由它将报文转给报文输出接口所对应的前置控制组件,然后由该前置控制组件将报文传送给输出接口。由于每一种类型的数据处理引擎有多个,且接口池单元可以依据处理单元状态信息来决定将报文发送到哪一个数据处理引擎上进行处理,从而使得多个网络接口可以共用处理资源从而提高资源的利用率,还能提高整个路由器的处理性能。
数据处理策略集(数据处理策略1、数据处理策略2、……、数据处理策略x)是与数据处理单元(数据处理单元1、数据处理单元2、……、数据处理单元x)的种类相对应的,本实施例采用每一类数据处理单元共用与其类别相应的数据处理策略集,而不是每一个数据处理引擎使用一个数据处理策略集,主要是为了降低数据的冗余。转发处理单元对应的是转发处理策略集,IPv4转发处理单元对应的是IPv4转发信息表FIB(Forwarding InformationBase);IPv6转发处理单元对应的是IPv6转发策略集;NDN转发处理单元对应的会是NDN FIB表(Forwarding Information Base)及PIT表(Pending Interest Table),NAT转发处理单元对应的是网络地址转发规则集;过滤处理单元对应的应是过滤规则集;加解密处理单元对应的应是相应的加解密算法,等等。本实施例中,状态管控程序实时采集数据处理引擎的运行信息,并判断出每一个数据处理引擎的运行状态,同时状态管控程序分别将这些结果定时上报给主控单元,由主控单元依据这些状态信息来决定是否需要开启某一类数据处理引擎以减轻同类数据处理引擎的处理压力,或者关闭某一数据处理引擎以达到节能的目的。
主控单元用于实现路由器的管理和控制功能,其上运行着不同的路由协议实体(路由协议实体1~路由协议实体s)及控制协议实体(控制协议实体1~控制协议实体t),决定数据处理单元串行模型(数据处理引擎组)构成的串行顺序,为报文的转发、处理提供相应的信息依据,为整个路由器的控制和数据处理操作提供依据。每个主控单元中运行多个不同的路由协议实体或控制协议实体,以实现控制和管理功能,包括:1)运行路由协议,如路由选择交换协议RIP、开放式最短路径优先协议OSPF、边界网关协议BGP,以及多协议标签交换(MPLS)的标签分配协议LDP和信令协议等,通过这些信息来维护接口池单元中的标签交换表、处理引擎选择表和数据处理单元状态表,以及处理池单元中的数据处理策略集,为数据处理单元进行数据处理提供依据;2)运行网络管理及差错控制相关协议,如简单网络管理协议SNMP、互联网控制消息协议ICMP、互联网组管理协议IGMP等,通过这些信息实现对路由器的管理控制。在本发明所提供的路由器中,管理控制还包括该路由器接收来自数据处理单元中的状态管控程序上报的信息,来决定开启或关闭某一数据处理引擎,并实时更新数据处理单元状态表的信息。具体的实现如下:a)开启一个数据处理引擎:如果某一类数据处理单元中已有的所有引擎连续M个时间片内都处于满载运行状态(M是由ISP及网络管理员共同设定的一个常数),那么就通知处理池单元开启一个同类的数据处理引擎,并将新增引擎及其他引擎的状态信息下发到接口池单元的数据处理单元状态表中;b)关闭一个数据处理引擎:如果某一个数据处理引擎连续S个时间片内都处于清闲运行状态(S是由ISP及网络管理员共同设定的一个常数),说明其他同类数据处理引擎的处理能力足以满足网络流量处理的需求,因此就可以关闭该数据处理引擎以达到节能的目的。然后将该数据处理引擎在数据处理单元状态表及处理引擎选择表中的相关记录加以删除,同时对其他引擎的状态信息加以更新。3)依据业务特性和资源需求来决定异构数据处理引擎的串行顺序。这一功能是随着网络发展而出现的扩展功能,在当前网络环境中暂时还用不到。例如,如果未来网络需要在路由器处增加middlebox的功能,如过滤、加密、解密等,一个报文是先过滤再进行转发处理操作,还是先进行转发处理操作再进行过滤,是由主控单元依据业务特性和资源需求来决定的。应用本发明实施例方法的路由器包括两个方面的改进:第一个改进是在接口单元中引入前置控制组件,该部件的主要功能是依据一定的规则来为所接收的报文选择一个功能部件进行数据处理,从而达到网络接口可定义转发规则、控制数据处理路径的目的。选择的依据包括报文传输模式、报文类型、报文所属流属性以及数据处理引擎的状态。具体的选择过程包括:检查报文头部字段是否包含标签字段以确定报文的传输模式,如果包含指定的标签字段,则为虚电路模式的报文,那么就直接由该前置控制组件来对该报文进行处理;如果不包含标签字段,则为数据报模式的报文,那么首先确定其具体类型,如IPv4、IPv6等,以及该报文所属流的特性,然后依据报文的具体类型和流属性去查询处理引擎选择表,为其分配一个合适的数据处理引擎组。由于是依据处理单元状态表中的表项信息来决定将报文发送到哪一个数据处理引擎上进行处理,且每一种类型的数据处理引擎有多个,从而使得多个网络接口可以共用处理资源,因而可以带来以下优势:1)能提高处理资源的利用率;2)能提高整个路由器的处理性能;3)可以实现负载均衡。而且,通过关闭长时间不使用的数据处理引擎,还可以改善整个路由器系统的节能性。第二个改进是支持多种数据处理单元的并存,多种数据处理单元能够方便地根据报文类型在处理池单元中构建对应的一个数据处理引擎组,这些数据处理引擎的种类有一部分是与网络中的报文类型相对应的,可以包括IPv4数据转发处理引擎、IPv6数据转发处理引擎、NDN数据转发处理引擎,且可以随着网络发展而增加;数据处理引擎中还可以包括一些实现middlebox功能的处理引擎,如过滤、加密、解密等。其中,每一种类型的数据处理引擎数量有多个。这些数据处理单元之间可以并行工作也可以串行工作。并行性主要是时间上的并行,既包括不同种类数据处理单元之间的并行,也包括某种类型数据处理单元内多个数据处理引擎之间的并行;串行性主要指的是功能上的串行叠加,即报文在一个处理单元中的某一数据处理引擎上处理完成整个数据处理过程的一部分之后,接着进入另一个处理单元的一个数据处理引擎中完成整个数据处理过程的另一部分,最后由串行模型中的最后一个数据处理引擎在完成处理操作之后将报文发送到交换单元。
应用本发明实施例方法的路由器的工作过程如下:(1)接口池单元通过网络接口卡上的网络接口接收网络报文,前置控制组件分析所接收报文的传输模式,如果为数据报模式的报文,则跳转执行步骤(2);如果为虚电路模式的报文,则跳转执行步骤(3);(2)前置控制组件提取报文的报文类型以及流属性,根据报文类型以及流属性在处理池单元中选择一个数据处理引擎组,处理池单元包括多种异构的数据处理单元,数据处理单元由一类数据处理引擎组成,数据处理引擎组包括至少一种数据处理引擎;将报文传送至处理池单元中被选择的数据处理引擎组,被选择的数据处理引擎组对报文进行处理并为指定转发目标网络接口,跳转执行步骤(4);(3)前置控制组件根据预设的标签交换表指定报文的转发目标网络接口并进行标签置换,然后将报文输出值交换单元,跳转执行步骤(4);(4)主控单元控制交换单元中的报文,根据指定的转发目标网络接口选择对应的网络接口卡,然后将报文从网络接口卡输出至网络。
以上所述仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (5)
1.一种网络接口可定义转发规则的路由方法,其特征在于实施步骤如下:
1)接收网络报文,分析所接收报文的传输模式,如果为数据报模式的报文,则跳转执行步骤2);如果为虚电路模式的报文,则跳转执行步骤3);
2)提取报文的报文类型和流属性,根据报文的报文类型和流属性在处理池单元中为报文选择一个数据处理引擎组,所述处理池单元包括多种异构的数据处理单元,任意一个数据处理单元包括至少一个用于完成指定功能的数据处理引擎,所述数据处理引擎组包括至少一种数据处理引擎,将报文发送给所述数据处理引擎组的第一个数据处理引擎,在所述数据处理引擎组的所有数据处理引擎处理完毕后,由所述数据处理引擎组的最后一个数据处理引擎选择转发目标网络接口,跳转执行步骤4);
3)根据预设的标签交换表指定报文的转发目标网络接口并进行标签置换;
4)根据指定的转发目标网络接口选择对应的网络接口卡,然后将报文从所述网络接口卡输出至网络;
所述步骤2)的详细步骤如下:
2.1)提取报文的报文类型和流属性;
2.2)根据报文的报文类型和流属性查询预设的处理引擎选择表,看是否存在匹配表项,若存在,则跳转执行步骤2.3);否则跳转执行步骤2.4);
2.3)读取匹配表项中的数据处理引擎组,将报文发送给所述数据处理引擎组的第一个数据处理引擎,依照顺序在所述数据处理引擎组的所有数据处理引擎处理完毕后,由所述数据处理引擎组的最后一个数据处理引擎为报文指定转发目标网络接口,跳转执行步骤4);
2.4)根据报文的具体类型和流属性确定报文数据流所需经过的处理单元种类,然后去查询所需经过的数据处理单元中各数据处理引擎的运行状态信息,为报文确定一个具体的数据处理引擎组;
2.5)将报文类型、流属性以及生成的数据处理引擎组生成一条表项纪录,将所述表项纪录存入所述处理引擎选择表,跳转执行步骤2.2);
所述步骤2.4)中为报文确定一个具体的数据处理引擎组的详细步骤如下:
2.4.1)依据报文所需经过的处理单元类型查询数据处理单元中各数据处理引擎的运行状态信息,在每一种类的处理单元中选择一个合适的数据处理引擎,如果某一数据处理引擎已被标识为满载运行状态,那么下一时间片内就不再向其分配报文处理任务;如果某一数据处理引擎被标识为正常运行状态,那么下一时间片内正常向其分配报文处理任务;如果某一数据处理引擎被标识为轻松运行状态,那么下一时间片内增加其报文处理任务;而对于处于清闲运行状态的数据处理引擎,在正常运行状态的数据处理引擎和轻松运行状态的数据处理引擎能够满足业务处理需求的前提下,不再给清闲运行状态的数据处理引擎分配处理任务;
2.4.2)将选择的数据处理引擎根据报文所属数据流所需经过数据处理单元种类顺序组装生成数据处理引擎组。
2.根据权利要求1所述的网络接口可定义转发规则的路由方法,其特征在于:所述处理引擎选择表的每一条表项包含报文类型、流属性、数据处理引擎组共三个属性项,所述报文类型是指报文的具体类型;所述流属性是由网络管理员定义的多元组,用于标识报文所属数据流的属性,以判定该报文需要由哪些类别的数据处理单元进行处理;所述数据处理引擎组包括一种数据处理引擎或两种以上串行布置的数据处理引擎,所述数据处理引擎组是结合报文所需经过的数据处理单元类别、根据数据处理单元中各数据处理引擎的运行状态信息为报文所选择的。
3.根据权利要求2所述的网络接口可定义转发规则的路由方法,其特征在于:所述数据处理单元中各数据处理引擎的运行状态信息是基于数据处理单元状态表实现的,所述数据处理单元状态表的每一条表项包含单元类别、引擎数量、引擎状态共三个属性项,所述数据处理单元状态表的每一条表项对应一类已开启的数据处理引擎,所述单元类别指处理池单元包括异构的数据处理单元的种类,所述引擎数量指该类数据处理单元所包含已开启数据处理引擎的数量,其取值范围是[1,N],其中N是指定的某种类型数据处理引擎的最大数量;所述引擎状态记录的是每一个数据处理引擎的运行状态,所述运行状态包括满载运行状态、正常运行状态、轻松运行状态和清闲运行状态,每一个数据处理引擎都有一个与之对应的状态管控程序,所述状态管控程序通过实时采集对应数据处理引擎的运行状态信息判断得出每一个数据处理引擎的运行状态。
4.根据权利要求3所述的网络接口可定义转发规则的路由方法,其特征在于:所述状态管控程序通过实时采集对应数据处理引擎的运行状态信息判断得出每一个数据处理引擎的运行状态的具体步骤如下:所述状态管控程序实时采集对应数据处理引擎的运行状态信息,如果数据处理引擎的负载量大于其处理能力的90%,则判定其运行状态为满载运行状态;如果数据处理引擎的负载量大于其处理能力的50%且小于或等于90%,则判定其运行状态为正常运行状态;如果数据处理引擎的负载量大于其处理能力的20%且小于或等于50%,则判定其运行状态为轻松运行状态;如果数据处理引擎的负载量为小于或等于其处理能力的20%,则判定其运行状态为清闲运行状态。
5.根据权利要求3所述的网络接口可定义转发规则的路由方法,其特征在于,还包括定时根据数据处理引擎的运行状态控制处理池单元中各个数据处理引擎的开启和关闭的步骤,其详细步骤如下:
a)检测处理池单元中每一种数据处理单元下所有已开启的数据处理引擎的运行状态,如果某一个数据处理单元中已开启的所有数据处理引擎在连续的指定个数时间片内都处于满载运行状态,则跳转执行步骤b);如果某一个数据处理引擎连续的指定个数时间片内都处于清闲运行状态,则判定该数据处理单元下其它类数据处理引擎的处理能力足以满足网络流量处理的需求,跳转执行步骤c);
b)在所述数据处理单元中新开启一个数据处理引擎,并将新开启的所述数据处理引擎的运行状态增加到数据处理单元状态表中,同时更新数据处理单元状态表中的其它数据处理的运行状态信息,跳转执行步骤a);
c)判断所述数据处理引擎所在的数据处理单元中是否只有所述数据处理引擎处于开启状态,如果是则跳转执行步骤a);否则,关闭所述数据处理引擎,将所述数据处理引擎在在数据处理单元状态表和处理引擎选择表中的相关记录加以删除,同时更新数据处理单元状态表中的其它数据处理引擎的运行状态信息,跳转执行步骤a)。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410113080.1A CN103957157B (zh) | 2014-03-25 | 2014-03-25 | 一种网络接口可定义转发规则的路由方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410113080.1A CN103957157B (zh) | 2014-03-25 | 2014-03-25 | 一种网络接口可定义转发规则的路由方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103957157A CN103957157A (zh) | 2014-07-30 |
CN103957157B true CN103957157B (zh) | 2017-03-22 |
Family
ID=51334384
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410113080.1A Active CN103957157B (zh) | 2014-03-25 | 2014-03-25 | 一种网络接口可定义转发规则的路由方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103957157B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104244305B (zh) * | 2014-09-02 | 2017-12-08 | 福建三元达网络技术有限公司 | 基于atca硬件的多板卡lte网关处理方法及系统 |
CN106506351A (zh) * | 2015-09-07 | 2017-03-15 | 中兴通讯股份有限公司 | 一种基于多处理单元的报文采样方法和装置 |
CN106506359B (zh) * | 2016-10-20 | 2019-07-05 | 北京工业大学 | 一种命名中心网络的网络自定义组织中间件 |
CN106330722B (zh) * | 2016-10-26 | 2019-11-12 | 杭州迪普科技股份有限公司 | 一种创建路由缓存项的方法、转发报文的方法及装置 |
CN110825796B (zh) * | 2019-10-09 | 2021-01-19 | 车轮互联科技(上海)股份有限公司 | 数据获取的方法、装置及系统 |
CN111522624B (zh) * | 2020-04-17 | 2023-10-20 | 成都安恒信息技术有限公司 | 一种基于虚拟化技术的报文转发性能弹性扩展系统及其扩展方法 |
CN115277604B (zh) * | 2022-07-09 | 2023-04-25 | 中国人民解放军战略支援部队信息工程大学 | 一种异构网络平台协同处理系统和方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102238163A (zh) * | 2011-01-18 | 2011-11-09 | 北京中京创原通信技术有限公司 | 面向ip电信网的多协议报文传输方法 |
EP2562970A1 (en) * | 2010-04-19 | 2013-02-27 | Nec Corporation | Switch, and flow table control method |
CN103209128A (zh) * | 2013-03-06 | 2013-07-17 | 中国人民解放军国防科学技术大学 | 同时支持数据报和虚电路服务的数据转发方法及路由器 |
-
2014
- 2014-03-25 CN CN201410113080.1A patent/CN103957157B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2562970A1 (en) * | 2010-04-19 | 2013-02-27 | Nec Corporation | Switch, and flow table control method |
CN102238163A (zh) * | 2011-01-18 | 2011-11-09 | 北京中京创原通信技术有限公司 | 面向ip电信网的多协议报文传输方法 |
CN103209128A (zh) * | 2013-03-06 | 2013-07-17 | 中国人民解放军国防科学技术大学 | 同时支持数据报和虚电路服务的数据转发方法及路由器 |
Also Published As
Publication number | Publication date |
---|---|
CN103957157A (zh) | 2014-07-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103957157B (zh) | 一种网络接口可定义转发规则的路由方法 | |
US10164883B2 (en) | System and method for flow management in software-defined networks | |
US9203743B2 (en) | Packet forwarding system, control device, forwarding device and method and program for preparing processing rules | |
US20170195253A1 (en) | Flexible pipeline architecture for multi-table flow processing | |
CN104468358B (zh) | 分布式虚拟交换机系统的报文转发方法及设备 | |
CN104253770B (zh) | 实现分布式虚拟交换机系统的方法及设备 | |
EP2853069B1 (en) | Integrated heterogeneous software-defined network | |
JP4076586B2 (ja) | マルチレイヤ・ネットワーク要素用のシステムおよび方法 | |
CN107395532B (zh) | 一种基于sdn的多租户虚拟网络隔离方法 | |
US7782864B2 (en) | Apparatus and method for providing QoS for MPLS traffic | |
CN107204867A (zh) | 一种信息传输方法、装置和系统 | |
US9686137B2 (en) | Method and system for identifying an outgoing interface using openflow protocol | |
CN104821890A (zh) | 一种基于普通交换芯片的OpenFlow多级流表的实现方法 | |
CN100525240C (zh) | 数据分组通信设备 | |
CN1359218A (zh) | 实现多协议标签交换系统业务工程的数据结构及存储介质 | |
CN101242362B (zh) | 查找键值生成装置及方法 | |
CN105429879B (zh) | 流表项查询方法、设备及系统 | |
CN105978741A (zh) | 一种网络故障处理方法和处理系统 | |
CN100407704C (zh) | 媒体接入控制层地址的动态学习方法 | |
WO2017107814A1 (zh) | 一种传播QoS策略的方法、装置及系统 | |
WO2016128833A1 (en) | Method and system for identifying an incoming interface using openflow protocol | |
CN105391635A (zh) | 一种基于sdn的网络虚拟化方法 | |
EP3499810B1 (en) | Method and apparatus for generating acl | |
WO2016045368A1 (zh) | 一种扩展三层转发设备的路由表容量的方法及转发设备 | |
Luo et al. | SDN/NFV-based security service function tree for cloud |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |