Abstract
This paper shows an area-efficient and high-speed architecture for IPv6 lookup using a parallel index generation unit (IGU). To reduce the size of memory in the IGU, we use a liner transformation and a row-shift decomposition. Also, this paper shows a design method for the parallel IGU. A single memory realization requires O(2n) memory size, where n denotes the length of prefix, while the IGU requires O(nk) memory size, where k denotes the number of prefixes. In IPv6 prefix lookup, since n is at most 64 and k is about 340 K, the IGU drastically reduces the memory size. Since the parallel IGU has a simple architecture compared with existing ones, it performs lookup by using complete pipelines. We loaded more than 340 K IPv6 pseudo prefixes on the Xilinx Virtex 6 FPGA. Its lookup speed is higher than one giga lookups per second (GLPS). As for the normalized area and lookup speed, our implementation outperforms existing FPGA implementations.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Baboescu, F., Tullsen, D.M., Rosu, G., Singh, S.: A tree based router search engine architecture with single port memories. In: ISCA 2005, p. 123 (2005)
Chao, H.J., Liu, B.: High performance switches and routers. JohnWiley& Sons, Inc., Hoboken (2007)
Fadishei, H., Zamani, M.S., Sabaei, M.: A novel reconfigurable hardware architecture for IP address lookup. In: ANCS 2005, pp. 81–90 (2005)
Le, H., Prasanna, V.K.: Scalable tree-based architectures for IPv4/v6 lookup using prefix partitioning. IEEE Trans. on Compt. 61(7), 1026–1039 (2012)
Le, H., Prasanna, V.K.: Scalable high throughput and power efficient IP-lookup on FPGA. In: FCCM 2009 (April 2009)
University of Oregon route views project, http://www.routeviews.org/
Sasao, T.: Row-shift decompositions for index generation functions. In: DATE 2012, pp. 1585–1590 (2012)
Sasao, T.: Linear decomposition of index generation functions. In: ASPDAC 2012, pp. 781–788 (2012)
Sasao, T.: Memory-based logic synthesis. Springer (2011)
Sasao, T., Matsuura, M., Nakahara, H.: A realization of index generation functions using modules of uniform sizes. In: IWLS 2010, June 18-20, pp. 201–208 (2010)
Sasao, T.: On the number of variables to represent sparse logic functions. In: ICCAD 2008, San Jose, California, USA, November 10-13, pp. 45–51 (2008)
Sasao, T., Butler, J.T.: Implementation of multiple-valued CAM functions by LUT cascades. In: ISMVL 2006, Singapore, May 17-20 (2006)
Tarjan, R.E., Yao, A.C.-C.: Storing a sparse table. Communications of the ACM 22(11), 606–611 (1979)
Tucker, R.: Optical packet-switched WDM networks: a cost and energy perspective. In: OFC/NFOEC (2008)
Wang, M., Deering, S., Hain, T., Dunn, L.: Non-random generator for IPv6 tables. In: HOTI 2004, pp. 35–40 (2004)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2013 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Nakahara, H., Sasao, T., Matsuura, M. (2013). An Architecture for IPv6 Lookup Using Parallel Index Generation Units. In: Brisk, P., de Figueiredo Coutinho, J.G., Diniz, P.C. (eds) Reconfigurable Computing: Architectures, Tools and Applications. ARC 2013. Lecture Notes in Computer Science, vol 7806. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-36812-7_6
Download citation
DOI: https://doi.org/10.1007/978-3-642-36812-7_6
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-36811-0
Online ISBN: 978-3-642-36812-7
eBook Packages: Computer ScienceComputer Science (R0)