Advertisement

A Loosely Self-stabilizing Protocol for Randomized Congestion Control with Logarithmic Memory

  • Michael FeldmannEmail author
  • Thorsten Götte
  • Christian Scheideler
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 11914)

Abstract

We consider congestion control in peer-to-peer distributed systems. The problem can be reduced to the following scenario: Consider a set V of n peers (called clients in this paper) that want to send messages to a fixed common peer (called server in this paper). We assume that each client \(v \in V\) sends a message with probability \(p(v) \in [0,1)\) and the server has a capacity of \(\sigma \in \mathbb {N}\), i.e., it can receive at most \(\sigma \) messages per round and excess messages are dropped. The server can modify these probabilities when clients send messages. Ideally, we wish to converge to a state with \(\sum p(v) = \sigma \) and \(p(v) = p(w)\) for all \(v,w \in V\).

We propose a loosely self-stabilizing protocol with a slightly relaxed legitimate state. Our protocol lets the system converge from any initial state to a state where \(\sum p(v) \in \left[ \sigma \pm \epsilon \right] \) and \(|p(v)-p(w)| \in O(\frac{1}{n})\). This property is then maintained for \(\varOmega (n^{\mathfrak {c}})\) rounds in expectation. In particular, the initial client probabilities and server variables are not necessarily well-defined, i.e., they may have arbitrary values.

Our protocol uses only \(O(W + \log n)\) bits of memory where W is length of node identifiers, making it very lightweight. Finally we state a lower bound on the convergence time an see that our protocol performs asymptotically optimal (up to some polylogarithmic factor) in certain cases.

References

  1. 1.
    Bender, M.A., Farach-Colton, M., He, S., Kuszmaul, B.C., Leiserson, C.E.: Adversarial contention resolution for simple channels. In: SPAA, pp. 325–332. ACM (2005).  https://doi.org/10.1145/1073970.1074023
  2. 2.
    Bender, M.A., Fineman, J.T., Gilbert, S., Young, M.: Scaling exponential backoff: constant throughput, polylogarithmic channel-access attempts, and robustness. J. ACM 66(1), 6:1–6:33 (2019).  https://doi.org/10.1145/3276769MathSciNetCrossRefzbMATHGoogle Scholar
  3. 3.
    Berenbrink, P., Friedetzky, T., Kaaser, D., Kling, P.: Tight & simple load balancing. In: IPDPS, pp. 718–726. IEEE (2019).  https://doi.org/10.1109/IPDPS.2019.00080
  4. 4.
    Chang, Y., Jin, W., Pettie, S.: Simple contention resolution via multiplicative weight updates. In: SOSA@SODA, OASICS, vol. 69, pp. 16:1–16:16. Schloss Dagstuhl - Leibniz-Zentrum fuer Informatik (2019).  https://doi.org/10.4230/OASIcs.SOSA.2019.16
  5. 5.
    Chiu, D., Jain, R.: Analysis of the increase and decrease algorithms for congestion avoidance in computer networks. Comput. Netw. 17, 1–14 (1989).  https://doi.org/10.1016/0169-7552(89)90019-6CrossRefzbMATHGoogle Scholar
  6. 6.
    Corless, M.J., Shorten, R.: Deterministic and stochastic convergence properties of AIMD algorithms with nonlinear back-off functions. Automatica 48(7), 1291–1299 (2012).  https://doi.org/10.1016/j.automatica.2012.03.014MathSciNetCrossRefzbMATHGoogle Scholar
  7. 7.
    Devismes, S., Tixeuil, S., Yamashita, M.: Weak vs. self vs. probabilistic stabilization. Int. J. Found. Comput. Sci. 26(3), 293–320 (2015)MathSciNetCrossRefGoogle Scholar
  8. 8.
    Dijkstra, E.W.: Self-stabilizing systems in spite of distributed control. Commun. ACM 17(11), 643–644 (1974).  https://doi.org/10.1145/361179.361202CrossRefzbMATHGoogle Scholar
  9. 9.
    Feldmann, M., Götte, T., Scheideler, C.: A loosely self-stabilizing protocol for randomized congestion control with logarithmic memory. CoRR abs/1909.04544 (2019). https://arxiv.org/abs/1909.04544
  10. 10.
    Feldmann, M., Scheideler, C.: Skeap & seap: scalable distributed priority queues for constant and arbitrary priorities. In: SPAA, pp. 287–296. ACM (2019).  https://doi.org/10.1145/3323165.3323193
  11. 11.
    Feldmann, M., Scheideler, C., Setzer, A.: Skueue: a scalable and sequentially consistent distributed queue. In: IPDPS, pp. 1040–1049. IEEE Computer Society (2018).  https://doi.org/10.1109/IPDPS.2018.00113
  12. 12.
    Gerla, M., Kleinrock, L.: Flow control: a comparative survey. IEEE Trans. Commun. 28(4), 553–574 (1980).  https://doi.org/10.1109/TCOM.1980.1094691CrossRefGoogle Scholar
  13. 13.
    Goldberg, L.A.: Notes on contention resolution (2002). https://www.cs.ox.ac.uk/people/leslieann.goldberg/contention.html
  14. 14.
    Guerraoui, R., Hurfinn, M., Mostefaoui, A., Oliveira, R., Raynal, M., Schiper, A.: Consensus in asynchronous distributed systems: a concise guided tour. In: Krakowiak, S., Shrivastava, S. (eds.) Advances in Distributed Systems. LNCS, vol. 1752, pp. 33–47. Springer, Heidelberg (2000).  https://doi.org/10.1007/3-540-46475-1_2CrossRefGoogle Scholar
  15. 15.
    Kelly, T.: Scalable TCP: improving performance in highspeed wide area networks. Comput. Commun. Rev. 33(2), 83–91 (2003).  https://doi.org/10.1145/956981.956989MathSciNetCrossRefGoogle Scholar
  16. 16.
    Kesselman, A., Mansour, Y.: Adaptive AIMD congestion control. Algorithmica 43(1–2), 97–111 (2005).  https://doi.org/10.1007/s00453-005-1160-3MathSciNetCrossRefzbMATHGoogle Scholar
  17. 17.
    Kniesburges, S., Koutsopoulos, A., Scheideler, C.: CONE-DHT: a distributed self-stabilizing algorithm for a heterogeneous storage system. In: Afek, Y. (ed.) DISC 2013. LNCS, vol. 8205, pp. 537–549. Springer, Heidelberg (2013).  https://doi.org/10.1007/978-3-642-41527-2_37CrossRefGoogle Scholar
  18. 18.
    Lahanas, A., Tsaoussidis, V.: Performance evaluation of \(\tau \)-AIMD over wireless asynchronous networks. In: Braun, T., Carle, G., Koucheryavy, Y., Tsaoussidis, V. (eds.) WWIC 2005. LNCS, vol. 3510, pp. 86–96. Springer, Heidelberg (2005).  https://doi.org/10.1007/11424505_9CrossRefGoogle Scholar
  19. 19.
    Mahlmann, P., Schindelhauer, C.: Distributed random digraph transformations for peer-to-peer networks. In: SPAA, pp. 308–317. ACM (2006).  https://doi.org/10.1145/1148109.1148162
  20. 20.
    Richa, A., Scheideler, C., Stevens, P.: Self-stabilizing De Bruijn networks. In: Défago, X., Petit, F., Villain, V. (eds.) SSS 2011. LNCS, vol. 6976, pp. 416–430. Springer, Heidelberg (2011).  https://doi.org/10.1007/978-3-642-24550-3_31CrossRefGoogle Scholar
  21. 21.
    Sudo, Y., Nakamura, J., Yamauchi, Y., Ooshita, F., Kakugawa, H., Masuzawa, T.: Loosely-stabilizing leader election in a population protocol model. Theor. Comput. Sci. 444, 100–112 (2012).  https://doi.org/10.1016/j.tcs.2012.01.007MathSciNetCrossRefzbMATHGoogle Scholar
  22. 22.
    Talwar, K., Wieder, U.: Balanced allocations: a simple proof for the heavily loaded case. In: Esparza, J., Fraigniaud, P., Husfeldt, T., Koutsoupias, E. (eds.) ICALP 2014. LNCS, vol. 8572, pp. 979–990. Springer, Heidelberg (2014).  https://doi.org/10.1007/978-3-662-43948-7_81CrossRefGoogle Scholar
  23. 23.
    Tang, B., Gupta, H., Das, S.R.: Benefit-based data caching in ad hoc networks. IEEE Trans. Mob. Comput. 7(3), 289–304 (2008).  https://doi.org/10.1109/TMC.2007.70770CrossRefGoogle Scholar

Copyright information

© Springer Nature Switzerland AG 2019

Authors and Affiliations

  • Michael Feldmann
    • 1
    Email author
  • Thorsten Götte
    • 1
  • Christian Scheideler
    • 1
  1. 1.Department of Computer SciencePaderborn UniversityPaderbornGermany

Personalised recommendations