Comparison of instant messaging protocols

From Wikipedia, the free encyclopedia
Jump to: navigation, search

Basic general information about the protocols: creator, version, amongst others.

Protocol Creator First public release date License Identity (not inc. alias) Asynchronous message relaying Transport Layer Security Unlimited number of contacts Bulletins to all contacts One-to-many routing 4 Spam protection Group, channel or conference support Audio/VoIP support Webcam/Video Batch file sharing Media synchronisation
Gadu-Gadu GG Network 2000 Jul 17 Proprietary Unique number
e.g. 12345678
Yes Yes Yes No Centralistic Yes 5 (simple) Yes Yes Yes Yes No
IRC Jarkko Oikarinen 1988 Aug Open standard Nickname!Username@hostname
(or "hostmask")
e.g. user!~usr@a.b.com1
Yes, but via a memo system that

differs from the main system

Yes, depending on individual server support No3 No Simplistic multicast Medium Yes (everyone, multiple simultaneous, any size) No No No No
Windows Messenger service Microsoft 1990 Proprietary (Discontinued) NetBIOS Yes No Yes Yes Yes No No No No No No
MSNP (Windows Live Messenger, etc.) Microsoft 1999 Jul Proprietary Email address (Microsoft account) Yes No Only for certified robots No Centralistic Yes Yes Yes Yes Yes Yes
MTProto (Telegram) Telegram Messenger LLP 2013 Aug Open standard Phone number (e.g. +1234567890) Yes Yes Yes No Yes No Yes Yes, voice messages No Yes Yes
(Mumble) Thorvald Natvig 1999 Jul Open standard ? Yes Yes Only for certified robots No Centralistic Yes Yes Yes Yes Yes No
OSCAR (AIM, ICQ) AOL 1997 Proprietary Username, Email Address or UIN
e.g. 12345678
Yes Yes (Aim Pro, Aim Lite) No No Centralistic client-based Yes (Multiple, simultaneous) Yes Yes Yes No
RVP (Windows Messenger, etc.) Microsoft 1997 Mar Proprietary (Discontinued) Windows Active Directory Login No No ? No Centralistic None No ? ? No No
SIP/SIMPLE IETF 2002 Dec Open standard user@hostname Yes Yes Yes Yes No Medium ? Yes Yes Yes No
Steam Friends Valve Corporation 2003 Sep 12 Proprietary SteamID/Username or Unique Number Yes Proprietary No, although rising Yes ? No Yes Yes No No No
Skype Skype 2003 Aug Proprietary Username Yes Proprietary No No ? ? Yes Yes Yes Yes No
TOC2 AOL 2005 Sep Proprietary (Discontinued) Username or UIN
e.g. 12345678
Yes No No No Centralistic No paying members only ? ? Partial ?
XMPP/Jingle (Google Talk) Jeremie Miller, standardized via IETF 1999 Jan Open standard Jabber ID (JID)
e.g. usr@a.b.c/home2
Yes Yes Yes Yes Unicast lists Several Standardized Types Optional Yes Yes Yes No
YMSG (Yahoo! Messenger) Yahoo! 1998, March 9 Proprietary Username Yes No No Yes Centralistic Yes Yes Yes Yes Yes No
Zephyr Notification Service MIT 1987 Open standard Kerberos principal
e.g. user@ATHENA.MIT.EDU
Yes No Yes Yes Yes No Yes No No No No

Note 1: In ~usr@a.b.com, the a.b.com part is known as the "hostmask" and can either be the server being connected from or a "cloak" granted by the server administrator; a more realistic example is ~myname@myisp.example.com. The tilde generally indicates that the username provided by the IRC client on signon was not verified with the ident service.

Note 2: In usr@a.b.c/home, the home part is a "resource", which distinguishes the same user when logged in from multiple locations, possibly simultaneously; a more realistic example is user@xmppserver.example.com/home

Note 3: Scalability issue: The protocol gets increasingly inefficient with the number of contacts.[1][2]

Note 4: One-to-many/many-to-many communications primarily comprise presence information, publish/subscribe and groupchat distribution. Some technologies have the ability to distribute data by multicast, avoiding bottlenecks on the sending side caused by the number of recipients. Efficient distribution of presence is currently however a technological scalability issue for both XMPP and SIP/SIMPLE.

Note 5: There have been reports from users that the antispam filter is used to censor links to other IM programs and some websites.

See also[edit]

References[edit]

  1. ^ RFC 1324, D. Reed, 1992. 2.5.1, Size
  2. ^ Functionality provided by systems for synchronous conferencing, C.v. Loesch, 1992. 1.2.1 Growth