US5754786A
Expired / Lapsed
US
⏱️ 0.0 years remaining
System and method for integrated overload control and message distribution
Assignee: AT&T Inc
•
Filing: 1996-09-13
•
Granted: 1998-05-19
•
Expires: 2016-09-13
Abstract
Abstract A message distribution system having multiple message processors provides integrated overload control and message distribution. An additional "dummy" message processor is established by the system, to which a certain fraction of messages is assigned as though it were a real processor, thereby accomplishing rejection of that fraction of messages. The fraction to be rejected is determined in real time based on the states of the various processors, which also is the basis for the allocation among the processors of those messages that are not rejected.
Inventors
- 👤 Alvaro H. Diaz
- 👤 Rodolfo Alberto Milito
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-11-02 17:06
CPC Classifications
H; H04; H04Q; H04Q3/00; H04Q3/64; H04Q3/66; H04Q2213/00; H04Q2213/13107; H04Q2213/13274; H04Q2213/13336; H04Q2213/13344; H04Q2213/13352
Claims Analysis
Total Claims: 32
Claim 1
Independent Claim
154 words
A method for controlling overload and distributing messages among message processors in a system, said system having a plurality of message processors and at least one distribution node for receiving messages and distributing said messages to said message processors, wherein different ones of said messages occupy respective ones of said message processors for different durations, said method comprising the steps of: providing a virtual message processor in addition to said plurality of message processors, whereby messages arriving at said virtual message processor are denied processing by said system; monitoring operation of said system to determine a respective level of activity for each of said message processors and for said system; calculating from said respective levels of activity a desired distribution of messages among said message processors and said virtual message processor; and distributing messages from said distribution node to said message processors and said virtual message processor in accordance with said calculated desired distribution.
Claim 2
Independent Claim
154 words
A method for controlling overload and distributing messages among message processors in a system, said system having a plurality of message processors and at least one distribution node for receiving messages and distributing said messages to said message processors, wherein different ones of said messages occupy respective ones of said message processors for different durations, said method comprising the steps of: providing a virtual message processor in addition to said plurality of message processors, whereby messages arriving at said virtual message processor are denied processing by said system; monitoring operation of said system to determine a respective level of activity for each of said message processors and for said system; calculating from said respective levels of activity a desired distribution of messages among said message processors and said virtual message processor; and distributing messages from said distribution node to said message processors and said virtual message processor in accordance with said calculated desired distribution.
Claim 3
Dependent Claim
30 words
The method of claim 1 wherein: said monitoring and calculating steps occur at regular intervals; and said calculated desired distribution is used in said distributing step between said regular intervals.
Claim 4
Dependent Claim
20 words
The method of claim 2 wherein said monitoring and calculating steps are performed by said at least one distribution node.
Claim 5
Dependent Claim
52 words
The method of claim 3 wherein: when said system comprises a plurality of said distribution nodes, said monitoring and calculating steps are performed independently by each of said distribution nodes; and each of said distribution nodes distributes said messages to said message processors in accordance with a respective independently calculated desired distribution.
Claim 6
Dependent Claim
17 words
The method of claim 4 wherein said regular intervals are identical for all of said distribution nodes.
Claim 7
Dependent Claim
17 words
The method of claim 5 wherein said regular intervals occur at staggered times among said distribution nodes.
Claim 8
Dependent Claim
18 words
The method of claim 4 wherein said regular intervals are different for different ones of said distribution nodes.
Claim 9
Dependent Claim
126 words
The method of claim 2 further comprising establishing a respective credit bank corresponding to each said message processor and said virtual message processor; wherein: said monitoring and calculating steps comprise: whenever a message arrives at a distribution node, deriving from said desired distribution a respective fractional credit to be deposited in each respective credit bank, said respective fractional credits summing to one credit unit; and said distributing step comprises: identifying one of said credit banks having a higher credit balance than any other one of said credit banks, distributing said message to one of said message processors corresponding to said one of said banks having said higher credit balance, and subtracting a unit of credit from said one of said banks having said higher credit balance.
Claim 10
Dependent Claim
52 words
The method of claim 1 wherein: when said system comprises a plurality of said distribution nodes, said monitoring and calculating steps are performed independently by each of said distribution nodes; and each of said distribution nodes distributes said messages to said message processors in accordance with a respective independently calculated desired distribution.
Claim 11
Dependent Claim
43 words
The method of claim 1 wherein, when said system comprises at least one system processor associated with said message processors, said monitoring step comprises monitoring activity of said at least one system processor as part of said level of activity for said system.
Claim 12
Dependent Claim
45 words
The method of claim 1 wherein said calculating step comprises calculating a desired distribution in which a fraction of arriving messages is directed to said virtual message processor, and all messages not directed to said virtual message processor are distributed uniformly among said message processors.
Claim 13
Dependent Claim
54 words
The method of claim 1 wherein said calculating step comprises calculating a desired distribution in which a fraction of arriving messages is directed to said virtual message processor, and all messages not directed to said virtual message processor are distributed among said message processors according to said levels of activity of said message processors.
Claim 14
Dependent Claim
85 words
The method of claim 12 wherein: said monitoring step comprises determining said levels of activity as a function of number of messages being serviced by each of said message processors; and said calculating step comprises calculating a desired distribution in which a fraction of arriving messages is directed to said virtual message processor, and all messages not directed to said virtual message processor are distributed among said message processors in inverse proportion to said numbers of messages being serviced by each of said message processors.
Claim 15
Dependent Claim
77 words
The method of claim 12 wherein: said monitoring step comprises determining said levels of activity as a function of utilization of each of said message processors; and said calculating step comprises calculating a desired distribution in which a fraction of arriving messages is directed to said virtual message processor, and all messages not directed to said virtual message processor are distributed among said message processors in inverse proportion to said utilization of each of said message processors.
Claim 16
Dependent Claim
140 words
A message processing system comprising: a plurality of message processors; at least one distribution node for receiving messages and distributing said messages to said message processors, wherein different ones of said messages occupy respective ones of said message processors for different durations; a virtual message processor in addition to said plurality of message processors, whereby messages arriving at said virtual message processor are denied processing by said system; a monitor of said system to determine a respective level of activity for each of said message processors and for said system; and a distribution calculator for calculating from said respective levels of activity a desired distribution of messages among said message processors and said virtual message processor; wherein: messages are distributed from said distribution node to said message processors and said virtual message processor in accordance with said calculated desired distribution.
Claim 17
Dependent Claim
140 words
A message processing system comprising: a plurality of message processors; at least one distribution node for receiving messages and distributing said messages to said message processors, wherein different ones of said messages occupy respective ones of said message processors for different durations; a virtual message processor in addition to said plurality of message processors, whereby messages arriving at said virtual message processor are denied processing by said system; a monitor of said system to determine a respective level of activity for each of said message processors and for said system; and a distribution calculator for calculating from said respective levels of activity a desired distribution of messages among said message processors and said virtual message processor; wherein: messages are distributed from said distribution node to said message processors and said virtual message processor in accordance with said calculated desired distribution.
Claim 18
Dependent Claim
31 words
The system of claim 15 wherein: said monitor and said distribution calculator operate at regular intervals; and said calculated desired distribution is used to distribute said messages between said regular intervals.
Claim 19
Dependent Claim
21 words
The system of claim 16 wherein each said at least one distribution node functions as said monitor and said distribution calculator.
Claim 20
Dependent Claim
49 words
The system of claim 17 comprising a plurality of said distribution nodes; wherein: each of said distribution nodes operates independently as said monitor and said distribution calculator; and each of said distribution nodes distributes said messages to said message processors in accordance with a respective independently calculated desired distribution.
Claim 21
Dependent Claim
17 words
The system of claim 18 wherein said regular intervals are identical for all of said distribution nodes.
Claim 22
Dependent Claim
17 words
The system of claim 19 wherein said regular intervals occur at staggered times among said distribution nodes.
Claim 23
Dependent Claim
18 words
The system of claim 18 wherein said regular intervals are different for different ones of said distribution nodes.
Claim 24
Dependent Claim
137 words
The system of claim 16 further comprising a respective credit bank corresponding to each said message processor and said virtual message processor; wherein: whenever a message arrives at a distribution node, said distribution calculator derives from said desired distribution a respective fractional credit to be deposited in each respective credit bank, said respective fractional credits summing to one credit unit; and messages are distributed from said distribution node to one of said message processors and said virtual message processor by: identifying one of said credit banks having a higher credit balance than any other one of said credit banks, distributing said message to one of said message processors corresponding to said one of said banks having said higher credit balance, and subtracting a unit of credit from said one of said banks having said higher credit balance.
Claim 25
Dependent Claim
49 words
The system of claim 15 comprising a plurality of said distribution nodes; wherein: each of said distribution nodes operates independently as said monitor and said distribution calculator; and each of said distribution nodes distributes said messages to said message processors in accordance with a respective independently calculated desired distribution.
Claim 26
Dependent Claim
39 words
The system of claim 15 further comprising at least one system processor associated with said message processors; wherein: said monitor monitors activity of said at least one system processor as part of said level of activity for said system.
Claim 27
Dependent Claim
44 words
The system of claim 15 wherein said distribution calculator calculates a desired distribution in which a fraction of arriving messages is directed to said virtual message processor, and all messages not directed to said virtual message processor are distributed uniformly among said message processors.
Claim 28
Dependent Claim
53 words
The system of claim 15 wherein said distribution calculator calculates a desired distribution in which a fraction of arriving messages is directed to said virtual message processor, and all messages not directed to said virtual message processor are distributed among said message processors according to said levels of activity of said message processors.
Claim 29
Dependent Claim
82 words
The system of claim 26 wherein: said monitor determines said levels of activity as a function of number of messages being serviced by each of said message processors; and said distribution calculator calculates a desired distribution in which a fraction of arriving messages is directed to said virtual message processor, and all messages not directed to said virtual message processor are distributed among said message processors in inverse proportion to said numbers of messages being serviced by each of said message processors.
Claim 30
Dependent Claim
74 words
The system of claim 26 wherein: said monitor determines said levels of activity as a function of utilization of each of said message processors; and said distribution calculator calculates a desired distribution in which a fraction of arriving messages is directed to said virtual message processor, and all messages not directed to said virtual message processor are distributed among said message processors in inverse proportion to said utilization of each of said message processors.
Claim 31
Independent Claim
278 words
A method for controlling overload in a distributed message processing system, said system having a plurality of at least one type of processor, one of said at least one type being message processor, wherein each message to be processed is routed to one of said message processors as said message arrives, said method being for maintaining performance targets for said system, said method comprising the steps of: measuring, at regular intervals, performance of processors in said system to obtain performance measurements; filtering said performance measurements to minimize random fluctuations in performance to obtain consistent filtered performance values; establishing a respective bank for each respective message processor, and a virtual bank for determining a rate of rejection of arriving messages; adjusting a throttling parameter in response to said filtered performance values, said throttling parameter functioning as credit to said virtual bank for determining a rate of rejection of arriving messages; as each said message arrives, allocating credits to each said respective bank, other than said virtual bank, in inverse proportion to at least one of (a) utilization, (b) buffer occupancy, and (c) delay, of said respective message processor; as each said message arrives, finding that one of said respective banks and virtual bank having a maximum credit, and routing said arriving message to said respective message processor when said one of said respective banks and virtual bank having a maximum credit is one of said banks, and rejecting said message when said one of said respective banks and virtual bank having a maximum credit is said virtual bank; and subtracting a unit of credit from said one of said respective banks and virtual bank upon said routing or rejection.
Claim 32
Independent Claim
278 words
A method for controlling overload in a distributed message processing system, said system having a plurality of at least one type of processor, one of said at least one type being message processor, wherein each message to be processed is routed to one of said message processors as said message arrives, said method being for maintaining performance targets for said system, said method comprising the steps of: measuring, at regular intervals, performance of processors in said system to obtain performance measurements; filtering said performance measurements to minimize random fluctuations in performance to obtain consistent filtered performance values; establishing a respective bank for each respective message processor, and a virtual bank for determining a rate of rejection of arriving messages; adjusting a throttling parameter in response to said filtered performance values, said throttling parameter functioning as credit to said virtual bank for determining a rate of rejection of arriving messages; as each said message arrives, allocating credits to each said respective bank, other than said virtual bank, in inverse proportion to at least one of (a) utilization, (b) buffer occupancy, and (c) delay, of said respective message processor; as each said message arrives, finding that one of said respective banks and virtual bank having a maximum credit, and routing said arriving message to said respective message processor when said one of said respective banks and virtual bank having a maximum credit is one of said banks, and rejecting said message when said one of said respective banks and virtual bank having a maximum credit is said virtual bank; and subtracting a unit of credit from said one of said respective banks and virtual bank upon said routing or rejection.
References Cited (Backward Citations)
US5479407A
Cited
US5655120A
Cited
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 2001-05-18 | 2001-11-17 | 2002-05-19 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2005-05-18 | 2005-11-17 | 2006-05-19 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2009-05-18 | 2009-11-17 | 2010-05-19 | $7700.00 | Window Closed / Lapsed |