Skip to content

Commit

Permalink
add: comparison matrix (#1)
Browse files Browse the repository at this point in the history
Along with some preliminary texts.

Signed-off-by: Gaukas Wang <[email protected]>
  • Loading branch information
gaukas authored Feb 29, 2024
1 parent c3c4b52 commit c130bde
Show file tree
Hide file tree
Showing 4 changed files with 63 additions and 19 deletions.
28 changes: 28 additions & 0 deletions _config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,3 +33,31 @@ plugins:
exclude:
- LICENSE
- README.md

aux_links:
Refraction Networking: "https://refraction.network/"
FOCI 2024 Paper: "https://www.petsymposium.org/foci/2024/foci-2024-0003.php"

# External navigation links
nav_external_links:
- title: refraction-networking/water
url: https://github.com/refraction-networking/water
- title: refraction-networking/water-rs
url: https://github.com/refraction-networking/water-rs

callouts_level: quiet # or loud
callouts:
highlight:
color: yellow
important:
title: Important
color: blue
new:
title: New
color: green
note:
title: Note
color: purple
warning:
title: Warning
color: red
18 changes: 0 additions & 18 deletions about.md

This file was deleted.

28 changes: 28 additions & 0 deletions comparison.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
---
layout: page
title: Comparisons
permalink: /comparisons.html
---

# Comparisons

## WATER vs. other pluggable transport designs

We evaluate WATER against other pluggable transport designs in terms of the following features:
- **Hot-swappable**: Can the transport be loaded and unloaded without recompling the host application?
- **Host Isolation**: Does the transport execute in an isolated environment (e.g., a sandbox) and with limited access to the host resources?
- **Compatibility Guarantee**: Can the host application be transport-agnostic and still work with any transport that implements the interface?
- **Cross-language Deployment**: Can the transport be implemented in a different programming language than the host application?


| Feature | PTs | Marionette | Proteus | WATER |
|----------------|------|------------|---------|-------|
| Hot-swappable |||||
| Host Isolation || ⚠️ |||
| Compatibility Guarantee || ⚠️ |||
| Cross-language Deployment |||||

### References
- PTs ([pluggabletransports.info](https://www.pluggabletransports.info/))
- Marionette: A Programmable Network Traffic Obfuscation System ([USENIX Security'15](https://www.usenix.org/conference/usenixsecurity15/technical-sessions/presentation/dyer))
- Proteus: Programmable Protocols for Censorship Circumvention ([FOCI 2023](https://www.petsymposium.org/foci/2023/foci-2023-0013.php))
8 changes: 7 additions & 1 deletion index.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,10 @@ layout: home

# WATER: WebAssembly Transport Executables Runtime

Documentation under construction. Please check back later.
This site hosts the online documentation for Project WATER: [refraction-networking/water](https://github.com/refraction-networking/water) and [refraction-networking/water-rs](https://github.com/refraction-networking/water-rs).

## WATER

WATER stands for WebAssembly Transport Executables Runtime, a novel approach to building pluggable network transports using WebAssembly. Comparing to other designs, WATER in general provides better flexibility and security, more consistent development and deployment experience, and better performance.

A matrix comparing WATER with other pluggable transport designs is available [here](comparisons.html#water-vs-other-pluggable-transport-designs).

0 comments on commit c130bde

Please sign in to comment.