Multi-Link Operation Using RIST
The Reliable Internet Stream Transport (RIST) Protocol provides interoperable, low-latency contribution grade content transport over the Internet. It also includes a number of security features, both in content protection and in authentication. Its tunneling features make network configuration a breeze, while allowing for in-band control of the equipment. Job done, right?
Well, not really. What happens if the Internet path becomes too congested for the required bit rate, or the ISP goes down altogether? Can RIST overcome that? Well, it turns out that it can indeed. The answer is in the multi-link capability built into RIST.
One of the original design goals of the Internet is survivability. If a link goes down, it “routes around” the failure using alternate links (if available). When a link goes down, there is nothing RIST can do about that link - but RIST is smart enough to use other links if they can be made available to the protocol. Think about redundancy: if you have only one ISP and that ISP goes down, you are now isolated. However, if you have two ISPs, you can use the other one. Exactly like a well-designed network: it should be two‑connected, meaning that there are at least two paths between any two nodes in the network.
How does RIST work with multiple links? There is more than one way. The first way is called Seamless Switching. In this case, traffic is replicated over two or more links. More specifically, you send a copy of each packet over each of the links. The receiver just needs a re-ordering buffer to accommodate for the different delays between the various links, and will throw away the duplicates. If a link goes down, there is no glitch, because the packets are still flowing in the other link(s). This is why it is called “Seamless” – it is not a failover from one link to another. Another aspect of this mode of operation is that only packets that are lost in all links need to be retransmitted, which cuts down on the overhead and allows the use of shorter NACK buffers. Readers familiar with the SMPTE standards would ask, “How is this different from ST 2022‑7?” Well, it is not. This is exactly ST 2022‑7, down to the use of RTP. Why re-invent the wheel?
The other way RIST can use multiple links is Bonding, also known as Load Sharing. Rather than sending the same packet over multiple links, RIST can spread the traffic instead, thereby combining the bandwidths of the various links into a “logical” higher capacity link. The receiver still does exactly the same job – collects the packets received from the various links, and assembles them in order. The difference is that, in this case, there usually no duplicates. The use of bonding allows for a number of interesting applications, such as:
· Adaptively changing the spread of the packets over the various links based on current link performance.
· Holding an “expensive” (i.e., cellular 5G) in reserve until it is needed.
· Dynamically adding and dropping links based on congestion and performance requirements.
That is the beauty of RIST: even though the protocol is an open Specification, vendors and implementers can innovate and build unique products that will interoperate.
If you need the best possible reliability in your video contribution network, the answer is RIST with Multi-Link capability, available from multiple vendors and in the open-source libRIST.
Ciro Noronha, Ph.D. Cobalt Digital