Released Software

We release the following software systems for academic purposes, under the GNU/GPL license. For the latest released software, please refer to the Publications page.

  1. DeltaINT: Toward General In-band Network Telemetry with Extremely Low Bandwidth Overhead (ICNP 2021)
    A bandwidth-efficient in-band network telemetry prototype that supports general network management applications.

  2. StreamLEC: Enabling Low-Redundancy Proactive Fault Tolerance for Stream Machine Learning via Erasure Coding (SRDS 2021)
    A distributed stream processing prototype that provides fault tolerance for stream machine learning via erasure coding.

  3. AIHS: Automated Intelligent Healing in Cloud-Scale Data Centers (SRDS 2021)
    A simulator for automated intelligent healing management.

  4. SGXDedup: Accelerating Encrypted Deduplication via SGX (USENIX ATC 2021)
    An encrypted deduplication storage prototype that achieves high performance with Intel SGX.

  5. DiffKV: Differentiated Key-Value Storage Management for Balanced I/O Performance (USENIX ATC 2021)
    An LSM-tree key-value store prototype that realizes differentiated key-value storage management.

  6. RepairBoost: Boosting Full-Node Repair in Erasure-Coded Storage (USENIX ATC 2021)
    A prototype for improving the full-node repair performance in erasure-coded storage.

  7. StripeMerge: Efficient Wide-Stripe Generation for Large-Scale Erasure-Coded Storage (ICDCS 2021)
    A prototype that realizes efficient wide-stripe generation for large-scale erasure-coded storage.

  8. RackCU: Optimal Rack-Coordinated Updates in Erasure-Coded Data Centers (INFOCOM 2021)
    A prototype for optimal rack-coordinated updates in erasure-coded data centers.

  9. ECWide: Exploiting Combined Locality for Wide-Stripe Erasure Coding in Distributed Storage (FAST 2021)
    A prototype that realizes combined locality for wide-stripe erasure coding.

  10. StreamDFP: Toward Adaptive Disk Failure Prediction via Stream Mining (ICDCS 2020)
    A stream-based data mining prototype for disk failure prediction.

  11. Enabling I/O-Efficient Redundancy Transitioning in Erasure-Coded KV Stores via Elastic Reed-Solomon Codes. (SRDS 2020)
    An implementation of Elastic Reed-Solomon codes on Memcached for I/O-efficient redundancy transitioning.

  12. OmniMon: Re-architecting Network Telemetry with Resource Efficiency and Full Accuracy. (SIGCOMM 2020)
    A new network telemetry architecture that aims for both resource efficiency and full accuracy.

  13. AustereCache: Austere Flash Caching with Deduplication and Compression (USENIX ATC 2020)
    A flash caching prototype with deduplication and compression.

  14. On the Optimal Repair-Scaling Trade-off in Locally Repairable Codes (INFOCOM 2020)
    A storage prototype that realizes repair and scaling operations in locally repairable codes.

  15. SpreadSketch: Toward Invertible and Network-Wide Detection of Superspreaders (INFOCOM 2020)
    A new invertible sketch design for superspreader detection. Both software and P4 implementations are included.

  16. TEDStore: Balancing Storage Efficiency and Data Confidentiality with Tunable Encrypted Deduplication (EuroSys 2020)
    A tunable encrypted deduplication storage prototype.

  17. UniKV: Toward High-Performance and Scalable KV Storage in Mixed Workloads via Unified Indexing (ICDE 2020)
    A high-performance key-value store based on LevelDB for mixed workloads.

  18. ECHash: Coupling Decentralized Key-Value Stores with Erasure Coding (SOCC 2019)
    An erasure-coded key-value store based on Memcached for efficient scaling.

  19. FastPR: Fast Predictive Repair in Erasure-Coded Storage (DSN 2019)
    A fast predictive repair prototype for erasure-coded storage on HDFS 3.1.1.

  20. POCache: Parity-Only Caching for Robust Straggler Tolerance (MSST 2019)
    A parity-only caching prototype built on HDFS.

  21. Metadedup: Deduplicating Metadata in Encrypted Deduplication via Indirection (MSST 2019)
    An encrypted deduplication prototype that realizes metadata deduplication.

  22. MV-Sketch: A Fast and Compact Invertible Sketch for Heavy Flow Detection in Network Data Streams (INFOCOM 2019)
    A new invertible sketch design with static memory allocation.

  23. OpenEC: Toward Unified and Configurable Erasure Coding Management in Distributed Storage Systems (FAST 2019)
    A new framework for unified and configurable erasure coding management.

  24. SketchLearn: Relieving User Burdens in Approximate Measurement with Automated Statistical Inference (SIGCOMM 2018)
    A prototype that realizes sketch-based measurement with automated statistical inference. Released in August 2018.
    (Awarded with badges)

  25. CAU: Cross-rack-aware Updates for Erasure-Coded Data Centers (ICPP 2018)
    A prototype that realizes cross-rack-aware updates for erasure-coded data centers. Released in August 2018.

  26. HashKV: A High-performance KV Store for Update-intensive Workloads (USENIX ATC 2018)
    A high-performance KV store for update-intensive workloads based on hash-based data grouping. Released in July 2018.

  27. CellPAD: Detecting Performance Anomalies in Cellular Networks via Regression Analysis (Networking 2018)
    A KPI anomaly detection tool for cellular network management. Released in April 2018.

  28. DoubleR: Optimal Repair Layering for Erasure-Coded Data Centers (TOS 2017)
    An optimal repair layering framework on erasure-coded HDFS that minimizes cross-rack repair traffic. Released in October 2017.

  29. SimEDC: Simulation Analysis of Reliability in Erasure-Coded Data Centers (SRDS 2017)
    A simulator that evaluates the storage reliability of erasure-coded data centers via discrete-event simulations. Released in September 2017.

  30. ECPipe: Repair Pipelining for Erasure-Coded Storage (USENIX ATC 2017, TOS 2021)
    A prototype that achieves fast repair for general erasure-coded storage. Release in July 2017.

  31. Information Leakage in Encrypted Deduplication via Frequency Analysis (DSN 2017)
    Attack and defense toolkits against a deduplication-based storage dataset via frequency analysis. Release in June 2017.

  32. MemEC: An Erasure-coding-based Distributed In-Memory KV store (SYSTOR 2017)
    An erasure-coding-based distributed in-memory KV store optimized for small KV objects. Release in May 2017.

  33. AF-Stream: A High-Performance Distributed Stream Processing System based on Approximate Fault Tolerance (PVLDB 2016)
    A High-Performance Distributed Stream Processing System based on Approximate Fault Tolerance. Release in November 2016.

  34. REED: Rekeying for Encrypted Deduplication Storage (DSN 2016)
    A rekeying-aware encrypted deduplication storage system. Released in June 2016.

  35. EPLog: Elastic Parity Logging for SSD RAID Arrays (DSN 2016)
    A user-level software layer that achieves high reliability, endurance, and performance for SSD RAID. Released in June 2016.

  36. CDStore: Toward Reliable, Secure, and Cost-Efficient Cloud Storage via Convergent Dispersal (USENIX ATC 2015)
    A multi-cloud storage system that unifies reliability (fault tolerance), security, and deduplication. Released in May 2015.

  37. Encoding-Aware Replication in Clustered File Systems (DSN 2015)
    A new replication scheme for clustered file systems. Both the simulator and Hadoop implementations are available. Released in May 2015.

  38. EDP: Even Data Placement in Distributed Reliable Deduplication Storage Systems (IWQoS 2015)
    A distributed reliable deduplication system prototype that realizes even data placement. Released in May 2015.

  39. FastDR: Boosting Degraded Reads in Heterogeneous Erasure-Coded Storage Systems (TC)
    A fast degraded-read system for erasure-coded HDFS (based on HDFS-RAID). Released in October 2014.

  40. Degraded-First Scheduling: An Efficient MapReduce Task Scheduler for erasure-coded HDFS (DSN 2014)
    An efficient MapReduce task scheduler that enables efficient MapReduce execution on erasure-coded HDFS under failure mode. Released in April 2014.

  41. CodFS: An Erasure-Coded Clustered Storage System for Efficient Updates and Recovery (FAST 2014)
    An erasure-coded clustered storage system prototype that supports efficient recovery and updates through an idea called parity logging with reserved space. Released in January 2014.

  42. STAIR Codes: A General Family of Erasure Codes for Tolerating Device and Sector Failures (FAST 2014)
    A C library of STAIR codes, which provide general construction of erasure codes for simultanesouly tolerating device failures and sector errors in a space-efficient manner. Released in January 2014.

  43. RevDedup: Efficient Hybrid Inline and Out-of-line Deduplication for Backup Storage (APSYS 2013, TOS 2014)
    A prototype that achieves high read throughput for latest backups in deduplication storage, while maintaining high write throughput and high deduplication efficiency. Released in July 2013.

  44. CORE: Regenerating-coding-based recovery for single and concurrent failures (MSST 2013)
    A prototype for enabling regenerating-coding-based recovery for single and concurrent failures. It builds on HDFS-RAID. Released in April 2013.

  45. Cloud-to-Device-Messaging (C2DM) Botnet (ACSAC 2012)
    The C2DM botnet is a proof-of-concept botnet prototype that exploits Google's Cloud to Device Messaging (C2DM) service as its C&C channel. Released in September 2012.

  46. FMSR-DIP: Functional Minimum Storage Regenerating Code with Data Integrity Protection (SRDS 2012, TPDS 2014)
    A prototype for enabling data integrity protection in regenerating-coded cloud storage. Released in July 2012.

  47. ADAM: An Automatic and Extensible Platform to Stress Test Android Anti-Virus Systems (DIMVA 2012)
    Implementation of assessing the robustness of Android Anti-Virus Systems by generating various types of malware variants. Released in April 2012.

  48. CHR: A C Library for Cost-Based Heterogeneous Recovery for RAID-6 codes (DSN 2012)
    A C library API for fast and effective cost-based heterogeneous recovery for RDP and EVENODD codes. Released in April 2012.

  49. Zpacr: A C Library in Searching for the Optimal Single-Disk Failure Recovery Solution for XOR-based Erasure Codes (MSST 2012)
    A C library API for single-disk failure recovery in XOR-Coded storage systems. Released in March 2012.

  50. NCCloud: Network-Coding-Based File System for Cloud Storage (FAST 2012, INFOCOM 2013, TC 2014)
    A cloud storage system that realizes minimum-storage regenerating codes for multiple-cloud storage. Released in January 2012.

  51. CloudVS: A Cloud-based Version Control System (NOMS 2012)
    A virtual machine version control system for Eucalyptus-based open-source cloud platforms. Released in January 2012.

  52. LiveDFS: Live Deduplication File System (Middleware 2011)
    A Linux kernel-space file system that supports live deduplication. One application is for the virtual machine image storage. Released in August 2011.

  53. DeRef: A Privacy-Perserving Mechanism Against Request Forgery Attacks (TrustCom 2011)
    Implementation of a web-based mechanism against request forgery. Released in October 2011.

  54. NCFS: Network-Coding-Based Distributed File System (NetCod 2011)
    An extensible platform for realizing theories of network coding in practical distributed storage systems. Researchers can extend NCFS to experiment new storage schemes based on erasure codes and regenerating codes. Released in May 2011.

  55. LVRM: Load-aware Virtual Router Monitor (ICPP Workshop 2011)
    Implementation of a user-space, load-aware virtual router monitor. Released in February 2011.

  56. FADE: Secure Overlay Cloud Storage with File Assured Deletion (SecureComm 2010, TDSC 2012)
    Implementation of a secure overlay cloud storage system that supports file assured deletion. Released in September 2010.

  57. Stable Opportunistic Routing (SOR) (COMSNETS 2010)
    Nsclick implementation of Stable Opportunistic Routing. Released in February 2010.

  58. SEcure communicAtion Library (SEAL) (JSS 2007)
    C language API which provides necessary software components for developers to write secure dynamic group-oriented applications without any centralized key server. Released in 2003.