|
On this page you'll find a general overview of our XMPP server, M-Link. On other pages you'll find information on M-Link's use of Directory for tasks including configuration and authentication, security features, support for wide and local area clustering (running a single domain on multiple servers), boundary controls using M-Link Edge, management tools and standards conformance.
M-Link is Isode's Instant Messaging and Presence server based on the XMPP (eXtensible Messaging and Presence Protocol) standard. XMPP is the Open Standard for Instant Messaging and Presence, formalized by the IETF in 2002-2004, and continuously extended through the standards process of the XMPP Standards Foundation. You can read more about Isode's strategy in this area in the whitepaper [Isode's Presence, Real Time Messaging and XMPP Strategy]. Scalability & PerformanceM-Link is used in both specialised deployments where security, reliability and special functionality are vital and in large public deployments where responsiveness, performance and scalability are paramount. The world's first public XMPP deployment (jabber.org) has recently migrated to M-Link. Jabber.org is still one of the largest XMPP services with over 300,000 users. Multi-User Chat (MUC)M-Link provides Multi-User Chat as part of the M-Link server. M-Link supports almost all of the capabilities set out in XEP 0045 (Multi-User Chat). This includes:
M-Link also supports Security Label based controls of MUC, described in the Isode white paper [Using Security Labels to Control Message Flow in XMPP Services]. Creation of temporary MUC rooms may be restricted to local users. Permanent MUC groups are configured in the directory and may be managed by either XMPP or by the directory. The latter approach enables external control of MUC groups. The screenshot below (click to expand) shows the MUC room configured in the directory using Isode's Sodium directory data management tool. Personal Eventing (PEP)XMPP includes a Publish/Subscribe capability to enable flexible sharing of data. Personal Eventing is a subset of this, which allows a user to publish and share data, and in particular "extended presence" information. Personal Eventing is expected to be the basis of important XMPP developments, and support is starting to appear in XMPP clients and applications. Link Compression/Roster VersioningM-Link provides capabilities to optimize for low bandwidth links. In particular link compression is supported (XEP 0138), and Roster Versioning (XEP 0237) so that when a client reconnects, the roster is only downloaded if it has changed. The issues confronting those looking to operate instant messaging and presence services over low-bandwidth links are discussed in the Isode whitepaper [Operating XMPP over Radio and Satellite Networks]. The M-Link Archiving ServerFor many services it is important to record all traffic, and M-Link achieves this by use of an Archive Server which archives messages to files, organized by user and MUC room. Files are closed either when there is a gap in message flow or when the file reaches a configured size. The archive files themselves are the XML representation of the messages exchanged. These can be processed in any way desired. Isode provides tools (as example scripts) to render the archives in HTML, so that Web access can be provided to archived messages. An M-Link cluster of one or more M-Link servers will use a single Archive server. This model is important, as it means that all messages are archived in one place, and you do not need to search logs associated with each server in order to find messages. When archiving is used, the M-Link server will simply switch a copy of all traffic to be archived to the archive server. Archiving can be configured independently for 1:1 messages and MUC (multi-user chat) messages. MigrationM-Link enables easy migration from other servers by use of XEP-0227 (Portable Import/Export Format for XMPP-IM Servers). An import tool enables use of XEP-0227 files to set up user configuration, and in particular roster import. Rosters can also be populated from the Directory, ensuring that within a deployment users have immediate access to rosters which reflect their communications needs. Ad Hoc commandsM-Link supports Ad Hoc commands as a mechanism to provide a number of services. M-Link uses ad hoc commands to give user access to configuration options, as shown below in this screenshot of the Psi XMPP client. M-Link also uses ad hoc commands to perform various management tasks. These are available to clients configured as server managers (by membership of the manager group). This includes some commands standardized in XEP-0133, and additional commands specific to M-Link. XEP-0133 commands supported are: add, delete, end user session, disable, enable, change password, get user stats, number of online users, list active users, send announcement. Isode commands include: rename user, list s2s sessions, s2s stats, cluster info (membership), dump router table, user config. Integration with non-XMPP IM ServicesM-Link support XEP-0114 (Jabber Component Protocol) that allows integrated access to a local and remote services. A common use is to provide connections to non-XMPP instant messaging services (such as AIM, ICQ, Windows Live/MSN and Yahoo Instant Messenger) by use of a compatible XMPP Gateway, such as the JBuddy XMPP Gateway from Zion Software, or one of a number of open source gateways such as Spectrum.im. Peering ControlsM-Link provides a number of peering controls, controlling what is sent to and received from other XMPP peer servers. Key controls are:
These controls are described in more details in the M-Link Security and M-Link Edge pages. Standards ConformanceDetails of M-Link’s conformance to open standards is given on the page on M-Link Standards Conformance. AvailabilityM-Link is available on Solaris, Windows and Linux. More details on supported platforms and versions can be found here.
|
|
| Copyright © 2010 Isode | sitemap privacy feedback
|