Skip to main content

Compressing Virtual Forwarding Information Bases Using the Trie-folding Algorithm

  • Conference paper
  • First Online:
Advances in Communication Networking (EUNICE 2014)

Abstract

In the latest years network virtualization and virtual routers have gained considerable attention, because with their aid it is possible to realize multiple virtual topologies on the same physical network. This plays a key role in cloud-based systems and VPN (Virtual Private Network), amongst others. In order to be able to forward IP packets according to multiple topologies, the router needs to store numerous Forwarding Information Bases (FIBs), which can lead to memory scalability issues. We address this issue by applying the well-known “trie-folding” FIB compression method to the case of multiple virtual FIBs (VFIBs). We propose two novel approaches to perform the compression, based on different virtual router architectures. We introduce a further opportunity for optimization, based on the distribution of next-hop labels. We formulate a minimization problem using entropy measure, and we provide a heuristic approach of solving the problem. We present numerical evaluations including lookup speed, memory size of compressed VFIBs, and their corresponding entropies. Based on these results and the underlying theoretical reasoning, we can safely say that the presented techniques are not only able to resolve the memory scalability issues of modern virtual routers, but they also improve lookup speed considerably, one of the most important performance measures in a core router, be it virtual or not.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    VFIB #1: 3 → 1, 1 → 2, 2 → 3; VFIB #2: 2 → 1, 1 → 2, 3 → 3.

  2. 2.

    The FIBs with some statistics are available at http://lendulet.tmit.bme.hu/fib_comp.

  3. 3.

    For the record, using conventional PC memory running at 1600 MHz the simulator could perform one million lookup in less than a second.

References

  1. Song, H., Kodialam, M., Hao, F., Lakshman, T.V.: Building scalable virtual routers with trie braiding. In: INFOCOM, 2010 Proceedings IEEE. IEEE (2010)

    Google Scholar 

  2. Ferragina, P., Luccio, F., Manzini, G., Muthukrishnan, S.: Compressing and indexing labeled trees, with applications. J. ACM (JACM) 57(1), 4 (2009)

    Article  MathSciNet  Google Scholar 

  3. Draves, R.P., et al.: Constructing optimal IP routing tables. In: INFOCOM’99, Proceedings of Eighteenth Annual Joint Conference of the IEEE Computer and Communications Societies, vol. 1. IEEE (1999)

    Google Scholar 

  4. Rétvári, G., Tapolcai, J., Kőrösi, A., Majdán, A., Heszberger, Z.: Compressing IP forwarding tables: towards entropy bounds and beyond. In: Proceedings of the ACM SIGCOMM 2013 Conference on SIGCOMM. ACM (2013)

    Google Scholar 

  5. Fu, J., Jennifer, R.: Efficient IP-address lookup with a shared forwarding table for multiple virtual routers. In: Proceedings of the 2008 ACM CoNEXT Conference. ACM (2008)

    Google Scholar 

  6. Rétvári, G., Csernátony, Z., Körösi, A., Tapolcai, J., Császár, A., Enyedi, G., Pongrácz, G.: Compressing IP forwarding tables for fun and profit. In: Proceedings of the 11th ACM Workshop on Hot Topics in Networks. ACM (2012)

    Google Scholar 

  7. Chowdhury, N.M., Raouf, B.: A survey of network virtualization. Comput. Netw. 54(5), 862–876 (2010)

    Article  MATH  Google Scholar 

  8. Le, H., Prasanna, V.K.: Scalable tree-based architectures for IPv4/v6 lookup using prefix partitioning. IEEE Trans. Comput. 61(7), 1026–1039 (2012)

    Article  MathSciNet  Google Scholar 

  9. Huang, K., Xie, G., Li, Y., Liu, A.X.: Offset addressing approach to memory-efficient IP address lookup. In: INFOCOM, 2011 Proceedings IEEE. IEEE (2011)

    Google Scholar 

  10. Luo, L., Xie, G., Uhlig, S., Mathy, L., Salamatian, K., Xie, Y.: Towards TCAM-based scalable virtual routers. In: Proceedings of the 8th International Conference on Emerging Networking Experiments and Technologies. ACM (2012)

    Google Scholar 

  11. Luo, L., Xie, G., Salamatian, K., Uhlig, S., Mathy, L., Xie, Y.: A trie merging approach with incremental updates for virtual routers. In: INFOCOM, 2013 Proceedings IEEE. IEEE (2013)

    Google Scholar 

  12. Song, H., Kodialam, M., Hao, F., Lakshman, T.V.: Efficient trie braiding in scalable virtual routers. IEEE/ACM Trans. Networking (TON) 20(5), 1489–1500 (2012)

    Article  Google Scholar 

  13. Nilsson, S., Karlsson, G.: IP-address lookup using LC-tries. IEEE JSAC 17(6), 1083–1092 (1999)

    Google Scholar 

  14. Gupta, P., Prabhakar, B., Boyd, S.P.: Near optimal routing lookups with bounded worst case performance. In: IEEE INFOCOM, pp. 1184–1192 (2000)

    Google Scholar 

  15. Ioannidis, I., Grama, A.: Level compressed DAGs for lookup tables. Comput. Netw. 49(2), 147–160 (2005)

    Article  MATH  Google Scholar 

  16. Zhao, X., Pacella, D.J., Schiller, J.: Routing scalability: an operator’s view. IEEE JSAC 28(8), 1262–1270 (2010)

    Google Scholar 

  17. Song, H., Kodialam, M.S., Hao, F., Lakshman, T.V.: Scalable IP lookups using shape graphs. In: IEEE ICNP, pp. 73–82 (2009)

    Google Scholar 

Download references

Acknowledgments

Gábor Rétvári was supported by the OTKA/PD-104939 grant. This work was partially supported by the European Union and the European Social Fund through project FuturICT.hu (grant no.: TAMOP-4.2.2.C-11/1/KONV-2012-0013) and the High Speed Networks Laboratory.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Bence Mihálka .

Editor information

Editors and Affiliations

Appendix

Appendix

Proof of Theorem 1:

$$ H_{0}^{sep} = \frac{{\left( {\sum\limits_{i} {\sum\limits_{j} {n_{j}^{i} log\left( {\frac{{n^{i} }}{{n_{j}^{i} }}} \right)} } } \right)}}{n} = \mathop \sum \limits_{j} \left( {\frac{{n_{j} }}{n}} \right)\mathop \sum \limits_{i} \left( {\frac{{n_{j}^{i} }}{{n_{j} }}log\left( {\frac{{n^{i} }}{{n_{j}^{i} }}} \right)} \right) \le \mathop \sum \limits_{j} \left( {\frac{{n_{j} }}{n}log\mathop \sum \limits_{i} \left( {\frac{{n^{i} }}{{n_{j} }}} \right)} \right) = H_{0}^{com} $$

This is true, because the log function is concave: \( \sum {a_{i} = 1} \Rightarrow \sum { a_{i} \,log\,x_{i} } \le log \sum {a_{i} \,x_{i} } \), which proves that \( H_{0}^{sep} \le H_{0}^{com} \).

Proof of Theorem 2:

If we allow the permutation of next-hop labels in each VFIB then we can reduce the entropy of \( H_{0}^{com} \):

$$ H_{0}^{rea} = \mathop \sum \limits_{j} \left( {\frac{{\sum\limits_{i} {m_{j}^{i} } }}{{\sum\limits_{i} {n^{i} } }}log\left( {\frac{{\sum\limits_{i} {n^{i} } }}{{\sum\limits_{i} {m_{j}^{i} } }}} \right)} \right) = \mathop \sum \limits_{j} \left( {\frac{{m_{j} }}{n}log\frac{n}{{m_{j} }}} \right) $$

We achieve this by rearranging the characters in each string according to their incidence, where m i j denotes the incidence of the j th next-hop label in the i th VFIB. Since this transformation has no effect on \( H_{0}^{sep} \), it follows that \( H_{0}^{sep} \le H_{0}^{rea} \).

Proof of Theorem 3:

For this we only need to show that if not all next-hop labels of all VFIBs are ordered according to incidence, then we can decrease the entropy by changing the order of them. In other words, i 1 , i 2 , j 1 , j 2 exist such that n j1 i 1  <= n j2 i 2 and n j1 i 2  > n j2 i 2 while nj1 <= nj2. Swapping j 1 and j 2 in i 2 the entropy is decreasing. For the sake of simplicity let p denote n j1 i 2 − n j2 i 2 :

$$ \frac{{n_{j1} }}{n}log\frac{n}{{n_{j1} }} + \frac{{n_{j2} }}{n}log\frac{n}{{n_{j2} }} > \frac{{\left( {n_{j1} - p} \right)}}{n}log\frac{n}{{\left( {n_{j1} - p} \right)}}log\frac{n}{{\left( {n_{j1} - p} \right)}} + \frac{{\left( {n_{j2} + p} \right)}}{n}log\frac{n}{{\left( {n_{j2} + p} \right)}} $$
$$ \left( {n_{j1} - p} \right)log\left( {n_{j1} - p} \right) + \left( {n_{j2} + p} \right)log\left( {n_{j2} + p} \right) > n_{j1} logn_{j1} + n_{j2} logn_{j2} $$

This is satisfied because x log(x) is convex. This proves that \( H_{0}^{rea} \le H_{0}^{com} \).

Rights and permissions

Reprints and permissions

Copyright information

© 2014 Springer International Publishing Switzerland

About this paper

Cite this paper

Mihálka, B., Kőrösi, A., Rétvári, G. (2014). Compressing Virtual Forwarding Information Bases Using the Trie-folding Algorithm. In: Kermarrec, Y. (eds) Advances in Communication Networking. EUNICE 2014. Lecture Notes in Computer Science(), vol 8846. Springer, Cham. https://doi.org/10.1007/978-3-319-13488-8_12

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-13488-8_12

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-13487-1

  • Online ISBN: 978-3-319-13488-8

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics