# Panoramica del protocollo SMPP

> SMPP (Short Message Peer-to-Peer) è un protocollo aperto, binario e basato su TCP per lo scambio di SMS tra un'applicazione esterna (ESME) e un Short Message Service Centre (SMSC). È l'interfaccia standard per la messaggistica A2P ad alto throughput perché è stateful, a bassa latenza e supporta nativamente le ricevute di consegna.

- URL canonico: https://www.broadnet.me/it/reference/smpp-protocol-overview
- Lingua: it
- Ultimo aggiornamento: 2026-07-18
- Editore: BroadNet (https://www.broadnet.me)

Che cos'è SMPP, come funziona la sessione ESME↔SMSC, la differenza tra v3.4 e v5.0 e perché resta lo standard per SMS A2P ad alto throughput.

## Che cos'è SMPP e perché esiste

SMPP è un protocollo applicativo di livello 7 che consente a un'applicazione di messaggistica di scambiare messaggi brevi con un SMSC o un gateway di instradamento. Laddove un'API REST è comoda per volumi ridotti, SMPP è una sessione binaria persistente che evita l'overhead HTTP per ogni messaggio, sostiene migliaia di messaggi al secondo su una singola connessione e trasporta le operazioni di submit, consegna, query, replace e cancel, oltre alle ricevute di consegna asincrone. È agnostico rispetto alla rete sottostante: l'SMSC gestisce la consegna al terminale tramite SS7/MAP, SIGTRAN o IP. Pubblicato per la prima volta da Aldiscon/Logica alla fine degli anni '90, è oggi mantenuto dallo SMPP Developers Forum; la v3.4 (1999) resta la versione più diffusa.

## L'ESME e l'SMSC

I due peer sono l'ESME (External Short Message Entity — la vostra applicazione) e l'SMSC (Short Message Service Centre — il gateway dell'operatore o dell'aggregatore). L'ESME apre una connessione TCP verso la porta in ascolto dell'SMSC (la 2775 registrata presso IANA per il traffico in chiaro) e si autentica con un bind. Nonostante il nome 'peer-to-peer', la relazione è tipicamente da client (ESME) a server (SMSC); una volta stabilita la sessione, entrambe le parti possono originare PDU, ed è così che l'SMSC inoltra all'ESME i messaggi mobile-originated e le ricevute di consegna.

*Ruoli in una sessione SMPP*

| Termine | Significato |
|---|---|
| ESME | External Short Message Entity — l'applicazione che si connette (il vostro mittente) |
| SMSC | Short Message Service Centre — il gateway dell'operatore/aggregatore |
| MC | Message Centre — il termine della v5.0 che generalizza l'SMSC |
| MT | Mobile-Terminated — un messaggio consegnato a un terminale |
| MO | Mobile-Originated — un messaggio inviato da un terminale all'ESME |

## Modello di sessione e trasporto

SMPP opera su una singola connessione TCP a lunga durata. Dopo l'handshake TCP l'ESME invia una PDU di bind; con un bind_resp positivo la sessione entra in stato bound e resta aperta a tempo indeterminato, mantenuta attiva da PDU enquire_link periodiche. Le operazioni sono coppie richiesta/risposta correlate dal sequence_number e più richieste possono essere in sospeso contemporaneamente (modalità con finestra / asincrona), fino a una window size negoziata. La sessione termina con uno scambio di unbind o con la chiusura del TCP. SMPP non prevede cifratura integrata; la riservatezza si ottiene facendo transitare la sessione su TLS.

## Versioni: v3.3, v3.4 e v5.0

Nella pratica contano tre versioni. La v3.3 è legacy e raramente usata. La v3.4 ha introdotto il bind transceiver e i parametri opzionali TLV ed è oggi lo standard di fatto del settore. La v5.0 è retrocompatibile con la v3.4 e aggiunge la segnalazione di controllo della congestione, le operazioni di broadcast e ulteriori stati del messaggio, ma è meno diffusa. La versione negoziata è trasportata nel campo interface_version del bind: 0x34 per la v3.4 e 0x50 per la v5.0.

*Valori di interface_version*

| Valore | Versione |
|---|---|
| 0x33 o inferiore | SMPP v3.3 o precedente |
| 0x34 | SMPP v3.4 |
| 0x50 | SMPP v5.0 |

## Domande frequenti

### SMPP è ancora utilizzato nel 2026?

Sì. SMPP resta il protocollo dominante per gli SMS A2P ad alto volume tra applicazioni, aggregatori e SMSC degli operatori. Le API REST si appoggiano su SMPP per comodità, ma l'interconnessione verso l'operatore è quasi sempre SMPP su TCP, di norma protetto con TLS.

### Quale porta usa SMPP?

Il valore predefinito registrato presso IANA è la porta TCP 2775 per SMPP in chiaro. Non esiste un'unica porta TLS standardizzata, quindi i provider espongono una porta separata abilitata al TLS (ad esempio la 3550 o una porta dedicata all'account) per i bind cifrati. Usate sempre la porta fornita dal vostro provider.

### Qual è la differenza tra SMPP e SMTP?

Sono protocolli distinti. SMTP trasporta la posta elettronica; SMPP trasporta SMS tra applicazioni e un SMSC. Gli acronimi simili generano confusione, ma i due protocolli non condividono design, porte né formato dei messaggi.

### Mi serve SMPP o basta un'API SMS REST?

Un'API REST è più semplice e va bene per volumi da bassi a moderati e per un'integrazione rapida. SMPP si rivela vantaggioso ad alto throughput, dove una sessione binaria persistente offre latenza inferiore, TPS sostenuto più elevato e ricevute di consegna native e in tempo reale sulla stessa connessione.

## Fonti

- [SMPP v3.4 specification (Issue 1.2)](https://smpp.org/SMPP_v3_4_Issue1_2.pdf)
- [SMPP v5.0 specification](https://smpp.org/SMPP_v5.pdf)
- [3GPP TS 23.040 — SMS technical realization](https://www.3gpp.org/dynareport/23040.htm)

## Correlati

- [Che cos'è SMPP?](https://www.broadnet.me/it/answers/what-is-smpp)
- [Anatomia della PDU SMPP](https://www.broadnet.me/it/reference/smpp-pdu-anatomy)
- [Gateway SMSC (operatori)](https://www.broadnet.me/it/operators/smsc-gateway)
- [Prodotto SMS API](https://www.broadnet.me/it/products/sms-api)
- [Documentazione per sviluppatori](https://www.broadnet.me/it/developers)
