Why is Kamailio a Game Changer?

We are always on the lookout for tools that solve business problems elegantly. With all honesty we found Kamailio to be one of those tools that is an open source gift to all working in the VoIP space.

A good video to start with for Kamailio by Fred Posner VoIP Consultant.

 

What exactly is Kamailio?

In simple words Kamailio is an open source SIP proxy. Formerly OpenSER and SER, Kamailio is able to handle thousands of calls per second without a hiccup. 

The purpose of Kamailio is to receive SIP messages and process them by modifing heads or other manupilations. Kamailio does not interact with Media Stream or RTP

Primary designed for scalability (via load balancing ) and security of VoIP systems making it easier to manage high call volume without the need of expensive horizontal scaling.

Kamailio can be used to scale SIP-to-PSTN gateways, PBX systems or media servers like Asterisk, FreeSWITCH or SEMS.

 

Below is the architecture diagram of implementation of Kamailio.

Courtesy of kamailio.org

 

Prime Features of Kamailio

Kamailio , with it’s 20 year of open source development history is loaded with tons of business critical features that addresses some of the core challenges in VoIP systems.

  • Performant SIP Server -  With support for Registration Server, Location Server, SIP Proxy, Application Server and Redirect Server, Kamailio provides different modules to support different server types.
  • Dynamic Modules - With Kamailio you only load the modules (among 150) you need and even develop custom modules to add extra functionality. This boasts performance and increases flexibility.
  • Routing Features - Kamailio also provides broader flexibility in routing stateless and stateful messages. Supports multiple algorithms like LCR (least cost routing) for load balancing. Kamailio also supports backup routing for instance failover.
  • Transport Layer - Supports UDP, TCP, TLS and SCTP, over IP4 and IP6. Websockets for WebRTC.
  • Security -  Provide functionality for SIP user authentication, authenticating IP Address to prevent flooding request attacks. Supports Secure Real Time Protocol (SRTP) for secure audio communications. Kamailio also provides configuration for topology hiding which hides internal details or masks them to a general configuration.
  • Asynchronous Behaviour - Kamailio can handle TCP, SIP Messages, Interprocess Message Queues , Distributed Message Queues asynchronously. Which is one of the reasons why it can deliver higher throughput.

 

A take on Scalability with Kamailio

The biggest benefit you get out of Kamailio is its ability to scale VoIP systems with reliability and failover support.  By just adding more Kamailio servers we can easily scale any VoIP system on demand.

Kamailio also supports load balancing over VoIP systems that are geographically distributed. Which means for a company whose presence in multiple locations Kamailio is able to load balance traffic to those locations with ease.

 

Manage with Siremis UI

Kamailio's Siremis project is a UI interface with the help of which you can easily manage Kamailio. 

image for siremis

There are of course other ways of manage Kamailio which are

  1. API Interface
  2. CLI (Command Line Interface)
  3. Scripting Configuration Files.

 

All of these are documented on Kamailio’s Official Website.

 

For Getting Started we recommed these tutorial series https://nickvsnetworking.com/kamailio-introduction/

 

Getting Started with Core Configuration Parameters

Core Configuration Parameters

https://www.kamailio.org/wiki/cookbooks/5.0.x/core

 

Configuration of Asterisks with Kamailio with Installation Guide

http://kb.asipto.com/asterisk:realtime:kamailio-4.0.x-asterisk-11.3.0-astdb

https://nickvsnetworking.com/kamailio-vs-asterisk/

 

Kamailio Developer Guide

http://www.asipto.com/pub/kamailio-devel-guide/

 

 


up