NFV; service chains; offloading; hardware dispatching; high performance
Abstract :
[en] In this paper we present Metron, a Network Functions Virtualization (NFV) platform that achieves high resource utilization by jointly exploiting the underlying network and commodity servers’ resources. This synergy allows Metron to: (i) offload part of the packet processing logic to the network, (ii) use smart tagging to setup and exploit the affinity of traffic classes, and (iii) use tag-based hardware dispatching to carry out the remaining packet processing at the speed of the servers’ fastest cache(s), with zero inter-core communication. Metron also introduces a novel resource allocation scheme that minimizes the resource allocation overhead for large-scale NFV deployments. With commodity hardware assistance, Metron deeply inspects traffic at 40 Gbps and realizes stateful network functions at the speed of a 100 GbE network card on a single server. Metron has 2.75-6.5x better efficiency than OpenBox, a state of the art NFV system, while ensuring key requirements such as elasticity, fine-grained load balancing, and flexible traffic steering.
Disciplines :
Computer science
Author, co-author :
Katsikas, Georgios P.; KTH, School of Electrical Engineering and Computer Science (EECS), Communication Systems, CoS, Network Systems Laboratory (NS Lab). RISE SICS
Barbette, Tom ; Université de Liège - ULiège > Dép. d'électric., électron. et informat. (Inst.Montefiore) > Systèmes informatiques répartis et sécurité
Kostic, Dejan; KTH, School of Electrical Engineering and Computer Science (EECS), Communication Systems, CoS, Network Systems Laboratory (NS Lab)
Rebecca, Steinert; RISE SICS
Maguire Jr., Gerald Q.; KTH, School of Electrical Engineering and Computer Science (EECS), Communication Systems, CoS, Radio Systems Laboratory (RS Lab)
Language :
English
Title :
Metron: NFV Service Chains at the True Speed of the Underlying Hardware
Alternative titles :
[fr] Metron: Chaines de services NFV à la vitesse réelle du matériel sous-jacent
Publication date :
2019
Event name :
15th USENIX Symposium on Networked Systems Design and Implementation (NSDI 18)
Event organizer :
USENIX
Event place :
RENTON, WA, United States
Event date :
April 9-11 2018
Audience :
International
Main work title :
Proceedings of the 15th USENIX Symposium on Networked Systems Design and Implementation
Publisher :
USENIX Association
ISBN/EAN :
978-1-931971-43-0
Pages :
171-186
Peer reviewed :
Peer reviewed
Funders :
Swedish Foundation for Strategic Research KAW - Knut och Alice Wallenbergs Stiftelse
AL-FARES, M., LOUKISSAS, A., AND VAHDAT, A. A Scalable, Commodity Data Center Network Architecture. In Proceedings_of_the_ACM_SIGCOMM_2008_Conference_on_Data Communication (2008), pp. 63-74.
AL-FARES, M., RADHAKRISHNAN, S., RAGHAVAN, B., HUANG, N., AND VAHDAT, A. Hedera: Dynamic Flow Scheduling for Data Center Networks. In Proceedings_of_the 7th_USENIX_Conference_on_Networked_Systems_Design_and Implementation (2010), NSDI'10.
ANWER, B., BENSON, T., FEAMSTER, N., AND LEVIN, D. Programming Slick Network Functions. In Proceedings_of_the_1st ACM_SIGCOMM_Symposium_on_Software_Defined_Networking Research (2015), SOSR'15, pp. 14:1-14:13.
BARBETTE, T. Repository with DPDK extensions for OpenBox, 2018. https://github.com/tbarbette/fastclick/tree/ openbox.
BARBETTE, T., AND KATSIKAS, G. P. Metron data plane, 2018. https://github.com/tbarbette/fastclick/tree/ metron.
BARBETTE, T., SOLDANI, C., AND MATHY, L. Fast Userspace Packet Processing. In Proceedings_of_the_11th ACM/IEEE_Symposium_on_Architectures_for_Networking and_Communications_Systems (2015), ANCS'15, IEEE Computer Society. http://dl.acm.org/citation.cfm?id=2772722.2772727.
BERDE, P., GEROLA, M., HART, J., HIGUCHI, Y., KOBAYASHI, M., KOIDE, T., LANTZ, B., O'CONNOR, B., RADOSLAVOV, P., SNOW, W., AND PARULKAR, G. ONOS: Towards an Open, Distributed SDN OS. In Proceedings_of_the 3rd_Workshop_on_Hot_Topics_in_Software_Defined_Networking (2014), HotSDN'14, pp. 1-6.
BIANCHI, G., BONOLA, M., CAPONE, A., AND CASCONE, C. OpenState: Programming Platform-independent Stateful Openflow Applications Inside the Switch. SIGCOMM_Comput. Commun._Rev. (2014).
BIANCHI, G., BONOLA, M., PONTARELLI, S., SANVITO, D., CAPONE, A., AND CASCONE, C. Open Packet Processor: a programmable architecture for wire speed platform-independent stateful in-network processing. arXiv_preprint_arXiv:1605.01977 (2016).
BJORKLUND, M. YANG - A Data Modeling Language for the Network Configuration Protocol (NETCONF). Internet Request for Comments (RFC) 6020 (Proposed Standard), Oct. 2010. https://www.rfc-editor.org/rfc/rfc6020.txt.
BOSSHART, P., DALY, D., GIBB, G., IZZARD, M., MCKEOWN, N., REXFORD, J., SCHLESINGER, C., TALAYCO, D., VAHDAT, A., VARGHESE, G., AND WALKER, D. P4: Programming Protocol-independent Packet Processors. SIGCOMM_Comput. Commun._Rev._44, 3 (July 2014), 87-95.
BOSSHART, P., GIBB, G., KIM, H.-S., VARGHESE, G., MCKEOWN, N., IZZARD, M., MUJICA, F., AND HOROWITZ, M. Forwarding Metamorphosis: Fast Programmable Match-action Processing in Hardware for SDN. In Proceedings_of_the ACM_SIGCOMM_2013_Conference_on (2013), pp. 99-110.
BREMLER-BARR, A., HARCHOL, Y., AND HAY, D. OpenBox: A Software-Defined Framework for Developing, Deploying, and Managing Network Functions. In Proceedings_of_the 2016_Conference_on_ACM_SIGCOMM_2016_Conference (2016), SIGCOMM'16, pp. 511-524.
CASE, J., FEDOR, M., SCHOFFSTALL, M. L., AND DAVIN, J. Simple Network Management Protocol (SNMP). Internet Request for Comments (RFC) 1157, May 1990. http://www.ietf.org/rfc/rfc1157.txt.
CHOWDHURY, M., RAHMAN, M. R., AND BOUTABA, R. ViNEYard: Virtual Network Embedding Algorithms with Coordinated Node and Link Mapping. IEEE/ACM_Trans._Netw. 20, 1 (Feb. 2012), 206-219.
CISCO. Migrate to a 40-Gbps Data Center with Cisco QSFP BiDi Technology, 2013. http://www.cisco.com/c/en/us/products/collateral/switches/nexus-9000-seriesswitches/white-paper-c11-729493.html.
DIETZ, T., BIFULCO, R., MANCO, F., MARTINS, J., KOLBE, H., AND HUICI, F. Enhancing the BRAS through virtualization. In Proceedings_of_the_1st_IEEE_Conference_on_Network Softwarization,_NetSoft_2015 (2015), pp. 1-5.
DOBRESCU, M., EGI, N., ARGYRAKI, K., CHUN, B.-G., FALL, K., IANNACCONE, G., KNIES, A., MANESH, M., AND RATNASAMY, S. RouteBricks: Exploiting Parallelism to Scale Software Routers. In Proceedings_of_the_ACM_SIGOPS_22nd Symposium_on_Operating_Systems_Principles (2009), SOSP'09, pp. 15-28.
DPDK. Data Plane Development Kit, 2018. http://dpdk.org.
ENNS, R., BJORKLUND, M., SCHOENWAELDER, J., AND BIERMAN, A. Network Configuration Protocol (NETCONF). Internet Request for Comments (RFC) 6241 (Proposed Standard), June 2011. Updated by RFC 7803, https://www.rfceditor.org/rfc/rfc6241.txt.
EUROPEAN TELECOMMUNICATIONS STANDARDS INSTITUTE. Network Functions Virtualisation, 2017. http://www.etsi.org/technologies-clusters/technologies/ 689-network-functions-virtualisation.
EUROPEAN TELECOMMUNICATIONS STANDARDS INSTITUTE (ETSI). Open Source NFV Management and Orchestration (MANO), 2018. https://osm.etsi.org/.
GEMBER-JACOBSON, A., VISWANATHAN, R., PRAKASH, C., GRANDL, R., KHALID, J., DAS, S., AND AKELLA, A. OpenNF: Enabling Innovation in Network Function Control. In Proceedings_of_the_2014_ACM_Conference_on_SIGCOMM (2014), SIGCOMM'14, pp. 163-174.
GO, Y., ASIM JAMSHED, M., MOON, Y., HWANG, C., AND PARK, K. APUNet: Revitalizing GPU as Packet Processing Accelerator. In 14th_USENIX_Symposium_on_Networked Systems_Design_and_Implementation_(NSDI_17) (2017), USENIX Association, pp. 83-96.
HAN, S., JANG, K., PANDA, A., PALKAR, S., HAN, D., AND RATNASAMY, S. SoftNIC: A Software NIC to Augment Hardware. Tech. Rep. UCB/EECS-2015-155, EECS Department, University of California, Berkeley, May 2015.
HAN, S., JANG, K., PARK, K., AND MOON, S. PacketShader: A GPU-accelerated Software Router. In Proceedings_of_the_ACM SIGCOMM_2010_Conference (2010), SIGCOMM'10, pp. 195-206.
HE, J., ZHANG-SHEN, R., LI, Y., LEE, C.-Y., REXFORD, J., AND CHIANG, M. DaVinci: Dynamically Adaptive Virtual Networks for a Customized Internet. In Proceedings_of_the 2008_ACM_CoNEXT_Conference (New York, NY, USA, 2008), CoNEXT'08, ACM, pp. 15:1-15:12.
HWANG, J., RAMAKRISHNAN, K. K., AND WOOD, T. NetVM: High Performance and Flexible Networking Using Virtualization on Commodity Platforms. In Proceedings_of_the_11th_USENIX Conference_on_Networked_Systems_Design_and_Implementation (2014), NSDI'14, pp. 445-458.
IN T E L. Receive-Side Scaling (RSS), 2007. http://www.intel.com/content/dam/support/us/en/ documents/network/sb/318483001us2.pdf.
JAMSHED, M. A., LEE, J., MOON, S., YUN, I., KIM, D., LEE, S., YI, Y., AND PARK, K. Kargus: A Highly-scalable Software-based Intrusion Detection System. In Proceedings_of_the_2012 ACM_Conference_on_Computer_and_Communications_Security (2012), CCS'12.
KABLAN, M., ALSUDAIS, A., KELLER, E., AND LE, F. Stateless Network Functions: Breaking the Tight Coupling of State and Processing. In 14th_USENIX_Symposium_on Networked_Systems_Design_and_Implementation_(NSDI_17) (2017), pp. 97-112.
KATSIKAS, G. P. Realizing High Performance NFV Service Chains. Licentiate_Thesis (Nov. 2016). TRITA-ICT 2016:35, http://kth.diva-portal.org/smash/record.jsf?pid=diva2%3A1044355&dswid=-1520.
KATSIKAS, G. P. Metron controller's southbound driver for managing commodity servers, 2018. https://github.com/gkatsikas/onos/tree/metron-driver.
KATSIKAS, G. P., ENGUEHARD, M., KUZNIAR, M., MAGUIRE JR., G. Q., AND KOSTIĆ, D. SNF: Synthesizing high performance NFV service chains. PeerJ_Computer_Science 2 (Nov. 2016), e98. http://dx.doi.org/10.7717/peerjcs.98.
KATSIKAS, G. P., MAGUIRE JR., G. Q., AND KOSTIĆ, D. Profiling and accelerating commodity NFV service chains with SCC. Journal_of_Systems_and_Software_127C (Feb. 2017), 12-27. https://doi.org/10.1016/j.jss.2017.01.005.
KAUFMANN, A., PETER, S., SHARMA, N. K., ANDERSON, T., AND KRISHNAMURTHY, A. High Performance Packet Processing with FlexNIC. In Proceedings_of_the 21st_International_Conference_on_Architectural_Support_for Programming_Languages_and_Operating_Systems (2016), ASPLOS'16, pp. 67-81.
KHALID, J., GEMBER-JACOBSON, A., MICHAEL, R., ABHASHKUMAR, A., AND AKELLA, A. Paving the Way for NFV: Simplifying Middlebox Modifications Using StateAlyzr. In Proceedings_of_the_13th_USENIX_Conference_on_Networked Systems_Design_and_Implementation (2016), NSDI'16, USENIX Association, pp. 239-253.
KIM, J., HUH, S., JANG, K., PARK, K., AND MOON, S. The Power of Batching in the Click Modular Router. In Proceedings of_the_Asia-Pacific_Workshop_on_Systems (2012), APSYS'12, pp. 14:1-14:6.
KIM, J., JANG, K., LEE, K., MA, S., SHIM, J., AND MOON, S. NBA (Network Balancing Act): A High-performance Packet Processing Framework for Heterogeneous Processors. In Proceedings_of_the_10th_European_Conference_on_Computer Systems (2015), EuroSys'15.
KOHLER, E., MORRIS, R., CHEN, B., JANNOTTI, J., AND KAASHOEK, M. F. The Click Modular Router. ACM_Trans. Comput._Syst._18, 3 (Aug. 2000), 263-297.
KRISHNAN, R., DURRANI, M., AND PHAAL, P. Real-time SDN Analytics for DDoS mitigation, 2014.
KULKARNI, S. G., ZHANG, W., HWANG, J., RAJAGOPALAN, S., RAMAKRISHNAN, K. K., WOOD, T., ARUMAITHURAI, M., AND FU, X. NFVnice: Dynamic Backpressure and Scheduling for NFV Service Chains. In Proceedings_of_the_Conference_of the_ACM_Special_Interest_Group_on_Data_Communication (New York, NY, USA, 2017), SIGCOMM'17, ACM, pp. 71-84.
KUZNIAR, M., PEREŠÍNI, P., AND KOSTIĆ, D. What You Need to Know About SDN Flow Tables. In Passive_and_Active Measurement_(PAM) (2015), vol. 8995 of Lecture_Notes_in Computer_Science, pp. 347-359. https://doi.org/10.1007/ 978-3-319-15509-8_26.
KUZNIAR, M., PEREŠÍNI, P., KOSTIĆ, D., AND CANINI, M. Methodology, Measurement and Analysis of Flow Table Update Characteristics in Hardware OpenFlow Switches. Computer_Networks:_The_International_Journal_of_Computer and_Telecommunications_Networking,_Elsevier,_vol._26 (2018). https://doi.org/10.1016/j.comnet.2018.02.014.
LI, B., TAN, K., LUO, L. L., PENG, Y., LUO, R., XU, N., XIONG, Y., CHENG, P., AND CHEN, E. ClickNP: Highly Flexible and High Performance Network Processing with Reconfigurable Hardware. In Proceedings_of_the_2016_ACM SIGCOMM_Conference (2016), SIGCOMM'16, pp. 1-14.
LI, X., SETHI, R., KAMINSKY, M., ANDERSEN, D. G., AND FREEDMAN, M. J. Be Fast, Cheap and in Control with SwitchKV. In Proceedings_of_the_13th_USENIX_Conference on_Networked_Systems_Design_and_Implementation (2016), NSDI'16, USENIX Association, pp. 31-44.
MARTINS, J., AHMED, M., RAICIU, C., OLTEANU, V., HONDA, M., BIFULCO, R., AND HUICI, F. ClickOS and the Art of Network Function Virtualization. In Proceedings_of_the 11th_USENIX_Conference_on_Networked_Systems_Design_and Implementation (2014), NSDI'14, pp. 459-473.
MCKEOWN, N., ANDERSON, T., BALAKRISHNAN, H., PARULKAR, G., PETERSON, L., REXFORD, J., SHENKER, S., AND TURNER, J. OpenFlow: Enabling Innovation in Campus Networks. SIGCOMM_Comput._Commun._Rev._38, 2 (Mar. 2008), 69-74.
MELLANOX TECHNOLOGIES. Mellanox NIC's Performance Report with DPDK 17.05, 2017. Document number MLNX-15-52365, Revision 1.0, 2017, http://fast.dpdk.org/doc/perf/DPDK_17_05_Mellanox_NIC_performance_report.pdf.
MITZENMACHER, M. The Power of Two Choices in Randomized Load Balancing. IEEE_Trans._Parallel_Distrib._Syst. 12, 10 (Oct. 2001), 1094-1104.
NOVIFLOW. NoviSwitch 1132 High Performance OpenFlow Switch, 2013. https://noviflow.com/wp-content/uploads/NoviSwitch-1132-Datasheet-V2_1.pdf.
OLTEANU, V. A., AND RAICIU, C. Efficiently Migrating Stateful Middleboxes. In Proceedings_of_the_ACM_SIGCOMM 2012_Conference_on_Applications,_Technologies,_Architectures, and_Protocols_for_Computer_Communication (2012), SIGCOMM'12, ACM, pp. 93-94.
ON.LAB. Central Office Re-architected as a Datacenter (CORD), 2018. http://opencord.org/.
ON.LAB. Open Network Operating System (ONOS), 2018. http://onosproject.org/.
OPEN VSWITCH. An Open Virtual Switch, 2018. http://openvswitch.org.
OPENSTACK. Open Source Cloud Computing Software, 2018. https://www.openstack.org/.
PALKAR, S., LAN, C., HAN, S., JANG, K., PANDA, A., RATNASAMY, S., RIZZO, L., AND SHENKER, S. E2: A Framework for NFV Applications. In Proceedings_of_the_25th Symposium_on_Operating_Systems_Principles (2015), SOSP'15, pp. 121-136.
PESTEREV, A., ZELDOVICH, N., AND MORRIS, R. T. Locating Cache Performance Bottlenecks Using Data Profiling. In Proceedings_of_the_5th_European_Conference_on_Computer Systems (2010), EuroSys'10, pp. 335-348.
RAUMER, D., GALLENMÜLLER, S., EMMERICH, P., MÄRDIAN, L., WOHLFART, F., AND CARLE, G. Efficient serving of VPN endpoints on COTS server hardware. In 2016_IEEE_5th International_Conference_on_Cloud_Networking_(CloudNet'16) (Pisa, Italy, Oct. 2016).
SEKAR, V., EGI, N., RATNASAMY, S., REITER, M. K., AND SHI, G. Design and Implementation of a Consolidated Middlebox Architecture. In Proceedings_of_the_9th_USENIX Conference_on_Networked_Systems_Design_and_Implementation (2012), NSDI'12.
SUN, C., BI, J., ZHENG, Z., YU, H., AND HU, H. NFP: Enabling Network Function Parallelism in NFV. In Proceedings of_the_Conference_of_the_ACM_Special_Interest_Group_on_Data Communication (New York, NY, USA, 2017), SIGCOMM'17, ACM, pp. 43-56.
SUN, W., AND RICCI, R. Fast and Flexible: Parallel Packet Processing with GPUs and Click. In Proceedings_of_the_9th ACM/IEEE_Symposium_on_Architectures_for_Networking_and Communications_Systems (Piscataway, NJ, USA, 2013), ANCS'13, IEEE Press, pp. 25-36.
TAYLOR, D. E., AND TURNER, J. S. ClassBench: A Packet Classification Benchmark. IEEE/ACM_Trans._Netw._15, 3 (June 2007), 499-511.
THE LINUX FOUNDATION. Open Platform for NFV (OPNFV), 2018. https://www.opnfv.org/.
VIEJO, A. QLogic and Broadcom First to Demonstrate End-to-End Interoperability for 25Gb and 100Gb Ethernet, 2015. https://globenewswire.com/news-release/2015/01/27/700249/10116850/en/QLogic-and-Broadcom-Firstto-Demonstrate-End-to-End-Interoperability-for-25Gb-and-100Gb-Ethernet.html.
YU, M., YI, Y., REXFORD, J., AND CHIANG, M. Rethinking Virtual Network Embedding: Substrate Support for Path Splitting and Migration. SIGCOMM_Comput._Commun._Rev._38, 2 (Mar. 2008), 17-29.
ZAVE, P., FERREIRA, R. A., ZOU, X. K., MORIMOTO, M., AND REXFORD, J. Dynamic Service Chaining with Dysco. In Proceedings_of_the_Conference_of_the_ACM_Special_Interest Group_on_Data_Communication (New York, NY, USA, 2017), SIGCOMM'17, ACM, pp. 57-70.
ZHANG, W., HWANG, J., RAJAGOPALAN, S., RAMAKRISHNAN, K., AND WOOD, T. Flurries: Countless Fine-Grained NFs for Flexible Per-Flow Customization. In Proceedings_of_the 12th_ACM_International_Conference_on_Emerging_Networking Experiments_and_Technologies (2016), CoNEXT'16, pp. 3-17.
ZHANG, W., LIU, G., ZHANG, W., SHAH, N., LOPREIATO, P., TODESCHI, G., RAMAKRISHNAN, K., AND WOOD, T. OpenNetVM: A Platform for High Performance Network Service Chains. In Proceedings_of_the_2016_ACM_SIGCOMM Workshop_on_Hot_Topics_in_Middleboxes_and_Network_Function Virtualization (August 2016), ACM.