Yes, this is the news – the OpenSIPS major version 3.2, beta release, is out. We build a plan for it, an ambitions plan, trying to cover a lot of items, maybe too many for a single year of work.
Still, the community feedback is an essential way to keep us on tracks, when comes to the items and the priorities for the next release – all our plans do take into consideration such feedback (see the poll results).
So, we had the plan, we had the feedback, but let’s see the result, the OpenSIPS 3.2 LTS, and its most relevant news in the Clustering, Cloud and Geo-Distribution area.
The Clustering engine in OpenSIPS 3.2 comes with several valuable enhancements, both for controlling the cluster topology and also addressing security aspects (like encryption). See this nice blog post for more and the “proto_bins” module docs.
Clustering more modules
The PUA (Presence User Agent) module, which handles the publishing of data from OpenSIPS within (like for BLF support), has now clustering support, see here the detailed description.
We have here a collection of features very useful if you plan to run OpenSIPS in different clouds / distributed systems.
A new module named rtp_relay has been added in OpenSIPS that provides an interface for engaging different RTP relays servers (such as RTPProxy or RTPEngine) in a unified, simple manner. It also provides capabilities for RTP failover and/or balancing by migrating/re-anchoring the RTP call to a different RTP server.
This is a new module that is able to export OpenSIPS Statistics to your Prometheus monitoring system using the new native prometheus in OpenSIPS. This support is ideal when you need to monitor a cluster of OpenSIPS’s
The module implements a new transport backend for the Event Interface that allows publishing events to Apache Kafka, so you can send events in distributed systems.. More information is available in the module’s documentation page or this blog post.
The 3.2 release comes with an extensive effort for re-working the TLS/SSL support in OpenSIPS, mainly because of the issues we have with openssl library.
So, the wolfssl was brought in as a replacement / alternative for the TLS/SSL support everywhere in OpenSIPS (SIP TLS, WSS, mysql, BIN, and other).
Also synchronous TLS communication is now available when the new tls_async module parameter is enabled. This makes all connections with other TLS SIP endpoints asynchronous, increasing the throughput of OpenSIPS 3.2.
The 3.2 makes the first official steps in the IMS direction, by adding the support the DIAMERTER module, for accounting and authentication in SIP.
Using the freeDiameter libraries, the new “aaa_diameter” OpenSIPS module is used for the moment to provide: Digest Authentication (via Diameter SIP Application “MAR” requests) and Accounting (via the standard Diameter Accounting application). See the module docs for more info!
As a continuation of the work started in OpenSIPS 3.1, the B2B logic module has been restructured in order to drop the XML-driven logic in favor of OpenSIPS scripting with dedicated B2B routes and functions. For more information check this blog post or the new B2B tutorial.
Tracing to logs – tracing can now be done to a file or to syslog, by using the
syslog trace_id types, a very handy feature if you need a quick and simple traffic tracing.
MI from script – a new mi_script module allows you to run MI commands from OpenSIPS script, a long time requested feature 🙂
Statistics series – provides you the ability of creating custom statistics that gather information for a specific time window (as opposed to the entire runtime).
There are many many other changes with this release, and you can read about all of them in this detailed listing.
As this 3.2 major release is also an LTS release, one of the longest-lived versions, the 2.4 major will got to an end. In a couple of weeks, the EOL for 2.4 will be announced.