- 18 Hot IT Certifications for 2014
- CIOs Opting for IT Contractors Over Hiring Full-Time Staff
- 12 Best Free iOS 7 Holiday Shopping Apps
- For CMOs Big Data Can Lead to Big Profits
Network World - Businesses increasingly require real-time interaction among people, applications and devices that span many networks. Extensible Messaging and Presence Protocol offers a way to route context-sensitive data among a complex interconnection of nodes.
XMPP is an XML streaming protocol for presence and messaging routing. Recently ratified as an IETF standard, XMPP serves as the basis for the Jabber instant-messaging system and provides a secure but easily programmed language for linking diverse networks.
The core of XMPP routing is an internationalized logical addressing scheme that is best represented as node@domain/resource. In the Jabber IM system this scheme is referred to as the Jabber ID (JID). The domain portion can be looked up in the DNS, similarly to an e-mail address. As in Simple Mail Transfer Protocol, servers (the domain portion of an SMTP address) connect with one another on behalf of users (the node portion of an SMTP address). In XMPP, the node portion can denote an IM user, an application or a service. The resource portion is a connection identifier that lets a single user be logged on multiple times simultaneously.
When nodes connect to a server, they authenticate using credentials from the local directory system, specify a resource and tell to the server to announce their presence to subscribers (for example, the buddies on one user's roster). Servers find, connect and authenticate to one another, letting any node connected to the community talk to any other node regardless of their home server (domain), as long as no privacy or business rules are violated.
Each XMPP stanza is a chunk of XML structured data that is addressed to a JID. Each stanza type can be extended with any properly name-spaced XML structured data. The Jabber Software Foundation (JSF) acts as a standards body for these extensions, much like the World Wide Web Consortium standardizes Web formats. But any organization or set of trading partners also can decide on de facto formats as needed.
XMPP serves as a universal transport layer for XML structured data. It embeds presence and context sensitivity into that data, which lets the data be routed efficiently to the most appropriate resource.