CN104468147A - Load balance method and device - Google Patents
Load balance method and device Download PDFInfo
- Publication number
- CN104468147A CN104468147A CN201410764800.0A CN201410764800A CN104468147A CN 104468147 A CN104468147 A CN 104468147A CN 201410764800 A CN201410764800 A CN 201410764800A CN 104468147 A CN104468147 A CN 104468147A
- Authority
- CN
- China
- Prior art keywords
- multicast group
- group set
- flow
- mapping
- maps
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
The embodiment of the invention provides a load balance method and device. The method includes the steps that first mapping and second mapping are obtained, the first mapping is used for representing the corresponding relation between a first RP and a first multicast group set, the second mapping is used for representing the corresponding relation between a second RP and a second multicast group set, and the first multicast group set and the second multicast group set comprise different multicast groups; the multicast groups contained in the first multicast group set and the multicast groups contained in the second multicast group set are grouped again so that a third multicast group set and a fourth multicast group set can be obtained; third mapping and fourth mapping are generated through the third multicast group set and the fourth multicast group set, the third mapping is used for representing the corresponding relation between the first RP and the third multicast group set, and the fourth mapping is used for representing the corresponding relation between the second RP and the fourth multicast group set; the third mapping and the fourth mapping are broadcast. In this way, overload RPs can be avoided, and the message forwarding efficiency of the RPs can be improved easily.
Description
Technical field
The present invention relates to communication technical field, be specifically related to a kind of load-balancing method and device.
Background technology
Usually, for catenet and in the user distribution scene of comparatively disperseing, (English: Protocol Independent Multicast-Sparse Mode is called for short: PIM-SM) carry out point-to-multipoint message transmissions to adopt sparse mode Protocol Independent Multicast.
Based on PIM-SM, when having message transmissions demand, multicast member can be (English: RendezvousPoint to convergent point, be called for short: RP) initiate to join request, RP creates (*, G) list item, build with RP be root shared tree (English: Rendezvous Point Tree, be called for short: RPT).Wherein, * is default parameter, and G is the multicast address of multicast group, and (*, G) represents the message that multicast group that multicast address identifies can receive any multicast source and sends.Accordingly, multicast source can initiate registration request to RP, and RP creates (S, G) list item.Wherein, S is the address of multicast source, and (S, G) represents that multicast source can send message to the multicast group of multicast address mark.After process like this, when carrying out cast communication, message just can be sent to RP by multicast source, and described message is handed down to the multicast member of multicast group by RP.
Usually, may there is multiple RP in network, each RP may be again the root of multiple multicast group on RPT, if reasons such as the heavier loads that RP breaks down or RP carries, all may affect the message repeating efficiency of RP, and then affect cast communication efficiency.
Summary of the invention
The load-balancing method that the embodiment of the present invention provides and device, contribute to improving cast communication efficiency by load-balancing technique.
For this reason, the embodiment of the present invention provides following technical scheme:
First aspect, provides a kind of load-balancing method, and described method comprises:
Controller obtains first and maps and the second mapping, described first maps for representing the corresponding relation between the first convergent point RP and the first multicast group set, described second maps for representing the corresponding relation between the 2nd RP and the second multicast group set, and described first multicast group set and described second multicast group set comprise different multicast group;
The multicast group that described controller comprises described first multicast group set and the multicast group that described second multicast group set comprises, again divide into groups, obtain the 3rd multicast group set and the 4th multicast group set;
Described controller utilizes described 3rd multicast group set and described 4th multicast group set, generate the 3rd to map and the 4th mapping, described 3rd maps for representing the corresponding relation between a described RP and described 3rd multicast group set, and the described 4th maps for representing the corresponding relation between described 2nd RP and described 4th multicast group set;
Described controller broadcast the described 3rd maps and described 4th mapping.
In conjunction with first aspect, in the first possible implementation of first aspect, the multicast group that described controller comprises described first multicast group set and the multicast group that described second multicast group set comprises, divide into groups again, obtains the 3rd multicast group set and the 4th multicast group set comprises:
Described controller obtains the first number and the second number, and described first number is the number of the multicast group that described first multicast group set comprises, and described second number is the number of the multicast group that described second multicast group set comprises;
Described controller utilizes described first number and described second number, the multicast group that the multicast group comprise described first multicast group set and described second multicast group set comprise, and balance is grouped into described 3rd multicast group set and described 4th multicast group set.
In conjunction with first aspect, in the implementation that the second of first aspect is possible, described first multicast group set also comprises flow information corresponding to each multicast group, described second multicast group set also comprises flow information corresponding to each multicast group, the multicast group that described controller comprises described first multicast group set and the multicast group that described second multicast group set comprises, again divide into groups, acquisition the 3rd multicast group set and the 4th multicast group set comprise:
Described controller obtains first flow and the second flow, and described first flow is the flow sum of the multicast group that described first multicast group set comprises, and described second flow is the flow sum of the multicast group that described second multicast group set comprises;
Described controller utilizes described first flow and described second flow, the multicast group that the multicast group comprise described first multicast group set and described second multicast group set comprise, and balance is grouped into described 3rd multicast group set and described 4th multicast group set.
In conjunction with first aspect, in the third possible implementation of first aspect, the multicast group that described controller comprises described first multicast group set and the multicast group that described second multicast group set comprises, divide into groups again, obtains the 3rd multicast group set and the 4th multicast group set comprises:
Described controller determines whether there is fault RP in a described RP and described 2nd RP;
If determine that a described RP is fault RP, the multicast group that described first multicast group set comprises by described controller and the multicast group that described second multicast group set comprises, be grouped into described 4th multicast group set, described 3rd multicast group set is empty set;
If determine that described 2nd RP is fault RP, the multicast group that described first multicast group set comprises by described controller and the multicast group that described second multicast group set comprises, be grouped into described 3rd multicast group set, described 4th multicast group set is empty set.
In conjunction with the first of first aspect or first aspect to the third any one possible implementation, in the 4th kind of possible implementation of first aspect, described method also comprises:
When described first maps and/or described second mapping changes, described controller upgrades the described 3rd and maps and/or described 4th mapping.
Second aspect, provides a kind of load balancing apparatus, and described device comprises:
Obtain unit, map for obtaining the first mapping and second, described first maps for representing the corresponding relation between the first convergent point RP and the first multicast group set, described second maps for representing the corresponding relation between the 2nd RP and the second multicast group set, and described first multicast group set and described second multicast group set comprise different multicast group;
Grouped element, for the multicast group that the multicast group that comprises described first multicast group set and described second multicast group set comprise, divides into groups again, obtains the 3rd multicast group set and the 4th multicast group set;
Generation unit, for utilizing described 3rd multicast group set and described 4th multicast group set, generate the 3rd to map and the 4th mapping, described 3rd maps for representing the corresponding relation between a described RP and described 3rd multicast group set, and the described 4th maps for representing the corresponding relation between described 2nd RP and described 4th multicast group set;
Radio unit, maps and described 4th mapping for broadcasting the described 3rd.
In conjunction with second aspect, in the first possible implementation of second aspect, described grouped element comprises:
Number obtains unit, and for obtaining the first number and the second number, described first number is the number of the multicast group that described first multicast group set comprises, and described second number is the number of the multicast group that described second multicast group set comprises;
First grouping subelement, for utilizing described first number and described second number, the multicast group that the multicast group comprise described first multicast group set and described second multicast group set comprise, balance is grouped into described 3rd multicast group set and described 4th multicast group set.
In conjunction with second aspect, in the implementation that the second of second aspect is possible, described first multicast group set also comprises flow information corresponding to each multicast group, and described second multicast group set also comprises flow information corresponding to each multicast group, and described grouped element comprises:
Flow obtains unit, and for obtaining first flow and the second flow, described first flow is the flow sum of the multicast group that described first multicast group set comprises, and described second flow is the flow sum of the multicast group that described second multicast group set comprises;
Second grouping subelement, for utilizing described first flow and described second flow, the multicast group that the multicast group comprise described first multicast group set and described second multicast group set comprise, balance is grouped into described 3rd multicast group set and described 4th multicast group set.
In conjunction with second aspect, in the third possible implementation of second aspect, described grouped element comprises:
Determining unit, for determining whether there is fault RP in a described RP and described 2nd RP;
3rd grouping subelement, during for determining that in described determining unit a described RP is fault RP, the multicast group that the multicast group comprise described first multicast group set and described second multicast group set comprise, be grouped into described 4th multicast group set, described 3rd multicast group set is empty set;
4th grouping subelement, during for determining that in described determining unit described 2nd RP is fault RP, the multicast group that the multicast group comprise described first multicast group set and described second multicast group set comprise, be grouped into described 3rd multicast group set, described 4th multicast group set is empty set.
In conjunction with the first of second aspect or second aspect to the third any one possible implementation, in the 4th kind of possible implementation of second aspect, described device also comprises:
Updating block, for when described first maps and/or described second mapping changes, upgrades the described 3rd and maps and/or described 4th mapping.
The third aspect, provides a kind of load-balancing device, and described equipment comprises: processor and memory;
Described memory, for stored program instruction and data;
Described processor, for reading the program command and data that store in described memory, performs following operation:
Described processor obtains first and maps and the second mapping, described first maps for representing the corresponding relation between the first convergent point RP and the first multicast group set, described second maps for representing the corresponding relation between the 2nd RP and the second multicast group set, and described first multicast group set and described second multicast group set comprise different multicast group;
The multicast group that described processor comprises described first multicast group set and the multicast group that described second multicast group set comprises, again divide into groups, obtain the 3rd multicast group set and the 4th multicast group set;
Described processor utilizes described 3rd multicast group set and described 4th multicast group set, generate the 3rd to map and the 4th mapping, described 3rd maps for representing the corresponding relation between a described RP and described 3rd multicast group set, and the described 4th maps for representing the corresponding relation between described 2nd RP and described 4th multicast group set;
Described processor broadcast the described 3rd maps and described 4th mapping.
In conjunction with the third aspect, in the first possible implementation of the third aspect, the multicast group that described processor comprises described first multicast group set and the multicast group that described second multicast group set comprises, divide into groups again, obtains the 3rd multicast group set and the 4th multicast group set comprises:
Described processor obtains the first number and the second number, and described first number is the number of the multicast group that described first multicast group set comprises, and described second number is the number of the multicast group that described second multicast group set comprises;
Described processor utilizes described first number and described second number, the multicast group that the multicast group comprise described first multicast group set and described second multicast group set comprise, and balance is grouped into described 3rd multicast group set and described 4th multicast group set.
In conjunction with the third aspect, in the implementation that the second of the third aspect is possible, described first multicast group set also comprises flow information corresponding to each multicast group, described second multicast group set also comprises flow information corresponding to each multicast group, the multicast group that described processor comprises described first multicast group set and the multicast group that described second multicast group set comprises, again divide into groups, acquisition the 3rd multicast group set and the 4th multicast group set comprise:
Described processor obtains first flow and the second flow, and described first flow is the flow sum of the multicast group that described first multicast group set comprises, and described second flow is the flow sum of the multicast group that described second multicast group set comprises;
Described processor utilizes described first flow and described second flow, the multicast group that the multicast group comprise described first multicast group set and described second multicast group set comprise, and balance is grouped into described 3rd multicast group set and described 4th multicast group set.
In conjunction with the third aspect, in the third possible implementation of the third aspect, the multicast group that described processor comprises described first multicast group set and the multicast group that described second multicast group set comprises, divide into groups again, obtains the 3rd multicast group set and the 4th multicast group set comprises:
Described processor determines whether there is fault RP in a described RP and described 2nd RP;
If determine that a described RP is fault RP, the multicast group that described first multicast group set comprises by described processor and the multicast group that described second multicast group set comprises, be grouped into described 4th multicast group set, described 3rd multicast group set is empty set;
If determine that described 2nd RP is fault RP, the multicast group that described first multicast group set comprises by described processor and the multicast group that described second multicast group set comprises, be grouped into described 3rd multicast group set, described 4th multicast group set is empty set.
In conjunction with the first of the third aspect or the third aspect to the third any one possible implementation, in the 4th kind of possible implementation of the third aspect, described processor also performs following operation:
When described first maps and/or described second mapping changes, described in described update processor, the 3rd maps and/or described 4th mapping.
The load-balancing method of the embodiment of the present invention and device, controller obtains the first multicast group set corresponding to a RP and the second multicast group set corresponding to the 2nd RP, and the multicast group that the multicast group comprised the first multicast group set and the second multicast group set comprise, again divide into groups, obtain the 3rd multicast group set and the 4th multicast group set, set up the 3rd mapping between a RP and the 3rd multicast group set again, and the 2nd the 4th between RP and the 4th multicast group set map, finally the 3rd mapping and the 4th after renewal being mapped is broadcast in network, multicast group in network is mapped and the 4th mapping structure RPT according to the 3rd after renewal.So, just can avoid the RP occurring overload, contribute to the message repeating efficiency improving RP, and then improve the efficiency of cast communication.
Accompanying drawing explanation
In order to be illustrated more clearly in the embodiment of the present application or technical scheme of the prior art, be briefly described to the accompanying drawing used required in embodiment or description of the prior art below, apparently, the accompanying drawing that the following describes is only some embodiments recorded in the application, for those of ordinary skill in the art, other accompanying drawing can also be obtained according to these accompanying drawings.
Fig. 1 is the flow chart of embodiment of the present invention load-balancing method;
Fig. 2 is a kind of network diagram in the embodiment of the present invention;
Fig. 3 is the schematic diagram of embodiment of the present invention load balancing apparatus;
Fig. 4 is that the hardware of embodiment of the present invention load-balancing device forms schematic diagram.
Embodiment
In order to make those skilled in the art person understand the present invention program better, below in conjunction with drawings and embodiments, the embodiment of the present invention is described in further detail.
Can be the equipment of a platform independent for the controller of load balancing in the embodiment of the present invention; Or controller also can be the BootStrap Router (English: Bootstrap Router, the abbreviation: BSR) that are integrated with controller function; Moreover controller can also be the multiple devices jointly realizing controller function, that is, the function of controller is split on described multiple devices, realized the function of controller by distributed way.The embodiment of the present invention is not specifically limited controller existence form in a network.
See Fig. 1, show the load-balancing method of the embodiment of the present invention, can comprise:
101, controller obtains first and maps and the second mapping, described first maps for representing the corresponding relation between the first convergent point RP and the first multicast group set, described second maps for representing the corresponding relation between the 2nd RP and the second multicast group set, and described first multicast group set and described second multicast group set comprise different multicast group.
For example, mapping in the embodiment of the present invention can be understood as the corresponding relation between RP and multicast group, and by this mapping, the multicast member belonging to described multicast group can ask to add described RP, create the RPT that is root with described RP, so as follow-up carry out cast communication time use.
Being mapped as example with first, at least mapping by obtaining described first with under type:
Mode one, the mode manually configured, sets up the corresponding relation between a RP and the first multicast group set, obtains first and maps.
Mode two, by the Hash of specifying in PIM-SM agreement (English: Hash) algorithm, set up the corresponding relation between a RP and the first multicast group set, obtain first and map.Usually, multicast group can utilize formula Value (G, M, C (i))=(1103515245* ((1103515245* (G & M)+12345) XOR C (i))+12345) mod 2^31, determine the RP that this multicast group maps, wherein, G represents the multicast address of multicast group, M represents Hash mask, and C (i) represents the address of RP.For example, RP maximum for Value value can be defined as the RP that this multicast group maps by multicast group; Or, if when there is the identical RP of at least two Value values, RP maximum for C (i) can be defined as the RP that this multicast group maps by multicast group.For example, the first multicast group set in the embodiment of the present invention refers to an all multicast group RP being defined as the RP that this multicast group maps.
Obtain the second mode mapped, can refer to and obtain the first mode mapped above, repeat no more herein.
For example, controller according to predetermined period, periodically can obtain the first mapping from a RP and obtains the second mapping from the 2nd RP.Or controller according to predetermined period, periodically can obtain the first mapping and second from BSR and map, wherein, BSR after PIM-SM network startup, can collect first and maps and the second mapping from network.Or controller when the first mapping changes, can obtain the first mapping from RP or BSR.Or controller when the second mapping changes, can obtain the second mapping from the 2nd RP or BSR.The embodiment of the present invention obtains first to controller and maps and the second mode mapped, and can be not specifically limited.
For network shown in Fig. 2, controller obtain first to map what represent be corresponding relation between RP1 and multicast group G1, that is, a RP is RP1, and the first multicast group set comprises multicast group G1; What controller obtained second maps that represent is RP2 and multicast group G2, corresponding relation between G3, G4, that is, the 2nd RP is RP2, and the second multicast group set comprises multicast group G2, G3 and G4.
102, the multicast group that described controller comprises described first multicast group set and the multicast group that described second multicast group set comprises, again divide into groups, obtain the 3rd multicast group set and the 4th multicast group set.
103, described controller utilizes described 3rd multicast group set and described 4th multicast group set, generate the 3rd to map and the 4th mapping, described 3rd maps for representing the corresponding relation between a described RP and described 3rd multicast group set, and the described 4th maps for representing the corresponding relation between described 2nd RP and described 4th multicast group set.
104, described controller broadcast the described 3rd maps and described 4th mapping.
After controller obtains the first mapping and the second mapping, just can determine current the need of carrying out load balance process, if needed, then obtain the 3rd multicast group set and the 4th multicast group set, and the 3rd mapping of setting up between a RP and the 3rd multicast group set, and the 4th between the 2nd RP and the 4th multicast group set maps, and then the 3rd mapping and the 4th is mapped and is broadcast in network, mapping after making the equipment in described network know renewal, and utilize the mapping after upgrading to build RPT.For network shown in Fig. 2, for example, 3rd multicast group set comprises multicast group G1 and G2,4th multicast group set comprises multicast group G3 and G4, namely, what the 3rd mapping represented is RP1 and the corresponding relation between multicast group G1 and G2, and what the 4th mapping represented is RP2 and the corresponding relation between multicast group G3 and G4.
For example, if before the mapping receiving controller broadcast, each multicast group does not all add RPT, then in the embodiment of the present invention, utilize the mapping after upgrading to build the multicast member of RPT, Ke Yiwei: G1 and the multicast member of G2 to initiate to join request to RP1, adding with RP1 is the PRT1 of root; The multicast member of G3 and the multicast member of G4 initiate to join request to RP2, and adding with RP2 is the PRT2 of root.
For example, if before the mapping receiving controller broadcast, each multicast group has added each self-corresponding RPT, then in the embodiment of the present invention, the multicast member utilizing the mapping after upgrading to build RPT, Ke Yiwei: G2 initiates to join request to RP1, and adding with RP1 is the PRT1 of root; Meanwhile, the multicast member of G2 also to RP2 initiate beta pruning (English: prune) to ask, from RP2 be root PRT2 exit.
For example, if before the mapping receiving controller broadcast, partaof group has added corresponding RPT, and partaof group does not add RPT, then can refer to above introduce, by joining request, beta pruning request, realize utilizing the mapping after upgrading to build the object of RPT, no longer illustrate herein.
To sum up, the embodiment of the present invention is by load-balancing technique, and the load of RP carrying in adjustable network, avoids the RP occurring overload, contributes to the message repeating efficiency improving RP, and then improves the efficiency of cast communication.
For example, the load in the embodiment of the present invention can be the number of the multicast group of RP carrying, and corresponding to this, when the number of the multicast group that a RP and the 2nd RP carries is uneven, controller just can determine that current needs carries out load balance process.For example, the number of the multicast group that a RP and the 2nd RP carries is uneven, and the difference of the number of the multicast group that the number of the multicast group of the Ke Yiwei: the one RP carrying and the 2nd RP carry, has exceeded the first preset value.For example, the first preset value can be 1, and as above for Fig. 2 examples cited, the multicast group number of RP1 carrying is the multicast group number of 1, RP2 carrying is 3, and the difference of the two has exceeded the first preset value 1, therefore controller determines that current needs carries out load balance process.
Particularly, load balancing process can be presented as: described controller obtains the first number and the second number, described first number is the number of the multicast group that described first multicast group set comprises, and described second number is the number of the multicast group that described second multicast group set comprises; Described controller utilizes described first number and described second number, the multicast group that the multicast group comprise described first multicast group set and described second multicast group set comprise, and balance is grouped into described 3rd multicast group set and described 4th multicast group set.
Controller, by the number of the multicast group of adjustment RP carrying, realizes the balance between a RP and the 2nd RP, so, just can avoid the RP occurring overload, contributes to the message repeating efficiency improving RP.For example, the multicast group number 3 of the multicast group number 1 that controller utilizes RP1 to carry and RP2 carrying, the grouping of adjustment G1, G2, G3 and G4, adjusts to a multicast group set by G1 and G2, obtain the 3rd multicast group set; G3 and G4 is adjusted to a multicast group set, obtain the 4th multicast group set.Now, the difference of the multicast group number that the 3rd multicast group set comprises and the multicast group number that the 4th multicast group set comprises, more than the first preset value, that is, the multicast group number that a RP and the 2nd RP carries reaches balance.
For example, the load in the embodiment of the present invention can be the message flow of RP carrying, and corresponding to this, when the message flow that a RP and the 2nd RP carries is uneven, controller just can determine that current needs carries out load balance process.For example, the message flow that a RP and the 2nd RP carries is uneven, and the difference of the message flow that the message flow of the Ke Yiwei: the one RP carrying and the 2nd RP carry, has exceeded the second preset value.For example, the second preset value can be 30kbps, and as above for Fig. 2 examples cited, the message flow of RP1 carrying is 50kbps, wherein, and the flow information W1=50kbps that multicast group G1 is corresponding; The message flow of RP2 carrying is (20+30+40)=90kbps, wherein, and the flow information W2=20kbps that multicast group G2 is corresponding, the flow information W3=30kbps that multicast group G3 is corresponding, the flow information W4=40kbps that multicast group G4 is corresponding; The difference 40kbps of the message flow 90kbps of message flow 50kbps and the RP2 carrying of RP1 carrying, exceeded the second preset value 30kbps, therefore controller determines that current needs carries out load balance process.
For example, flow information can be carried in the first multicast set and the second multicast set, that is, described first multicast group set comprises at least one multicast group, and the flow information that each multicast group is corresponding; Described second multicast group set comprises at least one multicast group, and the flow information that each multicast group is corresponding.
Particularly, load balancing process can be presented as: described controller obtains first flow and the second flow, described first flow is the flow sum of the multicast group that described first multicast group set comprises, and described second flow is the flow sum of the multicast group that described second multicast group set comprises; Described controller utilizes described first flow and described second flow, the multicast group that the multicast group comprise described first multicast group set and described second multicast group set comprise, and balance is grouped into described 3rd multicast group set and described 4th multicast group set.
Controller, by the message flow of adjustment RP carrying, realizes the balance between a RP and the 2nd RP, so, just can avoid the RP occurring overload, contributes to the message repeating efficiency improving RP.For example, based on the flow information that each multicast group is corresponding, the message flow 90kbps that message flow 50kbps and RP2 that controller can utilize RP1 to carry carries, the grouping of adjustment G1, G2, G3 and G4, G1 and G2 is adjusted to a multicast group set, obtain the 3rd multicast group set; G3 and G4 is adjusted to a multicast group set, obtain the 4th multicast group set.Now, the difference 0kbps of message flow (30+40)=70kbps that message flow (50+20)=70kbps corresponding to the 3rd multicast group set is corresponding with the 4th multicast group set, more than the second preset value, that is, the message flow that a RP and the 2nd RP carries reaches balance.
Above in examples cited, the multicast group number of RP carrying and message flow, all reach balance, for example, carry out in the scheme of load balancing based on message flow, also may there is following situation: the message flow of RP1 carrying is 10kbps, wherein, the flow information W1=10kbps that multicast group G1 is corresponding; The message flow of RP2 carrying is (20+20+40)=80kbps, wherein, and the flow information W2=20kbps that multicast group G2 is corresponding, the flow information W3=20kbps that multicast group G3 is corresponding, the flow information W4=40kbps that multicast group G4 is corresponding.After controller divides into groups again, G1, G2 and G3 are adjusted to the 3rd multicast group set, G4 is adjusted to the 4th multicast group set.Now, the difference 10kbps of the message flow 40kbps that message flow (10+20+20)=50kbps corresponding to the 3rd multicast group set is corresponding with the 4th multicast group set, more than the second preset value, that is, the message flow that a RP and the 2nd RP carries reaches balance.
Alternatively, consider that RP fault may affect the message repeating efficiency of RP, the embodiment of the present invention additionally provides following load balancing scheme: described controller determines whether there is fault RP in a described RP and described 2nd RP; If determine that a described RP is fault RP, the multicast group that described first multicast group set comprises by described controller and the multicast group that described second multicast group set comprises, be grouped into described 4th multicast group set, described 3rd multicast group set is empty set; If determine that described 2nd RP is fault RP, the multicast group that described first multicast group set comprises by described controller and the multicast group that described second multicast group set comprises, be grouped into described 3rd multicast group set, described 4th multicast group set is empty set.
Controller utilizes the mode introduced above, by multicast group number or message flow, before re-starting grouping, first can determine whether there is fault RP in a RP and the 2nd RP, if one of them RP is fault RP, multicast group corresponding for fault RP can be migrated to non-faulting RP by controller.As above for Fig. 2 examples cited, if RP1 is fault RP, G1, G2, G3 and G4 can be adjusted to a multicast group set by controller, and obtain the 4th multicast group set, accordingly, the 3rd multicast group set is empty set.If RP2 is fault RP, G1, G2, G3 and G4 can be adjusted to a multicast group set by controller, and obtain the 3rd multicast group set, accordingly, the 4th multicast group set is empty set.Load balancing scheme like this, just can when RP breaks down, the mode of being moved by multicast group, ensures the normal forwarding of message.
For example, controller is at least by obtaining the state of RP with under type: the operating state receiving this RP that each RP reports, or receive the operating state of each RP that BSR reports, the embodiment of the present invention can be not specifically limited this.For example, the operating state of RP can be normal or fault.
Alternatively, if there is not fault RP in a RP and the 2nd RP, controller according to the mode introduced, by multicast group number or message flow, can re-start grouping above.
For example, as a kind of implementation of the embodiment of the present invention, first multicast group set can be empty set or the second multicast group can be empty set, corresponding to this, if controller determines that a RP and the 2nd RP is normal RP, still can according to the mode introduced above, by multicast group number or message flow, re-start grouping, obtain the 3rd multicast group set and the 4th multicast group set.Understandably, this implementation, is that the fractional load of a RP carrying is moved to another idle RP, so, also contributes to the message repeating efficiency improving RP, and then improve the efficiency of cast communication.
Alternatively, based on embodiment illustrated in fig. 1, the embodiment of the present invention also provides a kind of scheme of load balancing, is specially: when described first maps and/or described second mapping changes, and described controller upgrades the described 3rd and maps and/or described 4th mapping.For example, if the first mapping changes, after controller can utilize the second mapping and change first maps, and re-starts grouping, obtains the 3rd mapping and/or the 4th after upgrading and maps.Or if the second mapping changes, after controller can utilize the first mapping and change second maps, and re-starts grouping, obtains the 3rd mapping and/or the 4th after upgrading and maps.Or if the first mapping and second maps change, controller can utilize the first mapping after change and the second mapping after change, re-starts grouping, and the 3rd mapping and/or the 4th after acquisition upgrades maps.Concrete packet mode, can refer to above introduce, no longer illustrate herein.
Accordingly, the embodiment of the present invention additionally provides a kind of load balancing apparatus, and described load balancing apparatus can be located on BSR, or described load balancing apparatus also can be arranged on a platform independent equipment, illustrates no longer one by one at this.Described load balancing apparatus can perform the method that embodiment corresponding to Fig. 1 provides.Schematic diagram shown in Figure 3, described device can comprise:
Obtain unit 201, map for obtaining the first mapping and second, described first maps for representing the corresponding relation between the first convergent point RP and the first multicast group set, described second maps for representing the corresponding relation between the 2nd RP and the second multicast group set, and described first multicast group set and described second multicast group set comprise different multicast group;
Grouped element 202, for the multicast group that the multicast group that comprises described first multicast group set and described second multicast group set comprise, divides into groups again, obtains the 3rd multicast group set and the 4th multicast group set;
Generation unit 203, for utilizing described 3rd multicast group set and described 4th multicast group set, generate the 3rd to map and the 4th mapping, described 3rd maps for representing the corresponding relation between a described RP and described 3rd multicast group set, and the described 4th maps for representing the corresponding relation between described 2nd RP and described 4th multicast group set;
Radio unit 204, maps and described 4th mapping for broadcasting the described 3rd.
To sum up, the load balancing apparatus of the embodiment of the present invention, utilizes load-balancing technique, and the load of RP carrying in adjustment network, avoids the RP occurring overload, contributes to the message repeating efficiency improving RP, and then improves the efficiency of cast communication.
Alternatively, described grouped element comprises:
Number obtains unit, and for obtaining the first number and the second number, described first number is the number of the multicast group that described first multicast group set comprises, and described second number is the number of the multicast group that described second multicast group set comprises;
First grouping subelement, for utilizing described first number and described second number, the multicast group that the multicast group comprise described first multicast group set and described second multicast group set comprise, balance is grouped into described 3rd multicast group set and described 4th multicast group set.
Alternatively, described first multicast group set also comprises flow information corresponding to each multicast group, and described second multicast group set also comprises flow information corresponding to each multicast group, and described grouped element comprises:
Flow obtains unit, and for obtaining first flow and the second flow, described first flow is the flow sum of the multicast group that described first multicast group set comprises, and described second flow is the flow sum of the multicast group that described second multicast group set comprises;
Second grouping subelement, for utilizing described first flow and described second flow, the multicast group that the multicast group comprise described first multicast group set and described second multicast group set comprise, balance is grouped into described 3rd multicast group set and described 4th multicast group set.
Alternatively, described grouped element comprises:
Determining unit, for determining whether there is fault RP in a described RP and described 2nd RP;
3rd grouping subelement, during for determining that in described determining unit a described RP is fault RP, the multicast group that the multicast group comprise described first multicast group set and described second multicast group set comprise, be grouped into described 4th multicast group set, described 3rd multicast group set is empty set;
4th grouping subelement, during for determining that in described determining unit described 2nd RP is fault RP, the multicast group that the multicast group comprise described first multicast group set and described second multicast group set comprise, be grouped into described 3rd multicast group set, described 4th multicast group set is empty set.
Alternatively, described device also comprises:
Updating block, for when described first maps and/or described second mapping changes, upgrades the described 3rd and maps and/or described 4th mapping.
Accordingly, the embodiment of the present invention additionally provides a kind of load-balancing device, and described load-balancing device can be located on BSR, or described load-balancing device also can be arranged on a platform independent equipment, illustrates no longer one by one at this.Described load-balancing device can perform the method that embodiment corresponding to Fig. 1 provides.Schematic diagram shown in Figure 4, described load-balancing device 300 can comprise: processor 301, memory 302 and communication interface 303.Wherein, processor 301, memory 302 are connected by communication bus 304 with communication interface 303.Memory 302 is for storage program, and the executable instruction of processor 301 included by the program read from memory 302 performs concrete operations.
Alternatively, the executable instruction that the acquisition unit 201 in Fig. 3, grouped element 202, generation unit 203 and radio unit 204 can be stored according to memory 302 by the processor 301 in Fig. 4 realizes, and processor 301 can comprise at least one concurrent physical processor.
It should be noted that, load-balancing device shown in load balancing apparatus shown in Fig. 3 and Fig. 4 can be same device, can think, Fig. 3 shows from the angle of physics the content that a load balancing apparatus comprises, and Fig. 4 shows from the angle of logic the content that a load-balancing device comprises.
In load-balancing device shown in Fig. 4, described processor 301, for reading the instruction and data stored in memory 302, performs following operation:
Described processor obtains first and maps and the second mapping, described first maps for representing the corresponding relation between the first convergent point RP and the first multicast group set, described second maps for representing the corresponding relation between the 2nd RP and the second multicast group set, and described first multicast group set and described second multicast group set comprise different multicast group;
The multicast group that described processor comprises described first multicast group set and the multicast group that described second multicast group set comprises, again divide into groups, obtain the 3rd multicast group set and the 4th multicast group set;
Described processor utilizes described 3rd multicast group set and described 4th multicast group set, generate the 3rd to map and the 4th mapping, described 3rd maps for representing the corresponding relation between a described RP and described 3rd multicast group set, and the described 4th maps for representing the corresponding relation between described 2nd RP and described 4th multicast group set;
Described processor broadcast the described 3rd maps and described 4th mapping.
As seen through the above description of the embodiments, all or part of mode that can add general hardware platform by software that those skilled in the art can be well understood in above-described embodiment method realizes.Based on such understanding, technical scheme of the present invention can embody with the form of software product the part that prior art contributes in essence in other words, this computer software product can be stored in storage medium, as ROM/RAM, magnetic disc, CD etc., comprising some instructions in order to make a computer equipment (can be personal computer, server, or the network communication equipment such as such as media gateway) perform the method described in some part of each embodiment of the present invention or embodiment.
It should be noted that, each embodiment in this specification all adopts the mode of going forward one by one to describe, between each embodiment identical similar part mutually see, what each embodiment stressed is the difference with other embodiments.Especially, for device and apparatus embodiments, because it is substantially similar to embodiment of the method, so describe fairly simple, relevant part illustrates see the part of embodiment of the method.Equipment and system embodiment described above is only schematic, the unit wherein illustrated as separating component or can may not be and physically separates, parts as unit display can be or may not be physical location, namely can be positioned at a place, or also can be distributed in multiple network element.Some or all of module wherein can be selected according to the actual needs to realize the object of the present embodiment scheme.Those of ordinary skill in the art, when not paying creative work, are namely appreciated that and implement.
The above is only Alternate embodiments of the present invention, is not intended to limit protection scope of the present invention.It should be pointed out that for those skilled in the art, under the premise without departing from the principles of the invention, can also make some improvements and modifications, these improvements and modifications also should be considered as protection scope of the present invention.
Claims (10)
1. a load-balancing method, is characterized in that, described method comprises:
Controller obtains first and maps and the second mapping, described first maps for representing the corresponding relation between the first convergent point RP and the first multicast group set, described second maps for representing the corresponding relation between the 2nd RP and the second multicast group set, and described first multicast group set and described second multicast group set comprise different multicast group;
The multicast group that described controller comprises described first multicast group set and the multicast group that described second multicast group set comprises, again divide into groups, obtain the 3rd multicast group set and the 4th multicast group set;
Described controller utilizes described 3rd multicast group set and described 4th multicast group set, generate the 3rd to map and the 4th mapping, described 3rd maps for representing the corresponding relation between a described RP and described 3rd multicast group set, and the described 4th maps for representing the corresponding relation between described 2nd RP and described 4th multicast group set;
Described controller broadcast the described 3rd maps and described 4th mapping.
2. method according to claim 1, it is characterized in that, the multicast group that described controller comprises described first multicast group set and the multicast group that described second multicast group set comprises, divide into groups again, obtains the 3rd multicast group set and the 4th multicast group set comprises:
Described controller obtains the first number and the second number, and described first number is the number of the multicast group that described first multicast group set comprises, and described second number is the number of the multicast group that described second multicast group set comprises;
Described controller utilizes described first number and described second number, the multicast group that the multicast group comprise described first multicast group set and described second multicast group set comprise, and balance is grouped into described 3rd multicast group set and described 4th multicast group set.
3. method according to claim 1, it is characterized in that, described first multicast group set also comprises flow information corresponding to each multicast group, described second multicast group set also comprises flow information corresponding to each multicast group, the multicast group that described controller comprises described first multicast group set and the multicast group that described second multicast group set comprises, again divide into groups, acquisition the 3rd multicast group set and the 4th multicast group set comprise:
Described controller obtains first flow and the second flow, and described first flow is the flow sum of the multicast group that described first multicast group set comprises, and described second flow is the flow sum of the multicast group that described second multicast group set comprises;
Described controller utilizes described first flow and described second flow, the multicast group that the multicast group comprise described first multicast group set and described second multicast group set comprise, and balance is grouped into described 3rd multicast group set and described 4th multicast group set.
4. method according to claim 1, it is characterized in that, the multicast group that described controller comprises described first multicast group set and the multicast group that described second multicast group set comprises, divide into groups again, obtains the 3rd multicast group set and the 4th multicast group set comprises:
Described controller determines whether there is fault RP in a described RP and described 2nd RP;
If determine that a described RP is fault RP, the multicast group that described first multicast group set comprises by described controller and the multicast group that described second multicast group set comprises, be grouped into described 4th multicast group set, described 3rd multicast group set is empty set;
If determine that described 2nd RP is fault RP, the multicast group that described first multicast group set comprises by described controller and the multicast group that described second multicast group set comprises, be grouped into described 3rd multicast group set, described 4th multicast group set is empty set.
5. the method according to any one of Claims 1-4, is characterized in that, described method also comprises:
When described first maps and/or described second mapping changes, described controller upgrades the described 3rd and maps and/or described 4th mapping.
6. a load balancing apparatus, is characterized in that, described device comprises:
Obtain unit, map for obtaining the first mapping and second, described first maps for representing the corresponding relation between the first convergent point RP and the first multicast group set, described second maps for representing the corresponding relation between the 2nd RP and the second multicast group set, and described first multicast group set and described second multicast group set comprise different multicast group;
Grouped element, for the multicast group that the multicast group that comprises described first multicast group set and described second multicast group set comprise, divides into groups again, obtains the 3rd multicast group set and the 4th multicast group set;
Generation unit, for utilizing described 3rd multicast group set and described 4th multicast group set, generate the 3rd to map and the 4th mapping, described 3rd maps for representing the corresponding relation between a described RP and described 3rd multicast group set, and the described 4th maps for representing the corresponding relation between described 2nd RP and described 4th multicast group set;
Radio unit, maps and described 4th mapping for broadcasting the described 3rd.
7. device according to claim 6, is characterized in that, described grouped element comprises:
Number obtains unit, and for obtaining the first number and the second number, described first number is the number of the multicast group that described first multicast group set comprises, and described second number is the number of the multicast group that described second multicast group set comprises;
First grouping subelement, for utilizing described first number and described second number, the multicast group that the multicast group comprise described first multicast group set and described second multicast group set comprise, balance is grouped into described 3rd multicast group set and described 4th multicast group set.
8. device according to claim 6, is characterized in that, described first multicast group set also comprises flow information corresponding to each multicast group, and described second multicast group set also comprises flow information corresponding to each multicast group, and described grouped element comprises:
Flow obtains unit, and for obtaining first flow and the second flow, described first flow is the flow sum of the multicast group that described first multicast group set comprises, and described second flow is the flow sum of the multicast group that described second multicast group set comprises;
Second grouping subelement, for utilizing described first flow and described second flow, the multicast group that the multicast group comprise described first multicast group set and described second multicast group set comprise, balance is grouped into described 3rd multicast group set and described 4th multicast group set.
9. device according to claim 6, is characterized in that, described grouped element comprises:
Determining unit, for determining whether there is fault RP in a described RP and described 2nd RP;
3rd grouping subelement, during for determining that in described determining unit a described RP is fault RP, the multicast group that the multicast group comprise described first multicast group set and described second multicast group set comprise, be grouped into described 4th multicast group set, described 3rd multicast group set is empty set;
4th grouping subelement, during for determining that in described determining unit described 2nd RP is fault RP, the multicast group that the multicast group comprise described first multicast group set and described second multicast group set comprise, be grouped into described 3rd multicast group set, described 4th multicast group set is empty set.
10. the device according to any one of claim 6 to 9, is characterized in that, described device also comprises:
Updating block, for when described first maps and/or described second mapping changes, upgrades the described 3rd and maps and/or described 4th mapping.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410764800.0A CN104468147B (en) | 2014-12-11 | 2014-12-11 | A kind of load-balancing method and device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410764800.0A CN104468147B (en) | 2014-12-11 | 2014-12-11 | A kind of load-balancing method and device |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104468147A true CN104468147A (en) | 2015-03-25 |
CN104468147B CN104468147B (en) | 2018-05-18 |
Family
ID=52913576
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410764800.0A Expired - Fee Related CN104468147B (en) | 2014-12-11 | 2014-12-11 | A kind of load-balancing method and device |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104468147B (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016155312A1 (en) * | 2015-03-27 | 2016-10-06 | 华为技术有限公司 | Multicast group allocation method, centralized control point, and multicast router |
US11431635B2 (en) | 2020-03-09 | 2022-08-30 | Vmware, Inc. | Load balancing designated routers for multicast groups |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101227430A (en) * | 2008-02-19 | 2008-07-23 | 中兴通讯股份有限公司 | Multicast data forwarding method |
CN101651609A (en) * | 2008-08-14 | 2010-02-17 | 华为技术有限公司 | Method and device for realizing multicast load sharing |
WO2010139115A1 (en) * | 2009-06-03 | 2010-12-09 | 上海贝尔股份有限公司 | Method and device for multiple rendezvous points processing multicast services of mobile multicast source jointly |
CN102281204A (en) * | 2011-09-08 | 2011-12-14 | 杭州华三通信技术有限公司 | Method and routing equipment for implementing rendezvous point (RP) load sharing of multicast group and routing equipment |
CN103457776A (en) * | 2013-09-04 | 2013-12-18 | 杭州华三通信技术有限公司 | Method and device for dynamically deploying rendezvous points in two-way protocol independent multicast |
-
2014
- 2014-12-11 CN CN201410764800.0A patent/CN104468147B/en not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101227430A (en) * | 2008-02-19 | 2008-07-23 | 中兴通讯股份有限公司 | Multicast data forwarding method |
CN101651609A (en) * | 2008-08-14 | 2010-02-17 | 华为技术有限公司 | Method and device for realizing multicast load sharing |
WO2010139115A1 (en) * | 2009-06-03 | 2010-12-09 | 上海贝尔股份有限公司 | Method and device for multiple rendezvous points processing multicast services of mobile multicast source jointly |
CN102281204A (en) * | 2011-09-08 | 2011-12-14 | 杭州华三通信技术有限公司 | Method and routing equipment for implementing rendezvous point (RP) load sharing of multicast group and routing equipment |
CN103457776A (en) * | 2013-09-04 | 2013-12-18 | 杭州华三通信技术有限公司 | Method and device for dynamically deploying rendezvous points in two-way protocol independent multicast |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016155312A1 (en) * | 2015-03-27 | 2016-10-06 | 华为技术有限公司 | Multicast group allocation method, centralized control point, and multicast router |
JP2018509861A (en) * | 2015-03-27 | 2018-04-05 | 華為技術有限公司Huawei Technologies Co.,Ltd. | Multicast group assignment method, centralized control point, and multicast router |
US11431635B2 (en) | 2020-03-09 | 2022-08-30 | Vmware, Inc. | Load balancing designated routers for multicast groups |
Also Published As
Publication number | Publication date |
---|---|
CN104468147B (en) | 2018-05-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9960991B2 (en) | Method, apparatus and system for determining service transmission path | |
US20170078184A1 (en) | Flow table management method, and related device and system | |
US9699077B2 (en) | Method for determining a packet forwarding path, network device, and control device | |
US9143442B2 (en) | Flexible and scalable virtual network segment pruning | |
CN110730478B (en) | Slice association method, device, end-to-end slice organizer and storage medium | |
US20190007305A1 (en) | Malleable routing for data packets | |
CN110324159B (en) | Link configuration method, controller and storage medium | |
CN106357542A (en) | Method for providing multicast service and software defined network controller | |
CN106130920A (en) | A kind of message forwarding method and device | |
CN114679350B (en) | SD-WAN-based link selection method, device and storage medium | |
US10341220B2 (en) | Virtual shortest path tree establishment and processing methods and path computation element | |
CN104869064A (en) | Flow table updating method and device | |
CN104468147A (en) | Load balance method and device | |
CN103001886B (en) | A kind of ECT smooth migration method and apparatus | |
CN102833158B (en) | Network data sending method and device and network data system | |
EP3846392A1 (en) | Cross-domain bidirectional tunnel creation method, communication method and apparatus, and storage medium | |
US20160226750A1 (en) | Method and apparatus for controlling network traffic path | |
TW201545510A (en) | Method of message routing for a distributed computing system | |
Shiraiwa et al. | Function selection algorithm for service function chaining in NDN | |
CN104539661B (en) | Message queue treating method and apparatus | |
US9762468B2 (en) | Method for dynamically adjusting packet transmission timing | |
You et al. | A coordinated algorithm with resource evaluation for service function chain allocation | |
CN102487350A (en) | Package transport network (PTN) network topology planning method and apparatus thereof | |
JP5159499B2 (en) | Karaoke host device | |
CN1705286A (en) | Data message transmission method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20180518 Termination date: 20211211 |