The '''Secure Real-Time Media Flow Protocol''' ('''RTMFP''') is a [[proprietary protocol|proprietary]] [[protocol suite]] developed by [[Adobe Systems]] for encrypted, efficient [[multimedia]] delivery through both [[client–server model|client-server]] and [[peer-to-peer]] models over the [[Internet]]. The protocol was originally [[proprietary protocol|proprietary]], but was later opened up and is now published as {{IETF RFC|7016}}.<ref name="id">{{Cite journal |title= Adobe's Secure Real-Time Media Flow Protocol |date= November 2013 |author= Michael Thornburgh |journal= RFC |publisher= [[Internet Engineering Task Force]] |url= https://tools.ietf.org/html/rfc7016 |accessdate= March 6, 2014 }}</ref>
==Operation==
By using RTMFP, applicationsallows thatusers rely onof live, real‐time communications, such as [[social networknetworking service]]s and multi‐user games will be able, to deliver higher quality communication solutions. RTMFP enables end‐users to connect and communicate directly with each other using their computer’scomputer's microphone and webcam. This solution enhances the current functionality in the Flash Player by creating a higher quality solution that will perform better regardless of variations in the network. RTMFP is a [[peer-to-peer]] system, but is only designed for direct end user to end user communication for real-time communication, not for file sharing between multiple peers using [[segmented downloading]].<ref>[httphttps://www.adobe.com/products/flash-media-enterprise/rtmfp-faq.html RTMFP FAQ]</ref> Facebook uses this protocol in its Pipe application<ref>{{Cite toweb transfer|url=http://www.pipe.com/how/ big|title=Pipe files|access-date=2013-11-23 directly|archive-date=2013-12-03 between|archive-url=https://web.archive.org/web/20131203000113/http://www.pipe.com/how/ two|url-status=dead users.}}</ref>
RTMFP will reduce the bandwidth costs forenables direct, live, real‐time communication solutions,for applications such as audio and [[Videoconferencing|video chat]] and multi‐player games. Because RTMFP flows data between the end‐user ▼
==Benefits==
clients and not the server, bandwidth is not being used at the server. RTMFP uses the [[User Datagram Protocol]], (UDP) to send video and audio data over the Internet, so needs to handle missing, dropped, or out of order packets. RTMFP has two features that may help to mitigate the effects of connection errors.
▲RTMFP will reduce the bandwidth costs for direct, live, real‐time communication solutions, such as audio and [[Videoconferencing|video chat]] and multi‐player games. Because RTMFP flows data between the end‐user
clients and not the server, bandwidth is not being used at the server so solutions are less expensive to scale.
RTMFP also increases the speed of delivery through the use of [[User Datagram Protocol|UDP]]. UDP is a more efficient (but less reliable) way
to send video and audio data over the Internet that reduces the penalties associated with missing, dropped, or out of order packets.
RTMFP has two features that may help to mitigate the effects of connection errors.
'''Rapid Connection Restore:''' Connections are re‐established quickly after brief outages. For example, when a [[wireless network]] connection experiences a dropout. After reconnection, the connection has full capabilities instantly.
example, when a [[wireless network]] connection experiences a dropout. After reconnection,
the connection has full capabilities instantly.
'''IP Mobility:''' Active network peer sessions are maintained even if a client changes to a new [[IP address]]. For example, when a laptop on a wireless network is plugged into a wired connection and receives a new address.
[[IP address]]. For example, when a laptop on a wireless network is plugged into a wired
connection and receives a new network address.
==Difference between RTMP and RTMFP==
The principleprincipal difference is how the protocols communicate over the network. RTMFP is based on
[[User Datagram Protocol]] (UDP),<ref name="id" /> whereas [[Real -Time Messaging Protocol|RTMP]] (RTMP) is based on [[Transmission Control Protocol]] (TCP).
UDP‐based protocols have some specific advantages over TCP‐based protocols when delivering live [[streaming media]], such as decreased latency and overhead, and greater tolerance for dropped/ or missing packets, at the cost of decreased reliability.
Unlike RTMP, RTMFP also supports sending data directly from one [[Adobe Flash Player]] to another,
without going through a server. A server‐side connection will always be required to establish the initial connection between the end‐users and can be used to provide server‐side data execution or gateways into other systems. The user of a [[Adobe Flash Media Server|Flash Media Server]] will also be required to authorize network address lookup and [[NAT traversal]] services for the clients to prevent Flash Player from being used in an unmanaged way.
== Application-level multicast ==
Flash Player 10.0 allowed only one-to-one communication for P2P, but from 10.1 application-level [[multicast]] is allowed. Flash Player finds appropriate distribution route ([[overlay network]]), and can distribute to the group, which is connected by P2P.
== History ==
* [[Adobe Flash Player]]
* [[Real -Time Messaging Protocol]]
==References==
{{reflist|21}}
==External links==
* [http://labs.adobe.com/technologies/flashplayer10/ Flash Player 10]
* [http://labs.adobe.com/technologies/flashplayer10/releasenotes.html Flash Player 10 Release Notes]
* [http://labs.adobe.com/technologies/cirrus/ Cirrus | Real Time Media Flow Protocol (RTMFP) - Adobe Labs]
* [http://askmeflash.com/article_m.php?p=article&id=3 RTMFP for Flash]
* [http://justin.everett-church.com/index.php/2008/05/16/rtmfp-in-flash-player-10-beta RTMFP in Flash Player 10 beta] - Justin's Flash Blog
* [http://justin.everett-church.com/index.php/2008/05/23/astrop2p Peer to Peer (P2P) in Flash Player 10 beta] - Justin's Flash Blog
* [http://www.flashrealtime.com/basics-of-p2p-in-flash/ Video tutorial - Basics of P2P in Flash/Flex] - FlashRealtime.com
* [http://www.rtmpd.com C++ RTMP Server]
* [http://github.com/OpenRTMFP OpenRTMFP] - CumulusServer is a complete open source and cross-platform RTMFP server extensible by way of scripting
* [http://www.camrumble.com/source/ Camrumble.com] - Open chatroulette script that's demonstrated the RTMFP
{{Adobe Flash}}
[[Category:Adobe software]]
[[ja:Real Time Media Flow Protocol]]
|