用于SDN网络的带外控制系统、及控制面通信方法
技术领域
本申请涉及SDN网络技术,具体涉及一种用于SDN网络的带外控制系统。本申请同时涉及一种用于SDN网络的控制面通信方法。
背景技术
软件定义网络(Software Defined Network—SDN),是网络虚拟化的一种实现方式,是为了解决传统交换或基于路由网络部署的瓶颈问题而发展起来的一种新型网络架构,其核心技术OpenFlow通过将控制平面功能从传统交换机中分离出来、移入SDN控制器并集中化管理,使OpenFlow交换机仅保留数据平面,从而实现了网络流量的灵活控制,使网络作为管道变得更加智能。
SDN控制器与OpenFlow交换机之间的通信,通常不能使用OpenFlow交换机自身的业务网络,而需要在OpenFlow业务网络之外额外构建独立的带外控制通道,也称为带外管理网。在城域网或者广域网中建立独立的带外控制通道是相对复杂的,通常采用以下两种方法:1)利用运营商的电信基础设施,架设长距离专线电路,并用交换机组成带外控制通道;2)利用运营商无线网络和运营商无线出口网关构建带外控制通道,实现SDN控制器与OpenFlow交换机之间的通信(详细信息,可以参见201310400270.7号专利申请文献中描述的技术方案)。
上述两种方法的确可以为SDN网络提供独立的带外控制通道,但是在具体应用中分别存在以下缺陷:第1)种方法,由于需要架设长距离的专线电路,因此成本比较高;第2)种方法,由于需要使用无线网络,因此不可避免存在网络传输时延大、在气象条件恶劣时导致误码率增高的问题,特别是在同一基站下的用户人数增多时网络时延更不可控,而且无线网络由于带宽资源有限、也同样存在成本高的缺陷。
由于上述缺陷导致在地理区域较广的范围内为SDN网络构建带外控制通道,需要付出较大的代价、却可能无法取得满意的效果,为SDN网络技术的发展和应用带来很大的阻力。
发明内容
本申请实施例提供一种用于SDN网络的带外控制系统,以解决现有技术存在的构建带外控制通道成本高、以及带外控制通道传输时延大、误码率高等问题。本申请实施例还提供一种用于SDN网络的控制面通信方法。
本申请提供一种用于SDN网络的带外控制系统,包括:
带外交换机,与带外交换机对应设置的OpenFlow交换机和波分网络中的波分设备,以及SDN控制器;所述带外交换机通过上联端口与相应OpenFlow交换机的管理端口相连接、通过下联端口分别与相应波分设备的OSC模块提供的用户信道端口相连接,所述SDN控制器至少与一个带外交换机的上联端口相连接;
其中,所述SDN控制器,用于和与其相连接的带外交换机传递控制面报文、以实现对所述系统中的OpenFlow交换机的控制;
所述带外交换机,用于根据接收到的控制面报文的目的地址查询路由表,并根据查询得到的端口转发所述报文;
所述波分设备,用于从OSC模块的用户信道端口接收带外交换机转发的控制面报文,并将所述OSC模块输出的包含所述控制面报文信息的监控光信号与业务光信号合波后、耦合至对应于所述用户信道端口的线路光纤中传输;还用于从线路光纤接收光信号后执行分波操作,并由OSC模块将从监控光信号分离出的控制面报文通过对应于所述线路光纤的用户信道端口转发给相应的带外交换机。
可选的,所述波分网络为具有迂回传输路径的波分网络,包括:环形网、或者格形网。
可选的,所述带外交换机还用于,通过运行动态路由协议维护所述路由表。
可选的,所述动态路由协议包括:OSPF协议、或IBGP协议。
可选的,所述SDN控制器具体用于通过以下方式和与其相连接的带外交换机传递控制面报文:
接收经由所述带外交换机转发的控制面报文;以及,
向所述带外交换机发送指定目标OpenFlow交换机地址的控制面报文。
可选的,所述控制面报文的种类包括:Openflow报文、netconf报文、SNMP报文、syslog报文、SSH报文、Openconfig报文、BGP报文、或者PCEP报文。
可选的,所述波分设备包括:光分叉和复用设备,或者光交叉连接设备。
可选的,所述用户信道端口的类型包括:RJ45端口。
可选的,所述目的地址包括:目的IP地址。
相应的,本申请还提供一种用于SDN网络的控制面通信方法,包括:
SDN控制器与OpenFlow交换机,利用由带外交换机和波分网络用户信道构建的带外控制通道进行通信。
可选的,所述SDN控制器与OpenFlow交换机,利用由带外交换机和波分网络用户信道构建的带外控制通道进行通信,包括:
SDN控制器将采用TCP/IP协议封装的控制面报文发送给与其连接的带外交换机;
接收到所述控制面报文的带外交换机,根据所述控制面报文的目的地址查询路由表,并根据查询结果执行下述操作:
若所述目的地址对应于所述带外交换机的上联端口,则将所述控制面报文通过所述上联端口发送给OpenFlow交换机,并结束本方法的执行;
否则,将所述控制面报文从相应的下联端口发送给波分设备,以利用波分网络提供的用户信道将所述控制面报文转发给相邻的带外交换机,并转到所述接收到所述控制面报文的带外交换机,根据所述控制面报文的目的地址查询路由表的步骤执行。
可选的,所述SDN控制器与OpenFlow交换机,利用由带外交换机和波分网络用户信道构建的带外控制通道进行通信,包括:
OpenFlow交换机将采用TCP/IP协议封装的控制面报文发送给与其相连接的带外交换机;
接收到所述控制面报文的带外交换机,根据所述控制面报文的目的地址查询路由表,并根据查询结果执行下述操作:
若所述目的地址对应于所述带外交换机的上联端口,则将所述控制面报文通过所述上联端口发送给SDN控制器,并结束本方法的执行;
否则,将所述控制面报文从相应的下联端口发送给波分设备,以利用波分网络提供的用户信道将所述报文转发给相邻的带外交换机,并转到所述接收到所述控制报文的带外交换机,根据所述控制面报文的目的地址查询路由表的步骤执行。
可选的,所述控制面报文的种类包括:Openflow报文、netconf报文、SNMP报文、syslog报文、SSH报文、Openconfig报文、BGP报文、或者PCEP报文。
可选的,所述带外控制系统中的波分网络为具有迂回传输路径的波分网络,包括:环形网、或者格形网。
可选的,所述路由表是由带外交换机通过运行动态路由协议维护的。
可选的,所述动态路由协议包括:OSPF协议、或IBGP协议。
与现有技术相比,本申请具有以下优点:
本申请提供的用于SDN网络的带外控制系统,包括:带外交换机,与带外交换机对应设置的OpenFlow交换机和波分网络中的波分设备,以及SDN控制器;所述带外交换机通过上联端口与相应OpenFlow交换机的管理端口相连接、通过下联端口分别与相应波分设备的OSC模块提供的用户信道端口相连接,所述SDN控制器至少与一个带外交换机的上联端口相连接;其中,所述SDN控制器,用于和与其相连接的带外交换机传递控制面报文,所述带外交换机,用于根据接收到的控制面报文的目的地址查询路由表并转发报文;所述波分设备,用于从OSC模块的用户信道端口接收带外交换机发送的控制面报文,并利用用户信道将控制面报文传输给相邻波分设备;还用于从线路光纤接收光信号后执行分波操作,并将分离出的控制面报文通过对应于所述线路光纤的用户信道端口发送给相应的带外交换机。
由此可见,本申请提供的上述技术方案,充分利用了波分网络的OSC光监控通道所提供的用户信道,由所述用户信道以及带外交换机共同构建了独立的带外控制通道,提供了控制面报文的逐跳转发功能,从而实现SDN控制器与OpenFlow交换机之间的通信。采用上述方式构建SDN网络的带外控制通道,只需要添加具备基本的数据报文转发功能的带外交换机即可,成本很低,而且由于采用光纤作为传输介质,有效避免了采用无线网络存在的误码率高、传输时延大等缺陷。
附图说明
图1是本申请的一种用于SDN网络的带外控制系统的实施例的示意图;
图2是本申请的一种用于SDN网络的控制面通信方法的实施例的示意图;
图3是本申请实施例提供的SDN控制器向OpenFlow交换机发送控制面报文的处理流程图;
图4是本申请实施例提供的OpenFlow交换机向SDN控制器发送控制面报文的处理流程图。
具体实施方式
在下面的描述中阐述了很多具体细节以便于充分理解本申请。但是,本申请能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本申请内涵的情况下做类似推广,因此,本申请不受下面公开的具体实施的限制。
在本申请中,提供了一种用于SDN网络的带外控制系统,以及一种用于SDN网络的控制面通信方法。在下面的实施例中逐一进行详细说明。在描述一种用于SDN网络的带外控制系统的实施例之前,先对本申请技术方案进行说明。
本申请技术方案的核心在于,充分利用了已有波分网络的光监控通道(OpticalSupervising Channel,简称OSC)提供的用户信道(User Channel),由所述用户信道以及带外交换机共同完成控制面报文的逐跳转发功能,实现SDN控制器与OpenFlow交换机之间的通信,即:为SDN网络提供了由波分网络的用户信道以及带外交换机共同构建的带外控制通道。
在波分网络系统中,为了便于对波分网络系统进行配置管理、故障管理、性能管理、以及安全管理,并与上层管理系统相配合,专门设置了一个用于管理的波长通道,这个波长通道就是通常所述的光监控通道,承载光监控通道的独立波长可以为1490、1510或者1625nm。在实际应用中,针对OSC光监控信道一般选用STM-1速率的光模块,而波分系统网管需要使用到的带宽通常只有10M,剩余的带宽可以用来组织一个由用户自定义用途的通道,例如:带宽为100M的FE通道,即为本实施例所述的用户信道。
对应于上面描述的功能,在波分设备中通常设置有OSC模块(也称为OSC监控通道板卡),该模块提供与线路光纤相对应的用户信道端口,一方面可以将波分设备从线路光纤接收并执行分波操作后得到的OSC监控光信号进行光电转换,并从中分离出用于波分系统网管的监控信息和通过用户信道传输的用户自定义信息,并将用户自定义信息通过所述用户信道端口转发出去,以供相关设备进行处理;另一方面,对于从用户信道端口接收到的用户自定义信息,可以与波分系统网管监控信息按照预设方式编码后,通过光口输出独立波长的OSC监控光信号,由波分设备进行与业务光信号的合波处理后耦合至线路光纤中发送出去。OSC模块提供的用户信道端口在物理上通常体现为RJ45端口。
通常OSC模块可以针对一个方向的线路光纤提供一个用户信道端口,也可以针对两个方向的线路光纤分别提供相对应的两个用户信道端口,在具体波分设备中,可以根据线路光纤的情况,设置相应数量及类型的OSC模块。目前主流厂商提供的波分设备都具有OSC监控通道板卡,通常都能够提供100M速率的用户信道及相应的RJ45端口。例如:Cisco的15454设备的OSCM板卡、华为的OSN8800设备的ST2板卡等。
由此可见,波分网络系统都具备OSC光监控通道,其中用户信道承载的信息可以在每个波分设备通过用户信道端口实现上下路、并在波分网络的相邻设备间透明传输,而且在实际波分网络系统的应用中,用户信道通常都处于闲置状态,基于上述背景,发明人提出了本技术方案:在既有波分网络的基础上增加带外交换机,利用波分网络OSC通道中的用户信道以及带外交换机、组建SDN网络的带外控制通道,通过该带外控制通道实现SDN控制器与OpenFlow交换机之间的通信。
本申请的技术方案,为在地理分布较广的区域中构建带外控制网络提供了一种新的思路,而且具有突出的有益效果:不需要架设长距离专线,成本低;有效避免了采用无线网络存在的误码率高、传输时延大等缺陷;而且带外控制网络是专有网络,没有与其他网络拉通,不需要部署通信认证机制,可以简化实施过程,从而对OpenFlow交换机的应用推广起到很大作用。
上面对本申请的技术方案进行了简要的说明。其中,波分网络可以是由WDM(Wavelength Division Multiplexing—波分复用)设备组建的波分网络,也可以是DWDM(Dense Wavelength Division Multiplexing—密集波分复用)设备组建的波分网络。所述波分网络中的波分设备可以包括光分插和复用设备(OADM设备)、以及光交叉连接设备(OXC设备)等。由于DWDM网络是目前以及今后的发展方向,因此在下面提供的实施例中采用DWDM网络为重点进行说明。
下面首先给出本申请的一种用于SDN网络的带外控制系统的实施例。
本实施例提供的所述系统,包括:带外交换机,与带外交换机对应设置的OpenFlow交换机和波分网络中的波分设备,以及SDN控制器;所述带外交换机通过上联端口与相应OpenFlow交换机的管理端口相连接、通过下联端口分别与相应波分设备的OSC模块提供的用户信道端口相连接,所述SDN控制器至少与一个带外交换机的上联端口相连接。
其中,所述波分网络可以采用不同的组网形式,例如:可以是链形网络、环形网络、或者格形网络等。不管采用何种组网形式,由于都具备由OSC监控通道提供的用户信道,因此都可以用于实施本申请的技术方案,其中环形网或者格形网等组网形式,由于具备迂回传输路径,因此可以提供更为可靠的带外控制通道,是本申请的优选实施方式,在本实施例中以环状网络为例对本系统的具体实施方式进行描述。
请参考图1,其为本实施例提供的一种用于SDN网络的带外控制系统的实施例的示意图,在图示系统中,包括:带外交换机1、2、3;OpenFlow交换机1、2、3;DWDM设备1、2、3;以及一个SDN控制器。其中,SDN控制器和每个OpenFlow交换机分别预先配置了在本系统内具有唯一标识作用的地址信息,例如:IP地址。每个DWDM设备设置有一个OSC模块,所述OSC模块提供两个用户信道端口,分别与两个方向的线路光纤相对应。
带外交换机1通过上联端口P1与相应OpenFlow交换机1的管理端口(MGMT端口)相连接;与带外交换机1对应的DWDM设备1的OSC模块提供两个用户信道端口:U1、U2,分别与DWDM设备1的两个方向的线路光纤相对应;带外交换机1通过下联端口P3与DWDM设备1的U1端口相连接、通过下联端口P4与DWDM设备1的U2端口相连接。带外交换机2及带外交换机3与相应OpenFlow交换机和相应DWDM设备的连接方式也是类似的,此处不再赘述。在图1所示系统中,SDN控制器与各OpenFlow交换机之间的虚线,代表通过本系统提供的带外控制通道可以实现SDN控制器对各OpenFlow交换机的控制。
在图1所示系统中,SDN控制器与带外交换机1的上联端口P2相连接,在具体实施时,SDN控制器也可以与带外交换机2、或者带外交换机3的某一上联端口相连接,也是可以的。
需要说明的是,带外交换机1的4个端口:两个上联端口P1、P2,两个下联端P3、P4,在设备物理层面上看是对等的,都提供基本的报文发送接收功能,区别在于相连接的设备可能不同。为了便于描述,突出连接设备的差异性,在本实施例中将用于与OpenFlow交换机或者SDN控制器相连接的端口称为上联端口,把用于与传输面波分设备相连接的端口称为下联端口。对于带外交换机2和带外交换机3也采用了同样的描述方式。
在具体实施时,所述OpenFlow交换机1、带外交换机1、DWDM设备1、以及SDN控制器可以部署于小范围区域内,例如:机房1内,彼此间采用双绞线相连接,也可以采用其他方式连接,只要能够实现彼此间的通信就都是可以的;同样的道理,OpenFlow交换机2、带外交换机2、以及DWDM设备2可以部署于机房2内,OpenFlow交换机3、带外交换机3、以及DWDM设备3可以部署于机房3内。
上面对本实施例所涉及的各设备彼此之间的连接方式进行了说明,下面仍参考图1中给出的系统,对SDN控制器、带外交换机、以及波分设备的功能进行详细的说明。
所述SDN控制器,用于和与其相连接的带外交换机传递控制面报文、以实现对所述系统中的OpenFlow交换机的控制。例如,在图1所示系统中,SDN控制器向带外交换机1发送指定目标OpenFlow交换机地址的控制面报文(例如:所述控制面报文的目的IP地址设置为目标OpenFlow交换机的IP地址),所述控制面报文通过由各带外交换机以及DWDM波分网络的用户信道构建的带外控制通道,被传输给目标OpenFlow交换机;同样的道理,某一个OpenFlow交换机从其管理端口发送出的控制面报文,也同样通过所述带外控制通道传递给与SDN控制器相连接的带外交换机1,带外交换机1通过上联端口P2将所述控制面报文转发给SDN控制器,SDN控制器可以根据接收到的控制面报文进行相应的处理。由此可见,SDN控制器通过和与其相连接的带外交换机传递控制面报文,可以实现SDN控制器对系统中的OpenFlow交换机的控制。
SDN控制器和与其相连接的带外交换机之间传递的控制面报文通常采用TCP/IP协议封装,所述控制面报文的类型包括:Openflow报文、netconf报文(网络配置协议报文)、SNMP报文(简单网络管理协议报文)、syslog报文(系统日志协议报文)、SSH报文(安全外壳协议报文)、Openconfig报文、BGP报文(边界网关协议报文)、或者PCEP报文(路径计算单元通信协议报文)。
所述带外交换机,用于根据接收到的控制面报文的目的地址查询路由表,并根据查询得到的端口转发所述控制面报文,其中所述目的地址可以是目的IP地址,每个带外交换机的路由表可以是预先配置好的,其中可以包含目的IP地址与转发端口之间的对应关系。在具体实现时,带外交换机在接收到控制面报文后,可以先通过解封装操作,提取控制面报文的目的IP地址,然后再查询其本地的路由表,获取与所述目的IP地址对应的端口号,并从相应的端口将所述控制面报文转发出去。具体包括两种情况:若所述目的地址对应于所述带外交换机的上联端口,则将所述控制面报文通过所述上联端口发送给与自己相连接的OpenFlow交换机、或者SDN控制器;否则,将所述控制面报文从相应的下联端口发送给波分设备。
所述波分设备,用于从OSC模块的用户信道端口接收带外交换机转发的控制面报文,并将所述OSC模块输出的包含所述控制面报文信息的监控光信号与业务光信号合波后、耦合至对应于所述用户信道端口的线路光纤中传输。例如,在图1所示系统中,DWDM设备1从OSC模块的用户信道端口U2接收到带外交换机1转发的控制面报文,由OSC模块将所述控制面报文信息与DWDM网络自身的网管监控信息采用预设编码方式合成为监控电信号,并由OSC模块的光口输出独立波长的监控光信号,随后经过DWDM设备1的合波器与业务光信号合波后,耦合至与U2端口相对应的线路光纤中(即:在图示中位于DWDM设备1右侧的线路光纤)传输。从而实现了控制面报文从某一DWDM设备上路、并传递给相邻DWDM设备的功能。
所述波分设备,还用于从线路光纤接收光信号后执行分波操作,并由OSC模块将从监控光信号分离出的控制面报文通过对应于所述线路光纤的用户信道端口转发给相应的带外交换机。例如,在图1所示系统中,DWDM设备2从与DWDM1相连接的线路光纤接收光信号后,由分波器分离出OSC监控光信号,并将该监控光信号输出到OSC模块,OSC模块执行光电转换操作后,按照预设的编码规则,从中分离出由用户信道承载的控制面报文,并通过对应于所述线路光纤的用户信道端口U3转发给相应的带外交换机2。从而实现了DWDM设备接收相邻DWDM设备传递的控制面报文、并在本地下路的功能。
由此可见,在波分设备具备上述功能的基础上,可以利用DWDM网络提供的用户信道实现控制面报文在各个DWDM设备之间的逐跳转发,与带外交换机的报文转发功能相配合,可以进一步实现SDN控制器与OpenFlow交换机之间的通信。
下面,仍沿用图1示出的系统,给出两个具体的例子,说明在本系统中如何利用由带外交换机和DWDM网络用户信道构建的带外控制通道(以下简称带外控制通道)、实现SDN控制器与OpenFlow交换机之间的通信。其中,带外交换机1、带外交换机2以及带外交换机3,各自的路由表如下所示:
带外交换机1:
SDN控制器的IP地址:端口P2
OpenFlow交换机1的IP地址:端口P1
OpenFlow交换机2的IP地址:端口P4
OpenFlow交换机3的IP地址:端口P3
带外交换机2:
SDN控制器的IP地址:端口P6
OpenFlow交换机1的IP地址:端口P6
OpenFlow交换机2的IP地址:端口P5
OpenFlow交换机3的IP地址:端口P7
带外交换机3:
SDN控制器的IP地址:端口P10
OpenFlow交换机1的IP地址:端口P10
OpenFlow交换机2的IP地址:端口P9
OpenFlow交换机3的IP地址:端口P8
例一:SDN控制器向OpenFlow交换机2发送控制面报文。
在本例中,SDN控制器为了配置OpenFlow交换机2的流表,向带外交换机1发送采用TCP/IP协议封装的控制面报文,并在所述控制面报文中包含与配置流表相关的信息,所述控制面报文的目的IP地址设置为:OpenFlow交换机2的IP地址。
带外交换机1通过上联端口P2接收到SDN控制器发送的控制面报文后,首先从所述控制面报文中提取目的IP地址,然后查找本地路由表,找到与目的IP地址对应的端口为下联端口P4,则将所述控制面报文通过P4端口发送给DWDM设备1。DWDM设备1通过用户信道端口U2接收到所述控制面报文后,将相应OSC模块输出的包含所述控制面报文信息的监控光信号与业务光信号合波后、耦合至对应于U2端口的线路光纤中传输到相邻的DWDM设备2。
DWDM设备2则针对接收到的光信号执行分波操作,得到业务光信号和监控光信号,并由相应的OSC模块将从监控光信号中分离出的控制面报文通过用户信道端口U3转发给带外交换机2。带外交换机2通过下联端口P6接收所述控制面报文后,查询其本地路由表,找到与控制面报文目的IP地址对应的端口为上联端口P5,因此通过P5端口将所述控制面报文转发给OpenFlow交换机2,从而OpenFlow交换机2从其管理端口接收到了SDN控制器发送的所述控制面报文,并可以根据其中包含的流表信息执行相应的配置操作。
由此可见,利用所述带外控制通道、实现了SDN控制器向OpenFlow交换机2发送控制面报文的功能。在具体实施中,SDN控制器可以利用所述带外控制通道向本系统内任一OpenFlow交换机发送控制面报文,所述控制面报文中可以包含待配置的流表信息,也可以包含用于控制管理OpenFlow交换机的其他信息。通信过程与上面例子描述的过程是类似的,此处不再一一列举。
例二:OpenFlow交换机2向SDN控制器发送控制面报文。
在本例中,OpenFlow交换机2为了向SDN控制器报告本地检测到的故障信息(例如:报告本地端口故障),通过其管理端口向带外交换机2发送采用TCP/IP协议封装的控制面报文,并在所述控制面报文中包含与检测到的故障相关的信息,所述控制面报文的目的IP地址设置为:SDN控制器的IP地址。
带外交换机2通过上联端口P5接收到OpenFlow交换机2发送的控制面报文后,首先从所述控制面报文中提取目的IP地址,然后查找本地路由表,找到与目的IP地址对应的端口为下联端口P6,则将所述控制面报文通过P6端口发送给DWDM设备2。DWDM设备2通过用户信道端口U3接收到所述控制面报文后,将相应OSC模块输出的包含所述控制面报文信息的监控光信号与业务光信号合波后、耦合至对应于U3端口的线路光纤中传输到相邻的DWDM设备1。
DWDM设备1则针对接收到的光信号执行分波操作,得到业务光信号和监控光信号,并由相应的OSC模块将从监控光信号中分离出的控制面报文通过用户信道端口U2转发给带外交换机1。带外交换机1通过下联端口P4接收所述控制面报文后,查询其本地路由表,找到与所述控制面报文目的IP地址对应的端口为上联端口P2,因此通过P2端口将所述控制面报文转发给SDN控制器,从而SDN控制器接收到了OpenFlow交换机2发送的所述控制面报文。
由此可见,利用所述带外控制通道、实现了OpenFlow交换机2向SDN控制器发送控制面报文的功能。在具体实施中,本系统内任一OpenFlow交换机都可以利用所述带外控制通道向SDN控制器发送控制面报文,所述控制面报文中可以包含故障相关的信息,也可以包含需要向SDN控制器上报或者应答的其他信息。通信过程与上面例子描述的过程是类似的,此处不再一一列举。
至此,通过两个具体的例子,对于利用本系统提供的带外控制通道实现SDN控制器与OpenFlow交换机之间的通信过程,进行了详细的说明。
此外,如果在具体实施本系统时采用的波分网络是具有迂回传输路径的波分网络,例如本实施例所述的环形网、或者是格形网,那么本系统提供的带外控制通道,虽然与DWDM网络中各波分设备使用的线路光纤一样是分段组成的,但是从整个DWDM网络的设计看,由于其拓扑架构包含迂回路由,因此所述带外控制通道的可用性就非常高。
仍沿用上面的例子,SDN控制器与OpenFlow交换机2通过本系统提供的带外控制通道通信。如果DWDM设备1与DWDM设备2之间的线路光纤发生故障,例如:光纤断开。那么通过更新带外交换机1、带外交换机2、以及带外交换机3的路由表,即可保障SDN控制器与OpenFlow交换机2之间的正常通信。在具体实施时,更新各带外交换机路由表的操作,可以由带外交换机的管理维护人员实施。
优选地,为了提高本系统提供的带外控制通道的可靠性,本系统中的带外交换机还用于,通过运行动态路由协议维护各自本地的路由表,与运行动态路由协议相关的报文也通过所述带外控制通道传输。从而在DWDM网络发生线路光纤故障的情况下,无需人工干预即可快速实现带外控制通道的迂回路由,从而提供具有电信级别可靠性保障的带外控制通道。
所述动态路由协议包括:OSPF协议(Open Shortest Path First—开放式最短路径优先协议)、或者IBGP协议(Internal Border Gateway Protocol—内部BGP协议)等。通过启用动态路由协议,各带外交换机能够自动地维护路由表、根据实际线路光纤情况的变化实时地对路由表进行调整。
以OSPF为例,其基本原理为:某自治区域中的每个运行OSPF协议的设备,通过使用Hello报文与其邻居设备建立邻接关系,每个设备向其邻居设备发送链路状态通告LSA(也称为链路状态报文LSP),邻居设备在收到LSP之后要依次向其邻居设备转发这些LSP(该过程称为泛洪),从而每个设备在其拓扑数据库中保存所有接收到的LSA的备份,所有设备维护的拓扑数据库通常都是相同的,每个设备根据拓扑数据库中的信息使用Dijkstra算法(SPF算法)计算出到其他设备的最短路径,并将结果输出到路由表中。
基于上述基本原理,本系统中的每个带外交换机,可以用LSA描述两个相邻带外交换机之间的线路光纤,如果与两个相邻带外交换机对应的波分设备之间的线路光纤发生中断等故障,那么这两个带外交换机之间将无法发送相应的LSA,导致整个系统中的带外交换机维护的拓扑数据发生变更,每个带外交换机根据变更后的拓扑数据采用最短路径算法更新各自维护的路由表,从而本系统中的SDN控制器与OpenFlow交换机依然可以通过带外控制通道中的迂回路由实现正常的通信功能,从而为SDN网络的控制平面提供电信级别的可靠性保障。
需要说明的是,上文以OSPF为例对动态路由过程进行了说明,在具体实施时,各带外交换机也可以运行不同于OSPF协议的其他动态路由协议,例如:IBGP协议、IS-IS协议(Intermediate system to intermediate system—中间系统到中间系统),以及其他此处未列出的动态路由协议,虽然各动态路由协议的细节可能存在差别,但是都可以根据线路光纤情况的变化实时地对路由表进行调整,因此同样都可以实现本实施例描述的上述优选实施方式。
仍沿用图1示出的系统架构,如果DWDM设备1与DWDM设备2之间的线路光纤断开,由于各带外交换机运行动态路由协议,因此各带外交换机的本地路由表会快速地更新,更新后的路由表如下所示:
带外交换机1:
SDN控制器的IP地址:端口P2
OpenFlow交换机1的IP地址:端口P1
OpenFlow交换机2的IP地址:端口P3
OpenFlow交换机3的IP地址:端口P3
带外交换机2:
SDN控制器的IP地址:端口P7
OpenFlow交换机1的IP地址:端口P7
OpenFlow交换机2的IP地址:端口P5
OpenFlow交换机3的IP地址:端口P7
带外交换机3:
SDN控制器的IP地址:端口P10
OpenFlow交换机1的IP地址:端口P10
OpenFlow交换机2的IP地址:端口P9
OpenFlow交换机3的IP地址:端口P8
因此,在DWDM设备1与DWDM设备2之间线路光纤断开的情况下,SDN控制器向OpenFlow交换机2发送的控制面报文,将经过以下设备间传递过程到达OpenFlow交换机2:SDN控制器—>带外交换机1—>DWDM设备1—>DWDM设备3—>带外交换机3—>DWDM设备3—>DWDM设备2—>带外交换机2—>OpenFlow交换机2。从而利用带外控制通道中的迂回路由,实现了SDN控制器向OpenFlow交换机2发送控制面报文的功能。
同样的道理,OpenFlow交换机2向SDN控制器发送的控制面报文,将经过以下设备间传递过程到达SDN控制器:OpenFlow交换机2—>带外交换机2—>DWDM设备2—>DWDM设备3—>带外交换机3—>DWDM设备3—>DWDM设备1—>带外交换机1—>SDN控制器。从而利用带外控制通道中的迂回路由,实现了OpenFlow交换机2向SDN控制器发送控制面报文的功能。
上面给出了在DWDM设备1与DWDM设备2之间的光纤断开的情况下,SDN控制器与OpenFlow交换机2通过带外控制通道的迂回路由进行通信的例子。在具体实施时,只要本系统内的波分网络具有迂回传输路径、且本系统内的带外交换机启用了动态路由协议,那么当本系统中任意两个波分设备之间出现光纤断开等故障时,SDN控制器与本系统内任一OpenFlow交换机之间,都依然可以通过带外控制通道的迂回路由进行通信,从而为SDN网络的控制面通信机制提供了电信级别的可靠性保障。
综上所述,本实施例提供的用于SDN网络的带外控制系统,充分利用了波分网络的OSC光监控通道所提供的用户信道,由所述用户信道以及带外交换机共同构建了独立的带外控制通道,提供了控制面报文的逐跳转发功能,从而实现SDN控制器与OpenFlow交换机之间的通信。采用上述方式构建SDN网络的带外控制通道,只需要添加具备基本的数据报文转发功能的带外交换机即可,成本很低,而且由于采用光纤作为传输介质,有效避免了采用无线网络存在的误码率高、传输时延大等缺陷。
在上述实施例中提供了一种用于SDN网络的带外控制系统,在此基础上,本申请还提供一种用于SDN网络的控制面通信方法,所述方法在上述实施例描述的用于SDN网络的带外控制系统中实施。
请参考图2,其为本申请提供的一种用于SDN网络的控制面通信方法的实施例的示意图,本实施例与之前提供的用于SDN网络的带外控制系统的实施例内容相同的部分不再赘述,下面重点描述不同之处。本申请提供的用于SDN网络的控制面通信方法包括:
步骤201、SDN控制器与OpenFlow交换机,利用由带外交换机和波分网络用户信道构建的带外控制通道进行通信。
SDN控制器与OpenFlow交换机之间的通信,包括SDN控制器向OpenFlow交换机发送控制面报文,以及OpenFlow交换机向SDN控制器发送控制面报文,下面从这两个方面分别进行说明。为了便于描述,在下文中将由带外交换机和波分网络用户信道构建的带外控制通道,简称带外控制通道。
(一)SDN控制器向OpenFlow交换机发送控制面报文。该通信过程包括步骤201-1-1至201-1-4,下面结合图3进行说明。
步骤201-1-1、SDN控制器将采用TCP/IP协议封装的控制面报文发送给与其连接的带外交换机。
所述控制面报文的种类包括:Openflow报文、netconf报文、SNMP报文、syslog报文、SSH报文、Openconfig报文、BGP报文、或者PCEP报文。所述控制面报文的目的IP地址通常设置为接收所述控制面报文的目标OpenFlow交换机的IP地址。
步骤201-1-2、接收到所述控制面报文的带外交换机,根据所述控制面报文的目的地址查询路由表,并根据查询结果执行不同操作:若所述目的地址对应于所述带外交换机的上联端口,则执行步骤201-1-3,否则执行步骤201-1-4。
其中,所述控制面报文的目的地址通常是指目的IP地址。
步骤201-1-3、将所述控制面报文通过所述上联端口发送给OpenFlow交换机,并结束本方法的执行。
执行到本步骤,说明所述控制面报文是发送给与当前带外交换机(接收所述控制报文的带外交换机)相连接的OpenFlow交换机的,因此所述带外交换机通过相应的上联端口转发所述控制面报文即可。
步骤201-1-4、将所述控制面报文从相应的下联端口发送给波分设备,以利用波分网络提供的用户信道将所述控制面报文转发给相邻的带外交换机,并转到步骤201-1-2执行。
执行到本步骤,说明所述控制面报文不是发送给与当前带外交换机相连接的OpenFlow交换机的,因此所述带外交换机可以从查询得到的下联端口将所述控制面报文转发给与其对应的波分设备,由所述波分设备利用波分网络提供的用户信道(即:OSC监控通道中的用户信道)将所述控制面报文转发给相邻的波分设备,并由相邻的波分设备转发给对应的带外交换机,然后转到步骤201-1-2执行。
通过执行上述步骤,实现了对所述控制面报文的逐跳转发,并最终将所述控制面报文发送给目标OpenFlow交换机。
(二)OpenFlow交换机向SDN控制器发送控制面报文。该通信过程包括步骤201-2-1至201-2-4,下面结合图4进行说明。
步骤201-2-1、OpenFlow交换机将采用TCP/IP协议封装的控制面报文发送给与其相连接的带外交换机。
所述控制面报文的种类包括:Openflow报文、netconf报文、SNMP报文、syslog报文、SSH报文、Openconfig报文、BGP报文、或者PCEP报文。所述控制面报文的目的IP地址通常设置为SDN控制器的IP地址。
步骤201-2-2、接收到所述控制面报文的带外交换机,根据所述控制面报文的目的地址查询路由表,并根据查询结果执行不同操作:若所述目的地址对应于所述带外交换机的上联端口,则执行步骤201-2-3,否则执行步骤201-2-4。
其中,所述控制面报文的目的地址通常是指目的IP地址。
步骤201-2-3、将所述控制面报文通过所述上联端口发送给SDN控制器,并结束本方法的执行。
执行到本步骤,说明当前带外交换机(接收所述控制报文的带外交换机)是与SDN控制器相连接的带外交换机,因此所述带外交换机通过相应的上联端口转发所述控制面报文即可。
步骤201-2-4、将所述控制面报文从相应的下联端口发送给波分设备,以利用波分网络提供的用户信道将所述控制面报文转发给相邻的带外交换机,并转到步骤201-2-2执行。
执行到本步骤,说明当前带外交换机不是与SDN控制器相连接的带外交换机,因此所述带外交换机可以从查询得到的下联端口将所述控制面报文转发给与其对应的波分设备,由所述波分设备利用波分网络提供的用户信道(即:OSC监控通道中的用户信道)将所述控制面报文转发给相邻的波分设备,并由相邻的波分设备转发给对应的带外交换机,然后转到步骤201-2-2执行。
通过执行上述步骤,实现了对所述控制面报文的逐跳转发,并最终将所述控制面报文发送给SDN控制器。
至此,通过步骤201-1-1至步骤201-1-4,以及步骤201-2-1至步骤201-2-4,利用带外控制通道,实现了SDN控制器与OpenFlow交换机之间的通信,从而实现了SDN网络的控制面功能。
优选地,实施本方法的带外控制系统中的波分网络为具有迂回传输路径的波分网络,例如:环形网、或者格形网。当波分网络中出现线路光纤断开等故障时,通过重新设置各带外交换机的路由表,依然可以利用带外控制通道的迂回路由保证控制面的正常通信,从而提高带外控制通道的可用性。
进一步地,在波分网络具有迂回传输路径的基础上,本实施例还提供基于动态路由协议维护路由表的优选实施方式。即:在上述步骤描述的通信过程中使用的路由表,是由各带外交换机通过运行动态路由协议维护的。所述动态路由协议包括:OSPF协议、或者IBGP协议等。
采用这种优选实施方式,由于提供了具有电信级别可靠性保障的带外控制通道,在DWDM网络发生光纤故障的情况下,无需人工干预即可快速实现带外控制通道的迂回路由,从而保证SDN网络的控制面通信依然可以正常进行。
综上所述,本实施例提供的用于SDN网络的控制面通信方法,利用由带外交换机和波分网络用户信道构建的带外控制通道,实现SDN控制器与OpenFlow交换机之间的通信。本实施例所采用的带外控制通道不仅成本低、没有无线网络存在的传输时延大、误码率高等问题,而且可以保证SDN网络控制面的正常通信功能,有助于推动SDN网络技术的发展和应用。
本申请虽然以较佳实施例公开如上,但其并不是用来限定本申请,任何本领域技术人员在不脱离本申请的精神和范围内,都可以做出可能的变动和修改,因此本申请的保护范围应当以本申请权利要求所界定的范围为准。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
1、计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
2、本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。