Diferença Entre SIP e XMPP (Jabber)
SIP vs XMPP (Jabber)
SIP e XMPP são protocolos de camada de aplicação usados principalmente para enviar voz ou IM por meio da Internet. O SIP é definido pelo RFC 3621 e o XMPP é definido na RFC 3920. Basicamente o XMPP é desenvolvido a partir de IM e Presença, enquanto a SIP evoluiu de Voz e Vídeo sobre IP. XMPP adicionou uma extensão chamada Jingle para negociação de sessão e SIP adicionou uma extensão chamada SIMPLE para suportar IM e Presença.
SIP (Protocolo de Iniciação de Sessão)
Protocolo de Iniciação de Sessão (SIP) é um protocolo de camada de aplicação usado para estabelecer, modificar e encerrar sessões multimídia, como VoIP Calls. O SIP também pode convidar novas sessões para sessões existentes, como conferências multicast. Basicamente, é referido como protocolo de sinalização no ambiente VoIP que pode lidar com o estabelecimento de chamadas, o controle de chamadas e a rescisão de chamadas e gerando CDR (Call Detail Record) para fins de cobrança.
XMPP (Extensible Messaging Presence Protocol)
XMPP é um protocolo Open Extensible Markup Language (XML) para serviços de mensagens, presença e resposta de solicitação em tempo real. Originalmente, foi desenvolvido pela comunidade open source Jabber em 1999. Em 2002, o grupo de trabalho XMPP desenvolveu a adaptação do Jabber Protocol que é adequado para IM (Instant Messaging).
Diferença entre SIP e XMPP
Nós simplesmente não podemos comparar SIP e XMPP porque ambos servem diferentes propósitos como o estabelecimento de sessões e a troca de dados estruturados, respectivamente. Mas a introdução SIMPLE e Jingle introduzem algumas funcionalidades semelhantes.
(1) O SIP fornece o estabelecimento, a modificação e a terminação da sessão, mas o XMPP fornece canais de transmissão para troca de dados estruturados entre o grupo de clientes.
(2) SIP é protocolo de resposta de solicitação baseada em texto e XMPP é arquitetura de servidor cliente com base em XML.
(3) As mensagens de sinalização SIP passam por cabeçalhos SIP e corpo, enquanto as mensagens XMPP passam através do canal de transmissão. O XMPP envia pedido, resposta, indicação ou erro usando XML através do canal de transmissão.
(4) O SIP é executado em UDP, TCP e TLS, enquanto o XMPP usa apenas TCP e TLS.
(5) No SIP, o agente do usuário pode ser servidor ou cliente, portanto, o agente do usuário pode enviar ou receber mensagens, enquanto que no cliente XMPP apenas inicia solicitações ao servidor para que ele funcione com NAT e Firewall.
(6) Tanto o SIP quanto o XMPP são fáceis de implementar.
Comparando tecnicamente o SIP e o XMPP é como comparar maçãs e laranjas porque os protocolos principais servem para diferentes propósitos: encontro / estabelecimento vs intercâmbio estruturado de dados