SIP
Originado da sinalização multimídia da Internet dos anos 1990, SIP foi padronizado na RFC 3261 em 2002 e substituiu a RFC 2543. Ele localiza usuários e negocia sessões por métodos como REGISTER, INVITE, ACK, BYE e CANCEL; a mídia normalmente segue por RTP. A implantação exige proxy ou registrar, identidade, DNS e proteção TLS/SRTP. Certificação de interoperabilidade e perfis importam, pois dois dispositivos SIP podem divergir em codecs, DTMF, NAT e recursos.
SIP é um protocolo de sinalização de camada de aplicação usado para estabelecer, modificar e encerrar sessões multimídia. A sessão pode transportar voz, vídeo, mensagens ou outros fluxos. SIP não carrega normalmente a mídia. Ele negocia por SDP, e RTP/RTCP transporta. Essa separação permite que o mesmo protocolo sinalize uma chamada de áudio G.711, uma videochamada H.264 ou um intercomunicador. A especificação principal é RFC 3261, publicada em junho de 2002, que substituiu RFC 2543. O protocolo adota sintaxe textual inspirada em HTTP e e-mail, com start-line, cabeçalhos e corpo. Métodos incluem REGISTER para registrar contato, INVITE para iniciar ou modificar diálogo, ACK para confirmar resposta final a INVITE, BYE para encerrar, CANCEL para cancelar tentativa pendente, OPTIONS para capacidades. Extensões adicionam PRACK, UPDATE, REFER, SUBSCRIBE, NOTIFY, MESSAGE, PUBLISH e INFO. Uma identidade SIP é uma URI como `sip:porta@casa.exemplo`. User Agent Client envia; User Agent Server responde. Um endpoint costuma exercer ambos. Proxy encaminha e aplica política. Registrar associa Address-of-Record a Contacts. Redirect server informa destino. Location service guarda. Um fluxo básico: o videoporteiro registra no PBX. Ao apertar, envia INVITE para um ramal. O PBX autentica e roteia. O telefone responde 180 Ringing e 200 OK com SDP. O originador envia ACK. RTP passa. Ao terminar, BYE. Respostas 1xx são provisórias; 2xx sucesso; 3xx redirecionamento; 4xx erro do pedido; 5xx servidor; 6xx global. 401 e 407 acionam Digest Authentication. O cliente reenvia com resposta calculada. Senhas precisam ser fortes. Digest não cifra mensagem. TLS protege sinalização. SIPS URI indica transporte seguro ao próximo salto, mas segurança fim a fim depende da cadeia. SRTP protege mídia. SIP sobre UDP 5060 é comum; TCP 5060 e TLS 5061 também. Portas são convenções. Mensagens grandes podem exigir TCP. UDP precisa de retransmissões e timers definidos. TCP/TLS mantém conexão. WebSocket permite SIP em navegadores, com WebRTC para mídia. A RFC 7118 define SIP over WebSocket. SIP possui transações e diálogos. Call-ID, tags From/To e CSeq identificam. Via rastreia caminho e branch. Route/Record-Route mantém proxies. Contact indica destino. Max-Forwards evita loops. O protocolo é distribuído e extensível. Essa flexibilidade gera interoperabilidade difícil. Codecs precisam de interseção. G.711 PCMU/PCMA são comuns. Opus é melhor em redes variáveis, mas telefones antigos podem não suportar. Vídeo H.264 precisa de perfil. DTMF pode usar RFC 4733, SIP INFO ou áudio in-band. O PBX e o interfone precisam concordar. Abertura de porta por DTMF é comum, mas um código audível ou sem autenticação pode ser arriscado. Preferir evento protegido e autorização. NAT é um desafio. SIP carrega endereços dentro de cabeçalhos e SDP, então NAT simples não basta. STUN, TURN, ICE, outbound RFC 5626, rport, symmetric RTP e SBC ajudam. SIP ALG em roteadores tenta reescrever e frequentemente quebra TLS, SDP e múltiplos dispositivos. Desabilitar quando existe SBC ou PBX competente. Um Session Border Controller termina e normaliza, protege e atravessa. Em casa, um PBX local como Asterisk, FreePBX ou 3CX pode registrar interfones e ramais. Para acesso remoto, VPN ou SBC. Expor 5060 recebe scanners e tentativas de fraude. Firewalls, fail2ban, ACL, TLS, autenticação e limites são essenciais. Usuários não devem usar ramal 100/senha 100. O protocolo suporta presença e eventos por SUBSCRIBE/NOTIFY. Interfones podem informar estado. REFER transfere chamada. Recursos dependem. A conformidade com RFC 3261 não garante todos. Perfis de fabricantes, SIP Forum e testes de interoperabilidade ajudam. SIPconnect é perfil de trunking. ONVIF possui recursos de vídeo separados; um videoporteiro pode usar SIP para chamada e ONVIF/RTSP para câmera. Matter não substitui telefonia. A automação pode receber eventos do PBX por AMI/ARI, webhook ou MQTT. O caminho de abertura precisa permanecer seguro e local. Qualidade de voz depende de RTP, jitter, QoS e rede, não do SIP. O SIP pode completar enquanto mídia falha por NAT. Diagnóstico separa sinalização e RTP. Capturas com sngrep e Wireshark mostram. TLS dificulta, mas logs ajudam. O relógio NTP é necessário para certificados e logs. O protocolo amadureceu por décadas e é amplamente suportado. A limitação é a combinação de extensões, NAT, codecs e segurança legada.
- Protocolo aberto e maduro com ampla oferta de PBXs, telefones, intercomunicadores, gateways, SBCs e ferramentas.
- Separa sinalização da mídia, permitindo negociar codecs e usar RTP/SRTP, áudio, vídeo e múltiplos fluxos.
- Suporta registro, roteamento, forking, transferência, presença, eventos e integração com sistemas empresariais e residenciais.
- Pode operar sobre UDP, TCP, TLS e WebSocket, conectando equipamentos legados a aplicativos WebRTC modernos.
- Permite arquitetura local com Asterisk ou FreeSWITCH, reduzindo dependência de nuvem para interfone e comunicação interna.
- A flexibilidade de extensões, codecs, DTMF e perfis causa incompatibilidades mesmo entre produtos rotulados como SIP.
- NAT é complexo porque endereços aparecem na sinalização e no SDP; SBC, ICE ou configuração cuidadosa são frequentemente necessários.
- Sinalização e mídia podem ficar sem criptografia em equipamentos legados; TLS não protege RTP automaticamente.
- Portas SIP expostas são alvo constante de varredura, brute force e fraude, exigindo hardening e monitoramento.
- Uma chamada pode estabelecer sem áudio ou vídeo por problemas de RTP, firewall ou codec; diagnóstico precisa separar camadas.