BroadNet
SIP / VoIPImplementação

SIP trunking e o session border controller

Atualizado em 4 min de leituraBaseado em padrões
Resposta direta

Um SIP trunk é uma ligação virtual que transporta voz sobre IP entre um sistema telefónico e uma operadora, substituindo os troncos físicos PRI/TDM. Um session border controller (SBC) fica na fronteira de uma rede SIP para a proteger, ocultar a topologia interna, resolver a travessia de NAT (com STUN/TURN/ICE) e controlar que sessões são admitidas.

§01

O que é um SIP trunk

Um SIP trunk substitui o tronco telefónico físico (um PRI ISDN ou circuito TDM) por uma sessão SIP sobre uma ligação IP entre um sistema telefónico empresarial (IP-PBX) e um fornecedor de telefonia por internet ou operadora. Transporta chamadas concorrentes como média sinalizada por SIP e transportada por RTP, escalando por aprovisionamento de canais em vez de instalação de cobre. O SIP trunking é como as organizações ligam a sua voz à PSTN sobre IP, e como as operadoras interligam voz entre redes.

§02

O problema do NAT

O SIP e o SDP incorporam endereços IP e portas dentro das suas mensagens — o cabeçalho Contact, o Via e as linhas c= e m= do SDP. Quando um ponto terminal fica atrás de NAT, esses endereços incorporados são os seus privados, que são não encaminháveis do exterior, pelo que a sinalização pode ligar-se enquanto a média não tem para onde ir — o sintoma clássico de áudio num só sentido ou sem áudio. Resolver isto significa descobrir e anunciar o endereço/porta público que um NAT irá realmente usar, que é para o que servem o STUN, o TURN e o ICE.

Blocos de construção da travessia de NAT
MecanismoRFCFunção
STUNRFC 8489Descobrir o IP/porta pública que um NAT atribui ao endpoint
TURNRFC 8656Retransmitir o conteúdo multimédia por um servidor quando os caminhos diretos falham (NAT simétrico)
ICERFC 8445Reúna os candidatos e teste qual par de endereços realmente funciona
§03

STUN, TURN e ICE

Os três trabalham em conjunto. O STUN permite a um ponto terminal perguntar a um servidor 'que endereço público vês em mim?', revelando a associação de NAT que deve anunciar. O TURN fornece um relé: quando os NATs são demasiado restritivos para um caminho direto, a média é reencaminhada através de um servidor TURN que ambos os lados conseguem alcançar. O ICE junta-os — cada lado reúne endereços candidatos (locais, derivados de STUN, retransmitidos por TURN), troca-os no SDP e executa verificações de conectividade para escolher o melhor par funcional. O ICE é obrigatório no WebRTC e cada vez mais usado para SIP atrás de NAT.

§04

O session border controller

Um SBC é o dispositivo de demarcação na fronteira de uma rede SIP — entre uma empresa e a sua operadora, ou entre duas operadoras. Age quase sempre como um Back-to-Back User Agent, terminando cada chamada e re-originando-a, o que lhe permite desempenhar as suas funções centrais: ocultar a topologia interna (as partes externas nunca veem endereços internos nem o caminho de sinalização real), impor segurança e controlo de admissão, e corrigir problemas de NAT e de interoperabilidade. É, com efeito, uma firewall e um tradutor construídos de propósito para voz em tempo real.

O que faz um session border controller
FunçãoFinalidade
Ocultação de topologia (B2BUA)Ocultar endereços internos, encaminhamento e detalhes de diálogo
SegurançaBloquear varredura SIP/DoS, impor TLS/SRTP, limitar a taxa de registos
Traversal de NATCorrigir endereços privados incorporados; ancorar/retransmitir conteúdo multimédia
Controlo de admissão / CACLimitar chamadas simultâneas, proteger largura de banda e licenças
InterconexãoNormalizar dialetos SIP, transcodificar codecs, fazer ponte entre transportes
Ancoragem multimédiaEncaminhar o RTP pelo SBC para monitorização e interceção legal
§05

Ocultação de topologia e segurança

Como o SBC re-origina cada chamada como um B2BUA, os pares externos só veem os endereços do próprio SBC, não o PBX interno, os proxies ou os IPs dos subscritores — esta ocultação de topologia simplifica a interligação e nega aos atacantes um mapa da rede interna. Além disso, o SBC impõe a postura de segurança: TLS para a sinalização e SRTP para a média, limites de registo e de taxa de chamadas para conter inundações e tentativas de fraude de tarifação, e normalização de SIP malformado ou específico de um dialeto para que as peculiaridades de um lado não cheguem ao outro. É por isso que os SIP trunks em produção terminam num SBC em vez de exporem um PBX diretamente.

Perguntas frequentes

Perguntas frequentes

O que é um SIP trunk?

Um SIP trunk é uma ligação de voz virtual sobre IP entre um sistema telefónico (IP-PBX) e uma operadora ou fornecedor de serviço, substituindo os troncos físicos PRI/TDM. Transporta chamadas concorrentes como sinalização SIP com média RTP, e escala por aprovisionamento de canais em vez de instalação de linhas físicas.

O que faz um session border controller?

Um SBC fica na fronteira de uma rede SIP e protege-a: oculta a topologia interna (agindo como um B2BUA), impõe TLS/SRTP e limites de taxa, resolve a travessia de NAT e o ancoramento de média, controla quantas chamadas concorrentes são admitidas e normaliza o SIP entre sistemas que o implementam de forma diferente.

Porque é que tenho áudio num só sentido ou sem áudio nas chamadas SIP?

Normalmente NAT. O SIP e o SDP transportam endereços IP incorporados; atrás de NAT esses são privados e não encaminháveis, pelo que a sinalização liga mas a média RTP não tem para onde regressar. Corrigi-lo significa anunciar o endereço público correto via STUN/ICE ou retransmitir a média através de TURN ou de um SBC.

Qual é a diferença entre STUN, TURN e ICE?

O STUN descobre o endereço público que um NAT lhe atribui. O TURN retransmite a média através de um servidor quando um caminho direto é impossível. O ICE orquestra ambos — reunindo endereços candidatos, trocando-os e testando que par realmente liga. O ICE usa o STUN e o TURN como as suas ferramentas.

Um SBC é uma firewall?

É uma firewall especializada para voz em tempo real. Uma firewall genérica não entende diálogos SIP, portas de média incorporadas no SDP nem RTP, pelo que não consegue abrir com segurança os pinholes certos nem ocultar a topologia. Um SBC conhece SIP e RTP, acrescentando ocultação de topologia, controlo de admissão e transcodificação que uma firewall de dados não consegue.

Referências

Especificações de origem

Os padrões publicados nos quais esta página se baseia. Abre num novo separador.

BNMantido pela equipa de engenharia BroadNet·Mensagens de nível de operadora desde 2003
Coloque-o no fio.

Construa com uma vinculação SMPP real e uma API REST.

Solicite acesso de teste com chaves de teste reais: envie primeiro para o seu próprio número verificado e, em seguida, passe para o ambiente de produção em mais de 200 países assim que a sua identidade de remetente e rotas forem aprovadas.