https://github.com/ystero-dev/ellora
Rust SCTP toolkit
https://github.com/ystero-dev/ellora
Last synced: about 1 month ago
JSON representation
Rust SCTP toolkit
- Host: GitHub
- URL: https://github.com/ystero-dev/ellora
- Owner: ystero-dev
- License: other
- Created: 2022-10-18T06:21:47.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2023-11-08T04:52:01.000Z (over 1 year ago)
- Last Synced: 2025-03-29T15:17:28.508Z (about 1 month ago)
- Language: Rust
- Size: 139 KB
- Stars: 14
- Watchers: 4
- Forks: 7
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Authors: AUTHORS.md
Awesome Lists containing this project
- awesome-telco - ellora - Rust SCTP Toolkit. The Goal of this project is to make safe bindings for Linux SCTP stack that can be used within Rust's `async` ecosystem. (Protocols / SCTP)
README
# Introduction
The goal of the project is to be a toolkit for Stream Control Transport Protocol (`SCTP`) implemented in Rust. Eventually, it should be possible to have `SCTP` supported as well as other transport protocols like `TCP`, `UDP` in the Rust's `async` ecosystem.
Currently following crate is implemented -
* `sctp-rs` - This crate provides ergonomic, safe APIs in Rust. See [README.md](https://github.com/gabhijit/ellora/blob/main/sctp-rs/README.md) for more details.# Motivation
Why this project exists? There are a few crates that support `SCTP` but are either not maintained or do not support Rust's `async` or do not have a well documented APIs (just as wrappers over C library). One major exception being the SCTP support in [webrtc-rs](https://github.com/webrtc-rs/webrtc/tree/master/sctp). However this particular implementation is in active development and using it outside the project is a challenging task (as of now). Further, the support in Linux SCTP stack is matured and for other non WebRTC use cases of `SCTP`, mainly in signaling protocols in the telecom world (3GPP protocols like `S1AP`, `NGAP` use `SCTP` as a transport.), a suitable implementation is useful if not required.
# License
Licensed under either of
* Apache License, Version 2.0 ([LICENSE-Apache](https://github.com/gabhijit/ellora/blob/main/LICENSE-Apache2) or [http://www.apache.org/licenses/LICENSE-2.0](http://www.apache.org/licenses/LICENSE-2.0))
* MIT License ([LICENSE-MIT](https://github.com/gabhijit/ellora/blob/main/LICENSE-MIT) or [http://opensource.org/licenses/MIT](http://opensource.org/licenses/MIT))