XMLMap on Computing (4/4) - exploring XML
XMLMap on Computing
Instant Messaging and Peer-to-Peer Services
The second killer application of the Internet, after email, is instant messaging. XML shines here, too, with open protocols thta can be used for many purposes beyond text chat.
Instant Messaging and Presence Protocol
An IETF working group is chartered with defining protocols and data formats necessary to build an internet-scale end-user presence awareness, notification and instant messaging system.
Instant messaging differs from email primarily in that its primary focus is immediate end-user delivery. Presence information was readily accessible on internet-connected systems years ago; when a user had an open session to a well-known multi-user system, his friends and colleagues could easily tell where he was connected from and whether he was using his computer. Since that time, computing infrastructure has become increasingly distributed and a given user may be consistently available," but has no standard way to make this information known to her peers. This IETF working group will design a system to address this need.
The working group will develop an architecture for simple instant messaging and presence awareness/notification. It will specify how authentication, message integrity, encryption and access controls are integrated. It is desirable, but not required, for the working group to develop a solution that works well for awareness of and communication with entities other than human users.
IMPP will be split into Common Presence and Instant Messaging (CPIM) and Common Profile for Presence (CPP).
Jabber is an open XML protocol for the real-time exchange of messages and presence between any two points on the Internet. The first application of Jabber technology is an asynchronous, extensible instant messaging platform, and an IM network that offers functionality similar to legacy IM systems such as AIM, ICQ, MSN, and Yahoo. However, Jabber offers several advantages over legacy IM systems:
- Open -- the Jabber protocol is free, open, public, and easily understandable. Multiple open-source implementations exist for Jabber servers, clients, and development libraries.
- Extensible -- using the power of XML namespaces, anyone can extend the Jabber protocol for custom functionality; to maintain interoperability, common extensions are managed by the Jabber Software Foundation.
- Decentralized -- anyone can run their own Jabber server, enabling individuals and organizations to take control of their IM experience.
- Secure -- Any Jabber server may be isolated from the public Jabber network, many server implementations use SSL for client-server communications, and numerous clients support PGP/GPG for end-to-end encryption. More robust security using SASL and session keys is under development.
Jabber answers many needs for individuals and organizations alike. However, it is important to understand that Jabber doesn't solve all the world's problems. Specifically, Jabber is not:
- A universal chat client -- while there are Jabber clients for a wide range of computing platforms, they do not offer out-of-the-box interoperability like Trillian or GAIM; interoperability between Jabber and other systems is made possible by server-side "gateways" to the legacy IM systems.
- An automatic solution to interoperability -- some (but by no means all) Jabber servers offer interoperability with legacy IM systems through "gateways" that translate the Jabber protocol into legacy protocols; however, Jabber is not primarily focused on interoperability, because only the legacy IM systems themselves can make interoperability a reality.
- A single IM service or software company -- the Jabber community is not monolithic; instead, there exists a wide range of public and private Jabber servers, open-source projects, and software companies, all using the Jabber protocol to build real-time applications and services.
XML is not only useful for man-to-machine communication, but also for messaging between devices. Its platform-independence and low computing requirements make it a good fit for directories, internationalization information, devices, databases, and instant messaging.
Produced by Michael Claßen
Created: Apr 28, 2003
Revised: Apr 28, 2003