News

M-Link 19.4 Overview

3rd April 2025 M-Link

M-Link 19.4 provides a significant update for  M-Link User Server,  M-Link MU Server, M-Link MU Gateway and M-Link Edge products.   It does not provide M-Link IRC Gateway, which remains M-Link 17.0 only.

M-Link 19.4 is  fully supported by Isode for production deployment.

M-Link 19.4 provides most of the functionality needed by most new customers and most customers using M-Link 17.0.    This includes upgrade from M-Link 17.0.  There are a few features, listed below, that were present in 17.0 and may be needed.

These features will be added incrementally to M-Link 19.4 in a series of updates.  This contrasts to most other  Isode releases where updates are “bug fix only”.    Once these features are added, M-Link 19.4 will become bug fix only.

Some other capabilities of M-Link 17.0 not present in M-Link 19.4 are described here.   Some of these capabilities will be added to future M-Link releases.

 

M-Link 19.4  – Features being added

 The following enhancements are will be included in updates to M-Link 19.4:

  • CSR Generation. Management of PKI identities and certificates in R19.4 is currently done with PEM files, which is pragmatic. Use of PKCS#10 Certificate Signing Requests is a more elegant approach that enables operational integration with deployed Certification Authorities.
  • Certificate checking using CRL (Certificate Revocation List) and OCSP (Online Certificate Status Protocol).
  • Complete implementation of XEP-0163 Personal Eventing Protocol (PEP).   Most of XEP-0163  is provided in the current update.
  • The current 19.4 update supports single administrator with password managed by M-Link. This will be extended to:
    • Option for multiple administrators
    • Option for administrators specified and authenticated by LDAP
    • Administrators with per-domain administration rights
  • XEP-0198 Stream Management support for C2S (currently supported  in S2S and XEP-0361)
  • XEP-0237 Roster versioning
  • C2S SASL EXTERNAL to provide client strong authentication
  • SASL GSSAPI support to enable client authentication using Windows SSO

 

Benefits of M-Link 19.4

M-Link 19.4 User Server and M-Link 19.4 MU Server offer significant benefits over M-Link 17.0:

  1. M-Link 19.4 is fully Web managed, and M-Link Console is no longer used. This is the most visible difference relative to M-Link 17.0. This enables management without installing anything on the management client.
  2. Flexible link handling:
    1. Multiple links may be established with a peer. These links may be prioritized, so that for example a SATCOM link will be used by default with fall back to HF in the event of primary link failure.  Fall forward is also supported, so that the SATCOM link is monitored and traffic will revert when it becomes available again.
    2. Automatic closure of idle remote peer sessions after configurable period.
    3. Support for inbound only links, primarily to support Icon-Topo.
    4. “Whitespace pings” to X2X (XEP-0361) sessions to improve failover after connectivity failures.
  3. The session monitoring improvements:
    1. Shows sessions of each type (C2S, S2S, X2X (XEP-0361), GCXP (M-Link Edge), and XEP-0365 (SLEP)) with information on direction and authentication
    2. Enable monitoring for selected sessions to show traffic, including ability to monitor session initialization.
    3. Statistics for sessions, including volume of data, and number of stanzas.
    4. Peer statistics, providing summary information and number of sessions for each peer.
    5. Statistics for the whole server, giving session information for the whole server.
  4. Provide metrics on activity to enable us to feed them into a Prometheus database using the statsd protocol. Prometheus is a widely used time series database used to store metrics: https://prometheus.io/. Grafana is a graphing front end often used with Prometheus:  https://grafana.com/.  Grafana provides dashboards to present information.  Isode will make available sample Grafana dashboards on request to evaluators and customers.  Metrics that can be presented include:
    1. Stanza count and rate for each peer
    2. Number of bytes sent and received for each link
    3. Number of sessions (C2S; S2S; GCXP; X2X; and XEP-0365 (SLEP))
    4. Message queue size for peers – important for low bandwidth links
    5. Message latency for each peer – important for high latency links
  5. Provides HTTP Upload (XEP-0363) that enables a client to upload a file to the M-Link server and then share using URL. This is supported by Swift 6.0 to provide file sharing.
  6. Enhanced FMUC (XEP-0289 Federated MUC) capabilities
    1. Use of the fallback capabilities of M-Link 19.4 to provide improved resilience
    2. Improved detection of failed communication between links, using (lack of) XEP-0198 acknowledgements to determine link failure and sending regular pings so that failure is detected when there is no user traffic.
    3. Support Clustering for FMUC
  7. Improved Cluster Management, supporting clustering of data, configuration and archives.
  8. Improved Archive Management, supporting searching, import/export, backup and pruning.
  9. PDF/A archiving is provided by a command line tool, packaged separately, which connects to the M-Link archive server. PDF/A is a format suitable for long term archive of data.  PDF/A archive is required by NATO.