SMPTE Session Puts ST 2110, 2059 Networking Into Perspective

Matrox senior software engineer explains why a NIC with onboard SMPTE IP support makes sense
Author:
Publish date:

LOS ANGELES—One oft-touted advantage of transitioning from SDI baseband video to an IP equivalent is the ability to use common off-the-shelf (COTS) computer hardware to replace specialty video equipment.

Jean Lapierre, senior director of software engineering at Matrox Graphics

Jean Lapierre, senior director of software engineering at Matrox Graphics

The idea is that the economies of scale the computer industry brings to the table are so far superior to anything the M&E industry can muster, which should make it easier for broadcasters and others to adopt IP-based workflows.

However, a presentation at the SMPTE 2018 Annual Technical Conference and Exhibition by Jean Lapierre, senior director of software engineering at Matrox Graphics, sheds a somewhat different light on the issue. While his “Bridging The Gap Between Software and SMPTE ST 2110” presentation did not address the cost issue, it did throw into question the notion of “common” in “common off-the-shelf” computer hardware for M&E applications.

“We think that ST 2110 with full implementation of [ST] 2059 is very difficult using a generic network card and some software,” he said. “It’s much easier if we are leveraging some hardware acceleration on the network card. And we think that the way to do that is to use an FPGA-based network card that actually understands the full ST 2110 implementation.”

PACKET SPACING

Lapierre offered several examples of situations in which a conventional network interface card (NIC) and use of a computer’s CPU would not be up to task.

For instance, traffic shaping is “actually quite tricky to do in software,” he said. Lapierre explained that simply using software to packetize a frame of video and send it as fast as possible on the network is not a realistic solution.

He pointed to an example of 1080p 60 video at a little bit less than 3Gb/s being sent over a 10Gig network.

Sending a frame from a hypothetical source A as fast as possible will take about a third of the memory in a receiver’s buffer. However, if two more sources are added and all three burst their packets onto the network, the network switch will not be able to send all of the packets at the same time. This will require buffering, said Lapierre.

With just three sources, this approach is acceptable. “Where we get into trouble is when you try to move that to scale,” he said.

A far bigger buffer will be needed on the switch; however, it still may be inadequate and have to drop packets, which is undesirable, he explained.

SMPTE ST 2110 addresses this situation through packet spacing, which is “a nice way of spreading packets over time,” which creates holes for other packets to fill as they traverse a network, he said.

In the same example, the same amount of data is sent on the network, but spread out over time, allowing the receiver to build up the frame. With packet spacing, if two more sources are introduced, the switch only has to buffer a smaller part of the second and third source, he said.

However, doing so in software is tricky, said Lapierre. One strategy is to build time loops to build in the needed delay, but that wastes CPU cycles that could be used on an important task.

Additionally, the computer’s operating system may have an essential task to perform, putting the time loop to sleep momentarily to accomplish the task, thereby unexpectedly extending the duration of the loop.

“We think it is better to leave that job to a network card that can do the packet spacing for you.”

PTP-AWARE NETWORK CARD

Precision Time Protocol (PTP), which keeps audio and video packet flows from multiple streams in step in time, is also a challenge in a software implementation.

In this example, PTP would require a network stack, consisting of a grand master clock, a conventional NIC, an operating system and the software implementation, he said.

“Well, my piece of software uses that stack to talk to the grand master to find out what time it is, and by time the message comes back I have to try to figure out how long it took for this message to get there and how long it took to get back,” he explained.

The problem is it can take a variable amount of time to go through the stack, he added.

“We can improve our situation by using a network card that understands our situation,” said Lapierre. However, the precision of PTP that is possible in software is inadequate and “can wreak havoc,” he said.

“What we think is better is if the network card, which is PTP-aware, is the one responsible for doing the time stamping—and why not [also] doing the packet spacing,” he said.

By adding a network interface card to a system with on-board ST 2110 and ST 2059 support, vendors can spend their development time improving their own Software solutions, not dealing with these network interfacing issues, he explained.

“Also, if we look at all the CPU processing we are talking about we will be wasting CPU cycles doing timing loops and things of that nature. To me, if we do that, it sounds like we are doing less with more and not more with less,” he concluded.