The SS7 load balancer terminates one or many M3UA IPSPs, SGPs or ASPs and load balance SCCP payloads based on SCCP GT or SCCP SSN. The engine also has the ability to perform Global Title Translation on the calling or called party addresses. This is ideal to have a single entry point for SIGTRAN traffic into a workload and distribute traffic across multiple SIGTRAN-based microservices.
Load balancers are most commonly coming as a part of the kubernetes cluster in a form of ingress controller or as part of the cloud infrastructure in various forms. While these perform perfectly for UDP/TCP/HTTP type of traffic, we sometimes need more telecom protocols aware load balancers to properly distribute the telecom control plane within a workload. Slicce load balancers come to fulfill this need when the generic load balancer of the infrastructure is not able to load balance a specific telecom protocol.
In particular and focus on SIGTRAN traffic, the SS7 Load balancer facilitate:
1. When an SS7 signaling message arrives at an SCCP router (or at a signaling point), it typically contains the destination Global Title (GT), which includes the address information for the service. The message also contains an SSN associated with the signaling function or service for which the message is intended.
2. SCCP performs Global Title Translation (GTT) to resolve the Global Title (GT) to an SSN. In the translation process, SCCP examines its translation tables to find out which SSN is associated with the given GT and then uses that SSN to route the traffic to the appropriate signaling point or application server.
3. Once the SSN is determined, the SCCP routing engine uses it to direct the message to the correct application server or signaling point in the network. The SSN essentially acts as a selector or indicator for a specific service or function within the signaling point.
4. The signaling point or application server that receives the message based on the SSN performs the necessary application-specific processing. For instance, the SSN might map to a call processing service, a message routing service, or any other telecommunication service, depending on the nature of the message.
The SS7 Load Balancer can distribute traffic towards a same global titlte between multiple service instances of a same kind. In which case it can automatically detects a failing service and assure service continuity via remaining service instances. The service set can be elastic or auto-scaled since the load balancer will allow traffic distribution to new instances of the service immediately. It is also possible for an external orchestrator to orchestrate the load balancer via REST API in case the topology of the workload is getting updated.
Software packaging | Docker image, RPM or DEB package. |
SCTP | RFC 4960; with multi-homing support |
M3UA | RFC 4666; IPSP, ASP and SGP modes |
SCCP | ITU-T Q.711 through Q.714 Connectionless Class 0 & 1 |
Orchestration API | RESTful over HTTP2 |