First Look: Flash Media Server 4
RTMFP or Fusion
Real-Time Media Flow Protocol is a big deal, not just for Adobe but also for the enterprise users at which Adobe is targeting the FMES.
First, let's look at the RTMFP technology and then at possible implementations, including a brief discussion of a prerelease test done by a Fortune 100 organisation.
Available in Flash Player 10.1 and AIR 2.0 applications, RTMFP is Adobe's foray into User Datagram Protocol (UDP) transmission of content.
Unlike the more widely used Transmission Control Protocol (TCP) that Adobe's RTMP and many other streaming protocols are based on, UDP is designed to hammer home content with lower latencies.
If TCP and UDP were to star in a good cop/bad cop comedy, TCP would be the kinder, gentler character that serves as a foil to UDP's gruff and overbearing demeanour.
TCP works with other protocols to guarantee the delivery of data, conferring to guarantee that its content has arrived all in one piece, with the option of sending follow-up packets if a few packets went missing along the way. As such, TCP is ideal for data delivery when it comes to data that doesn't need to scale or isn't time-sensitive.
UDP, on the other hand, doesn't play as well with other protocols. And its "take no prisoners" approach means that it gets the content delivered, no matter what other types of content are clogging up the pipe. Still, for wide-ranging or scalable implementations-especially those that require two-way communication-UDP is more effective that TCP.
"Reliable data transmission in TCP is achieved by re-transmission of lost data, which introduces latency," Adobe states in an FAQ on RTMFP. "Because minimising end-to-end delay is one of the most important goals in real-time communications (a few hundred milliseconds delay may render a conversation unusable), TCP is not well suited for this purpose."
One way to handle error correction, or what Adobe calls "transmission error resilience and recovery," is to integrate a level of error correction into the codecs themselves. Both Adobe's Speex audio and H.264 video codec implementations offer error recovery, according to the company, rendering the need for TCP in real-time communications mostly irrelevant.
"Reliable delivery provided by TCP is therefore not needed," the FAQ states. "As a result, UDP, which provides an efficient and rapid data delivery, is popularly used in real-time collaboration applications where minimising end-to-end delay is of paramount importance."
Interactivity
In other words, the interactivity in Flash Media Server 4 moves beyond just the concept of basic gaming interaction with low bandwidth requirements-think playing online games between seatmates on an airline flight-and into full-blown interactivity found in most massive multiplayer online role-playing games (MMORPG).
Until now, most MMORPGs have required a platform-specific application to handle the majority of content delivery and they have used game-specific servers to allow players to chat back and forth with one another from their individual locations.
Adobe hopes to change that, noting that UDP provides a way to handle end-to-end peering, or "direct data transmission between two clients located behind network address translators (NATs)," which is useful for those who want to do everything from video chat all the way up to full-blown videoconferencing.
"Media is sent directly between two Flash Player instances without routing through a central relay server," according to Adobe. "When compared to RTMP, where all data is sent through Flash Media Server, RTMFP not only further reduces end-to-end delay, but also eliminates costs associated with a central data relay, thus lending itself to extremely scalable deployments."