- Worker
- Loadbalancer
- Control
- Management
- BEDBINT (Backend Database Interface)
The image below shows their relations:
Worker
As the name indicates, the worker component does all the work: it processes the incoming RADIUS and Diameter messages. It provides the actual business logic and its functions, such as:- Radiator VoWiFi
- Radiator Service Provider Wi-Fi
- Radiator PCRF
- Radiator OCS
- Radiator Custom/OEM
Radiator AAA Core is the mandatory main module. It depends on the wanted functionality which other modules are necessary.
When workers are instantiated, they send their availability information to the loadbalancer through redundant message queue. Workers do not communicate directly with the external clients.
Loadbalancer
Loadbalancer receives the incoming RADIUS and Diameter messages and forwards them to the workers. It also takes care of balancing the workers' load, the control component sends the workers' availability information to loadbalancer so that loadbalancer always has an up-to-date list of available workers. Loadbalancer is stateless from RADIUS and Diameter perspectiveControl
Control component's most important task is to provide the redundant message queue, which all other components use for communicating with each other. Inter-component communicating is extremely important in Radiator VNF, for example, scaling the system would be impossible without it. The workers sign up to the control component when they are initialised and the control component sends worker information to the loadbalancer. Also component shutdowns are informed to the control component.The control component acts also as a data storage, it stores non-persistent session data and persistent data, such as IP addresses, prefixes, and pools. The control component is not stateless. The control component also maintains real-time user session data and provides that data to the workers and management component. The persistent data is stored in ACID-compliant storage.
Management
The management component holds the statistics and logging data. It also provides services which handle session cleaning and other management tasks, such as logs and statistics.BEDBINT
BEDBINT connects Radiator VNF to the external backend systems. Depending on the configuration, these backend systems can be one of the following:- Customer LDAP (Lightweight Directory Access Protocol)
- SQL
- HSS (Home Subscriber Server)
BEDBINT includes a caching function that stores customer and configuration information. It also supports the overload protection mechanisms, scaling, and self-healing.