{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,2,26]],"date-time":"2026-02-26T05:13:34Z","timestamp":1772082814236,"version":"3.50.1"},"reference-count":42,"publisher":"Association for Computing Machinery (ACM)","issue":"1","license":[{"start":{"date-parts":[[2021,1,31]],"date-time":"2021-01-31T00:00:00Z","timestamp":1612051200000},"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":[[2021,1,31]]},"abstract":"<jats:p>\n            Many promising networking research ideas in programmable networks never see the light of day. Yet, deploying research prototypes in production networks can help validate research ideas, improve them with faster feedback, uncover new research questions, and also ease the subsequent transition to practice. In this paper, we show how researchers can run and validate their research ideas in their own backyards---on their production campus networks---and we have seen that such a demonstrator can expedite the deployment of a research idea in practice to solve real network operation problems. We present\n            <jats:italic>P4Campus<\/jats:italic>\n            , a proof-of-concept that encompasses tools, an infrastructure design, strategies, and best practices---both technical and non-technical---that can help researchers run experiments against their programmable network idea in their own network. We use network tapping devices, packet brokers, and commodity programmable switches to enable running experiments to evaluate research ideas on a production campus network. We present several compelling data-plane applications as use cases that run on our campus and solve production network problems. By sharing our experiences and open-sourcing our P4 apps [28], we hope to encourage similar efforts on other campuses.\n          <\/jats:p>","DOI":"10.1145\/3457175.3457178","type":"journal-article","created":{"date-parts":[[2021,3,12]],"date-time":"2021-03-12T23:37:36Z","timestamp":1615592256000},"page":"10-17","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":18,"title":["Experience-driven research on programmable networks"],"prefix":"10.1145","volume":"51","author":[{"given":"Hyojoon","family":"Kim","sequence":"first","affiliation":[{"name":"Princeton University"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Xiaoqi","family":"Chen","sequence":"additional","affiliation":[{"name":"Princeton University"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Jack","family":"Brassil","sequence":"additional","affiliation":[{"name":"Princeton University"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Jennifer","family":"Rexford","sequence":"additional","affiliation":[{"name":"Princeton University"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2021,3,12]]},"reference":[{"key":"e_1_2_1_1_1","volume-title":"https:\/\/www.arista.com\/en\/products\/danz-monitoring-fabric","author":"DANZ","year":"2020","unstructured":"Arista DANZ monitoring fabric. https:\/\/www.arista.com\/en\/products\/danz-monitoring-fabric , 2020 . Arista DANZ monitoring fabric. https:\/\/www.arista.com\/en\/products\/danz-monitoring-fabric, 2020."},{"key":"e_1_2_1_2_1","volume-title":"https:\/\/www.intel.com\/content\/www\/us\/en\/products\/network-io\/programmable-ethernet-switch\/tofino-series\/tofino.html","year":"2021","unstructured":"Barefoot (Intel) Torino Chip. https:\/\/www.intel.com\/content\/www\/us\/en\/products\/network-io\/programmable-ethernet-switch\/tofino-series\/tofino.html , 2021 . Barefoot (Intel) Torino Chip. https:\/\/www.intel.com\/content\/www\/us\/en\/products\/network-io\/programmable-ethernet-switch\/tofino-series\/tofino.html, 2021."},{"key":"e_1_2_1_3_1","volume-title":"https:\/\/www.intel.com\/content\/www\/us\/en\/products\/network-io\/programmable-ethernet-switch\/tofino-2-series.html","year":"2021","unstructured":"Barefoot (Intel) Tofino2 Chip. https:\/\/www.intel.com\/content\/www\/us\/en\/products\/network-io\/programmable-ethernet-switch\/tofino-2-series.html , 2021 . Barefoot (Intel) Tofino2 Chip. https:\/\/www.intel.com\/content\/www\/us\/en\/products\/network-io\/programmable-ethernet-switch\/tofino-2-series.html, 2021."},{"issue":"3","key":"e_1_2_1_4_1","article-title":"Designing heavy-hitter detection algorithms for programmable switches","volume":"28","author":"Basat R. B.","year":"2020","unstructured":"R. B. Basat , X. Chen , G. Einziger , and O. Rottenstreich . Designing heavy-hitter detection algorithms for programmable switches . IEEE\/ACM Transactions on Networking , 28 ( 3 ), June 2020 . R. B. Basat, X. Chen, G. Einziger, and O. Rottenstreich. Designing heavy-hitter detection algorithms for programmable switches. IEEE\/ACM Transactions on Networking, 28(3), June 2020.","journal-title":"IEEE\/ACM Transactions on Networking"},{"key":"e_1_2_1_5_1","unstructured":"T. Benson A. Akella and D. A. Maltz. Data set for IMC 2010 data center measurement. http:\/\/pages.cs.wisc.edu\/~tbenson\/IMC10_Data.html 2010.  T. Benson A. Akella and D. A. Maltz. Data set for IMC 2010 data center measurement. http:\/\/pages.cs.wisc.edu\/~tbenson\/IMC10_Data.html 2010."},{"key":"e_1_2_1_6_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-29011-4_5"},{"key":"e_1_2_1_7_1","doi-asserted-by":"publisher","DOI":"10.1145\/2656877.2656890"},{"key":"e_1_2_1_8_1","volume-title":"Stanford University. Workshop on Buffer Sizing","author":"Buccapatnam S.","year":"2019","unstructured":"S. Buccapatnam , X. Chen , K. Duell , S. L. Feibish , K. Meier-Hellstern , Y. Koral , S. A. Monetti , A. Raghuram , J. Rexford , J. Stango , measurement toolkit for buffer sizing in carrier grade networks . In Stanford University. Workshop on Buffer Sizing , 2019 . S. Buccapatnam, X. Chen, K. Duell, S. L. Feibish, K. Meier-Hellstern, Y. Koral, S. A. Monetti, A. Raghuram, J. Rexford, J. Stango, et al. Fine-grained P4 measurement toolkit for buffer sizing in carrier grade networks. In Stanford University. Workshop on Buffer Sizing, 2019."},{"key":"e_1_2_1_9_1","unstructured":"CAIDA\n  : Anonymization Tools Taxonomy. https:\/\/www.caida.org\/tools\/taxonomy\/anonymization.xml.  CAIDA: Anonymization Tools Taxonomy. https:\/\/www.caida.org\/tools\/taxonomy\/anonymization.xml."},{"key":"e_1_2_1_10_1","unstructured":"CAIDA\n  : Summary of Anonymization Best Practice Techniques. https:\/\/www.caida.org\/projects\/predict\/anonymization\/.  CAIDA: Summary of Anonymization Best Practice Techniques. https:\/\/www.caida.org\/projects\/predict\/anonymization\/."},{"key":"e_1_2_1_11_1","unstructured":"CAIDA\n  : Data Collection Curation and Sharing. https:\/\/www.caida.org\/data\/.  CAIDA: Data Collection Curation and Sharing. https:\/\/www.caida.org\/data\/."},{"key":"e_1_2_1_12_1","volume-title":"Campus cyberinfrastructure. https:\/\/www.nsf.gov\/funding\/pgm_summ.jsp?pims_id=504748","author":"USA National Science Foundation","year":"2021","unstructured":"USA National Science Foundation : Campus cyberinfrastructure. https:\/\/www.nsf.gov\/funding\/pgm_summ.jsp?pims_id=504748 , 2021 . USA National Science Foundation: Campus cyberinfrastructure. https:\/\/www.nsf.gov\/funding\/pgm_summ.jsp?pims_id=504748, 2021."},{"key":"e_1_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1145\/3359989.3365408"},{"key":"e_1_2_1_14_1","doi-asserted-by":"publisher","DOI":"10.1145\/3405669.3405823"},{"key":"e_1_2_1_15_1","volume-title":"https:\/\/www.cisco.com\/c\/en\/us\/solutions\/service-provider\/innovation\/silicon-one.html","year":"2020","unstructured":"Cisco Silicon One. https:\/\/www.cisco.com\/c\/en\/us\/solutions\/service-provider\/innovation\/silicon-one.html , 2020 . Cisco Silicon One. https:\/\/www.cisco.com\/c\/en\/us\/solutions\/service-provider\/innovation\/silicon-one.html, 2020."},{"key":"e_1_2_1_16_1","volume-title":"A 10 gigabit network traffic (re)player. https:\/\/www.ntop.org\/products\/traffic-recording-replay\/disk2n\/","year":"2020","unstructured":"Disk2n : A 10 gigabit network traffic (re)player. https:\/\/www.ntop.org\/products\/traffic-recording-replay\/disk2n\/ , 2020 . Disk2n: A 10 gigabit network traffic (re)player. https:\/\/www.ntop.org\/products\/traffic-recording-replay\/disk2n\/, 2020."},{"key":"e_1_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.1145\/2670518.2673872"},{"key":"e_1_2_1_18_1","volume-title":"Data Plane Development Kit. https:\/\/www.dpdk.org\/","author":"DPDK","year":"2018","unstructured":"DPDK , Data Plane Development Kit. https:\/\/www.dpdk.org\/ , 2018 . DPDK, Data Plane Development Kit. https:\/\/www.dpdk.org\/, 2018."},{"key":"e_1_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.1145\/2815675.2815692"},{"key":"e_1_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1007\/11596141_19"},{"key":"e_1_2_1_21_1","doi-asserted-by":"publisher","DOI":"10.1109\/COMST.2014.2321898"},{"key":"e_1_2_1_22_1","doi-asserted-by":"publisher","DOI":"10.1145\/3341216.3342208"},{"key":"e_1_2_1_23_1","doi-asserted-by":"publisher","DOI":"10.1145\/1355734.1355746"},{"key":"e_1_2_1_24_1","volume-title":"10\/40 gbit network traffic recorder with indexing capabilities. https:\/\/www.ntop.org\/products\/traffic-recording-replay\/n2disk\/","year":"2020","unstructured":"N2disk : 10\/40 gbit network traffic recorder with indexing capabilities. https:\/\/www.ntop.org\/products\/traffic-recording-replay\/n2disk\/ , 2020 . N2disk: 10\/40 gbit network traffic recorder with indexing capabilities. https:\/\/www.ntop.org\/products\/traffic-recording-replay\/n2disk\/, 2020."},{"key":"e_1_2_1_25_1","volume-title":"https:\/\/bit.ly\/2UOGfi8","author":"NIC.","year":"2016","unstructured":"Netronome Agilio Smart NIC. https:\/\/bit.ly\/2UOGfi8 , 2016 . Netronome Agilio SmartNIC. https:\/\/bit.ly\/2UOGfi8, 2016."},{"key":"e_1_2_1_26_1","volume-title":"https:\/\/github.com\/p4lang\/behavioral-model","year":"2020","unstructured":"P4 language consortium behavioral model (bmv2). https:\/\/github.com\/p4lang\/behavioral-model , 2020 . P4 language consortium behavioral model (bmv2). https:\/\/github.com\/p4lang\/behavioral-model, 2020."},{"key":"e_1_2_1_27_1","volume-title":"https:\/\/github.com\/NetFPGA\/P4-NetFPGA-public\/wiki","author":"FPGA.","year":"2020","unstructured":"P4-Net FPGA. https:\/\/github.com\/NetFPGA\/P4-NetFPGA-public\/wiki , 2020 . P4-NetFPGA. https:\/\/github.com\/NetFPGA\/P4-NetFPGA-public\/wiki, 2020."},{"key":"e_1_2_1_28_1","volume-title":"framework, applications, and artifacts. https:\/\/p4campus.cs.princeton.edu","year":"2021","unstructured":"P4Campus : framework, applications, and artifacts. https:\/\/p4campus.cs.princeton.edu , 2021 . P4Campus: framework, applications, and artifacts. https:\/\/p4campus.cs.princeton.edu, 2021."},{"key":"e_1_2_1_29_1","volume-title":"https:\/\/p4.org\/specs\/","year":"2019","unstructured":"P4 Specification [Online]. https:\/\/p4.org\/specs\/ , 2019 . P4 Specification [Online]. https:\/\/p4.org\/specs\/, 2019."},{"key":"e_1_2_1_30_1","volume-title":"https:\/\/www.perfsonar.net","author":"SONAR.","year":"2020","unstructured":"perf SONAR. https:\/\/www.perfsonar.net , 2020 . perfSONAR. https:\/\/www.perfsonar.net, 2020."},{"key":"e_1_2_1_31_1","doi-asserted-by":"publisher","DOI":"10.1145\/1297797.1297820"},{"key":"e_1_2_1_32_1","unstructured":"PFRING\n  : High-speed packet capture filtering and analysis. https:\/\/www.ntop.org\/products\/packet-capture\/pf_ring\/.  PFRING: High-speed packet capture filtering and analysis. https:\/\/www.ntop.org\/products\/packet-capture\/pf_ring\/."},{"key":"e_1_2_1_33_1","first-page":"101","volume-title":"USENIX Security Symposium","author":"Rizzo L.","year":"2012","unstructured":"L. Rizzo . Netmap : A novel framework for fast packet I\/O . In USENIX Security Symposium , pages 101 -- 112 , 2012 . L. Rizzo. Netmap: A novel framework for fast packet I\/O. In USENIX Security Symposium, pages 101--112, 2012."},{"key":"e_1_2_1_34_1","first-page":"1","volume-title":"OSDI","volume":"10","author":"Sherwood R.","year":"2010","unstructured":"R. Sherwood , G. Gibb , K.-K. Yap , G. Appenzeller , M. Casado , N. McKeown , and G. M. Parulkar . Can the production network be the testbed ? In OSDI , volume 10 , pages 1 -- 6 , 2010 . R. Sherwood, G. Gibb, K.-K. Yap, G. Appenzeller, M. Casado, N. McKeown, and G. M. Parulkar. Can the production network be the testbed? In OSDI, volume 10, pages 1--6, 2010."},{"key":"e_1_2_1_35_1","first-page":"823","volume-title":"USENIX Annual Technical Conference","author":"Sonchack J.","year":"2018","unstructured":"J. Sonchack , O. Michel , A. J. Aviv , E. Keller , and J. M. Smith . Scaling hardware accelerated network monitoring to concurrent and dynamic queries with *Flow . In USENIX Annual Technical Conference , pages 823 -- 835 , 2018 . J. Sonchack, O. Michel, A. J. Aviv, E. Keller, and J. M. Smith. Scaling hardware accelerated network monitoring to concurrent and dynamic queries with *Flow. In USENIX Annual Technical Conference, pages 823--835, 2018."},{"key":"e_1_2_1_36_1","volume-title":"https:\/\/www.tcpdump.org","author":"Libpcap DUMP","year":"2020","unstructured":"TCP DUMP and Libpcap . https:\/\/www.tcpdump.org , 2020 . TCPDUMP and Libpcap. https:\/\/www.tcpdump.org, 2020."},{"key":"e_1_2_1_37_1","volume-title":"NDSS: DNS Privacy Workshop","author":"Wang L.","year":"2021","unstructured":"L. Wang , H. Kim , P. Mittal , and J. Rexford . Programmable in-network obfuscation of DNS traffic . In NDSS: DNS Privacy Workshop , 2021 . L. Wang, H. Kim, P. Mittal, and J. Rexford. Programmable in-network obfuscation of DNS traffic. In NDSS: DNS Privacy Workshop, 2021."},{"key":"e_1_2_1_38_1","volume-title":"http:\/\/github.com\/Pktgen\/Pktgen-DPDK\/","author":"Wiles K.","year":"2020","unstructured":"K. Wiles . Pktgen-dpdk. http:\/\/github.com\/Pktgen\/Pktgen-DPDK\/ , 2020 . K. Wiles. Pktgen-dpdk. http:\/\/github.com\/Pktgen\/Pktgen-DPDK\/, 2020."},{"key":"e_1_2_1_39_1","volume-title":"https:\/\/www.xilinx.com\/products\/intellectual-property\/1-pcz517.html","year":"2020","unstructured":"Xilinx Netcope P4. https:\/\/www.xilinx.com\/products\/intellectual-property\/1-pcz517.html , 2020 . Xilinx Netcope P4. https:\/\/www.xilinx.com\/products\/intellectual-property\/1-pcz517.html, 2020."},{"key":"e_1_2_1_40_1","volume-title":"http:\/\/lcamtuf.coredump.cx\/p0f3\/","author":"Zalewski M.","year":"2014","unstructured":"M. Zalewski . p0f v3 (version 3.09b). http:\/\/lcamtuf.coredump.cx\/p0f3\/ , 2014 . M. Zalewski. p0f v3 (version 3.09b). http:\/\/lcamtuf.coredump.cx\/p0f3\/, 2014."},{"key":"e_1_2_1_41_1","doi-asserted-by":"publisher","DOI":"10.1109\/E2EMON.2007.375317"},{"key":"e_1_2_1_42_1","doi-asserted-by":"publisher","DOI":"10.1145\/3281411.3281436"}],"container-title":["ACM SIGCOMM Computer Communication Review"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3457175.3457178","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3457175.3457178","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,17]],"date-time":"2025-06-17T20:17:19Z","timestamp":1750191439000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3457175.3457178"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2021,1,31]]},"references-count":42,"journal-issue":{"issue":"1","published-print":{"date-parts":[[2021,1,31]]}},"alternative-id":["10.1145\/3457175.3457178"],"URL":"https:\/\/doi.org\/10.1145\/3457175.3457178","relation":{},"ISSN":["0146-4833"],"issn-type":[{"value":"0146-4833","type":"print"}],"subject":[],"published":{"date-parts":[[2021,1,31]]},"assertion":[{"value":"2021-03-12","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}