Abstract
Tremendous growth in traffic is witnessed over the Internet where backbone links of several gigabits per second are commonly deployed. In order to handle these gigabit-per-second traffic rates, backbone routers must forward millions of packets per second on each of their ports. Routing tables of the core routers consists of IP addresses of the order of 200,000-500,000 and changes dynamically. A major challenge is to determine the next-hop address with as low as possible number of accesses of the routing table. IP address lookup in the routers uses the packets destination address to determine the next hop for each packet and is therefore crucial to achieve the required packet forwarding rates. IP address lookup is difficult because it requires a longest common prefix (LCP) match search. In the last couple of years, various algorithms for high-performance IP address lookup have been proposed. The objective of this paper is to use a specific data structure and develop the lookup algorithm that is required to meet the demands like fast lookup, memory efficiency and fast incremental updates. We have used a novel data structure y-fast trie for the routing table in this work. We adapted the algorithm for predecessor/successor search in x-fast trie via dynamic perfect hashing technique to find the longest common prefix between the incoming packets destination address and the next-hop address. By looking at this longest common prefix, we identify the next-hop address. As an improvement over this method, we also have used indirection using balanced BSTs (y-fast trie). On average the routing table creation takes 51703 μsec for 100000 IP addresses in the method using indirection. Average lookup time using dynamic perfect table takes 0.83 μsec.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Yazdani, N., Min, P.S.: Fast and Scalable schemes for the IP address Lookup Problem. In: Proceedings of the IEEE Conference on High Performance Switching and Routing, ATM 2000 (2000)
Ruiz-Sanchez, M.A., Biersack, E.W., Dabbous, W.: Survey and taxonomy of IP address lookup algorithms. IEEE Network, 8–23 (2001)
Zitterbart, M.: High-Performance Routing-Table Lookup. Philosophical Transactions of Royal Society of London A 358, 2217–2231 (2000)
Nilsson, S., Karlsson, G.: IP-address lookup using LC-tries. IEEE Journal on Selected Areas in Communications 17, 1083–1092 (1999)
Olsson, R., Nilsson, S.: TRASH A dynamic LC-trie and hash data structure. Trita-CSC-TCS series
Eatherton, W., Varghese, G., Dittia, Z.: Tree Bitmap: Hardware/Software IP Lookups with Incremental Updates. ACM SIGCOMM Computer Communications Review 34, 97–122 (2004)
Song, H., Hao, F., Kodialam, M., Lakshman, T.V.: IPv6 Lookups using Distributed and Load Balanced Bloom Filters for 100Gbps Core Router Line Cards. In: Proceedings of IEEE INFOCOM (2009)
Yim, C., Lee, B., Lim, H.: Efficient Binary Search for IP Address Lookup. IEEE Communications Letters 9, 652–654 (2005)
Bando, M., Chao, H.J.: FlashTrie: Hash-based Prefix-Compressed Trie for IP Route Lookup Beyond 100Gbps. In: Proceedings of IEEE INFOCOM (2010)
Pan, M., Lu, H.: Build shape-shifting tries for fast IP lookup in O(n) time. Computer Communications 30, 3787–3795 (2007)
Chan, C., Wang, P., Hu, S., Lee, C., Chen, R.: Scalable IP Routing Lookup in Next Generation Network. In: Kahng, H.-K. (ed.) ICOIN 2003. LNCS, vol. 2662, Springer, Heidelberg (2003)
Sahni, S., Kim, K.S.: An O(log n) Dynamic Router-Table Design. IEEE Transactions on Computers 53, 351–363 (2004)
Pao, D., Li, Y.K.: Enabling incremental updates to LC-tries for efficient management of IP forwarding tables. IEEE Commun. Lett. 7, 245–247 (2003)
Li, Y.K., Pao, D.: Address lookup algorithms for IPv6. IEE Proc. Commun. 153, 909–918 (2006)
BGP table statistics, http://bgp.potaroo.net
Willard, D.E.: Log-logarithmic worst-case range queries are possible in space (log logN). Information Processing Letters 17, 81–84 (1983)
Willard, D.E.: New trie data structures which support very fast search operations. Journal of Computer and System Sciences 28, 379–394 (1984)
Dietzfelbinger, M., Karlin, A., Mehlhorn, K., Meyer auf der Heide, F., Rohnert, H., Tarjan, R.E.: Dynamic Perfect Hashing: Upper and Lower Bounds. SIAM J. Comput. 23, 738–761 (1994)
http://courses.csail.mit.edu/6.897/spring03/scribe_notes/L2/lecture2.pdf
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2012 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Manasa, P., Prasad, M.R., Sobha Rani, T. (2012). Routing Table Implementation Using Integer Data Structure. In: Parashar, M., Kaushik, D., Rana, O.F., Samtaney, R., Yang, Y., Zomaya, A. (eds) Contemporary Computing. IC3 2012. Communications in Computer and Information Science, vol 306. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-32129-0_27
Download citation
DOI: https://doi.org/10.1007/978-3-642-32129-0_27
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-32128-3
Online ISBN: 978-3-642-32129-0
eBook Packages: Computer ScienceComputer Science (R0)