Licensing Modes
A license is an authorization given to the end-user to use the application legally and specifies the terms of use. License enforcement is implemented on the SBC to ensure that licensed functionality is restricted to the amount of sessions or licensed features purchased.
In local and network licensing modes, certain features that were previously treated as instance-based (on/off) licenses, are now considered as count-based licenses. A count-based license can be dynamically floated and shared among the SBC in a network licensing mode. It also allows the enforcement of the number of sessions purchased in local and network licensing modes.
The SBC provides three licensing modes:
- Legacy Mode: The licenses are xml-based and keyed to a particular SBC. The license files are installed from the EMS or EMA user interface.
Local Mode: The licenses are xml-based offering additional data such as purchase order information. The licenses are keyed to a particular SBC and the license files are installed from the EMS or EMA user interface, or from the new CLI interface.
Network Mode: Licenses are pooled centrally in the SLS server which is co-located with the EMS. Licenses are keyed to a particular EMS pair and installed directly at the EMS. These licenses can float between SBCs in the network based on the demand. Each SBC configures a profile of licenses to pull from the SLS and can request and release counted licenses in-line with traffic demand. Instance based licenses, once retrieved from the SLS are kept at the SBC until the licenses are deleted using manual configuration at the SBC or if the SBC instance is taken out of service.
SBC Session License for Remote PSX Access
This feature implements a software license to restrict usage of the external PSX from the Sonus SBC. When the SBC is configured for local or network-wide licensing the customer must have purchased and applied the SBC-PSX-RTU license before call processing with an external PSX is allowed. The SBC-PSX-RTU is count-based license.
MRF Session License
In the Microservices SBC architecture, the S-SBC is enhanced to support an external Media Resource Function (MRF) using RFC4117 Session Initiation Protocol (SIP) interaction when transcoding is required. A new session license SBC-MRF-RTU is introduced to support external MRF transcoding and it is count-based.
For every media session, an SBC-MRF-RTU session license plus a base SIP session license is required for external MRF transcoding. The MRF can be introduced to the call flow and subsequently removed when it is determined from the peer's response that transcoding is not required. Therefore, the SBC-MRF-RTU license is checked for availability when sessions are sent towards the MRF and consumed (counted) only when the answer from the MRF indicates that transcoding is applied.
The system supports a countable license SBC-MRF-RTU in the range of 0-x units:
- In a local license mode, x is the MRF transcode units purchased by the user and is part of the xml bundle that is applied directly at the SBC. When the local license mode is zero, it indicates that no license is purchased.
- In a network license mode, x is limited by the number of units available at the Site License Server (SLS), the maximum count configured with the SBC-MRF-RTU in the required license table or any basic platform restriction. For example, Call Admission Control (CAC) or media profile configuration.
License Encoded with Fingerprint Capability
The SBC-MRF-RTU license is restricted and encoded with the fingerprint capability:
- When the SBC-MRF-RTU license is generated for a local license deployment, the license is encoded with the fingerprint of the SBC (or SBCs in the case of HA system) and the license is restricted to the SBC that matches the fingerprint.
- When the SBC-MRF-RTU license is generated for a network license deployment, the license is encoded with the fingerprint of the SLSs (Active and Standby) and the license is restricted to the SLS systems that matches the fingerprint.
Applicability
- The SBC-MRF-RTU license is only applicable to S-SBC on Distributed-SBC architecture using local or network-wide licensing. Without this license installed, the user cannot transcode any sessions using an external MRF.
- The SBC-MRF-RTU license is not applicable apply to the SBC 1000/2000, 5000, 7000 and GSX 9000 platforms.
- SBC-MRF-RTU license is not a substitute for the SBC-RTU session license. Both the licenses are required to allow a session towards the MRF.
License Floating
The SBC Core uses a license floating technique to enable the sharing of a limited number of licenses among a number of network devices. The SBC Core supports license floating when it is deployed using network-wide licensing with a centralized Site License Server (SLS) distributing licenses to the SBCs connected to it.
Prerequisites
- The S-SBC is configured for a network-wide license mode.
- The SBC-MRF-RTU license is configured in the required license table.
License Floating Functionality
- The SBC attempts to retrieve a single license from the SLS for SBC-MRF-RTU when it is configured in the required license table with a minimum count of one (default).
- When the minimum count associated with the SBC-MRF-RTU is one, the SBC returns licenses back to the SLS as demanded for the associated license drops. The SBC retains one license from the SLS when the SBC has 0 active call that require the license.
- When the minimum count associated with the SBC-MRF-RTU license is more than one, the SBC attempts to retrieve the configured number of licenses from the SLS.
- When the minimum count associated with the SBC-MRF-RTU license cannot be retrieved, but some license count is available, the SBC allows sessions that uses the license (limited by the amount retrieved) and periodically raises a trap to indicate that the SBC is operating below the configured minimum count.
- When the minimum count is updated for the SBC-MRF-RTU license on a system where the license is already in use, the SBC requests the delta between the minimum license count and the licenses already retrieved from the SLS. If the licenses already retrieved are greater than the configured minimum, then no extra licenses are requested.
- When the minimum count associated with the SBC-MRF-RTU license is more than one, the SBC retains the configured number of licenses locally even when no sessions require the licenses.
- When the SBC-MRF-RTU license is configured in the required license table, the maximum license count is set to unlimited by default. The SBC continues to request licenses from the SLS until the underlying platform constraints limit more sessions requiring the license (Example: congestion, configured CAC, media profile.) or the SLS license count associated with the license is reached.
- When a maximum license count of x is configured for the SBC-MRF-RTU license, the SBC does not retrieve more than x licenses from the SLS.
- When the maximum license count is modified for the SBC-MRF-RTU license. If the SBC is operating above the newly configured limit, the SBC does not retrieve any more licenses. The new sessions are allowed only after the number of licenses in use drops below the newly configured limit.
- One or more SBCs provisioned with the SBC-MRF-RTU license in the required license table requests and returns the licenses from the SLS in-line with demand for the license (call-rate that requires MRF transcoding). As the demand increases, the SBC allocates licenses. When the license request is outstanding, and more licenses are available at the SLS, the SBC allows new sessions requiring the license. As call rate drops, unused license counts must be returned to the central pool at the SLS.
License Deletion
There are two ways to delete a license:
- From the xml bundle at the CLI or EMA UI for a local license.
- From the Required License Table, in case of network licensing.
The license deletions are allowed:
- Local license bundle containing the SBC-MRF-RTU license is deleted through EMA/CLI regardless of the current license mode.
- When the SBC is configured with local license mode and the SBC-MRF-RTU license is deleted, the SBC does not allow transcoding.
- The SBC-MRF-RTU license name can be removed from the Required License Table regardless of the active mode of licensing configured at the system.
- When SBC-MRF-RTU license is removed from the required license table, it triggers an appropriate warning to the user along with a prompt, to ask if they wish to continue.
- When the SBC-MRF-RTU license is removed from the required license table, support for the licensed functionality is disabled system wide.
- When the SBC-MRF-RTU license is removed from the Required License table, all licenses retrieved to that point are released back to the Site License Server.
License Expiry
- In a local license mode - Once the SBC-MRF-RTU license is expired, the SBC treats the licensed functionality as disabled system wide. Any existing sessions that are active on expiry continues unimpaired.
- In a network license mode - Once the SBC-MRF-RTU license is expired, the SLS does not serve any more licenses to the SBC.