Recommended System Requirements
The following recommendations are based on supporting ~100 concurrent Remote View (screen streaming) sessions using Coturn. These values assume TURN relay usage (worst-case scenario), where all traffic flows through the TURN server.
Key Assumptions
- Each Remote View session uses: 2 media ports (UDP) per session
- Total sessions: 100 concurrent
- Total media ports required: 100 × 2 = 200 UDP ports
- Traffic is relayed via TURN (no direct peer-to-peer)
- Average screen share bitrate: 1–2 Mbps per session
System Sizing Quick Reference
For 100 concurrent Remote View sessions, a practical production-ready configuration is:
- CPU: 12 vCPU
- Memory: 32 GB RAM
- Network: 1 Gbps NIC
- Ports: 3478 (TCP), 5349 (TLS), ~300 UDP media ports
- OS: RHEL 7/8/9 with Docker/Podman
- TLS: Enabled with CA-signed certificate
System Sizing Overview
| Component | Recommendations | Rationale / Technical Details |
|---|---|---|
| CPU | 8 vCPU (Min) / 12–16 vCPU (Optimal) | Handles packet relay, session management, and TLS (TURNS) encryption overhead (~10–20%). |
| Memory (RAM) | 16 GB (Min) / 32 GB (Optimal) | Required for session tracking, packet buffering, and handling high concurrency. |
| Network Bandwidth | 1 Gbps NIC (Dedicated preferred) | Total throughput of 200–400 Mbps (1–2 Mbps per session). TURN relays both inbound and outbound traffic. |
| UDP Media Ports | Range: 49152–49352 (200 ports min) | Requires 2 media ports per session. Recommended buffer: 300–400 ports. |
| Storage | 20–40 GB disk | Supports container runtime (Docker/Podman) and logs for debugging connectivity. |
| Operating System | RHEL 7 / 8 / 9 | Runs via Docker/Podman and Docker Compose/Podman Compose. |
Required Open Ports
Important: Ports listed here may change based on your specific TURN server installation requirements.
| Port Type | Port | Protocol | Purpose |
|---|---|---|---|
| TURN/STUN | 3478 | TCP | Standard TURN communication. |
| Secure TURN | 5349 | TCP (TLS) | Encrypted TURN (TURNS) for secure communication. |
| Media Ports | 49152–49352 | UDP | Handles the actual media relay traffic for Remote View sessions. |
Extended System Requirements
| Category | Requirements | Technical Details / Rationale |
|---|---|---|
| Media Port Range | 49152–49352 (UDP) | Minimum of 200 ports for 100 sessions. Recommended buffer: 300–400 UDP ports for stability. |
| Operating System & Runtime | RHEL 7 / 8 / 9 | Deployment requires Docker or Podman with Docker Compose or Podman Compose. |
| Storage | 20–40 GB Disk Space | Covers container runtime images and persistent logs essential for debugging connectivity. |
| TLS Configuration (If Enabled) | CA-signed TLS certificate | Increases security for enterprise environments; introduces approximately 10–20% CPU overhead. |
| Capacity Planning Formula | Scaling Baselines |
|