Ouroboros Implementation Overview: Difference between revisions
No edit summary |
|||
Line 1: | Line 1: | ||
{{under construction}} | {{under construction}} | ||
= Library = | |||
The ouroboros library | The ouroboros library | ||
== Application end-to-end IPC functions == | |||
These are the functions that are typically called by an application programmer to interact with the network. | These are the functions that are typically called by an application programmer to interact with the network. | ||
=== Application flow allocation API === | |||
=== Application flow management API === | |||
=== Synchronous IPC API === | |||
=== Asynchronous IPC API === | |||
== Application end-to-end background tasks == | |||
These functions are background tasks that are not directly visible to the application programmer. | These functions are background tasks that are not directly visible to the application programmer. | ||
=== FRCT === | |||
[[FRCT]], implements [[FRCP]] | [[FRCT]], implements [[FRCP]] | ||
=== Encryption === | |||
=== Authentication === | |||
Not yet implemented. | Not yet implemented. | ||
=== Integrity === | |||
CRC | CRC | ||
=== Stream-based IPC === | |||
= IRMd = | |||
= IPCPs = | |||
== Enrollment == | |||
== Directory == | |||
== Flow allocator == | |||
[[Ouroboros Flow Allocation Protocol]] | [[Ouroboros Flow Allocation Protocol]] | ||
== Packet Transfer == | |||
[[ODTP]] | [[ODTP]] | ||
= Tools = | |||
== irm == | |||
Main page: [[Ouroboros Command Line Interface]] | Main page: [[Ouroboros Command Line Interface]] | ||
== oecho == | |||
== oping == | |||
== operf == | |||
== ocbr == | |||
== ovpn == | |||
= | = Programming language support = | ||
The prototype itself is written in C for performance, but bindings for other languages are available or planned | The prototype itself is written in C for performance, but bindings for other languages are available or planned | ||
== Golang == | |||
Planned | Planned | ||
== Python 3 == | |||
[[pyOuroboros]] | [[pyOuroboros]] | ||
== Rust == | |||
A [https://github.com/chritchens/ouroboros-rs rust interface] is available on GitHub. | A [https://github.com/chritchens/ouroboros-rs rust interface] is available on GitHub. | ||
= Other tools = | |||
== Rumba orchestration framework == | |||
Main page: [[Rumba]] | Main page: [[Rumba]] | ||
== Ouroboros metrics == | |||
Main page: [[Ouroboros Metrics]] | Main page: [[Ouroboros Metrics]] | ||
= Ports = | |||
== netcat == | |||
== ioq3 == | |||
= Roadmap = | |||
The Ouroboros prototype is [[Prototype version history | far from complete]]. In order to come to some usable ''production'' version (Version 1.0), a lot more implementation is needed. | The Ouroboros prototype is [[Prototype version history | far from complete]]. In order to come to some usable ''production'' version (Version 1.0), a lot more implementation is needed. | ||
= License = | |||
The Ouroboros Library is Licensed under LGPL2.1. The IRMd and IPCPs are Licensed under GPL2.1. | The Ouroboros Library is Licensed under LGPL2.1. The IRMd and IPCPs are Licensed under GPL2.1. Tools are licensed under 3-clause BSD. |
Revision as of 13:23, 8 November 2023
This page is under construction
Library
The ouroboros library
Application end-to-end IPC functions
These are the functions that are typically called by an application programmer to interact with the network.
Application flow allocation API
Application flow management API
Synchronous IPC API
Asynchronous IPC API
Application end-to-end background tasks
These functions are background tasks that are not directly visible to the application programmer.
FRCT
Encryption
Authentication
Not yet implemented.
Integrity
CRC
Stream-based IPC
IRMd
IPCPs
Enrollment
Directory
Flow allocator
Ouroboros Flow Allocation Protocol
Packet Transfer
Tools
irm
Main page: Ouroboros Command Line Interface
oecho
oping
operf
ocbr
ovpn
Programming language support
The prototype itself is written in C for performance, but bindings for other languages are available or planned
Golang
Planned
Python 3
Rust
A rust interface is available on GitHub.
Other tools
Rumba orchestration framework
Main page: Rumba
Ouroboros metrics
Main page: Ouroboros Metrics
Ports
netcat
ioq3
Roadmap
The Ouroboros prototype is far from complete. In order to come to some usable production version (Version 1.0), a lot more implementation is needed.
License
The Ouroboros Library is Licensed under LGPL2.1. The IRMd and IPCPs are Licensed under GPL2.1. Tools are licensed under 3-clause BSD.