From Adobe Labs
Return to Stratus Home
Frequently Asked Questions
What is the Real-Time Media Flow Protocol (RTMFP)? The Real-Time Media Flow Protocol (RTMFP) is a new communication protocol from Adobe that enables direct end user to end user peering (P2P) communication between multiple clients running an application built for Adobe Flash Player or Adobe AIR for the delivery of rich, live, real-time communication.
For more information regarding Flash Player 10, Adobe Air 1.5 and RTMFP view our complete RTMFP FAQ posted on adobe.com at http://www.adobe.com/go/rtmfp_faq.
What is Peer to Peer (P2P)? Peer to Peer (P2P) has various meanings within the technology industry, but typically refers to the establishment of a direct connection between two or more end-users to aid in the movement of data and media.
There are several types of P2P solutions -
- End User to End User: Two clients communicate directly without passing their data through the server for low-latency, real-time communication. This is the solution that Adobe is enabling with RTMFP.
- Swarming: Many to many communication typically used to share delivery a file via download. Swarming maximizes transfer speed by gathering pieces of a file and downloading these pieces simultaneously from other end-users who already have them. Swarming solutions typically require a standalone application designed to locate and connect to other end-users’ computers that have the relevant content. These solutions typically have local file system access. Flash player 10 and AIR 1.5 will not enable swarming solutions.
- Multicast: One to many communication over an IP infrastructure. Multicast speeds content delivery and reduces the burden on the network because a source sends the data packet only once for delivery to a large number of end-users. The nodes in the network take care of replicating the packet to reach multiple end-users only where necessary. Flash Player 10 and AIR 1.5 will not enable multicast solutions.
For more information on Peer to Peer see Wikipedia at http://en.wikipedia.org/wiki/Peer-to-peer.
RTMFP uses P2P techniques to ensure a high quality delivery and efficient use of the network. It is a managed connection, which means it requires the authorization of a server to make the introductions. The client must be connected to the server to retain the direct connection.
What is Stratus? Stratus is a hosted rendezvous service that aids in establishing communications between Flash Players or Adobe AIR endpoints using RTMFP. Flash Player endpoints must stay connected to the server during the entire time of communications. Unlike Flash Media Server, Stratus does not stream video or support media relay, shared objects, or scripting. Stratus is being made available as a beta service through Adobe Labs to allow our developer community to begin building applications using RTMFP.
How do Stratus and a Flash Media Server (FMS) differ? When using Stratus, all data is sent directly from client to client. Flash Media Server supports client to server communication. Additionally features like shared objects and server side scripting that are supported by FMS are not supported with Stratus.
What do I need to use Stratus? You will need to sign in with your AdobeID to receive a unique Developer Key which will be used within your application to take advantage of Stratus. Then, get your Developer Key to gain access to the service.
How much does Stratus cost? Stratus is a free beta service. You will need to register with your Adobe ID to get a unique Developer Key.
When will a market-ready version of Stratus be released? Stratus is being deployed as a beta service to assess the functionality as well as market demand. Based on what we learn through the beta, we will determine our product roadmap moving forward with the service.
If I have trouble using Stratus, who should I contact for support? Please use the Labs user forums http://www.adobe.com/cfusion/webforums/forum/categories.cfm?forumid=72&catid=756&entercat=y. Adobe team members will be monitoring the forums.
What new functionality does Adobe Flash Player 10 and AIR 1.5 enable? By using RTMFP, applications that rely on live, real-time communications, such social networks and multi-user games will be able to deliver higher quality communication solutions. Flash Player 10 and AIR 1.5 will also enable end-users to connect and communicate directly with each other using their computer’s microphone and webcam. Flash Player 10 and AIR 1.5 will not support file or document sharing.
How will developers work with RTMFP? RTMFP enables developers to establish direct end user to end user peering communication between two or more clients running an application built for Adobe Flash Player or Adobe AIR for delivery of live, real-time media. RTMFP is similar to RTMP for client-server connections because RTMFP has full support for all the Flash Media Server functionality currently found in RTMP, including live streaming, recording and playback, shared objects, and remote function calls.
ActionScript developers will use ActionScript (2 or 3) to establish a NetConnection with the Stratus service. To make direct connections between Flash player 10 clients, new extensions have been added to the ActionScript class, NetStream, to establish a Flash Player as a publisher or subscriber.
What are the limitations of RTMFP in Flash Player 10 and AIR 1.5? Flash Player 10 and AIR 1.5 will not enable swarming, multicast or broadcast quality live video. It will only enable communication from the voice and video devices native to your computer (e.g. microphone and webcam) and enables application developers to send ActionScript data messages directly between Flash Player and Adobe AIR clients.
Does Adobe plan to expand the functionality of RTMFP? Adobe will continue to evaluate and evolve RTMFP to meet new market needs, however, there are no announcements at this time.
How will I make a P2P connection through Flash Player 10 or Adobe AIR 1.5? Connections from a SWF through an RTMFP-capable server will be assigned a temporary unique ID that is infeasible to guess or forge. Other SWFs connected to the same server can subscribe to the streams and events from that ID once the broadcasting SWF agrees to the connection.
On the server level, these IDs can be mapped to application-specific information such as presence. For a chat application, the ID can be linked to the nickname the user gave when connecting to the application. While the end-user may select the person that they want to chat with, Flash Player will use the ID to establish the connection with that user.
What can I send through the P2P connection? In a similar way that you would stream local microphone and webcam media up to a server, you will also be able to stream it directly to another Flash Player client that has connected as a peer.
Through NetStream.send you can also send data which is useful for shared experiences in real-time applications. Any data format can be sent through this method though there are size limitations to the packet which may make certain data types less useful.
How does the peer connection work? RTMFP UDP packets are sent directly from one Flash Player to another. The server translates the peer IDs to network addresses, and also assists in setting up the connection if one or both ends is behind a Network Address Translation (NAT) device. If UDP is blocked by a firewall or if RTMFP is blocked through a configuration of mms.cfg, the peer connection will not go through.
Can I choose between UDP and TCP? No, RTMFP is a UDP-based protocol while RTMP is a TCP-based protocol. You will automatically use UDP by calling the methods that work over RTMFP.
Can I get started with RTMFP now? Stratus will allow you to begin developing RTMFP-enabled applications. It will be available on Adobe Labs. You can also start using RTMFP with Cocomo.
For more information regarding Flash Player 10, Adobe Air 1.5 and RTMFP view our complete RTMFP FAQ posted on adobe.com at http://www.adobe.com/go/rtmfp_faq
How are Stratus and Cocomo related?
Both Stratus and Cocomo leverage the new RTMFP protocol built into Flash Player 10 and Adobe AIR 1.5 to help developers rapidly build and deploy their applications. Cocomo provides a framework and a hosted service for rapid development of real-time collaboration applications that include multi-user white boarding and real-time file sharing in a matter of days instead of months. Stratus provides a hosted service allowing developers to deploy peer-to-peer applications.
Cocomo’s hosted services infrastructure comprises servers supporting RTMP and RTMFP that are hosted and managed by Adobe. Cocomo enables both UDP-based direct peer-to-peer communication between multiple clients and TCP-based client-server communication for applications built using the Cocomo framework for Adobe Flash Player or Adobe AIR. Cocomo can switch seamlessly between peer-to-peer and client-server streaming, as network conditions and user capabilities required.
The Stratus hosted services infrastructure comprises a scalable cloud of RTMFP servers hosted and managed by Adobe. Stratus enables UDP-based direct peer-to-peer communication between Adobe Flash Player and Adobe AIR clients for any Flash or Flex application
For more information regarding Cocomo, please visit http://www.adobe.com/go/cocomo
Return to Stratus Home