CN114448810A - Bandwidth pulling method, device and electronic device - Google Patents
Bandwidth pulling method, device and electronic device Download PDFInfo
- Publication number
- CN114448810A CN114448810A CN202111608405.XA CN202111608405A CN114448810A CN 114448810 A CN114448810 A CN 114448810A CN 202111608405 A CN202111608405 A CN 202111608405A CN 114448810 A CN114448810 A CN 114448810A
- Authority
- CN
- China
- Prior art keywords
- server group
- unit
- bandwidth
- migrated
- unit individual
- 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.)
- Granted
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/08—Configuration management of networks or network elements
- H04L41/0896—Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
-
- 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/14—Network analysis or design
- H04L41/142—Network analysis or design using statistical or mathematical methods
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Algebra (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Pure & Applied Mathematics (AREA)
- Hardware Redundancy (AREA)
Abstract
本发明实施例涉及一种带宽牵引方法、装置及电子设备,该方法包括:确定待迁移的服务器组,待迁移服务器组中使用带宽的每一个单位个体所使用的第一带宽量,以及待迁移的服务器组待迁移的第二带宽量;根据第一带宽量和第二带宽量,从所有单位个体中,选取至少一个单位个体构成单位个体组合;筛选与单位个体组合中每一个单位个体分别对应的候选服务器组,并确定每一个候选服务器组的冗余带宽量;根据候选服务器组、冗余带宽量、单位个体组合中的每一个单位个体、以及单位个体组合中每一个单位个体对应的第一带宽量,构建整数规划模型;对整数规划模型进行求解,生成单位个体组合的迁移方案。本发明方法相较于现有技术,处理速度更快。
Embodiments of the present invention relate to a bandwidth pulling method, device, and electronic device. The method includes: determining a server group to be migrated, a first amount of bandwidth used by each unit of bandwidth using bandwidth in the server group to be migrated, and a to-be-migrated server group. The second bandwidth amount to be migrated for the server group of and determine the redundant bandwidth amount of each candidate server group; according to the candidate server group, the amount of redundant bandwidth, each unit individual in the unit individual combination, and the first unit corresponding to each unit individual in the unit individual combination With a bandwidth, an integer programming model is constructed; the integer programming model is solved to generate a migration scheme for the unit individual combination. Compared with the prior art, the method of the present invention has a faster processing speed.
Description
技术领域technical field
本发明实施例涉及计算机技术领域,尤其涉及一种带宽牵引方法、装置及电子设备。Embodiments of the present invention relate to the field of computer technologies, and in particular, to a bandwidth pulling method, device, and electronic device.
背景技术Background technique
内容分发网络(Content Delivery Network,简称CDN)是一种在服务提供方和消费方之间,通过架设节点让用户就近获取所需的内容,从而达到缓解网络拥塞,提高用户访问网站响应速度的目的。Content Delivery Network (CDN for short) is a kind of network between service providers and consumers, through the establishment of nodes to allow users to obtain the desired content nearby, so as to relieve network congestion and improve the response speed of users accessing websites. .
一般来说,提供CDN服务的是一组服务器,由于服务器本身存在能力上限,在线上实际运营过程中,超过能力上限的服务器组如果仍持续提供服务,往往会出现机器负载较高,导致丢包或者其他影响服务质量的情况。此时,需要将该组上的服务的客户迁移到其他组,通过降量的方式以保障服务的正常运营。当线上运营遇到这类问题时,一般由运维人员或者程序进行穷举搜索来进行降量处理,目前这两类方式存在如下问题:Generally speaking, CDN services are provided by a group of servers. Since the server itself has an upper limit of capacity, in the actual online operation process, if the server group exceeding the upper limit of capacity continues to provide services, the machine load will often be high, resulting in packet loss. or other circumstances that affect the quality of service. At this time, the customers of the service on this group need to be migrated to other groups to ensure the normal operation of the service by reducing the amount. When such problems are encountered in online operations, operation and maintenance personnel or programs generally conduct exhaustive searches to reduce the amount. At present, these two types of methods have the following problems:
1.由于降量迁移涉及大量数据计算,人为手动调整往往仅能处理一些简单的场景(比如服务器组上服务的客户量少、能够承接的组较多且冗余量充足的情况),无法对复杂场景进行手动带宽迁移;1. Since the volume reduction migration involves a large amount of data calculation, manual adjustment can often only handle some simple scenarios (such as the case where the number of customers served on the server group is small, the number of groups that can be undertaken is large, and the redundancy is sufficient), and it is impossible to Manual bandwidth migration for complex scenarios;
2.采用计算机程序进行迁移量计算,目前已有的方式一般采用穷举搜索的方式进行求解。由于服务器组上服务的客户量可能很多,在进行降量迁移时,涉及的组合方式巨大,并且可能需要多层级降量处理,因此往往无法在有限时间内进行求解。2. A computer program is used to calculate the migration amount, and the existing methods generally use an exhaustive search method to solve the problem. Since the number of customers served on the server group may be large, the combination method involved is huge when performing downscaling, and multi-level downscaling may be required, so it is often impossible to solve within a limited time.
发明内容SUMMARY OF THE INVENTION
本申请提供了一种带宽牵引方法、装置及电子设备,以解决现有技术中的上述问题。The present application provides a bandwidth pulling method, device and electronic device to solve the above problems in the prior art.
第一方面,本申请提供了一种带宽牵引方法,该方法包括:In a first aspect, the present application provides a bandwidth pulling method, which includes:
确定待迁移的服务器组,待迁移服务器组中使用带宽的每一个单位个体所使用的第一带宽量,以及待迁移的服务器组待迁移的第二带宽量;Determine the server group to be migrated, the first bandwidth amount used by each unit of bandwidth used in the server group to be migrated, and the second bandwidth amount to be migrated by the server group to be migrated;
根据第一带宽量和第二带宽量,从待迁移服务器组中使用带宽的单位个体中,选取至少一个单位个体,构成待迁移的单位个体组合;According to the first bandwidth amount and the second bandwidth amount, at least one unit individual is selected from the unit individuals using the bandwidth in the server group to be migrated to form the unit individual combination to be migrated;
从除待迁移的服务器组之外的服务器组中,筛选与单位个体组合中每一个单位个体分别对应的候选服务器组,并确定每一个候选服务器组的冗余带宽量;From the server groups other than the server group to be migrated, screen candidate server groups corresponding to each unit individual in the unit-individual combination, and determine the redundant bandwidth amount of each candidate server group;
根据候选服务器组、候选服务器组的冗余带宽量、单位个体组合中的每一个单位个体、以及单位个体组合中每一个单位个体对应的第一带宽量,构建整数规划模型;Build an integer programming model according to the candidate server group, the redundant bandwidth amount of the candidate server group, each unit individual in the unit individual combination, and the first bandwidth amount corresponding to each unit individual in the unit individual combination;
对整数规划模型进行求解,生成单位个体组合的迁移方案。Solve the integer programming model to generate the migration scheme of the unit individual combination.
第二方面,本申请提供了一种带宽牵引装置,该装置包括:In a second aspect, the present application provides a bandwidth pulling device, the device comprising:
确定模块,用于确定待迁移的服务器组,待迁移服务器组中使用带宽的每一个单位个体所使用的第一带宽量,以及待迁移的服务器组待迁移的第二带宽量;a determining module, configured to determine the server group to be migrated, the first bandwidth amount used by each unit of bandwidth used in the server group to be migrated, and the second bandwidth amount to be migrated by the server group to be migrated;
选择模块,用于根据第一带宽量和第二带宽量,从待迁移服务器组中使用带宽的单位个体中,选取至少一个单位个体,构成待迁移的单位个体组合;A selection module, configured to select at least one unit individual from the unit individuals using bandwidth in the server group to be migrated according to the first bandwidth amount and the second bandwidth amount to form a unit individual combination to be migrated;
筛选模块,用于从除待迁移的服务器组之外的服务器组中,筛选与单位个体组合中每一个单位个体分别对应的候选服务器组,并确定每一个候选服务器组的冗余带宽量;The screening module is used for screening the candidate server groups corresponding to each unit individual in the unit individual combination from the server groups other than the server group to be migrated, and determining the redundant bandwidth amount of each candidate server group;
构建模块,用于根据候选服务器组、候选服务器组的冗余带宽量、单位个体组合中的每一个单位个体、以及单位个体组合中每一个单位个体对应的第一带宽量,构建整数规划模型;A building module for constructing an integer programming model according to the candidate server group, the redundant bandwidth amount of the candidate server group, each unit individual in the unit individual combination, and the first bandwidth amount corresponding to each unit individual in the unit individual combination;
生成模块,用于对整数规划模型进行求解,生成单位个体组合的迁移方案。The generation module is used to solve the integer programming model and generate the migration scheme of the unit individual combination.
第三方面,提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;In a third aspect, an electronic device is provided, including a processor, a communication interface, a memory, and a communication bus, wherein the processor, the communication interface, and the memory communicate with each other through the communication bus;
存储器,用于存放计算机程序;memory for storing computer programs;
处理器,用于执行存储器上所存放的程序时,实现第一方面任一项实施例的带宽牵引方法的步骤。The processor is configured to implement the steps of the bandwidth pulling method of any embodiment of the first aspect when executing the program stored in the memory.
第四方面,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现如第一方面任一项实施例的带宽牵引方法的步骤。In a fourth aspect, a computer-readable storage medium is provided, on which a computer program is stored, and when the computer program is executed by a processor, implements the steps of the bandwidth pulling method according to any one of the embodiments of the first aspect.
本申请实施例提供的上述技术方案与现有技术相比具有如下优点:Compared with the prior art, the above-mentioned technical solutions provided in the embodiments of the present application have the following advantages:
本申请实施例提供的该方法,确定待迁移的服务器组,待迁移服务器组中使用带宽的每一个单位个体所使用的第一带宽量,以及待迁移的服务器组待迁移的第二带宽量。然后,根据第一带宽量和第二带宽量,从待迁移服务器组中使用带宽的单位个体中,提取至少一个单位个体,构成待迁移的单位个体组合,从除待迁移的服务器组之外的服务器组中,筛选与单位个体组合中每一个单位个体分别对应的候选服务器组,然后根据候选服务器组、候选服务器组的冗余带宽量、单位个体组合,以及单位个体组合中每一个单位个体对应的第一带宽量,构建整数规划模型,并对整数规划模型进行求解,最终生成单位个体组合的迁移方案。该方法中,将带宽迁移问题转化为整数模型的求解问题,通过数学算法得到迁移方案。相较于人为手动调整带宽迁移方案,本申请实施例提供的方法能够更加方便快捷的应对比较复杂的场景。而且,本发明方法是通过一定的算法求解方式得到较优的带宽迁移方案,相较于现有技术中的穷举方式,处理速度更快,可以在有限时间进行求解。The method provided by the embodiment of the present application determines the server group to be migrated, the first bandwidth amount used by each unit of bandwidth used in the server group to be migrated, and the second bandwidth amount to be migrated by the server group to be migrated. Then, according to the first bandwidth amount and the second bandwidth amount, at least one unit individual is extracted from the unit individuals using the bandwidth in the server group to be migrated to form a combination of unit individuals to be migrated, from the server group to be migrated except the server group to be migrated. In the server group, the candidate server group corresponding to each unit individual in the unit individual combination is screened, and then according to the candidate server group, the redundant bandwidth of the candidate server group, the unit individual combination, and each unit individual in the unit individual combination corresponds to The first bandwidth amount of , constructs an integer programming model, solves the integer programming model, and finally generates a migration scheme for the unit individual combination. In this method, the bandwidth migration problem is transformed into an integer model solution problem, and a migration scheme is obtained through a mathematical algorithm. Compared with the manual adjustment of the bandwidth migration scheme, the method provided by the embodiment of the present application can more conveniently and quickly deal with a relatively complex scenario. Moreover, the method of the present invention obtains a better bandwidth migration scheme through a certain algorithm solution method, and compared with the exhaustive method in the prior art, the processing speed is faster, and the solution can be performed in a limited time.
附图说明Description of drawings
图1为本发明实施例提供的一种带宽牵引方法流程示意图;1 is a schematic flowchart of a bandwidth pulling method according to an embodiment of the present invention;
图2为本发明提供的一种带宽牵引方法的具体应用实例的多带宽牵引结构示意图;2 is a schematic diagram of a multi-bandwidth pulling structure of a specific application example of a bandwidth pulling method provided by the present invention;
图3为本发明实施例提供的一种带宽牵引装置结构示意图;3 is a schematic structural diagram of a bandwidth pulling device according to an embodiment of the present invention;
图4为本发明实施例提供一种电子设备结构示意图。FIG. 4 is a schematic structural diagram of an electronic device according to an embodiment of the present invention.
具体实施方式Detailed ways
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。In order to make the purposes, technical solutions and advantages of the embodiments of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present invention. Obviously, the described embodiments These are some embodiments of the present invention, but not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those of ordinary skill in the art without creative efforts shall fall within the protection scope of the present invention.
为便于对本发明实施例的理解,下面将结合附图以具体实施例做进一步的解释说明,实施例并不构成对本发明实施例的限定。In order to facilitate the understanding of the embodiments of the present invention, further explanation will be given below with specific embodiments in conjunction with the accompanying drawings, and the embodiments do not constitute limitations to the embodiments of the present invention.
针对背景技术中所提及的技术问题,本申请实施例提供了一种带宽牵引方法,具体参见图1所示,图1为本发明实施例提供的一种带宽牵引方法流程示意图,该方法步骤包括:In response to the technical problems mentioned in the background art, an embodiment of the present application provides a bandwidth pulling method, as shown in FIG. 1 . FIG. 1 is a schematic flowchart of a bandwidth pulling method provided by an embodiment of the present invention. The method steps include:
步骤110,确定待迁移的服务器组,待迁移服务器组中使用带宽的每一个单位个体所使用的第一带宽量,以及待迁移的服务器组待迁移的第二带宽量。Step 110: Determine the server group to be migrated, the first bandwidth amount used by each unit of bandwidth used in the server group to be migrated, and the second bandwidth amount to be migrated by the server group to be migrated.
具体的,单位个体可以理解为在服务器组中使用带宽的客户+区域粒度的标识信息组合,用以指代某一个用户在某个区域所使用的某个运营商名下的带宽。第一带宽量,也即是当前所统计到的,该用户已使用的带宽量。Specifically, an individual unit can be understood as a combination of the client using the bandwidth in the server group + the identification information of the region granularity, which is used to refer to the bandwidth under a certain operator used by a certain user in a certain region. The first bandwidth amount, that is, the currently counted amount of bandwidth used by the user.
在用户访问某个域名的时候,服务器组中的某个服务器会在日志系统中记录访问请求,其中请求中包括用户IP、执行访问请求的机器所在的位置,以及所使用的带宽对应的运营商等内容。其中,客户就是指代用户IP,区域则包括运营商以及机器所在的具体位置(例如所在省份、地区等)。本申请实施例的方法可以是由一个终端设备执行的,该终端设备可以实时采集到每个服务器组的实时带宽,采集渠道包括通过日志信息获取,或者终端设备直接与服务器组中的服务器建立连接,以此来实时采集该服务器上的实时带宽。When a user accesses a domain name, a server in the server group will record the access request in the log system, where the request includes the user IP, the location of the machine that executes the access request, and the operator corresponding to the bandwidth used. and so on. Among them, the customer refers to the user IP, and the region includes the operator and the specific location of the machine (such as the province, region, etc.). The method in this embodiment of the present application may be executed by a terminal device, and the terminal device may collect the real-time bandwidth of each server group in real time, and the collection channel includes obtaining log information, or the terminal device directly establishes a connection with a server in the server group , so as to collect the real-time bandwidth on the server in real time.
终端设备在采集到的每一个服务器的实时带宽后,可以获知每个服务器组当前的总带宽量。当总带宽量超过预设阈值时,例如超过服务器组的额定带宽一定比例后,为避免该服务器组继续提供服务导致机器负载过高,丢包甚至是其他影响服务质量的情况发生,所以需要将该服务器组加入到待迁移对列,也是对该服务器组进行降量(部分单位个体迁移到其他服务器组上)。而当前带宽使用量超过额定带宽一定比例的服务器组即为待迁移服务器组,获取每一个服务器组中每一个单位个体的第一带宽量,以及待迁移服务器组待迁移的第二带宽量。After collecting the real-time bandwidth of each server, the terminal device can know the current total bandwidth of each server group. When the total bandwidth exceeds the preset threshold, for example, after exceeding a certain percentage of the rated bandwidth of the server group, in order to prevent the server group from continuing to provide services resulting in excessive machine load, packet loss or even other situations that affect the quality of service, it is necessary to set the The server group is added to the queue to be migrated, which is also the reduction of the server group (some units are migrated to other server groups). The server group whose current bandwidth usage exceeds a certain percentage of the rated bandwidth is the server group to be migrated, and the first bandwidth amount of each unit in each server group and the second bandwidth amount to be migrated of the server group to be migrated are obtained.
进一步可选的,考虑到终端设备获取到的是用户IP,以及机器所在的区域以及运营商,而这些信息并不能直接被终端设备中的调度系统所使用,因此还需要对当前采集的单位个体信息进行映射。包括将客户域名通过 CNAME方式映射到调度系统上,转换为调度域名。将调度域名定义为解析组,那么客户+区域粒度映射后所得到的信息就是解析组+区域粒度。Further optional, considering that the terminal equipment obtains the user IP, the area where the machine is located, and the operator, and these information cannot be directly used by the scheduling system in the terminal equipment, it is also necessary to information is mapped. Including mapping the customer domain name to the dispatching system through CNAME, and converting it into a dispatching domain name. If the scheduling domain name is defined as a resolution group, the information obtained after the client + area granularity mapping is the resolution group + area granularity.
步骤120,根据第一带宽量和第二带宽量,从待迁移服务器组中使用带宽的单位个体中,选取至少一个单位个体,构成待迁移的单位个体组合。
具体的,实际应用环境中,任一个服务器组中使用带宽的单位个体通常都包括很多个。然后将哪些单位个体执行迁移工作,则需要进行一定的选择。Specifically, in a practical application environment, there are usually many units using bandwidth in any server group. Then it is necessary to make certain choices as to which individual units will perform the migration work.
在具体执行时,可一个根据第一带宽量和第二带宽量,从多个单位个体中,选取至少一个单位个体,构成单位个体组合。During specific implementation, at least one unit individual may be selected from a plurality of unit individuals according to the first bandwidth amount and the second bandwidth amount to form a unit individual combination.
例如,第二带宽量为5G,服务器组中的单位个体包括A,带宽量为 1G,B为2G,C为3G,D为1G,E为2G。那么,单位个体的组合可以包括A+B+E,或者,A+C+D,或者,B+D+E等等。For example, the second bandwidth amount is 5G, the unit individuals in the server group include A, the bandwidth amount is 1G, B is 2G, C is 3G, D is 1G, and E is 2G. Then, the combination of unit individuals can include A+B+E, or A+C+D, or B+D+E and so on.
具体的,只要当待迁移服务器组中使用带宽的单位个体中至少一个单位个体对应的第一带宽量总和大于或者等于第二带宽量时,即可确定至少一个单位个体构成该单位个体组合。Specifically, as long as the sum of the first bandwidth amount corresponding to at least one of the unit units using bandwidth in the server group to be migrated is greater than or equal to the second bandwidth amount, it can be determined that at least one unit unit constitutes the unit unit combination.
而在具体执行时,会随机选择其中一个组合,执行如下操作。During specific execution, one of the combinations will be randomly selected, and the following operations will be performed.
步骤130,从除待迁移的服务器组之外的服务器组中,筛选与单位个体组合中每一个单位个体分别对应的候选服务器组,并确定每一个候选服务器组的冗余带宽量。Step 130: From the server groups other than the server group to be migrated, screen candidate server groups corresponding to each unit individual in the unit individual combination, and determine the redundant bandwidth amount of each candidate server group.
可选的,为了能够从其他服务器组中,找到与单位个体组合中的每一个单位个体对应的候选服务器组,可以采用如下方式实现,具体参见如下:Optionally, in order to find a candidate server group corresponding to each unit individual in the unit-individual combination from other server groups, the following methods can be used to implement, for details, see the following:
根据除待迁移的服务器组之外的服务器组中每一个服务器组的冗余承载能力和/或预配置的约束限制条件,以及单位个体组合中每一个单位个体对应的第一带宽量,对除待迁移的服务器组之外的服务器组进行筛选,获取与单位个体组合中每一个单位个体分别对应的候选服务器组。According to the redundant carrying capacity and/or pre-configured constraints of each server group in the server group except the server group to be migrated, and the first bandwidth amount corresponding to each unit individual in the unit individual combination, The server groups other than the server group to be migrated are screened to obtain a candidate server group corresponding to each unit individual in the unit-individual combination.
也即是,首先判断除待迁移的服务器组之外的其余服务器组中服务器组的冗余能力,其是否能够承接某个的单位个体。如果能承接,将其作为该单位个体对应的候选服务器组。如果不能承接,则排除掉。That is, firstly, it is judged whether the redundancy capability of the server groups in the remaining server groups except the server group to be migrated is able to undertake a certain unit individual. If it can be accepted, it will be regarded as the candidate server group corresponding to the individual unit. If it cannot be accepted, it is excluded.
和/或,当服务器组还包括某些约束条件时,则还要某些资源只能在部分地区使用,其不能作为单位个体的候选服务器组,则需要将其排除掉。And/or, when the server group also includes certain constraints, some resources can only be used in some regions and cannot be used as a candidate server group for an individual unit, so they need to be excluded.
通过上述方式,筛选出与单位个体组合中每一个单位个体分别对应的候选服务器组。In the above manner, candidate server groups corresponding to each unit individual in the unit individual combination are screened out.
在一种可能的实现方式中,虽然每一个单位个体只能选择一个候选服务器组,但是但某些特殊情况中,有可能同一个候选服务器组,同时满足作为多个单位个体的候选服务器的条件。In a possible implementation, although each individual unit can only select one candidate server group, in some special cases, it is possible for the same candidate server group to satisfy the conditions of being a candidate server for multiple individual units at the same time .
步骤140,根据候选服务器组、候选服务器组的冗余带宽量、单位个体组合中的每一个单位个体、以及单位个体组合中每一个单位个体对应的第一带宽量,构建整数规划模型。Step 140: Construct an integer programming model according to the candidate server group, the redundant bandwidth of the candidate server group, each individual unit in the unit individual combination, and the first bandwidth amount corresponding to each unit individual in the unit individual combination.
可选的,在执行上述步骤140的方法步骤之前,该方法还可以包括:随机将单位个体组合中的至少一个单位个体迁移到至少一个候选服务器组中的对应候选服务器组上,并刷新候选服务器组的冗余量信息。Optionally, before performing the method steps of the
具体的,由于服务器组上承载的解析组+区域可能会非常多,为了减轻后续求解整数规划问题的计算量,且带宽迁移问题本身可能存在多种可行解,因此在执行步骤140之前,可以首先通过拉斯维加斯算法(拉斯维加斯算法是一种永远给出正确解的随机化算法,拉斯维加斯算法不会得到不正确的解。一旦用拉斯维加斯算法找到一个解,这个解就一定是正确解) 随机选择部分解析组+区域并随机分配到候选服务器组上,并刷新候选服务器组的冗余量信息。Specifically, since there may be a large number of parsing groups + regions carried on the server group, in order to reduce the computational load for solving the integer programming problem, and the bandwidth migration problem itself may have multiple feasible solutions, before performing
当然,如上所介绍的,该操作并非是必须执行的操作,该操作是为了减少后续计算量,如果本领域人员不执行该操作,而是直接执行步骤140 的操作,也是完全可行的,仅仅是计算量会增多一些。Of course, as described above, this operation is not an operation that must be performed. This operation is to reduce the amount of subsequent computations. The amount of calculation will be increased.
执行完成上述操作后,则利用候选服务器组、候选服务器组的冗余带宽量、单位个体组合中的每一个单位个体、以及单位个体组合中每一个单位个体对应的第一带宽量,构建整数规划模型。After the above operations are completed, use the candidate server group, the redundant bandwidth of the candidate server group, each unit individual in the unit individual combination, and the first bandwidth amount corresponding to each unit individual in the unit individual combination to construct an integer plan. Model.
具体的,该步骤的思想是,将服务器组上的解析组+区域迁移到候选服务器组上,本质上是资源分配问题,即在每种可用资源的数量是有限的情况下,将资源仔细地分配,以达到利益最大化。此外由于解析组+区域的迁移不满足可分割性,因此该问题可以定性为二值整数规划问题,模型建立如下:Specifically, the idea of this step is that migrating the parsing group + area on the server group to the candidate server group is essentially a resource allocation problem, that is, in the case where the number of each available resource is limited, the resources are carefully distribution to maximize profits. In addition, since the transfer of the analytical group + region does not satisfy the separability, the problem can be characterized as a binary integer programming problem, and the model is established as follows:
1、通过引入二值变量(或0-1变量)将该问题的目标函数设计为:1. By introducing binary variables (or 0-1 variables), the objective function of the problem is designed as:
max Z=A1x11+A2x12+…+Anxnm max Z=A 1 x 11 +A 2 x 12 +…+A n x nm
其中,Ai为第i个解析组+区域的带宽量,xij为第i个解析组+区域是否迁移到第j个候选服务器组,Z表示能够迁移的解析组+区域的带宽量总和,max Z表示通过相关算法能够让Z最大化。Among them, A i is the bandwidth of the ith parsing group + area, x ij is whether the ith parsing group + area is migrated to the j th candidate server group, Z represents the sum of the bandwidth of the analytic group + region that can be migrated, and max Z represents that Z can be maximized by the correlation algorithm.
进一步可选的,在构建该数据模型后,该方法还可以包括:根据候选服务器组、候选服务器组的冗余带宽量、单位个体组合中的每一个单位个体、以及单位个体组合中每一个单位个体对应的第一带宽量,生成与整数规划模型对应的约束条件。Further optionally, after constructing the data model, the method may further include: according to the candidate server group, the redundant bandwidth amount of the candidate server group, each unit individual in the unit individual combination, and each unit in the unit individual combination. The first bandwidth amount corresponding to the individual generates constraints corresponding to the integer programming model.
具体的,对于同一个解析组+区域需要满足有且仅能迁移到某一个候选服务器组上,即满足此外一个候选服务器组仅能够承载不超过自身冗余能力的解析组+区域带宽量,即:Specifically, for the same parsing group + area, it is necessary to satisfy and can only be migrated to a certain candidate server group, that is, to satisfy In addition, a candidate server group can only carry the amount of resolution group + area bandwidth that does not exceed its own redundancy capacity, namely:
因此,在构建整数规划模型时,还可以配置上述执行条件。Therefore, when building an integer programming model, the above execution conditions can also be configured.
步骤150,对整数规划模型进行求解,生成单位个体组合的迁移方案。In
具体的,在具体执行求解过程时,可以采用分支定界算法对带宽迁移问题求解。Specifically, when the solution process is specifically executed, a branch-and-bound algorithm may be used to solve the bandwidth migration problem.
具体包括如下步骤:Specifically include the following steps:
1)初始化:设Z*=-∞,将目标函数最优解设置为无穷小,然后对原问题采用定界、剪枝方法进行求解。1) Initialization: set Z * =-∞, set the optimal solution of the objective function to infinitesimal, and then use the delimiting and pruning method to solve the original problem.
2)定界:对于每一个子问题,首先使用单纯形法计算子问题的线性松弛问题的边界值,然后再对其Z值向下取整。2) Bounding: For each subproblem, first use the simplex method to calculate the boundary value of the linear relaxation problem of the subproblem, and then round down its Z value.
3)剪枝:对于每一个子问题,采用以下三种方式进行剪枝;3) Pruning: For each sub-problem, the following three methods are used for pruning;
1、若子问题的边界值≤Z*,则该子问题可被剪枝;1. If the boundary value of the sub-problem ≤ Z * , the sub-problem can be pruned;
2、若子问题的线性松弛问题不含可行解,则该子问题可被剪枝;2. If the linear relaxation problem of the sub-problem does not contain a feasible solution, the sub-problem can be pruned;
3、若子问题的线性松弛问题的最优解为整数,且比原有的最佳可行解更好,则该子问题的解为当前最佳可行解。3. If the optimal solution of the linear relaxation problem of the sub-problem is an integer and is better than the original best feasible solution, the solution of the sub-problem is the current best feasible solution.
具体的求解过程时通过现有技术实现,因此这里不再过多赘述。The specific solution process is realized by the existing technology, so it will not be repeated here.
当所有解析组+区域都被分配时,则表示将当前解作为原问题的可行解。可以直接按照当前迁移方式完成对单位个体组合中的单位个体的迁移。When all analytic groups + regions are assigned, it means that the current solution is regarded as a feasible solution to the original problem. The migration of the unit individuals in the unit individual combination can be completed directly according to the current migration method.
可选的,考虑到如上文所介绍的,有可能存在不同的单位个体所对应的候选服务器组为同一个候选服务器组,然而同一个候选服务器组当前的冗余量并不能够同时承载多个单位个体,又或者,候选服务器组中的冗余量突发改变,从而导致通过上述方式对二值整数规划模型进行求解后,仍然存在解析组+区域没有被分配的情况。而此时,该方法还可以包括:Optionally, considering as described above, it is possible that the candidate server groups corresponding to different units are the same candidate server group, but the current redundancy of the same candidate server group cannot carry multiple server groups at the same time. The unit individual, or the redundancy in the candidate server group changes suddenly, so that after the binary integer programming model is solved by the above method, there is still a situation that the analytical group + area is not allocated. At this time, the method may also include:
对迁移失败的单位个体执行多阶降量操作;Perform multi-order reduction operations on individual units that fail to migrate;
当确定单位个体组合中所有单位个体迁移成功,或者执行多阶降量的迭代次数超过预设次数阈值时结束。The process ends when it is determined that all unit individuals in the unit individual combination have successfully migrated, or the number of iterations for performing multi-order reductions exceeds a preset number of times threshold.
具体的,执行多阶降量操作可以包括如下步骤:Specifically, performing the multi-order volume reduction operation may include the following steps:
1.初始化阶层深度,即递归搜索深度。1. Initialize the hierarchy depth, that is, the recursive search depth.
2.计算需要降量的次阶服务器组(假设上述操作是对待迁移服务器组的第一阶迁移,本次操作为第二阶(次阶)迁移),对于未分配的解析组 +区域,提取其候选服务器组,并进行剪枝(即剔除掉除当前阶之前的所有阶中递归链路上已出现的服务器组)。2. Calculate the second-order server group that needs to be reduced (assuming that the above operation is the first-order migration of the server group to be migrated, this operation is the second-order (second-order) migration), for the unassigned analysis group + area, extract Its candidate server group is pruned (that is, the server group that has appeared on the recursive link in all stages before the current stage is removed).
3.随机选择一个候选服务器组,并执行除多阶降量操作之外的以上所有操作步骤。3. Randomly select a candidate server group and perform all the above operation steps except the multi-order drop operation.
直到确定单位个体组合中所有单位个体迁移成功,或者执行多阶降量的迭代次数(执行多阶迁移)超过预设次数阈值时结束。It ends when it is determined that all unit individuals in the unit individual combination have successfully migrated, or the number of iterations for performing multi-order reduction (performing multi-order migration) exceeds a preset number of times threshold.
当执行多阶降量的迭代次数达到某个阈值后,则说明该单位个体组合的迁移方案没有比较合适的解。可以换一个或多个单位组合方案再次根据需要重复上述部分或者全部操作。When the number of iterations for performing multi-order reduction reaches a certain threshold, it means that there is no suitable solution for the migration scheme of the unit-individual combination. One or more unit combination schemes can be changed to repeat some or all of the above operations as needed.
如果所有的单位组合都执行完毕上述操作后,依然没有找到合适的解决方案,则说明在一定概率上来说,原问题可能无可行解,即对该服务器组进行带宽牵引,可能无法找到可以承接的候选服务器组列表,需要通过资源的重新规划方式解决。相反,如果能够找到合适的输出方案,则说明是存在最优解的。If no suitable solution is found after all the unit combinations have performed the above operations, it means that the original problem may not have a feasible solution in a certain probability, that is, the bandwidth traction of the server group may not be able to find a solution that can be undertaken. The list of candidate server groups needs to be resolved through resource re-planning. On the contrary, if a suitable output scheme can be found, it means that there is an optimal solution.
在一个具体的应用实例中,假设存在某个服务器组g0需要降量10MB,通过计算产生一组待迁移dv(解析组+区域)列表。其中,g0中的待迁移 dv的情况如表1所示,其候选服务器组g1-g3冗余能力情况如表2所示。In a specific application example, assuming that there is a certain server group g0 that needs to be reduced by 10MB, a set of dv (parse group + area) lists to be migrated are generated through calculation. Among them, the situation of the dv to be migrated in g0 is shown in Table 1, and the redundancy capability of the candidate server group g1-g3 is shown in Table 2.
表1Table 1
表2Table 2
在具体执行时,随机分配部分解析组+区域:例如采用随机方式,将 dv4分配到g3。During specific execution, the partial parsing group + area is randomly assigned: for example, dv4 is assigned to g3 in a random manner.
采用整数规划方式子问题进行求解:由于候选服务器组g1和g2的冗余量无法完全承接dv1、dv2和dv3的量,则需要对g1进行递归降量处理。The integer programming method is used to solve the sub-problem: because the redundancy of the candidate server groups g1 and g2 cannot fully undertake the amount of dv1, dv2 and dv3, it is necessary to recursively reduce the amount of g1.
假设通过递归降量对g1进行处理,使得g1的冗余量变为4MB,此时服务器组冗余量变,参见表3所示:Suppose that g1 is processed through recursive reduction, so that the redundancy of g1 becomes 4MB. At this time, the redundancy of the server group changes, as shown in Table 3:
表3table 3
此时使用整数规划进行求解:At this point, use integer programming to solve:
max Z=2x11+2x12+2x21+2x22+3x31+3x32 max Z = 2x 11 +2x 12 +2x 21 +2x 22 +3x 31 +3x 32
s.t.x11+x12≤1stx 11 +x 12 ≤1
x21+x22≤1x 21 +x 22 ≤1
x31+x32≤1x 31 +x 32 ≤1
2x11+2x21+2x31≤42x 11 +2x 21 +2x 31 ≤4
2x12+2x22+2x32≤32x 12 +2x 22 +2x 32 ≤3
x11,x12,x13,x21,x22,x23∈{0,1}x 11 , x 12 , x 13 , x 21 , x 22 , x 23 ∈ {0, 1}
如表4所示,该原问题的最终可行解为:As shown in Table 4, the final feasible solution of the original problem is:
表4Table 4
其中dv1分配给g1,dv2分配给g1,dv3分配给g2,dv4分配给g3,服务器组g0达到带宽牵引10MB的目标。Among them, dv1 is assigned to g1, dv2 is assigned to g1, dv3 is assigned to g2, dv4 is assigned to g3, and server group g0 achieves the goal of pulling 10MB of bandwidth.
具体参见图2所示,图2中示意出执行多阶降量处理后,g0组中除dv4 以外的dv的迁移流程框图,以及候选服务器组中每个候选服务器中的冗余带宽量等。其中,s代表剩余的dv组合,包括dv1、dv2,以及dv3。dv1 的带宽量为2M,dv2的带宽量为2M,dv3的带宽量为3m。dv1迁移到g1 中,dv2迁移到g1中,dv3迁移到g2中,最后输出结果t。Referring specifically to FIG. 2 , FIG. 2 shows a flowchart of the migration of dvs in the g0 group except dv4 after multi-order reduction processing is performed, and the amount of redundant bandwidth in each candidate server in the candidate server group. where s represents the remaining dv combinations, including dv1, dv2, and dv3. The bandwidth of dv1 is 2M, the bandwidth of dv2 is 2M, and the bandwidth of dv3 is 3m. dv1 migrates to g1, dv2 migrates to g1, dv3 migrates to g2, and finally outputs the result t.
本发明实施例提供的带宽牵引方法,确定待迁移的服务器组,待迁移服务器组中使用带宽的每一个单位个体所使用的第一带宽量,以及待迁移的服务器组待迁移的第二带宽量。然后,根据第一带宽量和第二带宽量,从待迁移服务器组中使用带宽的单位个体中,提取至少一个单位个体,构成待迁移的单位个体组合,从除待迁移的服务器组之外的服务器组中,筛选与单位个体组合中每一个单位个体分别对应的候选服务器组,然后根据候选服务器组、候选服务器组的冗余带宽量、单位个体组合,以及单位个体组合中每一个单位个体对应的第一带宽量,构建整数规划模型,并对整数规划模型进行求解,最终生成单位个体组合的迁移方案。该方法中,将带宽迁移问题转化为整数模型的求解问题,通过数学算法得到迁移方案。相较于人为手动调整带宽迁移方案,本申请实施例提供的方法能够更加方便快捷的应对比较复杂的场景。而且,本发明方法是通过一定的算法求解方式得到较优的带宽迁移方案,相较于现有技术中的穷举方式,处理速度更快,可以在有限时间进行求解。The bandwidth pulling method provided by the embodiment of the present invention determines the server group to be migrated, the first bandwidth amount used by each unit of bandwidth used in the server group to be migrated, and the second bandwidth amount to be migrated by the server group to be migrated . Then, according to the first bandwidth amount and the second bandwidth amount, at least one unit individual is extracted from the unit individuals using the bandwidth in the server group to be migrated to form a combination of unit individuals to be migrated, from the server group to be migrated except the server group to be migrated. In the server group, the candidate server group corresponding to each unit individual in the unit individual combination is screened, and then according to the candidate server group, the redundant bandwidth of the candidate server group, the unit individual combination, and each unit individual in the unit individual combination corresponds to The first bandwidth amount of , constructs an integer programming model, solves the integer programming model, and finally generates a migration scheme for the unit individual combination. In this method, the bandwidth migration problem is transformed into an integer model solution problem, and a migration scheme is obtained through a mathematical algorithm. Compared with the manual adjustment of the bandwidth migration scheme, the method provided by the embodiment of the present application can more conveniently and quickly deal with a relatively complex scenario. Moreover, the method of the present invention obtains a better bandwidth migration scheme through a certain algorithm solution method, and compared with the exhaustive method in the prior art, the processing speed is faster, and the solution can be performed in a limited time.
以上,为本申请所提供的带宽牵引几个方法实施例,下文中则介绍说明本申请所提供的带宽牵引其他实施例,具体参见如下。In the above, several method embodiments of the bandwidth pulling provided by the present application are described, and other embodiments of the bandwidth pulling provided by the present application will be introduced and described in the following. For details, refer to the following.
图3为本发明实施例提供的一种带宽牵引装置,该装置包括:确定模块301、选择模块302、筛选模块303、构建模块304,以及生成模块305。FIG. 3 is a bandwidth pulling device provided by an embodiment of the present invention. The device includes: a
确定模块301,用于确定待迁移的服务器组,待迁移服务器组中使用带宽的每一个单位个体所使用的第一带宽量,以及待迁移的服务器组待迁移的第二带宽量;A
选择模块302,用于根据第一带宽量和第二带宽量,从待迁移服务器组中使用带宽的单位个体中,选取至少一个单位个体,构成待迁移的单位个体组合;The
筛选模块303,用于从除待迁移的服务器组之外的服务器组中,筛选与单位个体组合中每一个单位个体分别对应的候选服务器组,并确定每一个候选服务器组的冗余带宽量;The
构建模块304,用于根据候选服务器组、候选服务器组的冗余带宽量、单位个体组合中的每一个单位个体、以及单位个体组合中每一个单位个体对应的第一带宽量,构建整数规划模型;The building module 304 is configured to construct an integer programming model according to the candidate server group, the redundant bandwidth amount of the candidate server group, each unit individual in the unit individual combination, and the first bandwidth amount corresponding to each unit individual in the unit individual combination ;
生成模块305,用于对整数规划模型进行求解,生成单位个体组合的迁移方案。The generating module 305 is configured to solve the integer programming model and generate the migration scheme of the unit individual combination.
可选的,选择模块302,具体用于当待迁移服务器组中使用带宽的单位个体中至少一个单位个体对应的第一带宽量总和大于或者等于第二带宽量时,确定至少一个单位个体构成单位个体组合。Optionally, the
可选的,筛选模块303,具体用于根据除待迁移的服务器组之外的服务器组中每一个服务器组的冗余承载能力和/或预配置的约束限制条件,以及单位个体组合中每一个单位个体对应的第一带宽量,对除待迁移的服务器组之外的服务器组进行筛选,获取与单位个体组合中每一个单位个体分别对应的候选服务器组。Optionally, the
可选的,该装置还包括:处理模块,用于随机将单位个体组合中的至少一个单位个体迁移到至少一个候选服务器组中的对应候选服务器组上,并刷新候选服务器组的冗余量信息。Optionally, the device further includes: a processing module configured to randomly migrate at least one unit individual in the unit individual combination to a corresponding candidate server group in the at least one candidate server group, and refresh the redundancy information of the candidate server group. .
可选的,处理模块还用于,当对整数规划模型求解结果为单位个体组合中的至少一个单位个体迁移失败时,对迁移失败的单位个体执行多阶降量操作;Optionally, the processing module is further configured to, when the result of solving the integer programming model is that at least one unit individual in the unit individual combination fails to migrate, perform a multi-order reduction operation on the unit individual that fails to migrate;
当确定单位个体组合中所有单位个体迁移成功,或者执行多阶降量的迭代次数超过预设次数阈值时结束。The process ends when it is determined that all unit individuals in the unit individual combination have successfully migrated, or the number of iterations for performing multi-order reductions exceeds a preset number of times threshold.
可选的,构建模块304还用于,根据候选服务器组、候选服务器组的冗余带宽量、单位个体组合中的每一个单位个体、以及单位个体组合中每一个单位个体对应的第一带宽量,生成与整数规划模型对应的约束条件。Optionally, the building module 304 is further configured to, according to the candidate server group, the redundant bandwidth amount of the candidate server group, each unit individual in the unit individual combination, and the first bandwidth amount corresponding to each unit individual in the unit individual combination. , which generates constraints corresponding to the integer programming model.
可选的,待迁移的单位个体组合的个数包括多个;筛选模块303还用于,当从除待迁移的服务器组之外的服务器组中,筛选与当前单位个体组合中每一个单位个体分别对应的候选服务器组失败时,重新选择新的单位个体组合,并执行从除待迁移的服务器组之外的服务器组中,筛选与新的个体组合中每一个单位个体分别对应的候选服务器组。Optionally, the number of unit-individual combinations to be migrated includes multiple; the
本发明实施例提供的带宽牵引装置中各部件所执行的功能均已在上述任一方法实施例中做了详细的描述,因此这里不再赘述。The functions performed by each component in the bandwidth pulling device provided in the embodiment of the present invention have been described in detail in any of the foregoing method embodiments, and thus are not repeated here.
本发明实施例提供的一种带宽牵引装置,确定待迁移的服务器组,待迁移服务器组中使用带宽的每一个单位个体所使用的第一带宽量,以及待迁移的服务器组待迁移的第二带宽量。然后,根据第一带宽量和第二带宽量,从待迁移服务器组中使用带宽的单位个体中,提取至少一个单位个体,构成待迁移的单位个体组合,从除待迁移的服务器组之外的服务器组中,筛选与单位个体组合中每一个单位个体分别对应的候选服务器组,然后根据候选服务器组、候选服务器组的冗余带宽量、单位个体组合,以及单位个体组合中每一个单位个体对应的第一带宽量,构建整数规划模型,并对整数规划模型进行求解,最终生成单位个体组合的迁移方案。该方法中,将带宽迁移问题转化为整数模型的求解问题,通过数学算法得到迁移方案。相较于人为手动调整带宽迁移方案,本申请实施例提供的方法能够更加方便快捷的应对比较复杂的场景。而且,本发明方法是通过一定的算法求解方式得到较优的带宽迁移方案,相较于现有技术中的穷举方式,处理速度更快,可以在有限时间进行求解。A bandwidth pulling device provided by an embodiment of the present invention determines a server group to be migrated, a first amount of bandwidth used by each unit of bandwidth used in the server group to be migrated, and a second bandwidth of the server group to be migrated to be migrated. amount of bandwidth. Then, according to the first bandwidth amount and the second bandwidth amount, extract at least one unit individual from the unit individuals using the bandwidth in the server group to be migrated to form a combination of unit individuals to be migrated, from the server group to be migrated except the server group to be migrated. In the server group, the candidate server group corresponding to each unit individual in the unit individual combination is screened, and then according to the candidate server group, the redundant bandwidth of the candidate server group, the unit individual combination, and each unit individual in the unit individual combination corresponds to The first bandwidth amount of , constructs an integer programming model, solves the integer programming model, and finally generates a migration scheme for the unit individual combination. In this method, the bandwidth migration problem is transformed into an integer model solution problem, and a migration scheme is obtained through a mathematical algorithm. Compared with the manual adjustment of the bandwidth migration scheme, the method provided by the embodiment of the present application can more conveniently and quickly deal with a relatively complex scenario. Moreover, the method of the present invention obtains a better bandwidth migration scheme through a certain algorithm solution method, and compared with the exhaustive method in the prior art, the processing speed is faster, and the solution can be performed in a limited time.
如图4所示,本申请实施例提供了一种电子设备,包括处理器111、通信接口112、存储器113和通信总线114,其中,处理器111,通信接口 112,存储器113通过通信总线114完成相互间的通信。As shown in FIG. 4 , an embodiment of the present application provides an electronic device, including a
存储器113,用于存放计算机程序;a
在本申请一个实施例中,处理器111,用于执行存储器113上所存放的程序时,实现前述任意一个方法实施例提供的带宽牵引方法,包括:In an embodiment of the present application, the
确定待迁移的服务器组,待迁移服务器组中使用带宽的每一个单位个体所使用的第一带宽量,以及待迁移的服务器组待迁移的第二带宽量;Determine the server group to be migrated, the first bandwidth amount used by each unit of bandwidth used in the server group to be migrated, and the second bandwidth amount to be migrated by the server group to be migrated;
根据第一带宽量和第二带宽量,从待迁移服务器组中使用带宽的单位个体中,选取至少一个单位个体,构成待迁移的单位个体组合;According to the first bandwidth amount and the second bandwidth amount, at least one unit individual is selected from the unit individuals using the bandwidth in the server group to be migrated to form the unit individual combination to be migrated;
从除待迁移的服务器组之外的服务器组中,筛选与单位个体组合中每一个单位个体分别对应的候选服务器组,并确定每一个候选服务器组的冗余带宽量;From the server groups other than the server group to be migrated, screen candidate server groups corresponding to each unit individual in the unit-individual combination, and determine the redundant bandwidth amount of each candidate server group;
根据候选服务器组、候选服务器组的冗余带宽量、单位个体组合中的每一个单位个体、以及单位个体组合中每一个单位个体对应的第一带宽量,构建整数规划模型;Build an integer programming model according to the candidate server group, the redundant bandwidth amount of the candidate server group, each unit individual in the unit individual combination, and the first bandwidth amount corresponding to each unit individual in the unit individual combination;
对整数规划模型进行求解,生成单位个体组合的迁移方案。Solve the integer programming model to generate the migration scheme of the unit individual combination.
可选的,当待迁移服务器组中使用带宽的单位个体中至少一个单位个体对应的第一带宽量总和大于或者等于第二带宽量时,确定至少一个单位个体构成单位个体组合。Optionally, when the sum of the first bandwidth amount corresponding to at least one unit individual in the unit individuals using bandwidth in the server group to be migrated is greater than or equal to the second bandwidth amount, it is determined that at least one unit individual constitutes a unit individual combination.
可选的,根据除待迁移的服务器组之外的服务器组中每一个服务器组的冗余承载能力和/或预配置的约束限制条件,以及单位个体组合中每一个单位个体对应的第一带宽量,对除待迁移的服务器组之外的服务器组进行筛选,获取与单位个体组合中每一个单位个体分别对应的候选服务器组。Optionally, according to the redundant carrying capacity and/or preconfigured constraints of each server group in the server group except the server group to be migrated, and the first bandwidth corresponding to each unit individual in the unit individual combination The number of server groups other than the server group to be migrated is screened, and a candidate server group corresponding to each unit individual in the unit-individual combination is obtained.
可选的,根据候选服务器组、单位个体组合、以及单位个体组合中每一个单位个体对应的第一带宽量,生成单位个体组合的迁移方案之前,方法还包括:Optionally, before generating the migration scheme for the unit-individual combination according to the candidate server group, the unit-individual combination, and the first bandwidth amount corresponding to each unit-individual in the unit-individual combination, the method further includes:
随机将单位个体组合中的至少一个单位个体迁移到至少一个候选服务器组中的对应候选服务器组上,并刷新候选服务器组的冗余量信息。Randomly migrate at least one unit individual in the unit individual combination to the corresponding candidate server group in the at least one candidate server group, and refresh the redundancy information of the candidate server group.
可选的,当对整数规划模型求解结果为单位个体组合中的至少一个单位个体迁移失败时,方法还包括:Optionally, when the result of solving the integer programming model is that at least one unit individual in the unit individual combination fails to migrate, the method further includes:
对迁移失败的单位个体执行多阶降量操作;Perform multi-order reduction operations on individual units that fail to migrate;
当确定单位个体组合中所有单位个体迁移成功,或者执行多阶降量的迭代次数超过预设次数阈值时结束。The process ends when it is determined that all unit individuals in the unit individual combination have successfully migrated, or the number of iterations for performing multi-order reductions exceeds a preset number of times threshold.
可选的,根据候选服务器组、候选服务器组的冗余带宽量、单位个体组合中的每一个单位个体、以及单位个体组合中每一个单位个体对应的第一带宽量,构建整数规划模型之后,方法还包括:Optionally, according to the candidate server group, the redundant bandwidth amount of the candidate server group, each unit individual in the unit individual combination, and the first bandwidth amount corresponding to each unit individual in the unit individual combination, after constructing the integer programming model, Methods also include:
根据候选服务器组、候选服务器组的冗余带宽量、单位个体组合中的每一个单位个体、以及单位个体组合中每一个单位个体对应的第一带宽量,生成与整数规划模型对应的约束条件。Constraints corresponding to the integer programming model are generated according to the candidate server group, the redundant bandwidth amount of the candidate server group, each unit individual in the unit individual combination, and the first bandwidth amount corresponding to each unit individual in the unit individual combination.
可选的,待迁移的单位个体组合的个数包括多个;当从除待迁移的服务器组之外的服务器组中,筛选与当前单位个体组合中每一个单位个体分别对应的候选服务器组失败时,重新选择新的单位个体组合,并执行从除待迁移的服务器组之外的服务器组中,筛选与新的个体组合中每一个单位个体分别对应的候选服务器组。Optionally, the number of unit individual combinations to be migrated includes multiple; when selecting the candidate server groups corresponding to each unit individual in the current unit individual combination from the server groups other than the server group to be migrated, it fails. When , a new unit individual combination is reselected, and a candidate server group corresponding to each unit individual in the new individual combination is selected from the server groups other than the server group to be migrated.
本申请实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现如前述任意一个方法实施例提供的带宽牵引方法的步骤。Embodiments of the present application further provide a computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, implements the steps of the bandwidth pulling method provided by any one of the foregoing method embodiments.
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。It should be noted that, in this document, relational terms such as "first" and "second" etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply these There is no such actual relationship or sequence between entities or operations. Moreover, the terms "comprising", "comprising" or any other variation thereof are intended to encompass a non-exclusive inclusion such that a process, method, article or device that includes a list of elements includes not only those elements, but also includes not explicitly listed or other elements inherent to such a process, method, article or apparatus. Without further limitation, an element qualified by the phrase "comprising a..." does not preclude the presence of additional identical elements in the process, method, article, or device that includes the element.
以上仅是本发明的具体实施方式,使本领域技术人员能够理解或实现本发明。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。The above are only specific embodiments of the present invention, so that those skilled in the art can understand or implement the present invention. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be implemented in other embodiments without departing from the spirit or scope of the invention. Thus, the present invention is not intended to be limited to the embodiments shown herein, but is to be accorded the widest scope consistent with the principles and novel features claimed herein.
Claims (10)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111608405.XA CN114448810B (en) | 2021-12-24 | 2021-12-24 | Bandwidth traction method and device and electronic equipment |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111608405.XA CN114448810B (en) | 2021-12-24 | 2021-12-24 | Bandwidth traction method and device and electronic equipment |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114448810A true CN114448810A (en) | 2022-05-06 |
CN114448810B CN114448810B (en) | 2024-07-05 |
Family
ID=81362968
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111608405.XA Active CN114448810B (en) | 2021-12-24 | 2021-12-24 | Bandwidth traction method and device and electronic equipment |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114448810B (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115208766A (en) * | 2022-07-29 | 2022-10-18 | 天翼云科技有限公司 | CDN bandwidth scheduling method and related device |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001010082A2 (en) * | 1999-07-30 | 2001-02-08 | Accenture Llp | A system, method and article of manufacture for network performance modeling |
US20120127857A1 (en) * | 2010-11-19 | 2012-05-24 | Cisco Technology, Inc. | Dynamic Queuing and Pinning to Improve Quality of Service on Uplinks in a Virtualized Environment |
CN103078906A (en) * | 2012-12-26 | 2013-05-01 | 爱迪科特(北京)科技有限公司 | Document transparent moving method |
US20130124674A1 (en) * | 2011-11-15 | 2013-05-16 | Hitachi, Ltd. | Computer system and data migration method |
US20150007178A1 (en) * | 2013-06-28 | 2015-01-01 | Kabushiki Kaisha Toshiba | Virtual machines management apparatus, virtual machines management method, and computer readable storage medium |
US20160088080A1 (en) * | 2014-09-23 | 2016-03-24 | Netapp, Inc. | Data migration preserving storage efficiency |
CN105577834A (en) * | 2016-02-06 | 2016-05-11 | 清华大学 | Cloud data center two-layer bandwidth allocation method and system with predictable performance |
CN110262845A (en) * | 2019-04-30 | 2019-09-20 | 北京邮电大学 | The enabled distributed computing task discharging method of block chain and system |
CN110413392A (en) * | 2019-07-25 | 2019-11-05 | 北京工业大学 | A method for formulating a single-task migration strategy in a mobile edge computing scenario |
CN112737854A (en) * | 2020-12-30 | 2021-04-30 | 国网河南省电力公司信息通信公司 | Service chain migration method and device based on energy consumption and service quality |
-
2021
- 2021-12-24 CN CN202111608405.XA patent/CN114448810B/en active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001010082A2 (en) * | 1999-07-30 | 2001-02-08 | Accenture Llp | A system, method and article of manufacture for network performance modeling |
US20120127857A1 (en) * | 2010-11-19 | 2012-05-24 | Cisco Technology, Inc. | Dynamic Queuing and Pinning to Improve Quality of Service on Uplinks in a Virtualized Environment |
US20130124674A1 (en) * | 2011-11-15 | 2013-05-16 | Hitachi, Ltd. | Computer system and data migration method |
CN103078906A (en) * | 2012-12-26 | 2013-05-01 | 爱迪科特(北京)科技有限公司 | Document transparent moving method |
US20150007178A1 (en) * | 2013-06-28 | 2015-01-01 | Kabushiki Kaisha Toshiba | Virtual machines management apparatus, virtual machines management method, and computer readable storage medium |
US20160088080A1 (en) * | 2014-09-23 | 2016-03-24 | Netapp, Inc. | Data migration preserving storage efficiency |
CN105577834A (en) * | 2016-02-06 | 2016-05-11 | 清华大学 | Cloud data center two-layer bandwidth allocation method and system with predictable performance |
CN110262845A (en) * | 2019-04-30 | 2019-09-20 | 北京邮电大学 | The enabled distributed computing task discharging method of block chain and system |
CN110413392A (en) * | 2019-07-25 | 2019-11-05 | 北京工业大学 | A method for formulating a single-task migration strategy in a mobile edge computing scenario |
CN112737854A (en) * | 2020-12-30 | 2021-04-30 | 国网河南省电力公司信息通信公司 | Service chain migration method and device based on energy consumption and service quality |
Non-Patent Citations (2)
Title |
---|
LIUDONG ZUO;MICHELLE M.ZHU: "Minimize Cost of Data Transfers Using Bandwidth Reservation on FPVB Paths of Dynamic HPNs", 2020 INTERNATIONAL CONFERENCE ON COMPUTING, NETWORKING AND COMMUNICATIONS, 30 March 2020 (2020-03-30) * |
李松远: "QoS感知的服务资源调度与优化研究", 中国优秀硕士学位论文数据库, 16 December 2021 (2021-12-16) * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115208766A (en) * | 2022-07-29 | 2022-10-18 | 天翼云科技有限公司 | CDN bandwidth scheduling method and related device |
CN115208766B (en) * | 2022-07-29 | 2023-11-03 | 天翼云科技有限公司 | CDN bandwidth scheduling method and related device |
Also Published As
Publication number | Publication date |
---|---|
CN114448810B (en) | 2024-07-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Gautam | Performance analysis and optimization of web proxy servers and mirror sites | |
US9633311B2 (en) | Decision tree learning | |
US8208403B2 (en) | Defining an end-to-end path for a network service | |
JP2016197431A (en) | Determination for connectivity in community | |
CN110716796A (en) | Intelligent task scheduling method and device, storage medium and electronic equipment | |
US10511484B1 (en) | Membership self-discovery in distributed computing environments | |
Aghajani et al. | The PDE method for the analysis of randomized load balancing networks | |
CN106326012B (en) | Web application cluster caching utilizes method and system | |
CN113377866B (en) | Load balancing method and device for virtualized database proxy service | |
CN110891087B (en) | A log transmission method, device, electronic device and storage medium | |
CN112241319B (en) | Method, electronic device and computer program product for balancing load | |
CN111614760A (en) | Method and device for balanced distribution access of Internet of things equipment | |
CN113282456B (en) | Data processing method and device | |
CN111654561B (en) | Method and device for determining IP address number, electronic equipment and storage medium | |
CN114448810A (en) | Bandwidth pulling method, device and electronic device | |
CN112867162B (en) | Slice resource allocation method and device | |
CN119248490A (en) | Intelligent computing power scheduling method and system based on dynamic programming | |
US20220365826A1 (en) | Allocation of heterogeneous computational resource | |
Kang et al. | A multiagent brokering protocol for supporting Grid resource discovery | |
CN118796457A (en) | Computing power measurement method, device, system, electronic device and storage medium | |
CN105323290A (en) | Content scheduling method and device based on user flow distribution feature | |
US11374869B2 (en) | Managing bandwidth based on user behavior | |
CN116962419A (en) | Method and device for generating server allocation policy, electronic equipment and storage medium | |
Xue et al. | Mining association rules for admission control and service differentiation in e‐commerce applications | |
CN108347466A (en) | A kind of date storage method and device of cloud storage system |
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 |