A method and apparatus are disclosed for alleviating congestion and overload
in
a distributed call-processing system interconnected through a packet based network.
The illustrative Internet Protocol network includes a plurality of end terminals
and distributed call processors. According to an aspect of the invention, the call
processor will determine whether to process a call request or to forward the request
to another call processor. Generally, the call processor will declare an overload
condition if sufficient resources (including processing or memory resources) are
not available to process a given call. If a call processor determines that it is
too congested to process a call, the call processor enters an overload condition,
selects an alternate call processor and forwards the request to the alternate call
processor. Each call processor maintains an ordered list of call processors that
indicates whether or not each call processor is overloaded.