Simple Mail Transfer Protocol

De Viquipèdia
Dreceres ràpides: navegació, cerca
El model TCP/IP
Capa Protocols
Aplicació HTTP, FTP, TFTP, SMTP, POP3, IMAP, DNS, IRC, SSH, Telnet, TLS i SSL, NFS, NNTP, NTP, SMB/CIFS, SNMP, Gopher, RTP, RTCP, SOAP, SIP
Transport TCP, UDP, SCTP, SPX, NetBIOS
Xarxa IP (IPv4, IPv5, IPv6), ICMP, IGMP, AppleTalk, IPX, NetBEUI, X.25
Enllaç de dades ARP, RARP, ATM, DSL, Ethernet, Frame Relay, HDLC, NDP, PPP, Token Ring, Wi-Fi
Física Cable coaxial, Cable de fibra òptica, Cable de parells trenats, Microones, Ràdio, RS-232
modifica

SMTP és l'acrònim de Simple Mail Transfer Protocol, és a dir protocol simple de transferència de correu i és un protocol de xarxa basat en text utilitzat per a l'intercanvi de missatges de correu electrònic entre ordinador i/o diversos dispositius (PDAs, mòbils, etc). Per poder adaptar-se a les necessitats sorgides del creixement i la popularitat d'Internet s'han creat diverses ampliacions d'aquest protocol, com ara poder enviar text amb format o fitxers adjunts.

SMTP es basa en el model client-servidor, on un client envia un missatge a un o a diversos receptors.

En el conjunt de protocols TCP/IP, l'SMTP va per damunt del TCP i utilitza normalment el port 25 al servidor per establir la connexió.

Exemple de comunicació [modifica]

En primer lloc cal establir una connexió entre l'emisor (client) i el receptor (servidor). Això es pot fer automàticament amb un programa client de correu o mitjançant un client TELNET.

Servidor: 220 Servidor ESMTP
Client: HELO
Servidor: 250 Hello, please meet you
Client: MAIL FROM: jo@dominio.com
Servidor: 250 Ok
Client: RCPT TO: destinatari@sudomini.com
Servidor: 250 Ok
Client: DATA
Servidor: 354 End data with <CR><LF>.<CR><LF>
Client: Subject: Camp d'assumpte
Client: From: jo@domini.com
Client: To: destinatari@subdomini.com
Client: 
Client: Hola,
Client: Això és una prova.
Client: Adéu.
Client: .
Servidor: 250 Ok: queued as 12345
Client: quit
Servidor: 221 Bye

A l'exemple es poden veure les ordres bàsiques d'SMTP:

  • HELO per obrir una sessió amb el servidor
  • MAIL FROM per indicar qui envia el missatge
  • RCPT TO per indicar el destinatari
  • DATA per indicar l'inici del missatge, que finalitzarà quan hi hagi una línia amb tan sols un punt.
  • QUIT per tancar la sessió


Les respostes que dóna el servidor poden ser de diverses classes:

  • 2XX per a una resposta afirmativa
  • 3XX per a una resposta temporal afirmativa
  • 4XX per a una resposta d'error. S'espera fins que es repeteixi la instrucció
  • 5XX per a una resposta d'error

Un cop el servidor rep el missatge finalitzat amb un punt el pot:

  • Emmagatzemar si és per a un destinatari que pertany al seu domini
  • Retransmetre'l a un altre servidor perquè finalment arribi a un servidor del domini receptor