appnet-org / compiler

AppNet Compiler
https://appnet.wiki/
Apache License 2.0
7 stars 2 forks source link
compiler envoy

AppNet Compiler

Overview

This compiler is designed for translating AppNet specifications into optimized, deployable data plane programs. For more information, refer to our HotNets paper and the talk.

Usage

See compiler README for usage.

Supported Backends

Repo Structure

Repo Root
|---- examples   
  |---- graph          # Example Graph Specifications
  |---- element        # Example Element Specifications
|---- compiler         # Compiler source code
  |---- docs           # Miscellaneous docs
  |---- element        # Source code for the element compiler
    |---- backend      # Source code for backend (code generation)
    |---- frontend     # Source code for frontend (parse tree and IR generation)
    |---- optimize     # Source code for various IR optimizations
    |---- props        # Source code for property analyzer
  |---- graph          # Source code for the graph compiler

Reference

Please consider citing our paper if you find AppNet related to your research.

@inproceedings{applicationdefinednetworks,
  title={Application Defined Networks},
  author={Zhu, Xiangfeng and Deng, Weixin and Liu, Banruo and Chen, Jingrong and Wu, Yongji and Anderson, Thomas and Krishnamurthy, Arvind and Mahajan, Ratul and Zhuo, Danyang},
  booktitle={Proceedings of the 22nd ACM Workshop on Hot Topics in Networks},
  pages={87--94},
  year={2023}
}

Contact

If you have any questions or comments, please get in touch with Xiangfeng Zhu (xfzhu@cs.washington.edu).