CN113285836B - 一种基于微服务实时迁移的软件系统韧性增强系统及方法 - Google Patents

一种基于微服务实时迁移的软件系统韧性增强系统及方法 Download PDF

Info

Publication number
CN113285836B
CN113285836B CN202110581549.4A CN202110581549A CN113285836B CN 113285836 B CN113285836 B CN 113285836B CN 202110581549 A CN202110581549 A CN 202110581549A CN 113285836 B CN113285836 B CN 113285836B
Authority
CN
China
Prior art keywords
service
micro
controller
program
abnormal 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.)
Active
Application number
CN202110581549.4A
Other languages
English (en)
Other versions
CN113285836A (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.)
Army Engineering University of PLA
Original Assignee
Army Engineering University of PLA
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 Army Engineering University of PLA filed Critical Army Engineering University of PLA
Priority to CN202110581549.4A priority Critical patent/CN113285836B/zh
Publication of CN113285836A publication Critical patent/CN113285836A/zh
Application granted granted Critical
Publication of CN113285836B publication Critical patent/CN113285836B/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
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0823Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability
    • H04L41/0836Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability to enhance reliability, e.g. reduce downtime
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services

Abstract

本发明公开了网络数据通信领域的一种基于微服务实时迁移的软件系统韧性增强系统及方法,系统包括:OpenFlow交换机,用于接收用户的服务访问请求并转发给微服务控制器;微服务控制器,根据所述服务访问请求决策选择微服务实例程序,并将决策信息发送至SDN控制器;SDN控制器,根据决策信息将服务访问请求转发至安装有对应微服务实例程序的服务承载主机;服务承载主机,用于为微服务实例程序提供运行环境,以及,对微服务实例程序和自身运行状态进行周期性检测。本发明能够在部分网络链路、服务承载主机、微服务实例程序失效的情况下,通过微服务的实时迁移,确保软件系统能够持续对外提供服务,从而有效增强软件系统的韧性抗毁能力。

Description

一种基于微服务实时迁移的软件系统韧性增强系统及方法
技术领域
本发明涉及一种基于微服务实时迁移的软件系统韧性增强系统及方法,属于网络数据通信技术领域。
背景技术
随着信息化技术的不断推进,各类软件系统和网络在各个领域建设中发挥着日益重要的作用。一旦发生物理安全事故或无法抵御敌方恶意攻击等情况而导致业务中断,将会带来不可估量的损失。因此,如何保证软件系统在遭受攻击、故障或意外事故的情况下仍能保持关键业务的连续不中断和可用性、亦即软件系统的韧性,已经成为该领域研究的热点。然而,在软件系统的可用性保障工作中,当前研究大多围绕软件系统的安全防护开展工作,如通过防病毒软件进行病毒程序的查杀,通过防火墙、入侵检测系统防范网络攻击,以及通过冗余备份等机制应对设备故障对系统带来的影响等。这些机制尽管能够在一定程度上提升了信息系统的可生存性,但无法从本质上保证软件系统的安全运行和持续按需提供服务。主要存在如下一些关键问题有待进一步解决:
首先,任何一种安全防护架构均无法阻止所有的攻击和入侵,当攻击强度超过防御所能承受的极限,或者当攻击破坏速度大于服务恢复的速度时,所采取的可生存性措施在高强度攻击面前是徒劳的,不能实现提高关键业务可生存性的目的。
其次,当前研究大多关注静止业务的可用性保障,而静止业务的持续性依赖于物理承载节点的存活。亦即只有在保证物理承载节点可生存的前提下,保障关键业务的可生存性才有意义。在现有技术条件下,当保护措施无法阻止所有入侵时,或者在突发故障的情况下,无法保证物理承载节点始终存活,因而使得系统的韧性抗毁能力变得十分脆弱。
最后,现有机制难以解决网络状况对关键业务韧性抗毁能力的影响。当前,多数研究在提升系统韧性抗毁能力方面并没有对网络状况采取措施。由于物理承载节点在网络中的位置是不变的,一旦出现网络拥塞、网络故障等情况,它只能被动接受网络状态的影响,关键业务和用户间的通道就会被截断,从而导致当前关键业务的韧性抗毁策略失效。
由此可见,为更好地保障软件系统和关键业务的韧性抗毁能力,我们不仅需要保证系统能够抵抗简单攻击并发现入侵行为,更关键的是要求在大规模信息对抗环境下,即使网络链路和服务承载主机在遭受攻击时,仍能够继续对外提供数据和信息服务,并保证数据的机密性、完整性等安全属性,进而保障业务的连续性和服务的安全性。目前通过被动“防”的策略,对于防守失败时,如何保证系统持续提供主要功能或服务等问题考虑不足,无法很好地提升软件系统的韧性抗毁能力,为此,我们提出了一种基于微服务实时迁移的软件系统韧性增强系统及方法。
发明内容
本发明的目的在于针对在网络链路和服务承载主机在遭受攻击时,现有的软件系统无法继续对外提供数据和信息服务等问题,提出了一种基于微服务实时迁移的软件系统韧性增强系统及方法,能够在部分网络链路、服务承载主机、微服务实例程序失效的情况下,通过微服务的实时迁移,确保软件系统能够持续对外提供服务,从而有效增强软件系统的韧性抗毁能力。
为达到上述目的,本发明是采用下述技术方案实现的:
第一方面,本发明提供了一种基于微服务实时迁移的软件系统韧性增强系统,包括:
OpenFlow交换机,用于接收用户的服务访问请求并转发给微服务控制器;
微服务控制器,根据所述服务访问请求决策选择微服务实例程序,并将决策信息发送至SDN控制器;
SDN控制器,根据决策信息将服务访问请求转发至安装有对应微服务实例程序的服务承载主机;
服务承载主机,用于为微服务实例程序提供运行环境,以及,对微服务实例程序和自身运行状态进行周期性检测,并将检测得到的异常信息发送至微服务控制器;
所述SDN控制器检测服务承载主机的网络链路状态,并将检测得到的异常信息发送至微服务控制器;
所述微服务控制器响应于接收到所述异常信息,则判断异常信息种类,并根据异常信息种类决策选择新的微服务实例程序或新的服务承载主机进行实时迁移。
进一步的,所述异常信息包括微服务实例程序异常信息、服务承载主机异常信息和链路异常信息,所述微服务实例程序异常信息和服务承载主机异常信息提供通过监控代理程序对微服务实例程序和服务承载主机的运行状态信息检测获得,所述链路异常信息通过SDN控制器对服务承载主机的网络链路状态检测获得。
第二方面,本发明提供了一种微服务实例程序检测方法,其应用于上述的基于微服务实时迁移的软件系统韧性增强系统中,由运行于服务承载主机上的监控代理程序执行,包括:
所述监控代理程序周期性地收集微服务实例程序的运行状态信息,并判断是否存在微服务实例程序异常信息;
若存在微服务实例程序异常信息,则监控代理程序立即对微服务控制器进行上报,否则对微服务控制器进行周期性上报。
第三方面,本发明提供了一种服务承载主机检测方法,其应用于上述的基于微服务实时迁移的软件系统韧性增强系统中,由运行于服务承载主机上的监控代理程序执行,包括:
所述监控代理程序周期性地收集服务承载主机的运行状态信息,并判断是否存在服务承载主机异常信息;
若存在服务承载主机异常信息,则监控代理程序立即对微服务控制器进行上报,否则对微服务控制器进行周期性上报。
第四方面,本发明提供了一种网络链路状态检测方法,其应用于上述的基于微服务实时迁移的软件系统韧性增强系统中,由SDN控制器执行,包括:
所述SDN控制器周期性地收集服务承载主机与OpenFlow交换机之间链路状态,并判断是否存在链路异常信息;
若存在链路异常信息,则SDN控制器立即对微服务控制器进行上报,否则对微服务控制器进行周期性上报。
第五方面,本发明提供了一种微服务实例程序实时迁移方法,其应用于上述的基于微服务实时迁移的软件系统韧性增强系统中,由微服务控制器执行,所述微服务控制器根据微服务实例程序异常信息决策选择新的微服务实例程序,并将决策结果通知SDN控制器,所述SDN控制器根据决策结果通过修改OpenFlow交换机的流表项,将用户的服务访问请求转发至新的微服务实例程序。
第六方面,本发明提供了一种微服务实例程序实时迁移方法,其应用于上述的基于微服务实时迁移的软件系统韧性增强系统中,由微服务控制器执行,所述微服务控制器根据服务承载主机异常信息或链路异常信息启动服务迁移程序将微服务实例程序迁移至新的服务承载主机上,同时向SDN控制器发送路由调整指令,所述SDN控制器根据路由调整指令向OpenFlow交换机下发流表项,将服务访问请求转发至迁移后的服务承载主机。
与现有技术相比,本发明所达到的有益效果:
一、在部分网络链路、服务承载主机、微服务实例程序失效的情况下,通过微服务的实时迁移,确保软件系统能够持续对外提供服务,从而有效增强软件系统的韧性抗毁能力。
二、充分考虑物理主机和网络性能下降或故障对微服务可生存性的影响,将微服务与物理主机和网络解耦合,当感知到性能下降或故障时进行微服务迁移,提升了系统在恶劣环境下提供持续不中断服务的能力。
三、系统利用SDN控制器监测网络链路的可用性,以及利用监控代理监测微服务实例程序和服务承载主机的可用性,并在发生异常情况后,通过向微服务控制器上报信息,具有实现方便、信息上报效率高、异常处理快速等特点。
附图说明
图1是本发明实施例一提供的基于微服务实时迁移的软件系统韧性增强系统运行的网络环境示意图;
图2是本发明实施例一提供的基于微服务实时迁移的软件系统韧性增强系统总体架构设计图;
图3是本发明实施例一提供的基于微服务实时迁移的软件系统韧性增强系统的处理流程图。
具体实施方式
近年来,软件定义网络和虚拟化等技术的发展为解决这些问题提供了新的思路,一方面,利用虚拟化容器技术建立微服务化的软件系统,能够有效解决当前单体式软件架构面临的功能复杂、部分功能的失效导致整个系统不可用等问题,且微服务功能可以采用多副本的实现策略,能够确保在部分实例失效的情况下快速选择新的微服务实例程序进行替代,进而保证整个软件系统的可用性。而且,容器的实时迁移技术也能够保证当物理设施出现异常时,系统能够通过将虚拟化微服务实例程序迁移至其他可用的物理设施上,保持服务的可持续性。另一方面,软件定义网络技术提供了对网络的灵活管控能力,能够根据用户的定义快速进行路由的重新调整,可以与虚拟化微服务迁移技术一起,解决在部分基础设施失效情况下软件系统的可用性问题。基于此,我们主要利用软件定义网络和容器化微服务两种技术,设计了一种基于微服务实时迁移的软件系统韧性增强系统及方法,用于解决在网络链路和服务承载主机在遭受攻击时,现有的软件系统无法继续对外提供数据和信息服务的技术问题。下面结合附图对本发明作进一步描述,以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。
实施例一:
本发明的实施例一提供了一种基于微服务实时迁移的软件系统韧性增强系统,请参阅图1-3,包括:微服务控制器、SDN控制器、OpenFlow交换机、以及若干台服务承载主机,每台服务承载主机均具有双网卡,分别连接在OpenFlow交换机和内部交换机上。
OpenFlow交换机负责接收用户的服务访问请求,查找其流表是否有对应的处理规则,若有则按照处理规则对服务访问请求进行处理,否则将服务访问请求上报至SDN控制器,由其和微服务控制器一起形成服务访问请求处理规则并下发至OpenFlow交换机,随后OpenFlow交换机根据规则对服务访问请求进行处理,包括修改服务访问请求的地址信息、将分组转发至相应的微服务实例程序等。
微服务控制器负责记录各个微服务的抽象服务标识、对应的微服务实例程序、以及微服务实例程序当前状态信息等。当接收到服务访问的请求时,能够根据这些信息进行决策,并通知SDN控制器将用户请求转发至特定的微服务实例程序。此外,微服务控制器还基于监控代理所收集到的微服务状态信息,决策是否需要对微服务实例程序进行迁移,例如当服务承载主机负载过重或者出现故障时,需要尽快将当前正在提供服务的微服务实例程序迁移到新的服务承载主机上,以保持用户服务请求的持续不中断。
SDN控制器负责用户服务请求的路由与自适应迁移,根据微服务控制器的服务决策信息,将用户的服务请求转发至相应的微服务实例程序,保证部分微服务实例程序的失效不影响服务的可用性,并根据微服务控制器的微服务迁移决策,与之配合完成路由的迁移;此外,SDN控制器还负责监控OpenFlow交换机到各个微服务实例程序之间的网络状态,出现异常时利用Trap消息上报至微服务控制器。
服务承载主机负责为微服务实例程序的运行提供支撑环境,不同的微服务实例程序根据部署情况运行在服务承载主机上。每台服务承载主机均具有双网卡,分别连接在OpenFlow交换机和内部交换机上。并且,在服务承载主机上还运行有监控代理程序,负责监控微服务和服务承载主机的状态信息,并在发生异常时通过Trap消息将该信息上报至微服务控制器,作为其决策的参考。
需要说明的是,服务承载主机1和服务承载主机2是两台服务器,其上分别运行容器化的微服务实例程序S1、S2、S3、S4、S5,这些实例提供相同的功能,但采用了不同的实现机制,以增强微服务的冗余和多样性,避免部分实例的损毁导致服务的不可用。两台主机均为双网卡主机,分别连接到OpenFlow交换机和内部交换机。其上运行的监控代理程序负责监控主机和微服务的状态,并将信息上报至微服务控制器。具体的微服务实时迁移步骤如下:
在网络中部署微服务控制器、SDN控制器、OpenFlow交换机,并根据需要部署多台服务承载主机,在服务承载主机上运行微服务实例程序和监控代理程序,监控代理程序周期性地收集主机和微服务的运行状态信息,进行服务器性能及故障感知,并将信息上报至微服务控制器,SDN控制器周期性地收集服务承载主机与OpenFlow交换机之间的网络连接信息,进行网络性能及故障感知;
当用户发起到微服务的服务访问请求后,该请求首先到达OpenFlow交换机,随后访问请求信息由OpenFlow交换机转发给微服务控制器,随后SDN控制器与微服务控制器协同决策,根据当前微服务的状态信息,选择微服务实例程序S2为用户提供服务,SDN控制器将生成相应的流表项下发至OpenFlow交换机,由其进行服务请求和响应分组的转发工作;
监控代理负责微服务实例程序的状态监控,未出现异常的情况下以周期T上报服务承载主机及其上所运行微服务的状态信息,包括服务承载主机的CPU利用率、内存利用率,以及微服务的运行状态等,当检测到微服务实例程序出现异常后,则立即通过Trap消息将异常信息上报至微服务控制器,这里一旦发现微服务实例程序S2出现异常,则立即告知微服务控制器;
微服务控制器检查其维护的微服务状态表,随后决策选择新的微服务实例程序为用户提供服务,假设其选择了微服务实例程序S3继续为用户提供服务,微服务控制器将决策结果通知SDN控制器;
SDN控制器修改OpenFlow交换机的流表项,将用户的服务访问请求转发至微服务实例程序S3;
进行网络和服务承载主机的性能及故障感知,当SDN控制器检测到用户与微服务实例程序S3之间的链路发生异常时,包括链路中断、链路可用带宽过低等,以及当监控代理检测到服务承载主机2异常时,包括CPU利用率过高、可用资源不足等,通过Trap消息将异常信息上报至微服务控制器;
微服务控制器与SDN控制器一起进行微服务迁移决策,选择将微服务实例程序S3由服务承载主机2迁移至服务承载主机1,以保证在链路和服务承载主机2异常情况下服务的可用性;
微服务控制器通知服务承载主机2上运行的监控代理,通过CRIU技术将微服务实例程序S3由服务承载主机2迁移至服务承载主机1;
SDN控制器向OpenFlow交换机下发流表项,将访问微服务实例程序S3的分组转发至服务承载主机1;
SDN控制器、监控代理继续监测网络、微服务、以及服务承载主机的状态信息,一旦发现异常则根据前述步骤执行新的迁移操作。
请参阅图1,当用户H1请求服务时,微服务控制器首先根据当前微服务的状态信息,选择微服务实例程序S1为其提供服务,当服务的过程中监控代理检测到微服务实例程序S1出现问题后,则通知微服务控制器,由其重新选择其他实例提供服务,如选择S3作为新的微服务实例程序,随后微服务控制器通知SDN控制器进行路由的迁移变换,将H1的服务访问请求发往S3。当SDN控制器发现网络链路L2出现故障,或者监控代理发现服务承载主机2出现问题后,则通过微服务实例程序的迁移,将当前正在提供服务的微服务实例程序S3由服务承载主机2迁移至服务承载主机1,并由SDN控制器将H1的服务访问请求经由链路L1转发至微服务实例程序S3新的位置,进而保证服务的持续可用性。
图3给出了本发明的处理流程,该流程开始于步骤S101,部署微服务控制器、SDN控制器、OpenFlow交换机以及若干台服务承载主机,然后转S102;
在步骤S102中,在服务承载主机上按需部署监控代理以及多个具有相同功能的微服务实例程序,然后转S103;
在步骤S103中,微服务控制器接收到用户的服务访问请求,分析其所请求服务的状态信息,然后转S104;
在步骤S104中,判断是否有可用的微服务实例程序为用户提供服务,若有则转S105,否则当前无法响应该服务请求,转S103;
在步骤S105中,微服务控制器为用户的服务访问请求分配微服务实例程序,并将分配结果通知SDN控制器,然后转S106;
在步骤S106中,SDN控制器根据接收到的微服务实例程序分配信息进行路由调度,生成相应的分组转发流表项并下发至OpenFlow交换机,然后转S107;
在步骤S107中,SDN控制器负责监控OpenFlow交换机到服务承载主机的链路状态,监控代理负责监控服务承载主机的状态、以及各个微服务实例程序的状态,监控到的正常信息周期性上报至微服务控制器;一旦监控到异常信息则立即上报至微服务控制器,并转入S108;
在步骤S108中,微服务控制器判断是何种类型的异常,若为链路或服务承载主机异常,则转入S109,否则转入S112;
在步骤S109中,微服务控制器判断系统中是否还有可用的服务承载主机,这里可用的含义包括主机本身运行正常、以及与OpenFlow交换机之间的网络连接正常,若有则转入S110,否则转S103,本次服务请求无法正常完成;
在步骤S110中,微服务控制器启动服务迁移程序,将当前提供服务的微服务实例程序迁移至可用的服务承载主机上;同时告知SDN控制器进行路由调整,然后转S111;
在步骤S111中,SDN控制器进行路由调整,生成新的流表项下发至OpenFlow交换机,将用户的服务访问请求转发至微服务实例程序的新位置,完成本次服务后转入S103;
在步骤S112中,微服务控制器判断是否为微服务实例程序异常,若是则转入S113,否则为未知异常,本次服务请求处理失败,转入S103;
在步骤S113中,微服务控制器判断是否有可用的微服务实例程序,若存在可用实例则转入S114,否则本次服务请求处理失败,转入S103;
在步骤S114中,微服务控制器选择新的微服务实例程序为用户提供服务,并通知SDN控制器进行路由调整,然后转S115;
在步骤S115中,SDN控制器根据新的微服务实例程序位置进行路由调整,并将新的流表项下发至OpenFlow交换机,由其将用户的服务访问请求转发至新的微服务实例程序,完成本次服务后转入S103。
实施例二:
本发明实施例二还提供了一种微服务实例程序检测方法,其应用于实施例一的基于微服务实时迁移的软件系统韧性增强系统中,由运行于服务承载主机上的监控代理程序执行,包括:
监控代理程序周期性地收集微服务实例程序的运行状态信息,并判断是否存在微服务实例程序异常信息;
若存在微服务实例程序异常信息,则监控代理程序立即对微服务控制器进行上报,否则对微服务控制器进行周期性上报。
实施例三:
本发明实施例三还提供了一种服务承载主机检测方法,其应用于实施例一的基于微服务实时迁移的软件系统韧性增强系统中,由运行于服务承载主机上的监控代理程序执行,包括:
监控代理程序周期性地收集服务承载主机的运行状态信息,并判断是否存在服务承载主机异常信息;
若存在服务承载主机异常信息,则监控代理程序立即对微服务控制器进行上报,否则对微服务控制器进行周期性上报。
实施例四:
本发明实施例四还提供了一种网络链路状态检测方法,其应用于实施例一的基于微服务实时迁移的软件系统韧性增强系统中,由SDN控制器执行,包括:
SDN控制器周期性地收集服务承载主机与OpenFlow交换机之间链路状态,并判断是否存在链路异常信息;
若存在链路异常信息,则SDN控制器立即对微服务控制器进行上报,否则对微服务控制器进行周期性上报。
实施例五:
本发明实施例五还提供了一种微服务实例程序实时迁移方法,其应用于实施例一的基于微服务实时迁移的软件系统韧性增强系统中,由微服务控制器执行,微服务控制器根据微服务实例程序异常信息决策选择新的微服务实例程序,并将决策结果通知SDN控制器,SDN控制器根据决策结果通过修改OpenFlow交换机的流表项,将用户的服务访问请求转发至新的微服务实例程序。
实施例六:
本发明实施例六还提供了一种微服务实例程序实时迁移方法,其应用于实施例一的基于微服务实时迁移的软件系统韧性增强系统中,由微服务控制器执行,微服务控制器根据服务承载主机异常信息或链路异常信息启动服务迁移程序将微服务实例程序迁移至新的服务承载主机上,同时向SDN控制器发送路由调整指令,SDN控制器根据路由调整指令向OpenFlow交换机下发流表项,将服务访问请求转发至迁移后的服务承载主机。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。

Claims (7)

1.一种基于微服务实时迁移的软件系统韧性增强系统,其特征是:包括:
OpenFlow交换机,用于接收用户的服务访问请求并转发给微服务控制器;
微服务控制器,根据所述服务访问请求决策选择微服务实例程序,并将决策信息发送至SDN控制器;
SDN控制器,根据决策信息将服务访问请求转发至安装有对应微服务实例程序的服务承载主机;
服务承载主机,用于为微服务实例程序提供运行环境,以及,对微服务实例程序和自身运行状态进行周期性检测,并将检测得到的异常信息发送至微服务控制器;
所述SDN控制器检测服务承载主机的网络链路状态,并将检测得到的异常信息发送至微服务控制器;
所述微服务控制器响应于接收到所述异常信息,则判断异常信息种类,并根据异常信息种类决策选择新的微服务实例程序或新的服务承载主机进行实时迁移。
2.根据权利要求1所述的一种基于微服务实时迁移的软件系统韧性增强系统,其特征是:所述异常信息包括微服务实例程序异常信息、服务承载主机异常信息和链路异常信息,所述微服务实例程序异常信息和服务承载主机异常信息提供通过监控代理程序对微服务实例程序和服务承载主机的运行状态信息检测获得,所述链路异常信息通过SDN控制器对服务承载主机的网络链路状态检测获得。
3.一种微服务实例程序检测方法,其应用于如权利要求2所述的基于微服务实时迁移的软件系统韧性增强系统中,其特征是:由运行于服务承载主机上的监控代理程序执行,包括:
所述监控代理程序周期性地收集微服务实例程序的运行状态信息,并判断是否存在微服务实例程序异常信息;
若存在微服务实例程序异常信息,则监控代理程序立即对微服务控制器进行上报,否则对微服务控制器进行周期性上报。
4.一种服务承载主机检测方法,其应用于如权利要求2所述的基于微服务实时迁移的软件系统韧性增强系统中,其特征是:由运行于服务承载主机上的监控代理程序执行,包括:
所述监控代理程序周期性地收集服务承载主机的运行状态信息,并判断是否存在服务承载主机异常信息;
若存在服务承载主机异常信息,则监控代理程序立即对微服务控制器进行上报,否则对微服务控制器进行周期性上报。
5.一种网络链路状态检测方法,其应用于如权利要求2所述的基于微服务实时迁移的软件系统韧性增强系统中,其特征是:由SDN控制器执行,包括:
所述SDN控制器周期性地收集服务承载主机与OpenFlow交换机之间链路状态,并判断是否存在链路异常信息;
若存在链路异常信息,则SDN控制器立即对微服务控制器进行上报,否则对微服务控制器进行周期性上报。
6.一种微服务实例程序实时迁移方法,其应用于如权利要求2所述的基于微服务实时迁移的软件系统韧性增强系统中,其特征是:由微服务控制器执行,所述微服务控制器根据微服务实例程序异常信息决策选择新的微服务实例程序,并将决策结果通知SDN控制器,所述SDN控制器根据决策结果通过修改OpenFlow交换机的流表项,将用户的服务访问请求转发至新的微服务实例程序。
7.一种微服务实例程序实时迁移方法,其应用于如权利要求2所述的基于微服务实时迁移的软件系统韧性增强系统中,其特征是:由微服务控制器执行,所述微服务控制器根据服务承载主机异常信息或链路异常信息启动服务迁移程序将微服务实例程序迁移至新的服务承载主机上,同时向SDN控制器发送路由调整指令,所述SDN控制器根据路由调整指令向OpenFlow交换机下发流表项,将服务访问请求转发至迁移后的服务承载主机。
CN202110581549.4A 2021-05-27 2021-05-27 一种基于微服务实时迁移的软件系统韧性增强系统及方法 Active CN113285836B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110581549.4A CN113285836B (zh) 2021-05-27 2021-05-27 一种基于微服务实时迁移的软件系统韧性增强系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110581549.4A CN113285836B (zh) 2021-05-27 2021-05-27 一种基于微服务实时迁移的软件系统韧性增强系统及方法

Publications (2)

Publication Number Publication Date
CN113285836A CN113285836A (zh) 2021-08-20
CN113285836B true CN113285836B (zh) 2022-05-10

Family

ID=77281923

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110581549.4A Active CN113285836B (zh) 2021-05-27 2021-05-27 一种基于微服务实时迁移的软件系统韧性增强系统及方法

Country Status (1)

Country Link
CN (1) CN113285836B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114706733B (zh) * 2022-05-30 2022-09-20 支付宝(杭州)信息技术有限公司 切面程序异常的监控方法和装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103795805A (zh) * 2014-02-27 2014-05-14 中国科学技术大学苏州研究院 基于sdn的分布式服务器负载均衡方法
CN109587071A (zh) * 2018-11-30 2019-04-05 北京工业大学 基于sdn的微服务负载均衡方法
CN109873736A (zh) * 2019-01-18 2019-06-11 苏宁易购集团股份有限公司 一种微服务监控方法及系统
CN112328372A (zh) * 2020-11-27 2021-02-05 新华智云科技有限公司 一种kubernetes节点自愈方法和系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10437645B2 (en) * 2017-07-14 2019-10-08 Sap Se Scheduling of micro-service instances

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103795805A (zh) * 2014-02-27 2014-05-14 中国科学技术大学苏州研究院 基于sdn的分布式服务器负载均衡方法
CN109587071A (zh) * 2018-11-30 2019-04-05 北京工业大学 基于sdn的微服务负载均衡方法
CN109873736A (zh) * 2019-01-18 2019-06-11 苏宁易购集团股份有限公司 一种微服务监控方法及系统
CN112328372A (zh) * 2020-11-27 2021-02-05 新华智云科技有限公司 一种kubernetes节点自愈方法和系统

Also Published As

Publication number Publication date
CN113285836A (zh) 2021-08-20

Similar Documents

Publication Publication Date Title
Imran et al. Toward an optimal solution against denial of service attacks in software defined networks
US8595817B2 (en) Dynamic authenticated perimeter defense
KR101900154B1 (ko) DDoS 공격이 탐지가 가능한 소프트웨어 정의 네트워크 및 이에 포함되는 스위치
JP5743809B2 (ja) 網管理システムおよび網管理方法
US9813448B2 (en) Secured network arrangement and methods thereof
Rafique et al. CFADefense: A security solution to detect and mitigate crossfire attacks in software-defined IoT-edge infrastructure
JPWO2005109797A1 (ja) ネットワーク攻撃対策方法、ネットワーク攻撃対策装置及びネットワーク攻撃対策プログラム
CN113285836B (zh) 一种基于微服务实时迁移的软件系统韧性增强系统及方法
CN110401601B (zh) 一种拟态路由协议系统和方法
JP2018516001A (ja) 通信装置、システム、方法、及びプログラム
US8370897B1 (en) Configurable redundant security device failover
Lee et al. SAFE: A scalable autonomous fault-tolerant ethernet scheme for large-scale star networks
CN113824595B (zh) 链路切换控制方法、装置和网关设备
CN115361310A (zh) 一种防火墙的链路探测方法及装置
Shravanya et al. Securing distributed SDN controller network from induced DoS attacks
KR101717697B1 (ko) 가상화 환경에서의 침입 감내 시스템 및 그 방법
KR101914831B1 (ko) 호스트 추적 서비스에 대한 공격을 방지할 수 있는 소프트웨어 정의 네트워크 및 이에 포함되는 컨트롤러
Alani et al. Survey of optimizing dynamic virtual local area network algorithm for software-defined wide area network
CN113660199B (zh) 流量攻击的防护方法、装置、设备及可读存储介质
Mahajan et al. Attacks in software-defined networking: a review
Pashkov et al. Protection of the Control Plane from DDoS Attacks in Software-Defined Networks
CN117411772B (zh) 一种分布式网络节点管理与安全重组方法
EP3200403B1 (en) Packet forwarding method and device, sdn and system
Desgeorges et al. Implementation of a SDN architecture observer: Detection of failure, distributed denial-of-service and unauthorized intrusion
Ramani Providing Network Resilience with Software-Defined Networking

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