CN113225403B - 一种拓扑感知的负载均衡方法、装置及计算机设备 - Google Patents

一种拓扑感知的负载均衡方法、装置及计算机设备 Download PDF

Info

Publication number
CN113225403B
CN113225403B CN202110771506.2A CN202110771506A CN113225403B CN 113225403 B CN113225403 B CN 113225403B CN 202110771506 A CN202110771506 A CN 202110771506A CN 113225403 B CN113225403 B CN 113225403B
Authority
CN
China
Prior art keywords
topology
link
load balancing
end service
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
CN202110771506.2A
Other languages
English (en)
Other versions
CN113225403A (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.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent Technology 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 Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN202110771506.2A priority Critical patent/CN113225403B/zh
Publication of CN113225403A publication Critical patent/CN113225403A/zh
Application granted granted Critical
Publication of CN113225403B publication Critical patent/CN113225403B/zh
Priority to PCT/CN2021/121912 priority patent/WO2023279555A1/zh
Priority to US18/271,456 priority patent/US11902362B2/en
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
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/61Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources taking into account QoS or priority requirements
    • 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/12Discovery or management of network topologies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0817Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • H04L47/125Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
    • 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
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • 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
    • H04L67/1004Server selection for load balancing
    • H04L67/101Server selection for load balancing based on network conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0811Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking connectivity

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Cardiology (AREA)
  • General Health & Medical Sciences (AREA)
  • Environmental & Geological Engineering (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种拓扑感知的负载均衡方法,包括:获取用户下发的负载均衡配置信息,并基于配置信息判断负载均衡的若干后端服务端点是否位于不同节点;若是负载均衡的若干后端服务端点位于不同节点,向不同节点定时下发对各自节点上若干后端服务端点轮询的命令,以获取不同节点的拓扑信息、后端服务端点的健康状态和链路质量;基于拓扑信息、健康状态和链路质量,计算得到后端服务端点的优先级,并基于优先级设置均衡负载的服务响应端点;以及响应于拓扑信息发生变化和/或健康状态和/或链路质量发生变化,重新计算后端服务端点的优先级,并基于优先级调整服务响应端点。本发明还公开了一种拓扑感知的负载均衡装置和计算机设备。

Description

一种拓扑感知的负载均衡方法、装置及计算机设备
技术领域
本发明涉及负载均衡技术领域,尤其涉及一种拓扑感知的负载均衡方法、装置及设备。
背景技术
在云计算时代,业务改造上也不断地开展,伴随着云计算的不断发展,云计算数据中心规模越来越大,在大规模数据中心环境下通过合理规划、技术优化使在硬件资产固定的情况下单位计算资源所承载的计算密度越来越高,而在硬件资产固定的情况下网络带宽资源也是固定的,数据中心的网络带宽资源越来越珍贵,如何合理高效的利用固定的网络带宽资源为用户提供最优质的服务是当前数据中心亟需解决的问题。
传统的负载均衡策略无法感知负载均衡后端服务端点的拓扑信息,导致两个问题:第一,负载均衡***无法有效、合理的规划后端服务端点资源,导致为负载均衡前端提供服务的后端服务端点不是最优的,用户体验差、不能合理利用数据中心资源;第二,用户可以通过合理规划负载均衡后端服务端点的拓扑,以达到***最优,但是当负载均衡后端服务端点拓扑因故障、计算资源不足等问题而导致变动,***无法自动调整负载均衡规则,而需要运维人员根据新的拓扑手动重新调整,导致出错风险大、运维成本高。
发明内容
有鉴于此,本发明实施例的目的在于提出一种拓扑感知的负载均衡方法、装置及计算机设备,使用拓扑感知与链路质量感知的方式根据优先级算法计算负载均衡后端服务端点的优先级,选择最优后端服务端点作为负载均衡服务后端,同时当网络状态发生变化或后端服务端点拓扑发生变化时负载均衡可以自动适配最新的拓扑与链路状态,在不升级硬件的基础上充分利用了数据中心网络链路带宽资源为用户带来最好的使用体验,同时能够实时感知后端服务端点拓扑状态变化与网络链路质量变化,及时调整负载均衡后端服务端点的优先级,始终优先选择最优后端服务端点为负载均衡提供服务。避免了传统负载均衡器无法感知后端服务端点拓扑与链路质量的缺陷同时也避免了管理员手动调整带来的繁琐工作与变更风险。
基于上述目的,本发明实施例的一方面提供了一种拓扑感知的负载均衡方法,包括以下步骤:获取用户下发的负载均衡配置信息,并基于配置信息判断负载均衡的若干后端服务端点是否位于不同节点;若是负载均衡的若干后端服务端点位于不同节点,向不同节点定时下发对各自节点上若干后端服务端点轮询的命令,以获取不同节点的拓扑信息、若干后端服务端点的健康状态和链路质量;基于拓扑信息、健康状态和链路质量,计算得到若干后端服务端点的优先级,并基于优先级设置均衡负载的服务响应端点;以及响应于拓扑信息发生变化和/或健康状态和/或链路质量发生变化,重新计算若干后端服务端点的优先级,并基于优先级调整服务响应端点。
在一些实施方式中,还包括:由不同节点的拓扑感知模块对各自节点上若干后端服务端点进行定时轮询,以获取不同节点的拓扑信息,并将拓扑信息上传到控制模块;由不同节点的健康监测模块对各自节点上若干后端服务端点进行定时轮询,以获取若干后端服务端点的健康状态和链路信息,并将健康状态和链路信息上传到控制模块。
在一些实施方式中,响应于拓扑信息发生变化和/或健康状态和/或链路质量发生变化包括:由拓扑感知模块获取当前拓扑信息,并判断当前拓扑信息与上次获取的拓扑信息是否相同;若是当前拓扑信息与上次获取的拓扑信息不同,确认拓扑信息发生变化,并将当前拓扑信息上传到控制模块;由健康监测模块获取当前健康状态和当前链路信息,并将当前健康状态和当前链路信息上传到控制模块,并由控制模块基于当前健康状态和当前链路信息与上次获取的健康状态和链路信息判断健康状态和链路质量是否发生变化。
在一些实施方式中,还包括:若是当前拓扑信息与上次获取的拓扑信息相同,确认拓扑信息未发生变化,则不会将当前拓扑信息上传到控制模块。
在一些实施方式中,基于拓扑信息、健康状态和链路质量,计算得到若干后端服务端点的优先级包括:基于链路质量中的链路开销计算得到链路平均开销,并基于链路平均开销、拓扑权重、链路权重、链路开销权重、链路稳定性权重、延迟变更权重计算得到若干后端服务端点的负载均衡优先级。
在一些实施方式中,基于链路平均开销、拓扑权重、链路权重、链路开销权重、链路稳定性权重、延迟变更权重计算得到若干后端服务端点的负载均衡优先级包括:通过如下公式计算若干后端服务端点的优先级:
Figure 905911DEST_PATH_IMAGE001
其中,A1为拓扑T的拓扑权重,A2为链路权重,x1,x2,……,xn为对应链路的链路开销,A3为链路开销权重,A4为链路稳定性权重,L为延迟变更权重,M为链路平均开销。
在一些实施方式中,基于优先级设置均衡负载的服务响应端点包括:将若干后端服务端点的优先级按照从高到低排序,并将优先级最高的后端服务端点作为负载均衡的服务响应端点。
在一些实施方式中,基于优先级调整服务响应端点包括:将若干后端服务端点重新计算得到的优先级按照从高到低排序,并将重新计算得到的优先级最高的后端服务端点作为负载均衡的服务响应端点。
本发明实施例的另一方面,还提供了一种拓扑感知的负载均衡装置,包括:第一模块,配置用于获取用户下发的负载均衡配置信息,并基于配置信息判断负载均衡的若干后端服务端点是否位于不同节点;第二模块,配置用于若是负载均衡的若干后端服务端点位于不同节点,向不同节点定时下发对各自节点上若干后端服务端点轮询的命令,以获取不同节点的拓扑信息、若干后端服务端点的健康状态和链路质量;第三模块,配置用于基于拓扑信息、健康状态和链路质量,计算得到若干后端服务端点的优先级,并基于优先级设置均衡负载的服务响应端点;以及第四模块,配置用于响应于拓扑信息发生变化和/或健康状态和/或链路质量发生变化,重新计算若干后端服务端点的优先级,并基于优先级调整服务响应端点。
本发明实施例的再一方面,还提供了一种计算机设备,包括:至少一个处理器;以及存储器,存储器存储有可在处理器上运行的计算机指令,指令由处理器执行时实现上述方法的步骤。
本发明具有以下有益技术效果:解决大规模数据中心环境下负载均衡性能不高、无法实时根据负载均衡后端服务端点拓扑状态调整链路的问题,通过对负载均衡器后端服务端点的拓扑进行感知,并根据拓扑感知结果调整负载均衡,实现负载均衡性能最优化,极大提升网络带宽资源利用率与用户使用体验。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的实施例。
图1为本发明提供的拓扑感知的负载均衡方法的实施例的示意图;
图2为本发明提供的拓扑感知的负载均衡装置的实施例的示意图;
图3为本发明提供的计算机设备的实施例的示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明实施例进一步详细说明。
需要说明的是,本发明实施例中所有使用“第一”和“第二”的表述均是为了区分两个相同名称非相同的实体或者非相同的参量,可见“第一”“第二”仅为了表述的方便,不应理解为对本发明实施例的限定,后续实施例对此不再一一说明。
基于上述目的,本发明实施例的第一个方面,提出了拓扑感知的负载均衡方法的实施例。图1示出的是本发明提供的拓扑感知的负载均衡方法的实施例的示意图。如图1所示,本发明实施例包括例如在控制模块中执行如下步骤:
S01、获取用户下发的负载均衡配置信息,并基于配置信息判断负载均衡的若干后端服务端点是否位于不同节点;
S02、若是负载均衡的若干后端服务端点位于不同节点,向不同节点定时下发对各自节点上若干后端服务端点轮询的命令,以获取不同节点的拓扑信息、若干后端服务端点的健康状态和链路质量;
S03、基于拓扑信息、健康状态和链路质量,计算得到若干后端服务端点的优先级,并基于优先级设置均衡负载的服务响应端点;以及
S04、响应于拓扑信息发生变化和/或健康状态和/或链路质量发生变化,重新计算若干后端服务端点的优先级,并基于优先级调整服务响应端点。
在本实施例中,主要应用于大规模数据中心环境下的负载均衡,对负载均衡后端服务端点的拓扑进行感知,根据拓扑感知结果调整负载均衡提供服务的后端服务端点,实现负载均衡性能最优化。当后端服务端点因故障、计算资源等问题导致拓扑改变时,负载均衡器可以根据收集到的最新拓扑信息调整链路,极大提升网络带宽资源利用率与用户使用体验。
在本实施例中,拓扑感知的负载均衡主要包括拓扑感知模块、控制模块、健康检测模块与事件处理模块。控制模块负责完成用户配置负载均衡规则的下发与负载均衡服务服务的呈现,控制模块是整个***的中枢模块,控制模块同时与拓扑感知模块、健康检测模块与事件处理模块交互,根据交互结果智能分析并自动选择最优链路的负载均衡后端服务端点为负载均衡提供服务。拓扑感知模块根据控制模块下发的后端服务端点信息负责感知后端服务端点的拓扑信息,并将感知到的拓扑信息通过事件模块发送到控制模块,拓扑感知模块还感知后端服务端点拓扑变化,当感知到BACKEND拓扑发生变化,拓扑感知模块将新的拓扑通过事件发送到控制模块,拓扑感知模块在启用负载均衡功能时在节点上启用,但仅有后端服务端点所在节点才会上报拓扑事件信息。健康检测模块负责根据控制模块下发的后端服务端点信息进行健康检测,需要说明的是,控制模块可以根据健康检测模块检测结果感知后端服务端点的健康状态与链路状态。事件处理模块负责事件的产生与处理,是各个模块之间消息传递的通道。
在本实施例中,用户根据需要开启负载均衡功能并配置后端服务端点,一般情况下,出于灾备、高可用等因素考虑,不同的后端服务端点会选择不同的节点部署;控制模块收到用户的负载均衡配置信息,根据配置信息下发规则到节点:若负载均衡后端服务端点位于同一节点,则不需要根据拓扑感知模块上报的拓扑信息,对后端服务端点进行轮询处理;若负载均衡后端服务端点位于不同节点,控制模块首先根据健康检测模块上送的后端服务端点健康状态对后端服务端点进行轮询处理以保证负载均衡服务即时可用,同时节点上的拓扑感知模块开始感知并上传后端服务端点的拓扑信息到控制模块,当控制模块获取到所有节点上送的后端服务端点拓扑信息后根据后端服务端点的拓扑信息与健康上报的后端服务端点健康状态与链路质量,综合计算选择最优的后端服务端点并调整各个后端服务端点的优先级,从而实现优先选择拓扑与链路质量最佳的后端服务端点作为负载均衡的服务响应端点。
在本实施例中,若***运行过程中负载均衡后端服务端点拓扑发生变化,拓扑检测模块上报新的拓扑关系,控制模块根据最新的拓扑信息与健康检测信息重新计算是否需要调整后端服务端点的优先级以到达最佳网络性能。
在本发明的一些实施例中,还包括:由不同节点的拓扑感知模块对各自节点上若干后端服务端点进行定时轮询,以获取不同节点的拓扑信息,并将拓扑信息上传到控制模块;由不同节点的健康监测模块对各自节点上若干后端服务端点进行定时轮询,以获取若干后端服务端点的健康状态和链路信息,并将健康状态和链路信息上传到控制模块。
在本发明的一些实施例中,响应于拓扑信息发生变化和/或健康状态和/或链路质量发生变化包括:由拓扑感知模块获取当前拓扑信息,并判断当前拓扑信息与上次获取的拓扑信息是否相同;若是当前拓扑信息与上次获取的拓扑信息不同,确认拓扑信息发生变化,并将当前拓扑信息上传到控制模块;由健康监测模块获取当前健康状态和当前链路信息,并将当前健康状态和当前链路信息上传到控制模块,并由控制模块基于当前健康状态和当前链路信息与上次获取的健康状态和链路信息判断健康状态和链路质量是否发生变化。
在本实施例中,拓扑感知模块根据收到负载均衡后端服务端点信息感知节点上的后端服务端点拓扑信息,并将感知到的拓扑信息通过事件处理模块上送到控制模块,同时,若当前节点上的后端服务端点发生拓扑变化,拓扑感知事件将变化后的拓扑关系重新上报控制模块。
在本实施例中,健康检测模块负责检测负载均衡后端服务端点的健康状态,同时,健康检测模块也同时获取后端服务端点的网络链路状态信息,最终将检测信息通过事件处理模块发送到控制模块,由控制模块统一处理。
在本发明的一些实施例中,还包括:若是当前拓扑信息与上次获取的拓扑信息相同,确认拓扑信息未发生变化,则不会将当前拓扑信息上传到控制模块。
在本实施例中,拓扑感知模块根据收到负载均衡后端服务端点信息感知节点上的后端服务端点拓扑信息,若当前节点上的拓扑无变化时,拓扑感知模块进入静默模式,仅仅收集但不上报后端服务端点拓扑关系,以减小***负载、节省网络带宽资源。
在本发明的一些实施例中,基于拓扑信息、健康状态和链路质量,计算得到若干后端服务端点的优先级包括:基于链路质量中的链路开销计算得到链路平均开销,并基于链路平均开销、拓扑权重、链路权重、链路开销权重、链路稳定性权重、延迟变更权重计算得到若干后端服务端点的负载均衡优先级。
在本发明的一些实施例中,基于链路平均开销、拓扑权重、链路权重、链路开销权重、链路稳定性权重、延迟变更权重计算得到若干后端服务端点的负载均衡优先级包括:通过如下公式计算若干后端服务端点的优先级:
Figure 251441DEST_PATH_IMAGE002
其中,A1为拓扑T的拓扑权重,A2为链路权重,x1,x2,……,xn为对应链路的链路开销,A3为链路开销权重,A4为链路稳定性权重,L为延迟变更权重,M为链路平均开销。
在本实施例中,链路平均开销M使用以下方式计算:
Figure 339483DEST_PATH_IMAGE003
其中,x1,x2,……,xn为对应链路的链路开销。
在本实施例中,以三个节点为例,负载均衡优先级P的计算方式如下:
Figure 872096DEST_PATH_IMAGE004
Figure 602154DEST_PATH_IMAGE005
在本发明的一些实施例中,基于优先级设置均衡负载的服务响应端点包括:将若干后端服务端点的优先级按照从高到低排序,并将优先级最高的后端服务端点作为负载均衡的服务响应端点。
在本发明的一些实施例中,基于优先级调整服务响应端点包括:将若干后端服务端点重新计算得到的优先级按照从高到低排序,并将重新计算得到的优先级最高的后端服务端点作为负载均衡的服务响应端点。
需要特别指出的是,上述拓扑感知的负载均衡方法的各个实施例中的各个步骤均可以相互交叉、替换、增加、删减,因此,这些合理的排列组合变换之于拓扑感知的负载均衡方法也应当属于本发明的保护范围,并且不应将本发明的保护范围局限在实施例之上。
基于上述目的,本发明实施例的第二个方面,提出了一种拓扑感知的负载均衡装置。图2示出的是本发明提供的拓扑感知的负载均衡装置的实施例的示意图。如图2所示,本发明实施例包括如下模块:第一模块S11,配置用于获取用户下发的负载均衡配置信息,并基于配置信息判断负载均衡的若干后端服务端点是否位于不同节点;第二模块S12,配置用于若是负载均衡的若干后端服务端点位于不同节点,向不同节点定时下发对各自节点上若干后端服务端点轮询的命令,以获取不同节点的拓扑信息、若干后端服务端点的健康状态和链路质量;第三模块S13,配置用于基于拓扑信息、健康状态和链路质量,计算得到若干后端服务端点的优先级,并基于优先级设置均衡负载的服务响应端点;以及第四模块S14,配置用于响应于拓扑信息发生变化和/或健康状态和/或链路质量发生变化,重新计算若干后端服务端点的优先级,并基于优先级调整服务响应端点。
基于上述目的,本发明实施例的第三个方面,提出了一种计算机设备。图3示出的是本发明提供的计算机设备的实施例的示意图。如图3所示,本发明实施例包括如下装置:至少一个处理器S21;以及存储器S22,存储器S22存储有可在处理器上运行的计算机指令S23,指令由处理器执行时实现以上方法的步骤。
最后需要说明的是,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关硬件来完成,拓扑感知的负载均衡方法的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,程序的存储介质可为磁碟、光盘、只读存储记忆体(ROM)或随机存储记忆体(RAM)等。上述计算机程序的实施例,可以达到与之对应的前述任意方法实施例相同或者相类似的效果。
此外,根据本发明实施例公开的方法还可以被实现为由处理器执行的计算机程序,该计算机程序可以存储在计算机可读存储介质中。在该计算机程序被处理器执行时,执行本发明实施例公开的方法中限定的上述功能。
此外,上述方法步骤以及***单元也可以利用控制器以及用于存储使得控制器实现上述步骤或单元功能的计算机程序的计算机可读存储介质实现。
本领域技术人员还将明白的是,结合这里的公开所描述的各种示例性逻辑块、模块、电路和算法步骤可以被实现为电子硬件、计算机软件或两者的组合。为了清楚地说明硬件和软件的这种可互换性,已经就各种示意性组件、方块、模块、电路和步骤的功能对其进行了一般性的描述。这种功能是被实现为软件还是被实现为硬件取决于具体应用以及施加给整个***的设计约束。本领域技术人员可以针对每种具体应用以各种方式来实现的功能,但是这种实现决定不应被解释为导致脱离本发明实施例公开的范围。
在一个或多个示例性设计中,功能可以在硬件、软件、固件或其任意组合中实现。如果在软件中实现,则可以将功能作为一个或多个指令或代码存储在计算机可读介质上或通过计算机可读介质来传送。计算机可读介质包括计算机存储介质和通信介质,该通信介质包括有助于将计算机程序从一个位置传送到另一个位置的任何介质。存储介质可以是能够被通用或专用计算机访问的任何可用介质。作为例子而非限制性的,该计算机可读介质可以包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储设备、磁盘存储设备或其它磁性存储设备,或者是可以用于携带或存储形式为指令或数据结构的所需程序代码并且能够被通用或专用计算机或者通用或专用处理器访问的任何其它介质。此外,任何连接都可以适当地称为计算机可读介质。例如,如果使用同轴线缆、光纤线缆、双绞线、数字用户线路(DSL)或诸如红外线、无线电和微波的无线技术来从网站、服务器或其它远程源发送软件,则上述同轴线缆、光纤线缆、双绞线、DSL或诸如红外线、无线电和微波的无线技术均包括在介质的定义。如这里所使用的,磁盘和光盘包括压缩盘(CD)、激光盘、光盘、数字多功能盘(DVD)、软盘、蓝光盘,其中磁盘通常磁性地再现数据,而光盘利用激光光学地再现数据。上述内容的组合也应当包括在计算机可读介质的范围内。
以上是本发明公开的示例性实施例,但是应当注意,在不背离权利要求限定的本发明实施例公开的范围的前提下,可以进行多种改变和修改。根据这里描述的公开实施例的方法权利要求的功能、步骤和/或动作不需以任何特定顺序执行。此外,尽管本发明实施例公开的元素可以以个体形式描述或要求,但除非明确限制为单数,也可以理解为多个。
应当理解的是,在本文中使用的,除非上下文清楚地支持例外情况,单数形式“一个”旨在也包括复数形式。还应当理解的是,在本文中使用的“和/或”是指包括一个或者一个以上相关联地列出的项目的任意和所有可能组合。
上述本发明实施例公开实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本发明实施例公开的范围(包括权利要求)被限于这些例子;在本发明实施例的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,并存在如上的本发明实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。因此,凡在本发明实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本发明实施例的保护范围之内。

Claims (10)

1.一种拓扑感知的负载均衡方法,其特征在于,包括以下步骤:
获取用户下发的负载均衡配置信息,并基于所述配置信息判断负载均衡的若干后端服务端点是否位于不同节点;
若是负载均衡的若干后端服务端点位于不同节点,向所述不同节点定时下发对各自节点上所述若干后端服务端点轮询的命令,以获取所述不同节点的拓扑信息、所述若干后端服务端点的健康状态和链路质量;
基于所述拓扑信息、所述健康状态和所述链路质量,计算得到所述若干后端服务端点的优先级,并基于所述优先级设置均衡负载的服务响应端点;以及
响应于所述拓扑信息发生变化和/或所述健康状态和/或所述链路质量发生变化,重新计算所述若干后端服务端点的优先级,并基于所述优先级调整所述服务响应端点。
2.根据权利要求1所述的拓扑感知的负载均衡方法,其特征在于,还包括:
由所述不同节点的拓扑感知模块对各自节点上所述若干后端服务端点进行定时轮询,以获取所述不同节点的拓扑信息,并将所述拓扑信息上传到控制模块;
由所述不同节点的健康监测模块对各自节点上所述若干后端服务端点进行定时轮询,以获取所述若干后端服务端点的健康状态和链路信息,并将所述健康状态和所述链路信息上传到所述控制模块。
3.根据权利要求2所述的拓扑感知的负载均衡方法,其特征在于,响应于所述拓扑信息发生变化和/或所述健康状态和/或所述链路质量发生变化包括:
由所述拓扑感知模块获取当前拓扑信息,并判断所述当前拓扑信息与上次获取的所述拓扑信息是否相同;
若是所述当前拓扑信息与上次获取的所述拓扑信息不同,确认所述拓扑信息发生变化,并将所述当前拓扑信息上传到所述控制模块;
由所述健康监测模块获取当前健康状态和当前链路信息,并将所述当前健康状态和所述当前链路信息上传到所述控制模块,并由所述控制模块基于所述当前健康状态和所述当前链路信息与上次获取的健康状态和链路信息判断所述健康状态和所述链路质量是否发生变化。
4.根据权利要求3所述的拓扑感知的负载均衡方法,其特征在于,还包括:
若是所述当前拓扑信息与上次获取的所述拓扑信息相同,确认所述拓扑信息未发生变化,则不会将所述当前拓扑信息上传到所述控制模块。
5.根据权利要求1所述的拓扑感知的负载均衡方法,其特征在于,基于所述拓扑信息、所述健康状态和所述链路质量,计算得到所述若干后端服务端点的优先级包括:
基于所述链路质量中的链路开销计算得到链路平均开销,并基于所述链路平均开销、拓扑权重、链路权重、链路开销权重、链路稳定性权重、延迟变更权重计算得到所述若干后端服务端点的负载均衡优先级。
6.根据权利要求5所述的拓扑感知的负载均衡方法,其特征在于,基于所述链路平均开销、拓扑权重、链路权重、链路开销权重、链路稳定性权重、延迟变更权重计算得到所述若干后端服务端点的负载均衡优先级包括:
通过如下公式计算所述若干后端服务端点的优先级:
Figure 433812DEST_PATH_IMAGE001
其中,A1为拓扑T的拓扑权重,A2为链路权重,x1,x2,……,xn为对应链路的链路开销,A3为链路开销权重,A4为链路稳定性权重,L为延迟变更权重,M为链路平均开销。
7.根据权利要求1所述的拓扑感知的负载均衡方法,其特征在于,基于优先级设置均衡负载的服务响应端点包括:
将所述若干后端服务端点的优先级按照从高到低排序,并将优先级最高的所述后端服务端点作为负载均衡的服务响应端点。
8.根据权利要求1所述的拓扑感知的负载均衡方法,其特征在于,基于优先级调整所述服务响应端点包括:
将所述若干后端服务端点重新计算得到的优先级按照从高到低排序,并将重新计算得到的优先级最高的所述后端服务端点作为负载均衡的服务响应端点。
9.一种拓扑感知的负载均衡装置,其特征在于,包括:
第一模块,配置用于获取用户下发的负载均衡配置信息,并基于所述配置信息判断负载均衡的若干后端服务端点是否位于不同节点;
第二模块,配置用于若是负载均衡的若干后端服务端点位于不同节点,向所述不同节点定时下发对各自节点上所述若干后端服务端点轮询的命令,以获取所述不同节点的拓扑信息、所述若干后端服务端点的健康状态和链路质量;
第三模块,配置用于基于所述拓扑信息、所述健康状态和所述链路质量,计算得到所述若干后端服务端点的优先级,并基于所述优先级设置均衡负载的服务响应端点;以及
第四模块,配置用于响应于所述拓扑信息发生变化和/或所述健康状态和/或所述链路质量发生变化,重新计算所述若干后端服务端点的优先级,并基于所述优先级调整所述服务响应端点。
10.一种计算机设备,其特征在于,包括:
至少一个处理器;以及
存储器,所述存储器存储有可在所述处理器上运行的计算机指令,所述指令由所述处理器执行时实现权利要求1-8任意一项所述方法的步骤。
CN202110771506.2A 2021-07-08 2021-07-08 一种拓扑感知的负载均衡方法、装置及计算机设备 Active CN113225403B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN202110771506.2A CN113225403B (zh) 2021-07-08 2021-07-08 一种拓扑感知的负载均衡方法、装置及计算机设备
PCT/CN2021/121912 WO2023279555A1 (zh) 2021-07-08 2021-09-29 一种拓扑感知的负载均衡方法、装置及计算机设备
US18/271,456 US11902362B2 (en) 2021-07-08 2021-09-29 Topology-aware load balancing method and apparatus, and computer device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110771506.2A CN113225403B (zh) 2021-07-08 2021-07-08 一种拓扑感知的负载均衡方法、装置及计算机设备

Publications (2)

Publication Number Publication Date
CN113225403A CN113225403A (zh) 2021-08-06
CN113225403B true CN113225403B (zh) 2021-08-31

Family

ID=77081180

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110771506.2A Active CN113225403B (zh) 2021-07-08 2021-07-08 一种拓扑感知的负载均衡方法、装置及计算机设备

Country Status (3)

Country Link
US (1) US11902362B2 (zh)
CN (1) CN113225403B (zh)
WO (1) WO2023279555A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113225403B (zh) 2021-07-08 2021-08-31 苏州浪潮智能科技有限公司 一种拓扑感知的负载均衡方法、装置及计算机设备
CN115996176B (zh) * 2023-03-24 2023-05-30 广州世炬网络科技有限公司 节点拓扑结构调整方法及装置
CN116700993B (zh) * 2023-08-02 2024-02-09 浪潮(北京)电子信息产业有限公司 一种负载均衡方法、装置、设备及可读存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101547139A (zh) * 2008-03-28 2009-09-30 华为技术有限公司 网络拓扑变化的通告方法及装置
CN103685054A (zh) * 2013-12-18 2014-03-26 武汉烽火网络有限责任公司 基于业务感知的多路径负载均衡方法

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE60227289D1 (de) * 2002-03-04 2008-08-07 Operax Ab Verfahren zur bereitstellung von topologiebewusstseinsinformationen in einem ip-netzwerk
DE50313304D1 (de) * 2002-09-10 2011-01-20 Siemens Ag Verfahren zur Kontrolle von Übertragungsressourcen eines paketorientierten Kommunikationsnetzes bei Topologieänderungen
US7561526B2 (en) * 2002-12-17 2009-07-14 Nortel Networks Limited Communication network route determination
US8296774B2 (en) 2009-06-26 2012-10-23 Microsoft Corporation Service-based endpoint discovery for client-side load balancing
US8458210B2 (en) * 2011-05-06 2013-06-04 Verizon Patent And Licensing Inc. Database load balancing through dynamic database routing
US10853196B2 (en) * 2018-08-03 2020-12-01 EMC IP Holding Company LLC Prioritizing microservices on a container platform for a restore operation
US10999361B2 (en) * 2018-09-07 2021-05-04 Red Hat, Inc. Consistent hash-based load balancer
CN110035468B (zh) 2019-03-26 2021-04-13 北京宇航***工程研究所 高可靠高安全无线网络拓扑控制***
CN110838944B (zh) 2019-11-15 2022-07-05 浪潮云信息技术股份公司 一种云中心租户维度拓扑图的实现方法
WO2022031819A1 (en) * 2020-08-05 2022-02-10 Avesha, Inc. Performing load balancing self adjustment within an application environment
CN112929408A (zh) 2021-01-19 2021-06-08 郑州阿帕斯数云信息科技有限公司 动态负载均衡方法及装置
CN113225403B (zh) 2021-07-08 2021-08-31 苏州浪潮智能科技有限公司 一种拓扑感知的负载均衡方法、装置及计算机设备

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101547139A (zh) * 2008-03-28 2009-09-30 华为技术有限公司 网络拓扑变化的通告方法及装置
CN103685054A (zh) * 2013-12-18 2014-03-26 武汉烽火网络有限责任公司 基于业务感知的多路径负载均衡方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"Dynamic load-balanced path optimization in SDN-based data center networks";Yuan-Liang Lan等;《2016 10th International Symposium on Communication Systems, Networks and Digital Signal Processing (CSNDSP)》;20160722;全文 *

Also Published As

Publication number Publication date
US20230412674A1 (en) 2023-12-21
CN113225403A (zh) 2021-08-06
WO2023279555A1 (zh) 2023-01-12
US11902362B2 (en) 2024-02-13

Similar Documents

Publication Publication Date Title
CN113225403B (zh) 一种拓扑感知的负载均衡方法、装置及计算机设备
CN111600930B (zh) 微服务请求的流量管理方法、装置、服务器及存储介质
KR101736425B1 (ko) 통신 네트워크들에 대한 클라우드 컴퓨팅 강화 게이트웨이
US8667126B2 (en) Dynamic rate heartbeating for inter-node status updating
US20060050634A1 (en) Methods and systems to perform traffic engineering in a metric-routed network
US10469805B2 (en) Load balancing method, and related apparatus and system
US10277470B2 (en) Methods and apparatus to identify network topologies
CN102164081B (zh) 一种胖树拓扑的路由计算方法、节点设备和通信***
WO2012072344A1 (en) Endpoint-to-endpoint communications status monitoring
CN102340802A (zh) 业务质量监测方法及***
CN111200526A (zh) 网络设备的监控***及方法
WO2004036814A2 (en) Methods and systems to perform traffic engineering in a metric-routed network
CN112653575A (zh) 一种网络配置方法、控制器及流量引导***
CN111865681A (zh) 核心网切片端到端的时延优化方法、***与存储介质
WO2018014883A1 (zh) 策略发送、接收方法、装置及控制器
CN105207905B (zh) 路由选择方法和装置
CN110943877B (zh) 网络状态测量方法、设备及***
US10554324B1 (en) Dynamic wavelength allocation in optical networks
CN112468329A (zh) 一种服务器批量分组管理的方法、装置、设备及可读介质
KR101615059B1 (ko) 홈 네트워크 품질을 결정하기 위한 방법 및 서버
CN111106974A (zh) 一种测试无损网络性能的方法和装置
CN110309045B (zh) 用于确定服务器未来状态的方法、装置、介质及计算设备
CN116095180B (zh) 一种日志回传的选路方法、装置和存储介质
CN117579534A (zh) 智能路由方法、装置、电子设备及存储介质
CN115412426A (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