US5872930A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Load balancing between E-mail servers within a local area network
Assignee: Microsoft Technology Licensing LLC
•
Filing: 1996-07-11
•
Granted: 1999-02-16
•
Expires: 2016-07-11
Abstract
Abstract Message traffic is balanced between a plurality of alternative message routes connecting a plurality sites in an electronic messaging system by assigning a cost to each potential message route between the plurality of sites. The cost defines a desired relative frequency of usage for the corresponding message route. A weight is calculated for each potential message route based on its assigned cost of connecting one site to another site. A message route between the one site and the other site is chosen based on the collective calculated weights and a message is transmitted over the chosen message route from one site to the other site.
Inventors
- 👤 Steven Paul Masters
- 👤 Eric Neil Lockard
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-10-29 19:31
CPC Classifications
H; H04; H04L; H04L51/00; H04L51/21; H04L51/226
Claims Analysis
Total Claims: 29
Claim 1
Independent Claim
295 words
In an electronic message system having at least a first site and a second site, each site having one or more servers and the servers at the first site being linked with the servers at the second site by a plurality of alternative message routes, a method for transmitting information over said plurality of message routes according to a desired distribution which balances message traffic between the alternative message routes so as to facilitate efficient message distribution notwithstanding an arbitrarily large number of servers at any of the sites, the method comprising the steps of: assigning a cost value to each alternative message route between the servers at the first site and servers at the second site, the cost value defining a desired relative frequency of usage of the message route to which the cost value is assigned, one of the alternative message routes having a special cost value assigned thereto; calculating a weight for each alternative message route between the first site and the second site based on its assigned cost value, and based upon a comparison of the cost value of the particular message route to the combined cost values of all of said alternative message routes between said first site and said second site, the weight representing the relative probability of its corresponding message route being chosen for message transmission; generating a message distribution scheme which will distribute electronic messages among all alternative message routes based upon the relative probability with which they will be chosen to transmit a message between servers at the first and second sites; choosing a message route between the first site and the second site based on the distribution scheme; and transmitting a message over the chosen message route from the first site to the second site.
Claim 2
Dependent Claim
295 words
In an electronic message system having at least a first site and a second site, each site having one or more servers and the servers at the first site being linked with the servers at the second site by a plurality of alternative message routes, a method for transmitting information over said plurality of message routes according to a desired distribution which balances message traffic between the alternative message routes so as to facilitate efficient message distribution notwithstanding an arbitrarily large number of servers at any of the sites, the method comprising the steps of: assigning a cost value to each alternative message route between the servers at the first site and servers at the second site, the cost value defining a desired relative frequency of usage of the message route to which the cost value is assigned, one of the alternative message routes having a special cost value assigned thereto; calculating a weight for each alternative message route between the first site and the second site based on its assigned cost value, and based upon a comparison of the cost value of the particular message route to the combined cost values of all of said alternative message routes between said first site and said second site, the weight representing the relative probability of its corresponding message route being chosen for message transmission; generating a message distribution scheme which will distribute electronic messages among all alternative message routes based upon the relative probability with which they will be chosen to transmit a message between servers at the first and second sites; choosing a message route between the first site and the second site based on the distribution scheme; and transmitting a message over the chosen message route from the first site to the second site.
Claim 3
Dependent Claim
25 words
The method of claim 1 in which the step of assigning a cost value to each alternative message route is performed off-line by an administrator.
Claim 4
Dependent Claim
45 words
The method of claim 1 in which the step of assigning a cost value to each alternative message route, wherein, according to the distribution scheme, the message route associated with the special cost value has a 100% probability of being chosen in the choosing step.
Claim 5
Dependent Claim
30 words
The method of claim 3 in which the message is transmitted, in the transmitting step, over the associated message route, so long as the associated message route does not fail.
Claim 6
Dependent Claim
46 words
The method of claim 1 in which the step of assigning a cost value to each potential alternative message route, wherein, according to the distribution scheme, the message route associated with the special cost value has a 0% probability of being chosen in the choosing step.
Claim 7
Dependent Claim
37 words
The method of claim 5 in which according to the distribution scheme, no message is to be transmitted over the message route associated with the special cost value except when no other alternative message route is available.
Claim 8
Dependent Claim
48 words
The method of claim 1 in which the step of calculating a weight for each alternative message route comprises subtracting a particular message route's cost value from a sum of the cost values for the plurality of alternative message routes between the first site and the second site.
Claim 9
Dependent Claim
65 words
The method of claim 1 in which the step of generating a distribution scheme comprises: constructing a weight table having a number of positions equal to a sum of the weights for the plurality of alternative message routes between the first site and the second site; and associating a number of positions in the weight table to each alternative message route equal to its weight.
Claim 10
Dependent Claim
42 words
The method of claim 8 in which the step of choosing comprises: generating a random number; comparing the random number with the weight table; and picking a message route having an assigned position in the weight table corresponding to the random number.
Claim 11
Dependent Claim
26 words
The method of claim 1 in which the step of choosing comprises generating a random number and evaluating the random number against the collective calculated weights.
Claim 12
Dependent Claim
49 words
The method of claim 1 in which the step of calculating a weight for each alternative message route is conducted such that the relative probability of choosing a message route having a low cost is higher than the relative probability of choosing a message route having a high cost.
Claim 13
Dependent Claim
74 words
The method of claim 1 in which the step of choosing a message route and the step of transmitting a message over the chosen message route are repeatedly conducted, and wherein the choosing is probabilistic such that an actual relative frequency of usage for each message route converges toward the desired relative frequency of usage for each message route as a cumulative number of transmissions from the first site to the second site increases.
Claim 14
Dependent Claim
22 words
The method of claim 1 in which the step of transmitting comprises performing a remote procedure call over the chosen message route.
Claim 15
Dependent Claim
22 words
The method of claim 1 in which the step of transmitting comprises transmitting a plurality of messages over the chosen message route.
Claim 16
Dependent Claim
23 words
The method of claim 1 further comprising repeating the step of choosing and the step of transmitting for each new message transmission sequence.
Claim 17
Dependent Claim
19 words
The method of claim 15 in which a plurality of individual messages are transmitted during each message transmission sequence.
Claim 18
Dependent Claim
35 words
The method of claim 1 further comprising repeating the step of choosing and the step of transmitting for a plurality of different sites in the electronic message system without reassigning costs values or recalculating weights.
Claim 19
Dependent Claim
26 words
The method of claim 1 in which the step of transmitting causes the message to pass from one site address space to another site address space.
Claim 20
Dependent Claim
324 words
In an electronic message system having at least a first site and a second site, cach site having one or more servers and the servers at the first site being linked with the servers at the second site by a plurality of alternative message routes, a computer program product for implementing a method of transmitting information over said plurality of message routes according to a desired distribution which balances message traffic between the alternative message routes, the computer program product comprising: a computer readable medium for carrying computer-executable instructions for implementing said method, wherein said computer readable medium stores cost values assigned to each alternative message route between the servers at the first site and the servers at the second site, the cost values defining a desired relative frequency of usage of the message route to which the cost value is assigned; and said computer-executable instructions comprising: program code means for calculating a weight for each alternative message route between the first site and the second site based on its assigned cost value, and based upon a comparison of the cost value of the particular message route to the combined cost values of all of said alternative message routes between said first site and said second site, the weight representing the relative probability of its corresponding message route being chosen for message transmission, one of the alternative message routes having a special cost value assigned thereto; program code means for generating a message distribution scheme which will distribute electronic messages among all alternative message routes based upon the relative probability with which they will be chosen to transmit a message between servers at the first and second sites; program code means for choosing a message route between the first site and the second site based on the distribution scheme; and program code means for initiating transmission of one or more messages over the chosen message route from the first site to the second site.
Claim 21
Dependent Claim
324 words
In an electronic message system having at least a first site and a second site, cach site having one or more servers and the servers at the first site being linked with the servers at the second site by a plurality of alternative message routes, a computer program product for implementing a method of transmitting information over said plurality of message routes according to a desired distribution which balances message traffic between the alternative message routes, the computer program product comprising: a computer readable medium for carrying computer-executable instructions for implementing said method, wherein said computer readable medium stores cost values assigned to each alternative message route between the servers at the first site and the servers at the second site, the cost values defining a desired relative frequency of usage of the message route to which the cost value is assigned; and said computer-executable instructions comprising: program code means for calculating a weight for each alternative message route between the first site and the second site based on its assigned cost value, and based upon a comparison of the cost value of the particular message route to the combined cost values of all of said alternative message routes between said first site and said second site, the weight representing the relative probability of its corresponding message route being chosen for message transmission, one of the alternative message routes having a special cost value assigned thereto; program code means for generating a message distribution scheme which will distribute electronic messages among all alternative message routes based upon the relative probability with which they will be chosen to transmit a message between servers at the first and second sites; program code means for choosing a message route between the first site and the second site based on the distribution scheme; and program code means for initiating transmission of one or more messages over the chosen message route from the first site to the second site.
Claim 22
Dependent Claim
27 words
The computer program product of claim 19 in which the program code means for choosing a message route comprise program code means for generating a random number.
Claim 23
Dependent Claim
57 words
The computer program product of claim 19 in which one of the cost values stored by tile computer readable medium is a special cost value, wherein, according to the distribution scheme, the message route associated with the special cost value has a 100% probability of being chosen by the program code means for choosing a message route.
Claim 24
Dependent Claim
57 words
The computer program product of claim 19 in which one of the cost values stored by the computer readable medium is a special cost value, wherein, according to the distribution scheme, the message route associated with the special cost value has a 0% probability of being chosen by the program code means for choosing a message route.
Claim 25
Dependent Claim
367 words
In an electronic message system having at least a first site and a second site, each site having one or more servers and the servers at the first site being linked with the servers at the second site by a plurality of alternative message routes, a method for transmitting information over said plurality of message routes according to a desired distribution which balances message traffic between the alternative message routes so as to facilitate efficient message distribution notwithstanding an arbitrarily large number of servers at any of the sites, the method comprising the steps of: assigning a cost value to each alternative message route between the servers at the first site and the servers at the second site, the cost value defining a desired relative frequency of usage of the message route to which the cost value is assigned, one of the alternative message routes having a special cost value assigned thereto; calculating a weight for each alternative message route between the first site and the second site based on its assigned cost value, and based upon a comparison of the cost value of the particular message route to the cost values of others of said alternative message routes between said first site and said second site, the weight representing the relative probability of its corresponding message route being chosen for message transmission; generating a message distribution scheme which will distribute electronic messages among the alternative message routes based upon the relative probability with which they will be chosen to transmit a message between servers at the first and second sites, the message distribution scheme specifying that the message route associated with the special cost value is to be chosen to transmit the message only when no other alternative message route is available for message transmission; and transmitting a message from the first site to the second site, comprising the steps of: choosing a message route from the first site to the second site based on the distribution scheme, and, if the chosen message route is available for message transmission, transmitting the message thereover; and if the chosen message route is unavailable for message transmission, continuing choosing alternative message routes until an available message route is chosen.
Claim 26
Dependent Claim
367 words
In an electronic message system having at least a first site and a second site, each site having one or more servers and the servers at the first site being linked with the servers at the second site by a plurality of alternative message routes, a method for transmitting information over said plurality of message routes according to a desired distribution which balances message traffic between the alternative message routes so as to facilitate efficient message distribution notwithstanding an arbitrarily large number of servers at any of the sites, the method comprising the steps of: assigning a cost value to each alternative message route between the servers at the first site and the servers at the second site, the cost value defining a desired relative frequency of usage of the message route to which the cost value is assigned, one of the alternative message routes having a special cost value assigned thereto; calculating a weight for each alternative message route between the first site and the second site based on its assigned cost value, and based upon a comparison of the cost value of the particular message route to the cost values of others of said alternative message routes between said first site and said second site, the weight representing the relative probability of its corresponding message route being chosen for message transmission; generating a message distribution scheme which will distribute electronic messages among the alternative message routes based upon the relative probability with which they will be chosen to transmit a message between servers at the first and second sites, the message distribution scheme specifying that the message route associated with the special cost value is to be chosen to transmit the message only when no other alternative message route is available for message transmission; and transmitting a message from the first site to the second site, comprising the steps of: choosing a message route from the first site to the second site based on the distribution scheme, and, if the chosen message route is available for message transmission, transmitting the message thereover; and if the chosen message route is unavailable for message transmission, continuing choosing alternative message routes until an available message route is chosen.
Claim 27
Dependent Claim
377 words
In an electronic message system having at least a first site and a second site, each site having one or more servers and the servers at the first site being linked with the servers at the second site by a plurality of alternative message routes, a method for transmitting information over said plurality of message routes according to a desired distribution which balances message traffic between the alternative message routes so as to facilitate efficient message distribution notwithstanding an arbitrarily large number of servers at any of the sites, the method comprising the steps of: assigning a cost value to each alternative message route between the servers at the first site and the servers at the second site, the cost value defining a desired relative frequency of usage of the message route to which the cost value is assigned, one of the alternative message routes having a special cost value assigned thereto; calculating a weight for each alternative message route that does not have the special cost value, based on its assigned cost value, and based upon a comparison of the cost value of the particular message route to the cost values of others of said alternative message rotates between said first site and said second site, the weight representing the relative probability of its corresponding message route being chosen for message transmission in the event that the message route associated with the special cost value is unavailable for message transmission; generating a message distribution scheme which will distribute electronic messages among the alternative message routes based upon the relative probability with which they will be chosen for message transmission in the event that the massage route associated with the special cost value fails; selecting the message route associated with the special cost value and, if the message route associated with the special cost value if it is available for message transmission, transmitting a message thereover from the first site to the second site; and in the event that the message route associated with the special cost value is unavailable for message transmission: choosing another message route between the first site and the second site based on the distribution scheme; and transmitting said message over the chosen message route from the first site to the second site.
Claim 28
Dependent Claim
377 words
In an electronic message system having at least a first site and a second site, each site having one or more servers and the servers at the first site being linked with the servers at the second site by a plurality of alternative message routes, a method for transmitting information over said plurality of message routes according to a desired distribution which balances message traffic between the alternative message routes so as to facilitate efficient message distribution notwithstanding an arbitrarily large number of servers at any of the sites, the method comprising the steps of: assigning a cost value to each alternative message route between the servers at the first site and the servers at the second site, the cost value defining a desired relative frequency of usage of the message route to which the cost value is assigned, one of the alternative message routes having a special cost value assigned thereto; calculating a weight for each alternative message route that does not have the special cost value, based on its assigned cost value, and based upon a comparison of the cost value of the particular message route to the cost values of others of said alternative message rotates between said first site and said second site, the weight representing the relative probability of its corresponding message route being chosen for message transmission in the event that the message route associated with the special cost value is unavailable for message transmission; generating a message distribution scheme which will distribute electronic messages among the alternative message routes based upon the relative probability with which they will be chosen for message transmission in the event that the massage route associated with the special cost value fails; selecting the message route associated with the special cost value and, if the message route associated with the special cost value if it is available for message transmission, transmitting a message thereover from the first site to the second site; and in the event that the message route associated with the special cost value is unavailable for message transmission: choosing another message route between the first site and the second site based on the distribution scheme; and transmitting said message over the chosen message route from the first site to the second site.
Claim 29
Dependent Claim
63 words
The method of claim 24 in which the step of assigning cost values comprises assigning a second special cost value to one of the alternative message routes, wherein the message distribution scheme specifies that the message route associated with the special cost value is to be chosen to transmit the message only when no other alternative message route is available for message transmission.
References Cited (Backward Citations)
US4484326A
Cited
US5029075A
Cited
US4745593A
Cited
US5247676A
Cited
US5218699A
Cited
US5253248A
Cited
US5265033A
Cited
US5283856A
Cited
US5381404A
Cited
US5317566A
Cited
US5621727A
Cited
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 2002-02-15 | 2002-08-17 | 2003-02-16 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2006-02-15 | 2006-08-17 | 2007-02-16 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2010-02-15 | 2010-08-17 | 2011-02-16 | $7700.00 | Window Closed / Lapsed |