Call distribution with the quality routing algorithm

 

Emin Gabrielyan

2010-12-09

 

The current version of the quality routing algorithm tries to obtain the desired load balance by picking up the call attempt for a vendor only if its counter of attempts already picked up in past is the weakest. The algorithm is not aware of a notion of a call and cannot distinguish the successive attempts belonging to the same call from two attempts belonging to two different calls. If the attempt is picked up and forwarded by the router to a vendor, the counter of the vendor is incremented. Thus the same call, if rejected by a vendor, can increment the counters of several vendors. The goal of this document is to discover the actual call distribution per vendor obtained by this algorithm that is unaware of the calls but of their attempts only.

 

We question also the eventual changes of call distribution under the condition of vendor side congestions of various intensities. Two other questions are addressed, whether the initial preference order has an impact on the actual call distribution while it is not the case for the attempt distribution. The question is of interest under vendor side congestions? And finally, do we have to decrement or correct the attempt counter of a vendor upon remote congestion signals?

 

In a previous document a simulation a few thousands of call attempts was carried out:

http://switzernet.com/3/public/101208-acd-routing-rejects/

http://unappel.ch/2/public/101208-acd-routing-rejects/

 

In this document we are trying to develop the analytical formulas for addressing to the same questions more precisely and without simulations.

 

For this purpose first we create a diagram of a complete cycle of possible scenarios for passing from the state of equilibrated counters to the next state of equilibrated counters. We consider 3 vendors, various congestion rates, and for the sake of simplicity identical target loads for all 3 vendors. We start the cycle with a state of equilibrated attempt counters, and at the end of the cycle, all possible scenarios for reaching the next state of equilibrated attempt counters are explored.

 

 

 

 

[xls]

 

 

The probabilities of all possible scenarios are computed as a function of the acceptance rates of three vendors. The call distribution is computed by summing up the weighted call numbers per scenario per vendor.

[xls]

 

The analytical formula for call distribution looks as follows:

 

Where “a” is the acceptance ration of the i-th vendor.

 

The following charts represent three combinations of acceptance ratios for three vendors. The ratios are shown in the order of the preference of the vendor in the billing: (40%, 80%, 80%), (80%, 40%, 80%), and (80%, 80%, 40%). As we see, the second chart mimics the first one. With the current algorithm the call distribution as a function of the acceptance ratio is similar when the vendor position swaps, except for the last position.

 

The first vendor has the lowest acceptance ratio:

 

The second vendor has the lowest acceptance ratio and the distribution is similar to that of above. Only the first and second values are swapped in resulting distributions.

 

The third vendor has the lowest acceptance ratio. In this case the overall picture changes and more calls are going away from the quality router.


 

 

References

 

Analytical method for computing the call distribution as a function of acceptance ratio of vendor connection

http://switzernet.com/3/public/101209-acd-routing-loads/

http://unappel.ch/2/public/101209-acd-routing-loads/

 

Target loads versus obtained loads with ACD Quality routing call rejection algorithm

http://switzernet.com/3/public/101208-acd-routing-rejects/

http://unappel.ch/2/public/101208-acd-routing-rejects/

 

An example of running quality routing system with three vendors:

http://switzernet.com/3/public/101026-acd-routing-mon/

http://www.unappel.ch/public/101026-acd-routing-mon/

 

ACD routing for fighting malicious routes with wrong signal supervision:

http://switzernet.com/public/091020-acd-routing/

http://unappel.ch/public/091020-acd-routing/

http://intarnet.com/2/public/091020-acd-routing/

http://parinternet.ch/2/public/091020-acd-routing/

 

Documentation of the current version as well as the details of the project:

http://switzernet.com/public/100331-acd-quality-routing/

http://unappel.ch/3/htdocs/public/100331-acd-quality-routing/

 

 

*   *   *

Copyright © 2009 – 2010, Switzernet