CN104301230A - 报文转发方法和装置 - Google Patents
报文转发方法和装置 Download PDFInfo
- Publication number
- CN104301230A CN104301230A CN201410531968.7A CN201410531968A CN104301230A CN 104301230 A CN104301230 A CN 104301230A CN 201410531968 A CN201410531968 A CN 201410531968A CN 104301230 A CN104301230 A CN 104301230A
- Authority
- CN
- China
- Prior art keywords
- port
- sdn
- vlan
- stream table
- information
- 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
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提出一种报文转发方法,所述方法包括:SDN设备向控制器上报本地SDN端口的端口属性信息,所述端口属性信息中包括端口的VLAN信息;控制器根据接收到的所述端口属性信息创建端口信息库;控制器根据创建的所述端口信息库为所述SDN设备计算最优转发路径,并下发对应的流表;SDN设备根据接收到的流表转发报文。通过本发明可以提高流表下发的有效性。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种报文转发方法和装置。
背景技术
SDN(Software Defined Network,软件定义网络)网络,通过将网络进行虚拟化,将整网的资源分割成多个虚拟网,分配给不同的用户使用,且互不影响。
请参见图1,在SDN网络中,每个被虚拟化出来的网络由SDN设备(例如SDN交换机)、SDN控制器以及安全通道(Secure Channel)组成。
所述SDN设备,用于接收由SDN控制器下发的流表(Flow Table),根据流表进行报文转发,并向SDN控制器上报设备的状态和事件,例如本的SDN接口的UP/DOWN事件。
所述SDN控制器,是虚拟网的控制中心,根据用户的配置或者动态运行的协议(例如OpenFlow协议)生成流表发送到SDN设备,用以指导SDN设备的报文转发。
所述安全通道,用于保护SDN控制器和SDN设备之间传递信息的安全性,SDN控制器和SDN网络中每一台SDN设备均存在独立的安全通道,SDN控制器可以通过所述安全通道向SDN设备下发流表,SDN设备可以通过安全通道向SDN控制器上报设备的状态和事件。
在现有技术中,SDN控制器和SDN设备之间建立连接后,SDN控制器向SDN设备下发流表,SDN设备根据SDN控制器下发的流表生成二三层转发表项,然后基于生成的转发表项进行报文转发。然而在具体实现时,会存在SDN控制器下发无效流表的问题,从而造成SDN设备的转发效率低下。
发明内容
有鉴于此,本发明提出一种报文转发方法,应用于SDN控制器上,所述方法包括:
接收SDN设备上报的端口属性信息,所述端口属性信息中包括端口的VLAN信息;
根据接收到的所述端口属性信息创建端口信息库;
根据创建的所述端口信息库为所述SDN设备计算最优转发路径,并下发对应的流表,以使得所述SDN设备根据所述流表进行报文转发。
可选的,所述方法还包括:
接收SDN设备上报的端口属性更新信息;其中,所述端口属性更新信息由所述SDN设备在本地的SDN端口中,任一端口的虚拟局域网VLAN发生变化时上报,所述端口属性更新信息中包括所述端口更新后的VLAN信息;
根据接收到的端口属性更新信息更新所述端口信息库;
根据更新后的端口信息库为所述SDN设备重新计算最优转发路径,并下发对应的更新流表,以使得所述SDN设备根据所述更新流表对已有流表进行更新。
本发明还提出一种报文转发方法,应用于SDN设备上,所述方法包括:
向SDN控制器上报本地SDN端口的端口属性信息,所述端口属性信息中包括端口的VLAN信息,以使得所述SDN控制器根据接收到的所述端口属性信息创建端口信息库,根据所述端口信息库为所述SDN设备计算最优转发路径,并下发对应的流表;
接收SDN控制器下发的流表,并根据接收到的流表转发报文。
可选的,所述方法还包括:
当本地SDN端口中,任一端口的VLAN发生变化时,向SDN控制器上报端口属性更新信息,所述端口属性更新信息中包括所述端口更新后的VLAN信息,以使得所述SDN控制器根据接收到的所述端口属性更新信息更新本地的端口信息库,为所述SDN设备重新计算最优转发路径,并下发对应的更新流表。
可选的,所述方法还包括:
判断接收到的流表中,匹配域所指定的VLAN与指令域所指定的出端口的VLAN是否匹配;
如果不匹配,向所述SDN控制器发送错误通告消息;所述错误通告消息用于通告SDN控制器所下发的流表中,匹配域所指定的VLAN与指令域所指定的出端口的VLAN不匹配。
本发明还提出一种报文转发装置,应用于SDN控制器上,所述装置包括:
接收模块,用于接收SDN设备上报的端口属性信息,所述端口属性信息中包括端口的VLAN信息;
创建模块,用于根据接收到的所述端口属性信息创建端口信息库;
下发模块,用于根据创建的所述端口信息库为所述SDN设备计算最优转发路径,并下发对应的流表,以使得所述SDN设备根据所述流表进行报文转发。
可选的,所述第一接收模块进一步用于:
接收SDN设备上报的端口属性更新信息;其中,所述端口属性更新信息由所述SDN设备在本地的SDN端口中,任一端口的VLAN发生变化时上报,所述端口属性更新信息中包括所述端口更新后的VLAN信息;
所述创建模块进一步用于:
根据接收到的端口属性更新信息更新所述端口信息库;
所述下发模块进一步用于:
根据更新后的端口信息库为所述SDN设备重新计算最优转发路径,并下发对应的更新流表,以使得所述SDN设备根据所述更新流表对已有流表进行更新。
本发明还提出一种报文转发装置,应用于SDN设备上,所述装置包括:
上报模块,用于向SDN控制器上报本地SDN端口的端口属性信息,所述端口属性信息中包括端口的VLAN信息,以使得所述SDN控制器根据接收到的所述端口属性信息创建端口信息库,根据所述端口信息库为所述SDN设备计算最优转发路径,并下发对应的流表;
转发模块,用于接收SDN控制器下发的流表,并根据接收到的流表转发报文。
可选的,所述上报模块进一步用于:
当本地SDN端口中,任一端口的VLAN发生变化时,向SDN控制器上报端口属性更新信息,所述端口属性更新信息中包括所述端口更新后的VLAN信息,以使得所述SDN控制器根据接收到的所述端口属性更新信息更新本地的端口信息库,为所述SDN设备重新计算最优转发路径,并下发对应的更新流表。
可选的,所述装置还包括:
判断模块,用于判断接收到的流表中,匹配域所指定的VLAN与指令域所指定的出端口的VLAN是否匹配;
发送模块,用于在所述匹配域所指定的VLAN与指令域所指定的出端口的VLAN不匹配时,向所述SDN控制器发送错误通告消息;所述错误通告消息用于通告SDN控制器所下发的流表中,匹配域所指定的VLAN与指令域所指定的出端口的VLAN不匹配。
本发明通过SDN设备向SDN控制器上报携带本地SDN端口的VLAN信息的端口属性信息,SDN控制根据SDN设备上报的端口属性信息建立端口信息库,并基于端口信息库为所述SDN设备计算最优转发路径,并下发对应的流表。由于端口信息库中包括SDN设备的本地SDN端口的VLAN信息,因此避免了由于流表匹配域指定的VLAN与指令域中指定的出端口的VLAN不匹配而造成的下发流表无效的问题,提高了流表下发的有效性。
附图说明
图1是本发明一种示例性实施方式中示出的现有技术SDN的组网图;
图2是本发明一种示例性实施方式中示出的流表的基本结构图;
图3是本发明一种示例性实施方式中示出的一种报文转发方法的处理流程图;
图4是本发明一种示例性实施方式中示出的SDN设备和SDN控制器的交互示意图;
图5是本发明一种示例性实施方式中示出的SDN端口的端口属性信息的结构图;
图6是本发明一种示例性实施方式中示出的SDN设备向SDN控制返回的错误报文所支持的错误类型结构图;
图7是本发明一种示例性实施方式示出的一种基于OpenFlow协议的SDN网络的组网图;
图8是本发明一种示例性实施方式示出的另一种基于OpenFlow协议的SDN网络的组网图;
图9是本发明一种示例性实施方式示出的一种报文转发装置的框图;
图10是本发明一种示例性实施方式示出的一种承载所述报文转发装置的SDN控制器的硬件结构图;
图11是本发明一种示例性实施方式示出的另一种报文转发装置的框图;
图12是本发明一种示例性实施方式示出的一种承载所述另一种报文转发装置的SDN设备的硬件结构图。
具体实施方式
在SDN网络的典型架构中,通常将控制层面和数据层面进行分离,控制层面和数据层面之间可以使用标准的协议进行通信。例如,目前SDN网络中应用最广泛的为OpenFlow协议,SDN控制器(以下简称控制器)通过OpenFlow协议直接访问并操控转发平面的SDN设备(例如SDN交换机),为SDN设备下发对应的流表,SDN设备在转发层面根据控制器下发的流表进行报文转发。
请参见图2,图2为流表的基本结构,所述流表通常被划分为匹配域,计数器和指令域。所述匹配域通常是一个包括源地址、目的地址、源端口号、目的端口号以及VLAN(virtual local area network,虚拟局域网)等信息的12元组;指令域中包括若干与报文处理动作相关联的指令。SDN设备在根据流表进行报文转发时,首先将该报文与匹配域进行匹配,如果该报文与流表的匹配域匹配,则将该报文按照该流表中指令域关联的处理动作进行转发、丢弃等处理。
在SDN网络中,控制器和SDN设备之间建立连接后,SDN设备会主动上报本地的SDN端口的端口属性信息给控制器,控制器在收到SDN设备上报的端口属性信息后,根据收到的端口属性信息创建端口信息库,然后基于端口信息库为SDN设备计算最优转发路径,并下发对应的流表。
现有技术中,由于SDN设备上报的端口属性信息中并不携带端口的VLAN信息,因此控制器在为SDN设备计算出最优转发路径后,计算出的最优转发路径上的各出端口的VLAN可能互不相同;而且由于所述最优转发路径上各出端口的端口信息会被作为流表匹配域中的信息,因此会导致控制器向SDN设备下发流表中,匹配域所指定的VLAN与指令域所指定的出端口实际所属的VLAN互不相同,从而造成向SDN设备下发无效流表的问题。例如,在具体应用中,控制器可以通过在下发的流表中指定出端口,来控制报文从指定的出端口进行转发。当SDN设备在收到该条流表后,根据流表中的VLAN信息和出端口信息确定报文的转发路径时,由于流表中所述出端口所属的VLAN与匹配域中的VLAN不相同,因此即便要转发的报文与流表的匹配域匹配成功后,仍然无法转发报文,此时该条流表对于SDN设备而言,是一条无效流表。
在实现时,上述问题通常可以通过SDN设备来进行流表的有效性判断来避免,比如SDN设备判断控制器下发的流表中匹配域中指定的VLAN与指令域中指定的出端口的VLAN是否相同,如果相同,则根据流表进行报文转发;如果不相同,向控制器发送一个错误报文。
然而,在上述方案中,由SDN设备来进行流表的有效性判断,降低了控制器与SDN设备之间交互的效率,增加了SDN设备的处理负担;同时,SDN设备在判断出流表无效,向控制器发送错误报文后,控制器仍然无法获知本次下发流表的失效原因。
有鉴于此,本发明提出一种报文转发方法,通过SDN设备向SDN控制器上报携带本地SDN端口的VLAN信息的端口属性信息,SDN控制根据SDN设备上报的端口属性信息建立端口信息库,并基于端口信息库为所述SDN设备计算最优转发路径,并下发对应的流表。在本方案中,由于端口信息库中包括SDN设备本地SDN端口的VLAN信息,避免了由于流表匹配域指定的VLAN与指令域中指定出端口的VLAN不匹配,而造成的下发的流表为无效流表的问题,从而提高了流表下发的有效性以及SDN设备的转发效率。
为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本发明所述方案作进一步地详细说明。
请参见图3,本发明提出一种报文转发方法,分别应用于控制器和SDN设备中,其中控制器和SDN设备相互配合,执行如下步骤:
步骤301、SDN设备向控制器上报本地SDN端口的端口属性信息,所述端口属性信息中包括端口的VLAN信息;
步骤302、控制器根据接收到的所述端口属性信息创建端口信息库;
步骤303、控制器根据创建的所述端口信息库为所述SDN设备计算最优转发路径,并下发对应的流表;
步骤304、SDN设备根据接收到的流表转发报文。
在本实施例中,SDN设备和控制器建立连接后,会主动向控制器上报本地SDN端口的端口属性信息,控制器收到SDN设备上报的端口属性信息后,根据所述端口属性信息来创建端口信息库,控制器可以根据已创建的端口信息库并结合实际的网络拓扑,为SDN设备计算最优转发路径,并在计算出最优转发路径后,向所述SDN设备下发对应的流表,从而使得SDN设备可以根据所述流表进行报文转发。
具体地,以基于OpenFlow协议的SDN网络为例,OpenFlow协议已定义了SDN设备如何与控制建立连接、通讯以及互相交互的消息类型等。例如,请参见图4,OpenFlow协议规定SDN设备与控制器之间建立连接时,可以基于已建立的TCP连接互发hello报文来发现对方,当成功发现对方后,再通过交互Feature-Request和Feature-Reply报文建立连接。
请继续参见图4,当SDN设备和控制器之间的连接成功建立以后,SDN设备通过向控制器发送Port-status报文来实时上报本地SDN端口(包括新加入的SDN端口)的端口属性信息。
其中,所述Port-status报文,为OpenFlow协议中定义的由SDN设备向控制器发送的异步消息中的一种,用来上报SDN设备本地SDN端口的端口属性信息(详参OpenFlow-spec-v1.3.1)。
请参见图5,OpenFlow协议中规定,基于OpenFlow协议的SDN网络中,SDN设备上报的端口属性信息中通常包括端口索引,端口MAC(MediaAccess Control,介质访问控制)地址,端口名称等信息,并不包括端口所属VLAN信息。因此,在本实施例中,为避免流表中匹配域中指定的VLAN与指令域中指定的出端口的VLAN不相同的问题,可以对上述端口属性信息的信息结构进行扩展,在端口属性信息的信息结构中增加本地SDN端口所属VLAN信息,同时为了兼容已有协议,仍然可以通过Port-status报文向控制器上报扩展后的端口属性信息。当然,在具体实现时,也可以单独构造报文向控制器上报SDN设备本地SDN端口的VLAN信息,在本申请不进行特别限定。
当控制器收到SDN设备上报的端口属性信息后,根据收到的端口属性信息创建端口信息库。当端口信息库创建完成后,控制器可基于已创建的端口信息库为SDN设备计算最优转发路径,并在计算出最优转发路径后为SDN设备下发对应的流表。
在本实施例中,由于端口信息库中包括SDN设备本地所有SDN端口的VLAN信息,因此控制器可以根据端口信息库中的信息有针对性的为SDN设备下发流表,从而提高下发流表的有效性。
具体的,如果控制器想要控制网络中某台SDN设备的报文从指定出端口转发时,可以通过在为该SDN设备下发的流表的指令域中指定出端口来实现,此时由于端口信息库中包括该SDN设备本地所有SDN端口的VLAN信息,控制器在根据端口信息库中记录的端口信息来计算最优转发路径时,可以提前获取到各出端口的VLAN信息,因此不会造成所述最优转发路径上的出端口的VLAN与指定的出端口的VLAN互不相同的的问题,,而且由于所述最优转发路径上各出端口的端口信息会被作为流表匹配域中的信息,从而控制器在为SDN设备下发流表时,可以保证匹配域中的VLAN信息与指令域中的出端口实际所属VLAN信息相互一致,提高了下发流表的有效性。
当所述SDN设备收到该条流表后,在根据匹配域中的VLAN信息和出端口信息确定报文的转发路径时,由于此时所述出端口的VLAN与匹配域中指定的VLAN一致,不会导致该条流表失效,因此可以正常的对命中该条流表的报文进行转发。
在本实施例中,当SDN设备本地的任一SDN端口的VLAN发生变化时,该SDN设备向控制器上报端口属性更新信息,以使得控制器根据该端口属性更新信息更新本地的端口信息库,并重新计算最优转发路径,并下发对应的更新流表。该SDN设备在收到控制器下发的更新流表后,根据该更新流表对原有的流表进行覆盖,以完成流表的更新。
具体的,仍以基于OpenFlow协议的SDN网络为例,当SDN设备任一本地SDN端口的VLAN发生变化时,SDN设备仍然可以通过向控制器发送Port-status报文将该端口当前的端口属性信息作为更新信息上报给控制器。
控制器在收到SDN设备发送的Port-status报文后,发现该报文中携带的信息发生了变化,于是根据该Port-status报文中携带的更新信息,对已创建的端口信息库进行更新,并重新为该SDN设备计算最优转发路径,并下发对应的更新流表。SDN设备在收到更新流表后,可以对原有的流表进行覆盖。
在以上实施例中,由于控制器在本地创建的端口信息库中包括SDN设备的SDN端口的VLAN信息,因此控制器可以基于端口信息库有针对性的进行流表下发,从而可以提高流表下发的有效性。
然而在具体实现时,SDN设备在上报端口属性更新信息时,如果更新报文发生丢包事件,则可能会造成控制器无法对本地的端口信息库进行实时更新,造成端口信息库中信息的滞后,从而导致控制器重复下发失效的流表。
因此,在本实施例中,当SDN设备收到控制器下发的流表后,仍然可以由SDN设备来进行流表的有效性判断。具体的。当SDN设备收到控制器下发的流表后,检查该流表中指令域中指定的出端口的VLAN与匹配域中指定的VLAN是否相同,如果不相同,向控制器返回一个错误报文。
在现有实现中,SDN向控制器返回的错误报文中所支持的错误类型中,并不包括指示出端口VLAN不匹配的错误类型,因此会造成控制器在收到该错误报文后,仍然无法获知本次下发流表的失效原因,从而有可能仍会造成控制器对失效流表的重复下发。
因此,请参见图6,在本实施例中可以对SDN设备向控制器返回的错误报文所支持的错误类型进行扩展,增加一种出端口VLAN不匹配的错误类型,从而控制器在收到所述错误报文后,就可以获知当前下发流表失效可能是由于本地端口信息库中的信息未及时更新导致的,从而保证控制器在收到SDN设备上报的端口属性更新信息以前,将不再重复下发失效流表。
以下以一个具体的应用实例来详细阐述本发明。
请参见图7,以基于OpenFlow协议的SDN网络为例,假设SDN交换机上有4个SDN端口,Port1属于VLAN2,Port2属于VLAN3,Port3属于VLAN4,Port4属于VLAN5;其中,VLAN2、3、4、5已被配置为OpenFlow特性的VLAN。
如图7所示,SDN交换机和Controller(控制器)之间基于已建立的TCP连接互发hello报文来发现对方,当成功发现对方后,再通过交互Feature-Request和Feature-Reply报文建立连接建立连接。当连接成功建立后,SDN交换机通过Port-status报文将端口属性信息上报给Controller,Controller根据SDN交换机上报的端口属性信息端口信息库。由于SDN交换机上报的端口属性信息中包括端口的VLAN信息,因此Controller创建的端口信息库中也包括了SDN交换机本地的SDN端口Port1~Port4的VLAN信息。
端口信息库创建完成后,Controller可以根据端口信息库有针对性的
向SDN下发流表。此时,假设Controller向SDN交换机下发的流表如下表所示:
流表 | 匹配域 | 指令域 |
Flow-Mod1 | VLAN2 | Port1 |
Flow-Mod2 | VLAN3 | Port2 |
Flow-Mod3 | VLAN4 | Port3 |
Flow-Mod4 | VLAN5 | Port4 |
由上表可见,Controller向SDN交换机下发的流表中,匹配域中的VLAN与指令域中指定的出端口的VLAN相互匹配,因此Flow-Mod1~Flow-Mod4均为有效流表。SDN交换机可以根据上述流表正常的进行报文的转发。
请参见图8,假设SDN交换机上Port4的VLAN发生了变化,由VLAN5迁移到了VLAN3,SDN交换机可以再次向Controller发送Port-status报文将Port4发生VLAN迁移后的端口属性信息作为更新信息上报给Controller。Controller收到更新信息后,发现Port4的VLAN发生了迁移,于是更新本地的端口信息库,并再次向SDN交换机下发更新流表。
此时Controller向SDN交换机下发的流表如下表:
流表 | 匹配域 | 指令域 |
Flow-Mod5 | VLAN3 | Port4 |
SDN收到Flow-Mod5后,对原有的Flow-Mod4进行覆盖,从而完成流表的更新。
通过以上实施例的描述可知,本实施例通过对SDN端口的端口属性信息的信息结构进行扩展,SDN交换机在上报端口属性信息时可以携带端口的VLAN信息,使得控制器可以参考端口信息库中的VLAN信息有针对性的向SDN交换机下发流表,提高了流表下发的有效性。另外,当SDN交换机本地的SDN端口的VLAN发生变化时,实时的向控制器上报端口属性更新信息,使得控制器可以对本地的端口信息库进行实时更新,从而保证了端口信息库中数据的准确性。同时,通过对SDN交换机向控制器发动的错误报文所支持的错误类型进行扩展,可以保证控制器在收到错误报文后,可以准确获知下发流表失效的原因,从而避免了对失效流表的重复下发。
与上述各方法实施例对应,本发明还提供装置项实施例。
请参见图9,本发明还提出一种报文转发装置90,应用于SDN控制器中;其中,请参见图10,作为承载所述报文转发装置90的SDN控制器涉及的硬件架构中,通常包括CPU、内存、非易失性存储器、网络接口以及内部总线等。以软件实现为例,本发明装置90通常可以理解为加载在内存中的计算机程序,通过CPU运行之后形成的软硬件相结合的逻辑装置;所述装置90包括:
接收模块901,用于接收SDN设备上报的端口属性信息,所述端口属性信息中包括端口的VLAN信息;
创建模块902,用于根据接收到的所述端口属性信息创建端口信息库;
下发模块903,用于根据创建的所述端口信息库为所述SDN设备计算最优转发路径,并下发对应的流表。
在本实施例中,所述第一接收模块901进一步用于:
接收SDN设备上报的端口属性更新信息;其中,所述端口属性更新信息由所述SDN设备在本地的SDN端口中,任一端口的VLAN发生变化时上报,所述端口属性更新信息中包括所述端口更新后的VLAN信息;
所述创建模块902进一步用于:
根据接收到的端口属性更新信息更新所述端口信息库;
所述下发模块903进一步用于:
根据更新后的端口信息库为所述SDN设备重新计算最优转发路径,并下发对应的更新流表,以使得所述SDN设备根据所述更新流表对已有流表进行更新。
请参见图11,本发明还提出一种报文转发装置110,应用于SDN设备中;其中,请参见图12,作为承载所述报文转发装置110的主节点涉及的硬件架构中,通常包括CPU、内存、非易失性存储器、网络接口以及内部总线等。以软件实现为例,本发明装置110通常可以理解为加载在内存中的计算机程序,通过CPU运行之后形成的软硬件相结合的逻辑装置;所述装置110包括:
上报模块1101,用于向SDN控制器上报本地SDN端口的端口属性信息,所述端口属性信息中包括端口的VLAN信息,以使得所述SDN控制器根据接收到的所述端口属性信息创建端口信息库,根据所述端口信息库为所述SDN设备计算最优转发路径,并下发对应的流表;
转发模块1102,用于接收SDN控制器下发的流表,并根据接收到的流表转发报文。
在本实施例中,所述上报模块1101进一步用于:
当本地SDN端口中,任一端口的VLAN发生变化时,向SDN控制器上报端口属性更新信息,所述端口属性更新信息中包括所述端口更新后的VLAN信息,以使得所述SDN控制器根据接收到的所述端口属性更新信息更新本地的端口信息库,为所述SDN设备重新计算最优转发路径,并下发对应的更新流表。
在本实施例中,所述装置110还包括:
判断模块1103,用于判断接收到的流表中,匹配域所指定的VLAN与指令域所指定的出端口的VLAN是否匹配;
发送模块1104,用于在所述匹配域所指定的VLAN与指令域所指定的出端口的VLAN不匹配时,向所述SDN控制器发送错误通告消息;所述错误通告消息用于通告SDN控制器所下发的流表中,匹配域所指定的VLAN与指令域所指定的出端口的VLAN不匹配。
本领域技术人员可以理解实施例中的装置中的模块可以按照实施例描述分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可进一步拆分成多个子模块。上述发明实施例编号仅仅为了描述,不代表实施例的优劣。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (10)
1.一种报文转发方法,应用于软件定义网络SDN控制器上,其特征在于,所述方法包括:
接收SDN设备上报的端口属性信息,所述端口属性信息中包括端口的VLAN信息;
根据接收到的所述端口属性信息创建端口信息库;
根据创建的所述端口信息库为所述SDN设备计算最优转发路径,并下发对应的流表,以使得所述SDN设备根据所述流表进行报文转发。
2.如权利要求1所述的方法,其特征在于,所述方法还包括:
接收SDN设备上报的端口属性更新信息;其中,所述端口属性更新信息由所述SDN设备在本地的SDN端口中,任一端口的虚拟局域网VLAN发生变化时上报,所述端口属性更新信息中包括所述端口更新后的VLAN信息;
根据接收到的端口属性更新信息更新所述端口信息库;
根据更新后的端口信息库为所述SDN设备重新计算最优转发路径,并下发对应的更新流表,以使得所述SDN设备根据所述更新流表对已有流表进行更新。
3.一种报文转发方法,应用于SDN设备上,其特征在于,所述方法包括:
向SDN控制器上报本地SDN端口的端口属性信息,所述端口属性信息中包括端口的VLAN信息,以使得所述SDN控制器根据接收到的所述端口属性信息创建端口信息库,根据所述端口信息库为所述SDN设备计算最优转发路径,并下发对应的流表;
接收SDN控制器下发的流表,并根据接收到的流表转发报文。
4.如权利要求3所述的方法,其特征在于,所述方法还包括:
当本地SDN端口中,任一端口的VLAN发生变化时,向SDN控制器上报端口属性更新信息,所述端口属性更新信息中包括所述端口更新后的VLAN信息,以使得所述SDN控制器根据接收到的所述端口属性更新信息更新本地的端口信息库,为所述SDN设备重新计算最优转发路径,并下发对应的更新流表。
5.如权利要求3所述的方法,其特征在于,所述方法还包括:
判断接收到的流表中,匹配域所指定的VLAN与指令域所指定的出端口的VLAN是否匹配;
如果不匹配,向所述SDN控制器发送错误通告消息;所述错误通告消息用于通告SDN控制器所下发的流表中,匹配域所指定的VLAN与指令域所指定的出端口的VLAN不匹配。
6.一种报文转发装置,应用于SDN控制器上,其特征在于,所述装置包括:
接收模块,用于接收SDN设备上报的端口属性信息,所述端口属性信息中包括端口的VLAN信息;
创建模块,用于根据接收到的所述端口属性信息创建端口信息库;
下发模块,用于根据创建的所述端口信息库为所述SDN设备计算最优转发路径,并下发对应的流表,以使得所述SDN设备根据所述流表进行报文转发。
7.如权利要求6所述的装置,其特征在于,所述第一接收模块进一步用于:
接收SDN设备上报的端口属性更新信息;其中,所述端口属性更新信息由所述SDN设备在本地的SDN端口中,任一端口的VLAN发生变化时上报,所述端口属性更新信息中包括所述端口更新后的VLAN信息;
所述创建模块进一步用于:
根据接收到的端口属性更新信息更新所述端口信息库;
所述下发模块进一步用于:
根据更新后的端口信息库为所述SDN设备重新计算最优转发路径,并下发对应的更新流表,以使得所述SDN设备根据所述更新流表对已有流表进行更新。
8.一种报文转发装置,应用于SDN设备上,其特征在于,所述装置包括:
上报模块,用于向SDN控制器上报本地SDN端口的端口属性信息,所述端口属性信息中包括端口的VLAN信息,以使得所述SDN控制器根据接收到的所述端口属性信息创建端口信息库,根据所述端口信息库为所述SDN设备计算最优转发路径,并下发对应的流表;
转发模块,用于接收SDN控制器下发的流表,并根据接收到的流表转发报文。
9.如权利要求8所述的装置,其特征在于,所述上报模块进一步用于:
当本地SDN端口中,任一端口的VLAN发生变化时,向SDN控制器上报端口属性更新信息,所述端口属性更新信息中包括所述端口更新后的VLAN信息,以使得所述SDN控制器根据接收到的所述端口属性更新信息更新本地的端口信息库,为所述SDN设备重新计算最优转发路径,并下发对应的更新流表。
10.如权利要求8所述的装置,其特征在于,所述装置还包括:
判断模块,用于判断接收到的流表中,匹配域所指定的VLAN与指令域所指定的出端口的VLAN是否匹配;
发送模块,用于在所述匹配域所指定的VLAN与指令域所指定的出端口的VLAN不匹配时,向所述SDN控制器发送错误通告消息;所述错误通告消息用于通告SDN控制器所下发的流表中,匹配域所指定的VLAN与指令域所指定的出端口的VLAN不匹配。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410531968.7A CN104301230A (zh) | 2014-10-10 | 2014-10-10 | 报文转发方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410531968.7A CN104301230A (zh) | 2014-10-10 | 2014-10-10 | 报文转发方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104301230A true CN104301230A (zh) | 2015-01-21 |
Family
ID=52320803
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410531968.7A Pending CN104301230A (zh) | 2014-10-10 | 2014-10-10 | 报文转发方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104301230A (zh) |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104601488A (zh) * | 2015-01-22 | 2015-05-06 | 杭州华三通信技术有限公司 | 一种软件定义网络中流量控制方法和装置 |
CN105141677A (zh) * | 2015-08-12 | 2015-12-09 | 上海斐讯数据通信技术有限公司 | 基于sdn的镜像方法及系统 |
CN105187325A (zh) * | 2015-10-27 | 2015-12-23 | 上海斐讯数据通信技术有限公司 | 一种sdn流表管理方法及系统、交换机 |
CN105306390A (zh) * | 2015-09-30 | 2016-02-03 | 上海斐讯数据通信技术有限公司 | 一种数据报文转发控制方法及系统 |
CN105471658A (zh) * | 2015-12-11 | 2016-04-06 | 北京电子科技职业学院 | 一种sdn网络及其组网方法 |
CN105791113A (zh) * | 2016-02-25 | 2016-07-20 | 上海斐讯数据通信技术有限公司 | 一种基于sdn的多链路时延均衡方法和系统 |
CN105791110A (zh) * | 2016-04-19 | 2016-07-20 | 杭州华三通信技术有限公司 | 一种建立流路径的方法及装置 |
WO2016115836A1 (zh) * | 2015-01-22 | 2016-07-28 | 中兴通讯股份有限公司 | 路由状态和/或策略信息的处理方法及装置 |
WO2016180356A1 (en) * | 2015-05-13 | 2016-11-17 | Huawei Technologies Co., Ltd. | Systems and methods for making and disseminating local policy decisions in a software programmable radio network |
CN106330537A (zh) * | 2016-08-22 | 2017-01-11 | 刘昱 | Sdn网络设备控制面管理装置及方法 |
CN106911769A (zh) * | 2017-02-09 | 2017-06-30 | 腾讯科技(深圳)有限公司 | 云平台路由数据的处理方法和云平台的物理服务器 |
CN109379163A (zh) * | 2018-09-05 | 2019-02-22 | 新华三技术有限公司 | 一种报文转发速率控制方法及装置 |
CN111654399A (zh) * | 2020-06-08 | 2020-09-11 | 奇安信科技集团股份有限公司 | 基于sd-wan的组网方法、装置、设备及存储介质 |
CN112217655A (zh) * | 2019-07-11 | 2021-01-12 | 奇安信科技集团股份有限公司 | Sd-wan系统中网络设备配置方法、装置和计算机设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103763367A (zh) * | 2014-01-17 | 2014-04-30 | 浪潮(北京)电子信息产业有限公司 | 一种云计算数据中心分布式虚拟网络设计方法及系统 |
CN103763146A (zh) * | 2014-01-29 | 2014-04-30 | 杭州华三通信技术有限公司 | 一种软件定义网络控制器及其生成转发信息的方法 |
CN103763207A (zh) * | 2014-01-29 | 2014-04-30 | 杭州华三通信技术有限公司 | 软件定义网络中的带内控制连接建立方法及设备 |
US20140241353A1 (en) * | 2013-02-28 | 2014-08-28 | Hangzhou H3C Technologies Co., Ltd. | Switch controller |
-
2014
- 2014-10-10 CN CN201410531968.7A patent/CN104301230A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140241353A1 (en) * | 2013-02-28 | 2014-08-28 | Hangzhou H3C Technologies Co., Ltd. | Switch controller |
CN103763367A (zh) * | 2014-01-17 | 2014-04-30 | 浪潮(北京)电子信息产业有限公司 | 一种云计算数据中心分布式虚拟网络设计方法及系统 |
CN103763146A (zh) * | 2014-01-29 | 2014-04-30 | 杭州华三通信技术有限公司 | 一种软件定义网络控制器及其生成转发信息的方法 |
CN103763207A (zh) * | 2014-01-29 | 2014-04-30 | 杭州华三通信技术有限公司 | 软件定义网络中的带内控制连接建立方法及设备 |
Cited By (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016115836A1 (zh) * | 2015-01-22 | 2016-07-28 | 中兴通讯股份有限公司 | 路由状态和/或策略信息的处理方法及装置 |
US10320666B2 (en) | 2015-01-22 | 2019-06-11 | Zte Corporation | Method and device for processing routing status and/or policy information |
CN104601488B (zh) * | 2015-01-22 | 2019-03-15 | 新华三技术有限公司 | 一种软件定义网络中流量控制方法和装置 |
CN104601488A (zh) * | 2015-01-22 | 2015-05-06 | 杭州华三通信技术有限公司 | 一种软件定义网络中流量控制方法和装置 |
WO2016180356A1 (en) * | 2015-05-13 | 2016-11-17 | Huawei Technologies Co., Ltd. | Systems and methods for making and disseminating local policy decisions in a software programmable radio network |
CN107925614A (zh) * | 2015-05-13 | 2018-04-17 | 华为技术有限公司 | 制定和传播软件可编程无线网络中本地策略决策的系统和方法 |
US10791048B2 (en) | 2015-05-13 | 2020-09-29 | Futurewei Technologies, Inc. | System and method for making and disseminating local policy decisions in a software programmable radio network |
CN105141677A (zh) * | 2015-08-12 | 2015-12-09 | 上海斐讯数据通信技术有限公司 | 基于sdn的镜像方法及系统 |
CN105306390A (zh) * | 2015-09-30 | 2016-02-03 | 上海斐讯数据通信技术有限公司 | 一种数据报文转发控制方法及系统 |
CN105306390B (zh) * | 2015-09-30 | 2019-10-25 | 上海斐讯数据通信技术有限公司 | 一种数据报文转发控制方法及系统 |
CN105187325A (zh) * | 2015-10-27 | 2015-12-23 | 上海斐讯数据通信技术有限公司 | 一种sdn流表管理方法及系统、交换机 |
CN105471658A (zh) * | 2015-12-11 | 2016-04-06 | 北京电子科技职业学院 | 一种sdn网络及其组网方法 |
CN105471658B (zh) * | 2015-12-11 | 2019-05-14 | 北京电子科技职业学院 | 一种sdn网络及其组网方法 |
CN105791113A (zh) * | 2016-02-25 | 2016-07-20 | 上海斐讯数据通信技术有限公司 | 一种基于sdn的多链路时延均衡方法和系统 |
CN105791113B (zh) * | 2016-02-25 | 2019-11-29 | 上海斐讯数据通信技术有限公司 | 一种基于sdn的多链路时延均衡方法和系统 |
CN105791110A (zh) * | 2016-04-19 | 2016-07-20 | 杭州华三通信技术有限公司 | 一种建立流路径的方法及装置 |
CN106330537A (zh) * | 2016-08-22 | 2017-01-11 | 刘昱 | Sdn网络设备控制面管理装置及方法 |
CN106911769A (zh) * | 2017-02-09 | 2017-06-30 | 腾讯科技(深圳)有限公司 | 云平台路由数据的处理方法和云平台的物理服务器 |
CN109379163A (zh) * | 2018-09-05 | 2019-02-22 | 新华三技术有限公司 | 一种报文转发速率控制方法及装置 |
CN109379163B (zh) * | 2018-09-05 | 2021-11-23 | 新华三技术有限公司 | 一种报文转发速率控制方法及装置 |
CN112217655A (zh) * | 2019-07-11 | 2021-01-12 | 奇安信科技集团股份有限公司 | Sd-wan系统中网络设备配置方法、装置和计算机设备 |
CN112217655B (zh) * | 2019-07-11 | 2022-08-02 | 奇安信科技集团股份有限公司 | Sd-wan系统中网络设备配置方法、装置和计算机设备 |
CN111654399A (zh) * | 2020-06-08 | 2020-09-11 | 奇安信科技集团股份有限公司 | 基于sd-wan的组网方法、装置、设备及存储介质 |
CN111654399B (zh) * | 2020-06-08 | 2022-10-18 | 奇安信科技集团股份有限公司 | 基于sd-wan的组网方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104301230A (zh) | 报文转发方法和装置 | |
EP3188409B1 (en) | Oam mechanisms for evpn active-active services | |
CN102164091B (zh) | 一种mac地址表建立方法及运营商边缘设备 | |
CN107181688B (zh) | 一种sdn网络中实现服务器端跨域数据传输优化的系统和方法 | |
US8830820B2 (en) | Semi-centralized routing | |
CN106712988B (zh) | 一种虚拟网络管理方法及装置 | |
CN103401786B (zh) | 网络拓扑建立、路径控制、报文传输方法及装置、系统 | |
CN105634956B (zh) | 一种报文转发方法、装置和系统 | |
CN105262667A (zh) | Overlay网络中控制组播传输的方法、装置 | |
CN104506408A (zh) | 基于sdn的数据传输的方法及装置 | |
CN103997414A (zh) | 生成配置信息的方法和网络控制单元 | |
CN104717081A (zh) | 一种网关功能的实现方法及装置 | |
CN104009926A (zh) | Evi网络中的组播方法及边缘设备ed | |
CN105340224A (zh) | 网络控制方法和装置 | |
CN105162704A (zh) | Overlay网络中组播复制的方法及装置 | |
CN104184663A (zh) | 基于软件定义网络和一体化标识网络的通信方法和装置 | |
CN104168209A (zh) | 多接入sdn网络报文转发方法和控制器 | |
CN104135446A (zh) | 基于SDN实现IPv4向IPv6过渡的系统及方法 | |
JP2014504047A (ja) | 通信システム、制御装置、転送ノード、通信制御方法およびプログラム | |
CN103631652A (zh) | 虚拟机迁移的实现方法及系统 | |
CN106664235A (zh) | 软件定义网络与传统网络的融合方法以及装置 | |
CN103200100A (zh) | 一种报文转发方法和设备 | |
CN103825826A (zh) | 一种动态路由的实现方法和装置 | |
CN105187311A (zh) | 一种报文转发方法及装置 | |
CN113992590A (zh) | 基于软件定义网络的链路负载均衡方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Applicant after: Xinhua three Technology Co., Ltd. Address before: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Applicant before: Huasan Communication Technology Co., Ltd. |
|
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20150121 |