Abstract
We consider the problem of managing a bounded size First-In-First-Out (FIFO) queue buffer, where each incoming unit-sized packet requires several rounds of processing before it can be transmitted out. Our objective is to maximize the total number of successfully transmitted packets. We consider both push-out (when a policy is permitted to drop already admitted packets) and non-push-out cases. We provide worst-case guarantees for the throughput performance of our algorithms, proving both lower and upper bounds on their competitive ratio against the optimal algorithm, and conduct a comprehensive simulation study that experimentally validates predicted theoretical behavior.




Similar content being viewed by others
Notes
Note that two cores are not allowed to process the same packet simultaneously.
Here, again, there is room for different possible interpretations of LPO; we might assume that packets with zero processing left can be transmitted all at once. This would make LPO better and improve the upper bound in Theorem 5 by 1. Since our main results deal with upper bounds, we make the least favourable choice and assume that only one packet per time slot can be transmitted (C packets in the multicore case).
This qualification deals with a boundary case: during the last B time slots of an iteration, when LPO is transmitting, we set M t =1 for t∈[t end−B,t end] independent of the newly arriving packets that will be processed on the next iteration; at any other time, M t is simply the maximum residual work among all packets.
References
Aiello, W., Mansour, Y., Rajagopolan, S., Rosén, A.: Competitive queue policies for differentiated services. J. Algorithms 55(2), 113–141 (2005)
Azar, Y., Litichevskey, A.: Maximizing throughput in multi-queue switches. Algorithmica 45(1), 69–90 (2006)
Azar, Y., Richter, Y.: An improved algorithm for CIOQ switches. ACM Trans. Algorithms 2(2), 282–295 (2006)
Borodin, A., El-Yaniv, R.: Online Computation and Competitive Analysis. Cambridge University Press (1998)
Brucker, P., Heitmann, S., Hurink, J., Nieberg, T.: Job-shop scheduling with limited capacity buffers. OR Spectrum 28(2), 151–176 (2006)
CAIDA – the cooperative association for internet data analysis. [Online] http://www.caida.org/
Cavium: OCTEON II CN68XX multi-core MIPS64 processors, product brief (2010). [Online] http://www.caviumnetworks.com/OCTEON-II_CN68XX.html
Chuprikov, P., Nikolenko, S.I., Kogan, K.: Priority Queueing with Multiple Packet Characteristics. In: IEEE INFOCOM. to appear, pp 1–9 (2015)
Cisco: The Cisco QuantumFlow processor, product brief (2010). [Online] http://www.cisco.com/en/US/prod/collateral/routers/ps9343/solution_overview_c22-448936.html
Englert, M., Westermann, M.: Lower and upper bounds on FIFO buffer management in QoS switches. Algorithmica 53(4), 523–548 (2009)
Eugster, P., Kogan, K., Nikolenko, S.I., Sirotkin, A.V.: Shared Memory Buffer Management for Heterogeneous Packet Processing. In: IEEE 34th International Conference on Distributed Computing Systems (ICDCS 2014), pp 471–480 (2014)
EZChip: NP-4 network processor, product brief (2010). [Online] http://www.ezchip.com/p_np4.htm
Goldwasser, M.: A survey of buffer management policies for packet switches. SIGACT News 41(1), 100–128 (2010)
Kesselman, A., Kogan, K.: Nonpreemptive Scheduling of Optical Switches. IEEE Trans. Commun. 55(6), 1212–1219 (2007)
Keslassy, I., Kogan, K., Scalosub, G., Segal, M.: Providing performance guarantees in multipass network processors. IEEE/ACM Trans. Networking 20(6), 1895–1909 (2012)
Kesselman, A., Kogan, K., Segal, M.: Improved competitive performance bounds for CIOQ switches. Algorithmica 63(1–2), 411–424 (2012)
Kesselman, A., Kogan, K., Segal, M.: Packet mode and QoS algorithms for buffered crossbar switches with FIFO queuing. Distrib. Comput. 23(3), 163–175 (2010)
Kesselman, A., Kogan, K., Segal, M.: Best Effort and Priority Queuing Policies for Buffered Crossbar Switches (2012)
Kesselman, A., Lotker, Z., Mansour, Y., Patt-Shamir, B., Schieber, B., Sviridenko, M.: Buffer overflow management in QoS switches. SIAM J. Comput. 33(3), 563–583 (2004)
Kogan, K., López-Ortiz, A., Nikolenko, S.I., Sirotkin, A.V.: A taxonomy of semi-FIFO policies. In: Proceedings of the 31st IEEE International Performance Computing and Communications Conference (IPCCC 2012), pp 295–304 (2012)
Kogan, K., López-Ortiz, A., Nikolenko, S.I., Sirotkin, A.V., Tugaryov, D.: FIFO queueing policies for packets with heterogeneous processing. In: Proceedings of the 1st Mediterranean Conference on Algorithms (MedAlg 2012), Lecture Notes in Computer Science. arXiv:1204.5443 [cs.NI], vol. 7659, pp 248–260 (2012)
Kogan, K., López-Ortiz, A., Nikolenko, S.I., Sirotkin, A.V.: Multi-queued network processors for packets with heterogeneous processing requirements. In: Proceedings of the Fifth International Conference on Communication Systems and Networks, (COMSNETS), pp 1–10 (2013)
Kogan, K., López-Ortiz, A., Nikolenko, S.I., Scalosub, G., Segal, M.: Balancing work and size with bounded buffers. In: Proceedings of the Sixth International Conference on Communication Systems and Networks, (COMSNETS). [Online] arXiv:1202.5755, pp 1–8 (2014)
Kogan, K., Nikolenko, S.I., Keshav, S., López-Ortiz, A.: Efficient demand assignment in multi-connected microgrids with a shared central grid. In: SustainIT, pp 1–5 (2013)
Leonardi, S., Raz, D.: Approximating total flow time on parallel machines. In: STOC, pp 110–119 (1997)
Mansour, Y., Patt-Shamir, B., Lapid, O.: Optimal smoothing schedules for real-time streams. Distrib. Comput. 17(1), 77–89 (2004)
Motwani, R., Phillips, S., Torng, E.: Non-clairvoyant scheduling. Theor. Comput. Sci. 130(1), 17–47 (1994)
Muthukrishnan, S.M., Rajaraman, R., Shaheen, A., Gehrke, J.E.: Online scheduling to minimize average stretch. SIAM J. Comput. 34(2), 433–452 (2005)
Nikolenko, S.I., Kogan, K.: Single and multiple buffer processing. Encyclopedia of Algorithms, 1–9 (2015)
Pruhs, K.: Competitive online scheduling for server systems. SIGMETRICS Perform. Eval. Rev. 34(4), 52–58 (2007)
Ruiz, R., Vázquez-Rodrígue, J.A.: The hybrid flow shop scheduling problem. Eur. J. Oper. Res. 205(1), 1–18 (2010)
Schrage, L.: A proof of the optimality of the shortest remaining processing time discipline. Oper. Res. 16, 687–690 (1968)
Sleator, D.D., Tarjan, R.E.: Amortized efficiency of list update and paging rules. Commun. ACM 28(2), 202–208 (1985)
Wolf, T., Pappu, P., Franklin, M.A.: Predictive scheduling of network processors. Comput. Netw. 41(5), 601–621 (2003)
Acknowledgments
The work of S.I. Nikolenko was supported by the Basic Research Program of the National Research University Higher School of Economics, 2015, grant no. 78. We also thank the anonymous referees for many useful comments that have allowed us to improve the paper.
Author information
Authors and Affiliations
Corresponding author
Additional information
A preliminary version of this paper has appeared in [21]; compared to the conference version, this paper contains new results about the two-valued case, changes our constructions so that they more strictly adhere to the FIFO processing order, and presents a modified proof of the main theorem that improves over previous results.
Rights and permissions
About this article
Cite this article
Kogan, K., López-Ortiz, A., Nikolenko, S.I. et al. Online Scheduling FIFO Policies with Admission and Push-Out. Theory Comput Syst 58, 322–344 (2016). https://doi.org/10.1007/s00224-015-9626-4
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00224-015-9626-4