# Engineering a New Algorithm for Distributed Shortest Paths on Dynamic Networks

## Abstract

We study the problem of dynamically updating *all-pairs shortest paths* in a distributed network while edge update operations occur to the network. We consider the practical case of a dynamic network in which an edge update can occur while one or more other edge updates are under processing. A node of the network might be affected by a subset of these changes, thus being involved in the concurrent executions related to such changes.

In this paper, we provide a new algorithm for this problem, and experimentally compare its performance with respect to those of the most popular solutions in the literature: the classical distributed Bellman-Ford method, which is still used in real network and implemented in the RIP protocol, and DUAL, the Diffuse Update ALgorithm, which is part of CISCO’s widely used EIGRP protocol. As input to the algorithms, we used both real-world and artificial instances of the problem. The experiments performed show that the space occupancy per node required by the new algorithm is smaller than that required by both Bellman-Ford and DUAL. In terms of messages, the new algorithm outperforms both Bellman-Ford and DUAL on the real-world topologies, while on artificial instances, the new algorithm sends a number of messages that is more than that of DUAL and much smaller than that of Bellman-Ford.

## Keywords

Shortest paths Distributed networks Dynamic algorithms Concurrent update Experimental analysis## Notes

### Acknowledgements

Support for the IPv4 Routed/24 Topology Dataset is provided by National Science Foundation, US Department of Homeland Security, WIDE Project, Cisco Systems, and CAIDA.

## References

- 1.Omnet++: the discrete event simulation environment. http://www.omnetpp.org/
- 2.Albert, R., Barabási, A.-L.: Emergence of scaling in random networks. Science
**286**, 509–512 (1999) MathSciNetzbMATHCrossRefGoogle Scholar - 3.Albert, R., Barabási, A.-L.: Statistical mechanics of complex network. Rev. Mod. Phys.
**74**, 47–97 (2002) zbMATHCrossRefGoogle Scholar - 4.Attiya, H., Welch, J.: Distributed Computing. Wiley, New York (2004) CrossRefGoogle Scholar
- 5.Awerbuch, B., Bar-Noy, A., Gopal, M.: Approximate distributed bellman-ford algorithms. IEEE Trans. Commun.
**42**(8), 2515–2517 (1994) CrossRefGoogle Scholar - 6.Bertsekas, D., Gallager, R.: Data Networks. Prentice Hall, New York (1992) zbMATHGoogle Scholar
- 7.Bollobás, B.: Random Graphs. Cambridge University Press, Cambridge (2001) zbMATHCrossRefGoogle Scholar
- 8.Cicerone, S., D’Angelo, G., Di Stefano, G., Frigioni, D.: Partially dynamic efficient algorithms for distributed shortest paths. Theor. Comput. Sci.
**411**, 1013–1037 (2010) MathSciNetzbMATHCrossRefGoogle Scholar - 9.Cicerone, S., D’Angelo, G., Di Stefano, G., Frigioni, D., Maurizio, V.: A new fully dynamic algorithm for distributed shortest paths and its experimental evaluation. In: Proceedings of the 9th International Symposium on Experimental Algorithms (SEA 2010). Lecture Notes in Computer Science, vol. 6049, pp. 59–70 (2010) Google Scholar
- 10.Cicerone, S., D’Angelo, G., Stefano, G.D., Frigioni, D., Petricola, A.: Partially dynamic algorithms for distributed shortest paths and their experimental evaluation. J. Comput.
**2**(9), 16–26 (2007) Google Scholar - 11.Cicerone, S., Stefano, G.D., Frigioni, D., Nanni, U.: A fully dynamic algorithm for distributed shortest paths. Theor. Comput. Sci.
**297**(1–3), 83–102 (2003) zbMATHCrossRefGoogle Scholar - 12.Frigioni, D., Marchetti-Spaccamela, A., Nanni, U.: Fully dynamic algorithms for maintaining shortest paths trees. J. Algorithms
**34**(2), 251–281 (2000) MathSciNetzbMATHCrossRefGoogle Scholar - 13.Garcia-Lunes-Aceves, J.J.: Loop-free routing using diffusing computations. IEEE/ACM Trans. Netw.
**1**(1), 130–141 (1993) CrossRefGoogle Scholar - 14.Humblet, P.A.: Another adaptive distributed shortest path algorithm. IEEE Trans. Commun.
**39**(6), 995–1002 (1991) zbMATHCrossRefGoogle Scholar - 15.Hyun, Y., Huffaker, B., Andersen, D., Aben, E., Shannon, C., Luckie, M., Claffy, K.: The CAIDA IPv4 Routed/24 Topology Dataset. http://www.caida.org/data/active/ipv4_routed_24_topology_dataset.xml
- 16.Italiano, G.F.: Distributed algorithms for updating shortest paths. In: Proceedings of the International Workshop on Distributed Algorithms. Lecture Notes in Computer Science, vol. 579, pp. 200–211 (1991) CrossRefGoogle Scholar
- 17.McQuillan, J.: Adaptive routing algorithms for distributed computer networks. Technical Report BBN Report 2831, Cambridge, MA (1974) Google Scholar
- 18.Moy, J.T.: OSPF-Anatomy of an Internet Routing Protocol. Addison-Wesley, Reading (1998) Google Scholar
- 19.Narváez, P., Siu, K.-Y., Tzeng, H.-Y., New dynamic algorithms for shortest path tree computation. IEEE/ACM Trans. Netw.
**8**(6), 734–746 (2000) CrossRefGoogle Scholar - 20.Orda, A., Rom, R.: Distributed shortest-path and minimum-delay protocols in networks with time-dependent edge-length. Distrib. Comput.
**10**, 49–62 (1996) MathSciNetCrossRefGoogle Scholar - 21.Ramarao, K.V.S., Venkatesan, S.: On finding and updating shortest paths distributively. J. Algorithms
**13**, 235–257 (1992) MathSciNetzbMATHCrossRefGoogle Scholar - 22.Ray, S., Guérin, R., Kwong, K.-W., Sofia, R.: Always acyclic distributed path computation. IEEE/ACM Trans. Netw.
**18**(1), 307–319 (2010) CrossRefGoogle Scholar - 23.Rosen, E.C.: The updating protocol of arpanet’s new routing algorithm. Comput. Netw.
**4**, 11–19 (1980) Google Scholar - 24.Wu, J., Dai, F., Lin, X., Cao, J., Jia, W.: An extended fault-tolerant link-state routing protocol in the internet. IEEE Trans. Comput.
**52**(10), 1298–1311 (2003) CrossRefGoogle Scholar