Tom Krcha's FlashRealtime

Hey amigo! These are my notes. I'm Gaming Evangelist at Adobe.


P2P ve Flash Playeru 10 uĹľ nynĂ­ a CoCoMo

December 1st, 2008

Spousta z vás jistě zaregistrovala podporu P2P ve Flash Playeru 10. Jedná se o zajímavou funkci, ale nikde není zdokumentovaná, informace k ní pouze mlhavé a jak to tedy vůbec je?

Rád bych tak navázal na květnový sneak peek článek Patrika Zandla: Adobe Flash ve verzi 10 přináší podporu P2P a doplnil některé části.

Flash Player 10 podporuje nový protokol RTMFP - Real Time Media Flow Protocol, který je postavený na bedrech UDP. Jedná se o ztrátový protokol, což výrazně snižuje latenci oproti předchozímu RTMP postaveném na TCP. RTMFP byl vyvinutý hlavně pro potřeby IP-telefonie - audio/video chatů, ale je vhodný i pro multiplayer hry. Výsledná aplikace zpravidla kombinuje výhody RTMFP a RTMP.

V současné době rozlišujeme 3 druhy P2P:

1) end-to-end user - přímé propojení peerů

2) swarming (rojení) - typickým případem je bitTorrent

3) multicast - propagace zpravidla streamu do sítě a následný odběr peery, výrazně snižuje datové nároky na přenos, protože se stream šíří pouze jednou. Využití: IPTV, broadcasting

Flash Player 10 podporuje z bezpečnostních důvodů pouze end-to-end P2P a nebude možné vytvářet aplikace pro masivní sdílení souborů či televize (Bittorrent či Joost nepostavíte na Flashi). 

Co je výhodou UDP:

1) Rychlá obnova spojení

 - Spojení je po výpadku hned obnoveno

 - I přesto, že má síť packetloss, latence zůstává co nejmenší

2) IP Mobilita

 - v případě, že změníte IP adresu - náhlé přepnutí Wifi síťě apod. - spojení se plynule naváže na novou IP adresu - není nutný žádný reconnect.

FAQ: Kdy a jak budeme moci vytvářet P2P aplikace ve Flashi?

Právě byla uvedena nová verze Flash Media Serveru 3.5, která přináší dynamický streaming, což ve své podstatě znamená, že máte video na serveru uložené ve více kvalitách a server vám naservíruje to, které nejvíce vyhovuje šířce pásma vašeho připojení. K tomu, aby to poznal slouží obslužný inteligence serveru. Kvalit jednoho videa můžete mít uloženo kolik chcete a týká se to i live streamu. V případě nedostatku pásma přepne server na stream s menším bandwidth a naopak. Přechod je takřka plynulý a automatický.

Nicméně podporu P2P přinese až budoucí verze Flash Media Serveru, kterého se snad dočkáme v roce 2009. Jako nejvetší výhodu považuji, že díky P2P výrazně odlehčíte serveru a zůstane tak volné pásmo a výkon serveru na důležitější věci.

Princip je jednoduchĂ˝:

PĹ™.:
Když jste dříve programovali VideoChat, tak veškerá komunikace mezi klienty probíhala přes server, čili i posílání streamů.

FMS 3.5 a menší - RTMP

FMS 3.5 a menší - RTMP

V případě RTMFP se pouze zaregistruje fingerprint na serveru a každý nový klient, který se připojí dostane jednak svůj fingerprint, ale i fingerprinty ostatních účastníků. To mu umožní získat pointery na ostatní peery a pak už pouze inicializuje přímou konexi.

FMS 3.6 - P2P using RTMFP

BudoucĂ­ verze FMS - P2P using RTMFP

Vytvářejte P2P aplikace již nyní

Zprvu se může zdát, že v tuto chvíli neexistuje žádná možnost jak tyto aplikace vytvářet. K dispozici není žadný server podporující RTMFP a tím pádem není ani kde začít.
Protože připravovaná verze FMS ještě není k dispozici, uvolnilo Adobe před nedávnem vývojářům službu zvanou Adobe Stratus. Díky Stratusu tak může už každý v tuto chvíli začít vyvíjet P2P aplikace. Stratus je bezplatná hostovaná služba Adobe a slouží k propojení peerů.
Sám jsem si se Stratusem v poslední době hrál a pokusím se v budoucnu přinést tutorial.

Veřejné demo Stratus služby (otevřete si na více PC a videotelefonujte). Sám sem zvědavý kdo první vytvoří Flash/AIR ala Skype aplikaci. Vyzkoušejte zde: http://labs.adobe.com/technologies/stratus/samples/

P2P Stratus demo

P2P Stratus demo

Pokud chcete začít již teď, potřebujete získat Developer Key od Adobe.

VĂ­ce o sluĹľbe zde: http://labs.adobe.com/wiki/index.php/Stratus

CoCoMo - Vytvářejte Real-time Social aplikace bez použití Flash Media Serveru

Common Collaboration Model (CoCoMo) je nová bezplatná služba hostovaná Adobe určená pro vývojáře realtime social aplikací jako je Videochat, VoIP, realtime sdílení souborů apod. Základ hostingu tvoří robusní CDN veřejné služby Acrobat.com, která nabízí ConnectNow (free online videochat pro spolupráci a sdílení plochy), Share (pro sdílení souborů), Buzzword (Word processor v prohlížeči nebo jako AIR aplikace), Create PDF (pro jednoduché vytvoření PDF z dokumentu Word Doc, Excel, PowerPoint) a My Files (úschovna vašich souborů).

V tuto chvíli se služba nachazí ve stádiu Public-beta. Pro začátek je potřeba získat účet a SDK na webu https://cocomo.acrobat.com/. Následně si knihovnu naimportujete do Flex Builderu a můžete začít. V podstatě se jedná o sadu komponent a tříd, které ve svém softwaru použijete libovolným způsobem a s vaší grafikou.

Více zde: http://labs.adobe.com/technologies/cocomo/

Pokud by někomu z vás vrtala hlavou strategie Adobe - proč CoCoMo, když FMS apod. - doporučuju článek:http://blogs.adobe.com/collabmethods/2008/11/of_referees_and_wrenches_cocom.html

V budoucnu určitě přinesu i tutoriály týkající se CoCoMo - to byl taky jeden z důvodů proč jsem přesunul svůj blog na doménu FlashRealtime.com, což je téma, kterému se dlouhodobě věnuji.

Facebook comments:

2 Comments »

  1. P2P vypadá na vážně skvělou vychytávku, už se všichni těšíme až to bude v media serveru.

    Jak to bude s využitím těchto fcí a Adobe AIR? Půjde z desktopové aplikace přistupovat takto na server?

    Comment by Jakub B. — December 1, 2008 @ 10:17 am

  2. Jasan, vzdycky vsechno co se tyka Flexu ci Flashe se tyka i AIRu, je to jedna Platforma.

    P2P se pokusim vysvetlit velmi brzy a uvedu priklad jak si ty aplikace zacit vytvaret jiz ted bez pouziti noveho FMS, ale s pouzitim sluzby STRATUS.

    Comment by tom — December 1, 2008 @ 10:47 pm

RSS feed for comments on this post. / TrackBack URL

Leave a comment

Comment moderation is enabled. Your comment may take some time to appear.