Released Software

We release the following software systems for academic purposes, under the GNU/GPL license.

  1. 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.

  2. 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.

  3. 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.

  4. 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.

  5. 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.

  6. 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.

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

  8. 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.

  9. 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.

  10. 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.

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

  12. 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.

  13. 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.

  14. 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.

  15. 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.

  16. 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.

  17. 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.

  18. 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.

  19. 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.

  20. 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.

  21. 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.

  22. 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.

  23. 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.

  24. ADAM: An 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.

  25. 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.

  26. 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.

  27. 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.

  28. 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.

  29. 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.

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

  31. 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.

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

  33. 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.

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

  35. 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.