WO2018076973A1 - 一种负载调整方法、装置及系统 - Google Patents

一种负载调整方法、装置及系统 Download PDF

Info

Publication number
WO2018076973A1
WO2018076973A1 PCT/CN2017/102804 CN2017102804W WO2018076973A1 WO 2018076973 A1 WO2018076973 A1 WO 2018076973A1 CN 2017102804 W CN2017102804 W CN 2017102804W WO 2018076973 A1 WO2018076973 A1 WO 2018076973A1
Authority
WO
WIPO (PCT)
Prior art keywords
data block
data blocks
data
dcs
target
Prior art date
Application number
PCT/CN2017/102804
Other languages
English (en)
French (fr)
Inventor
黄凯耀
张书兵
黄泽旭
陈长青
李龙
孙艳
徐日东
Original Assignee
华为技术有限公司
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 华为技术有限公司 filed Critical 华为技术有限公司
Publication of WO2018076973A1 publication Critical patent/WO2018076973A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1461Backup scheduling policy
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]

Definitions

  • the present invention relates to the field of communications technologies, and in particular, to a load adjustment method, apparatus, and system.
  • DCs Data Centers
  • IMS IP Multimedia Subsystem
  • LTE Long Term Evolution
  • each DC can be used as a primary DC to back up the service data stored in itself in any other backup DC.
  • the service data in DC1 can be backed up in DC2, and DC2 is The service data backup is in DC3, and the service data in DC3 is backed up in DC1.
  • GTM1 in DC1 detects that its load exceeds a certain threshold, GTM1 will address any other DC address, for example, DC3.
  • the peer network element After being sent to the peer network element, the peer network element performs a service interaction with the DC3 according to the address of the DC3, and the DC3 can proxy the DC1 to perform the service request that the peer network element should originally send to the DC1.
  • the DC3 needs to obtain the corresponding service data from the DC2 when performing the above service request, that is, accessing the backup DC through the DC mode to implement load balancing between the DCs.
  • Embodiments of the present invention provide a load adjustment method, apparatus, and system, which can reduce problems such as packet loss or surge caused by accessing data across DCs.
  • an embodiment of the present invention provides a load adjustment method, including: monitoring a load value of each DC of a plurality of DCs, where each DC includes at least one data block; and if a load value of the first DC is the second The difference between the load values of the DCs is greater than the threshold value, and the target data block in which the first DC is moved to the second DC is determined, and the primary DCs of the target data blocks are all the first DCs, and the backup DCs of the target data blocks are all a second DC, the load value of the first DC is greater than the load value of the second DC, the first DC and the second DC are two DCs that are different from the plurality of DCs; and the target data block is in the data block distribution table Active and standby DC relationship After the switching, the primary DC of the target data block is the second DC, and the backup DC of the target data block is the first DC, and the active/standby DC relationship of each data block is recorded in the data block distribution table; The block distribution table is sent to the first DC, so that
  • the second DC ie, the new primary DC
  • the second DC itself stores the service data of the target user equipment. Therefore, the second DC can directly process the service request according to the service data, thereby avoiding data passing through the DC.
  • the access operation obtains the problem of business data, thereby reducing the risk of packet loss or surge caused by data access across DCs.
  • the method before monitoring the load value of each of the plurality of DCs, the method further includes: determining, for each data block in each of the plurality of DCs, a primary DC sum of the data block The DC is backed up to obtain the primary and backup DC relationships of the data block to establish the data block distribution table.
  • determining a primary DC and a backup DC of the data block includes: acquiring a quantity of SCUs in each of the plurality of DCs; calculating each DC according to the number of SCUs in each DC a weight value, wherein the weight value of the DC is: a ratio of the number of SCUs in the DC to the sum of the number of SCUs in all DCs; when the primary DC is allocated for the data block, the DC is allocated for each DC The ratio of the number of data blocks of the primary DC to the weight value of the DC as the first relative weight value of the DC; when the backup DC is allocated for the data block, for each DC, the backup DC is allocated in the DC The number of data blocks, the ratio of the weight value of the DC, as the second relative weight value of the DC; the DC with the smallest relative weight value as the primary DC of the data block; in addition to the main block of the data block In the DC other than the DC, the DC having the second relative weight value is the backup DC of the data block.
  • the data block distribution table further includes a replacement identifier of each data block, where the replacement identifier is used to indicate that the active/standby DC relationship of the data block has a history switching record; wherein, determining the first DC
  • the target data block moved to the second DC includes: determining that the number of target data blocks that the first DC migrates to the second DC is M, M ⁇ 1; the primary DC is the first DC, and the backup DC is the second DC
  • the X data blocks carrying the replacement identifier are determined, X ⁇ 0; if X ⁇ M, the M data blocks are selected in the X data blocks as the data moved by the first DC to the second DC.
  • MX data blocks except the X data blocks are selected, and the X data blocks and the The MX data blocks serve as data blocks that the first DC migrates to the second DC. That is to say, when the M target data blocks are selected, the data block in which the primary DC having the history switching record is the first DC and the backup DC is the second DC is preferentially selected, so that the data block distribution table maintains the data block distribution as much as possible. Active/standby DC relationship at the time of the table.
  • determining the number of target data blocks that the first DC migrates to the second DC is M, including: counting the number of data blocks that have been occupied by the multiple DCs; calculating the first DC and the second The number of theoretical data blocks of the DC, the number of theoretical data blocks of the first DC is: the product of the weight value of the first DC and the number of data blocks that have been occupied, and the number of theoretical data blocks of the second DC: the weight value of the second DC a product of the number of data blocks that have been occupied; a first difference between the number of actual data blocks in the first DC and the number of theoretical data blocks, and a second difference between the number of actual data blocks in the second DC and the number of theoretical data blocks And determining, according to the first difference value and the second difference value, a number M of data blocks in which the first DC is moved to the second DC, and M is smaller than a minimum value of the first difference value and the second difference value.
  • a data table of each DC records a correspondence between each registered user equipment and a unique data block, where the data table is used to store service data of each user equipment;
  • the statistics of the number of data blocks that have been occupied by the multiple DCs include: sending a statistical indication to each DC, so that the DC receiving the statistical indication is based on the registered each user equipment and a unique data block.
  • determining the number of data blocks occupied by the user equipment in the DC determining the number of data blocks occupied by the user equipment in the DC; receiving the number of data blocks occupied by the user equipment in the DC sent by each DC, and obtaining the number of data blocks in the multiple DCs The number of occupied data blocks.
  • an embodiment of the present invention provides a load adjustment method, including: monitoring a load value of each DC of a plurality of DCs; if a difference between a load value of the first DC and a load value of the second DC is greater than The threshold is used to determine the number of target user equipments that the first DC migrates to the second DC.
  • the primary DCs of the target user equipment are all the first DCs, and the backup DCs of the target user equipments are all the second DCs.
  • the load value is greater than the load value of the second DC, the first DC and the second DC are two DCs that are different from the plurality of DCs; the number of the target user equipment is sent to the first DC, so that the first DC The service of the target user equipment is switched to the second DC.
  • the second DC can directly process the service request according to the service data, thereby avoiding data passing through the DC.
  • the access operation obtains the problem of business data, thereby reducing the risk of packet loss or surge caused by data access across DCs.
  • the method before monitoring the load value of each of the plurality of DCs, the method further includes: acquiring the number of SCUs in each of the plurality of DCs; calculating according to the number of SCUs in each DC a weight value of each DC, wherein the weight value of the DC is: a ratio of the number of SCUs in the DC to the sum of the number of SCUs in all DCs; the weight value of each DC is sent to the first DC, so that the first The DC selects a backup DC according to the user equipment whose registration is performed according to the weight value of each DC.
  • determining the number of target user equipments that the first DC migrates to the second DC including: counting the total amount of the user equipments that have been registered in the multiple DCs; calculating the first DC and the second
  • the number of theoretical user equipments of the DC, the number of theoretical user equipments of the first DC is: the product of the weight value of the first DC and the total amount of the user equipment
  • the number of theoretical data blocks of the second DC is: the weight value of the second DC and a product of the total amount of the user equipment
  • each DC includes at least one data block, and each DC stores a data block distribution table in which an active/standby DC relationship of each data block is recorded;
  • the method further includes: determining, by the first DC, the target data blocks moved to the second DC according to the number of the target user equipments and the data block distribution table, the target The primary DC of the data block is the first DC, and the backup DC of the target data block is the second DC; the first DC switches the active/standby DC relationship of the target data block in the data block distribution table, and the switch The primary DC of the target data block is the second DC, and the backup DC of the target data block is the first DC. That is to say, the GSC node can trigger the corresponding DC to perform load adjustment in units of user equipment, and the DC can follow the management method of the above data block distribution table to implement load adjustment between DCs in units of data blocks.
  • an embodiment of the present invention provides a GSC node, including: a monitoring unit, configured to monitor a load value of each DC of the multiple DCs, where each DC includes at least one data block; and a determining unit, if The difference between the load value of the first DC and the load value of the second DC is greater than a threshold, and determining a target data block that the first DC migrates to the second DC, where the primary DC of the target data block is the first DC.
  • the backup DC of the target data block is the second DC, the load value of the first DC is greater than the load value of the second DC, and the first DC and the second DC are two DCs different from the plurality of DCs;
  • the switching unit The main DC of the target data block is switched in the data block distribution table, and the primary DC of the target data block is the second DC, and the backup DC of the target data block is the first DC, and the data block is
  • the distribution table records the active/standby DC relationship of each data block;
  • the sending unit is configured to send the data block distribution table to the first DC, so that the first DC switches the service carried by the target data block to the second DC. .
  • the determining unit is further configured to: determine, for each data block in each of the plurality of DCs, a primary DC and a backup DC of the data block, to obtain a master of the data block. Prepare a DC relationship to establish the data block distribution table.
  • the GSC node further includes an obtaining unit and a calculating unit, where the acquiring unit is configured to acquire the number of SCUs in each of the plurality of DCs; the calculating unit is configured to The number of SCUs in the DC, the weight value of each DC is calculated, wherein the weight value of the DC is: a ratio of the number of SCUs in the DC to the sum of the number of SCUs in all DCs; the determining unit is specifically configured to: When the primary DC is allocated to the data block, for each DC, the ratio of the number of data blocks of the primary DC allocated to the DC to the weight value of the DC is used as the first relative weight value of the DC; When the data block allocates the backup DC, for each DC, the ratio of the number of data blocks of the backup DC allocated to the DC to the weight value of the DC is used as the second relative weight value of the DC; the first relative weight is to be used.
  • the DC with the smallest value is the primary DC of the data block; in the DC other than the primary DC
  • the data block distribution table further includes a replacement identifier of each data block, where the replacement identifier is used to indicate that a history switching record exists in the active/standby DC relationship of the data block;
  • the determining, by the first DC, the number of target data blocks to be migrated to the second DC is M, M ⁇ 1; in the data block where the primary DC is the first DC and the backup DC is the second DC, determining that the replacement identifier is carried X data blocks, X ⁇ 0; if X ⁇ M, select M data blocks in the X data blocks as data blocks to which the first DC is moved to the second DC; if X ⁇ M, then in the main DC
  • the backup DC is a data block of the second DC, selecting MX data blocks except the X data blocks, and using the X data blocks and the MX data blocks as the first DC to the second The data block into which the DC is moved.
  • the acquiring unit is further configured to count the number of data blocks that have been occupied by the plurality of DCs; the calculating unit is further configured to: calculate the number of theoretical data blocks of the first DC and the second DC
  • the number of theoretical data blocks of the first DC is: the product of the weight value of the first DC and the number of data blocks that have been occupied, and the number of theoretical data blocks of the second DC: the weight value of the second DC and the occupied data.
  • a data table of each DC records a correspondence between each registered user equipment and a unique data block, where the data table is used to store service data of each user equipment;
  • the sending unit is further configured to: send a statistical indication to each DC, so that the DC that receives the statistical indication determines the user in the DC according to the correspondence between each registered user equipment and a unique data block.
  • the acquiring unit is further configured to: receive the number of data blocks occupied by the user equipment in the DC sent by each DC, and obtain the number of data blocks that have been occupied by the multiple DCs.
  • an embodiment of the present invention provides a GSC node, including: a monitoring unit, configured to monitor a load value of each DC of the plurality of DCs; and a determining unit, configured to: if the load value of the first DC and the second DC The difference between the load values is greater than the threshold, and the number of target user equipments that the first DC migrates to the second DC is determined.
  • the primary DCs of the target user equipment are all the first DC, and the backup DCs of the target user equipment are both For the second DC, the load value of the first DC is greater than the load value of the second DC, the first DC and the second DC are two DCs that are different from the plurality of DCs; and the sending unit is configured to use the target user equipment The quantity is sent to the first DC such that the first DC switches the traffic of the target user equipment to the second DC.
  • the GSC node further includes an obtaining unit and a calculating unit, where the acquiring unit is configured to acquire the number of SCUs in each of the plurality of DCs; the calculating unit is configured to The number of SCUs in the DC, the weight value of each DC is calculated, wherein the weight value of the DC is: the number of SCUs in the DC and the number of SCUs in all DCs The ratio of the sum of the sums; the determining unit is further configured to send the weight value of each DC to the first DC, so that the first DC selects the backup DC according to the user equipment whose registration is performed according to the weight value of each DC.
  • the acquiring unit is further configured to count the total amount of user equipments that have been registered in the plurality of DCs; the calculating unit is further configured to: calculate a theoretical user of the first DC and the second DC
  • the number of devices, the number of theoretical user equipments of the first DC is: the product of the weight value of the first DC and the total amount of the user equipment, and the number of theoretical data blocks of the second DC is: the weight value of the second DC and the user equipment a product of the total amount; a first difference between the actual number of user equipments in the first DC and the number of target user equipments, and a second difference between the actual number of user equipments in the second DC and the number of target user equipments; And determining, according to the first difference value and the second difference value, M target user equipments that the first DC moves into the second DC, where M is smaller than a minimum value of the first difference value and the second difference value, M ⁇ 1.
  • an embodiment of the present invention provides a GSC node, including: a processor, a memory, a bus, and a communication interface; the memory is configured to store a computer execution instruction, and the processor is connected to the memory through the bus, when the GSC When the node is running, the processor executes the computer-executed instruction stored in the memory to cause the GSC node to perform the load adjustment method described in any of the above.
  • an embodiment of the present invention provides a load adjustment system, including the GSC node according to any one of the above, and a plurality of DCs connected to the GSC node.
  • an embodiment of the present invention provides a computer storage medium for storing computer software instructions used by the GSC node, which includes a program designed to execute the above aspects for the node.
  • the names of the GSC nodes and the load adjustment system are not limited to the devices themselves. In actual implementation, these devices may appear under other names. As long as the functions of the respective devices are similar to the present invention, they are within the scope of the claims and the equivalents thereof.
  • FIG. 1 is a schematic diagram of an application scenario for performing load adjustment in the prior art
  • FIG. 2 is a schematic structural diagram 1 of a load adjustment system according to an embodiment of the present invention.
  • FIG. 3 is a schematic structural diagram 2 of a load adjustment system according to an embodiment of the present disclosure.
  • FIG. 4 is a schematic flowchart of a method for establishing a data block distribution table according to an embodiment of the present invention
  • FIG. 5 is a schematic flowchart 1 of a load adjustment method according to an embodiment of the present disclosure
  • FIG. 6 is a schematic flowchart of a method for determining a master-slave DC pair according to an embodiment of the present disclosure
  • FIG. 7 is a second schematic flowchart of a load adjustment method according to an embodiment of the present disclosure.
  • FIG. 8 is a schematic structural diagram of an NFV system according to an embodiment of the present invention.
  • FIG. 9 is a schematic structural diagram 1 of a GSC node according to an embodiment of the present disclosure.
  • FIG. 10 is a schematic structural diagram 2 of a GSC node according to an embodiment of the present disclosure.
  • FIG. 11 is a schematic structural diagram 3 of a GSC node according to an embodiment of the present invention.
  • first and second are used for descriptive purposes only, and are not to be construed as indicating or implying a relative importance or implicitly indicating the number of technical features indicated. Thus, features defining “first” and “second” may include one or more of the features either explicitly or implicitly. In the description of the present invention, "a plurality” means two or more unless otherwise stated.
  • Embodiments of the present invention provide a load adjustment method applicable to the load adjustment system 100 shown in FIG. 2, the load adjustment system 100 including N DCs 21, and each of the N DCs 21 A connected GSC (Global Service Control) node 22.
  • GSC Global Service Control
  • the GSC node 22 can be used to detect the load of each DC 21, and trigger the corresponding DC to manage the data distribution in the database according to the detected load value, or the GSC node 22 can also directly detect the detected data.
  • the load value manages the data distribution in the database of the corresponding DC to achieve load balancing between the N DCs 21.
  • the GSC node 22 may be integrated into any DC 21 as a functional component, or may be connected to each DC 21 as a separate physical device, which is not limited in this embodiment of the present invention.
  • each DC 21 may include multiple data blocks. As shown in FIG. 3, 8 data blocks in DC1 may be backed up to DC2 and DC3 respectively, wherein 4 data blocks are backed up in DC2. The remaining 4 data blocks are backed up in DC3, that is, the data in each DC 21 can be backed up to other N-1 DCs 21 in units of data blocks.
  • each data block corresponds to a group of primary DCs and backup DCs.
  • the primary and backup DC relationships of the data block 1 are: the primary DC is DC1, and the backup DC is DC2.
  • the GSC node 22 can manage the data in each DC 21 in units of data blocks.
  • the load value of a certain DC 21 is greater than a preset threshold, the GSC node 22 can one or more of the DCs 21 The active/standby DC relationship of the data block is switched.
  • the primary and backup DC relationships of the data block 1 are switched to: the primary DC is DC2, the backup DC is DC1, and the primary and backup DC relationships of the switched data block 1 are sent to DC1, in this way, when the subsequent DC1 receives the service request of the user equipment (ie, the target user equipment) belonging to the data block 1, the service request can be changed to DC2 according to the active/standby DC relationship of the switched data block 1, and
  • the backup of the data block 1 is stored in the DC2, that is, the service data of the target user equipment is stored in the DC2. Therefore, the DC2 can directly process the service request according to the service data, thereby avoiding obtaining the service through the data access operation across the DC. Data issues that reduce the risk of packet loss or surges caused by data access across DCs.
  • the GSC node 22 can manage and maintain the active/standby DC relationship of each data block through the data block distribution table.
  • the data table distribution table records the active/standby DC relationship of each data block, GSC.
  • the node 22 may send the data block distribution table to each DC, so that each DC searches for the primary DC and the backup DC of each data block according to the data block distribution table; further, as shown in Table 2, taking DC1 as an example.
  • the data table of each DC records the correspondence between each data block-user equipment-service data with the DC as the primary DC, and the user equipment may be idle during the registration process to the primary DC.
  • the data block is allocated to the user equipment, and since each DC has the data block distribution table sent by the GSC node 22 (as shown in Table 1), each DC can determine the user equipment in the DC-data.
  • User equipment data block Business data User equipment 1 Data block 1 User equipment 1 business data User equipment 2 Data block 1 User equipment 2 business data User equipment 3 Data block 2 User data of user equipment 3
  • the service data generated by the user equipment during the registration and subsequent service interaction may change, the data of each data block in the primary DC and the backup DC needs to be synchronized, and the specific data synchronization method
  • the embodiment of the present invention does not impose any limitation on the one-way data replication process or the two-way data replication process in the prior art.
  • a flowchart of a method for establishing a data block distribution table according to an embodiment of the present invention includes:
  • the GSC node acquires the number of SCUs (Session Control Units) in each of the N DCs.
  • an OMU Operaation and Maintenance Unit
  • the OMU is used to maintain data information of the SCU in the DC. Therefore, the GSC node can obtain the DC from the OMU of each DC.
  • the GSC node calculates a weight value of each DC according to the number of SCUs in each DC.
  • the weight value of any one of the DCs is the ratio of the number of SCUs in the DC to the sum of the number of SCUs in all DCs.
  • DC1 includes 20 SCUs
  • DC2 includes 30 SCUs
  • DC3 includes 50 SCUs
  • the GSC node uses the ratio of the number of data blocks of the primary DC allocated to the DC to the weight value of the DC as the first relative weight value of the DC.
  • the GSC node uses the ratio of the number of data blocks of the backup DC allocated to the DC to the weight value of the DC as the second relative weight value of the DC.
  • the GSC node uses the DC with the smallest relative weight value as the primary DC of the data block.
  • the GSC node selects, as the backup DC of the data block, a DC having a second relative weight value other than the determined primary DC.
  • step 102 the example in step 102 is still used.
  • the primary and backup DC relationships are assigned to the first data block, the number of data blocks in each DC that has been assigned the active/standby DC relationship is 0. Therefore, each The first relative weight value and the second relative weight value of the DC are both 0.
  • any DC can be used as the primary DC of the first data block, for example, DC1 is used as the primary DC of the first data block.
  • the second relative weight values of DC2 and DC3 except DC1 are both 0. Therefore, DC2 or DC3 can be used as the backup DC of the first data block, for example, DC2 is used as the backup DC of the first data block.
  • the method for selecting the primary DC and the backup DC of the Xth (X>2) data block may refer to the selection method of the primary DC and the backup DC of the second data block, and therefore will not be described herein.
  • the GSC node can determine a primary DC and a backup DC for each data block, that is, determine the primary and backup DC relationships of the data block for each data block, and finally obtain the data blocks as shown in Table 1. Distribution table.
  • a flowchart of a load adjustment method according to an embodiment of the present invention includes:
  • the GSC node monitors a load value of each of the N DCs.
  • each DC may have a function of calculating its own load value, so that the GSC node can directly obtain the load value of the DC from each DC; or, the GSC node can acquire the KPI of the DC from each DC ( Key Performance Indicator, information, and then calculate the DC load value based on the KPI information of the DC.
  • KPI Key Performance Indicator
  • the GSC node determines a target data block in which the first DC moves to the second DC, and the primary DC of the target data block is the first A DC, the backup DC of the target data block is the second DC.
  • the GSC node performs the switching of the active/standby DC relationship of the target data block in the data block distribution table. After the switching, the primary DC of the target data block is the second DC, and the backup DC of the target data block is the first DC.
  • the target data block may be one or more data blocks, and the load value of the first DC is greater than the load value of the second DC, and the first DC and the second DC are two DCs that are different from the N DCs.
  • step 203 if the difference between the load value of the first DC and the load value of the second DC is greater than a threshold, for example, the load of the first DC in consecutive Y (Y>1) monitoring periods
  • a threshold for example, the load of the first DC in consecutive Y (Y>1) monitoring periods
  • the difference between the value and the load value of the second DC is greater than 35%, indicating that the load between the first DC and the second DC is unbalanced, that is, the load value of the first DC is higher, and the load of the second DC is higher.
  • the value is lower. Therefore, the service carried by one or more data blocks in the first DC can be switched to the second DC.
  • the data block where the primary DC is the first DC and the backup DC is the second DC. Select a certain number of data blocks as the above target data blocks.
  • the GSC node in the data block distribution table shown in Table 1 reverses the active/standby DC relationship of the target data block.
  • the primary DC of the target data block is the second DC
  • the backup DC of the target data block is the first DC.
  • the service request may be forwarded according to the switched data block distribution table to The new primary DC, that is, the second DC, and the second DC itself backs up the target data block, that is, the service data of the target user equipment is backed up. Therefore, the corresponding network element in the second DC does not need to pass the cross-DC access operation.
  • the service request can be directly executed, and the load value of the first DC is reduced.
  • the data block distribution table may further include a replacement identifier of each data block, where the replacement identifier is used to indicate that the active/standby DC relationship of the data block has a history switching record, as shown in Table 3, when the replacement identifier is 0, Indicates that there is no history switching record in the active/standby DC relationship of the data block. When the replacement identifier is 1, it indicates that there is a history switching record in the active/standby DC relationship of the data block. Then, the active/standby DC relationship of the historical switching record is switched back. You can make the data block distribution table maintain the primary and backup DC relationships when the data block distribution table is just created.
  • the target data block to which the first DC migrates to the second DC first, it may be determined that the number of target data blocks into which the first DC migrates to the second DC is M, M ⁇ 1; and further, at the primary DC For the first DC, the backup DC is the data block of the second DC, and the X data blocks carrying the replacement identifier are determined, X ⁇ 0; then, when X ⁇ M, then M of the X data blocks are selected.
  • the data block is used as a data block to which the first DC migrates to the second DC; when X ⁇ M, the data block in which the primary DC is the first DC and the backup DC is the second DC is selected except the X data blocks.
  • MX data blocks, and the above X data blocks and MX data blocks are selected as data blocks to which the first DC is moved to the second DC, that is, when M target data blocks are selected, the existence history is preferentially selected.
  • the primary DC of the switched record is the first DC and the backup DC is the data block of the second DC.
  • determining the number of the target data blocks to which the first DC is moved to the second DC is M, which may specifically include the following steps:
  • the GSC node counts the number of data blocks that have been occupied by the N DCs.
  • the GSC node may send a statistical indication to each DC, so that the DC that receives the statistical indication may determine the DC within the DC according to the correspondence between each registered user equipment and the data block shown in Table 2.
  • the number of data blocks occupied by the user equipment, and the number of data blocks occupied by the user equipment in the DC is reported to the GSC node; thus, the GSC node can receive the number of data blocks occupied by the user equipment in the DC sent by each DC, and finally The number of data blocks Z and Z ⁇ 0 that have been occupied in the N DCs can be counted.
  • the GSC node calculates the number of theoretical data blocks of the first DC and the second DC.
  • the number of theoretical data blocks of the first DC, Z1 (Z1 ⁇ 0) is the product of the weight value of the first DC and the number of data blocks that have been occupied.
  • the number of theoretical data blocks of the second DC Z2 (Z2 ⁇ 0) is the product of the weight value of the second DC and the number of data blocks already occupied.
  • the above theoretical data block number can be used to indicate the number of data blocks that should be present when idealized load balancing is achieved between N DCs.
  • the GSC node calculates a first difference between the number of actual data blocks in the first DC and the number of theoretical data blocks, and a second difference between the number of actual data blocks in the second DC and the number of theoretical data blocks.
  • step 303 the number of data blocks that need to be migrated in the first DC (ie, the first difference value) and the number of data blocks that can be received in the second DC (ie, the second difference value) can be calculated.
  • the GSC node determines, according to the first difference value and the second difference value, the number M of data blocks that the first DC moves into the second DC, and M is smaller than a minimum value of the first difference and the second difference.
  • the target data block can be moved into multiple DCs at the same time.
  • the first DC can simultaneously move a certain number of target data blocks to the second DC and the third DC.
  • the method for the target data block to which the first DC migrates to the third DC is the same as the method for the target data block to which the first DC migrates to the second DC, and therefore is not described herein again.
  • the GSC node sends the data block distribution table to the first DC, so that the first DC switches the service carried by the target data block to the second DC.
  • the GSC node sends the data block distribution table after the active/standby DC relationship switching to the first DC, so that the corresponding network element in the first DC, for example, the P-CSCF in the first DC (Proxy-Call Session Control Funct)
  • the node may directly forward the new call service request to the second DC according to the data block distribution table, and the P-CSCF in the second DC
  • the node performs the new call service request according to the service data of the target user equipment, so that the load balancing between the DCs is realized, and the problem of acquiring the service data by the data access operation across the DC is avoided, thereby reducing the data access due to the cross-DC. Risks such as lost packets or surges.
  • one data block is a set of user equipments with the same primary and backup DC relationships, and another possible implementation.
  • load adjustment may be performed at a granularity for user equipments having the same active/standby DC relationship.
  • the load adjustment method with the granularity of the user equipment having the same active/standby DC relationship is still applicable to the load adjustment system 100 shown in FIG. 2, and the services of different user equipments in each DC 21 can still be used.
  • the data is backed up to other N-1 DCs 21 respectively.
  • each user equipment belongs to one active/standby DC pair.
  • the GSC node 22 can maintain the active/standby DC relationship of each active/standby DC pair, and each DC maintains a correspondence between the active and standby DC pairs with the DC as the primary DC and the user equipment.
  • the GSC node 22 can manage the data in each DC 21 in units of active and standby DC pairs.
  • a DC for example, DC1 above
  • the GSC node 22 only needs to be slaved from the master.
  • DC is DC1
  • backup DC The number of target user equipments to be migrated M (M ⁇ 1) may be determined for the user equipment of the DC2. Further, the GSC node 22 sends the number M of the target user equipment to the DC1, and subsequently, the DC1 receives the service of any user equipment.
  • the backup DC corresponding to the user equipment is determined to be DC2 according to the correspondence between the active and standby DC pairs and the user equipment.
  • the user equipment is a target user equipment. If the number of the target user equipment is less than M, the DC1 can directly forward the service request to the DC2. Since the service data of the target user equipment is stored in the DC2, the DC2 can directly process the service request according to the service data. The problem of obtaining business data through data access operations across DCs is avoided, thereby reducing risks such as packet loss or surge caused by data access across DCs.
  • the GSC node 22 does not need to determine the data block to which the user equipment belongs, and maintains And managing the data block distribution table, when performing load adjustment, it is also unnecessary to change the primary and backup DC relationships of the data block, and directly send the number of target user equipments to the DC that needs to adjust the load, thereby reducing the GSC node. 22 The complexity in implementing load adjustment.
  • FIG. 6 is a schematic flowchart of a method for determining a primary-slave DC pair according to an embodiment of the present invention. Methods include:
  • the GSC node acquires the number of SCUs in each of the N DCs.
  • the GSC node calculates a weight value of each DC according to the number of SCUs in each DC, where the weight value of the DC is: a ratio of the number of SCUs in the DC to the sum of the number of SCUs in all DCs.
  • the GSC node separately sends the weight value of each DC to each DC, so that each DC selects the backup DC according to the user equipment whose registration is performed according to the weight value of each DC.
  • the GSC node may directly send the weight value of each DC to each of the N DCs, such that any subsequent user equipments to the first DC (the first DC is N of the DCs)
  • the first DC may select the DC with the smallest weight value as the backup DC of the user equipment according to the weight value of each DC, and use the first DC as the primary DC of the user equipment, thereby determining the user.
  • the active/standby DC pair of the device can be synchronized with the service data of the user equipment in the active/standby DC pair.
  • the determining method of the active/standby DC pair provided in steps 401-403 only needs to separately send the weight value of each DC.
  • the DCs themselves determine the active and standby DC pairs to which they belong to the user equipment.
  • a flowchart of a load adjustment method according to an embodiment of the present invention includes:
  • the 501, GSC node monitors the load value of each of the N DCs.
  • the GSC node determines the number of target user equipments that the first DC migrates to the second DC.
  • the target user equipment may be one or more, the primary DC of the target user equipment is the first DC, and the backup DC of the target user equipment is the second DC, and the load value of the first DC is greater than the load value of the second DC. And the first DC and the second DC are two DCs that are different from the N DCs.
  • an embodiment of the present invention provides a specific method for determining a target user equipment to which a first DC moves to a second DC, where the method includes the following steps:
  • the GSC node counts the total number of user equipments registered in the N DCs.
  • the GSC node calculates a number of theoretical user equipments of the first DC and the second DC.
  • the number of theoretical user equipments of the first DC is: a product of a weight value of the first DC and a total amount of the user equipment, and a theoretical user equipment of the second DC.
  • the quantity is the product of the weight value of the second DC and the total amount of user equipment.
  • the above theoretical number of user equipment can be used to indicate the number of user equipments that should be present when idealized load balancing is achieved between N DCs.
  • the GSC node calculates a first difference between the actual number of user equipments in the first DC and the number of target user equipments, and a second difference between the actual number of user equipments in the second DC and the number of target user equipments.
  • step 603 the number of user equipments that need to be migrated in the first DC (ie, the first difference) and the number of user equipments that can be received in the second DC (ie, the second difference) can be calculated.
  • the GSC node determines, according to the first difference and the second difference, the M target user equipments that the first DC migrates to the second DC, where M is smaller than a minimum value of the first difference and the second difference, where M ⁇ 1.
  • the first DC that is loaded with a higher load can be moved to the target user equipment in multiple DCs at the same time, for example, the first DC.
  • the method of determining that the first DC and the third DC move to the target user equipment, and the method of determining the target user equipment moved by the first DC to the third DC, and the target of moving the first DC to the second DC The method of the user equipment is the same, so it will not be described here.
  • the GSC node sends the number M of the target user equipment to the first DC.
  • the first DC determines the M target user equipments, and switches the service of each target user equipment to the second DC.
  • the GSC node sends the number M of the target user equipment to the first DC, so that the corresponding network element in the first DC, for example, the P-CSCF node in the first DC receives the new call service of any of the foregoing user equipments.
  • the new call service request may be directly forwarded to the second DC, and the P-CSCF node in the second DC according to the target user equipment that has been backed up.
  • the service data performs the new call service request, so that the load balancing between DCs is realized, and the problem of obtaining service data by data access operation across DCs is avoided, thereby reducing packet loss caused by data access across DCs or Surge and other risks.
  • the GSC node 22 manages the data in each DC 21 in units of data blocks to realize load adjustment between DCs; and, the GSC node 22 takes the active/standby DC pair as Unit, a scheme for managing data within each DC 21 to implement load adjustment between DCs.
  • the GSC node 22 may trigger the corresponding DC 21 for load adjustment in units of user equipment, and the DC 21 may follow the management method of the above data block distribution table. Load adjustment between DCs is implemented in units of data blocks.
  • the GSC node 22 may manage and maintain the active/standby DC relationship of each data block through the data block distribution table (as shown in Table 1).
  • the DC may be used by the DC. 21 Manage and maintain the active/standby DC relationship of each data block through the data block distribution table.
  • the data block distribution table is stored in each of the DCs 21, and the data block distribution table may be synchronously updated between the DCs, and the active/standby DC relationship of each data block is recorded in the data block distribution table;
  • the GSC node 22 can still send the determined number of target user equipments that need to be adjusted to the first DC according to the foregoing steps 501-503, except that the target DCs are received at the first DC. After the quantity M, it can be further executed. Steps 701-702 are described.
  • the first DC determines, according to the number M of target user equipments, a target data block to be moved to the second DC.
  • the target data block may be one or more data blocks, and the primary DC of the target data block is the first DC, and the backup DC of the target data block is the second DC.
  • the first DC performs the switching of the active/standby DC relationship of the target data block in the data block distribution table. After the switching, the primary DC of the target data block is the second DC, and the backup DC of the target data block is the first DC.
  • the first DC may perform the switching of the active/standby DC relationship of the target data block in the data block distribution table shown in Table 1. After the switching, the primary DC of the target data block is the second DC, and the target data block is The backup DC is the first DC.
  • the first DC may forward the service request to the new primary DC, that is, the second DC, according to the switched data block distribution table.
  • the second DC is backed up with the target data block, that is, the service data of the target user equipment is backed up. Therefore, the corresponding network element in the second DC does not need to obtain the service data of the target user equipment by using the cross-DC access operation.
  • the service request can be directly executed while reducing the load value of the first DC.
  • the load adjustment system 100 and the method for adjusting the load may be applied to the IMS network, and may also be applied to the LTE network.
  • the load adjustment system 100 is applied to the IMS network, one or more P-CSCF nodes, S-CSCF (Serving-Call Session Control Function) nodes, or ASs (Application Server) may be disposed in each DC 21.
  • Network element such as the application server; when the load adjustment system 100 is applied to the LTE network, one or more RAN (Residential Access Network) nodes and MME (Mobility Management Entity) may be set in each DC 21 , a mobile management node function, a network element such as a SGW (Serving Gateway) or a PGW (Packet Data Network Gateway).
  • RAN Remote Access Network
  • MME Mobility Management Entity
  • the registration process of the user equipment in the EPC (Evolved Packet Core, 4G core network) network is taken as an example.
  • the GSC node 22 may send the data block distribution table to each network element, for example, The MME sends a corresponding SGW and a PGW (for example, SGW1 and PGW1) to the user equipment, and then, after the SGW1 sends a bearer setup request to the PGW1, the MME sends an attach request to the core network.
  • the PGW 1 may allocate an unoccupied data block in the data block distribution table, for example, the data block 1, to the user equipment, that is, for the PGW1, the user equipment, the data block 1, and the main body of the data block 1 are established. Corresponding relationships between the DCs are prepared, and the identifier of the data block 1 is carried in the response of the bearer setup request to the SGW1, and the subsequent attach procedure is completed.
  • the user equipment may be in accordance with the load adjustment method shown in the foregoing steps 201-204.
  • the service is switched to the backup DC of the above data block.
  • the GSC node 22 performs the switching of the primary and secondary DC relationships of the data block 1 in the data block distribution table, and sends the converted data block distribution table to the PGW1.
  • the identifier of the data block 1 may be carried in the service request, so that the PGW 1 may determine the new primary DC of the data block 1 from the data block distribution table according to the identifier of the data block 1 (ie, The backup DC before switching, and then send the service request to the PGW2 in the new primary DC, and the new primary DC has been backed up for the above use.
  • the service data of the user equipment Therefore, after the service of the user equipment is switched to the new primary DC, the data access operation across the DC is not caused, thereby reducing risks such as packet loss or surge caused by data access across the DC.
  • any node can obtain the identifier of the data block allocated by the backend node by using the foregoing registration method.
  • the user equipment can obtain the identifier of the data block corresponding to the MME sent by the MME, and the MME can obtain the SGW sent by the SGW.
  • the identifier of the corresponding data block so that each stage back-end node can carry the identifier of the obtained data block in the service request, and then the back-end node according to the front-end node that interacts with the load adjustment
  • the identifier of the data block forwards the service request to the new primary DC after the active/standby relationship is switched.
  • the load adjustment system 100 and the arbitrary load adjustment method provided in the foregoing embodiments may also be applied to an NFV (network function virtualization) system as shown in FIG. 8, where the NFV system includes: Network function virtualization orchestrator (NFVO), virtualized network function manager (VNFM), virtualized infrastructure manager (VIM), operations support system (OSS) Or a business support system (BSS), an element manager (EM), a VNF node, or a network function virtualization infrastructure (NFVI).
  • NFVO Network function virtualization orchestrator
  • VNFM virtualized network function manager
  • VIP virtualized infrastructure manager
  • OSS operations support system
  • BSS business support system
  • EM element manager
  • VNF node a VNF node
  • NFVI network function virtualization infrastructure
  • NFVO NFV management and orchestration
  • NFV-MANO NFV management and orchestration domain
  • NFV-MANO NFV management and orchestration domain
  • VNFM is responsible for lifecycle management of VNF instances, such as instantiation, expansion/contraction, query, update, and termination
  • VIM is the management portal for infrastructure and resources, providing resource management for VNF instances, including providing a foundation for VNF instances.
  • NFVO can perform operations such as operation, management, and coordination of VIM, and NFVO can be connected to all VIMs and VNFMs in the NFV system.
  • a GSC node 22 may be added in a conventional NFV system, and the GSC node 22 may be specifically deployed on a VNF, NFV-MANO, EM, or an independent network node.
  • Each DC 21 can be operated on one or more VNFs by using virtualization technology. Then, the GSC node 22 can monitor and maintain the load of the VNF, thereby implementing steps 101-105, 201-204, and 301-304 in the foregoing embodiment. , 401-403, 501-503, and 601-604.
  • an interface may be added between the GSC node 22 and the VNFM, so that before the load adjustment, the GSC node 22 indicates to the VNFM that the DC to be moved into the load is elastically expanded.
  • the expansion command of the second DC may be sent to the VNFM to make the VNFM to the second DC.
  • the VNF is in the capacity expansion operation, so that the second DC can prepare the corresponding resources in advance, thereby accepting the service request switched from the overloaded first DC.
  • the VNFM may send an expansion command to the second DC to make the VNFM pair The VNF where the two DCs are located performs the capacity expansion operation.
  • the second DC can prepare the corresponding resources in advance, thereby receiving the service request of the target user equipment switched from the overloaded first DC.
  • the triggering condition of the foregoing expansion operation can be set according to the actual experience.
  • the GSC node 22 can carry the target data block or the target user equipment in the foregoing expansion command, so that the VNFM can be based on the foregoing.
  • the embodiment of the present invention does not impose any limitation on the number of the target data block or the target user equipment, and the current resource capacity of the second DC, and the information about whether the capacity expansion operation, the specific policy, and the expansion size are required.
  • the GSC node 22 may also expose the interface to the NFVO, so as to provide the NFVO with information about the respective DCs 21 in the VNF, so as to implement the NFVO to arrange the overall network resources, which is not limited in this embodiment of the present invention.
  • each network element such as DC 21 and GSC node 22 in order to implement the above functions, includes hardware structures and/or software modules corresponding to the execution of the respective functions.
  • the present invention can be implemented in a combination of hardware or hardware and computer software in combination with the elements and algorithm steps of the various examples described in the embodiments disclosed herein. Whether a function is implemented in hardware or computer software to drive hardware depends on the specific application and design constraints of the solution. A person skilled in the art can use different methods for implementing the described functions for each particular application, but such implementation should not be considered to be beyond the scope of the present invention.
  • the embodiment of the present invention may divide the function modules of the GSC node 22 and the like according to the foregoing method example.
  • each function module may be divided according to each function, or two or more functions may be integrated into one processing module.
  • the above integrated modules can be implemented in the form of hardware or in the form of software functional modules. It should be noted that the division of the module in the embodiment of the present invention is schematic, and is only a logical function division, and the actual implementation may have another division manner.
  • FIG. 9 is a schematic diagram showing a possible structure of the GSC node 22 involved in the foregoing embodiment.
  • the GSC node 22 includes: a monitoring unit 31, a determining unit 32, and a switching.
  • the monitoring unit 31 is configured to support the GSC node 22 to perform the process 201 in FIG. 5 and the process 501 in FIG. 7
  • the determining unit 32 is configured to support the GSC node 22 to perform the processes 104-105 in FIG. 4, the process in FIG. 202 and 304, processes 502 and 604 in FIG. 7
  • the switching unit 33 is configured to support the GSC node 22 to perform the process 203 in FIG.
  • the transmitting unit 34 is configured to support the GSC node 22 to perform the process 204 in FIG. 5, in FIG. Process 403, and process 503 in FIG. 7;
  • the acquisition unit 35 is configured to support the GSC node 22 to perform the process 101 in FIG. 4, the process 401 in FIG. 6, and the calculation unit 36 is configured to support the GSC node 22 to perform the process in FIG. Processes 102-103, 301-303, process 402, 601-603 in FIG. All the related content of the steps involved in the foregoing method embodiments may be referred to the functional descriptions of the corresponding functional modules, and details are not described herein again.
  • FIG. 10 shows a possible structural diagram of the GSC node 22 involved in the above embodiment.
  • the GSC node 22 includes a processing module 1302 and a communication module 1303.
  • the processing module 1302 is configured to perform control management on the actions of the GSC node 22.
  • the processing module 1302 is configured to support the GSC node 22 to perform the processes 101-105 in FIG. 4, the processes 201-204, 301-304 in FIG. Processes 401-403 in 6, processes 501-503, 601-604 in Figure 7, and/or other processes for the techniques described herein.
  • Communication module 1303 is used to support communication between GSC node 22 and other network entities, such as with the functional modules or network entities shown in FIG.
  • the GSC node 22 may also include a storage module 1301 for storing program code and data of the GSC node 22.
  • the processing module 1302 may be a processor or a controller, for example, may be a central processing unit (CPU), a general-purpose processor, a digital signal processor (DSP), and an application specific integrated circuit (Application-Specific Integrated Circuit (ASIC), Field Programmable Gate Array (FPGA) or other programmable logic device, transistor logic device, hardware component, or any combination thereof. It is possible to implement or carry out the various illustrative logical blocks, modules and circuits described in connection with the present disclosure.
  • the processor may also be a combination of computing functions, for example, including one or more microprocessor combinations, a combination of a DSP and a microprocessor, and the like.
  • the communication module 1303 may be a transceiver, a transceiver circuit, a communication interface, or the like.
  • the storage module 1301 may be a memory.
  • the processing module 1302 is a processor
  • the communication module 1303 is a communication interface
  • the storage module 1301 is a memory
  • the node involved in the embodiment of the present invention may be the GSC node 22 shown in FIG.
  • the GSC node 22 includes a processor 1312, a communication interface 1313, a memory 1311, and a bus 1314.
  • the communication interface 1313, the processor 1312, and the memory 1311 are connected to each other through a bus 1314.
  • the bus 1314 may be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus. Wait.
  • PCI Peripheral Component Interconnect
  • EISA Extended Industry Standard Architecture
  • Wait The bus can be divided into an address bus, a data bus, a control bus, and the like. For ease of representation, only one thick line is shown in Figure 11, but it does not mean that there is only one bus or one type of bus.
  • the steps of a method or algorithm described in connection with the present disclosure may be implemented in a hardware, or may be implemented by a processor executing software instructions.
  • the software instructions may be composed of corresponding software modules, which may be stored in a random access memory (RAM), a flash memory, a read only memory (ROM), an erasable programmable read only memory ( Erasable Programmable ROM (EPROM), electrically erasable programmable read only memory (EEPROM), registers, hard disk, removable hard disk, compact disk read only (CD-ROM) or any other form of storage medium known in the art.
  • An exemplary storage medium is coupled to the processor to enable the processor to read information from, and write information to, the storage medium.
  • the storage medium can also be an integral part of the processor.
  • the processor and the storage medium can be located in an ASIC. Additionally, the ASIC can be located in a core network interface device.
  • the processor and the storage medium may also exist as discrete components in the core network interface device.
  • the functions described herein can be implemented in hardware, software, firmware, or any combination thereof.
  • the functions may be stored in a computer readable medium or transmitted as one or more instructions or code on a computer readable medium.
  • Computer readable media includes both computer storage media and communication media including any medium that facilitates transfer of a computer program from one location to another.
  • a storage medium may be any available media that can be accessed by a general purpose or special purpose computer.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明的实施例提供一种负载调整方法、装置及系统,涉及通信技术领域,可降低因跨DC访问数据而导致的丢包或浪涌等问题。该方法包括:监测多个DC中每个DC的负载值,每个DC中包括至少一个数据块;若第一DC的负载值与第二DC的负载值之间的差值大于阈值,则确定第一DC向第二DC迁入的目标数据块,该目标数据块的主DC均为第一DC,该目标数据块的备份DC均为第二DC;在数据块分布表中将该目标数据块的主备DC关系进行倒换,倒换后该目标数据块的主DC为第二DC,该目标数据块的备份DC为第一DC,该数据块分布表中记录有每个数据块的主备DC关系;将该数据块分布表发送给第一DC。

Description

一种负载调整方法、装置及系统
本申请要求于2016年10月28日提交中国专利局、申请号为201610964281.1、发明名称为“一种负载调整方法、装置及系统”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本发明涉及通信技术领域,尤其涉及一种负载调整方法、装置及系统。
背景技术
一般,在IMS(IP Multimedia Subsystem,IP多媒体子系统)网络或者LTE(Long Term Evolution,长期演进)网络中会设置多个DC(Data Center,数据中心),每个DC内可通过设置GTM实现多个DC之间的负载均衡。
具体的,每个DC都可以作为主DC,将自身内存储的业务数据备份在其他任意一个备份DC内,例如,如图1所示,可以将DC1内的业务数据备份在DC2中,将DC2内的业务数据备份在DC3中,将DC3内的业务数据备份在DC1中,这样,当DC1内的GTM1检测到其负载超过一定阈值时,GTM1会将其他任意DC的地址,例如,DC3的地址,发送给对端网元,后续,对端网元会根据DC3的地址与DC3进行业务交互,而DC3可以代理DC1执行上述对端网元原本应发给DC1的业务请求。
然而,由于DC1内的业务数据备份在DC2中,因此,DC3在执行上述业务请求时还需要从DC2中获取相应的业务数据,即通过跨DC方式访问备份DC,以实现DC间的负载均衡。
显然,当DC个数较多时,利用上述负载均衡进行负载均衡,会出现成百上千的DC在同一时段集中向备份DC发起访问的情况,此时,网络带宽的占用率骤然增加,会导致丢包或者浪涌等问题。
发明内容
本发明的实施例提供一种负载调整方法、装置及系统,可降低因跨DC访问数据而导致的丢包或浪涌等问题。
为达到上述目的,本发明的实施例采用如下技术方案:
第一方面,本发明的实施例提供一种负载调整方法,包括:监测多个DC中每个DC的负载值,每个DC中包括至少一个数据块;若第一DC的负载值与第二DC的负载值之间的差值大于阈值,则确定第一DC向第二DC迁入的目标数据块,该目标数据块的主DC均为第一DC,该目标数据块的备份DC均为第二DC,第一DC的负载值大于第二DC的负载值,第一DC与第二DC为该多个DC中不相同的两个DC;在数据块分布表中将该目标数据块的主备DC关系进 行倒换,倒换后该目标数据块的主DC为第二DC,该目标数据块的备份DC为第一DC,该数据块分布表中记录有每个数据块的主备DC关系;将该数据块分布表发送给第一DC,这样,后续第一DC接收到属于该目标数据块的目标用户设备的业务请求时,可根据目标数据块倒换后的主备DC关系,将该业务请求换至第二DC(即新的主DC),而第二DC内本身存储有该目标用户设备的业务数据,因此,第二DC可以直接根据该业务数据处理该业务请求,避免了通过跨DC的数据访问操作获取业务数据的问题,从而可降低因跨DC访问数据而导致的丢包或浪涌等风险。
在一种可能的设计方式中,在监测多个DC中每个DC的负载值之前,还包括:对于该多个DC中每个DC内的每个数据块,确定该数据块的主DC和备份DC,得到该数据块的主备DC关系,以建立该数据块分布表。
在一种可能的设计方式中,确定该数据块的主DC和备份DC,包括:获取该多个DC中每个DC内SCU的数量;根据每个DC内SCU的数量,计算每个DC的权重值,其中,该DC的权重值为:该DC内SCU的数量与所有DC内SCU的数量总和的比值;在为该数据块分配主DC时,对于每个DC,将该DC内已分配主DC的数据块个数,与该DC的权重值的比值,作为该DC的第一相对权重值;在为该数据块分配备份DC时,对于每个DC,将该DC内已分配备份DC的数据块个数,与该DC的权重值的比值,作为该DC的第二相对权重值;将第一相对权重值最小的DC作为该数据块的主DC;在除了该该数据块的主DC之外DC中,将第二相对权重值最小的DC作为该数据块的备份DC。
在一种可能的设计方式中,该数据块分布表中还包括每个数据块的置换标识,该置换标识用于指示该数据块的主备DC关系存在历史倒换记录;其中,确定第一DC向第二DC迁入的目标数据块,包括:确定第一DC向第二DC迁入的目标数据块的数量为M,M≥1;在主DC为第一DC,备份DC为第二DC的数据块中,确定携带有置换标识的X个数据块,X≥0;若X≥M,则在该X个数据块中选择M个数据块作为第一DC向第二DC迁入的数据块;若X<M,则在主DC为第一DC,备份DC为第二DC的数据块中,选择除该X个数据块外的M-X个数据块,并将该X个数据块以及该M-X个数据块作为第一DC向第二DC迁入的数据块。也就是说,在选择M个目标数据块时,优先选择存在历史倒换记录的主DC为第一DC且备份DC为第二DC的数据块,从而使数据块分布表尽量维持刚建立数据块分布表时的主备DC关系。
在一种可能的设计方式中,确定第一DC向第二DC迁入的目标数据块的数量为M,包括:统计该多个DC中已经占用的数据块数量;计算第一DC与第二DC的理论数据块数量,第一DC的理论数据块数量为:第一DC的权重值与该已经占用的数据块数量的乘积,第二DC的理论数据块数量:为第二DC的权重值与该已经占用的数据块数量的乘积;计算第一DC内实际数据块数量与理论数据块数量的第一差值,以及第二DC内实际数据块数量与理论数据块数量的第二差值;根据该第一差值和该第二差值,确定第一DC向第二DC迁入的数据块数量M,M小于该第一差值和该第二差值中的最小值。
在一种可能的设计方式中,每个DC的数据表中记录有已注册的每个用户设备与唯一一个数据块之间的对应关系,该数据表用于存储每个用户设备的业务数据;其中,统计该多个DC中已经占用的数据块数量,包括:向每个DC发送统计指示,以使得接收到该统计指示的DC根据该已注册的每个用户设备与唯一一个数据块之间的对应关系,确定该DC内用户设备占用的数据块数量;接收每个DC发送的该DC内用户设备占用的数据块数量,得到该多个DC中已 经占用的数据块数量。
第二方面,本发明的实施例提供一种负载调整方法,包括:监测多个DC中每个DC的负载值;若第一DC的负载值与第二DC的负载值之间的差值大于阈值,则确定第一DC向第二DC迁入的目标用户设备的数量,该目标用户设备的主DC均为第一DC,该目标用户设备的备份DC均为第二DC,第一DC的负载值大于第二DC的负载值,第一DC与第二DC为该多个DC中不相同的两个DC;将该目标用户设备的数量发送给第一DC,以使得第一DC将该目标用户设备的业务切换至第二DC,由于第二DC内本身存储有该目标用户设备的业务数据,因此,第二DC可以直接根据该业务数据处理该业务请求,避免了通过跨DC的数据访问操作获取业务数据的问题,从而可降低因跨DC访问数据而导致的丢包或浪涌等风险。
在一种可能的设计方式中,在监测多个DC中每个DC的负载值之前,还包括:获取该多个DC中每个DC内SCU的数量;根据每个DC内SCU的数量,计算每个DC的权重值,其中,该DC的权重值为:该DC内SCU的数量与所有DC内SCU的数量总和的比值;将每个DC的权重值发送给第一DC,以使得第一DC根据每个DC的权重值为进行注册的用户设备选择备份DC。
在一种可能的设计方式中,确定第一DC向第二DC迁入的目标用户设备的数量,包括:统计该多个DC中已经注册的用户设备的总量;计算第一DC与第二DC的理论用户设备数量,第一DC的理论用户设备数量为:第一DC的权重值与该用户设备的总量的乘积,第二DC的理论数据块数量为:第二DC的权重值与该用户设备的总量的乘积;计算第一DC内实际用户设备数量与目标用户设备数量的第一差值,以及第二DC内实际用户设备数量与目标用户设备数量的第二差值;根据该第一差值和该第二差值,确定第一DC向第二DC迁入的M个目标用户设备,M小于该第一差值和该第二差值中的最小值,M≥1。
在一种可能的设计方式中,每个DC中包括至少一个数据块,且每个DC内存储有数据块分布表,该数据块分布表中记录有每个数据块的主备DC关系;其中,在将该目标用户设备的数量发送给第一DC之后,还包括:第一DC根据该目标用户设备的数量和该数据块分布表,确定向第二DC迁入的目标数据块,该目标数据块的主DC均为第一DC,该目标数据块的备份DC均为第二DC;第一DC在该数据块分布表中将该目标数据块的主备DC关系进行倒换,倒换后该目标数据块的主DC为第二DC,该目标数据块的备份DC为第一DC。也就是说,GSC节点可以以用户设备为单位,触发相应的DC进行负载调整,而DC则可以沿用上述数据块分布表的管理方法,以数据块为单位实现DC之间的负载调整。
第三方面,本发明的实施例提供一种GSC节点,包括:监测单元,用于监测多个DC中每个DC的负载值,每个DC中包括至少一个数据块;确定单元,用于若第一DC的负载值与第二DC的负载值之间的差值大于阈值,则确定第一DC向第二DC迁入的目标数据块,该目标数据块的主DC均为第一DC,该目标数据块的备份DC均为第二DC,第一DC的负载值大于第二DC的负载值,第一DC与第二DC为该多个DC中不相同的两个DC;倒换单元,用于在数据块分布表中将该目标数据块的主备DC关系进行倒换,倒换后该目标数据块的主DC为第二DC,该目标数据块的备份DC为第一DC,该数据块分布表中记录有每个数据块的主备DC关系;发送单元,用于将该数据块分布表发送给第一DC,以使得第一DC将该目标数据块承载的业务切换至第二DC。
在一种可能的设计方式中,该确定单元,还用于:对于该多个DC中每个DC内的每个数据块,确定该数据块的主DC和备份DC,得到该数据块的主备DC关系,以建立该数据块分布 表。
在一种可能的设计方式中,该GSC节点还包括获取单元和计算单元,其中,该获取单元,用于获取该多个DC中每个DC内SCU的数量;该计算单元,用于根据每个DC内SCU的数量,计算每个DC的权重值,其中,该DC的权重值为:该DC内SCU的数量与所有DC内SCU的数量总和的比值;该确定单元,具体用于:在为该数据块分配主DC时,对于每个DC,将该DC内已分配主DC的数据块个数,与该DC的权重值的比值,作为该DC的第一相对权重值;在为该数据块分配备份DC时,对于每个DC,将该DC内已分配备份DC的数据块个数,与该DC的权重值的比值,作为该DC的第二相对权重值;将第一相对权重值最小的DC作为该数据块的主DC;在除了该该数据块的主DC之外DC中,将第二相对权重值最小的DC作为该数据块的备份DC。
在一种可能的设计方式中,该数据块分布表中还包括每个数据块的置换标识,该置换标识用于指示该数据块的主备DC关系存在历史倒换记录;该确定单元,具体用于:确定第一DC向第二DC迁入的目标数据块的数量为M,M≥1;在主DC为第一DC,备份DC为第二DC的数据块中,确定携带有置换标识的X个数据块,X≥0;若X≥M,则在该X个数据块中选择M个数据块作为第一DC向第二DC迁入的数据块;若X<M,则在主DC为第一DC,备份DC为第二DC的数据块中,选择除该X个数据块外的M-X个数据块,并将该X个数据块以及该M-X个数据块作为第一DC向第二DC迁入的数据块。
在一种可能的设计方式中,该获取单元,还用于统计该多个DC中已经占用的数据块数量;该计算单元,还用于:计算第一DC与第二DC的理论数据块数量,第一DC的理论数据块数量为:第一DC的权重值与该已经占用的数据块数量的乘积,第二DC的理论数据块数量:为第二DC的权重值与该已经占用的数据块数量的乘积;计算第一DC内实际数据块数量与理论数据块数量的第一差值,以及第二DC内实际数据块数量与理论数据块数量的第二差值;该确定单元,还用于:根据该第一差值和该第二差值,确定第一DC向第二DC迁入的数据块数量M,M小于该第一差值和该第二差值中的最小值。
在一种可能的设计方式中,每个DC的数据表中记录有已注册的每个用户设备与唯一一个数据块之间的对应关系,该数据表用于存储每个用户设备的业务数据;该发送单元,还用于:向每个DC发送统计指示,以使得接收到该统计指示的DC根据该已注册的每个用户设备与唯一一个数据块之间的对应关系,确定该DC内用户设备占用的数据块数量;该获取单元,还用于:接收每个DC发送的该DC内用户设备占用的数据块数量,得到该多个DC中已经占用的数据块数量。
第四方面,本发明的实施例提供一种GSC节点,包括:监测单元,用于监测多个DC中每个DC的负载值;确定单元,用于若第一DC的负载值与第二DC的负载值之间的差值大于阈值,则确定第一DC向第二DC迁入的目标用户设备的数量,该目标用户设备的主DC均为第一DC,该目标用户设备的备份DC均为第二DC,第一DC的负载值大于第二DC的负载值,第一DC与第二DC为该多个DC中不相同的两个DC;发送单元,用于将该目标用户设备的数量发送给第一DC,以使得第一DC将该目标用户设备的业务切换至第二DC。
在一种可能的设计方式中,该GSC节点还包括获取单元和计算单元,其中,该获取单元,用于获取该多个DC中每个DC内SCU的数量;该计算单元,用于根据每个DC内SCU的数量,计算每个DC的权重值,其中,该DC的权重值为:该DC内SCU的数量与所有DC内SCU的数 量总和的比值;该确定单元,还用于将每个DC的权重值发送给第一DC,以使得第一DC根据每个DC的权重值为进行注册的用户设备选择备份DC。
在一种可能的设计方式中,该获取单元,还用于统计该多个DC中已经注册的用户设备的总量;该计算单元,还用于:计算第一DC与第二DC的理论用户设备数量,第一DC的理论用户设备数量为:第一DC的权重值与该用户设备的总量的乘积,第二DC的理论数据块数量为:第二DC的权重值与该用户设备的总量的乘积;计算第一DC内实际用户设备数量与目标用户设备数量的第一差值,以及第二DC内实际用户设备数量与目标用户设备数量的第二差值;该确定单元,还用于根据该第一差值和该第二差值,确定第一DC向第二DC迁入的M个目标用户设备,M小于该第一差值和该第二差值中的最小值,M≥1。
第五方面,本发明的实施例提供一种GSC节点,包括:处理器、存储器、总线和通信接口;该存储器用于存储计算机执行指令,该处理器与该存储器通过该总线连接,当该GSC节点运行时,该处理器执行该存储器存储的该计算机执行指令,以使该GSC节点执行上述任意一项所述的负载调整方法。
第六方面,本发明的实施例提供一种负载调整系统,包括上述任一项所述的GSC节点,以及与GSC节点均相连的多个DC。
第七方面,本发明实施例提供了一种计算机存储介质,用于储存为上述GSC节点所用的计算机软件指令,其包含用于执行上述方面为该节点所设计的程序。
本发明中,上述GSC节点以及负载调整系统的名字对设备本身不构成限定,在实际实现中,这些设备可以以其他名称出现。只要各个设备的功能和本发明类似,即属于本发明权利要求及其等同技术的范围之内。
另外,第二方面至第七方面中任一种设计方式所带来的技术效果可参见第一方面中不同设计方式所带来的技术效果,此处不再赘述。
本发明的这些方面或其他方面在以下实施例的描述中会更加简明易懂。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
图1为现有技术中进行负载调整的应用场景示意图;
图2为本发明实施例提供的一种负载调整系统的架构示意图一;
图3为本发明实施例提供的一种负载调整系统的架构示意图二;
图4为本发明实施例提供的一种数据块分布表的建立方法的流程示意图;
图5为本发明实施例提供的一种负载调整方法的流程示意图一;
图6为本发明实施例提供的一种主备DC对的确定方法的流程示意图;
图7为本发明实施例提供的一种负载调整方法的流程示意图二;
图8为本发明实施例提供的一种NFV系统的结构示意图;
图9为本发明实施例提供的一种GSC节点的结构示意图一;
图10为本发明实施例提供的一种GSC节点的结构示意图二;
图11为本发明实施例提供的一种GSC节点的结构示意图三。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。
另外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。
本发明的实施例提供一种负载调整方法,可应用于如图2所示的负载调整系统100中,该负载调整系统100包括N个DC 21,以及与这N个DC 21中每个DC 21相连的GSC(Global Service Control,全局业务控制)节点22。
其中,GSC节点22可用于对每个DC 21的负载进行检测,并根据检测到的负载值触发相应DC对其数据库中的数据分布进行管理,又或者,GSC节点22也可以直接根据检测到的负载值对相应DC的数据库中的数据分布进行管理,以实现N个DC 21之间的负载均衡。
需要说明的是,GSC节点22可以作为一个功能组件集成在任意DC 21内,也可以作为一个单独的实体设备与每个DC 21相连,本发明实施例对此不作任何限制。
示例性的,每个DC 21可以包括多个数据块(Block),如图3所示,DC1内的8个数据块可以分别备份到DC2和DC3中,其中,4个数据块备份在DC2中,剩余的4个数据块备份在DC3中,也就是说,可以将每个DC 21内的数据以数据块为单位分别备份至其他N-1个DC21内。
这样,每个数据块对应于一组主DC和备份DC,例如,数据块1的主备DC关系为:主DC为DC1,备份DC为DC2。那么,GSC节点22可以以数据块为单位对每个DC 21内的数据进行管理,当某个DC 21的负载值大于预设阈值时,GSC节点22可以将该DC 21内的一个或多个数据块的主备DC关系进行倒换,例如,将数据块1的主备DC关系倒换为:主DC为DC2,备份DC为DC1,并将倒换后的数据块1的主备DC关系下发给DC1,这样,后续DC1接收到归属于数据块1的用户设备(即目标用户设备)的业务请求时,可根据倒换后的数据块1的主备DC关系,将该业务请求换至DC2,而DC2内本身存储有数据块1的备份,即DC2内本身存储有该目标用户设备的业务数据,因此,DC2可以直接根据该业务数据处理该业务请求,避免了通过跨DC的数据访问操作获取业务数据的问题,从而可降低因跨DC访问数据而导致的丢包或浪涌等风险。
示例性的,GSC节点22可以通过数据块分布表来管理和维护各个数据块的主备DC关系,如表1所示,数据块分布表中记录有每个数据块的主备DC关系,GSC节点22可以将数据块分布表下发给各个DC,以便于每个DC根据该数据块分布表查找每个数据块的主DC和备份DC;进一步地,如表2所示,以DC1为例,每个DC的数据表中记录有以本DC为主DC的各个数据块-用户设备-业务数据之间的对应关系,用户设备向主DC内进行注册的过程中,可以由主DC将空闲的数据块分配给用户设备,并且,由于每个DC内保存有GSC节点22下发的数据块分布表(如表1所示),因此,每个DC可以确定出本DC内用户设备-数据块-主备DC关系之间的对应关系,并将对应用户设备的业务数据备份在其所属的主DC和备份DC内,这样,后 续用户设备向其所属的主DC发送业务请求时,便可以确定出该用户设备归属的数据块,以及该数据块的主备DC关系。
表1
数据块 主DC 备份DC
数据块1-10 DC1 DC2
数据块11-20 DC1 DC3
数据块21-30 DC2 DC1
表2
用户设备 数据块 业务数据
用户设备1 数据块1 用户设备1的业务数据
用户设备2 数据块1 用户设备2的业务数据
用户设备3 数据块2 用户设备3的业务数据
需要说明的是,由于用户设备在注册以及后续业务交互过程中产生的业务数据可能会发生变化,因此,每个数据块在主DC和备份DC内的数据需要进行数据同步,具体数据同步的方法可以为现有技术中的单向数据复制过程或双向数据复制过程,本发明实施例对此不作任何限制。
示例性的,基于表1或表2所示的数据块分布表,如图4所示,为本发明实施例提供的一种数据块分布表的建立方法的流程示意图,该方法包括:
101、GSC节点获取N个DC中每个DC内SCU(Session Control Unit,会话控制单元)的数量。
具体的,每个DC内设置有OMU(operation and maintenance unit,操作维护单元),OMU用于维护本DC内SCU的数据信息,因此,GSC节点可以从每个DC的OMU内获取到该DC内SCU的数量。
102、GSC节点根据每个DC内SCU的数量,计算每个DC的权重值。
其中,任意一个DC的权重值为:该DC内SCU的数量与所有DC内SCU的数量总和的比值。
以图3中的3个DC为例,如果DC1中包括20个SCU,DC2中包括30个SCU,DC3中包括50个SCU,那么,根据上述权重值的定义可计算出:DC1的权重值=20/(20+30+50)=0.2,DC2的权重值=30/(20+30+50)=0.3,DC3的权重值=50/(20+30+50)=0.5。
103a、在为数据块分配主DC时,GSC节点将该DC内已分配主DC的数据块个数,与该DC的权重值的比值,作为该DC的第一相对权重值。
103b,在为数据块分配备份DC时,GSC节点将该DC内已分配备份DC的数据块个数,与该DC的权重值的比值,作为该DC的第二相对权重值。
104、GSC节点将第一相对权重值最小的DC作为该数据块的主DC。
105、GSC节点将除上述已确定的主DC外,第二相对权重值最小的DC作为该数据块的备份DC。
具体的,仍以步骤102中的例子进行说明,在为第一个数据块分配主备DC关系时,每个DC内已分配主备DC关系的数据块个数均为0,因此,每个DC的第一相对权重值和第二相对权重值均为0,此时,可以将任意的一个DC作为第一个数据块的主DC,例如,将DC1作为第一个数据块的主DC,那么,除DC1外的DC2和DC3的第二相对权重值均为0,因此,可以将DC2或DC3作为第一个数据块的备份DC,例如,将DC2作为第一个数据块的备份DC。
那么,对于第二个数据块,在为其分配主DC时,DC1内已分配主DC的数据块个数为1,因此,DC1的第一相对权重值=1/0.2=5,DC2内已分配主DC的数据块个数为0,因此,DC2的第一相对权重值=0/0.3=0,DC3内已分配主DC的数据块个数为0,因此,DC3的第一相对权重值=0/0.5=0,那么,可以将第一相对权重值最小的DC2或DC3作为第二个数据块的主DC,例如,将DC3作为第二个数据块的主DC。
进一步地,对于第二个数据块,在为其分配备份DC时,DC1内已分配备份DC的数据块个数为0,因此,DC1的第二相对权重值=0/0.2=0,DC2内已分配备份DC的数据块个数为1,因此,DC2的第二相对权重值=1/0.3=3.3,DC3内已分配备份DC的数据块个数为0,因此,DC3的第二相对权重值=0/0.5=0,那么,除DC3外,第二相对权重值最小的DC为DC1,因此,可以将DC1作为第二个数据块的备份DC。
后续,第X(X>2)个数据块的主DC和备份DC的选择方法,可参考第二个数据块的主DC和备份DC的选择方法,故此处不再赘述。
至此,通过步骤101-105,GSC节点可以为每一个数据块确定一个主DC和备份DC,即为每一个数据块确定该数据块的主备DC关系,最终得到如表1所示的数据块分布表。
进一步地,基于表1所示的数据块分布表,如图5所示,为本发明实施例提供的一种负载调整方法的流程示意图,该方法包括:
201、GSC节点监测N个DC中每个DC的负载值。
具体的,每个DC可以具备计算自身负载值的功能,这样,GSC节点可以直接从每个DC中获取该DC的负载值;又或者,GSC节点可以从每个DC内获取该DC的KPI(Key Performance Indicator,关键绩效指标)信息,进而根据该DC的KPI信息计算出该DC的负载值。
202、若第一DC的负载值与第二DC的负载值之间的差值大于阈值,则GSC节点确定第一DC向第二DC迁入的目标数据块,目标数据块的主DC为第一DC,目标数据块的备份DC为第二DC。
203、GSC节点在数据块分布表中将目标数据块的主备DC关系进行倒换,倒换后目标数据块的主DC为第二DC,目标数据块的备份DC为第一DC。
其中,目标数据块可以为一个或多个数据块,第一DC的负载值大于第二DC的负载值,第一DC与第二DC为上述N个DC中不相同的两个DC。
具体的,在步骤203中,若第一DC的负载值与第二DC的负载值之间的差值大于阈值,例如,在连续Y(Y>1)个监测周期内,第一DC的负载值与第二DC的负载值之间的差值均大于35%,则说明第一DC与第二DC之间的负载不均衡,即第一DC的负载值较高,而第二DC的负载值较低,因此,可以将第一DC内的一个或多个数据块所承载的业务切换至第二DC,那么,可以在主DC为第一DC,备份DC为第二DC的数据块中选择一定数量的数据块为上述目标数据块。
这样,GSC节点在表1所示的数据块分布表中,将上述目标数据块的主备DC关系进行倒 换,倒换后目标数据块的主DC为第二DC,目标数据块的备份DC为第一DC。那么,后续GSC节点将数据块分布表发送给第一DC后,当归属于目标数据块的目标用户设备向第一DC发送业务请求时,可根据倒换后的数据块分布表将该业务请求转发至新的主DC,即第二DC,而第二DC内本身就备份有目标数据块,即备份有该目标用户设备的业务数据,因此,第二DC内的相应网元无需通过跨DC访问操作获取该目标用户设备的业务数据,便可直接执行该业务请求,同时降低第一DC的负载值。
进一步地,数据块分布表中还可以包括每个数据块的置换标识,置换标识用于指示该数据块的主备DC关系存在历史倒换记录,如表3所示,当置换标识为0时,表示该数据块的主备DC关系不存在历史倒换记录,当置换标识为1时,表示该数据块的主备DC关系存在历史倒换记录,那么,将存在历史倒换记录的主备DC关系倒换回去,可以使数据块分布表尽量维持刚建立数据块分布表时的主备DC关系。
表3
置换标识 数据块 主DC 备份DC
0 数据块1 DC1 DC2
1 数据块1 DC1 DC2
0 数据块2 DC1 DC3
因此,在确定第一DC向第二DC迁入的目标数据块时,首先,可确定第一DC向第二DC迁入的目标数据块的数量为M,M≥1;进而,在主DC为第一DC,备份DC为第二DC的数据块中,确定携带有置换标识的X个数据块,X≥0;那么,当X≥M时,则在这X个数据块中选择M个数据块作为第一DC向第二DC迁入的数据块;当X<M时,则在主DC为第一DC,备份DC为第二DC的数据块中,选择除这X个数据块外的M-X个数据块,并将上述X个数据块以及选择M-X个数据块作为第一DC向第二DC迁入的数据块,也就是说,在选择M个目标数据块时,优先选择存在历史倒换记录的主DC为第一DC且备份DC为第二DC的数据块。
其中,上述确定第一DC向第二DC迁入的目标数据块的数量为M,可具体包括以下步骤:
301、GSC节点统计N个DC中已经占用的数据块数量。
具体的,GSC节点可以向每个DC发送统计指示,这样,接收到该统计指示的DC可以根据表2所示的已注册的每个用户设备与数据块之间的对应关系,确定本DC内用户设备占用的数据块数量,并将本DC内用户设备占用的数据块数量上报给GSC节点;这样,GSC节点可以接收到每个DC发送的该DC内用户设备占用的数据块数量,最终便可统计出N个DC中已经占用的数据块数量Z,Z≥0。
302、GSC节点计算第一DC与第二DC的理论数据块数量,第一DC的理论数据块数量Z1(Z1≥0)为:第一DC的权重值与已经占用的数据块数量的乘积,第二DC的理论数据块数量Z2(Z2≥0):为第二DC的权重值与已经占用的数据块数量的乘积。
上述理论数据块数量可以用于指示:当N个DC之间实现理想化的负载均衡时应该具有的数据块数量。
其中,第一DC的权重值和第二DC的权重值的计算方法已在步骤102中详细阐述,故此处不再赘述。
303、GSC节点计算第一DC内实际数据块数量与理论数据块数量的第一差值,以及第二DC内实际数据块数量与理论数据块数量的第二差值。
假设第一DC内实际数据块数量为J1(J1≥0),第二DC内实际数据块数量为J2(J2≥0),那么,上述第一差值=|J1-Z1|,上述第二差值=|J2-Z2|。
也就是说,通过步骤303,可以计算出第一DC内需要迁移出去的数据块数量(即第一差值),以及第二DC内可以接收的数据块数量(即第二差值)。
304、GSC节点根据第一差值和第二差值,确定第一DC向第二DC迁入的数据块数量M,M小于第一差值和第二差值中的最小值。
当然,上述步骤301-304中仅给出了计算第一DC向第二DC迁入的目标数据块的数量M的方法,可以理解的是,当负载较高的第一DC需要迁移出去的数据块数量(即第一差值)较多时,可以同时向多个DC内迁入目标数据块,例如,第一DC可同时向第二DC和第三DC分别迁入一定数量的目标数据块,而第一DC向第三DC迁入的目标数据块的方法,与第一DC向第二DC迁入的目标数据块的方法相同,故此处不再赘述。
204、GSC节点将数据块分布表发送给第一DC,以使得第一DC将目标数据块承载的业务切换至第二DC。
最终,GSC节点将主备DC关系倒换后的数据块分布表发送给第一DC,这样,第一DC内的相应网元,例如,第一DC内的P-CSCF(Proxy-Call Session Control Funct ion,代理呼叫会话控制功能)节点接收到目标用户设备的新呼叫业务请求时,可直接根据该数据块分布表将该新呼叫业务请求转发给第二DC,由第二DC内的P-CSCF节点根据目标用户设备的业务数据执行该新呼叫业务请求,这样,在实现DC间负载均衡的同时,避免了通过跨DC的数据访问操作获取业务数据的问题,从而降低了因跨DC访问数据而导致的丢包或浪涌等风险。
上述实施例中介绍了以数据块(block)为粒度进行负载调整的方法,在上述实施例中,一个数据块是若干主备DC关系相同的用户设备的集合,而在另一种可能的实现方案中,还可以以具有相同主备DC关系的用户设备为粒度进行负载调整。
具体的,上述以具有相同主备DC关系的用户设备为粒度的负载调整方法,仍然适用于图2所示的负载调整系统100,并且,仍然可以将每个DC 21内的不同用户设备的业务数据分别备份至其他N-1个DC 21内,这样,如表4所示,每个用户设备都归属于一个主备DC对。类似的,GSC节点22内可维护有每个主备DC对的主备DC关系,而每个DC内维护有以本DC为主DC的主备DC对与用户设备之间的对应关系。
表4
用户设备 主备DC对 主DC 备份DC
用户设备1 主备DC对1 DC1 DC2
用户设备2 主备DC对2 DC2 DC1
用户设备3 主备DC对3 DC1 DC3
那么,GSC节点22可以以主备DC对为单位,对每个DC 21内的数据进行管理,当某个DC(例如上述DC1)的负载值大于预设阈值时,GSC节点22只需要从主DC为DC1,备份DC 为DC2的用户设备中确定需要迁移的目标用户设备的数量M(M≥1)即可,进而,GSC节点22将目标用户设备的数量M发送给DC1,后续,DC1接收到任意用户设备的业务请求时,可根据主备DC对与用户设备之间的对应关系,确定该用户设备对应的备份DC是否为DC2,若为DC2,则该用户设备为一个目标用户设备,此时,若DC1已确定的目标用户设备的数量小于M,则DC1可直接将该业务请求转发至DC2,由于DC2内本身存储有该目标用户设备的业务数据,因此,DC2可以直接根据该业务数据处理该业务请求,避免了通过跨DC的数据访问操作获取业务数据的问题,从而可降低因跨DC访问数据而导致的丢包或浪涌等风险。
可以看出,相比于以数据块为粒度进行负载调整的方法,在上述以主备DC对为粒度进行负载调整的方法中,GSC节点22无需为用户设备确定其所属的数据块,并且维护和管理数据块分布表,在进行负载调整时,也不需要更改该数据块的主备DC关系,而是直接将目标用户设备的数量发送给需要调整负载的DC即可,从而降低了GSC节点22在实现负载调整时的复杂度。
示例性的,基于表4所示的主备DC对与用户设备之间的对应关系,如图6所示,为本发明实施例提供的一种主备DC对的确定方法的流程示意图,该方法包括:
401、GSC节点获取N个DC中每个DC内SCU的数量。
402、GSC节点根据每个DC内SCU的数量,计算每个DC的权重值,其中,该DC的权重值为:该DC内SCU的数量与所有DC内SCU的数量总和的比值。
其中,步骤401与402的相关描述可参见上述步骤101与102的相关描述,此处不再赘述。
403、GSC节点将每个DC的权重值分别发送给各个DC,以使得每个DC根据各个DC的权重值为进行注册的用户设备选择备份DC。
具体的,在步骤403中,GSC节点可直接将每个DC的权重值发送给N个DC中的每个DC,这样,后续任意用户设备向第一DC(第一DC为N个DC中的任一个)注册时,第一DC可以根据每个DC的权重值,选择权重值最小的DC作为该用户设备的备份DC,并将第一DC作为该用户设备的主DC,从而确定了该用户设备的主备DC对,后续,将该用户设备的业务数据同步在该主备DC对内即可。
可以看出,相比于上述步骤101-105中GSC节点维护每个数据块的主备DC关系,步骤401-403提供的主备DC对的确定方法只需要将每个DC的权重值分别发送给各个DC,后续由各个DC自身为用户设备确定其所属的主备DC对即可。
进一步地,基于步骤401-403所示的主备DC对的确定方法,如图7所示,为本发明实施例提供的一种负载调整方法的流程示意图,该方法包括:
501、GSC节点监测N个DC中每个DC的负载值。
502、若第一DC的负载值与第二DC的负载值之间的差值大于阈值,则GSC节点确定第一DC向第二DC迁入的目标用户设备的数量。
其中,目标用户设备可以为一个或多个,目标用户设备的主DC均为第一DC,且目标用户设备的备份DC均为第二DC,第一DC的负载值大于第二DC的负载值,且第一DC与第二DC为上述N个DC中不相同的两个DC。
实例性的,本发明实施例提供一种确定第一DC向第二DC迁入的目标用户设备的具体方法,该方法包括以下步骤:
601、GSC节点统计N个DC中一共注册的用户设备的总量。
602、GSC节点计算第一DC与第二DC的理论用户设备数量,第一DC的理论用户设备数量为:第一DC的权重值与用户设备的总量的乘积,第二DC的理论用户设备数量为:第二DC的权重值与用户设备的总量的乘积。
上述理论用户设备数量可以用于指示:当N个DC之间实现理想化的负载均衡时应该具有的用户设备数量。
其中,第一DC的权重值和第二DC的权重值的计算方法已在步骤102中详细阐述,故此处不再赘述。
603、GSC节点计算第一DC内实际用户设备数量与目标用户设备数量的第一差值,以及第二DC内实际用户设备数量与目标用户设备数量的第二差值。
也就是说,通过步骤603,可以计算出第一DC内需要迁移出去的用户设备数量(即第一差值),以及第二DC内可以接收的用户设备数量(即第二差值)。
604、GSC节点根据第一差值和第二差值,确定第一DC向第二DC迁入的M个目标用户设备,M小于第一差值和第二差值中的最小值,M≥1。
当然,可以理解的是,当负载较高的第一DC需要迁移出去的用户设备数量(即第一差值)较多时,可以同时向多个DC内迁入目标用户设备,例如,第一DC可同时向第二DC和第三DC分别迁入一定数量的目标用户设备,而第一DC向第三DC迁入的目标用户设备的确定方法,与第一DC向第二DC迁入的目标用户设备的方法相同,故此处不再赘述。
503、GSC节点将目标用户设备的数量M发送给第一DC。
504、第一DC确定这M个目标用户设备,并将每个目标用户设备的业务切换至第二DC。
最终,GSC节点将上述目标用户设备的数量M发送给第一DC,这样,第一DC内的相应网元,例如,第一DC内的P-CSCF节点接收到上述任意用户设备的新呼叫业务请求时,一旦确定该用户设备为M个目标用户设备中的一个,则可直接将该新呼叫业务请求转发给第二DC,由第二DC内的P-CSCF节点根据已经备份的目标用户设备的业务数据执行该新呼叫业务请求,这样,在实现DC间负载均衡的同时,避免了通过跨DC的数据访问操作获取业务数据的问题,从而降低了因跨DC访问数据而导致的丢包或浪涌等风险。
至此,在上述实施例中,详细阐述了GSC节点22以数据块为单位,对每个DC 21内的数据进行管理,实现DC之间的负载调整;以及,GSC节点22以主备DC对为单位,对每个DC 21内的数据进行管理实现DC之间的负载调整的方案。
结合上述两种方案,在另一种可能的设计方案中,GSC节点22可以以用户设备为单位,触发相应的DC 21进行负载调整,而DC 21则可以沿用上述数据块分布表的管理方法,以数据块为单位实现DC之间的负载调整。
此时,与上述实施例中,GSC节点22可以通过数据块分布表(如表1所示)来管理和维护各个数据块的主备DC关系不同的是,在下述实施例中,可以由DC 21通过数据块分布表来管理和维护各个数据块的主备DC关系。
也就是说,每个DC 21内均存储有上述数据块分布表,并且各个DC之间可以同步更新上述数据块分布表,该数据块分布表中记录有每个数据块的主备DC关系;此时,GSC节点22仍然可以按照上述步骤501-503的方法,将确定出的需要调整的目标用户设备的数量M发送给第一DC,不同的是,在第一DC接收到目标用户设备的数量M之后,还可以进一步执行下 述步骤701-702。
701、第一DC根据目标用户设备的数量M,确定向第二DC迁入的目标数据块。
其中,目标数据块可以为一个或多个数据块,并且,目标数据块的主DC均为第一DC,目标数据块的备份DC均为第二DC。
具体的,由于每个DC内都存储有如表1所示的数据块分布表,那么,在第一DC接收到GSC节点下发的目标用户设备的数量M后,例如,M=10,即需要从第一DC迁出10个用户设备至第二DC,此时,第一DC根据数据块分布表中各个数据块的主备DC关系,确定这10个用户设备所属的目标数据块。
702、第一DC在数据块分布表中将目标数据块的主备DC关系进行倒换,倒换后目标数据块的主DC为第二DC,目标数据块的备份DC为第一DC。
在步骤702中,第一DC可以在表1所示的数据块分布表中,将上述目标数据块的主备DC关系进行倒换,倒换后目标数据块的主DC为第二DC,目标数据块的备份DC为第一DC。
那么,后续当归属于目标数据块的目标用户设备向第一DC发送业务请求时,第一DC可根据倒换后的数据块分布表,将该业务请求转发至新的主DC,即第二DC,而第二DC内本身就备份有目标数据块,即备份有该目标用户设备的业务数据,因此,第二DC内的相应网元无需通过跨DC访问操作获取该目标用户设备的业务数据,便可直接执行该业务请求,同时降低第一DC的负载值。
需要说明的是,上述实施例提供的负载调整系统100,以及任意负载调整方法,可以应用在IMS网络中,也可以应用在LTE网络中,本发明实施例对此不作任何限制,例如,当上述负载调整系统100应用在IMS网络时,每个DC 21内可设置有一个或多个P-CSCF节点、S-CSCF(Serving-Call Session Control Function,服务呼叫会话控制功能)节点或AS(Application Server,应用服务器)等网元;当上述负载调整系统100应用在LTE网络时,每个DC 21内可设置有一个或多个RAN(Residential Access Network,居民接入网)节点、MME(Mobility Management Entity,移动管理节点功能)SGW(Serving Gateway,服务网关)或PGW(Packet Data Network Gateway,分组数据网关)等网元。
示例性的,以EPC(Evolved Packet Core,4G核心网络)网络中用户设备的注册流程为例,在用户设备进行初始附着之前,GSC节点22可以将数据块分布表发送给各个网元,例如,下发给各个PGW,后续,用户设备通过RAN节点向核心网发起附着请求时,MME会为用户设备分配相应的SGW和PGW(例如SGW1和PGW1),那么,SGW1向PGW1发送承载建立请求后,PGW1可以将数据块分布表中未被占用的数据块,例如数据块1,分配给该用户设备,即:对于PGW1而言,建立了该用户设备、数据块1、以及该数据块1的主备DC关系之间的对应关系,进而,可将数据块1的标识携带在上述承载建立请求的响应中发送给SGW1,并完成后续附着流程。
后续,该用户设备在执行相关数据、语音等业务时,一旦GSC节点22确定将上述数据块为目标数据块时,便可以按照上述步骤201-204所示的负载调整方法,将该用户设备的业务切换至上述数据块的备份DC中。例如,当PGW1负载大于阈值时,GSC节点22在数据块分布表中将数据块1的主备DC关系进行倒换,并将倒换后的数据块分布表下发至PGW1,那么,当SGW1向PGW1发送该用户设备的业务请求时,可将数据块1的标识携带在上述业务请求中,这样,PGW1可以根据数据块1的标识从数据块分布表中确定数据块1的新的主DC(即倒换前的备份DC),进而将业务请求发送至新的主DC内的PGW2,而新的主DC内已经备份有上述用 户设备的业务数据,因此,该用户设备的业务切换至新的主DC后也不会引起跨DC的数据访问操作,从而降低了因跨DC访问数据而导致的丢包或浪涌等风险。
类似的,任意节点都可以通过上述注册方法获取到后端节点分配的数据块的标识,例如,用户设备可以获取到MME发送的MME所对应的数据块的标识,MME可以获取到SGW发送的SGW所对应的数据块的标识,这样,每一级后端节点在进行负载调整时,与其交互的前端节点均可以将已经获取到的数据块的标识携带在业务请求中,然后由后端节点根据该数据块的标识将该业务请求转发到主备关系倒换后的新的主DC内。
另外,上述实施例提供的负载调整系统100,以及任意负载调整方法,还可以应用在如图8所示的NFV(network function virtualization,网络功能虚拟化)系统中,该NFV系统包括:网络功能虚拟化调度节点(network function virtualization orchestrator,NFVO)、虚拟网络功能管理节点(virtualized network function manager,VNFM)、虚拟机基础设施管理节点(virtualized infrastructure manager,VIM)、运营支撑系统(operations support system,OSS)或业务支撑系统(business support system,BSS)、网元管理节点(element manager,EM)、VNF节点、虚拟网络功能基础设施(network function virtualization infrastructure,NFVI)等功能节点。
其中,在NFV系统中,NFVO、VNFM以及VIM构成了NFV系统的管理编排(NFV management and orchestration,NFV-MANO)域,其中,NFVO也可以称为网络功能虚拟化编排者。具体的,VNFM负责VNF实例的生命周期管理,如实例化、扩展/收缩、查询、更新及终止等;VIM是基础设施和资源的管理入口,为VNF实例提供资源管理,包括为VNF实例提供基础设施相关硬件和虚拟化资源的配置维护、资源监控、告警、性能管理等功能;而NFVO可以对VIM进行操作、管理及协调等调度功能,NFVO与NFV系统中的所有VIM以及VNFM均相连。
具体的,仍如图8所示,在本发明实施例中,可在传统的NFV系统中增设GSC节点22,GSC节点22具体可部署在VNF、NFV-MANO、EM、或独立的网络节点上。各个DC 21可以利用虚拟化技术运行在一个或多个VNF上,那么,GSC节点22可以对VNF的负载进行监控和维护,从而实现上述实施例中步骤101-105、201-204、301-304、401-403、501-503以及601-604。
示例性的,GSC节点22与VNFM之间可以增设接口,以实现在负载调整前,GSC节点22向VNFM指示对待迁入负载的DC进行弹性扩容。
例如,在执行上述步骤203之后,即GSC节点22在数据块分布表中将目标数据块的主备关系进行倒换后,便可以向VNFM发送对第二DC的扩容指令,使VNFM对第二DC所在的VNF进行扩容操作,这样,第二DC可以提前准备好相应的资源,从而承接从过载的第一DC切换过来的业务请求。
又或者,在执行上述步骤502之后,即GSC节点22确定了第一DC向第二DC迁入的目标用户设备的数量之后,便可以向VNFM发送对第二DC的扩容指令,使VNFM对第二DC所在的VNF进行扩容操作,同样的,可以使第二DC提前准备好相应的资源,从而承接从过载的第一DC切换过来的上述目标用户设备的业务请求。
可以理解的是,本领域技术人员可以根据实际经验设置上述扩容操作的触发条件,例如,GSC节点22可以在上述扩容指令中携带上述目标数据块或目标用户设备的数量,这样,VNFM可以根据上述目标数据块或目标用户设备的数量,以及第二DC当前的资源容量,确定是否需要执行扩容操作,以及扩容的具体策略和扩容大小等信息,本发明实施例对此不作任何限制。
另外,GSC节点22还可以暴露接口给NFVO,从而为NFVO提供VNF内各个DC 21的相关信息,以实现NFVO对整体网络资源的编排,本发明实施例对此不作任何限制。
上述实施例主要从各个网元之间交互的角度对本发明实施例提供的方案进行了介绍。可以理解的是,各个网元,例如DC 21和GSC节点22,为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,本发明能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
本发明实施例可以根据上述方法示例对GSC节点22等进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本发明实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
在采用对应各个功能划分各个功能模块的情况下,图9示出了上述实施例中所涉及的GSC节点22的一种可能的结构示意图,GSC节点22包括:监测单元31、确定单元32、倒换单元33、发送单元34、获取单元35、以及计算单元36。其中,监测单元31用于支持GSC节点22执行图5中的过程201和图7中的过程501;确定单元32用于支持GSC节点22执行图4中的过程104-105,图5中的过程202以及304,图7中的过程502以及604;倒换单元33用于支持GSC节点22执行图5中的过程203;发送单元34用于支持GSC节点22执行图5中的过程204,图6中的过程403,以及图7中的过程503;获取单元35用于支持GSC节点22执行图4中的过程101,图6中的过程401;计算单元36用于支持GSC节点22执行图4中的过程102-103,301-303,图6中的过程402,601-603。其中,上述方法实施例涉及的各步骤的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。
在采用集成的单元的情况下,图10示出了上述实施例中所涉及的GSC节点22的一种可能的结构示意图。GSC节点22包括:处理模块1302和通信模块1303。处理模块1302用于对GSC节点22的动作进行控制管理,例如,处理模块1302用于支持GSC节点22执行图4中的过程101-105,图5中的过程201-204,301-304,图6中的过程401-403,图7中的过程501-503,601-604,和/或用于本文所描述的技术的其它过程。通信模块1303用于支持GSC节点22与其他网络实体的通信,例如与图1中示出的功能模块或网络实体之间的通信。GSC节点22还可以包括存储模块1301,用于存储GSC节点22的程序代码和数据。
其中,处理模块1302可以是处理器或控制器,例如可以是中央处理器(Central Processing Unit,CPU),通用处理器,数字信号处理器(Digital Signal Processor,DSP),专用集成电路(Application-Specific Integrated Circuit,ASIC),现场可编程门阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本发明公开内容所描述的各种示例性的逻辑方框,模块和电路。所述处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等等。通信模块1303可以是收发器、收发电路或通信接口等。存储模块1301可以是存储器。
当处理模块1302为处理器,通信模块1303为通信接口,存储模块1301为存储器时,本发明实施例所涉及的节点可以为图11所示的GSC节点22。
参阅图11所示,该GSC节点22包括:处理器1312、通信接口1313、存储器1311以及总线1314。其中,通信接口1313、处理器1312以及存储器1311通过总线1314相互连接;总线1314可以是外设部件互连标准(Peripheral Component Interconnect,PCI)总线或扩展工业标准结构(Extended Industry Standard Architecture,EISA)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图11中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
结合本发明公开内容所描述的方法或者算法的步骤可以硬件的方式来实现,也可以是由处理器执行软件指令的方式来实现。软件指令可以由相应的软件模块组成,软件模块可以被存放于随机存取存储器(Random Access Memory,RAM)、闪存、只读存储器(Read Only Memory,ROM)、可擦除可编程只读存储器(Erasable Programmable ROM,EPROM)、电可擦可编程只读存储器(Electrically EPROM,EEPROM)、寄存器、硬盘、移动硬盘、只读光盘(CD-ROM)或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于ASIC中。另外,该ASIC可以位于核心网接口设备中。当然,处理器和存储介质也可以作为分立组件存在于核心网接口设备中。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。

Claims (20)

  1. 一种负载调整方法,其特征在于,包括:
    监测多个数据中心DC中每个DC的负载值,每个DC中包括至少一个数据块;
    若第一DC的负载值与第二DC的负载值之间的差值大于阈值,则确定所述第一DC向所述第二DC迁入的目标数据块,所述目标数据块的主DC均为所述第一DC,所述目标数据块的备份DC均为所述第二DC,所述第一DC的负载值大于所述第二DC的负载值,所述第一DC与所述第二DC为所述多个DC中不相同的两个DC;
    在数据块分布表中将所述目标数据块的主备DC关系进行倒换,倒换后所述目标数据块的主DC为所述第二DC,所述目标数据块的备份DC为所述第一DC,所述数据块分布表中记录有每个数据块的主备DC关系;
    将所述数据块分布表发送给所述第一DC,以使得所述第一DC将所述目标数据块承载的业务切换至所述第二DC。
  2. 根据权利要求1所述的方法,其特征在于,在监测多个DC中每个DC的负载值之前,还包括:
    对于所述多个DC中每个DC内的每个数据块,确定该数据块的主DC和备份DC,得到该数据块的主备DC关系,以建立所述数据块分布表。
  3. 根据权利要求2所述的方法,其特征在于,确定该数据块的主DC和备份DC,包括:
    获取所述多个DC中每个DC内会话控制单元SCU的数量;
    根据每个DC内SCU的数量,计算每个DC的权重值,其中,该DC的权重值为:该DC内SCU的数量与所有DC内SCU的数量总和的比值;
    在为该数据块分配主DC时,对于每个DC,将该DC内已分配主DC的数据块个数,与该DC的权重值的比值,作为该DC的第一相对权重值;
    在为该数据块分配备份DC时,对于每个DC,将该DC内已分配备份DC的数据块个数,与该DC的权重值的比值,作为该DC的第二相对权重值;
    将第一相对权重值最小的DC作为该数据块的主DC;
    在除了所述该数据块的主DC之外DC中,将第二相对权重值最小的DC作为该数据块的备份DC。
  4. 根据权利要求1-3中任一项所述的方法,其特征在于,所述数据块分布表中还包括每个数据块的置换标识,所述置换标识用于指示该数据块的主备DC关系存在历史倒换记录;
    其中,确定所述第一DC向所述第二DC迁入的目标数据块,包括:
    确定所述第一DC向所述第二DC迁入的目标数据块的数量为M,M≥1;
    在主DC为所述第一DC,备份DC为所述第二DC的数据块中,确定携带有置换标识的X个数据块,X≥0;
    若X≥M,则在所述X个数据块中选择M个数据块作为所述第一DC向所述第二DC迁入的数据块;
    若X<M,则在主DC为所述第一DC,备份DC为所述第二DC的数据块中,选择除所述X个数据块外的M-X个数据块,并将所述X个数据块以及所述M-X个数据块作为所述第一DC向所述第二DC迁入的数据块。
  5. 根据权利要求4所述的方法,其特征在于,确定所述第一DC向所述第二DC迁入的目 标数据块的数量为M,包括:
    统计所述多个DC中已经占用的数据块数量;
    计算所述第一DC与所述第二DC的理论数据块数量,所述第一DC的理论数据块数量为:所述第一DC的权重值与所述已经占用的数据块数量的乘积,所述第二DC的理论数据块数量:为所述第二DC的权重值与所述已经占用的数据块数量的乘积;
    计算所述第一DC内实际数据块数量与理论数据块数量的第一差值,以及所述第二DC内实际数据块数量与理论数据块数量的第二差值;
    根据所述第一差值和所述第二差值,确定所述第一DC向所述第二DC迁入的数据块数量M,M小于所述第一差值和所述第二差值中的最小值。
  6. 根据权利要求5所述的方法,其特征在于,每个DC的数据表中记录有已注册的每个用户设备与唯一一个数据块之间的对应关系,所述数据表用于存储每个用户设备的业务数据;
    其中,统计所述多个DC中已经占用的数据块数量,包括:
    向每个DC发送统计指示,以使得接收到该统计指示的DC根据所述已注册的每个用户设备与唯一一个数据块之间的对应关系,确定该DC内用户设备占用的数据块数量;
    接收每个DC发送的该DC内用户设备占用的数据块数量,得到所述多个DC中已经占用的数据块数量。
  7. 一种负载调整方法,其特征在于,包括:
    监测多个DC中每个DC的负载值;
    若第一DC的负载值与第二DC的负载值之间的差值大于阈值,则确定所述第一DC向所述第二DC迁入的目标用户设备的数量,所述目标用户设备的主DC均为所述第一DC,所述目标用户设备的备份DC均为所述第二DC,所述第一DC的负载值大于所述第二DC的负载值,所述第一DC与所述第二DC为所述多个DC中不相同的两个DC;
    将所述目标用户设备的数量发送给第一DC,以使得所述第一DC将所述目标用户设备的业务切换至所述第二DC。
  8. 根据权利要求7所述的方法,其特征在于,在监测多个DC中每个DC的负载值之前,还包括:
    获取所述多个DC中每个DC内SCU的数量;
    根据每个DC内SCU的数量,计算每个DC的权重值,其中,该DC的权重值为:该DC内SCU的数量与所有DC内SCU的数量总和的比值;
    将每个DC的权重值发送给所述第一DC,以使得所述第一DC根据每个DC的权重值为进行注册的用户设备选择备份DC。
  9. 根据权利要求8所述的方法,其特征在于,确定所述第一DC向所述第二DC迁入的目标用户设备的数量,包括:
    统计所述多个DC中已经注册的用户设备的总量;
    计算所述第一DC与所述第二DC的理论用户设备数量,所述第一DC的理论用户设备数量为:所述第一DC的权重值与所述用户设备的总量的乘积,所述第二DC的理论数据块数量为:所述第二DC的权重值与所述用户设备的总量的乘积;
    计算所述第一DC内实际用户设备数量与目标用户设备数量的第一差值,以及所述第二DC内实际用户设备数量与目标用户设备数量的第二差值;
    根据所述第一差值和所述第二差值,确定所述第一DC向所述第二DC迁入的M个目标用 户设备,M小于所述第一差值和所述第二差值中的最小值,M≥1。
  10. 根据权利要求7所述的方法,其特征在于,每个DC中包括至少一个数据块,且每个DC内存储有数据块分布表,所述数据块分布表中记录有每个数据块的主备DC关系;
    其中,在将所述目标用户设备的数量发送给第一DC之后,还包括:
    所述第一DC根据所述目标用户设备的数量和所述数据块分布表,确定向所述第二DC迁入的目标数据块,所述目标数据块的主DC均为所述第一DC,所述目标数据块的备份DC均为所述第二DC;
    所述第一DC在所述数据块分布表中将所述目标数据块的主备DC关系进行倒换,倒换后所述目标数据块的主DC为所述第二DC,所述目标数据块的备份DC为所述第一DC。
  11. 一种全局业务控制GSC节点,其特征在于,包括:
    监测单元,用于监测多个DC中每个DC的负载值,每个DC中包括至少一个数据块;
    确定单元,用于若第一DC的负载值与第二DC的负载值之间的差值大于阈值,则确定所述第一DC向所述第二DC迁入的目标数据块,所述目标数据块的主DC均为所述第一DC,所述目标数据块的备份DC均为所述第二DC,所述第一DC的负载值大于所述第二DC的负载值,所述第一DC与所述第二DC为所述多个DC中不相同的两个DC;
    倒换单元,用于在数据块分布表中将所述目标数据块的主备DC关系进行倒换,倒换后所述目标数据块的主DC为所述第二DC,所述目标数据块的备份DC为所述第一DC,所述数据块分布表中记录有每个数据块的主备DC关系;
    发送单元,用于将所述数据块分布表发送给所述第一DC,以使得所述第一DC将所述目标数据块承载的业务切换至所述第二DC。
  12. 根据权利要求11所述的GSC节点,其特征在于,
    所述确定单元,还用于:对于所述多个DC中每个DC内的每个数据块,确定该数据块的主DC和备份DC,得到该数据块的主备DC关系,以建立所述数据块分布表。
  13. 根据权利要求12所述的GSC节点,其特征在于,所述GSC节点还包括获取单元和计算单元,其中,
    所述获取单元,用于获取所述多个DC中每个DC内会话控制单元SCU的数量;
    所述计算单元,用于根据每个DC内SCU的数量,计算每个DC的权重值,其中,该DC的权重值为:该DC内SCU的数量与所有DC内SCU的数量总和的比值;
    所述确定单元,具体用于:在为该数据块分配主DC时,对于每个DC,将该DC内已分配主DC的数据块个数,与该DC的权重值的比值,作为该DC的第一相对权重值;在为该数据块分配备份DC时,对于每个DC,将该DC内已分配备份DC的数据块个数,与该DC的权重值的比值,作为该DC的第二相对权重值;将第一相对权重值最小的DC作为该数据块的主DC;在除了所述该数据块的主DC之外DC中,将第二相对权重值最小的DC作为该数据块的备份DC。
  14. 根据权利要求11-13中任一项所述的GSC节点,其特征在于,所述数据块分布表中还包括每个数据块的置换标识,所述置换标识用于指示该数据块的主备DC关系存在历史倒换记录;
    所述确定单元,具体用于:确定所述第一DC向所述第二DC迁入的目标数据块的数量为M,M≥1;在主DC为所述第一DC,备份DC为所述第二DC的数据块中,确定携带有置换标识的X个数据块,X≥0;若X≥M,则在所述X个数据块中选择M个数据块作为所述第一DC向所述第二DC迁入的数据块;若X<M,则在主DC为所述第一DC,备份DC为所述第二DC的数 据块中,选择除所述X个数据块外的M-X个数据块,并将所述X个数据块以及所述M-X个数据块作为所述第一DC向所述第二DC迁入的数据块。
  15. 根据权利要求14所述的GSC节点,其特征在于,
    所述获取单元,还用于统计所述多个DC中已经占用的数据块数量;
    所述计算单元,还用于:计算所述第一DC与所述第二DC的理论数据块数量,所述第一DC的理论数据块数量为:所述第一DC的权重值与所述已经占用的数据块数量的乘积,所述第二DC的理论数据块数量:为所述第二DC的权重值与所述已经占用的数据块数量的乘积;计算所述第一DC内实际数据块数量与理论数据块数量的第一差值,以及所述第二DC内实际数据块数量与理论数据块数量的第二差值;
    所述确定单元,还用于:根据所述第一差值和所述第二差值,确定所述第一DC向所述第二DC迁入的数据块数量M,M小于所述第一差值和所述第二差值中的最小值。
  16. 根据权利要求15所述的GSC节点,其特征在于,每个DC的数据表中记录有已注册的每个用户设备与唯一一个数据块之间的对应关系,所述数据表用于存储每个用户设备的业务数据;
    所述发送单元,还用于:向每个DC发送统计指示,以使得接收到该统计指示的DC根据所述已注册的每个用户设备与唯一一个数据块之间的对应关系,确定该DC内用户设备占用的数据块数量;
    所述获取单元,还用于:接收每个DC发送的该DC内用户设备占用的数据块数量,得到所述多个DC中已经占用的数据块数量。
  17. 一种全局业务控制GSC节点,其特征在于,包括:
    监测单元,用于监测多个DC中每个DC的负载值;
    确定单元,用于若第一DC的负载值与第二DC的负载值之间的差值大于阈值,则确定所述第一DC向所述第二DC迁入的目标用户设备的数量,所述目标用户设备的主DC均为所述第一DC,所述目标用户设备的备份DC均为所述第二DC,所述第一DC的负载值大于所述第二DC的负载值,所述第一DC与所述第二DC为所述多个DC中不相同的两个DC;
    发送单元,用于将所述目标用户设备的数量发送给第一DC,以使得所述第一DC将所述目标用户设备的业务切换至所述第二DC。
  18. 根据权利要求17所述的GSC节点,其特征在于,所述GSC节点还包括获取单元和计算单元,其中,
    所述获取单元,用于获取所述多个DC中每个DC内SCU的数量;
    所述计算单元,用于根据每个DC内SCU的数量,计算每个DC的权重值,其中,该DC的权重值为:该DC内SCU的数量与所有DC内SCU的数量总和的比值;
    所述确定单元,还用于将每个DC的权重值发送给所述第一DC,以使得所述第一DC根据每个DC的权重值为进行注册的用户设备选择备份DC。
  19. 根据权利要求18所述的GSC节点,其特征在于,
    所述获取单元,还用于统计所述多个DC中已经注册的用户设备的总量;
    所述计算单元,还用于:计算所述第一DC与所述第二DC的理论用户设备数量,所述第一DC的理论用户设备数量为:所述第一DC的权重值与所述用户设备的总量的乘积,所述第二DC的理论数据块数量为:所述第二DC的权重值与所述用户设备的总量的乘积;计算所述第一DC内实际用户设备数量与目标用户设备数量的第一差值,以及所述第二DC内实际用户 设备数量与目标用户设备数量的第二差值;
    所述确定单元,还用于根据所述第一差值和所述第二差值,确定所述第一DC向所述第二DC迁入的M个目标用户设备,M小于所述第一差值和所述第二差值中的最小值,M≥1。
  20. 一种负载调整系统,其特征在于,包括如权利要求11-16或权利要求17-19中任一项所述的全局业务控制GSC节点,以及与所述GSC节点均相连的多个DC。
PCT/CN2017/102804 2016-10-28 2017-09-21 一种负载调整方法、装置及系统 WO2018076973A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201610964281.1 2016-10-28
CN201610964281.1A CN108009018B (zh) 2016-10-28 2016-10-28 一种负载调整方法、装置及系统

Publications (1)

Publication Number Publication Date
WO2018076973A1 true WO2018076973A1 (zh) 2018-05-03

Family

ID=62023074

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2017/102804 WO2018076973A1 (zh) 2016-10-28 2017-09-21 一种负载调整方法、装置及系统

Country Status (2)

Country Link
CN (1) CN108009018B (zh)
WO (1) WO2018076973A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110333824A (zh) * 2019-06-05 2019-10-15 腾讯科技(深圳)有限公司 一种存储系统的扩容方法和装置
CN111435299A (zh) * 2019-01-14 2020-07-21 阿里巴巴集团控股有限公司 一种应用程序的处理方法及装置

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112749041B (zh) * 2019-10-29 2023-12-26 中国移动通信集团浙江有限公司 虚拟化网络功能备份策略自决策方法、装置及计算设备
CN112751772B (zh) * 2019-10-31 2023-01-24 上海哔哩哔哩科技有限公司 数据传输方法和系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101384015A (zh) * 2008-09-28 2009-03-11 华为技术有限公司 一种分布式电信设备及分布式电信设备处理业务的方法
CN104137512A (zh) * 2012-12-25 2014-11-05 华为技术有限公司 一种数据备份方法、装置和系统
JP2015052991A (ja) * 2013-09-09 2015-03-19 株式会社日立製作所 無線通信システム、データバックアップ方法、収容局装置および基地局装置
CN104767822A (zh) * 2015-04-21 2015-07-08 成都影泰科技有限公司 一种基于版本的数据存储方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101384015A (zh) * 2008-09-28 2009-03-11 华为技术有限公司 一种分布式电信设备及分布式电信设备处理业务的方法
CN104137512A (zh) * 2012-12-25 2014-11-05 华为技术有限公司 一种数据备份方法、装置和系统
JP2015052991A (ja) * 2013-09-09 2015-03-19 株式会社日立製作所 無線通信システム、データバックアップ方法、収容局装置および基地局装置
CN104767822A (zh) * 2015-04-21 2015-07-08 成都影泰科技有限公司 一种基于版本的数据存储方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111435299A (zh) * 2019-01-14 2020-07-21 阿里巴巴集团控股有限公司 一种应用程序的处理方法及装置
CN111435299B (zh) * 2019-01-14 2023-06-20 阿里巴巴集团控股有限公司 一种应用程序的处理方法及装置
CN110333824A (zh) * 2019-06-05 2019-10-15 腾讯科技(深圳)有限公司 一种存储系统的扩容方法和装置
CN110333824B (zh) * 2019-06-05 2022-10-25 腾讯科技(深圳)有限公司 一种存储系统的扩容方法和装置

Also Published As

Publication number Publication date
CN108009018B (zh) 2020-08-25
CN108009018A (zh) 2018-05-08

Similar Documents

Publication Publication Date Title
US10630779B2 (en) System and method for using VoIP session continuity information using logical scalable units
US10523545B2 (en) System and method for managing VoIP session continuity information using logical scalable units
CN108011737B (zh) 一种故障切换方法、装置及系统
US10425530B2 (en) System and method for mobile core data services
WO2018076973A1 (zh) 一种负载调整方法、装置及系统
JP5537600B2 (ja) 制御ノード及び通信制御方法
US8375245B2 (en) Mobility management entity failover
US20210204148A1 (en) Real-time intelligent ran controller to support self-driving open ran
WO2019001109A1 (zh) 一种计费方法及设备
US20210400445A1 (en) Method and system for performing charging processing on network slice customer, and related device
WO2018090386A1 (zh) 一种nf组件异常的处理方法、设备及系统
US11653194B2 (en) Techniques to provide resiliency and overload control for access and mobility management functions
US11089104B2 (en) Access to services provided by a distributed data storage system
US20230146433A1 (en) Evaluating overall network resource congestion before scaling a network slice
EP3065379A1 (en) System and method for volte session continuation using logical scalable units
CN112771931B (zh) 管理电信网络中的网络业务的方法和管理网络业务的电信网络
US11646956B2 (en) Systems and methods for providing bidirectional forwarding detection with performance routing measurements
JP5656747B2 (ja) 基地局、制御信号送信方法及び通信システム
US20230187946A1 (en) Charging processing method and system and related device
CN114827079A (zh) 网络地址转换网关的扩容方法、设备及存储介质
JP2012039325A (ja) ネットワーク制御方法及びシステム
WO2016020863A1 (en) Msc pool mobile traffic distribution
CN109691152B (zh) 融合控制器选择方法、设备及系统
WO2020063248A1 (zh) 一种基于协调设备的云服务多云部署方法
JP2016045621A (ja) 通信システム、コントロール装置及び処理装置切替方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 17865552

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 17865552

Country of ref document: EP

Kind code of ref document: A1