CN116074187A - 主备链路切换方法及装置、电子设备、存储介质 - Google Patents
主备链路切换方法及装置、电子设备、存储介质 Download PDFInfo
- Publication number
- CN116074187A CN116074187A CN202111275904.1A CN202111275904A CN116074187A CN 116074187 A CN116074187 A CN 116074187A CN 202111275904 A CN202111275904 A CN 202111275904A CN 116074187 A CN116074187 A CN 116074187A
- Authority
- CN
- China
- Prior art keywords
- server
- software
- user plane
- standby
- port
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0654—Management of faults, events, alarms or notifications using network fault recovery
- H04L41/0663—Performing the actions predefined by failover planning, e.g. switching to standby network elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/10—Active monitoring, e.g. heartbeat, ping or trace-route
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Cardiology (AREA)
- General Health & Medical Sciences (AREA)
- Hardware Redundancy (AREA)
Abstract
本公开提供了一种主备链路切换方法及装置、电子设备、存储介质,涉及计算机技术领域。该主备链路切换方法包括:监听用户面端口和控制面端口的状态,并将控制面数据同步至备用服务器;若监测到用户面端口和控制面端口存在异常状态,通过备用服务器将备用服务器中的目标用户面端口和目标控制面端口调整为正常工作状态;将用户面数据发送至备用服务器,以通过备用服务器按照控制面数据处理与用户面数据对应的业务。本公开实施例的技术方案可以通过监听主服务器的用户面端口和控制面端口,触发主备链路动态切换,提高了主备链路的切换效率;同时,也避免了通过双向检测协议控制制备服务器切换,节省了网络资源。
Description
背景技术
随着互联网技术的不断发展,5G网络也慢慢走近人们的现实生活。然而,在5G时代,低延迟且高效率的处理业务数据流仍是企业对网络的迫切需求;随之,UPF(User PortFunction,用户端口功能)主备切换技术也油然而生。
在相关的UPF主备切换技术中,通过BFD(Bidirectional Forwarding Detection,用于检测两个转发点之间故障的网络协议)机制来检测UPF主机与TOR(Top of Rack,一种数据中心的布线方式)交换机之间的链路故障,从而触发服务器切换。但该UPF主备切换技术,不但浪费交换机内部的BFD资源,而且存在单点故障风险。
因此,提出一种主备链路切换方法,具有重要的现实意义。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本公开实施例的目的在于提供一种主备链路切换方法、主备链路切换装置、电子设备以及计算机可读存储介质,进而至少在一定程度上克服主备链路切换效率较低,以及通过BFD检测机制触发主备链路切换,而导致交换机内部的BFD资源浪费的问题。
本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
根据本公开实施例的第一方面,提供了一种主备链路切换方法,包括:监听用户面端口和控制面端口的状态,并将控制面数据同步至备用服务器;若监测到所述用户面端口和所述控制面端口存在异常状态,则生成服务器切换指令,并将所述服务器切换指令发送至所述备用服务器;通过所述备用服务器将所述备用服务器中的目标用户面端口和目标控制面端口调整为正常工作状态;将用户面数据发送至所述备用服务器,以通过所述备用服务器按照所述控制面数据处理与所述用户面数据对应的业务。
在本公开的一些示例实施例中,基于前述方案,所述监听用户面端口和控制面端口的状态,并将控制面数据同步至备用服务器,包括:通过网卡驱动用户面软件和控制面软件分别监听用户面端口状态和控制面端口状态,并基于高可用控制软件将所述控制面数据同步至所述备用服务器。
在本公开的一些示例实施例中,基于前述方案,所述方法还包括:若检测到所述用户面软件和所述控制面软件,以及所述高可用控制软件中的任一软件在运行过程中异常终止或退出,则所述备用服务器自动切换为主服务器。
在本公开的一些示例实施例中,基于前述方案,所述生成服务器切换指令,并将所述服务器切换指令发送至所述备用服务器,包括:若监测到所述高可用控制软件的心跳正常,则生成服务器切换指令;通过所述高可用控制软件,将所述服务器切换指令发送至所述备用服务器。
在本公开的一些示例实施例中,基于前述方案,所述方法还包括:若所述备用服务器中的目标高可用控制软件监测到所述高可用控制软件发送心跳包超时,则通过网管软件模块通知所述备用服务器,将自身切换为主服务器。
在本公开的一些示例实施例中,基于前述方案,所述通过所述备用服务器,将所述备用服务器中的目标用户面端口和目标控制面端口调整为正常工作状态,包括:通过所述目标高可用控制软件控制所述备用服务器中的目标用户面软件和目标控制面模块,并基于所述目标用户面软件将所述目标用户面端口调整为正常工作状态,以及基于所述目标控制面模块将所述目标控制面端口调整为正常工作状态。
在本公开的一些示例实施例中,基于前述方案,所述将用户面数据发送至所述备用服务器,包括:若监测到与所述备用服务器切换成功,则监测与所述用户面软件和所述控制面软件相连的交换机的状态;若监测到所述交换机的状态异常,则通过向与所述交换机关联的网络接入点发送路由更新请求,并获取由所述网络接入点重新规划的路由更新信息;按照所述路由更新信息,通过与所述目标用户面模块和所述目标控制面模块相连的目标交换机,将所述户面数据发送至所述备用服务器。
在本公开的一些示例实施例中,基于前述方案,所述方法还包括:通过堆叠线建立所述交换机和所述目标交换机之间的通信连接;若监测到所述交换机的状态正常,则通过所述堆叠线将所述用户面数据发送至所述备用服务器。
根据本公开实施例的第二方面,提供了一种主备链路切换装置,包括:监听模块、切换指令生成模块、端口状态调整模块、数据发送模块。其中,监听模块,用于监听用户面端口和控制面端口的状态,并将控制面数据同步至备用服务器;切换指令生成模块,用于若监测到所述用户面端口和所述控制面端口存在异常状态,则生成服务器切换指令,并将所述服务器切换指令发送至所述备用服务器;端口状态调整模块,用于通过所述备用服务器,将所述备用服务器中的目标用户面端口和目标控制面端口调整为正常工作状态;数据发送模块,用于将用户面数据发送至备用服务器,以通过所述备用服务器按照所述控制面数据处理与所述用户面数据对应的业务。
在本公开的一些示例实施例中,基于前述方案,所述监听模块包括监听单元,所述监听单元用于通过网卡驱动用户面软件和控制面软件分别监听用户面端口状态和控制面端口状态,并基于高可用控制软件将所述控制面数据同步至所述备用服务器。
在本公开的一些示例实施例中,基于前述方案,所述监听模块还包括检测单元,所述检测单元用于若检测到所述用户面软件和所述控制面软件,以及所述高可用控制软件中的任一软件在运行过程中异常终止或退出,则所述备用服务器自动切换为主服务器。
在本公开的一些示例实施例中,基于前述方案,所述切换指令生成模块包括第一切换指令发送单元,所述第一切换指令发送单元用于若监测到所述高可用控制软件的心跳正常,则生成服务器切换指令;通过所述高可用控制软件,将所述服务器切换指令发送至所述备用服务器。
在本公开的一些示例实施例中,基于前述方案,所述切换指令生成模块还包括第二切换指令发送单元,所述第二切换指令发送单元用于若所述备用服务器中的目标高可用控制软件监测到所述高可用控制软件发送心跳包超时,则通过网管软件模块通知所述备用服务器,将自身切换为主服务器。
在本公开的一些示例实施例中,基于前述方案,所述端口状态调整模块包括端口状态调整单元,所述端口状态调整单元用于通过所述目标高可用控制软件控制所述备用服务器中的目标用户面软件和目标控制面模块,并基于所述目标用户面软件将所述目标用户面端口调整为正常工作状态,以及基于所述目标控制面模块将所述目标控制面端口调整为正常工作状态。
在本公开的一些示例实施例中,基于前述方案,数据发送模块包括路由更新信息获取单元,所述路由更新信息获取单元用于若监测到与所述备用服务器切换成功,则监测与所述用户面软件和所述控制面软件相连的交换机的状态;若监测到所述交换机的状态异常,则通过向与所述交换机关联的网络接入点发送路由更新请求,并获取由所述网络接入点重新规划的路由更新信息;按照所述路由更新信息,通过与所述目标用户面模块和所述目标控制面模块相连的目标交换机,将所述户面数据发送至所述备用服务器。
在本公开的一些示例实施例中,基于前述方案,所述数据发送模块还包括通信连接单元,所述通信连接单元用于通过堆叠线建立所述交换机和所述目标交换机之间的通信连接;若监测到所述交换机的状态正常,则通过所述堆叠线将所述用户面数据发送至所述备用服务器。
根据本公开实施例的第三方面,提供了一种电子设备,包括:处理器;以及存储器,所述存储器上存储有计算机可读指令,所述计算机可读指令被所述处理器执行时实现上述任意一项所述的主备链路切换方法。
根据本公开实施例的第四方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现根据上述任意一项所述的主备链路切换方法。
本公开实施例提供的技术方案可以包括以下有益效果:
本公开的示例实施例中的主备链路切换方法,监听用户面端口和控制面端口的状态,并将控制面数据同步至备用服务器;若监测到所述用户面端口和所述控制面端口存在异常状态,则生成服务器切换指令,并将所述服务器切换指令发送至所述备用服务器;通过所述备用服务器将所述备用服务器中的目标用户面端口和目标控制面端口调整为正常工作状态;将用户面数据发送至所述备用服务器,以通过所述备用服务器按照所述控制面数据处理与所述用户面数据对应的业务。一方面,可以通过监听用户面端口和控制面端口的状态,并在监测到用户面端口和控制面端口状态异常时,触发生成主备切换指令,并将备用服务器切换为主服务器,避免了通过BFD机制控制主备链路切换,节省了交换机中BFD资源,进而提高了BFD资源的利用效率;另一方面,通过备用服务器将备用服务器中的目标用户端口和目标控制面端口调整为正常工作状态,并不需要通过增加新链路以调整备用服务器中的目标用户端口和目标控制面端口的状态,提高了主备链路切换的效率。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1示意性示出了一种相关的5G UPF主备链路快速切换系统的示意图;
图2示意性示出了根据本公开的一些实施例的主备链路切换方法流程的示意图;
图3示意性示出了根据本公开的一些实施例的服务器切换指令传输流程的示意图;
图4示意性示出了根据本公开的一些实施例的用户面数据输流程的示意图;
图5示意性示出了根据本公开的一些实施例的另一用户面数据输流程的示意图;
图6示意性示出了根据本公开的一些实施例的基于监听机制的主备链路切换系统示意图;
图7示意性示出了根据本公开的一些实施例的主备链路切换装置的示意图;
图8示意性示出了根据本公开的一些实施例的电子设备的计算机系统的结构示意图;
图9示意性示出了根据本公开的一些实施例的计算机可读存储介质的示意图。
在附图中,相同或对应的标号表示相同或对应的部分。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本公开的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本公开的各方面。
此外,附图仅为示意性图解,并非一定是按比例绘制。附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
图1示意性示出了一种相关的5G UPF主备链路快速切换系统的示意图。该5G UPF主备链路快速切换系统100包括:主控板110、多个5G业务板120、第一外部三层交换机130,第二外部三层交换机140。
其中,主控板110包括主控主板111和主控备板112,主控主板111包括主板CPU和主板交换机,主板CPU和主板交换机LSW通过网口连接;备控主板112包括备板CPU和备板交换机LSW;主板CPU和备板CPU通过主备协议进行连接;多个5G业务板120与主控主板111的主板交换机LSW连接;主板CPU通过第一主板上行网口与第一外部三层交换机130进行BFD协议通讯连接;多个5G业务板120的数据流经过主控主板的主板交换机LSW汇聚后,从对外的第一主板上行网口发送到外部的第一外部三层交换机130。主板CPU通过第一主板上行网口与第一外部三层交换机连接130,主板CPU通过第二网口与备板CPU连接,主板CPU通过第三网口与主板交换机LSW连接,主板CPU通过第三网口主动发消息给外部网络,主板交换机LSW和第一外部三层交换机130进行业务数据流传递,备板交换机LSW和第二外部三层交换机140进行业务数据流传递。
该5G UPF主备链路快速切换方法,主要通过BFD机制进行链路探测任务,判断主板的BFD端口状态,如果BFD端口为down,则通过心跳链路获取备板的BFD端口状态,如果备板BFD端口为up,则给主板CPU通过心跳链路给备板CPU下发打开备板LSW交换机芯片到第二外部三层交换机L3 LSW的端口通道,同时打开主板交换芯片主备链路端口通道,让业务数据从备板横穿至主板,最后关闭主板交换芯片到第一外部三层交换机L3 LSW的业务数据通道,完成主备链路切换。然而,此方案需要消耗主板与外部交换机L3 LSW之间的BFD资源,以及备板与外部交换机L3 LSW之间的BFD资源,导致对外可用的BFD资源减少。此外,此方案中只存在由主板CPU和和备板CPU之间的主备协议构成的单心跳链路,存在单点故障风险,如果主板LSW故障,将导致业务数据中断。
一般交换机只有200个左右的BFD,对于边缘UPF来说,每开一条N6专线就会消耗一个BFD,BFD资源限制着业务量的开通,因此节省交换机上的BFD资源显得尤为重要;同时,一旦出现主机和备用机之间的心跳断开,可能导致出现双主的情况,导致服务器冗余,进而浪费服务器资源,也提高因单心跳链路故障而使主机和备用机进入脑裂的状态。为了解决相关的主备链路切换方法中存在的技术问题,本申请提出一种主备链路切换方法。
在本示例实施例中,首先提供了一种主备链路切换方法,该主备链路切换方法可以应用于服务器。图2示意性示出了根据本公开的一些实施例的主备链路切换方法流程的示意图。参考图2所示,该基于方法可以包括以下步骤:
在步骤S210中,监听用户面端口和控制面端口的状态,并将控制面数据同步至备用服务器;
在步骤S220中,若监测到所述用户面端口和所述控制面端口存在异常状态,则生成服务器切换指令,并将所述服务器切换指令发送至所述备用服务器;
在步骤S230中,通过所述备用服务器将所述备用服务器中的目标用户面端口和目标控制面端口调整为正常工作状态;
在步骤S240中,将用户面数据发送至所述备用服务器,以通过所述备用服务器按照所述控制面数据处理与所述用户面数据对应的业务。
根据本示例实施例中的主备链路切换方法,一方面,可以通过监听用户面端口和控制面端口的状态,并在监测到用户面端口和控制面端口状态异常时,触发生成主备切换指令,并将备用服务器切换为主服务器,避免了通过BFD机制控制主备链路切换,节省了交换机中BFD资源,进而提高了BFD资源的利用效率;另一方面,通过备用服务器将备用服务器中的目标用户端口和目标控制面端口调整为正常工作状态,并不需要通过增加新链路以调整备用服务器中的目标用户端口和目标控制面端口的状态,提高了主备链路切换的效率。
下面,将对本示例实施例中的主备链路切换方法进行进一步的说明。
在步骤S210中,监听用户面端口和控制面端口的状态,并将控制面数据同步至备用服务器。
在本公开的一个示例实施例中,用户面端口可以指用于建立用户面软件和交换机之间通信连接的网络端口,例如,用户面端口可以是用于建立用户面软件和交换机之间通信连接的三个网络端口,当然,用户面端口还可以是用于建立用户面软件和交换机之间通信连接的其他数目个网络端口,本例实施例对此不作特殊限定。其中,用户面软件可以指根据控制面软件下发的转发规则,对业务数据进行高速转发的软件。控制面软件可以指负责管理用户会话以及向用户面模块下发转发规则的软件。
控制面数据可以指用于管理由客户端发送的用户数据的模板数据,例如,控制面数据可以是用于控制用户数据转发规则的模板数据,控制面数据也可以是用于控制用户数据处理流程的模板数据,当然,控制面数据还可以是用于管理由客户端发送的其他用户数据的模板数据,本例实施例对此不作特殊限定。
控制面端口可以指用于建立控制面软件和交换机之间通信连接的网路端口,例如,控制面端口可以是用于建立控制面软件和交换机之间通信连接的一个网络端口,当然,控制面端口还可以是用于建立控制面软件和交换机之间通信连接的其他数目个网络端口,本例实施例对此不作特殊限定。
可以通过网卡驱动主服务器中的用户面软件和控制面软件监听与各自关联的网络端口的状态,例如,通过网卡驱动主服务器中的用户面软件监听用户面端口的状态,以及通过网卡驱动主服务器中的控制面软件监听控制面端口的状态;同时,在主服务器和备用服务器中的软件模块均正常运行的状态下,主服务器的控制面软件可以通过主服务器中的高可用控制软件,将控制面数据如在线用户会话信息同步至备用服务器。其中,高可用控制软件可以指用于管理用户面软件和控制面软件,以及网管软件模块的软件模块,例如,高可用控制软件可以还是用于通知用户面软件和控制软件模块,分别打开用户面端口和控制面端口,以将用户面端口和控制面端口调整为工作状态的软件模块,高可用控制软件也可以是监听用户面软件和控制面软件和网管软件模块的进程工作状态的软件模块,当然,高可用控制软件还可以是用于管理用户面软件和控制面软件,以及网管软件模块的其他信息的软件模块,本例实施例对此不作特殊限定。
在步骤S220中,若监测到所述用户面端口和所述控制面端口存在异常状态,则生成服务器切换指令,并将所述服务器切换指令发送至所述备用服务器。
在本公开的一个示例实施例中,服务器切换指令可以指用于控制主备链路切换的指令,例如,服务器切换指令可以是将备用服务器切换为主服务器的指令,服务器切换指令也可以是在将备用服务器切换为主服务器时,控制备用服务器的各软件模块状态的指令,当然,服务器切换指令还可以是用于控制主备链路切换的其他指令,本例实施例对此不作特殊限定。
可以通过网卡驱动主服务器中的各软件模块分别监听与各自关联的网络端口的状态,并实时获取与故障网络端口对应的端口事件,以通过端口事件触发主服务器生成服务器切换指令,并通过高可用控制软件将服务器切换指令发送至备用服务器,以使备用服务器将自身切换为主服务器,代替主服务器按照控制面处理用户面数据。同时,在主服务器的高可用控制软件状态异常的情况下,也可以通过备用服务器的目标高可用控制模块监听主服务器的高可用软件模块的心跳,若监测到主服务器的高可用软件模块的心跳异常,则可以则通过主服务器的网管软件模块通知备用服务器,将自身切换为主服务器。
在主服务器状态正常的情况下,可以通过将主服务器的高可用控制软件的心跳链路作为第一心跳链路,将生成的服务器切换指令通过该第一心跳链路传输至备用服务器,也可以将主服务器的网管软件模块的心跳链路作为第二心跳链路,通过第二心跳链路通知备用服务器将自身切换为主服务器,降低了双主的风险,避免了服务器冗余,同时,也降低了因单心跳链路故障而进入脑裂的机率,提高了主备链路的切换效率。
在步骤S230中,通过所述备用服务器将所述备用服务器中的目标用户面端口和目标控制面端口调整为正常工作状态。
在本公开的一个示例实施例中,备用服务器同样包括用户面软件和控制面软件,以及高可用软件模块和网管软件模块,且备用服务器的用户面软件、控制面软件、高可用软件模块、网管软件模块各自的作用与主服务器中的用户面软件、控制面软件、高可用软件模块、网管软件模块的作用相同。为了方便区分主服务器和备用服务器中的用户面软件、控制面软件、高可用控制软件、网管软件模块,可以将备用服务器中的用户面软件、控制面软件、高可用控制软件、网管软件模块,分别命名为目标用户面软件、目标控制面软件、目标高可用软件模块、目标网管软件模块,在下文中不作重复限定。
同理,为了方便区分主服务器和备用服务器中的用户面端口和控制面端口,可以将备用服务器中的用户面端口和控制面端口分别命名为目标用户面端口和目标控制面端口,其中,目标用户面端口可以指用于建立备用服务器中的目标用户软件模块与和备用服务器相连的目标交换机的通信连接的网络端口,目标控制面端口可以指用于建立备用服务器中的目标控制面软件与和备用服务器相连的目标交换机的通信连接的网络端口。
在将服务器切换指令发送至备用服务器后,可以通过将其内部的目标用户面软件和目标控制面软件,分别将与各自关联的目标用户面端口和目标控制面端口调整为工作状态,并不需要增加新链路调整备用服务器中的目标用户端口和目标控制面端口的状态,提高了调整目标用户端口和目标控制面端口的状态的效率,也提高了目标用户面软件和目标控制面软件的利用效率,还节省了网络链路资源,进而降低了调整目标用户面端口和目标控制面端口的成本。
在步骤S240中,将用户面数据发送至所述备用服务器,以通过所述备用服务器按照所述控制面数据处理与所述用户面数据对应的业务。
在本公开的一个示例实施例中,用户面数据可以指由客户端发送的用户数据,例如,用户面数据可以是由客户端发送的在线用户会话信息,用户面数据也可以是由客户端发送的业务数据,当然,用户面数据还可以是由客户端发送的其他用户数据,本例实施例对此不作特殊限定。
可以在检测到备用服务器切换完成时,通过监测与主服务器中的用户面软件和控制面软件相连的交换机的状态,若监测到该交换机的状态异常,则可以通过向与该交换机关联的网络接入点发送路由更新请求,并获取由网络接入点重新规划的路由更新信息,按照路由更新信息,通过与备用服务器中的目标用户面模块和目标控制面模块相连的目标交换机,将用户面数据发送至备用服务器。然而,在监测到与主服务相连的交换机的状态正常时,可以通过该交换机和备用服务器对应的目标交换机之间的堆叠线将用户面数据发送至备用服务器,提供了用户面数据传输的双层保障,实现了用户面数据的实时传输,降低了与用户面数据对应的业务的处理延迟,进而提高了业务的处理效率。
在本公开的一个示例实施例中,可以通过网卡驱动用户面软件和控制面软件分别监听用户面端口状态和控制面端口状态,并基于高可用控制软件将控制面数据同步至所述备用服务器。
其中,可以通过网卡驱动用户面软件和控制面软件分别监听用户面端口和控制面端口的状态,以各端口的状态变化对应的事件,触发主服务器生成服务器切换指令,同时可以通过主服务器中的高可用控制软件对应的心跳链路将主服务器的控制面数据同步至备用服务器。
可以预先绑定用户面端口和用户面端口状态发生变化对应的事件,例如,绑定用户面端口和用户面端口状态异常对应的主备链路切换事件;也可以预先绑定控制面端口和控制面端口状态发生变化对应的事件,例如,绑定控制面端口和控制面端口状态异常对应的主备链路切换时间;进而可以通过网卡驱动用户面软件和控制面软件分别监听用户面端口和控制面端口的状态,以各端口的状态变化对应的事件,触发主服务器生成服务器切换指令,同时可以通过主服务器中的高可用控制软件对应的心跳链路将主服务器的控制面数据同步至备用服务器,并不需要通过主服务器与和主服务器连接的交换机之间的BFD资源,以及备用服务器与和备用服务器连接的目标交换机之间的BFD资源触发主备链路切换,节省了交换机内部的BFD资源。
在本公开的一个示例实施例中,若检测到用户面软件和控制面软件,以及高可用控制软件中的任一软件模块在运行过程中异常终止或退出,则所述备用服务器自动切换为主服务器。
其中,可以通过检测用户面软件和控制面软件,以及高可用控制软件是否在运行过程中产生各自的core(核心)文件,若产生了core文件可以确定用户面软件、控制面软件、高可用控制软件,在运行过程中出现异常退出和中止,并可以基于各自的core文件定位到用户面软件程序、控制面软件程序、高可用控制软件程序,各自在异常退出的时候对应的堆栈调用等信息。通常情况下,core文件会包含了程序运行时的内存,寄存器状态,堆栈指针,内存管理信息还有各种函数调用堆栈信息等。
除了监听用户面端口和控制面端口是否存在异常状态,并通过用户面端口状态异常和控制面端口状态异常触发主备链路切换,也可以通过检测用户面软件和控制面软件,以及高可用控制软件是否在运行过程中异常终止或退出,触发主备链路切换,提高了控制主备链路切换的灵活性,也提高了主备链路切换的实时性。
图3示意性示出了根据本公开的一些实施例的服务器切换指令传输流程的示意图。参考图3所示,该服务器切换指令传输方法可以包括以下步骤:
在步骤S310中,若监测到所述高可用控制软件的心跳正常,则生成服务器切换指令;
在步骤S320中,通过所述高可用控制软件,将所述服务器切换指令发送至备用服务器。
其中,一般高可用控制软件会向备用服务器的目标高可用控制软件周期性的发送心跳包,可以通过备用服务器的目标高可用控制软件是否超时未接收到高可用控制软件发送的心跳包。若目标高可用控制软件超时未接收到高可用控制软件发送的心跳包,则高可用控制软件的心跳异常;若目标高可用控制软件可以正常接收到高可用控制软件发送的心跳包,则高可用控制软件的心跳正常。
在监测到高可用控制软件的心跳正常,且用户面端口和控制面端口异常时,与高可用控制软件对应的主服务器可以生成服务器切换指令,并通过高可用控制软件与备用服务器中的目标高可用控制软件之间的心跳链路,将服务器切换指令传输至备用服务器。同时,在监测到高可用控制软件的心跳正常,且用户面软件和控制面软件之间的任一软件模块在运行过程中异常退出或中止,与高可用控制软件对应的主服务器也可以生成服务器切换指令,并可以通过高可用控制软件与备用服务器中的目标高可用控制软件之间的心跳链路,将服务器切换指令传输至备用服务器。
可以通过高可用控制软件和备用服务器中的目标高可用控制软件之间的心跳链路,发送服务器切换指令,减少了对网管软件模块之间的心跳链路的依赖,避免了因网管软件之间的心跳链路切断,导致主服务器和备用服务器同时运行,造成服务器冗余,以及因网管软件之间的单心跳链路故障而使主服务器和备用服务器面临脑裂的风险,进而降低了业务处理的效率。
在本公开的一个示例实施例中,若备用服务器中的目标高可用控制软件监测到高可用控制软件发送心跳包超时,则可以通过网管软件模块通知备用服务器,将自身切换为主服务器。
其中,网管软件模块可以指用于维护管理整个UPF系统的软件模块,例如,网管软件模块可以是用于管理主服务器和主服务器相连的交换机之间的网络连接状态的软件模块,网管软件模块也可以是用于管理主服务器和备用服务器之间数据传输的软件模块,当然,网管软件模块还可以是拥有维护管理整个UPF系统的其他软件模块,本例实施例对此不作特殊限定。
可以通过备用服务器中的目标高可用控制软件监测主服务器中的高可用控制软件的心跳,若备用服务器中的目标高可用控制软件监测到高可用控制软件发送心跳包超时,则可以确定高可用控制软件的状态异常,进而可以通过目标高可用控制软件通知备用服务器,将自身切换为主服务器,避免了因主服务器中的高可用控制软件心跳异常,无法传输服务器切换指令,导致主备链路切换不及时,降低了业务处理效率。
在本公开的一个示例实施例中,可以通过目标高可用控制软件控制备用服务器中的目标用户面软件和目标控制面模块,并基于目标用户面软件将目标用户面端口调整为正常工作状态,以及基于述目标控制面模块将目标控制面端口调整为正常工作状态。
其中,在目标高可用控制软件接收到服务器切换指令,或者监测到主服务器的高可用控制软件发送心跳包超时时,均可以通过目标高可用控制软件通知目标用户面软件和目标控制面软件将与各自关联的网络端口调整为正常工作状态,即通过目标用户面软件将目标用户面端口调整为正常工作状态,通过目标控制面软件将目标控制面端口调整为正常工作状态,实现主备链路的切换。
由于在用户面端口和控制面端口,以及用户面软件和控制面软件,以及高可用控制软件工作状态正常时,备用服务器的目标用户面软件会关闭目标用户面端口,目标控制面软件会关闭目标控制面端口,避免出现双主现象,造成服务器的冗余。但主服务器和备用服务器的各网络端口可以分别使用相同的IP,如用户面端口和目标用户面端口使用相同的IP,控制面端口和目标控制面端口使用相同的IP。在目标高可用软件接收到服务器切换指令,或监测到主服务器的高可用控制软件发送心跳包超时时,可以向与备用服务器连接的目标交换机发送免费的ARP(Address Resolution Protocol,地址解析协议)包,激活备用服务器,从而将用户面数据发送至备用服务器,以通过备用服务器代替主服务器按照控制面数据处理与用户面数据对应的业务,实现了低延迟和高效率的处理业务。
图4示意性示出了根据本公开的一些实施例的用户面数据输流程的示意图。参考图4所示,该用户面数据传输方法可以包括以下步骤:
在步骤S410中,若监测到与所述备用服务器切换成功,则监测与所述用户面软件和所述控制面软件相连的交换机的状态;
在步骤S420中,若监测到所述交换机的状态异常,则通过向与所述交换机关联的网络接入点发送路由更新请求,并获取由所述网络接入点重新规划的路由更新信息;
在步骤S430中,按照所述路由更新信息,通过与所述目标用户面模块和所述目标控制面模块相连的目标交换机,将所述户面数据发送至所述备用服务器。
其中,网络接入点可以指供主服务器和备用服务器统一接入网络的交换机,例如,网络接入点可以是供主服务器和备用服务器接入网络的EOR交换机,网络接入点也可以是供主服务器和备用服务器统一接入网络的外部交换机LSW,当然,网络接入点还可以是供主服务器和备用服务器统一接入网络的其他交换机,本例实施例对此不作特殊限定。
举例而言,在出现以下情况时,可以确定与用户面软件和控制面软件连接的交换机状态异常。例如,高可用软件与目标高可用软件之间的心跳链路,以及网管软件之间的心跳链路均不通时,可以确定与用户面软件和控制面软件连接的交换机出现故障;主服务器的交换机重启、断电或死机,也可以确定与用户面软件和控制面软件连接的交换机出现故障;监测到高可用控制软件的core文件,也可以确定与用户面软件和控制面软件连接的交换机出现故障。
可以通过监测与主服务器的用户面软件和控制面软件的交换机状态,确定用户面数据的传输路径。具体的,在监测到与服务器中的用户面软件和控制面软件相连的交换机的状态异常时,可以通过触发与该交换机连接的终端设备,以及与该终端设备连接上的外部交换机之间的BFD,该外部交换机会重新组织路由,使用户面数据可以通过该终端设备发送至与备用服务器的目标交换机相连的目标终端设备,通过目标终端设备将用户面数据传输至目标交换机,再由目标交换机传输至备用服务器,避免了因主服务器的交换机故障,无法实现用户面数据的实时传输。
图5示意性示出了根据本公开的一些实施例的另一用户面数据输流程的示意图。参考图5所示,该用户面数据传输方法可以包括以下步骤:
在步骤S510中,通过堆叠线建立所述交换机和所述目标交换机之间的通信连接;
在步骤S520中,若监测到所述交换机的状态正常,则通过所述堆叠线将所述用户面数据发送至所述备用服务器。
其中,可以预先通过堆叠技术,将与主服务器中的用户面软件和控制面软件连接的交换机,以及与备用服务器中的目标用户面软件和控制面软件连接的目标交换机配置为一个逻辑交换机。当主服务器的交换机故障时,备用服务器的目标交换机自动切换为主交换机。
举例而言,在出现以下情况时,可以确定与用户面软件和控制面软件连接的交换机状态正常。例如,用户面软件监测到用户面端口断开、控制面软件监测到控制面端口断开、网管软件监测到网管口断开中的任意一种情况,都可以确定与用户面软件和控制面软件连接的交换机状态正常,只是主服务器出现了故障。同时,若网管软件之间的心跳链路异常,且高可用控制软件与目标高可用控制软件之间的心跳链路正常,也可以确定与用户面软件和控制面软件连接的交换机状态正常,只是主服务器出现了故障。此外,主服务器重启、断电或死机,或在监测到用户面软件、控制面软件、网管软件中任意一个软件的core文件时,也可以确定与用户面软件和控制面软件连接的交换机状态正常,只是主服务器出现了故障。
在监测到与用户面软件和控制面软件连接的交换机状态正常,只是主服务器出现了故障时,可以通过堆叠线建立主服务器的交换机,与备用服务器的目标交换机之间的通信连接,并在监测到主服务器的交换机状态正常时,可以通过主服务器的交换机与备用服务器的目标交换机之间的堆叠线将用户面数据发送至备用服务器。
图6示意性示出了根据本公开的一些实施例的基于监听机制的主备链路切换系统示意图。参考图6所示,该基于监听机制的主备链路切换系统600,主要包括主UPF网元610、备UPF网元620、第一终端设备630、第二终端设备640。
其中,主UPF网元610包括主服务器611和交换机612,主服务器611包括用户面软件613、控制面软件614、网管软件615、高可用控制软件616。用户面软件613和交换机612通过第一用户面端口617、第二用户面端口618、第三用户面端口619相连接;控制面软件614和交换机612通过控制面端口N1连接;网管软件615和交换机612通过网管口N2连接。
备UPF网元620包括备用服务器621和目标交换机622,备用服务器621包括目标用户面软件623、目标控制面软件624、目标网管软件625、目标高可用控制软件626。目标用户面软件623和目标交换机622通过第一目标用户面端口627、第二目标用户面端口628、第三目标用户面端口629相连接;目标控制面软件624和目标交换机622通过控制面端口N3连接;目标网管软件625和目标交换机622通过网管口N4连接。
交换机612和目标交换机622可以通过堆叠线连接。可以将高可用控制软件616与目标高可用控制软件626之间的心跳链路作为第一心跳链路,将网管软件615和目标网管软件625之间的心跳链路作为第二心跳链路。
在监听到第一用户面端口617、第二用户面端口618、第三用户面端口619、控制面端口N1中任意一个端口存在异常状态,或检测用户面软件和控制面软件任意软件在运行过程中异常终止或退出,均可以触发主备链路切换,并可以将主服务器生成的服务器切换指令通过高可用控制软件616,将服务器切换指令发送至备用服务器621,以通过备用服务器中621的目标高可用控制软件626通知目标用户面软件623将第一目标用户面端口627、第二目标用户面端口628、第三目标用户面端口629调整为正常工作状态,并通知目标控制面软件624将控制面端口N3调整为正常工作状态。
当高可用控制软件616出现故障时,可以通过网管软件615通知备用服务器621将自身切换为主服务器,并通过目标高可用控制软件626通知目标用户面软件623将第一目标用户面端口627、第二目标用户面端口628、第三目标用户面端口629调整为正常工作状态,以及通知目标控制面软件624将控制面端口N3调整为正常工作状态。从而,降低了基于监听机制的主备链路切换系统600因单心跳链路故障而进入脑裂的风险,也避免了因单心跳链路故障,使得主服务器611和备用服务器621均工作,造成服务器冗余,还节省了交换机内部的BFD资源,可以将剩余的BFD资源用于开发云专线,提高了BFD资源的利用效率。
在检测到主备链路切换成功后,可以检测交换机612的状态,若交换机612状态正常,可以通过交换机612与目标交换机622之间的堆叠线将用户面数据传输至备用服务器621;若交换机612出现故障,可以通过触发交换机612和第一终端设备630之间的BFD,通过第一终端设备630之上的外部交换机设备重新组织路由得到路由更新信息,并按照路由更新信息将用户面数据传输至第二终端设备640,再通过第二终端设备640将用户面数据传输至目标交换机622,最后通过目标交换机622将用户面数据传输至备用服务器621。从而,避免了因交换机故障,导致用户面数据无法实时传输,降低了与用户面数据对应的业务的处理效率。
需要说明的是,尽管在附图中以特定顺序描述了本公开中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。
此外,上述公开中方法的各个步骤是从主服务器切换至备用服务器,同时该方法也适用于从备用服务器切换至主服务器,由于从备用服务器切换至主服务器的过程,与从主服务器切换至备用服务器的过程相同,不在详述。只是在从备用服务器切换至主服务器需要监听备用服务器中的目标用户面端口和目标控制面端口,以及检测目标用户面软件和目标控制面软件,以及目标高可用控制软件的运行状态;若监听到目标用户面端口和目标控制面端口状态异常,或目标用户面软件和目标控制面软件在运行过程中异常停止,则备用服务器可以生成服务器切换指令,并通过目标高可用控制软件将该服务器切换指令发送至主服务器,以通过主服务器中的高可用控制软件通知用户面软件和控制面软件分别将用户面端口和控制面端口调整为正常工作状态,并将控制面数据也同步至主服务器。在目标高可用控制软件发生故障时,可以通过备用服务器中的目标网管软件通知主服务器恢复工作状态,并通过主服务器中的高可用控制软件通知用户面软件和控制面软件分别将用户面端口和控制面端口调整为正常工作状态。其他步骤,与本公开的相似,不再重复描述。
此外,在本示例实施例中,还提供了一种主备链路切换装置。参照图7所示,该主备链路切换装置700包括:监听模块710、切换指令生成模块720、端口状态调整模块730、数据发送模块740。其中,监听模块710,用于监听用户面端口和控制面端口的状态,并将控制面数据同步至备用服务器;切换指令生成模块720,用于若监测到所述用户面端口和所述控制面端口存在异常状态,则生成服务器切换指令,并将所述服务器切换指令发送至所述备用服务器;端口状态调整模块730,用于通过所述备用服务器,将所述备用服务器中的目标用户面端口和目标控制面端口调整为正常工作状态;数据发送模块740,用于将用户面数据发送至备用服务器,以通过所述备用服务器按照所述控制面数据处理与所述用户面数据对应的业务。
在本公开的一些示例实施例中,基于前述方案,所述监听模块710包括监听单元,所述监听单元用于通过网卡驱动用户面软件和控制面软件分别监听用户面端口状态和控制面端口状态,并基于高可用控制软件将所述控制面数据同步至所述备用服务器。
在本公开的一些示例实施例中,基于前述方案,所述监听模块710还包括检测单元,所述检测单元用于若检测到所述用户面软件和所述控制面软件,以及所述高可用控制软件中的任一软件在运行过程中异常终止或退出,则所述备用服务器自动切换为主服务器。
在本公开的一些示例实施例中,基于前述方案,所述切换指令生成模块720包括第一切换指令发送单元,所述第一切换指令发送单元用于若监测到所述高可用控制软件的心跳正常,则生成服务器切换指令;通过所述高可用控制软件,将所述服务器切换指令发送至所述备用服务器。
在本公开的一些示例实施例中,基于前述方案,所述切换指令生成模块720还包括第二切换指令发送单元,所述第二切换指令发送单元用于若所述备用服务器中的目标高可用控制软件监测到所述高可用控制软件发送心跳包超时,则通过网管软件模块通知所述备用服务器,将自身切换为主服务器。
在本公开的一些示例实施例中,基于前述方案,所述端口状态调整模块730包括端口状态调整单元,所述端口状态调整单元用于通过所述目标高可用控制软件控制所述备用服务器中的目标用户面软件和目标控制面模块,并基于所述目标用户面软件将所述目标用户面端口调整为正常工作状态,以及基于所述目标控制面模块将所述目标控制面端口调整为正常工作状态。
在本公开的一些示例实施例中,基于前述方案,数据发送模块740包括路由更新信息获取单元,所述路由更新信息获取单元用于若监测到与所述备用服务器切换成功,则监测与所述用户面软件和所述控制面软件相连的交换机的状态;若监测到所述交换机的状态异常,则通过向与所述交换机关联的网络接入点发送路由更新请求,并获取由所述网络接入点重新规划的路由更新信息;按照所述路由更新信息,通过与所述目标用户面模块和所述目标控制面模块相连的目标交换机,将所述户面数据发送至所述备用服务器。
在本公开的一些示例实施例中,基于前述方案,所述数据发送模块740还包括通信连接单元,所述通信连接单元用于通过堆叠线建立所述交换机和所述目标交换机之间的通信连接;若监测到所述交换机的状态正常,则通过所述堆叠线将所述用户面数据发送至所述备用服务器。
上述中主备链路切换装置各模块的具体细节已经在对应的主备链路切换方法中进行了详细的描述,因此此处不再赘述。
应当注意,尽管在上文详细描述中提及了主备链路切换装置的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
此外,在本公开的示例性实施例中,还提供了一种能够实现上述主备链路切换方法的电子设备。
所属技术领域的技术人员能够理解,本公开的各个方面可以实现为系统、方法或程序产品。因此,本公开的各个方面可以具体实现为以下形式,即:完全的硬件实施例、完全的软件实施例(包括固件、微代码等),或硬件和软件方面结合的实施例,这里可以统称为“电路”、“模块”或“系统”。
下面参照图8来描述根据本公开的这种实施例的电子设备800。图8所示的电子设备800仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图8所示,电子设备800以通用计算设备的形式表现。电子设备800的组件可以包括但不限于:上述至少一个处理单元810、上述至少一个存储单元820、连接不同系统组件(包括存储单元820和处理单元810)的总线830、显示单元840。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元810执行,使得所述处理单元80执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施例的步骤。例如,所述处理单元810可以执行如图2中所示的步骤S110,监听用户面端口和控制面端口的状态,并将控制面数据同步至备用服务器;步骤S120,若监测到所述用户面端口和所述控制面端口存在异常状态,则生成服务器切换指令,并将所述服务器切换指令发送至所述备用服务器;步骤S130,通过所述备用服务器将所述备用服务器中的目标用户面端口和目标控制面端口调整为正常工作状态;步骤S140,将用户面数据发送至所述备用服务器,以通过所述备用服务器按照所述控制面数据处理与所述用户面数据对应的业务。
存储单元820可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)821和/或高速缓存存储单元822,还可以进一步包括只读存储单元(ROM)823。
存储单元820还可以包括具有一组(至少一个)程序模块825的程序/实用工具824,这样的程序模块825包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线830可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备800也可以与一个或多个外部设备870(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备800交互的设备通信,和/或与使得该电子设备800能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口850进行。并且,电子设备800还可以通过网络适配器860与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器860通过总线830与电子设备800的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备800使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
通过以上的实施例的描述,本领域的技术人员易于理解,这里描述的示例实施例可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本公开实施例的方法。
在本公开的示例性实施例中,还提供了一种计算机可读存储介质,其上存储有能够实现本说明书上述方法的程序产品。在一些可能的实施例中,本公开的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施例的步骤。
参考图9所示,描述了根据本公开的实施例的用于实现上述主备链路切换方法的程序产品900,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本公开的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
此外,上述附图仅是根据本公开示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
通过以上的实施例的描述,本领域的技术人员易于理解,这里描述的示例实施例可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、触控终端、或者网络设备等)执行根据本公开实施例的方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施例。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (11)
1.一种主备链路切换方法,其特征在于,包括:
监听用户面端口和控制面端口的状态,并将控制面数据同步至备用服务器;
若监测到所述用户面端口和所述控制面端口存在异常状态,则生成服务器切换指令,并将所述服务器切换指令发送至所述备用服务器;
通过所述备用服务器将所述备用服务器中的目标用户面端口和目标控制面端口调整为正常工作状态;
将用户面数据发送至所述备用服务器,以通过所述备用服务器按照所述控制面数据处理与所述用户面数据对应的业务。
2.根据权利要求1所述的主备链路切换方法,其特征在于,所述监听用户面端口和控制面端口的状态,并将控制面数据同步至备用服务器,包括:
通过网卡驱动用户面软件和控制面软件分别监听用户面端口状态和控制面端口状态,并基于高可用控制软件将所述控制面数据同步至所述备用服务器。
3.根据权利要求1所述的主备链路切换方法,其特征在于,所述方法还包括:
若检测到所述用户面软件和所述控制面软件,以及所述高可用控制软件中的任一软件在运行过程中异常终止或退出,则所述备用服务器自动切换为主服务器。
4.根据权利要求1或3所述的主备链路切换方法,其特征在于,所述生成服务器切换指令,并将所述服务器切换指令发送至所述备用服务器,包括:
若监测到所述高可用控制软件的心跳正常,则生成服务器切换指令;
通过所述高可用控制软件,将所述服务器切换指令发送至所述备用服务器。
5.根据权利要求4所述的主备链路切换方法,其特征在于,所述方法还包括:
若所述备用服务器中的目标高可用控制软件监测到所述高可用控制软件发送心跳包超时,则通过网管软件模块通知所述备用服务器,将自身切换为所述主服务器。
6.根据权利要求1或5所述的主备链路切换方法,其特征在于,所述通过所述备用服务器,将所述备用服务器中的目标用户面端口和目标控制面端口调整为正常工作状态,包括:
通过所述目标高可用控制软件控制所述备用服务器中的目标用户面软件和目标控制面模块,并基于所述目标用户面软件将所述目标用户面端口调整为正常工作状态,以及基于所述目标控制面模块将所述目标控制面端口调整为正常工作状态。
7.根据权利要求1或2所述的主备链路切换方法,其特征在于,所述将用户面数据发送至所述备用服务器,包括:
若监测到与所述备用服务器切换成功,则监测与所述用户面软件和所述控制面软件相连的交换机的状态;
若监测到所述交换机的状态异常,则通过向与所述交换机关联的网络接入点发送路由更新请求,并获取由所述网络接入点重新规划的路由更新信息;
按照所述路由更新信息,通过与所述目标用户面模块和所述目标控制面模块相连的目标交换机,将所述户面数据发送至所述备用服务器。
8.根据权利要求7所述的主备链路切换方法,其特征在于,所述方法还包括:
通过堆叠线建立所述交换机和所述目标交换机之间的通信连接;
若监测到所述交换机的状态正常,则通过所述堆叠线将所述用户面数据发送至所述备用服务器。
9.根据权利要求1所述的主备链路切换装置,其特征在于,包括:
监听模块,用于监听用户面端口和控制面端口的状态,并将控制面数据同步至备用服务器;
切换指令生成模块,用于若监测到所述用户面端口和所述控制面端口存在异常状态,则生成服务器切换指令,并将所述服务器切换指令发送至所述备用服务器;
端口状态调整模块,用于通过所述备用服务器,将所述备用服务器中的目标用户面端口和目标控制面端口调整为正常工作状态;
数据发送模块,用于将用户面数据发送至备用服务器,以通过所述备用服务器按照所述控制面数据处理与所述用户面数据对应的业务。
10.一种电子设备,包括:
处理器;以及
存储器,所述存储器上存储有计算机可读指令,所述计算机可读指令被所述处理器执行时实现如权利要求1至8中任一项所述的主备链路切换方法。
11.一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至8中任一项所述的主备链路切换方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111275904.1A CN116074187A (zh) | 2021-10-29 | 2021-10-29 | 主备链路切换方法及装置、电子设备、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111275904.1A CN116074187A (zh) | 2021-10-29 | 2021-10-29 | 主备链路切换方法及装置、电子设备、存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116074187A true CN116074187A (zh) | 2023-05-05 |
Family
ID=86170256
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111275904.1A Pending CN116074187A (zh) | 2021-10-29 | 2021-10-29 | 主备链路切换方法及装置、电子设备、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116074187A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117834066A (zh) * | 2023-12-22 | 2024-04-05 | 广州市迪士普音响科技有限公司 | 主备功放的自动切换方法、系统、电子设备和介质 |
-
2021
- 2021-10-29 CN CN202111275904.1A patent/CN116074187A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117834066A (zh) * | 2023-12-22 | 2024-04-05 | 广州市迪士普音响科技有限公司 | 主备功放的自动切换方法、系统、电子设备和介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2020253596A1 (zh) | 一种Redis集群的高可用方法及装置 | |
EP2281240B1 (en) | Maintaining data integrity in data servers across data centers | |
CN108075971B (zh) | 一种主备切换方法及装置 | |
CA2957749A1 (en) | Systems and methods for fault tolerant communications | |
CN110166355B (zh) | 一种报文转发方法及装置 | |
KR20070026327A (ko) | 액티브 라우팅 컴포넌트 장애 처리 방법 및 장치 | |
CN107666415B (zh) | Fc-ae-1553协议桥的优化方法和装置 | |
JP2004021556A (ja) | 記憶制御装置およびその制御方法 | |
CN112787960B (zh) | 一种堆叠分裂的处理方法、装置、设备及存储介质 | |
US11032129B2 (en) | Information processing apparatus, network system, and computer-readable recording medium | |
CN113315665B (zh) | 一种双网卡终端设备的报文发送方法、装置、设备及介质 | |
CN101594383A (zh) | 一种双控制器存储系统的服务和控制器状态监控方法 | |
CN114465948B (zh) | 主备容灾方法、装置、设备及介质 | |
CN107071189B (zh) | 一种通讯设备物理接口的连接方法 | |
CN116074187A (zh) | 主备链路切换方法及装置、电子设备、存储介质 | |
CN102932118B (zh) | 一种双机主备裁决的方法及系统 | |
CN112217718A (zh) | 一种业务处理方法、装置、设备及存储介质 | |
CN112596371A (zh) | 控制卡切换方法、装置、电子设备及存储介质 | |
CN117076196A (zh) | 一种数据库容灾的管控方法和装置 | |
CN112822039A (zh) | 双机热备系统主备模式切换的方法 | |
KR20150104435A (ko) | 라우팅 처리기의 동작 모드 천이 방법 | |
JP4806382B2 (ja) | 冗長化システム | |
JP2002136000A (ja) | 無停電電源システム | |
CN116089176A (zh) | 一种用于auv的热备双冗余计算机控制系统 | |
CN114727324A (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 |