[go: up one dir, main page]

CN112838986B - 一种服务链生成方法、装置及电子设备和存储介质 - Google Patents

一种服务链生成方法、装置及电子设备和存储介质 Download PDF

Info

Publication number
CN112838986B
CN112838986B CN201911157266.6A CN201911157266A CN112838986B CN 112838986 B CN112838986 B CN 112838986B CN 201911157266 A CN201911157266 A CN 201911157266A CN 112838986 B CN112838986 B CN 112838986B
Authority
CN
China
Prior art keywords
port
flow table
service node
switch
state
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
Application number
CN201911157266.6A
Other languages
English (en)
Other versions
CN112838986A (zh
Inventor
陈晓帆
翟云箭
古亮
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sangfor Technologies Co Ltd
Original Assignee
Sangfor Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Sangfor Technologies Co Ltd filed Critical Sangfor Technologies Co Ltd
Priority to CN201911157266.6A priority Critical patent/CN112838986B/zh
Publication of CN112838986A publication Critical patent/CN112838986A/zh
Application granted granted Critical
Publication of CN112838986B publication Critical patent/CN112838986B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/302Route determination based on requested QoS
    • H04L45/306Route determination based on the nature of the carried application
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/42Centralised routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/64Routing or path finding of packets in data switching networks using an overlay routing layer

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请公开了一种服务链生成方法、装置及设备和介质,该方法包括:获取SDN控制器下发的逻辑流表;逻辑流表为根据交换机上报的逻辑端口和预设业务节点生成的服务链逻辑流表;利用预先部署的MLAG应用获取与预设业务节点连接的交换机物理端口的端口状态,以及当前交换机与逻辑流表中其他交换机之间的链路状态;根据端口状态确定逻辑流表中的逻辑端口对应的实际的物理端口;根据确定出的物理端口和获取得到的链路状态生成目标服务链。由上可知,本申请中物理端口状态和链路状态无需上层SDN控制器感知,服务链的编排和生成过程也无需上层控制器参与,可在底层自动实现,有效保障了服务链生成的时效性,提高了工作效率。

Description

一种服务链生成方法、装置及电子设备和存储介质
技术领域
本申请涉及计算机技术领域,更具体地说,涉及一种服务链生成方法、装置及一种电子设备和一种计算机可读存储介质。
背景技术
数据报文在传统网络中传递时,需要经过各种各样的业务节点,这样才能保证网络能够按照设计要求,提供给用户安全、快速、稳定的网络服务。服务链(Service Chain),即把网络流量按照业务逻辑所要求的既定的顺序,经过这些业务节点(主要指安全设备如防火墙、负载均衡、第三方安全设备等)的形式,可以理解为一种业务形式。
传统网络的服务链在变更、扩容时,都需要改动网络拓扑,重新进行网络设备的配置。服务链和网络拓扑紧密耦合、部署复杂。在此基础上,基于SDN的服务链应运而生。不管是在SDN Overlay数据中心环境中,借由SDN和NFV技术的优势,还是在传统网络环境中有支持openflow协议的交换机硬件部署场景中,SDN编排的SFC得到长足发展。
不管在传统网络中还是在SDN中,实现安全节点的高可用至关重要。在传统网络中,安全节点的高可用的实现方式是采用MLAG协议实现。交换机通过端口的状态变化实现自动切换,但是传统网络的实现服务链在变更、扩容时,都需要改动网络拓扑,重新进行网络设备的配置,不能实现灵活编排。在SDN中,不管是硬件服务链场景还是数据中心场景,安全设备的节点高可用都是通过控制器读取端口状态,更新服务链流表,或者是在SDN控制器上实现MLAG,OpenFlow交换机将安全设备发送的MLAG报文通过Packet_in消息发送给控制器,控制器解析MLAG报文内容,然后根据报文内容,编排流表和group表来实现高可用。
然而,申请人在研究过程中发现,上述两种方式都需要控制层上层感知,并重新编排服务链和下发流表,这样则导致当业务节点涉及的服务链特别多时,时效性会非常低。
发明内容
本申请的目的在于提供一种服务链生成方法、装置及一种电子设备和一种计算机可读存储介质,有效保障了服务链生成的时效性,提高了工作效率。
为实现上述目的,本申请提供了一种服务链生成方法,包括:
获取SDN控制器下发的逻辑流表;所述逻辑流表为根据交换机上报的逻辑端口和预设业务节点生成的服务链逻辑流表;
利用预先部署的MLAG应用获取与所述预设业务节点连接的交换机物理端口的端口状态,以及当前交换机与所述逻辑流表中其他交换机之间的链路状态;
根据所述端口状态确定所述逻辑流表中的逻辑端口对应的实际的物理端口;
根据确定出的所述物理端口和所述链路状态生成目标服务链。
可选的,所述利用预先部署的MLAG应用获取与所述预设业务节点连接的交换机物理端口的端口状态,包括:
确定所述逻辑流表中支持主备模式的第一业务节点;
确定与所述第一业务节点的主设备连接的主端口、与所述第一业务节点的备份设备连接的备端口;
利用预先部署的MLAG应用获取所述主端口和所述备端口的端口状态。
可选的,所述根据所述端口状态确定所述逻辑流表中的逻辑端口对应的实际的物理端口,包括:
若所述主端口的端口状态为正常,则确定所述逻辑流表中的逻辑端口对应的实际物理端口为所述主端口;
若所述主端口的端口状态为异常,且所述备端口的端口状态为正常,则确定所述逻辑流表中的逻辑端口对应的实际物理端口为所述备端口。
可选的,还包括:
若所述主端口和所述备端口的端口状态均为异常,则将所述第一业务节点切换至bypass状态。
可选的,所述利用预先部署的MLAG应用获取与所述预设业务节点连接的交换机物理端口的端口状态,包括:
确定所述逻辑流表中支持双活模式的第二业务节点;
确定与所述第二业务节点的所有设备连接的所有交换机物理端口;
利用预先部署的MLAG应用获取所述所有交换机物理端口的端口状态;
所述根据所述端口状态确定所述逻辑流表中的逻辑端口对应的实际的物理端口,包括:
将所述所有交换机物理端口中端口状态正常的物理端口确定为所述逻辑流表中的逻辑端口对应的目标物理端口。
可选的,所述根据确定出的所述物理端口和所述链路状态生成目标服务链,包括:
根据业务逻辑确定所述第二业务节点的前置业务节点和后置业务节点;
基于所有所述目标物理端口和所述链路状态生成依次连接所述前置业务节点、所述第二业务节点的任一设备和所述后置业务节点的多条不重复的目标服务链;所述目标服务链的数量与所述目标物理端口的数量相同。
可选的,所述根据确定出的所述物理端口和所述链路状态生成目标服务链之后,还包括:
若监测到所述目标物理端口中任一端口发生异常,则从所有所述目标物理端口中确定出除当前异常端口之外的其他端口;
将所述当前异常端口的网络流量通过负载分发的方式引到所述其他端口中。
为实现上述目的,本申请提供了一种服务链生成装置,包括:
流表获取模块,用于获取SDN控制器下发的逻辑流表;所述逻辑流表为根据交换机上报的逻辑端口和预设业务节点生成的服务链逻辑流表;
状态获取模块,用于利用预先部署的MLAG应用获取与所述预设业务节点连接的交换机物理端口的端口状态,以及当前交换机与所述逻辑流表中其他交换机之间的链路状态;
端口确定模块,用于根据所述端口状态确定所述逻辑流表中的逻辑端口对应的实际的物理端口;
服务链生成模块,用于根据确定出的所述物理端口和所述链路状态生成目标服务链。
为实现上述目的,本申请提供了一种电子设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现前述公开的任一种服务链生成方法的步骤。
为实现上述目的,本申请提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现前述公开的任一种服务链生成方法的步骤。
通过以上方案可知,本申请提供的一种服务链生成方法,包括:获取SDN控制器下发的逻辑流表;所述逻辑流表为根据交换机上报的逻辑端口和预设业务节点生成的服务链逻辑流表;利用预先部署的MLAG应用获取与所述预设业务节点连接的交换机物理端口的端口状态,以及当前交换机与所述逻辑流表中其他交换机之间的链路状态;根据所述端口状态确定所述逻辑流表中的逻辑端口对应的实际的物理端口;根据确定出的所述物理端口和所述链路状态生成目标服务链。由上可知,本申请中SDN控制器仅仅需要根据逻辑端口和预设业务节点生成服务链逻辑流表,进而交换机可利用预先部署的MLAG应用获取物理端口状态和交换机之间的链路状态,并基于上述物理端口状态确定物理端口,以根据确定出的物理端口和获取得到的链路状态生成实际的目标服务链,上述两种状态无需上层SDN控制器感知,服务链的编排和生成过程也无需上层控制器参与,可在底层自动实现,有效保障了服务链生成的时效性,提高了工作效率。
本申请还公开了一种服务链生成装置及一种电子设备和一种计算机可读存储介质,同样能实现上述技术效果。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本申请。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例公开的一种服务链生成方法的流程图;
图2为本申请实施例公开的服务链生成方法的一种具体实施方式的流程图;
图3为本申请实施例公开的服务链生成方法的一种具体实施方式的示意图;
图4为本申请实施例公开的服务链生成方法的另一种具体实施方式的流程图;
图5为本申请实施例公开的服务链生成方法在一种具体实施场景下的示意图;
图6为本申请实施例公开的一种服务链生成装置的结构图;
图7为本申请实施例公开的一种电子设备的结构图;
图8为本申请实施例公开的另一种电子设备的结构图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在现有技术中,传统网络的服务链在变更、扩容时,都需要改动网络拓扑,重新进行网络设备的配置。服务链和网络拓扑紧密耦合、部署复杂。在SDN中,需要通过控制器读取端口状态,更新服务链流表,或控制器解析MLAG报文内容,然后根据报文内容,编排流表和group表。上述两种方式都需要控制层上层感知,并重新编排服务链和下发流表。当业务节点涉及的服务链特别多时,时效性会非常慢。
因此,本申请实施例公开了一种服务链生成方法,保障了服务链生成的时效性,提高了工作效率。
参见图1所示,本申请实施例公开的一种服务链生成方法包括:
S101:获取SDN控制器下发的逻辑流表;所述逻辑流表为根据交换机上报的逻辑端口和预设业务节点生成的服务链逻辑流表;
本申请实施例中,SDN(software defined network,软件定义网络)控制器预先获取交换机上报的逻辑端口,并获取网络流量需要经过的业务节点,并根据逻辑端口和业务节点编排生成服务链逻辑流表。其中,交换机上报的逻辑端口为根据物理端口而对应生成的逻辑端口,上述物理端口可以包括服务链中交换机的物理端口,和/或服务链中功能组件的物理端口。服务链(SFC,service function chain),是指将物理/虚拟功能组件,主要包括L4到L7层的功能组件,如防火墙、VPN等按照一定顺序进行串联,以便特定流量按照预定的顺序经过上述功能组件的技术。在根据交换机上报的逻辑端口和预设业务节点编排生成服务链逻辑流表之后,SDN控制器将该逻辑流表下发至交换机。
S102:利用预先部署的MLAG应用获取与所述预设业务节点连接的交换机物理端口的端口状态,以及当前交换机与所述逻辑流表中其他交换机之间的链路状态;
在具体实施中,预先在交换机中部署了MLAG应用。MLAG是一种实现跨设备链路聚合的机制,能够实现多台设备之间的链路聚合,从而将链路可靠性提高到了设备级。其具体能够支持在MLAG成员端口故障后,可以断开peer-link与另一侧成员端口的隔离,使流量绕行,peer-link即两台交换机之间的连接线,用于MLAG跨链路通信时的链路通道;能够支持单台设备掉电之后,正常设备继续转发报文。
需要指出的是,本申请实施例中的MLAG应用中预先编写了心跳存活模块,从而可以获取部署了MLAG应用的交换机与预设业务节点连接的物理端口的状态,以及该交换机与逻辑流表中其他交换机之间连接链路的存活状态。
需要进行说明的是,本步骤中针对交换机物理端口状态的获取过程,以及交换机之间链路状态的获取过程可以同时并发进行;也可以先获取交换机物理端口的端口状态之后,再获取当前交换机与其他交换机之间的链路状态;还可以首先获取当前交换机与其他交换机之间的链路状态,再获取交换机物理端口的端口状态。也即,上述两个获取过程的先后执行顺序可根据实际场景进行确定和调整,本实施例对此不进行具体限定。
S103:根据所述端口状态确定所述逻辑流表中的逻辑端口对应的实际的物理端口;
在本步骤中,获取物理端口的端口状态之后,可以基于上述端口状态将逻辑流表中的逻辑端口映射为实际的物理端口。例如,若逻辑端口对应的实际物理端口有两个,且两个物理端口互为主备,则在获取到两个物理端口的状态之后,若主端口为存活状态,则可将主端口确定为实际物理端口;若主端口为异常状态,则可将备端口确定为实际物理端口。
具体地,端口存活状态表征端口为有效状态,可以正常工作;端口异常表征该设备为无法感应连接的设备,端口未能正常工作或者端口本身存在异常。
S104:根据确定出的所述物理端口和所述链路状态生成目标服务链。
可以理解的是,在将逻辑端口映射成实际的物理端口之后,可以基于上述确定得到的物理端口和交换机之间连接链路的链路状态生成最终的目标服务链,并将目标服务链下发至预设业务节点,从而控制特定的网络流量按照目标服务链设定的顺序进行传输。
通过以上方案可知,本申请提供的一种服务链生成方法,包括:获取SDN控制器下发的逻辑流表;所述逻辑流表为根据交换机上报的逻辑端口和预设业务节点生成的服务链逻辑流表;利用预先部署的MLAG应用获取与所述预设业务节点连接的交换机物理端口的端口状态,以及当前交换机与所述逻辑流表中其他交换机之间的链路状态;根据所述端口状态确定所述逻辑流表中的逻辑端口对应的实际的物理端口;根据确定出的所述物理端口和所述链路状态生成目标服务链。由上可知,本申请中SDN控制器仅仅需要根据逻辑端口和预设业务节点生成服务链逻辑流表,进而交换机可利用预先部署的MLAG应用获取物理端口状态和交换机之间的链路状态,并基于上述物理端口状态确定物理端口,以根据确定出的物理端口和获取到的链路状态生成实际的目标服务链,上述两种状态无需上层SDN控制器感知,服务链的编排和生成过程也无需上层控制器参与,可在底层自动实现,有效保障了服务链生成的时效性,提高了工作效率。
本申请实施例公开了服务链生成方法的一种具体实施方式,相对于上一实施例,本实施例对技术方案作了进一步的说明和优化。参见图2所示,具体的:
S201:获取SDN控制器下发的逻辑流表;所述逻辑流表为根据交换机上报的逻辑端口和预设业务节点生成的服务链逻辑流表;
S202:确定所述逻辑流表中支持主备模式的第一业务节点;
S203:确定与所述第一业务节点的主设备连接的主端口、与所述第一业务节点的备份设备连接的备端口;
S204:利用预先部署的MLAG应用获取所述主端口和所述备端口的端口状态;
S205:若所述主端口的端口状态为正常,则确定所述逻辑流表中的逻辑端口对应的实际物理端口为所述主端口;
S206:若所述主端口的端口状态为异常,且所述备端口的端口状态为正常,则确定所述逻辑流表中的逻辑端口对应的实际物理端口为所述备端口;
S207:利用预先部署的MLAG应用获取当前交换机与所述逻辑流表中其他交换机之间的链路状态;
S208:根据确定出的实际物理端口和所述链路状态生成目标服务链,以便控制网络流量按照所述目标服务链进行传输。
本申请实施例中,在交换机获取到逻辑流表之后,将确定其中支持主备模式的第一业务节点,第一业务节点存在主设备和备份设备。可以理解的是,由于该业务节点支持主备模式,通常存在两个或两个以上实体设备实现备份,因此可能存在多个物理端口。为了简化控制器的服务链编排过程,交换机将为支持主备模式的业务节点生成与其物理端口对应的一个逻辑端口,进而SDN控制器可基于逻辑端口生成服务链逻辑流表。
在确定第一业务节点之后,将进一步确定与其主设备连接的主端口以及与备份设备连接的备端口,并利用交换机中MLAG应用监测获取主端口和备端口的端口状态,并根据端口状态确定逻辑流表中的逻辑端口对应的实际物理端口。具体地,若主端口状态正常,则表示主设备生效可用,可将逻辑流表中第一业务节点的逻辑端口替换为上述主端口,以生成最终实际可用的目标服务链;若主端口状态异常,则表示主设备存在异常,无法正常工作,若同时备端口状态正常,则可以利用备设备接管主设备的业务,即可以将逻辑流表中第一业务节点的逻辑端口替换为上述备端口。在一种优选实施方案中,若主端口和备端口的端口状态均为异常,则可以将第一业务节点切换至bypass状态。bypass能够实现某个业务节点对应的安全设备或功能组件失效后,跳过该安全设备或功能组件,从而不影响特定网络流量经过服务链上其他业务节点。
下面以一种具体的示例对本申请实施例进行阐述。如图3所示,其中,AF设备具体指虚拟防火墙,能够提供网络防护和流量清洗功能,其支持主备模式。首先,配置OpenFlow交换机的两个物理端口组成MLAG端口的主备模式,并隐藏AF连接的两个物理端口,向SDN控制器上报一个逻辑端口,SDN控制器根据业务人员配置生成逻辑流表AC->AF(逻辑口)->AD并下发。OpenFlow交换机中部署的MLAG应用将根据控制器下发的逻辑流表,将其中的逻辑端口转变成实际的物理端口。
例如,针对AC->AF(逻辑口)段的逻辑流表:当MLAG主端口为存活状态时,将AF(逻辑口)替换为MLAG主(AF主),从而生成对应的实际物理流表AC->MLAG主(AF主);AF(逻辑口)->AD段的逻辑流表对应的物理流表为MLAG主(AF主)->peerlink->AD。
在具体实施中,利用MLAG应用实时监测MLAG主备端口的状态变化。当MLAG主端口挂掉之后,对逻辑流表AC->AF(逻辑口)->AD进行重新编排,重新编排后的物理流表为AC->peerlink->MLAG备(AF备)->AD。当MLAG主端口生效后,重新切换到AC->MLAG主(AF主)->peerlink->AD的流表。
当AF设备连接的两个MLAG的两个端口,即MLAG主端口和MLAG备端口都挂掉之后,自动Bypass AF设备,生成流表AC->AD。当peerlink发生故障后,只保证MLAG主端口的转发。当单台OpenFlow交换机down时,存活的交换机MLAG端口将正常工作,正常设备继续转发报文。
需要说明的是,上述配置OpenFlow交换机的两个物理端口组成MLAG端口的主备模式时,可以利用MLAG应用中的协议处理模块,通过接收交换机发送的LACP协议报文将物理端口配置成MLAG主备模式。
本申请实施例公开了服务链生成方法的另一种具体实施方式,相对于上一实施例,本实施例对技术方案作了进一步的说明和优化。参见图4所示,具体的:
S301:获取SDN控制器下发的逻辑流表;所述逻辑流表为根据交换机上报的逻辑端口和预设业务节点生成的服务链逻辑流表;
S302:确定所述逻辑流表中支持双活模式的第二业务节点;
S303:确定与所述第二业务节点的所有设备连接的所有交换机物理端口;
S304:利用预先部署的MLAG应用获取所述所有交换机物理端口的端口状态;
S305:将所述所有交换机物理端口中端口状态正常的物理端口确定为所述逻辑流表中的逻辑端口对应的目标物理端口;
S306:利用预先部署的MLAG应用获取当前交换机与所述逻辑流表中其他交换机之间的链路状态;
S307:根据业务逻辑确定所述第二业务节点的前置业务节点和后置业务节点;
S308:基于所有所述目标物理端口和所述链路状态生成依次连接所述前置业务节点、所述第二业务节点的任一设备和所述后置业务节点的多条不重复的目标服务链,以便控制网络流量按照所述目标服务链进行传输;所述目标服务链的数量与所述目标物理端口的数量相同。
本申请实施例中,交换机在获取到逻辑流表之后,将确定逻辑流表中支持双活模式的第二业务节点。第二业务节点可对应多个设备,且多个设备同时在线运行。交换机可生成与多个设备的多个物理端口对应的一个逻辑端口,并将该逻辑端口上报至SDN控制器,以使SDN控制器基于逻辑端口生成服务链逻辑流表。
进一步地,确定第二业务节点之后,可以确定与第二业务节点的所有设备连接的所有交换机物理端口,并利用交换机中预先部署的MLAG应用监测获取所有物理端口的端口状态,进而基于上述端口状态将逻辑流表中的逻辑端口替换成对应的物理端口,以生成目标服务链。具体地,可以将第二业务节点的所有设备连接的所有交换机物理端口中端口状态为正常可用的物理端口确定为目标物理端口,并将上述逻辑流表中第二业务节点对应的逻辑端口依次替换为所有状态为正常可用的目标物理端口,生成多条不重复的目标服务链,目标服务链的数量与目标物理端口的数量相同,目标物理端口的数量即表征第二业务节点的所有设备中正常存活的设备数量。
在具体实施中,可以首先确定第二业务节点的前置业务节点和后置业务节点,并基于所有目标物理端口和链路状态生成依次连接前置业务节点、第二业务节点的任一正常存活设备和后置业务节点的多条不重复的目标服务链。其中,上述前置业务节点和后置业务节点具体指:流量在按照业务流程逻辑进行传输时,将从前一业务节点传输至第二业务节点,该业务节点即为第二业务节点的前置业务节点;流量将从第二业务节点传输至下一业务节点,该业务节点即为第二业务节点的后置业务节点。
作为一种优选实施方式,本申请实施例可以将支持双活模式的业务节点的物理端口配置成负载均衡模式,以使流量均匀的经过业务节点的多个设备。若在生成服务链之后的运行过程中,监测到目标物理端口中任一端口发生异常,则从所有目标物理端口中确定出除当前异常端口之外的其他端口,并将当前异常端口的网络流量通过负载分发的方式引到其他端口中,以实现负载均衡。
下面以一种具体的示例对本申请实施例进行阐述。可参见图3所示,上层SDN控制器下发逻辑流表AC->AF(逻辑口)->AD,其中,AF设备支持双活模式。针对AC->AF(逻辑口)段的流表,MLAG应用需将匹配项流表通过Group表分发到两个AF设备上。其中,Group表为OpenFlow协议的一种功能表,用于实现广播、负载均衡等功能。匹配项流表可选用Group表的Select模式,用于实现负载均衡,包括用于连接AC设备的入端口,支持设置端口的权重,支持源IP地址、目的IP地址、源端口号、目的端口号和协议的任意组合,并通过哈希算法计算输出到不同的输出端口。针对AF(逻辑口)->AD段的流表,将生成两条流表:第一条为AF设备与MLAG主连接的端口经由peerlink到AD设备的流表;另外一条为AF设备与MLAG备连接的端口到AD设备的流表。
当MLAG主端口挂掉后,上述生成的流表将不会改变,OpenFlow交换机的Group表可以自动将负载到MLAG主端口的流量引到MLAG其他正常端口进行输出,实现负载均衡,且切换过程无需上层感知,提高了效率。
在上述任一实施例的基础上,本申请实施例还可利用OpenFlow堆叠技术对多个实体OpenFlow交换机进行堆叠,对上层SDN控制器来说,仅存在一台中间的逻辑OpenFlow交换机。
参见图5所示,在一种具体实施场景下,AF设备和AC设备均支持主备模式,两个交换机为对称模式,配置两个交换机对于上层控制器呈现一个逻辑OpenFlow交换机,SDN控制器将逻辑流表AC->AF下发至逻辑OpenFlow交换机中。
进一步地,交换机中预先部署的MLAG应用将根据SDN控制器下发的逻辑流表编排并下发流表。在AF主设备和AC主设备都存活的情况下,将该逻辑流表下发至AF主设备和AC主设备即可,MLAG备端口所连接的OpenFlow交换机不对AF备份设备和AC备份设备进行流表的下发。当AC主设备的MLAG主端口挂掉之后,将启用MLAG备端口,将流表切换为AC备端口->peerlink->AF主端口的流表。
在一种优选的实施方式中,MLAG应用之间设置了保活机制,即,在任一侧的OpenFlow交换机挂掉之后,若挂掉的OpenFlow交换机为MLAG主端口一侧的交换机,则MLAG备端口一侧的MLAG应用生成流表AF备->AC备;若挂掉的OpenFlow交换机为MLAG备端口一侧的交换机,则无需改变流表。
可以理解的是,本申请实施例还可以将OpenFlow交换机中特定的MLAG端口配置为负载均衡模式,实现网络流量的负载分发。
下面对本申请实施例提供的一种服务链生成装置进行介绍,下文描述的一种服务链生成装置与上文描述的一种服务链生成方法可以相互参照。
参见图6所示,本申请实施例提供的一种服务链生成装置包括:
流表获取模块401,用于获取SDN控制器下发的逻辑流表;所述逻辑流表为根据交换机上报的逻辑端口和预设业务节点生成的服务链逻辑流表;
状态获取模块402,用于利用预先部署的MLAG应用获取与所述预设业务节点连接的交换机物理端口的端口状态,以及当前交换机与所述逻辑流表中其他交换机之间的链路状态;
端口确定模块403,用于根据所述端口状态确定所述逻辑流表中的逻辑端口对应的实际的物理端口;
服务链生成模块404,用于根据确定出的所述物理端口和所述链路状态生成目标服务链。
关于上述模块401至404的具体实施过程可参考前述实施例公开的相应内容,在此不再进行赘述。
本申请还提供了一种电子设备,参见图7所示,本申请实施例提供的一种电子设备包括:
存储器100,用于存储计算机程序;
处理器200,用于执行所述计算机程序时可以实现上述实施例所提供的步骤。
具体的,存储器100包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机可读指令,该内存储器为非易失性存储介质中的操作系统和计算机可读指令的运行提供环境。处理器200在一些实施例中可以是一中央处理器(CentralProcessing Unit,CPU)、控制器、微控制器、微处理器或其他数据处理芯片,为电子设备提供计算和控制能力,执行所述存储器100中保存的计算机程序时,可以实现前述任一实施例公开的服务链生成方法的步骤。
在上述实施例的基础上,作为优选实施方式,参见图8所示,所述电子设备还包括:
输入接口300,与处理器200相连,用于获取外部导入的计算机程序、参数和指令,经处理器200控制保存至存储器100中。该输入接口300可以与输入装置相连,接收用户手动输入的参数或指令。该输入装置可以是显示屏上覆盖的触摸层,也可以是终端外壳上设置的按键、轨迹球或触控板,也可以是键盘、触控板或鼠标等。
显示单元400,与处理器200相连,用于显示处理器200处理的数据以及用于显示可视化的用户界面。该显示单元400可以为LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。
网络端口500,与处理器200相连,用于与外部各终端设备进行通信连接。该通信连接所采用的通信技术可以为有线通信技术或无线通信技术,如移动高清链接技术(MHL)、通用串行总线(USB)、高清多媒体接口(HDMI)、无线保真技术(WiFi)、蓝牙通信技术、低功耗蓝牙通信技术、基于IEEE802.11s的通信技术等。
图8仅示出了具有组件100-500的电子设备,本领域技术人员可以理解的是,图8示出的结构并不构成对电子设备的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
本申请还提供了一种计算机可读存储介质,该存储介质可以包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。该存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现前述任一实施例公开的服务链生成方法的步骤。
本申请中SDN控制器仅仅需要根据逻辑端口和预设业务节点生成服务链逻辑流表,进而交换机可利用预先部署的MLAG应用获取物理端口状态和交换机之间的链路状态,并基于上述物理端口状态确定物理端口,以根据确定出的物理端口和获取得到的链路状态生成实际的目标服务链,上述两种状态无需上层SDN控制器感知,服务链的编排和生成过程也无需上层控制器参与,可在底层自动实现,有效保障了服务链生成的时效性,提高了工作效率。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

Claims (10)

1.一种服务链生成方法,其特征在于,包括:
获取SDN控制器下发的逻辑流表;所述逻辑流表为根据交换机上报的逻辑端口和预设业务节点生成的服务链逻辑流表;
利用预先部署在所述交换机中的MLAG应用获取与所述预设业务节点连接的交换机物理端口的端口状态,以及当前交换机与所述逻辑流表中其他交换机之间的链路状态;
根据所述端口状态确定所述逻辑流表中的逻辑端口对应的实际的物理端口;
根据确定出的所述物理端口和所述链路状态生成目标服务链。
2.根据权利要求1所述的服务链生成方法,其特征在于,所述利用预先部署的MLAG应用获取与所述预设业务节点连接的交换机物理端口的端口状态,包括:
确定所述逻辑流表中支持主备模式的第一业务节点;
确定与所述第一业务节点的主设备连接的主端口、与所述第一业务节点的备份设备连接的备端口;
利用预先部署的MLAG应用获取所述主端口和所述备端口的端口状态。
3.根据权利要求2所述的服务链生成方法,其特征在于,所述根据所述端口状态确定所述逻辑流表中的逻辑端口对应的实际的物理端口,包括:
若所述主端口的端口状态为正常,则确定所述逻辑流表中的逻辑端口对应的实际物理端口为所述主端口;
若所述主端口的端口状态为异常,且所述备端口的端口状态为正常,则确定所述逻辑流表中的逻辑端口对应的实际物理端口为所述备端口。
4.根据权利要求3所述的服务链生成方法,其特征在于,还包括:
若所述主端口和所述备端口的端口状态均为异常,则将所述第一业务节点切换至bypass状态。
5.根据权利要求1所述的服务链生成方法,其特征在于,所述利用预先部署的MLAG应用获取与所述预设业务节点连接的交换机物理端口的端口状态,包括:
确定所述逻辑流表中支持双活模式的第二业务节点;
确定与所述第二业务节点的所有设备连接的所有交换机物理端口;
利用预先部署的MLAG应用获取所述所有交换机物理端口的端口状态;
所述根据所述端口状态确定所述逻辑流表中的逻辑端口对应的实际的物理端口,包括:
将所述所有交换机物理端口中端口状态正常的物理端口确定为所述逻辑流表中的逻辑端口对应的目标物理端口。
6.根据权利要求5所述的服务链生成方法,其特征在于,所述根据确定出的所述物理端口和所述链路状态生成目标服务链,包括:
根据业务逻辑确定所述第二业务节点的前置业务节点和后置业务节点;
基于所有所述目标物理端口和所述链路状态生成依次连接所述前置业务节点、所述第二业务节点的任一设备和所述后置业务节点的多条不重复的目标服务链;所述目标服务链的数量与所述目标物理端口的数量相同。
7.根据权利要求5或6所述的服务链生成方法,其特征在于,所述根据确定出的所述物理端口和所述链路状态生成目标服务链之后,还包括:
若监测到所述目标物理端口中任一端口发生异常,则从所有所述目标物理端口中确定出除当前异常端口之外的其他端口;
将所述当前异常端口的网络流量通过负载分发的方式引到所述其他端口中。
8.一种服务链生成装置,其特征在于,包括:
流表获取模块,用于获取SDN控制器下发的逻辑流表;所述逻辑流表为根据交换机上报的逻辑端口和预设业务节点生成的服务链逻辑流表;
状态获取模块,用于利用预先部署在所述交换机中的MLAG应用获取与所述预设业务节点连接的交换机物理端口的端口状态,以及当前交换机与所述逻辑流表中其他交换机之间的链路状态;
端口确定模块,用于根据所述端口状态确定所述逻辑流表中的逻辑端口对应的实际的物理端口;
服务链生成模块,用于根据确定出的所述物理端口和所述链路状态生成目标服务链。
9.一种电子设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至7任一项所述服务链生成方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述服务链生成方法的步骤。
CN201911157266.6A 2019-11-22 2019-11-22 一种服务链生成方法、装置及电子设备和存储介质 Active CN112838986B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911157266.6A CN112838986B (zh) 2019-11-22 2019-11-22 一种服务链生成方法、装置及电子设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911157266.6A CN112838986B (zh) 2019-11-22 2019-11-22 一种服务链生成方法、装置及电子设备和存储介质

Publications (2)

Publication Number Publication Date
CN112838986A CN112838986A (zh) 2021-05-25
CN112838986B true CN112838986B (zh) 2022-09-30

Family

ID=75922856

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911157266.6A Active CN112838986B (zh) 2019-11-22 2019-11-22 一种服务链生成方法、装置及电子设备和存储介质

Country Status (1)

Country Link
CN (1) CN112838986B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN120378290A (zh) * 2025-06-25 2025-07-25 浪潮云信息技术股份公司 一种服务链容灾方法、装置、设备及存储介质

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105763606B (zh) * 2016-02-04 2019-04-09 新华三技术有限公司 一种服务链代理聚合的方法及系统
WO2018106920A1 (en) * 2016-12-08 2018-06-14 Plexxi Inc. A framework for universally specified affinity topologies with partial path invalidation and generalized network flows
CN109547439B (zh) * 2018-11-26 2021-04-27 奇安信科技集团股份有限公司 一种服务节点接入网络的处理方法及装置

Also Published As

Publication number Publication date
CN112838986A (zh) 2021-05-25

Similar Documents

Publication Publication Date Title
CN105379044B (zh) 菊花链式系统中的功率协商
US11573917B2 (en) Low latency computing architecture
US10346271B2 (en) Manage power supply units and modularized automatic transfer switches
CN106165343B (zh) 具有低复杂度和低功耗的功率分配系统
US20150016277A1 (en) Interconnect error notification system
CN103443740A (zh) 基于以太网供电的瘦客户机设备上的功率优化
JP6408723B2 (ja) 受電デバイスにおけるバルクコンデンサの強制放電
CN107005469B (zh) 一种路由的方法、相关设备及系统
JP5916263B2 (ja) 電力源装置チップ、電力源装置、及びPoEシステム及び方法
JP5936694B2 (ja) ホストコンピューティング装置制御コンポーネント状態表示
US9110861B2 (en) Managing host computing devices with a host control component
CN104769896A (zh) 用于虚拟机架系统中的直通模式的系统和方法
CN104065553B (zh) 虚拟网络迁移方法和相关设备
CN107465611A (zh) Sdn控制器和交换机控制链路的保护倒换方法及装置
JP6564327B2 (ja) マルチコントローラネットワークにおける相互作用制御の設定
CN107950013A (zh) 计算机网络中的后备通信方案
CN112838986B (zh) 一种服务链生成方法、装置及电子设备和存储介质
CN108650337B (zh) 一种服务器探测方法、系统及存储介质
US9477282B2 (en) Power source equipment and power supply method thereof
US9300529B2 (en) Communication system and network relay device
JP6228822B2 (ja) ネットワーク管理制御装置、ネットワーク管理制御システム、及びネットワーク管理制御方法
US10057137B1 (en) Cable discovery with visual display of a network topology
CN104993968B (zh) 一种软件定义网络中网络设备的控制方法及系统
JP7714844B2 (ja) 無瞬断冗長切替装置、無瞬断冗長切替方法、無瞬断冗長切替システム、及びプログラム
CN115001892A (zh) 信息处理方法、装置及电子设备和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant