Login | Register

About

About -> Available Versions -> 3.5.x Releases -> Release 3.5.0 Overview

OpenSIPS 3.5 philosophy

Bits and pieces of the IMS (IP Multimedia Subsystem) topic were part of the previous OpenSIPS release, but this 3.5 fully focused on the IMS part. Considering the traction and need of IMS solutions, the implementation of a consistent and large IMS support in OpenSIPS was a mandatory step in order to answer to the needs of the industry.

The IMS topic is a large one, transcending the SIP protocol and the scope of OpenSIPS. So, the OpenSIPS 3.5 worked out the parts of the IMS ecosystem which are based or related to SIP, of course.


IMS

The IMS topic is a very large and complex one. And the goal here was to design and implement an IMS support that is truly able to provide solutions for the industry. So, a quite extensive stage of exploring, understanding and designing on the IMS ecosystem was required in a first stage.
This work was undertaken by the IMS OpenSIPS Working Group (IMS OWG), a gathering of people with common interst in IMS, working together to draft, design and implement the IMS support in OpenSIPS.
The IMS Working group compiled a Scope Of Work, which helped in laying down the actual requirements. The group decision was to tackle, at this first stage, the CSCF components, together with its interfaces.
As results, this translated in work across several modules along with the addition of new specialized modules.

AKA digest authentication

Present in the S-CSCF, the AKA authentication mechanism (RFC 3310) is implemented by the new AUTH_AKA module. Its complex interaction through the Cx/Dx Diameter interface is provided by the new AKA_AV_DIAMETER module, responsible for fetching and managing the authentication vectors required by AKA.

IPSEC support

Present in the P-CSCF, the new PROTO_IPSEC is a key IMS functionality, needed to establish IPSec tunnels (towards the mobile end points) according to the TS 33.203 specifications.

IMS interfaces

All the CSCF components are heavily interconnected with other IMS sub-systems via DIAMETER or HTTP/2 protocols. The existing AAA_DIAMETER support was enhanced to support async operations, as well as with server mode support and better handing raw binary data. All key ingredients for the IMS solutions.
OpenSIPS also offers the HTTP/2 as IMS interfacing protocol, which is mandatory in the 5G SBI interface.

Presence support

Two new modules, the PUA_REGINFO and PRESENCE_REGINFO are providing publisher and distribution capabilities for the "reg"-events according to RFC 3680. This event is important in the IMS system, to monitor the status of the mobile devices.

Configurations

All the OpenSIPS CSCF configuration files have been consolidated into the OpenSIPS IMS Community Edition project, offering a comprehensive IMS solution seamlessly integrated with the Docker Open5GS Core network.


SQL operations

The old APVOPS module was obsoleted as most of the AVP related operations can be done now directly at script level, without the need of dedicated functions. The DB part that was left from the module was enhanced and repacked as the SQLOPS module - a module to provide generic complex SQL capabilities:

  • specialized INSERT/SELECT/UPDATE/DELETE functions, with JSON encoded parameters, that are directly using the internal SQL API
  • ability to operate / query via all existing DB backends
  • support for prepared statements if the DB backends supports.
  • dedicated query function to return a single row, so not depending on AVPs for simple queries.

Launch Darkly

This new module implements support for the Launch Darkly feature management cloud. The module provide the connectivity to the cloud and the ability to query for feature flags.


Message Queue

A new MQUEUE module to provide a generic message queue system in shared memory for inter-process communication using the config file. One example of usage is to send time consuming operations to one or several timer processes that consumes items in the queue, without affecting SIP message handling in the socket-listening process.


Miscellaneous but important

Enhanced SIPREC support

The SIPREC module received several enhancements:

  • clustering support, with real time replication, to implement High-Availability and/or Geo-Distributed Recording solutions
  • more robust SIP and media support, to handle re-INVITEs / UPDATES from SRS
  • enhanced XML data with more and also customizable data to be passed to SRS

Enhanced STIR/SHAKEN support

The STIR/SHAKEN module also received several enhancements:

  • ability to deal with multiple IDENTITY headers, based on the passport type. This allows both STIR and RCD oriented headers.
  • ability to append the P-Identity-Bypass header field, in accordance with FFT/APNF regulations

OpenSIPS 3.5 release in numbers

  • 9 new modules
  • 27 enhanced modules
  • 128 modified modules
  • 748 commits
  • 91823 lines added, 40658 lines removed as full scope of work (effective diff: 43704++, 21068--)
  • 23 contributors
  • 200 MB base GIT repo size (900 MB full size, after cloning lib WolfSSL)

Page last modified on December 17, 2024, at 03:42 PM