Protocoale TCP/IP
diddles_118
pc

Protocolul SMTP

SMTP (Simple Mail Transfer Protocol) este un protocol simplu, folosit pentru transmiterea mesajelor în format electronic pe Internet.

Protocolul SMTP specifică modul în care mesajele de poştă electronică sunt transferate între procese SMTP aflate pe sisteme diferite. Procesul SMTP care  transmite un mesaj este numit client SMTP, iar procesul SMTP care primeşte mesajul este numit server SMTP.

Protocolul nu se referă la modul în care mesajul ce urmează a fi transmis este trecut de la utilizator către clientul SMTP, sau cum mesajul ce urmează a fi recepţionat de serverul SMTP este livrat destinatarului, nici la modul în care este memorat mesajul şi nici de câte ori clientul SMTP încearcă să transmită mesajul.

Obiectivul protocolului SMTP este de a trimite mail-uri într-un mod eficient. El este independent de sistemele care participă la comunicaţie, dacă se asigură un canal prin care datele să fie transmise într-un mod ordonat .

SMTP foloseşte următorul model de comunicaţie: transmiţătorul, ca urmare a unei cereri de transmisie a mail-ului, stabileşte o legătură bidirecţională cu receptorul, care poate fi destinatarul final al mail-ului sau doar un intermediar. De aceea  este necesar să se precizeze numele de host al destinaţiei finale precum şi utilizatorul căruia îi este destinat mesajul.

Mod de funcţionare:

  • Comunicarea între client / transmiţător şi server / receptor se realizează prin texte ASCII. Iniţial clientul stabileşte conexiunea către server şi aşteaptă ca serverul să-i răspundă cu mesajul “220 Service Ready”. Dacă serverul e supraîncărcat, poate să întârzie cu trimiterea unui răspuns.
  • După primirea mesajului cu codul 220 , clientul trimite comanda HELO prin care îşi indică identitatea.
  • Odată ce comunicarea a fost stabilită, clientul poate trimite unul sau mai multe mesaje (prin comanda MAIL), poate încheia conexiunea sau poate folosi unele servicii precum verificarea adreselor de e-mail.
  • Serverul trebuie să răspundă după fiecare comandă indicând  dacă aceasta a fost acceptată, dacă se mai aşteaptă comenzi sau dacă există erori în scrierea acestor comenzi.
  • Atunci când un mesaj este trimis către mai mulţi destinatari, protocolul SMTP urmăreşte trimiterea datelor din mesaj o singură dată pentru toţi destinatarii care aparţin aceluiaşi sistem destinaţie.
  • Un server SMTP trebuie să cunoască cel puţin următoarele comenzi :
  • HELO - identificare computer expeditor;
  • EHLO - identificare computer expeditor cu cerere de mod extins;
  • MAIL FROM - specificare expeditorului;
  • RCPT TO - specificarea destinatarului ;
  • DATA - conţinutul mesajului;
  • RSET – Reset;
  • QUIT - termină sesiunea;
  • HELP - ajutor pentru comenzi;
  • VRFY – verificare o adresa;
Fig1-6