Skip to content

v1.0.0 - Initial Release

Latest

Choose a tag to compare

@thc1006 thc1006 released this 15 Nov 23:09
· 1 commit to master since this release

๐ŸŽ‰ Initial Release: v1.0.0

Overview

E2 Node Simulator for O-RAN RIC Platform - Production-ready HTTP-based E2 interface traffic generator.


โœจ Features

Multi-xApp Support

  • โœ… KPIMON (port 8081)
  • โœ… Traffic Steering (port 8081)
  • โœ… QoE Predictor (port 8090)
  • โœ… RAN Control (port 8100)
  • โœ… Federated Learning (port 8110)

Realistic KPI Data Generation

  • PRB utilization (DL/UL)
  • Active UE count
  • Throughput metrics (Mbps)
  • Latency measurements (ms)
  • RSRP/RSRQ values (dBm)
  • CQI/MCS values

Kubernetes-Native Deployment

  • Containerized deployment
  • Resource limits configured
  • Health check endpoints
  • Service discovery via DNS

๐Ÿ“ฆ Components

simulator/
โ”œโ”€โ”€ src/
โ”‚   โ””โ”€โ”€ e2_simulator.py      # Main simulator logic
โ”œโ”€โ”€ deploy/
โ”‚   โ””โ”€โ”€ deployment.yaml      # Kubernetes deployment
โ”œโ”€โ”€ Dockerfile               # Container build
โ”œโ”€โ”€ requirements.txt         # Python dependencies
โ””โ”€โ”€ README.md               # Documentation

๐Ÿš€ Quick Start

Deploy to Kubernetes:

kubectl apply -f deploy/deployment.yaml

Verify Deployment:

kubectl get pods -n ricxapp | grep e2-simulator
kubectl logs -n ricxapp -l app=e2-simulator -f

Build Custom Image:

docker build -t localhost:5000/e2-simulator:1.0.0 .
docker push localhost:5000/e2-simulator:1.0.0

๐Ÿ”ง Configuration

Simulation Parameters:

  • Iteration interval: 30 seconds (configurable)
  • Cell ID: 1234567 (configurable)
  • xApp targets: 5 xApps (extensible)

Resource Requirements:

resources:
  requests:
    memory: 64Mi
    cpu: 50m
  limits:
    memory: 128Mi
    cpu: 100m

๐Ÿ“Š Generated Metrics

Sample KPI Data:

{
  "cell_id": 1234567,
  "prb_usage_dl": 45.2,
  "prb_usage_ul": 32.8,
  "active_ue_count": 25,
  "throughput_dl_mbps": 120.5,
  "throughput_ul_mbps": 45.3,
  "latency_ms": 12.5,
  "rsrp_dbm": -85,
  "rsrq_db": -10,
  "cqi": 12,
  "mcs": 18
}

๐Ÿ”— Integration

Parent Project:

Usage:
This simulator is designed to be used as a git submodule in the main RIC Platform project:

cd oran-ric-platform
git submodule add https://github.com/thc1006/oran-e2-node.git simulator/e2-simulator

๐Ÿ“š Documentation

Complete documentation available in README.md:

  • Architecture overview
  • Configuration guide
  • Troubleshooting tips
  • Extension guide

๐ŸŽฏ Use Cases

  1. xApp Development - Test xApp logic without real RAN equipment
  2. Metrics Validation - Verify Prometheus metrics integration
  3. Performance Testing - Simulate various network conditions
  4. CI/CD Integration - Automated testing in deployment pipelines

๐Ÿ› Known Limitations

  • HTTP-based (not full E2AP protocol)
  • Simplified KPI data model
  • Single cell simulation
  • No RAN state management

๐Ÿ™ Credits

Author: ่”ก็ง€ๅ‰ (thc1006)

Related Projects:


๐Ÿ“ Technical Details

Dependencies:

  • Python 3.9+
  • requests
  • Kubernetes DNS

Base Image:

  • python:3.9-slim

Image Size:

  • ~150MB

๐Ÿ”ฎ Future Enhancements

Planned features for v2.0.0:

  • Full E2AP protocol support
  • Multi-cell simulation
  • Scenario configuration files
  • Advanced KPI models
  • gNB state machine

Released: 2025-11-15
Commit: 6ee03a0