Two-Level Tries: A General Acceleration Structure for Parallel Routing Table Accesses

  • Mingche, Lai (Department of Computer, National University of Defense Technology) ;
  • Lei, Gao (Department of Computer, National University of Defense Technology)
  • 투고 : 2009.02.08
  • 심사 : 2011.05.27
  • 발행 : 2011.08.31

초록

The stringent performance requirement for the high efficiency of routing protocols on the Internet can be satisfied by exploiting the threaded border gateway protocol (TBGP) on multi-cores, but the state-of-the-art TBGP performance is restricted by a mass of contentions when racing to access the routing table. To this end, the highly-efficient parallel access approach appears to be a promising solution to achieve ultra-high route processing speed. This study proposes a general routing table structure consisting of two-level tries for fast parallel access, and it presents a heuristic-based divide-and-recombine algorithm to solve a mass of contentions, thereby accelerating the parallel route updates of multi-threading and boosting the TBGP performance. As a projected TBGP, this study also modifies the table operations such as insert and lookup, and validates their correctness according to the behaviors of the traditional routing table. Our evaluations on a dual quad-core Xeon server show that the parallel access contentions decrease sharply by 92.5% versus the traditional routing table, and the maximal update time of a thread is reduced by 56.8 % on average with little overhead. The convergence time of update messages are improved by 49.7%.

키워드

참고문헌

  1. Y. Rekhter, T. Li, and S. Hares, "A border gateway protocol 4 (BGP-4)," RFC 4271, 2006.
  2. M. Beesley, "Router/switch control plane software challenges," in Proc. ACM/IEEE ANCS, 2006.
  3. K. Lakshminarayanan, M. Caesar, M. Rangan, T. Anderson, S. Shenker, and I. Stoica "Achieving convergence-free routing using failure-carrying packets," in Proc. ACM SIGCOMM, 2007, pp. 176-187.
  4. J. Mudigonda, H. M. Vin, and S. W. Keckler, "Reconciling performance and programmability in networking systems," in Proc. ACM SIGCOMM, 2007, pp. 15-26.
  5. G. Huston, "The BGP Report for 2005," ISP Column, 2006. [Online]. Available: http://ispcolumn.isoc.org/2006-06/bgp-upds.html
  6. S. Agarwal, C.-N. Chuah, S. Bhattacharyya, and C. Diot, "Impact of BGP dynamics on router CPU utilization," LNCS 3015, Springer-Verlag, pp. 278-288, 2004.
  7. A. Feldmann, O. Maennel, and Z. M. Mao, "Locating internet routing instabilities," in Proc. ACM SIGCOMM, 2004, pp. 205-218.
  8. A. Feldmann, H. W. Kong, O. Maennel, and A. Tudor., "Measuring BGP pass-through times," Passive Active Meas. Workshop, vol. 3015, pp. 267-277, 2004.
  9. C. Labovitz, G. R. Malan, and F. Jahanian, "Internet routing instability," IEEE/ACM Trans. Netw., vol. 6, no. 5, pp. 515-528, 1998. https://doi.org/10.1109/90.731185
  10. T. G. Griffin, F. B. Shepherd, and G. Wilfong, "The stable paths problem and inter-domain routing," IEEE/ACM Trans. Netw., vol. 10, no. 1, pp. 232-243, 2002. https://doi.org/10.1109/90.993304
  11. K. Varadhan, R. Govindan, and D. Estrin, "Persistent route oscillations in inter-domain routing," Compter Netw., vol. 32, no. 1, pp. 1-16, 2000. https://doi.org/10.1016/S1389-1286(99)00108-5
  12. C. Labovitz, A. Ahuja, A. Bose, and F. Jahanian, "Delayed Internet routing convergence," in Proc. ACM SIGCOMM, vol. 9, pp. 293-306, 2000.
  13. W. Sun, Z. M. Mao, and K. G. Shin, "Differentiated BGP update processing for improved routing convergence," in Proc. ICNP, 2006, pp. 280-289.
  14. J. Karlin, S. Forrest, and J. Rexford, "Pretty good BGP: Improving BGP by cautiously adopting routes," in Proc. ICNP, 2006, pp. 290-299.
  15. M. Bjorkman and P. Gunningberg, "Performance modeling of multiprocessor implementations of protocols," IEEE/ACM Trans. Netw., vol. 6, no. 3, pp. 262-273, 1998. https://doi.org/10.1109/90.700890
  16. X. Xiao and L. M. Ni, "Parallel routing table computation for scalable IP routers," in Proc. CANPC, 1998, pp.43-55.
  17. T. Klockar, M. Hidell, L. Carr-Motyckova, and P. Sjodin "Modularized BGP for decentralization in a distributed router," Winternet Grand Finale workshop, pp. 72-84, 2005.
  18. X. Zhang, P. Zhu, X. Lu, "Fully-distributed and highly-parallelized implementation model of BGP4 based on clustered routers," in Proc. ICN, LNCS 3421, Berlin: Springer-Verlag, 2005, pp. 433-441.
  19. K. Wu, J. Wu, K. Xu, "A tree-based distributed model for BGP route processing," in Proc. HPCC, LNCS 4208, Berlin: Springer-Verlag, 2006, pp. 119-128.
  20. K. Xu, H. He, "BGP parallel computing model based on the iteration tree," J. China Universities of Posts and Telecommun., vol. 15, pp. 1-8, Sept., 2008.
  21. L. Gao, Z. Gong, et.al, "A TLP approach for BGP based on local speculation," Science in China Series F: Information Sciences, vol. 51, no. 11, pp. 1772-1784, 2008. https://doi.org/10.1007/s11432-008-0145-7
  22. X. Huang, S. Ganapathy, and T. Wolf, "A scalable distributed routing protocol for networks with data-path services," in Proc. ICNP, 2008, pp. 318-327.
  23. Z. Liang, K. Xu, J. WU, and Y. Chai, "Parallel routing lookup system based on non-overlapping prefix sets," Acta Electronica Sinica, pp. 1277-1281, 2004.
  24. T. Srinivasan, M. Sandhya, and N. Srikrishna, "An efficient parallel IP lookup technique using CREW based multiprocessor organization," in Proc. CNSR, 2006, pp. 221-226.
  25. K. Zheng, C. Hu, H. Lu, and B. Liu, "A TCAM-based distributed parallel IP lookup scheme and performance analysis," IEEE/ACM Trans. Netw., vol. 14, no. 4, pp. 863-875, 2006. https://doi.org/10.1109/TNET.2006.880171
  26. V tuneTM, Intel vtune performance analyzer for Linux. Santa Clara (CA): Intel Corporation, 2007.
  27. Qugga project. [Online]. Available: http://ww.quagga.net /download/
  28. Spirent Adtech AX4000 broadband test system. [Online]. Available: http:// www.smartechconsulting.com/Adtech-Spirent-AX4000-AX-4000-16-Slot-Rackmount-Chassis
  29. RouteViews project. [Online]. Available: http://archive.routeviews.org/
  30. D. R. Morrison, "PATRICIA-practical algorithm to retrieve information coded in alphanumeric," J. ACM, vol. 15, no. 4, pp. 514-534, 1968. https://doi.org/10.1145/321479.321481
  31. K. Sklower, "A tree-based packet routing table for berkeley unix," in Proc. Winter Usenix Conf., 1991, pp. 93-99.
  32. S. Sahni and K. S. Kim, "Efficient construction of multibit tries for ip lookup," IEEE/ACM Trans. Netw., vol. 11, no. 4, pp. 650-662, 2003. https://doi.org/10.1109/TNET.2003.815288
  33. P. Gupta, S. Lin, and N.McKeown, "Routing lookups in hardware at memory access speeds," in Proc. IEEE INFOCOM, 1998, pp. 1240-1247
  34. M. Waldogel, G. Varghese, J. Turner, and B. Plattne, "Scalable high speed IP routing lookups," in Proc. ACM SIGCOMM, vol. 27, pp.25-36, 1997.
  35. SSFNet toolkit. [Online]. Available: http://www.ssfnet.org