SMTP

Il protocollo Simple Mail Transfer Protocol


Il protocollo Simple Mail Transfer Protocol (SMTP) specifica uno standard per lo scambio di posta elettronica tra nodi di rete TCP/IP. In particolare questo standard specifica l'esatto formato dei messaggi che un client su una macchina usa per inviare posta al server su un'altra macchina. Questo standard e' definito dallo RFC 822.

SMTP non specifica come faccia il sistema ricevente ad accettare posta, o come sia costruita l'interfaccia utente alla posta, ma solo il formato dei messaggi scambiati e i messaggi di protocollo usati per effettuare la scambio.

SMTP e' basato sull'uso di NVT ed e' connesso al porto noto 25.

Il client stabilisce una connessione al server ed attende da questi un messaggio '220 READY FOR MAIL'. Il client invia al server un messaggio 'HELO' e il server risponde con il proprio identificativo.

Quando la connessione e' stat stabilita e questo 'handshake' e' terminato il client puo inviare uno o piu' messaggi di posta, terminare la connessione, o chiedere al server di invertire i ruoli per far scorrere la posta in direzione opposta.

Il ricevente deve mandar conferma di ogni messaggio ricevuto; puo' inoltre abortire la connessione o abortire un singolo messaggio.

Le transazioni di posta iniziano con un comando MAIL che identifica il mittente. Il server invia un responso '250 OK'. L'inviante manda un messaggio RCPT seguito dal nome del destinatario, a cui il server risponde con un 250 OK o col messaggio di errore '550 No such user here' che indica la non esistenza del destinatario.

L'inviante manda un comando DATA a cui il server risponde con '354 Start mail input'. Segue il messaggio formattato in modo standard, inviato dal client e terminato con una linea contenete un solo punto.

Il comando client QUIT termina la transazione.

Il comando TURN richiede l'inversione dei ruoli.

Il messaggio inviato consiste di una testata, seguita da una linea vuota seguita dal corpo del messaggio. La testata consiste di una serie di linee a chiave: un campo predefinito, il carattere due punti, uno o piu' spazi e il valore del campo. Il protocollo SMTP non definisce quali azioni il client o server debba intraprendere con ciascun campo a chiave: questo e' compito del programma di interfaccia utente o del programma di smistamento. SMTP considera il messaggio come puri dati da scambiare.

Il documento RFC 822 specifica la lista dei campi a chiave che i programmi di posta devono riconoscer, come minimo. I programmi di posta sono liberi di aggiungere altri campi a chiave.

Alcuni campi molto usati sono:


©1998 A.P.Software Informatica