Skip to main content

Transport Reliability & Flow Control

Real-time networks are inherently unreliable. To ensure high-quality streaming for mission-critical or interactive applications, NanoPing employs three primary mechanisms to handle hostile network conditions: Forward Erasure Correction (FEC) for data integrity, Integrated Jitter Buffering for timing control, and Bandwidth-aware Load Distribution for multi-link optimization.

This section details how to configure these features to balance latency, reliability, and throughput.

1. Data Recovery: Forward Erasure Correction (FEC)​

Packet loss is unavoidable on the public internet. Waiting for retransmissions (like TCP) creates unacceptable delays for real-time video. NanoPing solves this by sending "repair packets": redundant data that lets the receiver reconstruct lost packets right away.

We support several algorithms tailored to different network behaviors, from bursty wireless connections to stable satellite links.

  • Core Concept: Recover lost data without retransmission.
  • Available Algorithms: Rely (Sliding Window), RLNC, Reed-Solomon, Parity 2D.
  • Best For: Environments with high packet loss (>1%).

Read the FEC Algorithms Guide →


2. Timing & Flow: Jitter Buffer Integration​

Receiving the data is only half the battle; delivering it smoothly is the other. Network "Jitter" causes packets to arrive with varying delays. NanoPing moves the traditional Jitter Buffer logic out of the video player and into the Transport Layer.

This lets the transport protocol (Raft) make decisions, such as dropping late frames to keep a strict latency budget, before the data reaches the application.

  • Core Concept: Smooth out network variance while enforcing latency limits.
  • Key Feature: Configurable jitter_buffer per real-time stream.
  • Best For: Ultra-low latency requirements (teleoperation, gaming).

Read the Jitter Buffer Guide →


When multiple network links (carriers) are available, standard round-robin distribution isn't always efficient. NanoPing lets you give carriers a bandwidth priority, ensuring that preferred links (e.g., Ethernet) are used to their full capacity before falling back to expensive or less stable links (e.g., 5G/LTE).

Raft continuously estimates available bandwidth to manage this fallback automatically, ensuring seamless throughput without manual intervention.

  • Core Concept: Prioritize specific carriers with automatic overflow handling.
  • Key Feature: a Bandwidth Priority on each carrier (a higher value means a higher priority).
  • Best For: Multi-homed devices requiring cost or performance optimization.

Read the Load Distribution Guide →


Summary Comparison​

FeatureSolves ProblemMechanismImpact on Latency
FECPacket Loss (Missing Data)Adds mathematical redundancy (Repair Packets).Slight increase (bandwidth overhead).
Jitter BufferJitter (Uneven Arrival)Holds packets briefly to reorganize or smooth flow.Increases latency to ensure smoothness.
Load DistributionInefficient Routing (Link Saturation)Prioritizes carriers with automatic fallback.Minimal; optimizes throughput.