See ActionScript for PSYC implementations and clients in AS2 and AS3 etc.

Using Flash with PSYC and/or RTMP

You know PSYC provides multicast out of the box or mostly, whereas according to http://www.adobe.com/devnet/flashcom/articles/scalable.html Adobe's system must specifically be scripted to the goal of providing distribution trees for scalability. They call them broadcast trees, although they are actually one-way multicast trees. There are toolboxes and there is help to get you there, still you can't just go ahead and use it, even if you paid a whole lot of money for it.

Also, PSYC is an open protocol while Adobe's RTMP is semi-proprietary. PSYC is optimal for n-way applications (where each user can talk to any other user, no matter on which of the many servers in the multicast tree) and for multiple multicast trees (when the origin isn't always the same root server). With Flash Media Server and similar applications it's not so hard to implement root-server-centric broadcast applications, but gets really hard for n-way applications, because you either have to implement routing yourself, or have a central server handle everything, which is a potential bottleneck.

Taking other features of RTMP in consideration, PSYC can also implement data sharing and remote ActionScript calls, that's just a question of providing an appropriate framework API. The implementations mentioned on the ActionScript are getting there. Even shared objects map pretty nicely to the PSYC concept of the distributed state, so PSYC could push those events to all subscribers natively (given an appropriate piece of middleware exists).

Still, Flash operates generally well with RTMP and only some of its functions can be replaced by custom protocols. Socket operations are limited in Flash, otherwise you could be using standard VoIP or open protocols for multimedia.

Thus, tunneling PSYC protocol in RTMP can be a worthwhile project. symlynX's RTMP extension to psyced allows for Flash-based PSYC clients and video/media/chat applications which can then be redistributed by multicast in an interserver multicast network.

RTMFP: Adobe goes peer-to-peer

Adobe's next strike is to enable direct P2P interactions between Flash players either for 1:1 communications as for doing client-based multicast set-ups. A potential strategic attack against Skype, P2P television offerings and even Bittorrent.

This is achieved by means of a new proprietary protocol called RTMFP, which allows a central server to manage how Flash clients communicate with each others. As of November 2009 this protocol has only partly been dismantled, so you need to use an Adobe offering to manage your RTMFP application.

There are some scalability limits to RTMFP-based multicast groups where interserver networks need to take a part in the whole for really massive scale communication.

Apps that combine PSYC with RTMFP are possible.

See also