You can configure the nodes easily using LSF Manager, using the configuration tool. An overview of the configuration steps is:
- Configure socket endpoints used to send and receive local IP traffic.
- Configure WebRTC peer connections and data channels endpoints that will automatically establish remote connections between LSF Gateway nodes.
- Set up internal flows, which look like internal wiring, between the socket and data channel endpoint
Step 1: Open the Node Configuration Panel
- Log in to LSF Manager.
- Navigate to Administration → Node Configuration.
- Click Add Node Config.
- In the dialog, enter your node_id (must match your gateway’s ID) and hit Add.
- Click the new entry to open its settings.
Tip: LSFGateway nodes automatically pull the config whose ID matches their node_id.
Step 2: Add Socket Endpoints
- Scroll down to Sockets and click + Add New Socket.
- Fill in the fields:
Socket ID: a unique label (e.g. udp_input)
TCP/UDP: toggle on if you need TCP (default is UDP)
Bind IP: local IP:port (UDP unicast/multicast or TCP listener)
Destination IP: remote IP:port
Blue input From: input source from one of the other socket or data channel endpoints
Red input From: input source from one of the other socket or data channel endpoints
Threshold: If the blue and red inputs did not originate from the same socket on a remote node, they are not in sync, and can not be merged using hitless protection. When they are not in sync, the gateway nodes can still switch between them but they do that if the active input doesn’t receive any data within the given threshold value.
Hitless buffer: Buffer size for seamless protection switching.
Max In: Rate limiter of input traffic. Will drop packets if the rate exceeds given limit.
Protection Switching Modes:
A) Single Input: only blue or red
B) Bonding: outputs the packet that arrives first, if blue and red are generated from the same source
C) Redundant: If bonding was not possible, switches between red and blue when one stalls past the threshold
- Click Save and repeat for each interface.
Step 3: Configure WebRTC Data Channels
There are two stages involved in building WebRTC channels. The first stage is establishing a WebRTC Peer Connection, which creates a secure, encrypted channel between two nodes.
- Navigate to WebRTC Endpoints and click + Add New Peer.
- Fill in the fields:
Peer ID: A unique identifier that must be the same on both ends of the peer connection.
Remote Node ID: The Node ID of the remote node. This is the node_id value you used when you started a ne lsfgateway node in the previouse steps.
IP Interface: Optionally, provide an IP address (or IP:Port such as 10.0.0.1:5001) to tunnel all WebRTC STUN server traffic through the specific IP and port number.
- Once the Peer Connection is configured, you can add Data Channels within the WebRTC connection. Typically, you configure one data channel for each IP flow. Fill in the following:
Datachannel ID: A Unique name per channel
Ordered: ‘true’ to guarantee in-order delivery (note that this may add retransmission delays)
Max Packet Life: (unordered only) Maximum time to wait before dropping a late packet
Max Retransmits: Maximum number of retransmission attempts before dropping a message
Channel Input From: The ID of the socket or channel whose data you want to send over this data channel
Step 4: Define Internal Flows & Protection
The configuration supports defining multiple sockets and WebRTC data channels, enabling endpoints for both inputs and outputs.
The final step is to wire the internal flows by connecting the endpoints together. This is easily done by selecting which socket or data channel endpoint should serve as the input for a given endpoint.
An example is shown below:
A visual overview of your configuration is available at the top of the page.
Review the configuration parameters and flow paths to ensure everything is set up as expected.
When you are done, you have the following options:
- Download File: Downloads the configuration file to your device. You can upload it again to another configuration if needed.
- Save: Saves the configuration to the database without forcing a running lsfgateway node to use it immediately. The node will load the saved configuration the next time it reboots.
- Apply: Saves the configuration to the database and sends it to the node (if it is turned on and available). The node will reload the updated configuration and apply the changes immediately.