9.9.06

Instant Messaging

Instant messaging (IM) se stává (nebo už se stal) nedílnou součástí internetové komunikace. Kdo se dorozumívá s ostatními jen emailem (či přes BBS), je dinosaurus. Chtěl bych tu shrnout své poznatky o IM protokolech, s kterými jsem doposud měl možnost pracovat. Takový shrnutí, co se mi líbilo, nelíbilo apod.
Nejprve info, co je to vlastně protokol. Nejde o žádnej kus papíru, ale zjednodušeně o sadu nějakých příkazů a zpráv, které mezi sebou zasílají různé programy. Tyto příkazy se liší v závislosti na typu programu.
Takže shrnutí několika nejpoužívanějších IM protokolů (= typů zpráv zasílaných mezi IM klienty):

ICQ - OSCAR
ICQ (zkratka pro "I Seek You") patří bezesporu minimálně u nás k nejrozšířenějším IM protokolům. Správně bych neměl psát ICQ protokol, ale OSCAR protokol. Jenže když laikovi řeknete OSCAR, představí si tak možná bývalý název Vodafone. :-) Protokol vyvinula společnost Mirabilis, tu koupila AOL (která už měla IM protokol stejného jména, ale OSCAR se rozšířil víc, tak proč toho nevyužít). Největším problémem protokolu je, že je uzavřený a centralizovaný.
Uzavřenost je problém - pokud chcete používat jiného ICQ klienta, než toho originálního od AOL, máte oficiálně smůlu. Vznikla však spousta IM klientů podporující ICQ/OSCAR. Dosaženo toho bylo sledováním síťového provozu ICQ klientů a určitě i reverzním inženýrstvím, tím byla vytvořena neoficiální specifikace tohoto protokolu (např. zde). AOL toto samozřejmě dvakrát rádo nevidí, ale tiše to trpí. Většina uživatelů totiž originálního ICQ klienta stejně používá. Problém nastane, pokud AOL změní protokol. Jejich klient se tomu přizpůsobí, ostatní s tím mohou mít problémy; pak se rychle vydávají patche a záplaty. Není to dvakrát pohodlné, ale co se dá dělat.
Centralizovanost spočívá v existenci "jednoho" serveru (ono jich je fyzicky víc, ale dělí se o stejné doménové jméno) a databáze uživatelů a jejich kontaktů u jedné společnosti. Pokud se objeví problém u serverů AOL (jakože už se to párkrát stalo), máte smůlu a nepřipojíte se.
OSCAR protokol si AOL bude hlídat asi pořádně, protože jeho uzavřenost jim slibuje zisky (velké, protože ICQ je nejrozšířenější IM) z reklamy, která se objevuje v originálních ICQ klientech.
ICQ protokol se stále inovuje. V nejnovější verzi je možné krom zasílání zpráv i posílat SMS, soubory, povídat si přes mikrofon, pořádat videokonference a také hrát hry. Nevím sice, jestli je to přímo součást ICQ protokolu nebo jen ICQ klienta, osobně si však myslím, že už je to až moc přeplácané.
Nevýhodou je, že OSCAR nepodporuje šifrování (nanejvýš zasílání hesla při přihlašování).

MSNP
MSNP je protokol, který využívá program MSN společnosti Microsoft. Podobně jako OSCAR i MSNP je protokol uzavřený a centralizovaný. S tímto protokolem nemám osobně moc zkušeností, koneckonců kontakty v něm mám jen 3. V jiných zemích (zvlášť USA) je dost rozšířený, hlavně díky integraci do Windows XP.
Nabízí obdobné funkce jako ICQ (kromě her), oproti ICQ myslím spolehlivější přenos souborů.

Skype
Skype byl původně prográmek pro VoIP (Voice over IP), vyvinul se však v pokročilého IM klienta, ve kterém je možno psát zprávy, pořádat skupinové konference, zasílat soubory atd. Také umožňuje velmi levně volat do pevných sítí kdekoliv na světě. Je také centralizovaný (i když v jeho případě je to možná výhoda) a uzavřený. Ohledně uzavřenosti a zároveň centralizovanosti Skype byly vedeny dlouhé debaty ohledně bezpečnosti - nikdo nevěděl, kdo na cestě může naslouchat, jestli se neodesílají nějaké tajné informace apod. Skype byl před pár týdny prolomen, což umožní integraci protokolu do jiných IM klientů.
Skype vlastní společnost eBay. Jak bylo řečeno, jde o centralizovanou síť, bohužel Skype má jednu nepěknou vlastnost a to používání tzv. supernodů. V podstatě jde o to, že pokud máte veřejnou IP adresu, může být váš počítač používán jako průchozí uzel pro komunikaci jiných uzlů. Což může být dost nepříjemné v případě nízké šířky pásma nebo platbou za přenesená data. Na Rootu bylo shrnuto 10 důvodů, proč nepoužívat Skype. S většinou souhlasím, na druhou stranu musím uznat, že neexistuje jiný VoIP komunikátor, který se protlačí přes firewally a hlavně NAT (což je i můj případ). Proč to umí je způsobeno právě centralizací a existencí supernodů; prolomení Skype protokolu se povedlo čínským programátorům vytvořit klienta, co supernodů nevyužívá, bohužel to Skype síť oslabuje.

Jabber
Jabber je soubor více protokolů založených na XML. Jeho hlavní základnou je protokol XMPP. Jde o otevřený protokol (RFC 3920), tudíž je možnost jeho implementace do IM klientů bezproblémová. Jabber je decentralizovaný, takže nehrozí, že byste v případě pádu jednoho Jabber serveru nemohli komunikovat dále - připojíte se na jiný Jabber server a jste opět spojeni. Není problém mít v klientu více Jabber účtů zároveň; v případě, že na lokální síti dojde k výpadku připojení internetu, stále můžete komunikovat na této síti s ostatními. Jabber je zabezpečený server, není zde tak snadný odposlech jako třeba u ICQ. Velkou výhodou protokolu je jeho pružnost. Naprogramovány jsou tzv. transporty, které umožňují do vašeho seznamu jabber kontaktů přidat i ICQ, MSN a jiné kontakty. Pravda, přenos pak jde přes další uzel (u ICQ: já - jabber server - icq server - dotyčný) a neumožňuje to úplně všechny možnosti, jak když používáte přímo klienta pro daný protokol, ale ta možnost transportů tu je. Také existují SMS transporty, kdy můžete zasílat SMS pouhým napsáním zprávy do okýnka kontaktu, můžete dostávat výpisy, co právě jede v televizi, jaké je počasí, externí úložiště souborů, samozřejmostí jsou multichaty atd. Více informací třeba na jabber.cz. Chystá se už i přenos hlasu přes XMPP protokol, tento projekt se nazývá Google Talk. Jabber má prostě budoucnost, jeho rozšíření brání relativně vyšší náročnost a potřeba nastavování, než u ICQ klientů.

Existují ještě jiné IM protokoly, s těmi však nemám zkušenost. Jmenovitě např. Gadu Gadu nebo Yahoo. Osobně preferuji Jabber, bohužel však v laické veřejnosti je u nás nejčastějí ICQ a tomu se musím přizpůsobit. Jinak bych musel používat ten email. :-)

Žádné komentáře: