RouteMaster – Networking Overview

This post describes how RouteMaster operates on IP networks for router control. It’s helpful for network administrators who need to understand how to configure firewalls, etc for RouteMaster use.

Internal Communications

When you start the RouteMaster application running, you’re effectively starting two independent processes.  The RouteMaster “backend” is responsible for actual control of the router, and handling all incoming connections, while the RouteMaster “frontend” present a GUI interface for the backend allowing settings to be viewed/changed and similar functions.

They communicate via a simple HTTP REST API, with the frontend issuing requests to the backend server.  The port selected for this communication is normally an ephemeral port chosen by Windows, but you can specify a fixed port using command line options.

Control of Downstream Routers

RouteMaster supports a wide range of protocol for controlling routers. These typically use TCP/IP, With RouteMaster as a client, connecting to the router which acts as the server. The port number chosen must match the configuration of the router being controlled. These protocols are typically simple command packet-oriented ones, and  have no encryption and only the simplest authentication. Connection between RouteMaster and any routers being controlled should be on a secure private network.

Control with Upstream ‘Client’ Protocols

RouteMaster can also be controlled using a wide range of common protocols for router control. This allows third-party systems and hardware panel to operate directly with RouteMaster. Each of these protocols can be individually enabled, and the listening port configured via the RouteMaster UI.

For the upstream protocols, RouteMaster acts as a server and accepts multiple incoming client connections on each enabled port. The total number of allowed clients is determined by the product’s license.

RouteMaster Web Panels

RouteMaster has a simple built-in Web Server which allows web-based router control panels to be used in any modern browser. The panels are loaded over HTTP, but the control communications for making routes and tallying status uses HTML5 Websocket protocol with a JSON payload.

Ports for both these protocols can be configured from the GUI. Note that the WebSocket protocol is also used between the RouteMaster frontend and backend for router control.

Web Panels hosted by RouteMaster have no authentication or encryption. These features are provided by Rascular’s WebCentre software which works alongside RouteMaster.

NDI Video Routing

RouteMaster NDI and RouteMaster Lite also support NDI routing, creating a virtual NDI switcher which can be controlled by the above client protocols. NDI port and protocol usage varies depending on the NDI versions being used, but basic information can be found on the NDI website.

We’ve found this article describing NDI communications to be useful too: Adding NDI to your Network  

Note that NDI routing does not require significant network bandwidth. The router effectively joins the source and destination together, without any video data flowing through the RouteMaster system.