How do I make mobile P2P apps without a server? RTFM... no... RTMFP.
<ul><ul><li>RIA and mobile developer with Digital Primates
Flash developer since 1996.
Podcaster
vandermore.com </li></ul></ul><ul>Who is David Moore? </ul>
<ul>What the heck is that paper for? </ul>
<ul><ul><li>Not RMFTP...
Real Time Media Flow Protocol
Similar to RTMP (Real Time Messaging Protocol)
Allows for Peer to Peer communication </li><ul><li>Flash Player
Adobe AIR </li></ul><li>Developed by Amicima </li></ul></ul><ul>What is RTMFP? </ul>
<ul><ul><li>Allows for Peer to Peer communication </li><ul><li>FMS Server
Server-less inside a LAN as of 10.1 </li><ul><li>Wireless or wired </li></ul></ul></ul></ul><ul>What does RTMFP do? </ul>
<ul>So what? </ul>
<ul><ul><li>UDP – User Datagram Protocol
Lossy
Low Latency
P2P – Reducing Server Load </li></ul></ul><ul>RTMFP Basics </ul>
Upcoming SlideShare
Loading in...5
×

How to make P2P apps without a server? RTFM... no RTMFP.

7,481

Published on

The talk I gave at the Chicago Flex User Group on June 15th. The talk was on the Real Time Media Flow Protocol (RTMFP), and how it can be used to make Peer to Peer networks without a server.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
7,481
On Slideshare
0
From Embeds
0
Number of Embeds
6
Actions
Shares
0
Downloads
40
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • Read the frelling manual? No Real Time Media Flow Protocol
  • Worked for various companies doing flash and web work. Motorola Eastman Chemical MLB Showtime Any questions?
  • Hand out paper. Questions Frustrations Expectations What do you expect in this talk? Throw Open one
  • Not RMFTP, I keep calling it that. RTMFP uses the same NetConnection that RTMP uses. So if you&apos;ve used RTMP before, a lot of this will be similar. Amicia was bought by Adobe, before 2008, and the creators as far as I know, still work at Adobe. Open a paper
  • Uses Flash Media Server to facilitate P2P connections. As of 10.1 serverless P2P We&apos;ll be talking about the server-less version of this technology.
  • Why are we talking about this? When the technology was developed, mobile wasn&apos;t nearly as powerful or prevalent as it is today. Flash being on mobile opens up a whole range of applications. Local/Live communications Multiplayer games Social Networking apps Multicast video? It&apos;s possible with FMS and RTMFP, but not sure about serverless More
  • UDP sits on top of TCP Doesn&apos;t require all the packets arrive in order, or arrive at all LL because it doesn&apos;t have to arrive in order, or be ordered later P2P reduces server loads, since peers will send to each other.
  • Standard RTMP is a one to many relationship. Many clients, one server. Video example – each client connecting, new stream, heavy load on server RTMFP is a many to many relationship. If using a server, the server facilitates the initial P2P connection.
  • Full peer to peer RTMFP allows individual clients to connect over UDP and talk with each other. No server needed All clients listen for and send their own messages.
  • When RTMFP was developed, it&apos;s creators built security into it. As they say, it&apos;s 2006, everything should have security on the web.
  • As developers Couldn&apos;t find any documentation on this, but believe that it&apos;s related to the anti-DOS protection. All messages must be unique. You can send simple String messages, but why? You can send whole typed objects. NAT translation, only with a server
  • Not all local networks will allow UDP packets, or will restrict them. As before, as an anti-DOS protection, all messages must be unique. If you need all the packets, then you won&apos;t be able to use this. If you need them in order, you won&apos;t be able to use this, kind of. Peer tracking Peer disconnects, never get message Peer disconnects, never sends message
  • Talk to your sys admin, or try another network. Add on a unique id to all messages Makes things bigger Gets around the built in protection for DOS Nothing you can do about loss, prepare for it. If you need them in order, you will need to order them on the client. Peer tracking - Heartbeat
  • Distribute app, and go over some of the last few slides again.
  • CODE notes.txt
  • How to make P2P apps without a server? RTFM... no RTMFP.

    1. 1. How do I make mobile P2P apps without a server? RTFM... no... RTMFP.
    2. 2. <ul><ul><li>RIA and mobile developer with Digital Primates
    3. 3. Flash developer since 1996.
    4. 4. Podcaster
    5. 5. vandermore.com </li></ul></ul><ul>Who is David Moore? </ul>
    6. 6. <ul>What the heck is that paper for? </ul>
    7. 7. <ul><ul><li>Not RMFTP...
    8. 8. Real Time Media Flow Protocol
    9. 9. Similar to RTMP (Real Time Messaging Protocol)
    10. 10. Allows for Peer to Peer communication </li><ul><li>Flash Player
    11. 11. Adobe AIR </li></ul><li>Developed by Amicima </li></ul></ul><ul>What is RTMFP? </ul>
    12. 12. <ul><ul><li>Allows for Peer to Peer communication </li><ul><li>FMS Server
    13. 13. Server-less inside a LAN as of 10.1 </li><ul><li>Wireless or wired </li></ul></ul></ul></ul><ul>What does RTMFP do? </ul>
    14. 14. <ul>So what? </ul>
    15. 15. <ul><ul><li>UDP – User Datagram Protocol
    16. 16. Lossy
    17. 17. Low Latency
    18. 18. P2P – Reducing Server Load </li></ul></ul><ul>RTMFP Basics </ul>
    19. 19. <ul>RTMFP Basics </ul>Standard RTMP RTMFP – Using FMS
    20. 20. <ul>RTMFP Basics </ul>Full Peer to Peer RTMFP
    21. 21. <ul>RTMFP Basics </ul><ul><li>RTMFP security </li><ul><li>Encrypted
    22. 22. Anti-DOS protections
    23. 23. Anti-portscanning protections
    24. 24. More: Matthew Kaufman at his Max 2008 presentation </li></ul></ul>
    25. 25. <ul>Stuff we care about </ul><ul><li>Unique messages
    26. 26. Typed objects
    27. 27. Local network, no server needed </li><ul><li>Some limits because of this </li></ul></ul>
    28. 28. <ul>Limits? </ul><ul><li>Local network needs to route UDP
    29. 29. Unique messages
    30. 30. Lost and out of order packets
    31. 31. Keeping track of peers </li><ul><li>When they connect
    32. 32. When they disconnect </li></ul></ul>
    33. 33. <ul>Working around the limits </ul><ul><li>Local network?
    34. 34. Unique messages?
    35. 35. Lost and out of order packets?
    36. 36. Keeping track of peers? </li></ul>
    37. 37. Demo http://vandemore.com/HotPotato.apk
    38. 38. CODE!
    39. 39. Q & A
    40. 40. Thank You
    41. 41. Credits and Additional resources: Thanks to the following for media assets and inspiration <ul><li>www.flashrealtime.com
    42. 42. www.jamesward.com
    43. 43. renaun.com
    44. 44. www.adobe.com
    45. 45. http://tv.adobe.com/watch/max-2008-develop/future-of-communication-with-rtmfp-by-matthew-kaufman/
    46. 46. github.com/devboy/HydraP2P - Library to quickly get started with RTMFP P2P.
    47. 47. vandermore.com </li></ul>
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×