一种OpenFlow实例的实现方法和装置的制造方法

文档序号:9828133阅读:241来源:国知局
一种OpenFlow实例的实现方法和装置的制造方法
【技术领域】
[0001]本发明涉及通信领域,尤其涉及一种OpenFlow实例的实现方法和装置。
【背景技术】
[0002]0penFloW(开源流)是一种新型网络创新架构,其核心思想是将网络设备的控制层面与数据平面分离,以实现对网络流量的灵活控制,并为核心网络以及应用的创新提供良好的平台。在OpenFlow网络中,由OpenFlow控制器和网络设备(如OpenFlow交换机等)组成。OpenFlow控制器是网络控制中心,根据用户配置或者动态运行的协议生成流表,并将流表下发给网络设备。网络设备基于OpenFlow控制器下发的流表,对报文进行相关处理。
[0003]针对网络设备上的不同业务,OpenFlow控制器向网络设备下发不同的流表。当网络设备需要处理大量业务时,OpenFlow控制器会向网络设备下发大量流表。网络设备在收到报文时,需要将报文与每个流表进行匹配,匹配工作量很大,导致网络设备的处理负担增加,并降低网络设备的处理效率。

【发明内容】

[0004]本发明提供一种OpenFlow实例的实现方法,所述方法包括:
[0005]网络设备创建OpenFlow实例,并为所述OpenFlow实例绑定安全域;
[0006]针对待加入到所述OpenFlow实例的端口,所述网络设备将所述端口加入到所述安全域中,并将所述端口加入到所述OpenFlow实例中。
[0007]本发明提供一种OpenFlow实例的实现装置,所述OpenFlow实例的实现装置应用在网络设备上,所述OpenFlow实例的实现装置具体包括:
[0008]创建模块,用于创建OpenFlow实例;
[0009]绑定模块,用于为所述OpenFlow实例绑定安全域;
[0010]处理模块,用于针对待加入到所述OpenFlow实例的端口,将所述端口加入到所述安全域中,并将所述端口加入到所述OpenFlow实例中。
[0011]基于上述技术方案,本发明实施例中,通过在网络设备上创建OpenFlow实例,当网络设备需要处理大量业务时,OpenFlow控制器向网络设备下发的流表可以针对不同的OpenFlow实例。网络设备在接收到报文时,只需要将报文与相应的OpenFlow实例下的流表进行匹配,匹配工作量很小,减轻网络设备的处理负担,提高网络设备的处理效率,而且屏蔽了不同OpenFlow实例下的流表的互相影响,便于不同业务的管理,增强用户体验。进一步的,通过为OpenFlow实例绑定安全域,将多个端口加入到该安全域中,并将这多个端口加入到该OpenFlow实例中,使得这多个端口对应于相同的安全域,并对应于相同的OpenFlow实例,从而使得这多个端口之间可以互通。
【附图说明】
[0012]图1是本发明一种实施方式中的OpenFlow实例的实现方法的流程图;
[0013]图2是本发明一种实施方式中的网络设备的硬件结构图;
[0014]图3是本发明一种实施方式中的OpenFlow实例的实现装置的结构图。
【具体实施方式】
[0015]针对现有技术中存在的问题,本发明实施例中提出一种OpenFlow实例的实现方法,该方法应用于包括网络设备和OpenFlow控制器的OpenFlow网络中。如图1所示,该OpenFlow实例的实现方法具体可以包括以下步骤:
[0016]步骤101,网络设备创建OpenFlow实例,并为OpenFlow实例绑定安全域。其中,网络设备创建的OpenFlow实例可以为一个或多个OpenFlow实例。
[0017]本发明实施例中,针对网络设备创建的多个OpenFlow实例,网络设备为OpenFlow实例绑定安全域的过程,具体可以包括但不限于如下方式:网络设备为多个OpenFlow实例中的每个OpenFlow实例绑定唯一的一个安全域,基于此,则网络设备为不同的OpenFlow实例绑定的安全域不同。
[0018]本发明实施例中,网络设备为OpenFlow实例绑定安全域的过程,具体可以包括但不限于如下方式:网络设备接收用户下发的配置命令,该配置命令中携带了 OpenFlow实例与安全域之间的绑定关系,基于此绑定关系,网络设备为OpenFlow实例绑定安全域。例如,当配置命令中携带OpenFlow实例I与安全域I之间的绑定关系时,则为OpenFlow实例I绑定安全域I。
[0019]针对网络设备创建的多个OpenFlow实例,可以基于多个配置命令来携带多个OpenFlow实例与多个安全域之间的绑定关系,也可以基于一个配置命令来携带多个OpenFlow实例与多个安全域之间的绑定关系。
[0020]例如,网络设备接收用户下发的配置命令I和配置命令2,该配置命令I中携带OpenFlow实例I与安全域I之间的绑定关系,该配置命令2中携带OpenFlow实例2与安全域2之间的绑定关系,因此,网络设备为OpenFlow实例I绑定安全域1,并为OpenFlow实例2绑定安全域2。
[0021]又例如,网络设备只接收用户下发的一个配置命令,该配置命令中携带了OpenFlow实例I与安全域I之间的绑定关系,并携带了 OpenFlow实例2与安全域2之间的绑定关系,因此,网络设备可以为OpenFlow实例I绑定安全域I,并可以为OpenFlow实例2绑定安全域2。
[0022]又例如,网络设备只接收用户下发的一个配置命令,该配置命令中携带了OpenFlow实例UOpenFlow实例2、安全域I和安全域2。基于此,网络设备为OpenFlow实例I绑定安全域I,并为OpenFlow实例2绑定安全域2 ;或者,为OpenFlow实例2绑定安全域I,为OpenFlow实例I绑定安全域2。
[0023]步骤102,针对待加入到OpenFlow实例的端口,网络设备将该端口加入到该OpenFlow实例绑定的安全域中,并将该端口加入到该OpenFlow实例中。
[0024]本发明实施例中,针对每个待加入到OpenFlow实例的端口,网络设备不是直接将该端口加入到OpenFlow实例,而是确定该OpenFlow实例绑定的安全域,将该端口加入到该OpenFlow实例绑定的安全域中,使得该端口属于绑定该安全域的OpenFlow实例,并将该端口加入到该OpenFlow实例中。
[0025]本发明实施例中,报文在属于同一个安全域的端口之间转发时,默认可通过,报文在属于不同安全域的端口之间转发时,默认不通过。基于此,网络设备在将各端口加入到安全域中之后,则网络设备在接收到报文时,确定该网络设备上接收到该报文的端口,并确定该端口对应的安全域。当需要通过其它端口转发该报文时,网络设备确定该其它端口对应的安全域。基于此,当该端口对应的安全域与该其它端口对应的安全域相同时,则网络设备允许通过该其它端口转发该报文;当该端口对应的安全域与该其它端口对应的安全域不同时,则网络设备不允许通过该其它端口转发该报文。
[0026]在一种实现方式中,网络设备创建多个OpenFlow实例,并直接将待加入到OpenFlow实例的端口,加入到该OpenFlow实例中。例如,网络设备上存在端口 1-端口 8,如果需要从端口 1-端口 4进入的报文匹配OpenFlow实例I的流表,从端口 5-端口 8进入的报文匹配OpenFlow实例2的流表,则网络设备创建OpenFlow实例I和OpenFlow实例2,将待加入到OpenFlow实例I的端口 1-端口 4,加入到OpenFlow实例1,将待加入到OpenFlow实例2的端口 5-端口 8,加入到OpenFlow实例2。但是,如果所有端口均加入了相应的安全域,则上述方式将导致报文转发异常。例如,端口 I和端口 5均加入到安全
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1