SIP 503 Service Unavailable significa che il server che ha ricevuto la chiamata al momento non può gestirla, perché è sovraccarico, in manutenzione o non ha modo di completarla. Sulle rotte VoIP un 503 di solito indica un limite di capacità (canali o CPS), nessun fornitore disponibile per la destinazione o un problema dell'account, e la soluzione giusta dipende da quale hop l'ha inviato.
Cosa significa SIP 503?
L'RFC 3261 definisce il 503 come una condizione temporanea: il server è "temporarily unable to process the request due to a temporary overloading or maintenance", cioè momentaneamente incapace di elaborare la richiesta per sovraccarico o manutenzione. Il server può aggiungere un header Retry-After che dice quando riprovare. L'RFC dice anche che un client che riceve un 503 dovrebbe provare un server alternativo e non inviare nuove richieste a quel server per il periodo indicato in Retry-After.
In pratica molti switch usano il 503 come risposta generica per "non posso completare questa chiamata". Per questo il 503 è uno dei codici di errore più frequenti nei CDR wholesale, e per questo il codice da solo non basta per la diagnosi. Guarda l'header Reason: i carrier spesso aggiungono il cause code Q.850 originale, e l'RFC 3398 mappa sul 503 le cause 34, 38, 41, 42 e 47 (nessun circuito, rete fuori servizio, guasto temporaneo, congestione, risorsa non disponibile).
Cosa causa un errore SIP 503?
| Causa | Come riconoscerla |
|---|---|
| Limite di canali raggiunto | I 503 compaiono solo nelle ore di punta, quando le chiamate contemporanee toccano il massimo concordato |
| Limite CPS superato | I 503 arrivano a raffiche quando un dialer lancia molte chiamate insieme |
| Nessuna rotta per la destinazione | Tutte le chiamate verso un prefisso falliscono insieme, le altre destinazioni funzionano |
| Fornitore giù o congestionato | L'header Reason mostra la causa 34, 41 o 42, spesso da un carrier a valle |
| Problema di account o di credito | Tutte le chiamate falliscono dal primo tentativo, subito dopo una scadenza di pagamento o di limite |
| Il tuo PBX è sovraccarico | Il 503 arriva dalla tua parte, non dal provider, spesso con CPU alta |
| Manutenzione | Breve interruzione, a volte con un header Retry-After |
Alcuni provider restituiscono 403 o 402 per i problemi di credito e 503 per la capacità; altri usano 503 per tutto. Chiedi al tuo fornitore la sua tabella dei codici.
Come si risolve un SIP 503 Service Unavailable?
- Trova chi l'ha inviato. In una traccia SIP, controlla gli header Via e Server o User-Agent del 503. Se l'ha generato il tuo PBX, il problema è locale.
- Controlla l'andamento nel tempo. I 503 che seguono i tuoi picchi di traffico indicano canali o CPS. Confronta le chiamate contemporanee di picco con il tuo limite (vedi canali e CPS di un SIP trunk).
- Controlla l'andamento per destinazione. Se fallisce solo un paese o un operatore, il fornitore ha perso la sua rotta lì. Chiedi una nuova rotta o sposta il prefisso su un backup.
- Regola il ritmo del dialer. Distribuisci i lanci delle chiamate per restare sotto il limite CPS, oppure chiedine uno più alto.
- Configura il failover. Manda la chiamata a una seconda rotta quando la prima restituisce 503, come raccomanda l'RFC 3261. È una parte fondamentale del least cost routing.
- Rispetta il Retry-After. Bombardare un server in manutenzione crea solo altri errori.
Il SIP 503 è colpa del chiamante o della rete?
Quasi sempre della rete o della rotta. La persona chiamata non vede mai un 503: è un errore tra server. Per questo i 503 abbassano sia l'ASR sia la NER, mentre i codici di occupato o mancata risposta come 486 e 480 riguardano l'utente chiamato. Una rotta con una quota stabile di 503 sopra qualche punto percentuale dei tentativi è sottodimensionata o instabile (vedi NER vs ASR).
SIP 503 su Cisco, Asterisk e FreeSWITCH
Sui gateway Cisco e su CUBE, un 503 rimandato verso il tuo PBX spesso significa che non c'era un trunk o una risorsa in uscita disponibile per la chiamata. In Asterisk, un 503 ricevuto dal provider di solito appare come dial status CONGESTION (hangup cause 34). In FreeSWITCH, NORMAL_CIRCUIT_CONGESTION e cause di risorsa simili corrispondono al 503. In ogni caso leggi la riga di log che precede il 503 per vedere quale limite o quale rotta l'ha fatto scattare. L'elenco completo dei codici è nella nostra pagina sui codici di errore SIP.
Quando il problema è la rotta
Se i 503 continuano su una destinazione dopo che hai controllato limiti e ritmo, la rotta non ha capacità sufficiente. VoIPMatcher procura dai suoi carrier rotte di terminazione VoIP primarie e di backup e le gestisce per te. Richiedi una rotta VoIP di backup indicando destinazioni, canali e CPS che ti servono.
Domande frequenti
Che differenza c'è tra SIP 503 e 500?
500 Server Internal Error significa che il server ha incontrato una condizione imprevista, spesso un errore software o una causa non mappata. 503 Service Unavailable indica una condizione temporanea come sovraccarico, manutenzione o mancanza di capacità, e lascia intendere che la chiamata potrebbe funzionare più tardi o su un altro server. Per l'instradamento, il 503 è il segnale classico per passare a una rotta di backup.
Cos'è l'header Retry-After in un 503?
Retry-After è un header opzionale della risposta 503 che dice al client quanti secondi attendere prima di inviare nuove richieste a quel server. L'RFC 3261 dice che in quel periodo il client non dovrebbe inoltrare altre richieste a quel server, e dovrebbe invece provare un server alternativo.
Un SIP 503 può essere causato dal mio PBX?
Sì. Se il tuo PBX o session border controller esaurisce canali, licenze o CPU, oppure non ha una rotta in uscita che corrisponde al numero, può restituire 503 ai tuoi stessi utenti prima che la chiamata arrivi al provider. Una traccia SIP mostra quale apparato ha generato la risposta.
Un SIP 503 costa qualcosa?
No. Un 503 è un tentativo di chiamata fallito senza risposta, quindi sulle normali rotte wholesale non viene fatturato al minuto. Ti costa però in modo indiretto: i tentativi falliti abbassano l'ASR, sprecano capacità del dialer e tempo degli operatori, e un fornitore può limitare gli account che inviano una quota molto alta di chiamate fallite.
Ti serve una rotta?
Mandaci destinazione, tipo di rotta e tariffa target. Ti rispondiamo con quello che possiamo offrirti.