{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,2,9]],"date-time":"2026-02-09T23:23:57Z","timestamp":1770679437435,"version":"3.49.0"},"reference-count":51,"publisher":"Association for Computing Machinery (ACM)","issue":"3","license":[{"start":{"date-parts":[[2023,10,30]],"date-time":"2023-10-30T00:00:00Z","timestamp":1698624000000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["SIGCOMM Comput. Commun. Rev."],"published-print":{"date-parts":[[2023,10,30]]},"abstract":"<jats:p>Many researchers are turning to SmartNIC offloads to improve the performance of high-performance networked systems. In this editorial, I discuss why SmartNICs are an especially powerful form factor for improving I\/O intensive applications, and how their position in the dataplane enables them to take on central role in managing I\/O. Rather than focusing on the benefits of individual offloads, this paper aims to explore the position of SmartNICs in the overall system integration of datacenter servers at the hardware and software level. I argue that SmartNICs should be viewed as 'data movement controllers' (NIC-DMCs) which are responsible for tasks involved in moving data between network, CPU, accelerators, and other endpoints: multiplexing\/steering, interfacing between protocols, and enforcing I\/O policies. I then enumerate open questions in how the hardware and software systems of the future will evolve to accommodate a dedicated NIC-DMC which is independent of the CPU complex.<\/jats:p>","DOI":"10.1145\/3649171.3649174","type":"journal-article","created":{"date-parts":[[2024,2,20]],"date-time":"2024-02-20T22:09:05Z","timestamp":1708466945000},"page":"9-17","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":3,"title":["The I\/O Driven Server: From SmartNICs to Data Movement Controllers"],"prefix":"10.1145","volume":"53","author":[{"given":"Justine","family":"Sherry","sequence":"first","affiliation":[{"name":"Carnegie Mellon University, Pittsburgh, PA, USA"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2024,2,20]]},"reference":[{"key":"e_1_2_1_1_1","unstructured":"2023. Private communciation with Brian Nigito and Ron Minsky."},{"key":"e_1_2_1_2_1","unstructured":"2023. Private communciation with Ren Wang."},{"key":"e_1_2_1_3_1","unstructured":"2023. Compute Express Link. https:\/\/www.computeexpresslink.org\/"},{"key":"e_1_2_1_4_1","unstructured":"Amazon. 2023. AWS Nitro System. https:\/\/aws.amazon.com\/ec2\/nitro\/"},{"key":"e_1_2_1_5_1","unstructured":"AMD Corporation. [n. d.]. AMD Pensando SmartNIC. https:\/\/www.amd.com\/en\/accelerators\/pensando"},{"key":"e_1_2_1_6_1","doi-asserted-by":"publisher","DOI":"10.5555\/3388242.3388250"},{"key":"e_1_2_1_7_1","volume-title":"Preview: Azure Boost. https:\/\/azure.microsoft.com\/en-us\/updates\/preview-azure-boost\/","author":"Azure Microsoft","year":"2023","unstructured":"Microsoft Azure. 2023. Preview: Azure Boost. https:\/\/azure.microsoft.com\/en-us\/updates\/preview-azure-boost\/"},{"key":"e_1_2_1_8_1","volume-title":"14th USENIX Symposium on Operating Systems Design and Implementation (OSDI 20)","author":"Brunella Marco Spaziani","year":"2020","unstructured":"Marco Spaziani Brunella, Giacomo Belocchi, Marco Bonola, Salvatore Pontarelli, Giuseppe Siracusano, Giuseppe Bianchi, Aniello Cammarano, Alessandro Palumbo, Luca Petrucci, and Roberto Bifulco. 2020. hXDP: Efficient Software Packet Processing on FPGA NICs. In 14th USENIX Symposium on Operating Systems Design and Implementation (OSDI 20). USENIX Association, 973--990. https:\/\/www.usenix.org\/conference\/osdi20\/presentation\/brunella"},{"key":"e_1_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.1145\/3470496.3533043"},{"key":"e_1_2_1_10_1","unstructured":"Kit Colbert. 2020. Announcing Project Monterey: Redefining Hybrid Cloud Architecture. VMware Blog."},{"key":"e_1_2_1_11_1","unstructured":"Kevin Deierling. 2020. What Is a DPU? NVIDIA Blog. https:\/\/blogs.nvidia.com\/blog\/2020\/05\/20\/whats-a-dpu-data-processing-unit\/"},{"key":"e_1_2_1_12_1","volume-title":"Proceedings of the 15th USENIX Conference on Networked Systems Design and Implementation","author":"Firestone Daniel","year":"2018","unstructured":"Daniel Firestone, Andrew Putnam, Sambhrama Mundkur, Derek Chiou, Alireza Dabagh, Mike Andrewartha, Hari Angepat, Vivek Bhanu, Adrian Caulfield, Eric Chung, Harish Kumar Chandrappa, Somesh Chaturmohta, Matt Humphrey, Jack Lavier, Norman Lam, Fengfen Liu, Kalin Ovtcharov, Jitu Padhye, Gautham Popuri, Shachar Raindel, Tejas Sapre, Mark Shaw, Gabriel Silva, Madhan Sivakumar, Nisheeth Srivastava, Anshuman Verma, Qasim Zuhair, Deepak Bansal, Doug Burger, Kushagra Vaid, David A. Maltz, and Albert Greenberg. 2018. Azure Accelerated Networking: SmartNICs in the Public Cloud. In Proceedings of the 15th USENIX Conference on Networked Systems Design and Implementation (Renton, WA, USA) (NSDI'18). USENIX Association, USA, 51--64."},{"key":"e_1_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1109\/FCCM48280.2020.00015"},{"key":"e_1_2_1_14_1","unstructured":"Intel Corporation. [n. d.]. Infrastructure Processing Unit. https:\/\/www.intel.com\/content\/www\/us\/en\/products\/details\/network-io\/ipu.htm"},{"key":"e_1_2_1_15_1","unstructured":"Intel Corporation. 2023. Introduction to Intel Ethernet Flow Director and Memcached Performance. Whitepaper 331109-001US."},{"key":"e_1_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.1145\/3465628"},{"key":"e_1_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.1145\/3465628"},{"key":"e_1_2_1_18_1","doi-asserted-by":"publisher","DOI":"10.1145\/2980024.2872367"},{"key":"e_1_2_1_19_1","volume-title":"13th USENIX Symposium on Operating Systems Design and Implementation (OSDI 18)","author":"Khawaja Ahmed","unstructured":"Ahmed Khawaja, Joshua Landgraf, Rohith Prakash, Michael Wei, Eric Schkufza, and Christopher J. Rossbach. 2018. Sharing, Protection, and Compatibility for Reconfigurable Fabric with AmorphOS. In 13th USENIX Symposium on Operating Systems Design and Implementation (OSDI 18). USENIX Association, Carlsbad, CA, 107--127. http:\/\/www.usenix.org\/conference\/osdi18\/presentation\/khawaja"},{"key":"e_1_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1145\/3582016.3582067"},{"key":"e_1_2_1_21_1","volume-title":"Rearchitecting the TCP Stack for I\/O-Offloaded Content Delivery. In 20th USENIX Symposium on Networked Systems Design and Implementation (NSDI 23)","author":"Kim Taehyun","year":"2023","unstructured":"Taehyun Kim, Deondre Martin Ng, Junzhi Gong, Youngjin Kwon, Minlan Yu, and KyoungSoo Park. 2023. Rearchitecting the TCP Stack for I\/O-Offloaded Content Delivery. In 20th USENIX Symposium on Networked Systems Design and Implementation (NSDI 23). USENIX Association, Boston, MA, 275--292. https:\/\/www.usenix.org\/conference\/nsdi23\/presentation\/kim-taehyun"},{"key":"e_1_2_1_22_1","doi-asserted-by":"publisher","DOI":"10.1145\/354871.354874"},{"key":"e_1_2_1_23_1","doi-asserted-by":"publisher","DOI":"10.1145\/2934872.2934897"},{"key":"e_1_2_1_24_1","volume-title":"20th USENIX Symposium on Networked Systems Design and Implementation (NSDI 23)","author":"Lin Jiaxin","year":"2023","unstructured":"Jiaxin Lin, Adney Cardoza, Tarannum Khan, Yeonju Ro, Brent E. Stephens, Hassan Wassel, and Aditya Akella. 2023. RingLeader: Efficiently Offloading Intra-Server Orchestration to NICs. In 20th USENIX Symposium on Networked Systems Design and Implementation (NSDI 23). USENIX Association, Boston, MA, 1293--1308. https:\/\/www.usenix.org\/conference\/nsdi23\/presentation\/lin"},{"key":"e_1_2_1_25_1","volume-title":"PANIC: A High-Performance Programmable NIC for Multi-tenant Networks. In 14th USENIX Symposium on Operating Systems Design and Implementation (OSDI 20)","author":"Lin Jiaxin","year":"2020","unstructured":"Jiaxin Lin, Kiran Patel, Brent E. Stephens, Anirudh Sivaraman, and Aditya Akella. 2020. PANIC: A High-Performance Programmable NIC for Multi-tenant Networks. In 14th USENIX Symposium on Operating Systems Design and Implementation (OSDI 20). USENIX Association, 243--259. https:\/\/www.usenix.org\/conference\/osdi20\/presentation\/lin"},{"key":"e_1_2_1_26_1","unstructured":"Mangoboost. 2023. Mangoboost DPU Accelerator. https:\/\/mangoboost.io\/"},{"key":"e_1_2_1_27_1","doi-asserted-by":"publisher","DOI":"10.1184\/R1\/19787158.v1"},{"key":"e_1_2_1_28_1","unstructured":"Mellanox Corporation. [n. d.]. Mellanox ConnectX-5. https:\/\/www.nvidia.com\/en-us\/networking\/ethernet\/connectx-5\/"},{"key":"e_1_2_1_29_1","doi-asserted-by":"publisher","DOI":"10.1145\/5666.5671"},{"key":"e_1_2_1_30_1","unstructured":"Netronome. [n. d.]. Netronome Agilio SmartNICs. https:\/\/www.netronome.com\/"},{"key":"e_1_2_1_31_1","unstructured":"NVIDIA. 2023. ConnectX SmartNICs. https:\/\/www.nvidia.com\/en-us\/networking\/ethernet-adapters\/."},{"key":"e_1_2_1_32_1","unstructured":"NVIDIA Corporation. [n. d.]. Bluefield Data Processing Unit. https:\/\/www.nvidia.com\/en-us\/networking\/products\/data-processing-unit\/"},{"key":"e_1_2_1_33_1","unstructured":"NVIDIA Corporation. 2023. NVIDIA GPUDirect. https:\/\/developer.nvidia.com\/gpudirect"},{"key":"e_1_2_1_34_1","unstructured":"NVIDIA Corporation. 2023. TLS Offload using NVIDIA Bluefield DPU. https:\/\/docs.nvidia.com\/doca\/sdk\/tls-offload\/index.html"},{"key":"e_1_2_1_35_1","unstructured":"Peripheral Component Interconnect Special Interest Group. 2015. Root Complex Integrated Endpoints and IOV Updates. PCI-SIG Document 11110."},{"key":"e_1_2_1_36_1","volume-title":"11th USENIX Symposium on Operating Systems Design and Implementation (OSDI 14)","author":"Peter Simon","year":"2014","unstructured":"Simon Peter, Jialin Li, Irene Zhang, Dan R. K. Ports, Doug Woos, Arvind Krishnamurthy, Thomas Anderson, and Timothy Roscoe. 2014. Arrakis: The Operating System is the Control Plane. In 11th USENIX Symposium on Operating Systems Design and Implementation (OSDI 14). USENIX Association, Broomfield, CO, 1--16. https:\/\/www.usenix.org\/conference\/osdi14\/technical-sessions\/presentation\/peter"},{"key":"e_1_2_1_37_1","doi-asserted-by":"publisher","DOI":"10.1109\/MM.2015.42"},{"key":"e_1_2_1_38_1","doi-asserted-by":"publisher","DOI":"10.1145\/6041.6043"},{"key":"e_1_2_1_39_1","doi-asserted-by":"publisher","DOI":"10.1145\/3600006.3613137"},{"key":"e_1_2_1_40_1","volume-title":"We Need Kernel Interposition over the Network Dataplane. (May","author":"Sadok Hugo","year":"2021","unstructured":"Hugo Sadok, Zhipeng Zhao, Valerie Choung, Nirav Atre, Daniel S. Berger, James C. Hoe, Aurojit Panda, and Justine Sherry. 2021. We Need Kernel Interposition over the Network Dataplane. (May 2021)."},{"key":"e_1_2_1_41_1","doi-asserted-by":"publisher","DOI":"10.1145\/361268.361275"},{"key":"e_1_2_1_42_1","doi-asserted-by":"publisher","DOI":"10.1145\/3477132.3483555"},{"key":"e_1_2_1_43_1","volume-title":"FlexTOE: Flexible TCP Offload with Fine-Grained Parallelism. In 19th USENIX Symposium on Networked Systems Design and Implementation (NSDI 22)","author":"Shashidhara Rajath","year":"2022","unstructured":"Rajath Shashidhara, Tim Stamler, Antoine Kaufmann, and Simon Peter. 2022. FlexTOE: Flexible TCP Offload with Fine-Grained Parallelism. In 19th USENIX Symposium on Networked Systems Design and Implementation (NSDI 22). USENIX Association, Renton, WA, 87--102. https:\/\/www.usenix.org\/conference\/nsdi22\/presentation\/shashidhara"},{"key":"e_1_2_1_44_1","unstructured":"Justine Sherry. [n. d.]. Re-envisioning Generic Server Architectures for I\/O-Driven Compute. Keynote at EuroP4 2022 Workshop. https:\/\/www.youtube.com\/watch?v=Lo0mVet4eZM"},{"key":"e_1_2_1_45_1","doi-asserted-by":"publisher","DOI":"10.1145\/3373376.3378509"},{"key":"e_1_2_1_46_1","doi-asserted-by":"publisher","DOI":"10.1145\/3373376.3378450"},{"key":"e_1_2_1_47_1","unstructured":"The Linux Kernel documentation. [n. d.]. Segmentation Offloads. https:\/\/docs.kernel.org\/networking\/segmentation-offloads.html"},{"key":"e_1_2_1_48_1","doi-asserted-by":"publisher","DOI":"10.1145\/224057.224061"},{"key":"e_1_2_1_49_1","volume-title":"The Free Encyclopedia","unstructured":"Wikipedia. 2023. Data processing unit --- Wikipedia, The Free Encyclopedia. http:\/\/en.wikipedia.org\/w\/index.php?title=Data%20processing%20unit&oldid=1164863994. [Online; accessed 04-August-2023]."},{"key":"e_1_2_1_50_1","volume-title":"Proceedings of the 9th USENIX Conference on Networked Systems Design and Implementation","author":"Zaharia Matei","year":"2012","unstructured":"Matei Zaharia, Mosharaf Chowdhury, Tathagata Das, Ankur Dave, Justin Ma, Murphy McCauley, Michael J. Franklin, Scott Shenker, and Ion Stoica. 2012. Resilient Distributed Datasets: A Fault-Tolerant Abstraction for in-Memory Cluster Computing. In Proceedings of the 9th USENIX Conference on Networked Systems Design and Implementation (San Jose, CA) (NSDI'12). USENIX Association, USA, 2."},{"key":"e_1_2_1_51_1","volume-title":"Proceedings of the 14th USENIX Symposium on Operating Systems Design and Implementation (OSDI) (OSDI '20)","author":"Zhao Zhipeng","year":"2020","unstructured":"Zhipeng Zhao, Hugo Sadok, Nirav Atre, James Hoe, Vyas Sekar, and Justine Sherry. 2020. Achieving 100Gbps Intrusion Prevention on a Single Server. In Proceedings of the 14th USENIX Symposium on Operating Systems Design and Implementation (OSDI) (OSDI '20). USENIX Association, Berkeley, CA, USA."}],"container-title":["ACM SIGCOMM Computer Communication Review"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3649171.3649174","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3649171.3649174","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T23:56:39Z","timestamp":1750290999000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3649171.3649174"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2023,10,30]]},"references-count":51,"journal-issue":{"issue":"3","published-print":{"date-parts":[[2023,10,30]]}},"alternative-id":["10.1145\/3649171.3649174"],"URL":"https:\/\/doi.org\/10.1145\/3649171.3649174","relation":{},"ISSN":["0146-4833"],"issn-type":[{"value":"0146-4833","type":"print"}],"subject":[],"published":{"date-parts":[[2023,10,30]]},"assertion":[{"value":"2024-02-20","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}