Combining its SIP core capabilities and extensible APIs, building VoIP and Unified Communication Platforms using Kamailio (K) is straightforward.
- Robust and Performant SIP (RFC3261) Server flavours
- Registrar server
- Location server
- Proxy server
- SIP Application server
- Redirect server
- Flexibility
- small footprint – suitable for embedded devices – the binary file is small size, functionality can be stripped/added via modules
- plug&play module interface – ability to add new extensions, without touching the core, therefore assuring a great stability of core components
- modular architecture – core, internal libraries and module interface to extend the server’s functionality
- impressive extension repository – overall 150 modules are included in the Kamailio source tree
- SIP Routing Capabilities
- stateless and transactional stateful SIP Proxy processing
- serial and parallel forking
- NAT traversal support for SIP and RTP traffic
- load balancing with many distribution algorithms and failover support
- flexible least cost routing
- routing failover
- replication for High Availability (HA)
- Transport Layers
- support for communication via UDP, TCP, TLS and SCTP
- IPv4 and IPv6
- transport layer gatewaying (IPv4 to IPv6, UDP to TLS, a.s.o.)
- SCTP multi-homing and multi-streaming
- Asynchronous Processing
- asynchronous TCP handling
- asynchronous SIP message processing
- asynchronous inter-process message queues communication system
- Secure Communication
- Digest SIP User authentication
- Authorization via ACL or group membership
- IP and Network authentication
- TLS support for SIP signaling
- transparent handling of SRTP for secure audio
- TLS domain name extension support
- authentication and authorization against database (MySQL, PostgreSQL, UnixODBC, BerkeleyDB, Oracle, text files), RADIUS and DIAMETER
- IP and DNS
- support for SRV and NAPTR DNS lookups
- SRV DNS failover
- ENUM support
- internal DNS caching system – avoid DNS blocking
- IP level Blacklists
- multi-homed and multi-domain support
- topology hiding – hide IP addresses in SIP headers to protect your network architecture
- Accounting
- event based accounting
- configurable accounting data details
- multi-leg call accounting
- storage to database, Radius or Diameter
- Configuration File
- scripting language for configurations file. With a syntax similar to scripting languages, the configuration offers a powerful and flexible way to deploy custom SIP services.
- pseudo-variables to access and manage parts of the SIP messages and attributes specific to users and server
- transformations to modify existing pseudo-variables, accessing only the wanted parts of the information
- over 1000 parameters, variables and functions exported to config file
- runtime update framework – to avoid restarting the SIP server when needing to change the config parameters
- External Interaction via
- text-based management interface via FIFO file, udp, xmlrpc and unix sockets
- RPC control interface – via XMLRPC, UDP or TCP
- Rich Communication Services
- SIP SIMPLE Presence Server (rich presence)
- Presence User Agent
- XCAP support
- Presence DialogInfo support – SLA/BLA
- Instant Messaging
- Monitoring and Troubleshooting
- SNMP – interface to Simple Network Management Protocol
- config file step-by-step debugger
- remote control via XMLRPC
- internal statistics exported via RPC and SNMP
- flexible debug and error message logging system – log custom messages including any header or pseudo-variable and parts of SIP message structure.
- Extensibility APIs
- Perl Programming Interface – embed your extensions written in Perl
- Java SIP Servlet Application Interface – write Java SIP Servlets to extent your VoIP services and integrate with web services
- Lua Programming Interface
- Python Programming Interface
- Multiple Database Backends
- (MySQL, PostgreSQL, UnixODBC, BerkeleyDB, Oracle, text files) and other database types which have unixodbc drivers
- connections pool
- different backends can be used at same time (e.g., accounting to Oracle and authorization against MySQL)
- Interconnectivity
- straightforward interconnection with PSTN gateways
- gateway to sms or xmpp and other IM services
- interoperability with SIP enabled devices and applications such as SIP phones (Snom, Cisco, etc.), Media Servers (Asterisk, FreeSwitch, etc.)
- Miscellaneous
- CPL – Call Processing Language (RFC3880)
- Internal generic caching system
- Memcached connector
- CLI – kamctl and sercmd
- Web Management Interface: Siremis
- Extensive documentation for both administrators and developers
- Kamailio can run on embedded systems, with limited resources – the performances can be up to hundreds of call setups per second
- used as load balancer in stateless mode, Kamailio can handle over 5000 call setups per second
- on systems with 4GB memory, Kamailio can serve a population over 300,000 online subscribers
- System can easily scale by adding more Kamailio servers
- Kamailio can be used in geographic distributed VoIP platforms
- Kamailio least-cost-routing scales up to millions of routing rules
- straightforward failover and redundancy
This article is very unique, informative and interesting..
ReplyDeleteWeb Designer luton
Web design wakefield