ABSTRACT
Network appliances continue to offer novel opportunities to offload processing from computing nodes directly into the data plane. One popular concern of network operators and their customers is to move data increasingly faster. A common technique to increase data throughput is to compress it before its transmission. However, this requires compression of the data---a time and energy demanding preprocessing phase---and decompression upon reception---a similarly resource consuming operation. Moreover, if multiple nodes transfer similar data chunks across the network hop (e.g., a given pair of switches), each node effectively wastes resources by executing similar steps. This paper proposes ZipLine, an approach to design and implement (de)compression at line speed leveraging the Tofino hardware platform which is programmable using the P416 language. We report on lessons learned while building the system and show throughput, latency and compression measurements on synthetic and real-world traces, showcasing the benefits and trade-offs of our design.
Supplemental Material
- 2020. Aruba Compression on SD-WAN. https://www.arubanetworks.com/assets/ds/DS_SD-WAN.pdfGoogle Scholar
- 2020. Brocade 6520. https://www.dataswitchworks.com/datasheets/switches/6520-switch-ds.pdfGoogle Scholar
- 2020. XipLink. http://www.xiplink.com/media/XipLink-XA-Appliances-Overview.pdfGoogle Scholar
- Barefoot Networks. 2020. Tofino product brief page. https://barefootnetworks.com/products/brief-tofino/Google Scholar
- Barefoot Networks and P4.org Applications Working Group. 2018. Barefoot Deep Insight Monitoring System Enabled by DataPlane Telemetry. https://p4.org/assets/P4WS_2018/9_Daniel_Alvarez_DI.pdfGoogle Scholar
- Theophilus A. Benson. 2019. In-Network Compute: Considered Armed and Dangerous. In Proceedings of the Workshop on Hot Topics in Operating Systems (Bertinoro, Italy) (HotOS '19). 216--224. Google ScholarDigital Library
- P. Benácek, V. Pu, and H. Kubátová. 2016. P4-to-VHDL: Automatic Generation of 100 Gbps Packet Parsers. In 2016 IEEE 24th Annual International Symposium on Field-Programmable Custom Computing Machines (FCCM). 148--155. Google ScholarCross Ref
- Richard E. Blahut. 2003. Algebraic Codes for Data Transmission. Cambridge University Press. Google ScholarCross Ref
- Pat Bosshart, Dan Daly, Glen Gibb, Martin Izzard, Nick McKeown, Jennifer Rexford, Cole Schlesinger, Dan Talayco, Amin Vahdat, George Varghese, et al. 2014. P4: Programming protocol-independent packet processors. ACM SIGCOMM Computer Communication Review 44, 3 (2014), 87--95.Google ScholarDigital Library
- Xiaoqi Chen. 2020. Implementing AES Encryption on Programmable Switches via Scrambled Lookup Tables. In ACM SIGCOMM 2020 Workshop on Secure Programmable Network Infrastructure (Virtual Event) (SPIN '20). Association for Computing Machinery, New York, NY, USA. Google ScholarDigital Library
- H. T. Dang, P. Bressana, H. Wang, K. S. Lee, N. Zilberman, H. Weatherspoon, M. Canini, F. Pedone, and R. Soulé. 2020. P4xos: Consensus as a Network Service. IEEE/ACM Transactions on Networking (2020), 1--13. Google ScholarDigital Library
- L. Peter Deutsch. 1996. DEFLATE Compressed Data Format Specification version 1.3. RFC 1951. Google ScholarDigital Library
- Edgecore networks. 2019. Wedge100BF-32X/65X Switch. https://www.edgecore.com/_upload/images/Wedge100BF-32X_65X_DS_R05_20191210.pdfGoogle Scholar
- Lucas Freire, Miguel Neves, Lucas Leal, Kirill Levchenko, Alberto Schaeffer-Filho, and Marinho Barcellos. 2018. Uncovering Bugs in P4 Programs with Assertion-Based Verification. In Proceedings of the Symposium on SDN Research (Los Angeles, CA, USA) (SOSR '18). Article 4, 7 pages. Google ScholarDigital Library
- Christian Göttel, Lars Nielsen, Niloofar Yazdani, Pascal Felber, Daniel E. Lucani, and Valerio Schiavoni. 2020. Hermes: Enabling Energy-Efficient IoT Networks with Generalized Deduplication. In Proceedings of the 14th ACM International Conference on Distributed and Event-Based Systems (Montreal, Quebec, Canada) (DEBS '20). Association for Computing Machinery, New York, NY, USA, 133--136. Google ScholarDigital Library
- David Hancock and Jacobus van der Merwe. 2016. HyPer4: Using P4 to Virtualize the Programmable Data Plane. In Proceedings of the 12th International on Conference on Emerging Networking EXperiments and Technologies (Irvine, California, USA) (CoNEXT '16). Association for Computing Machinery, New York, NY, USA, 35--49. Google ScholarDigital Library
- Theo Jepsen, Masoud Moshref, Antonio Carzaniga, Nate Foster, and Robert Soulé. 2018. Life in the Fast Lane: A Line-Rate Linear Road. In Proceedings of the Symposium on SDN Research (Los Angeles, CA, USA) (SOSR '18). Article 10, 7 pages. Google ScholarDigital Library
- Alberto Lerner, Rana Hussein, and Philippe Cudré-Mauroux. 2019. The Case for Network Accelerated Query Processing. In 9th Biennial Conference on Innovative Data Systems Research (CIDR'19).Google Scholar
- Craig Mustard, Fabian Ruffy, Anny Gakhokidze, Ivan Beschastnikh, and Alexandra Fedorova. 2019. Jumpgate: In-Network Processing as a Service for Data Analytics. In 11th USENIX Workshop on Hot Topics in Cloud Computing (HotCloud 19). USENIX Association, Renton, WA.Google Scholar
- Miguel Neves, Lucas Freire, Alberto Schaeffer-Filho, and Marinho Barcellos. 2018. Verification of P4 Programs in Feasible Time Using Assertions. In Proceedings of the 14th International Conference on Emerging Networking EXperiments and Technologies (Heraklion, Greece) (CoNEXT '18). Association for Computing Machinery, New York, NY, USA, 73--85. Google ScholarDigital Library
- L. Nielsen, R. Vestergaard, N. Yazdani, P. Talasila, D. E. Lucani, and M. Sipos. 2019. Alexandria: A Proof-of-Concept Implementation and Evaluation of Generalised Data Deduplication. In IEEE Globecom Workshops (GC Wkshps). 1--6. Google ScholarCross Ref
- Jithin Thomas Petr Lapukhov. 2016. Using INT to Build a Real-time Network Monitoring System Scale. In P4 Workshop.Google Scholar
- Dan R. K. Ports and Jacob Nelson. 2019. When Should The Network Be The Computer?. In Proceedings of the Workshop on Hot Topics in Operating Systems (Bertinoro, Italy) (HotOS '19). Association for Computing Machinery, New York, NY, USA, 209--215. Google ScholarDigital Library
- Yi Qiao, Xiao Kong, Menghao Zhang, Yu Zhou, Mingwei Xu, and Jun Bi. 2020. Towards In-Network Acceleration of Erasure Coding. In Proceedings of the Symposium on SDN Research (San Jose, CA, USA) (SOSR '20). Association for Computing Machinery, New York, NY, USA, 41--47. Google ScholarDigital Library
- Irving S Reed and Gustave Solomon. 1960. Polynomial codes over certain finite fields. Journal of the society for industrial and applied mathematics 8, 2 (1960), 300--304.Google ScholarCross Ref
- E. Sakic, N. Deric, E. Goshi, and W. Kellerer. 2019. P4BFT: Hardware-Accelerated Byzantine-Resilient Network Control Plane. In 2019 IEEE Global Communications Conference (GLOBECOM). 1--7. Google ScholarDigital Library
- Davide Sanvito, Giuseppe Siracusano, and Roberto Bifulco. 2018. Can the Network Be the AI Accelerator?. In Proceedings of the 2018 Morning Workshop on In-Network Computing (Budapest, Hungary) (NetCompute '18). Association for Computing Machinery, New York, NY, USA, 20--25. Google ScholarDigital Library
- Amedeo Sapio, Ibrahim Abdelaziz, Abdulla Aldilaijan, Marco Canini, and Panos Kalnis. 2017. In-Network Computation is a Dumb Idea Whose Time Has Come. In Proceedings of the 16th ACM Workshop on Hot Topics in Networks (Palo Alto, CA, USA) (HotNets-XVI). Association for Computing Machinery, New York, NY, USA, 150--156. Google ScholarDigital Library
- Muhammad Shahbaz, Sean Choi, Ben Pfaff, Changhoon Kim, Nick Feamster, Nick McKeown, and Jennifer Rexford. 2016. Pisces: A programmable, protocol-independent software switch. In Proceedings of the 2016 ACM SIGCOMM Conference. 525--538.Google ScholarDigital Library
- Apoorv Shukla, Kevin Nico Hudemann, Artur Hecker, and Stefan Schmid. 2019. Runtime Verification of P4 Switches with Reinforcement Learning. In Proceedings of the 2019 Workshop on Network Meets AI & ML (Beijing, China) (NetAI'19). Association for Computing Machinery, New York, NY, USA, 1--7. Google ScholarDigital Library
- Manmeet Singh, Maninder Singh, and Sanmeet Kaur. 2019. 10 Days DNS Network Traffic from April-May, 2016. Google ScholarCross Ref
- P. Talasila and D. E. Lucani. 2019. Generalized Deduplication: Lossless Compression by Clustering Similar Data. In IEEE 8th International Conference on Cloud Networking (CloudNet). 1--4. Google ScholarCross Ref
- Tom Tofigh and Nic Viljoen. 2016. Dynamic Analytics for Programmable NICs Utilizing P4. In P4 Workshop.Google Scholar
- Yuta Tokusashi, Huynh Tu Dang, Fernando Pedone, Robert Soulé, and Noa Zilberman. 2019. The Case For In-Network Computing On Demand. In Proceedings of the Fourteenth EuroSys Conference 2019 (Dresden, Germany) (EuroSys '19). Association for Computing Machinery, New York, NY, USA, Article 21, 16 pages. Google ScholarDigital Library
- R. Vestergaard, D. E. Lucani, and Q. Zhang. 2019. Generalized Deduplication: Lossless Compression for Large Amounts of Small IoT Data. In European Wireless 2019; 25th European Wireless Conference. 1--5.Google Scholar
- R. Vestergaard, Q. Zhang, and D. E. Lucani. 2019. Generalized Deduplication: Bounds, Convergence, and Asymptotic Properties. In IEEE Global Communications Conference (GLOBECOM). 1--6. Google ScholarDigital Library
- R. Vestergaard, Q. Zhang, and D. E. Lucani. 2019. Lossless Compression of Time Series Data with Generalized Deduplication. In IEEE Global Communications Conference (GLOBECOM). 1--6. Google ScholarDigital Library
- Daryle Walker. 2020. Boost.CRC. https://www.boost.org/doc/libs/1_73_0/doc/html/crc.htmlGoogle Scholar
- Shie-Yuan Wang, Jun-Yi Li, and Yi-Bing Lin. 2020. Aggregating and disaggregating packets with various sizes of payload in P4 switches at 100 Gbps line rate. Journal of Network and Computer Applications 165 (2020), 102676. Google ScholarCross Ref
- Shie-Yuan Wang, Chia-Ming Wu, Yi-Bing Lin, and Ching-Chun Huang. 2019. High-speed data-plane packet aggregation and disaggregation by P4 switches. Journal of Network and Computer Applications 142 (2019), 98--110.Google ScholarCross Ref
- Niloofar Yazdani and Daniel E Lucani. 2019. Protocols to Reduce CPS Sensor Traffic using Smart Indexing and Edge Computing Support. In 2019 IEEE Globecom Workshops (GC Wkshps). 1--6. Google ScholarCross Ref
- Niloofar Yazdani and Daniel E Lucani. 2020. Age of Information Analysis for Instantly Decompressible IoT Protocols. In ICC 2020 - 2020 IEEE International Conference on Communications (ICC). 1--6. Google ScholarCross Ref
- Niloofar Yazdani, Lars Nielsen, and Daniel E Lucani. 2020. Memory-aware Online Compression of CAN Bus Data for Future Vehicular Systems. 2020 IEEE Global Communications Conference (GLOBECOM) (2020).Google Scholar
- Yu Zhou, Jun Bi, Yunsenxiao Lin, Yangyang Wang, Dai Zhang, Zhaowei Xi, Jiamin Cao, and Chen Sun. 2019. P4Tester: Efficient Runtime Rule Fault Detection for Programmable Data Planes. In Proceedings of the International Symposium on Quality of Service (Phoenix, Arizona) (IWQoS '19). Association for Computing Machinery, New York, NY, USA, Article 5, 10 pages. Google ScholarDigital Library
Index Terms
- ZipLine: in-network compression at line speed
Recommendations
Precise Time-synchronization in the Data-Plane using Programmable Switching ASICs
SOSR '19: Proceedings of the 2019 ACM Symposium on SDN ResearchCurrent implementations of time synchronization protocols (e.g. PTP) in standard industry-grade switches handle the protocol stack in the slow-path (control-plane). With new use cases of in-network computing using programmable switching ASICs, global ...
FPGA bitstream compression and decompression using LZ and golomb coding (abstract only)
FPGA '13: Proceedings of the ACM/SIGDA international symposium on Field programmable gate arraysIn this paper we propose an optimized bitstream compression algorithm based on LZ and a novel architecture of decompressor, the proposed algorithm improves the Compression Ratio by fully utilizing the regularity of configuration bits of CLB (...
Lossless compression of VLSI layout image data
We present a novel lossless compression algorithm called Context Copy Combinatorial Code (C4), which integrates the advantages of two very disparate compression techniques: context-based modeling and Lempel-Ziv (LZ) style copying. While the algorithm ...
Comments