Enviado por admin el
Versiones actuales
-
OpenSIPS 3.6.0 (estable, 23 jul 2025).
-
Kamailio 6.0.2 (estable, 25 jun 2025).
Arquitectura y scripting
-
Kamailio: además del lenguaje nativo, soporta KEMI (Lua, Python, JS, etc.) y permite recargar lógica sin reinicio. El cfg clásico sí requiere reinicio.
-
OpenSIPS: DSL propio con
reload_routespara recargar rutas en caliente, limitado por módulos inicializados.
Conclusión: KEMI aporta flexibilidad a Kamailio, mientras OpenSIPS ofrece recarga controlada en su propio DSL.
Clustering y estado compartido
-
OpenSIPS:
clustererreplicausrloc,dialogy presencia entre nodos. -
Kamailio: DMQ y módulos asociados (
dmq_usrloc, etc.) para sincronización distribuida.
Balanceo de carga y ruteo dinámico
-
OpenSIPS: módulos
dispatcheryload_balancer. Permite balanceo por peso, prioridad, salud y recursos activos (ej. canales simultáneos). Adecuado para SBC y call centers. -
Kamailio: módulo
dispatchermaduro con soporte de pruebas activas/pasivas y algoritmos de distribución (round-robin, hash, peso).
Resumen:
Ambos manejan load balancing SIP de forma estable. OpenSIPS destaca con load_balancer para decisiones basadas en load metrics más finos; Kamailio es sólido y ampliamente usado en despliegues carrier.
WebRTC, presencia y NAT/media
-
WebSocket/WSS: OpenSIPS (
proto_ws/proto_wss); Kamailio (websocket). -
Presencia/XCAP: soporte completo en ambos.
-
RTPengine/NAT: ambos integran
rtpenginepara NAT traversal y media relay.
B2BUA y ocultamiento de topología
-
OpenSIPS: módulos B2B y
topology_hiding. -
Kamailio: módulos
topoh/topos, centrados en ocultamiento ligero, sin B2BUA completo.
Operación y control
-
OpenSIPS:
opensips-cli, interfaz MI/JSON-RPC, eventos hacia Kafka o RabbitMQ. -
Kamailio:
kamctl/kamcmd, JSON-RPC vía HTTP/HTTPS/FIFO/UDP.
Trazabilidad y observabilidad
-
Ambos integran con HEP/Homer para SIP tracing y monitorización.
IMS/VoLTE
-
Kamailio: pila IMS madura (
ims_*, DIAMETER, QoS). -
OpenSIPS: IMS Community Edition con soporte CSCF e integración con Open5GS.
Fortalezas y debilidades
OpenSIPS
Fortalezas
-
Módulos B2BUA y topology hiding nativos.
-
Clusterer robusto con replicación de estado.
-
Load balancing avanzado con métricas de carga en tiempo real.
-
Integración fuerte con Kafka/RabbitMQ para observabilidad.
Debilidades
-
DSL propio menos flexible que KEMI.
-
La recarga en caliente es parcial y dependiente de módulos.
Kamailio
Fortalezas
-
KEMI con hot reload de lógica en Lua/Python/JS.
-
Ecosistema amplio: DMQ, IMS, JSON-RPC.
-
Dispatcher estable y probado a escala carrier.
-
Topology hiding ligero de bajo estado.
Debilidades
-
No incluye B2BUA completo.
-
El cfg nativo no tiene hot reload.
Cuándo elegir cada uno
-
SBCs y call control con B2BUA y balanceo por carga real: OpenSIPS.
-
Iteración rápida con scripting dinámico y entornos IMS maduros: Kamailio.
-
Balanceo simple y estable en carriers: ambos son válidos, Kamailio tiene mayor adopción histórica.
-
Necesidad de clúster con replicación de estado y métricas exportadas a sistemas de mensajería: OpenSIPS.
Comentarios recientes