Background technology
Multilink bundling is a kind of multilink (Ethernet link, POS link etc.) to be bundled into a logical links to promote bandwidth, to improve technology of dependability.Its know-why is: the multilink in the system is tied to a logical links, and this logical links is called polymerizer, and its subordinate's link is called Member Link.The polymerizer layer network device that makes progress provides the message of link layer to handle service, masks concrete physical port.When sending message, the upper layer network device just will send to polymerizer with message, according to certain principle message is distributed to certain Member Link of its subordinate by polymerizer, by Member Link message is sent.After Member Link receives message, can give the polymerizer Unified Treatment with message, being responsible for upwards by polymerizer, layer network device transmits message.
When system received message, it will judge at first whether the state of bundle link this moment can be used to send message, if this moment, binding chain circuit state was unavailable, then should this message be forwarded from other link port.
At present, about phase same rate multilink bundling and the existing a lot of achievements of links with different rates binding.But on going result mainly concentrates on Member Link load balancing algorithm aspect.
About the condition judgement of bundle link, generally be whether to confirm that above certain preset threshold value this method has two kinds of defectives according to the quantity of available Member Link: the first, do not consider that the bandwidth of Member Link maybe be different; The second, do not consider the actual flow in the bundle link.
Illustrate above-mentioned defective at present, suppose that bundle link is made up of three Member Links, as shown in Figure 1, the bandwidth of Member Link is respectively link A GE, link B 100M, link C 10GE.If threshold value is made as 2, as a certain moment A, when B is unavailable, according to existing decision method, because available member's number of links<2 are unavailable so judge this bundle link; But actual conditions are, if the flow among the link C less than 8.9G, even this moment the flow of A, B is all assigned on the C link, the operating state of this bundle link is still normal.A kind of in addition situation is, Member Link A and B are available, but C is unavailable; Therefore at this moment, available member's number of links is not less than preset threshold 2, should judge that this bundle link can use; And should all transmit the flow on the C link via A, B; When flow was big, A, B possibly can't transmit all flows, and then cause link congestion and packet loss.
Embodiment
Below in conjunction with Figure of description the embodiment of the invention is elaborated.
Whether available flow process as shown in Figure 2, the embodiment of the invention provide a kind of definite bundle link method, and said method can improve the accuracy of judging that bundle link is whether available, and the practical implementation step is:
Step 201, confirm to have in the bundle link upstate of Member Link to change;
Step 202, according to present flow rate to the taking of said bundle link total bandwidth, confirm whether said bundle link available.
Flow process as shown in Figure 2,step 201 is monitored the transmission quality of each Member Link in the said bundle link, and according to monitored results, is confirmed to have in the bundle link upstate of Member Link to change when implementing.
In one embodiment, the transmission quality of each Member Link can with a plurality of relating to parameters, like the time delay of message transmissions, the error rate, packet loss etc., other perhaps relevant parameters with transmission quality.Transmission quality to each Member Link in the said bundle link is monitored, and can monitor wherein any one parameter, also can monitor two or more parameters simultaneously, specifically selects which combinations of parameters, decides according to actual conditions.For example, one of unfavorable factors such as time delay is elongated, error rate rising, packet loss rising or combination in any appear when monitored Member Link, this Member Link by available become unavailable.Certainly, a kind of more excellent execution mode is in a period of time, each Member Link to be continued monitoring, avoids occurring error.
Flow process as shown in Figure 2;Step 201 confirms to have in the bundle link upstate of Member Link to change when implementing, as by unavailable become available; Perhaps by available become unavailable; At this moment,step 202 detection present flow rate takies said bundle link total bandwidth, comprises the current not use value of the current usable levels that detects total bandwidth, current total flow, total bandwidth, the parameters such as current utilance of total bandwidth.
In the embodiment of the invention, when in confirming bundle link, having the upstate of Member Link to change, judge further whether this bundle link is available, real-time is high, also need not simultaneously at any time to judge whether bundle link is available, can save resource; Even also avoided having in long-time the upstate of Member Link to change also not, improved the accuracy of judging to bundle link available judgement the and cause the lower drawback of judgment accuracy whether.
Flow process as shown in Figure 2, in embodiments of the present invention,step 202 is when implementing; According to present flow rate taking to said bundle link total bandwidth; Confirm that whether said bundle link is available, can have multiple mode, in embodiments of the present invention; Can adopt according to the current usable levels of this bundle link total bandwidth and judge, also can adopt according to the current utilance of total bandwidth and judge.
Existing to confirm according to the current usable levels of this bundle link total bandwidth whether this bundle link is available as example and describes, when the current usable levels of said bundle link total bandwidth is not less than first threshold, confirm that said bundle link can use; During less than first threshold, confirm that said bundle link is unavailable in the current usable levels of said bundle link total bandwidth.Wherein, first threshold also can be thought the total bandwidth minimum capable of using of bundle link.Be to guarantee the accuracy of monitoring result, below instance each Member Link all adopted continue monitoring.Concrete steps are as shown in Figure 3:
Step 301, continue to monitor the transmission quality of each Member Link, and confirm in view of the above whether each Member Link is available;
Step 302, whether whether available state changes to judge each Member Link;
Ifstep 303 has the upstate of Member Link that variation has taken place, whether the total bandwidth of judging the Member Link that all are available is less than first threshold;
If the upstate ofstep 304 Member Link does not change, then finish whole flow process;
If the total bandwidth<first threshold of all available Member Links ofstep 305 judges that then this bundle link is unavailable;
If the total bandwidth>=first threshold of all available Member Links ofstep 306 judges that then this bundle link can use.
Lift an instantiation describes at present:
Suppose that bundle link is made up of the Member Link of three different rates, the bandwidth of Member Link is respectively: link R 10M, S 100M; Q 1000M, first threshold, the total bandwidth of promptly setting minimum capable of using is 200M; When the transmission quality of member's link changes, when causing R link and S link unavailable, the current usable levels=1000M>200M of the total bandwidth of the Member Link that other are available; At this moment, judge that this bundle link can use; If the transmission quality of Member Link changes, when causing the Q link unavailable, the current usable levels=10+100=110M<200M of the total bandwidth of the Member Link that other are available at this moment, judges that this bundle link is unavailable.
The bandwidth of above-mentioned Member Link number, each Member Link is random number, can set up on their own according to actual conditions, is not limited to above-mentioned instance.
Existing again to confirm according to the current utilance of this bundle link total bandwidth whether this bundle link is available as example and describes, when the current utilance of said bundle link total bandwidth is not more than second threshold value, confirm that said bundle link can use; During greater than second threshold value, confirm that said bundle link is unavailable in the current utilance of said bundle link total bandwidth.Wherein, second threshold value also can be thought the maximum total bandwidth utilance of bundle link.Concrete steps are as shown in Figure 4:
Step 401, continue to monitor the transmission quality of each Member Link, and confirm in view of the above whether each Member Link is available;
Step 402, judge whether the upstate of each Member Link variation has taken place;
Ifstep 403 has the upstate of Member Link that variation has taken place, calculate the current utilance of total bandwidth, and whether the current utilance of judging total bandwidth is greater than second threshold value;
If the upstate ofstep 404 Member Link does not all change, then finish whole flow process;
If the current utilance ofstep 405 total bandwidth>second threshold value judges that then this bundle link is unavailable;
If the current utilance ofstep 406 total bandwidth<=second threshold value judges that then this bundle link can use.
Wherein,step 403 is when implementing, and the current utilance of total bandwidth is total flow and the merchant of the current usable levels of total bandwidth in this bundle link.Concrete formula is following: the current usable levels of the total flow/total bandwidth in bandwidth availability ratio=bundle link, wherein, the current usable levels of bundle link total bandwidth equals the total bandwidth of available Member Link.
Lift an instantiation describes at present:
Suppose that bundle link is made up of the Member Link of three different rates, the bandwidth of Member Link is respectively: link R 10M, S 100M; Q 1000M, second threshold value, the peak use rate of the total bandwidth of promptly setting is 80%; Total flow in the bundle link is 80M, when the transmission quality of member's link changes, when causing R link and S link unavailable; Total bandwidth value=the 1000M of the Member Link that other are available, at this moment, current utilance=80/1000=8%<80% of total bandwidth; At this moment, judge that this bundle link can use; If the transmission quality of Member Link changes; When causing the Q link unavailable, the total bandwidth value=10+100=110M of the Member Link that other are available, at this moment; Current utilance=80/ (10+100)=72.7%<80% of total bandwidth judges that then this bundle link can use.
The bandwidth of above-mentioned Member Link number, each Member Link and the total flow in the bundle link are random number, can set up on their own according to actual conditions, are not limited to above-mentioned instance.
Based on same inventive concept, whether available the embodiment of the invention also provide a kind of definite bundle link device, can improve the accuracy of judging that bundle link is whether available, and concrete structure is as shown in Figure 5, and this device comprises:
First determination module 501 is used for confirming that bundle link has the upstate of Member Link to change;
Second determination module 502 is used for according to present flow rate the taking of said bundle link total bandwidth confirmed whether said bundle link is available.
Among the embodiment, as shown in Figure 6,first determination module 501 may further include:
Monitoring submodule 601 is used for the transmission quality of said each Member Link of bundle link is monitored;
First confirmssubmodule 602, is used for according to monitored results, confirms to have in the bundle link upstate of Member Link to change.
In one embodiment, monitoringsubmodule 601 can be further used for: following parameter one of them or the combination in any of monitoring each Member Link in the said bundle link: time delay, the error rate, packet loss.
In one embodiment, as shown in Figure 7,second determination module 502 can comprise:
First calculatingsub module 701 is used to calculate the current usable levels of said bundle link total bandwidth;
Second confirms to be used forsubmodule 702 when the current usable levels of said bundle link total bandwidth is not less than first threshold, confirms that said bundle link can use; During less than first threshold, confirm that said bundle link is unavailable in the current usable levels of said bundle link total bandwidth.
In one embodiment, as shown in Figure 8,second determination module 502 can comprise:
Second calculatingsub module 801 is used to calculate the current utilance of said bundle link total bandwidth;
The 3rd confirms to be used forsubmodule 802 when the current utilance of said bundle link total bandwidth is not more than second threshold value, confirms that said bundle link can use; During greater than second threshold value, confirm that said bundle link is unavailable in the current utilance of said bundle link total bandwidth.
In one embodiment, current utilance is the merchant of the total flow and the current usable levels of total bandwidth of said bundle link.
In the embodiment of the invention, confirm to have in the bundle link upstate of Member Link to change after, promptly by unavailable become available; Or by available become unavailable; Carry out the whether available judgement of said bundle link, judge that prerequisite is to have the upstate of Member Link to change in the bundle link, during judgement according to present flow rate taking to said bundle link total bandwidth; Not only can improve the accuracy of judging that bundle link is whether available; And because whether available the difference of each Member Link speed do not influence bundle link basis for estimation: present flow rate takies the bundle link total bandwidth, therefore; The embodiment of the invention is applicable to the judgement that bundle link that the different rates Member Link is formed is whether available, and is applied widely.
In embodiments of the present invention, can utilize the current utilance of total bandwidth to judge whether bundle link is available, consider the actual flow in the bundle link, also can improve the accuracy of judging that bundle link is whether available.
The embodiment of the invention does not have specific (special) requirements to the load sharing algorithm of bundle link yet, and therefore, in the implementation process, algorithm or computational process complicacy but the relatively more balanced algorithm of assignment of traffic all can uniformly inadequately to adopt the simple but assignment of traffic of computational process.
Obviously, those skilled in the art can carry out various changes and distortion to the present invention and not break away from the spirit and scope of the present invention.Like this, if these modifications of the present invention and distortion belong within claim of the present invention and the equivalent technologies scope thereof, then the present invention also is intended to comprise these changes and is out of shape interior.