El documento describe las diferencias entre SIP y XMPP, dos protocolos para comunicaciones en tiempo real. SIP se utiliza principalmente para audio y video, mientras que XMPP se usa para mensajería instantánea y presencia. Existen esfuerzos para combinar ambos protocolos a través de gateways y clientes dual-stack. SylkServer es un servidor SIP que implementa un gateway a XMPP para permitir el chat y la presencia entre usuarios SIP y XMPP.
11. AG Projects
SIP Infrastructure Experts
Entendiendo SIP y XMPP
• Protocolos para la negociación de sesiones,
mensajería instantánea y presencia
• Mismas características, distinto diseño
12. AG Projects
SIP Infrastructure Experts
SIP
• Session Initiation Protocol
• Especificación (RFC 3261) en 2002
• Ideado para el establecimiento de sesiones
multimedia, se utiliza principalmente para
audio, video y conferencias
• Diseñado para fat clients y thin
servers
13.
14. AG Projects
Chat con SIP
SIP Infrastructure Experts
15. AG Projects
Presencia con SIP
SIP Infrastructure Experts
16. AG Projects
SIP Infrastructure Experts
XMPP
• eXtensible Messaging and Presence
Protocol
• Creado por la comunidad Jabber en 1999,
estandarizado en 2004 y actualizado en
2011
• Ideado para mensajería instantánea y
presencia, con mucha extensibilidad
• Diseñado para fat servers y thin
clients
17.
18. AG Projects
Chat con XMPP
SIP Infrastructure Experts
19. AG Projects
Presencia con XMPP
SIP Infrastructure Experts
20. AG Projects
SIP Infrastructure Experts
Realtime Communications:
Estado del Arte
• SIP utilizado para audio, video, conferencias
y PSTN
• XMPP utilizado para chat y presencia
• Ambos coexistirán en los navegadores
gracias a WebSocket y WebRTC
24. AG Projects
SIP Infrastructure Experts
Combinando SIP y XMPP
• Clientes dual-stack: CUSAX
• draft-ivov-xmpp-cusax
• Clientes con un solo stack: usar un gateway
• Tiene que ser transparente
25. AG Projects
SIP Infrastructure Experts
¡Un solo stack!
• Abstraer demasiado un protocolo puede
acarrear problemas y/o limitaciones
• Configuración más sencilla
• SIP y XMPP son diferentes por diseño,
¿cómo los unificamos?
26.
27. AG Projects
SIP Infrastructure Experts
SylkServer
• Servidor de aplicaciones SIP, Open Source
• ZeroConf
• Implementado utilizando SIP SIMPLE SDK
30. AG Projects
SIP Infrastructure Experts
SylkServer: Conferencias
• Audio en HD
• Chat
• Transferencia de ficheros
• Compartir escritorio
• Control (RFC 4575 y 4579)
31. AG Projects
SIP Infrastructure Experts
SylkServer: Gateway a XMPP
• Chat (SIP MESSAGE y MSRP)
• Chat en grupo (MUC)
• Presencia
32. AG Projects
SIP Infrastructure Experts
SylkServer: diseño del gateway XMPP
• SylkServer actua como un servidor
XMPP
• Sólo soporta conexiones S2S
• Los usuarios están del lado SIP, los clientes
XMPP no se pueden registrar en SylkServer
35. AG Projects
SIP Infrastructure Experts
Retos en la implementación
• Servidor XMPP vs componente XMPP
• Especificaciones incompletas y/o ambiguas
• Diferencia de conceptos
• Sesiones XMPP
• SIP PIDF vs presence stanza de XMPP
• Diferencia de características
• Conferencias SIP vs chat en grupo XMPP
36.
37. AG Projects
SIP Infrastructure Experts
Futuro
• Los drafts de interoperabilidad SIP - XMPP
van a ser retomados
• Roadmap para SylkServer
• Audio / video (Jingle)
• Transferencia de ficheros
38.
39. Si vas en serio con un cliente SIP, construye también un
servidor.