Introducing Open/R — a new modular routing platform

This post introduces Open/R, a new modular and extensible distributed network application platform. It was initially designed as a shortest-path routing system for Terragraph, a multi-node wireless network for urban internet connectivity. Open/R's modular design allows for additional applications beyond routing, and it has been adapted for other networking infrastructure. The platform generalizes replicated state databases and uses Thrift for message encoding and ZeroMQ for message exchange. Key modules include KV-STORE for publishing and subscribing to key-value pairs, LINK MONITOR for detecting link status changes, DECISION for computing shortest paths using Dijkstra's SPF algorithm and loop-free alternatives, and FIB for interacting with the hardware forwarding information base. Open/R has been scaled to networks with thousands of nodes and validated through extensive emulation test-beds. The company plans to contribute it to the open source community and TIP.