All projects
2024 · Software / Networking Engineer
OTT Streaming over an Application-Layer Overlay (CORE)
Built a prototype CDN-style OTT service: overlay nodes + PoPs distribute RTP video streams to multiple clients with dynamic route costs and basic failure recovery.
Results
- Bootstrapper-driven overlay formation from JSON topology; nodes join/leave without breaking the system.
- Route cost combines measured latency and packet loss; routing tables update dynamically from
HELLOexchanges. - Client selects the best PoP using ; playback control via RTSP, media via RTP over UDP.
- Demonstrated multi-client streaming and resilience to node/PoP failures with teardown + re-request behavior.
Overview
Implemented an application-layer overlay in Python on the CORE emulator.
A bootstrapper provisions neighbor sets from a JSON topology; nodes exchange periodic HELLOs and routing info, compute path costs from latency and packet loss, and forward streams along best routes.
Clients select the best PoP using , then control playback via RTSP and receive video via RTP over UDP.
Added teardown propagation and recovery behaviors on node/PoP failure.
My work
- Implemented bootstrapper config distribution and node neighbor initialization.
- Implemented message framing/types and the periodic
HELLO+ routing-table exchange. - Implemented client PoP selection (RTT measurement + weighted cost) and RTSP control flow.
- Implemented RTP receive/reassembly logic (chunking/marker bit) and forwarding on overlay nodes.
- Implemented failure detection (
HELLOtimeout) and recovery behaviors for ongoing streams.
Technologies
- Python
- Sockets (UDP/TCP)
- Threads
- CORE emulator
- RTP/RTSP