https://github.com/unifyair/unifyair-core
5G Network Functions Implementation in Rust
https://github.com/unifyair/unifyair-core
3gpp 3gpp-r17 5g rust sctp tokio-rs
Last synced: 3 months ago
JSON representation
5G Network Functions Implementation in Rust
- Host: GitHub
- URL: https://github.com/unifyair/unifyair-core
- Owner: UnifyAir
- Created: 2025-04-08T04:44:12.000Z (6 months ago)
- Default Branch: master
- Last Pushed: 2025-04-12T13:39:15.000Z (6 months ago)
- Last Synced: 2025-04-12T21:53:31.456Z (6 months ago)
- Topics: 3gpp, 3gpp-r17, 5g, rust, sctp, tokio-rs
- Language: Rust
- Homepage: https://unifyair.io
- Size: 1.21 MB
- Stars: 5
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
Awesome Lists containing this project
README
# ๐ UnifyAir Core - 5G Network Functions
[](https://www.rust-lang.org)
[](LICENSE)
[](https://discord.gg/yuJHdZ4vEF)
[](https://x.com/unifyair)
โก High-performance, 3GPP standards-compliant 5G Core Network Functions implementation in Rust
## ๐ Table of Contents
- [๐ฏ Project Overview](#-project-overview)
- [๐ซ Project Scope](#-project-scope)
- [๐๏ธ Project Structure](#๏ธ-project-structure)
- [๐ Getting Started](#-getting-started)
- [โ๏ธ Configuration](#-configuration)
- [๐งช Testing](#-testing)
- [๐ค Contributing](#-contributing)
- [๐ Community](#-community)## ๐ฏ Project Overview
UnifyAir Core implements the following Network Functions (NFs):
### โจ Implemented Network Functions
* **๐ก๏ธ Omnipath (AMF - Access and Mobility Management Function)**
* Handles mobility management
* User authentication and authorization
* Access control and security procedures
* UE registration and connection management### ๐ Planned Nf Support
* **๐ DataWarp (UPF - User Plane Function)**
* Packet routing and forwarding
* QoS handling for user plane traffic
* Traffic measurement and reporting
* Packet inspection and policy enforcement* **๐ InfiniSync (SMF - Session Management Function)**
* Session establishment, modification, and release
* IP address allocation and management
* Traffic steering control
* QoS policy implementation## ๐ซ Project Scope
### Current Features
- โก Async-first architecture using Tokio runtime
- ๐ High-performance network packet processing
- ๐ Standards-compliant 5G NF implementations
- ๐งฉ Modular design for easy extension and modification
- ๐ Comprehensive logging and monitoring
- ๐ REST APIs for configuration and management### Planned Features
- ๐ Enhanced security features and encryption
- ๐ Additional Network Function implementations
- โก Performance optimization and scaling improvements
- ๐ Extended monitoring and analytics
- โ๏ธ Cloud-native deployment support## ๐๏ธ Project Structure
```
unifyair-core/
โโโ lightning-nf/ # Network Functions implementations
โ โโโ omnipath/ # AMF (Access and Mobility Management Function)
โโโ lightning-cli/ # Command-line interface tools
โโโ utils/ # Shared utilities and common code
โโโ config/ # Configuration files
โ โโโ amfcfg.yaml # AMF configuration
โ โโโ smfcfg.yaml # SMF configuration
โ โโโ upfcfg.yaml # UPF configuration
โโโ Cargo.toml # Rust package manifest
โโโ rust-toolchain.toml # Rust toolchain configuration
โโโ run.sh # Utility script for running the project
```## ๐ Getting Started
### Prerequisites
- Rust 1.82 or above nightly
- Cargo package manager### Local Development Setup
1. Clone the repository:
```bash
git clone https://github.com/unifyair/unifyair-core.git
cd unifyair-core
```2. Install dependencies:
```bash
cargo build
```3. For detailed setup instructions, refer to [SETUP.md](SETUP.md)
## โ๏ธ Configuration
Configuration is managed through:
- Environment variables
- Configuration files in `config/`
- Command line arguments## ๐งช Testing
Run the test suite:
```bash
cargo test
```## ๐ค Contributing
We welcome contributions! Please see our [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines.
### Development Process
1. Fork the repository
2. Create a feature branch
3. Commit your changes
4. Push to your fork
5. Submit a Pull Request## ๐ Community
- ๐ [Project Website](https://unifyair.io)
- ๐ [Issue Tracker](https://github.com/UnifyAir/unifyair-core/issues)
- ๐ฌ [Discord Community](https://discord.gg/yuJHdZ4vEF)
- ๐ฆ [Twitter](https://x.com/unifyair)