8000 GitHub - jnfoster/netkat: Domain specific language (DSL) and system for specifying, programming, and reasoning about packet-switched networks
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content
forked from google/netkat

Domain specific language (DSL) and system for specifying, programming, and reasoning about packet-switched networks

License

Notifications You must be signed in to change notification settings

jnfoster/netkat

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NetKAT

This is a C++ implementation of NetKAT.

NetKAT is a domain specific language (DSL) and system for specifying, programming, and reasoning about packet-switched networks. Key features include:

  • Automated reasoning and verification.
  • Modular composition, supporting clean isolation and abstraction.
  • Simple, yet very powerful syntax & semantics.
  • Strong mathematical foundation.

If you want to learn more, you may check out the list of publications on NetKAT below. In the future, we also hope to provide a gentler introduction to NetKAT in the form of a tutorial.

Note: We expect that this NetKAT implementation may diverge from NeKAT as described in the literature over time, as we take liberty to optimize and adjust the language for industrial use.

Disclaimer

This is not an officially supported Google product. This project is not eligible for the Google Open Source Software Vulnerability Rewards Program.

Academic Publications on NetKAT

NetKAT was first conceived and studied in academia. Here, we list a small selection of key publications related to NetKAT.

  • NetKAT: Semantic Foundations for Networks. POPL 2014. [PDF]
  • A Fast Compiler for NetKAT. ICFP 2015. [PDF]
  • KATch: A Fast Symbolic Verifier for NetKAT. PLDI 2024. [PDF]

Contributing

We would love to accept your patches and contributions to this project. Please familiarize yourself with our contribution process.

Source Code Headers

Every file containing source code must include copyright and license information.

Apache header:

Copyright 2024 Google LLC

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    https://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

This can be done automatically using addlicense as follows:

addlicense -c "The P4-Constraints Authors" -l apache ./p4_constraints

About

Domain specific language (DSL) and system for specifying, programming, and reasoning about packet-switched networks

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Starlark 100.0%
0