Abstract
Network virtualization which enables the coexistence of multiple networks in shared infrastructure adds extra requirements on data plane of router. Software based virtual data plane is inferior in performance, whereas, hardware based virtual data plane is hard to achieve flexibility and scalability. In this paper, using FPGA (Field Program Gate Array) and TCAM (Ternary Content Addressable Memory), we design and implement a virtual hardware data plane achieving high performance, flexibility and scalability simultaneously. The data plane uses a 5-stage pipeline design. The procedure of packet processing is unified with TCAM based rule matching and action based packet processing. The hardware data plane can be easily configured to support multiple VDP (Virtual Data Plane) instances. And in each VDP instance, the pattern of packet processing can be flexibly configured. Also, it can achieve seamless migration of VDP instance between software and hardware. The hardware data plane also provides a 4-channel high-performance DMA engine which largely reduces packet acquisition overhead on software. So that software can be more involved in customized packet processing.
Chapter PDF
Similar content being viewed by others
References
Anderson, T., Peterson, L., Shenker, S., Turner, J.: Overcoming the Internet impasse through virtualization. Computer 38, 34–41 (2005)
Niebert, N., Khayat, I.E., Baucke, S., Keller, R., Rembarz, R., Sachs, J.: Network virtualization: A viable path towards the future internet. Wireless Personal Communications 45, 511–520 (2008)
Tutschku, K., Zinner, T., Nakao, A., Tran-Gia, P.: Network virtualization: Implementation steps towards the future internet. In: Proc. of KiVS-Kommunikation in Verteilten Systemen (KIVS 2009), (KiVS 2009, Kassel) (2009)
Rixner, S.: Network virtualization: breaking the performance barrier. Queue 6, 36 (2008)
Chowdhury, N.M., Boutaba, R.: A survey of network virtualization. Computer Networks (2009)
Chao, H.J., Liu, B.: High performance switches and routers. Wiley-IEEE Press (2007)
Anwer, M.B., Motiwala, M., Tariq, M. bin, Feamster, N.: SwitchBlade: a platform for rapid deployment of network protocols on programmable hardware. In: Proceedings of the ACM SIGCOMM 2010 Conference on SIGCOMM, pp. 183–194. ACM, New York (2010)
Unnikrishnan, D., Vadlamani, R., Liao, Y., Dwaraki, A., Crenne, J., Gao, L., Tessier, R.: Scalable network virtualization using FPGAs. In: Proceedings of the 18th Annual ACM/SIGDA International Symposium on Field Programmable Gate Arrays, pp. 219–228 (2010)
Xie, G., He, P., Guan, H., Li, Z., Xie, Y., Luo, L., Zhang, J., Wang, Y., Salamatian, K.: PEARL: a programmable virtual router platform. IEEE Communications Magazine 49, 71–77 (2011)
Jiang, X., Xu, D.: VIOLIN: Virtual Internetworking on Overlay Infrastructure. In: Cao, J., Yang, L.T., Guo, M., Lau, F. (eds.) ISPA 2004. LNCS, vol. 3358, pp. 937–946. Springer, Heidelberg (2004)
Bhatia, S., Motiwala, M., Muhlbauer, W., et al.: Trellis: a platform for building flexible, fast virtual networks on commodity hardware. In: Proceedings of the 2008 ACM CoNEXT Conference, vol. 72, pp. 1–6 (2008)
Anwer, M.B., Nayak, A., Feamster, N., Liu, L.: Network I/O fairness in virtual machines. In: Proceedings of the Second ACM SIGCOMM Workshop on Virtualized Infrastructure Systems and Architectures, pp. 73–80 (2010)
NetFPGA, http://netfpga.org/
Anwer, M.B., Feamster, N.: A Fast, Virtualized Data Plane for the NetFPGA. In: NetFPGA Developers Workshop, Stanford, California, pp. 90–94 (2009)
Liao, Y., Yin, D., Gao, L.: Network virtualization substrate with parallelized data plane. Computer Communications 34, 1549–1558 (2011)
Egi, N., Greenhalgh, A., Handley, M., Hoerdt, M., Huici, F., Mathy, L.: Towards high performance virtual routers on commodity hardware. In: Proceedings of the 2008 ACM CoNEXT Conference, pp. 20:1–20:12. ACM, New York (2008)
Yin, D., Unnikrishnan, D., Liao, Y., Gao, L., Tessier, R.: Customizing virtual networks with partial FPGA reconfiguration. ACM SIGCOMM Computer Communication Review 41, 125–132 (2011)
McKeown, N., Anderson, T., Balakrishnan, H., Parulkar, G., Peterson, L., Rexford, J., Shenker, S., Turner, J.: OpenFlow: enabling innovation in campus networks. ACM SIGCOMM Computer Communication Review 38, 69–74 (2008)
Chowdhury, N.M.M., Boutaba, R.: Network virtualization: state of the art and research challenges. IEEE Communications Magazine 47, 20–26 (2009)
Sherwood, R., Gibb, G., Yap, K.K., Appenzeller, G., Casado, M., McKeown, N., Parulkar, G.: FlowVisor: A Network Virtualization Layer (2009)
Dong, Y., Dai, J., Huang, Z., Guan, H., Tian, K., Jiang, Y.: Towards high-quality I/O virtualization. In: Proceedings of SYSTOR 2009: The Israeli Experimental Systems Conference, pp. 1–8 (2009)
Han, S., Jang, K., Park, K., Moon, S.: PacketShader: a GPU-accelerated software router. In: Proceedings of the ACM SIGCOMM 2010 Conference on SIGCOMM, pp. 195–206. ACM, New York (2010)
Spirent TestCenter, http://www.spirent.com
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2012 IFIP International Federation for Information Processing
About this paper
Cite this paper
Liu, J. et al. (2012). Building a Flexible and Scalable Virtual Hardware Data Plane. In: Bestak, R., Kencl, L., Li, L.E., Widmer, J., Yin, H. (eds) NETWORKING 2012. NETWORKING 2012. Lecture Notes in Computer Science, vol 7289. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-30045-5_16
Download citation
DOI: https://doi.org/10.1007/978-3-642-30045-5_16
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-30044-8
Online ISBN: 978-3-642-30045-5
eBook Packages: Computer ScienceComputer Science (R0)