Un session border controller, quasi sempre abbreviato in SBC, è il posto di controllo dove due reti IP si passano le chiamate vocali. Si trova al margine di una rete, termina la segnalazione SIP e, di solito, l’audio di ogni chiamata che lo attraversa, e decide cosa può passare: quali chiamate possono partire, quali codec possono usare, quanto traffico è troppo, e se la segnalazione e il media sono cifrati.
La risposta breve per la maggior parte dei lettori: se la tua azienda gestisce già un PBX o trunk SIP con un operatore, quasi sicuramente c’è un SBC da qualche parte nel percorso, anche se nessuno l’ha mai nominato, e il tuo compito è puntarlo sulla piattaforma di agenti vocali. Se stai costruendo uno stack di agenti vocali da zero, quasi sicuramente non devi comprarne uno, perché l’endpoint SIP della piattaforma stessa può svolgere i compiti di sicurezza centrali di un SBC al confine. Il resto di questa guida spiega cosa fa davvero un SBC, così sai in quale situazione ti trovi.
Cos’è un session border controller
Un SBC è un elemento di rete dispiegato al confine tra due reti IP per proteggere e controllare le comunicazioni in tempo reale basate su SIP, come recita la definizione di Wikipedia. Il nome è letterale una volta scomposto: una “sessione” è una chiamata, il “confine” è il punto di demarcazione tra una rete e l’altra, e il “controllore” è la politica applicata a ciò che lo attraversa.
Due scelte di progettazione definiscono la specie:
- È un back-to-back user agent (B2BUA). A differenza di un proxy SIP, che inoltra i messaggi, un SBC termina ogni lato della chiamata in modo indipendente e lo ri-origina dall’altro. La rete del chiamante vede solo l’SBC, mai l’attrezzatura dietro di esso: è questo il “topology hiding” degli opuscoli dei fornitori.
- Tocca il media, non solo la segnalazione. Un SBC sta nel percorso dell’RTP oltre che del SIP, quindi può cifrare, transcodificare e misurare l’audio stesso, e tagliare le chiamate la cui segnalazione sembra a posto ma il cui media è abusivo.
Gli SBC sono nati nei punti di peering tra operatori, dove reti con reciproca diffidenza si scambiano chiamate. Il ruolo si è poi esteso al margine dell’impresa, tra il sistema telefonico aziendale e il fornitore di trunk SIP, che è dove la maggior parte delle persone li incontra oggi.
Cosa fa un SBC
Le schede dei fornitori elencano decine di funzioni, che si raggruppano in sei mestieri:
| Mestiere | Cosa fa davvero l’SBC |
|---|---|
| Sicurezza | Blocca alluvioni di denial-of-service e SIP malformato, impedisce la frode telefonica, nasconde gli indirizzi interni, cifra la segnalazione con TLS e il media con SRTP |
| Connettività | Attraversa il NAT, normalizza le stranezze degli stack SIP di ogni fornitore, collega IPv4 e IPv6, traduce tra varianti di SIP e protocolli più vecchi come H.323 |
| Qualità di servizio | Ammette o rifiuta le chiamate in base al carico, limita i ritmi, presidia il traffico, marca i pacchetti per la priorità |
| Regolamentazione | Dà priorità alle chiamate di emergenza, supporta l’intercettazione legale dove richiesta |
| Servizi media | Transcodifica tra codec, traduce il DTMF tra toni in banda e telephone-events, riproduce toni e annunci |
| Statistiche e fatturazione | Produce i record delle chiamate nel punto di misura naturale, il confine |
La riga sicurezza è il motivo per cui gli SBC sono diventati equipaggiamento standard. Un endpoint SIP aperto sulla rete pubblica viene trovato dagli scanner in pochi minuti e martellato di tentativi di chiamate gratis: qualcuno deve fare il buttafuori. La riga interoperabilità è il motivo per cui sono rimasti: ogni fornitore implementa SIP in modo leggermente diverso, e l’SBC è dove queste differenze si appianano prima di rompere le chiamate.
SBC contro firewall contro proxy SIP
I tre apparati si confondono perché stanno tutti ai margini della rete:
| Apparato | Vede | Agisce su |
|---|---|---|
| Firewall | Pacchetti IP generici | Porte, indirizzi, protocolli, senza capire le chiamate |
| Proxy SIP | Solo la segnalazione | Instrada gli INVITE alla destinazione giusta; non tocca mai il media |
| SBC | Segnalazione e media, con lo stato completo della chiamata | Politiche di sicurezza, interoperabilità, controllo di ammissione, cifratura, transcodifica |
Un firewall che “fa passare SIP” si limita ad aprire la porta 5060; non sa distinguere un INVITE legittimo da un tentativo di frode, e non può aggiustare il fatto che l’SDP dentro l’INVITE nomini un IP privato che l’altro lato non può raggiungere. Un proxy SIP instrada le chiamate ma non le protegge. L’SBC è quello che fa entrambi i mestieri con consapevolezza della voce, ed è per questo che si trova tra il firewall e il sistema telefonico nel diagramma tipico di un’azienda.
Hardware, virtuale, cloud e open source
Gli SBC sono nati come appliance da rack, e quel mercato esiste ancora: la linea Acme Packet di Oracle, la serie Mediant di AudioCodes e la famiglia SWe di Ribbon sono i nomi sulla maggior parte degli ordini aziendali, e il CUBE di Cisco, il border element integrato nei suoi router, è il titolare silenzioso nelle case Cisco. Le stesse funzioni arrivano oggi come macchine virtuali, microservizi cloud-native e servizi gestiti a sessione, quindi “un SBC” oggi è più spesso una licenza che un apparato.
Sul fronte open source, Kamailio e OpenSIPS coprono il ruolo di segnalazione, di solito abbinati a RTPEngine per il media, e coprono gran parte di ciò che fa un SBC commerciale per i team disposti a gestirli. Sono un’opzione reale per operatori e grandi piattaforme; raramente sono la risposta giusta per un team che vuole solo che le sue chiamate raggiungano un agente.
Ne hai davvero bisogno?
Tre situazioni coprono quasi tutti quelli che se lo chiedono:
- Ne hai già uno. Se la tua azienda gestisce un PBX o trunk SIP con un operatore, c’è un SBC (o un CUBE, o quello dell’operatore) al margine, e sta facendo il suo lavoro. Tienilo come punto di demarcazione e puntalo sull’endpoint SIP della piattaforma di agenti quando aggiungi agenti vocali.
- Il tuo operatore ne ha uno. Ogni fornitore di trunk gestisce SBC sul proprio margine; è parte di ciò che compra la tariffa al minuto. Le chiamate tra gli SBC di due operatori sono il caso normale, non l’eccezione.
- Stai costruendo agenti vocali da zero. Se non c’è un sistema telefonico legacy da proteggere, un SBC appliance è un salto di cui non hai bisogno. Il lavoro di sicurezza che farebbe, TLS per la segnalazione, SRTP per il media, autenticazione digest e whitelist di IP, è svolto dall’endpoint SIP della piattaforma di agenti stessa. Ogni apparato che inserisci è anche latenza: ogni salto tra il chiamante e l’agente aggiunge un ritardo che il chiamante sente, come copre la guida al SIP trunking.
Il riassunto onesto: un SBC è infrastruttura portante quando hai una rete da proteggere, e sovraccarico quando non ce l’hai.
Dove un SBC incontra un agente vocale
Quando una chiamata raggiunge un agente vocale IA tramite un trunk SIP, il percorso è chiamante, operatore, forse il tuo SBC, l’endpoint SIP della piattaforma di agenti, e poi l’agente stesso. I dettagli legati all’SBC che contano in pratica:
- Termina la cifratura deliberatamente. Gli SBC sono dove TLS e SRTP di solito iniziano o finiscono. Un trunk che negozia SRTP da un lato e RTP in chiaro dall’altro produce chiamate che si connettono e trasportano silenzio, lo stesso guasto della cifratura attivata da un lato solo.
- Controlla la traduzione DTMF. Gli SBC convertono abitualmente i tasti premuti tra toni in banda e telephone-events fuori banda. Se i chiamanti premono cifre e l’agente non le sente mai, le impostazioni di interworking DTMF dell’SBC sono il primo posto dove guardare.
- I trasferimenti attraversano l’SBC come REFER. Quando l’agente passa una chiamata a una persona, la piattaforma invia un SIP REFER, e l’SBC deve lasciarlo passare. Un trunk che elimina i REFER trasforma ogni trasferimento a caldo in una chiamata caduta.
- Le liste di codec sono politica. Un SBC può forzare o transcodificare il codec di una chiamata. I percorsi telefonici si assestano su G.711, il codec a 8 kHz che modella ciò che il riconoscimento vocale dell’agente sente; un SBC transcodificatore nel percorso è una cosa in più da controllare quando la qualità del riconoscimento peggiora.
- Il jitter si misura al confine. Gli SBC riportano statistiche per chiamata, comprese le cifre di jitter RTCP che la guida al jitter VoIP insegna a leggere. Quando una chiamata suona spezzata, il rapporto dell’SBC è la fonte autorevole di ciò che l’altro capo ha subito.
Su Cartesia, i Managed Agents terminano i trunk SIP su TCP o TLS, negoziano SRTP con un’impostazione media_encryption di disabled, allowed o required, e autenticano le chiamate in ingresso con credenziali digest o una whitelist di IP una volta configurato almeno un metodo di controllo degli accessi: l’endpoint della piattaforma svolge quindi il ruolo di sicurezza dell’SBC sul proprio margine, e il tuo SBC esistente, se ne hai uno, deve solo puntare su di esso. La guida all’integrazione SIP trunking illustra la configurazione, comprese le note specifiche per Twilio.