Skip to main content
Log in

On fairness in polling systems

  • S.I. : Avi-Itzhak-Sobel:Probability
  • Published:
Annals of Operations Research Aims and scope Submit manuscript

Abstract

Which service discipline is more fair, exhaustive or gated? gated or globally-gated? How can we compare their fairness level? These questions are usually answered by handwaving as no fundamental research in this topic was yet conducted. Polling systems are widely used in many computer networks where several users compete for access to a common resource. Fairness is a fundamental aspect of polling systems; perhaps it serves as the motivation behind various polling schemes. Despite this fundamental role, fairness to customers in polling systems has not been extensively studied to date. This work is an attempt to model fairness in polling systems and study the relative fairness of various polling schemes. We focus, in the context of this work, on evaluating the system’s obedience to the FCFS policy as a measure of the fairness experienced by the individual customers. Using this metric we study the cyclic polling system under five different service disciplines: exhaustive, gated, binomial-gated, two-stage gated and globally-gated. For these systems we derive their “fairness” level both in a discrete system model and in a continuous model. We use the analysis as well as numerical examples to provide basic observations on fairness of polling systems.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5

Similar content being viewed by others

Notes

  1. An exception is the variant of the binomial-gated method considered. While in each queue the customers are examined for service according to the FCFS policy, the customers set to be served are not necessarily the ones that arrived first at the system.

  2. The ROS and LIFO variants discussed are preemptive versions.

References

  • Adan, I. J. B. F., Boxma, O. J., Kapodistria, S., & Kulkarni, V. G. (2013). The shorter queue polling model. Annals of Operations Research, 1–34.

  • Altman, E., Khamisy, A., & Yechiali, U. (1992). On elevator polling with globally gated regime. Queueing Systems: Theory and Applications, 11(1–2), 85–90.

    Article  Google Scholar 

  • Avi-Itzhak, B., & Levy, H. (2004). On measuring fairness in queues. Advances in Applied Probability, 36, 919–936.

    Article  Google Scholar 

  • Avi-Itzhak, B., Brosh, E., & Levy, H. (2007). SQF: A slowdown queueing fairness measure. Performance Evaluation, 64(9–12), 1121–1136.

    Article  Google Scholar 

  • Avi-Itzhak, B., Levy, H., & Raz, D. (2008). Quantifying fairness in queuing systems: Principles, approaches, and applicability. Probability in the Engineering and Informational Sciences, 22(4), 495–517.

    Article  Google Scholar 

  • Boon, M. A. A., van der Mei, R. D., & Winands, E. M. M. (2011). Applications of polling systems. Surveys in Operations Research and Management Science, 16, 67–82.

    Article  Google Scholar 

  • Boxma, O., Levy, H., & Yechiali, U. (1992). Cyclic reservation schemes for efficient operation of multiple-queue single-server systems. Annals of Operations Research, 35(3), 187–208.

    Article  Google Scholar 

  • Boxma, O., Van Der Wal, J., & Yechiali, U. (2008a). Polling with batch service. Stochastic Models, 24(4), 604–625.

    Article  Google Scholar 

  • Boxma, O. J., van Wijk, A. C. C., & Adan, I. J. B. F. (2008b). Polling systems with a gated/exhaustive discipline. In Proceedings of the 3rd International Conference on Performance Evaluation Methodologies and Tools, ValueTools ’08 (pp. 41:1–41:9).

  • Browne, S., & Yechiali, U. (1989a). Dynamic priority rules for cyclic-type queues. Advances in Applied Probability, 21(2), 432–450.

    Article  Google Scholar 

  • Browne, S., & Yechiali, U. (1989b). Dynamic routing in polling systems. In M. Bonatti (Ed.), Teletraffic science for new cost-effective systems, networks, and services (pp. 1455–1466). Amsterdam: North-Holland.

  • Cooper, R. B. (1970). Queues served in cyclic order: Waiting times. Bell System Technical Journal, 49(6), 399–413.

    Article  Google Scholar 

  • Eisenberg, M. (1972). Queues with periodic service and changeover time. Operations Research, 20(2), 440–451.

    Article  Google Scholar 

  • Eliazar, I. (2003). The snowblower problem. Queueing Systems: Theory and Applications, 45(4), 357–380.

    Article  Google Scholar 

  • Gordon, E. S. (1987). New problems in queues-social injustice and server production management. Massachusetts Institute of Technology, Department of Nuclear Engineering.

  • Kingman, J. F. C. (1962). The effect of queue discipline on waiting time variance. In Proceedings of the Cambridge Philosophical Society (vol. 58, No. 13, pp. 163–164).

  • Knuth, D. E. (1998). The art of computer programming, volume 3: (2nd ed.) sorting and searching. Redwood City, CA: Addison Wesley Longman Publishing Co., Inc.

    Google Scholar 

  • Larson, R. C. (1987). Perspectives on queues: Social justice and the psychology of queueing. Operations Research, 35(6), 895–905.

    Article  Google Scholar 

  • Levy, H. (1991). Binomial-gated service: A method for effective operation and optimization of polling systems. IEEE Transactions on Communications, 39(9), 1341–1350.

    Article  Google Scholar 

  • Levy, H., & Sidi, M. (1990). Polling systems: Applications, modeling, and optimization. IEEE Transactions on Communications, 38(10), 1750–1760.

    Article  Google Scholar 

  • Martin, A. P. (1983). Think proactive: New insights into decision making. New York: Professional Development Institute.

    Google Scholar 

  • Park, C. G., Han, D. H., Lee, Y., & Kim, B. (2005a). Delay analysis of gated polling algorithm for DBA scheme in an EPON. In Proceedings of the 9th WSEAS International Conference on Computers pp. 106:1–106:6. World Scientific and Engineering Academy and Society (WSEAS).

  • Park, C., Han, D., & Rim, K. (2005b). Packet delay analysis of symmetric gated polling system for DBA scheme in an EPON. Telecommunication Systems, 30(1), 13–34.

    Article  Google Scholar 

  • Perel, N., & Yechiali, U. (2012). The Israeli Queue with finite and infinite number of families. Department of Statistics and Operations Research, Tel Aviv University.

  • Rafaeli, A., Barron, G., & Haber, K. (2002). The effects of queue structure on attitudes. Journal of Service Research, 5(2), 125–139.

    Article  Google Scholar 

  • Raz, D., Levy, H., & Avi-Itzhak, B. (2004). A resource-allocation queueing fairness measure. SIGMETRICS Performance Evaluation Review, 32(1), 130–141.

    Article  Google Scholar 

  • Sandmann, W. (2005). A discrimination frequency based queueing fairness measure with regard to job seniority and service requirement. In Next generation internet networks (pp. 106–113). doi:10.1109/NGI.2005.1431654.

  • Shapira, G., & Levy, H. (2015). Fairness in polling systems. Technical Report, http://www.researchgate.net.

  • Shoham, R., & Yechiali, U. (1992). Elevator-type polling systems. SIGMETRICS Performance Evaluation Review, 20(1), 125–139.

    Article  Google Scholar 

  • Sidi, M., Levy, H., & Fuhrmann, S. W. (1992). A queueing network with a single cyclically roving server. Queueing Systems: Theory and Applications, 11(1–2), 121–144.

    Article  Google Scholar 

  • Takagi, H. (1986). Analysis of polling systems. Cambridge: MIT Press.

    Google Scholar 

  • Takagi, H. (1991). Queueing analysis: A foundation of performance evaluation, Vol. 1: Vacation and priority systems. Amsterdam: Elsevier Science Ltd.

    Google Scholar 

  • Van Der Mei, R. D., & Resing, J. A. C. (2007). Polling models with two-stage gated service: Fairness versus efficiency. In Proceedings of the 20th International Teletraffic Conference on Managing Traffic Performance in Converged Networks (pp. 544–555).

  • Van Der Wal, J., & Yechiali, U. (2003). Dynamic visit-order rules for batch-service polling. Probability in the Engineering and Informational Sciences, 17(3), 351–367.

    Article  Google Scholar 

  • Van der Wal, J., & Yechiali, U. (2007). Polling with gated batch service. In Proceedings of the Sixth International Conference on Analysis of Manufacturing Systems (pp. 105–159). Lunteren, The Netherlands.

  • Van Wijk, A. C. C., Adan, I. J. B. F., Boxma, O. J., & Wierman, A. (2012). Fairness and efficiency for polling models with the k-gated service discipline. Performance Evaluation, 69(6), 274–288.

    Article  Google Scholar 

  • Yechiali, U. (1991). Optimal dynamic control of polling systems. In Queueing, performance and control in ATM: Proceedings of the 13th International Teletraffic Congress, Copenhagen, Denmark (pp. 205–217).

  • Yechiali, U. (1993). Analysis and control of polling systems. Performance Evaluation of Computer and Communication Systems, 729, 630–650.

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Hanoch Levy.

Additional information

Dedicated by H. Levy to Prof. Benjamin Avi-Itzhak, with many thanks for the endless hours of jointly toying with queue fairness.

Appendices

Appendix 1: Calculation of \(E[X_i^*| \text{ service } \text{ period } j ]\) and \(E[X_i^*| \text{ switch-over } \hbox {period} j]\) for gated discipline

The first and the second moments of the number of customers residing at the queues when queue i is polled, defined by Eqs. (2) and (3), were derived in Takagi (1986).

First, we derive \(E[X_i^*| \text{ service } \text{ period } j ]\). To obtain \(E[A_{i/j}^*]\) we observe that \(A_{i/j}^*\) is the number of Poisson arrivals in a period whose duration is distributed as the residual life of the service period \(S_j\). Thus, similarly to Eq. (15), \(E[A_{i/j}^*]\) is given by:

$$\begin{aligned} E[A_{i/j}^*] = \frac{\lambda _i}{2} \frac{E[{S_j}^2]}{E[S_j]}. \end{aligned}$$
(80)

The expected service period is derived from the number of customers waiting at the polling instant and the average service time for a single customer:

$$\begin{aligned} E[S_j] = f_j(j)b_j. \end{aligned}$$
(81)

To derive the second moment of \(S_j\) we use \(V[S_j]\) from Takagi (1986):

$$\begin{aligned} E[S_j^2] = (E[S_j])^2 + V[S_j] = f_j(j,j) b_j^2 + f_j(j) b_j^{(2)}. \end{aligned}$$
(82)

Therefore,

$$\begin{aligned} E[A_{i/j}^*] = \frac{\lambda _i \Big (f_j(j,j) b_j^2 + f_j(j) b_j^{(2)}\Big )}{2f_j(j)b_j} . \end{aligned}$$
(83)

The derivation of \(E[L_{i/j}^*]\) is similar to that of the Exhaustive service discipline, and we obtain the same formulas as in Eqs. (21) and (24):

$$\begin{aligned} E[L_{i/j}^*] = \left\{ \begin{array}{ll} \frac{f_j(i,j)}{f_j(j)}, &{}i \ne j \\ \frac{f_j(j,j)}{2f_j(j)} + 1, &{}i=j \end{array} \right. . \end{aligned}$$
(84)

By substituting Eqs. (83) and (84) in Eq. (11) we get:

$$\begin{aligned} E[X_i^*| \text{ service } \text{ period } j ] = \left\{ \begin{array}{ll} \frac{\lambda _i \big (b_j^2 f_j(j,j) + b_j^{(2)} f_j(j)\big )}{2f_j(j)b_j} + \frac{f_j(i,j)}{f_j(j)}, &{}i \ne j \\ \frac{\lambda _i \big (b_j^2 f_j(j,j) + b_j^{(2)} f_j(j)\big )}{2f_j(j)b_j} + \frac{f_j(j,j)}{2f_j(j)} + 1, &{}i=j \end{array} \right. . \end{aligned}$$
(85)

We derive \(E[X_i^*| \text{ switch-over } \text{ period } j]\) similarly. For \(i=j\) we observe that it consists of the sum of the number of Poisson arrivals in a period whose duration is distributed as the service period \(S_j\), and the number of Poisson arrivals in a period whose duration is distributed as the residual life of the switch-over period \(R_j\). Thus, we get:

$$\begin{aligned} E[X_i^*| \text{ switch-over } \text{ period } j] = \lambda _i E[S_j] + \frac{\lambda _i}{2} \frac{E[{R_j}^2]}{E[R_j]}, \quad (i = j). \end{aligned}$$
(86)

For \(i \ne j\), \(E[X_i^*| \text{ switch-over } \text{ period } j]\) additionally includes the customers that were waiting at queue j at the instant it was polled. Thus, we get:

$$\begin{aligned} E[X_i^*| \text{ switch-over } \text{ period } j] = f_j(i) + \lambda _i E[S_j] + \frac{\lambda _i}{2} \frac{E[{R_j}^2]}{E[R_j]}, \quad (i \ne j). \end{aligned}$$
(87)

Thus, from Eqs. (86), (87) and (81) we get:

$$\begin{aligned} E[X_i^*| \text{ switch-over } \text{ period } j] = \left\{ \begin{array}{ll} f_j(i) + f_j(j) b_j \lambda _i + \frac{\lambda _i r_j^{(2)}}{2 r_j}, &{}i \ne j \\ f_i(i) b_i \lambda _i + \frac{\lambda _i r_i^{(2)}}{2r_i}, &{}i=j \end{array} \right. \cdot \end{aligned}$$
(88)

Appendix 2: Notations and basic relations

\(\tilde{C}\) :

An arbitrary customer arriving at the system.

\(\tilde{C}_i\) :

An arbitrary customer arriving at queue i.

N :

Number of queues in the system.

\(\lambda _i\) :

Intensity of the Poisson arrival to queue i.

\(\lambda \) :

System arrival rate; \(\lambda =\sum _{i=1}^{N}{\lambda _i}\).

\(B_i\) :

Service time of a customer at queue i.

\(b_i\), \(b_i^{(2)}\) :

Mean and second moment of \(B_i\).

\(S_i\) :

Duration of the service period in queue i.

\(R_i\) :

Duration of switch-over period from queue i.

\(r_i\), \(r_i^{(2)}\) :

Mean and second moment of \(R_i\).

r :

\(=\sum _{i=1}^{N}{r_i}\).

\(\rho _i\) :

Utilization of queue i; \(\rho _i=\lambda _i b_i\).

\(\rho \) :

System utilization; \(\rho = \sum _{i=1}^{N}{\rho _i}\).

\(X_i^j\) :

Number of customers residing at queue j when queue i is polled.

\(W_i\) :

Waiting time of a customer at queue i.

C :

Length of the server cycle.

\(X_i\) :

Number of customers residing at queue i when it is polled; \(X_i = X_i^i\).

\(f_i(j)\) :

\(E[X_i^j]\).

\(f_i(j,k)\) :

\(\left\{ \begin{array}{ll} E[X_i^j X_i^k], &{}j \ne k\\ E[X_i^j (X_i^j-1)], &{}j=k\\ \end{array} \right. \)

\(X_i^*\) :

Number of customers residing at queue i at an arbitrary moment.

\(E[X_i^*| \text{ service } \text{ period } j ]\) :

Mean number of customers residing at queue i at an arbitrary epoch of the service period in queue j.

\(X^*\) :

Number of customers residing at the entire system at an arbitrary moment.

\(Z_{j,k}\) :

The event that an arbitrary observation point of a type-j service period corresponds to a service period in which \(X_j=k\).

\(Y_i^*\) :

Number of customers residing at the entire system, found by an arbitrary type-i customer arriving at an arbitrary moment, and served ahead of it (fair).

\(E[Y_i^*| \text{ service } \text{ period } j ]\) :

Mean number of customers residing at the entire system, found by an arbitrary type-i customer arriving at an arbitrary epoch of the service period in queue j, and served ahead of it (fair).

\(Y^*\) :

Number of customers residing at the entire system (out of \(X^*\)), found by an arbitrary customer arriving at an arbitrary moment, and served ahead of it (fair).

\(U_i^*\) :

Number of customers residing at the entire system, found by an arbitrary type-i customer arriving at an arbitrary moment, and served after it (unfair).

\(U^*\) :

Number of customers residing at the entire system (out of \(X^*\)), found by an arbitrary customer arriving at an arbitrary moment, and served after of it (unfair).

F :

The fairness level of the system, fraction of “the expected number of customers that were served ahead of a tagged arbitrary customer \(\tilde{C}\)” out of “the expected number of customers that were present at the system upon customer \(\tilde{C}\)’s arrival”; \(F = \frac{E[Y^*]}{E[X^*]} = 1 - \frac{E[U^*]}{E[X^*]}\).

\(F_{cont}\) :

The fairness level of the continuous polling system; \(F_{cont} = 1-\frac{E[N_{slips}]}{E[N_{arrivals}]}\).

\(L_{i/j}^*\) :

Number of customers residing at queue i at an arbitrary epoch of the service period in queue j, out of the ones who resided at the queue at the beginning of that service period.

\(A_{i/j}^*\) :

Number of customers residing at queue i at an arbitrary epoch of the service period in queue j, out of the ones who arrived at the queue at during that service period.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Shapira, G., Levy, H. On fairness in polling systems. Ann Oper Res 317, 253–285 (2022). https://doi.org/10.1007/s10479-016-2247-8

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10479-016-2247-8

Keywords

Navigation