# Come viene effettivamente instradato un SMS: SMSC, ESME e il percorso di consegna A2P spiegati

> Come funziona un SMSC? Tracciamo un SMS A2P end-to-end: bind ESME su SMPP, submit_sm, store-and-forward, ricerca HLR, consegna MT al dispositivo e ritorno DLR.

- URL canonico: https://www.broadnet.me/it/blog/how-sms-routes-smsc-esme-delivery-path
- Lingua: it
- Ultimo aggiornamento: 2026-10-20
- Editore: BroadNet (https://www.broadnet.me)

- Pubblicato il: 2026-08-03
- Autore: BroadNet Editorial Team

Un SMS A2P percorre un percorso definito: la tua applicazione si connette a un SMSC o a un aggregatore tramite SMPP come ESME e invia un messaggio submit_sm; l'SMSC memorizza il messaggio, interroga l'HLR dell'operatore di destinazione per individuare l'MSC che serve l'abbonato, lo consegna al dispositivo mobile (MT) e restituisce una conferma di consegna lungo la stessa catena. Ogni passaggio può compromettere la consegna, l'identificazione del mittente o la ricezione.

> Preferisci prima la versione in un paragrafo? Consulta la nostra risposta su [cos'è un SMSC](https://www.broadnet.me/answers/what-is-smsc). Questo articolo è una guida completa che illustra il concetto dall'inizio alla fine.

## Il cast dei personaggi

Prima di tracciare il percorso, è utile nominare i componenti e la funzione di ciascuno. Tre acronimi racchiudono gran parte della storia: SMSC, ESME e HLR. Due direzioni sono fondamentali: MT e MO.

### SMSC — il motore di memorizzazione e inoltro

Il Centro Servizi Messaggi Brevi (SMSC) è il server lato operatore che riceve un messaggio, lo memorizza e lo inoltra al destinatario, ovvero il nodo definito dal protocollo di trasferimento SMS nello standard 3GPP TS 23.040. Non si tratta di un semplice ripetitore: il messaggio viene trattenuto fino a quando il dispositivo non è raggiungibile, viene ritrasmesso entro un periodo di validità e viene generato un rapporto sullo stato della trasmissione. Quando si invia un messaggio tramite un aggregatore, si comunica con il suo SMSC (o con un gateway posto a monte di esso); l'operatore di destinazione gestisce il proprio SMSC che si occupa della consegna finale.

### ESME: la tua applicazione in rete

Un'Entità di Messaggistica Breve Esterna (ESME) è qualsiasi applicazione che si connette a un SMSC per inviare o ricevere SMS, come ad esempio il servizio OTP, la piattaforma per le campagne o il sistema di notifica. Tramite [SMPP](https://www.broadnet.me/developers/smpp), l'ESME apre una sessione TCP persistente con un bind (trasmettitore, ricevitore o transceiver), quindi invia un messaggio submit_sm. L'SMSC risponde con un messaggio submit_sm_resp contenente un message_id e successivamente invia un messaggio deliver_sm all'ESME per i messaggi in entrata e le conferme di consegna. L'ESME è il client; l'SMSC è il server.

### MT vs MO: in quale direzione fluisce il messaggio?

Mobile-Terminated (MT) è un messaggio consegnato a un telefono cellulare, ovvero la direzione in cui viaggia quasi tutto il traffico A2P: un OTP, un avviso, un aggiornamento sulla spedizione che arriva su un telefono. Mobile-Originated (MO) è un messaggio inviato da un abbonato da un telefono cellulare, ed è così che le risposte bidirezionali, le disdette tramite parola chiave e le richieste STOP raggiungono il tuo ESME come deliver_sm. Una ricevuta di consegna (DLR) percorre il percorso di ritorno MT anche se il flusso torna verso di te.

| Componente | Ruolo nel percorso di consegna |
|---|---|
| Applicazione / ESME | Il tuo software si connette all'SMSC tramite SMPP ed emette il comando submit_sm per inviare messaggi MT. |
| SMSC (lato aggregatore) | Accetta, convalida e memorizza il messaggio; seleziona un percorso verso l'operatore di destinazione; restituisce il message_id e, successivamente, il DLR |
| Interconnessione / Hub SMS | Trasporta il messaggio tra l'aggregatore e l'operatore di terminazione attraverso uno o più salti |
| Operatore di terminazione SMSC | Riceve il messaggio sulla rete dell'operatore e ne gestisce la consegna finale all'abbonato. |
| HLR | Database degli abbonati domestici; risponde alla domanda "dove è servito questo numero in questo momento?" con l'indirizzo MSC/VLR di servizio. |
| MSC / VLR | Il centralino attualmente in servizio con l'abbonato; effettua il cercapersone sul telefono e consegna il messaggio MT |
| Telefono (MS) | Riceve il messaggio e restituisce una conferma che diventa la ricevuta di consegna. |

## Archivia e inoltra: perché esiste l'SMSC

Gli SMS sono per definizione asincroni. Il destinatario potrebbe avere il telefono spento, trovarsi fuori copertura o essere impegnato in una chiamata senza una finestra di segnale libera. Invece di fallire, l'SMSC accetta il messaggio, lo memorizza e si assume la responsabilità della consegna: questo è il principio di memorizzazione e inoltro. Tenta la consegna e, se l'abbonato non è raggiungibile, mette il messaggio in coda e lo riprova a intervalli regolari finché la consegna non ha successo o il periodo di validità del messaggio non scade. Quando la rete segnala successivamente che il telefono è di nuovo disponibile, l'SMSC viene invitato a riprovare. Questa durabilità è il punto fondamentale di un centro messaggi ed è il motivo per cui un SMS "inviato" non è ancora un SMS "consegnato": due stati che il feed DLR deve mantenere separati.

## Tracciare un SMS A2P dall'app al telefono

Ecco il percorso completo di un singolo messaggio MT, ad esempio un codice OTP di accesso inviato da una banca di Riyadh a un abbonato di una rete del GCC, dal tuo codice al telefono e ritorno.

1. La tua applicazione si autentica e apre un collegamento SMPP con l'aggregatore/SMSC come ESME, quindi invia un messaggio submit_sm contenente l'MSISDN di destinazione, l'ID del mittente, la codifica e il testo.
2. L'SMSC convalida e memorizza il messaggio, assegna un message_id e lo restituisce nella risposta submit_sm_resp. A questo punto il messaggio è accettato, non consegnato.
3. L'SMSC seleziona un percorso verso l'operatore di destinazione: idealmente un'interconnessione diretta, altrimenti un percorso attraverso uno o più hub SMS.
4. Il messaggio raggiunge l'SMSC dell'operatore di destinazione sulla rete di destinazione.
5. L'SMSC interroga l'HLR dell'operatore (tramite una richiesta MAP SendRoutingInfoForSM) per scoprire dove l'abbonato è attualmente servito, ovvero l'indirizzo dell'MSC/VLR che lo serve.
6. L'HLR restituisce le informazioni di routing; l'SMSC inoltra il messaggio (MT-ForwardSM) a tale MSC.
7. Il centro servizi mobile (MSC) di servizio effettua la chiamata al telefono tramite la rete radio e consegna il messaggio (la consegna MT).
8. Il telefono conferma la ricezione; la conferma viene propagata all'indietro e l'SMSC di destinazione genera un rapporto di consegna.
9. La ricevuta di consegna risale la rete di interconnessione fino all'SMSC dell'aggregatore, che la inoltra al tuo ESME come messaggio deliver_sm (o webhook) contenente l'ID del messaggio originale e lo stato finale.

Le fasi di segnalazione 5-7 — la ricerca HLR e l'inoltro MT-ForwardSM allo switch di servizio — avvengono all'interno della rete centrale SS7/Diameter dell'operatore, utilizzando le operazioni MAP della rete mobile. Non sono visibili direttamente, ma sono il motivo per cui un messaggio può essere "accettato" in millisecondi, pur impiegando più tempo per essere effettivamente consegnato: la rete di terminazione deve localizzare un abbonato in movimento prima di poterlo recapitare.

## HLR: localizzare un abbonato in movimento

Il Registro di Posizione Domestica (HLR) è il database principale dell'identità di un abbonato e della sua posizione attuale sulla rete domestica. Poiché gli utenti si spostano tra le centrali telefoniche, l'SMSC di destinazione non può presumere dove sia servito un numero, ma interroga l'HLR, che restituisce l'MSC/VLR di riferimento in modo che il messaggio possa essere inoltrato alla centrale corretta. Questa è la stessa ricerca utilizzata, da sola, per la convalida del numero: una query HLR indica se un numero è attivo, trasferito o in roaming prima ancora dell'invio. In condizioni di routing ottimali, questa ricerca corrisponde a un singolo scambio di segnalazione interno; quando un messaggio attraversa prima diverse reti intermedie, la query avviene solo dopo tutti questi passaggi, il che aggiunge latenza e ulteriori punti di errore.

## Percorsi diretti vs aggregazione multi-hop

Il percorso sopra descritto è quello ideale: il tuo ESME si collega a un SMSC che a sua volta effettua un collegamento diretto con l'operatore di destinazione. Nella realtà, il percorso è spesso più lungo. Su un percorso di aggregazione multi-hop, il messaggio passa attraverso una catena di rivenditori e hub SMS prima di raggiungere la rete di destinazione, e ogni hop è un nodo che può riscrivere, ritardare o scartare qualcosa. Tre aspetti si degradano con l'aumentare degli hop:

- Affidabilità: ogni intermediario è un'altra coda, un altro firewall e un'altra parte il cui percorso verso l'operatore potrebbe essere un percorso non ufficiale che viene bloccato senza preavviso. Più passaggi significano maggiore variabilità nel tasso di consegna.
- Conservazione dell'ID mittente: gli ID mittente alfanumerici e le intestazioni registrate possono essere sovrascritti o rimossi da un intermediario, pertanto un messaggio inviato con il vostro marchio può arrivare da un numero condiviso di grandi dimensioni: un rischio concreto nei mercati del GCC, dove gli operatori richiedono ID mittente preregistrati.
- Fedeltà DLR: una ricevuta di consegna autentica dell'operatore perde di significato dopo diversi passaggi. Gli intermediari potrebbero restituire un "consegnato" a livello di gateway che significa solo "l'ho inoltrato", non che il dispositivo l'abbia effettivamente ricevuto, quindi il report di stato non riflette più la realtà.

Ecco perché il numero di hop tra la tua API e l'operatore di destinazione è la domanda più utile da porre a un fornitore. Un percorso diretto preserva l'ID del mittente, restituisce un DLR a livello di operatore e completa la sequenza HLR-telefono senza intermediari. Gli operatori e le aziende che necessitano di visualizzare l'intera catena (accettata, instradata, consegnata, ricevuta) si affidano a una [piattaforma ESME e CDR](https://www.broadnet.me/platforms/esme-cdr) che riconcilia ogni submit_sm con il suo DLR finale e a un [gateway SMS](https://www.broadnet.me/operators/smsc-gateway) di livello carrier che termina il traffico direttamente anziché rivenderlo.

> BroadNet offre percorsi diretti dal 2003: 1,000+ connessioni con operatori in 200+ paesi (diretti all'operatore in 86 di essi) con un SLA di piattaforma del 99,99%, supportando fino a 30.000 SMS/sec per nodo. Se ti connetti come ESME tramite [SMPP](https://www.broadnet.me/developers/smpp) o termini attraverso il nostro [gateway SMSC](https://www.broadnet.me/operators/smsc-gateway), ottieni un instradamento con conferme di consegna a livello di operatore, non una catena multi-hop che riscrive silenziosamente il tuo ID mittente.

## Domande frequenti

### Come fa un SMSC a inviare un SMS?

L'SMSC utilizza la modalità "store-and-forward": accetta e memorizza il messaggio, quindi interroga l'HLR dell'operatore di destinazione per trovare l'MSC/VLR dell'abbonato. Inoltra il messaggio (MT-ForwardSM) a tale centrale, che effettua un cercapersone sul telefono e lo consegna. Se il telefono non è raggiungibile, l'SMSC lo mette in coda e riprova entro il periodo di validità del messaggio, quindi genera una ricevuta di consegna.

### Che cos'è un ESME?

Un ESME (External Short Messaging Entity) è qualsiasi applicazione che si connette a un SMSC per inviare o ricevere SMS, come ad esempio un servizio OTP, una piattaforma per campagne o un sistema di allerta. Si connette all'SMSC tramite SMPP come client ed emette il comando submit_sm per inviare messaggi destinati al dispositivo mobile, mentre l'SMSC risponde con il comando deliver_sm per ricevere le risposte e le conferme di consegna. In breve: l'ESME è il software che trasmette i messaggi.

### Qual è il percorso che un SMS A2P compie dall'app al dispositivo mobile?

L'applicazione si connette a un aggregatore/SMSC come ESME e invia submit_sm. L'SMSC memorizza il messaggio e lo instrada, direttamente o tramite hub SMS, all'SMSC dell'operatore di destinazione. Tale SMSC interroga l'HLR per individuare l'MSC di servizio, inoltra il messaggio a quest'ultimo e il centralino effettua una chiamata al terminale (la consegna MT). La conferma di ricezione del terminale ritorna come ricevuta di consegna lungo la stessa catena.

## Riferimenti

- 3GPP — TS 23.040, Realizzazione tecnica del servizio di messaggistica breve (SMS): [3gpp.org](https://www.3gpp.org/)
- SMPP: specifica del protocollo Peer-to-Peer per messaggi brevi (ESME-to-SMSC): [smpp.org](https://smpp.org/)
- BroadNet — [cos'è un SMSC](https://www.broadnet.me/answers/what-is-smsc) e la guida all'[integrazione SMPP](https://www.broadnet.me/developers/smpp).
- BroadNet — [Piattaforma ESME e CDR](https://www.broadnet.me/platforms/esme-cdr) e [gateway SMSC](https://www.broadnet.me/operators/smsc-gateway).
