SIP para iniciantes
Sem "blablablá", vamos ao SIP!
O SIP é um dos protocolos mais lindos que existem hoje, e aqui ficará uma bela oportunidade de você entender como ele funciona. Farei alguns posts semanais, mostrando a maravilha deste protocolo.
Defino que existem alguns estágios (ou níveis) de conhecedores do protocolo SIP:
- Nível 01: "É muito complicado. Prefiro não entender."
- Nível 02: "No SIP não passa voz?"
- Nível 03: "OK, faz sentido."
- Nível 04: "Como eu não estudei isso antes?"
- Nível 05: "Isso é melhor que LEGO!"
O intuito é encorajar você a chegar no nível 03 e, pra isso, iniciarei do básico!
Logo abaixo, temos uma imagem, que é um exemplo perfeito para iniciarmos o entendimento do universo SIP.
Cada traço apresentado na imagem é o protocolo SIP em ação. Analise com calma. Cada traço é importante.
Aproveite para tentar entender:
a) Como funciona o fluxo das mensagens.
b) Onde e quando inicia a troca de áudio.
c) Quem desligou primeiro: John ou Bruno?
Fácil, não é mesmo?
Este SIP FLOW é fundamental para entendermos o universo SIP. Apesar de simples, ele está recheado de informações:
a) Quem inicia a chamada
Ramal do John (ver primeiro traço verde).
Chamamos de INVITE esta primeira mensagem que contém a solicitação de chamada.
b) Ring
Note que quem diz que o telefone está "ringando" é o telefone do destinatário. Ou seja, o telefone do Bruno.
Quando o telefone do John recebe a informação "Ringing", o John começa a escutar o famoso som de que o telefone está "chamando". Se estivesse ocupado, você teria um retorno "BUSY" e escutaria o tom de ocupado.
É interessante destacar que na grande maioria das vezes, o tom que escutamos (ocupado ou chamando) é definido pelo aparelho da ponta, e que cada país adota o seu padrão de tom.
c) No SIP não passa voz?
Com este SIP FLOW você já deve ter identificado que o protocolo responsável pelo transporte da voz (áudio) é o RTP e não o SIP.
Portanto: No SIP não passa voz!
Quando você está com problemas de áudio (Ex: A chamada completa, mas fica muda), ele sempre estará relacionado a alguma configuração que envolve o protocolo RTP.
d) Quem desligou a chamada?
Quem desligou primeiro a chamada foi o "Bruno". Note que o "Bye" está vindo dele.
Agora vamos a um exemplo real utilizado o famoso SNGREP para analisar os pacotes. Note que, neste caso abaixo, o destinatário estava ocupado, sendo possível observar na linha "486 Busy Here".
Bacana, não?
Agora você já consegue avaliar a troca de mensagens SIP para lhe ajudar a identificar possíveis problemas.
No próximo post daremos um passo a mais, e entenderemos os famosos REQUEST e RESPONSES do SIP.
Até lá!
Autor: Ezequiel Peruzzo