Simple Mail Transfer Protocol
SMTP
Paprastas pašto perdavimo protokolas
Apibrėžimas
SMTP (Simple Mail Transfer Protocol ) — pašto perdavimo protokolas, naudojamas elektroniniams laiškams pristatyti į gavėjo el.pašto dėžutę.
Paaiškinimas
SMTP (trumpinys nuo angl. Simple Mail Transfer Protocol 'paprastas pašto perdavimo protokolas') — de facto standartas el.pašto laiškų perdavimui internete. Naudojamas elektroniniams laiškams pristatyti į gavėjo el.pašto dėžutę. SMTP protokolas nuo 1980 metų tapo plačiai naudojamas. SMTP naudoja TCP portus 25 arba 587. Jeigu serveris palaiko “saugų paštą” (SMTP SSL) portas bus 25 arba 465.
SMTP protokolas yra santykinai paprastas. Siunčiančioji pusė (klientas) duoda tekstines komandas, gaunančioji (serveris) apie komandų vykdymo rezultatus praneša gražindama „klaidų (būsenos) kodus“. Originali SMTP protokolo versija reikalavo, kad tiek komandos, tiek laiško turinys būtų ASCII koduotėje. Dėl to buvo komplikuota siųsti dvejetainius failus. Šiai problemai spręsti buvo naudojamas MIME protokolas arba 8BITMIME išplėtimas.
Praplėsta SMTP versija — ESMTP (angl. Extended SMTP), apibrėžta 1995, dokumentavo iki to laiko susikaupusius protokolo patobulinimus ir standartizavo SMTP protokolo išplėtimo galimybes.
Pagrindinės komandos
HELO siuntėjo.domenas Pirmoji komandą prisijungus prie SMTP serverio
EHLO siuntėjo.domenas Pirmoji komanda prisijungus prie ESMTP serverio
MAIL FROM <siuntėjo@adresas> siuntėjo nurodymas
RCPT TO <gavėjo@adresas> gavėjo adresas, vienos sesijos metu gali būti nurodyti keli gavėjai
DATA instrukcija, kad klientas pasiruošęs siųsti el.pašto laiško turinį
QUIT paskutinė sesijos komanda
SMTP Serveris
Siunčiant elektroniniu paštu žinutes, elektroninio pašto klientas bendrauja su SMTP serverio tvarkyklėmis. Jūsų elektroninio pašto SMTP serveris gali užmegzti ryšį su kitais SMTP serveriais ir taip pristatyti išsiųstą elektroninį laišką.
Tarkime, kad norime siųsti e-paštu žinutę. Sakykime turime elektroninio pašto paskyrą tinklalapyje www.yahoo.com, o gavėjo elektroninio pašto adresas yra gediminas@hotmail.com. Elektronio laiško siuntimas vyksta naudojantis žiniatinklio elektroninio pašto klientu. Štai kas atsitinka parašius žinutę iš savo yahoo.com paskyros: www.yahoo.com prisijungia prie savo SMTP serverio mail.yahoo.com pasinaudodama 25 portu.Yahoo tinklalapis užmezgęs ryšį su SMTP serveriu perduoda jam gavėjo ir siuntėjo elektroninio pašto adresus ir elektroninio laiško kūną (tekstą ir grafinius elementus su prisegtais failais). SMTP serveris priėmęs gavėjo adresą (gediminas@hotmail.com) išskaido jį į dvi dalis: į gavėjo pavadinimą (gediminas) ir domeno vardą (hotmail.com). Toliau SMTP serveris tikrina ar gavėjo ir siuntėjo adresai yra viename domene. Kadangi gavėjas yra kitame domene, SMTP turi užmegzti ryšį su tuo domenu.
- Elektroninio laiško kelias nuo siutėjo iki gavėjo
Yahoo paskyros SMTP serveris nežinodamas gavėjo domeno IP adreso siunčia užklausą DNS serveriui prašydamas Hotmail.com IP adreso. Gavęs atsakymą Yahoo paskyros SMTP serveris naudodamas jungiasi su Hotmail.com tinklalapio SMTP serveriu klausdamas apie gavėją (gediminas). Gavęs teigiamą atsakymą siuntėjo SMTP serveris perduoda gavėjo POP3 serveriui pilną pranešimą su siuntėjo adresu ir visomis prisegtomis bylomis. Gavėjo POP3 serveris pasirūpina, kad elektroninis pranešimas pasiektų gavėjo elektroninio pašto dėžutę.
Jei dėl kokių nors priežasčių, Yahoo tinklalapio SMTP serveris negali prisijungti prie Hotmail SMTP serverio, tada žinutė eina į eilę. SMTP serveryje naudojama siuntimo eilė. Siuntimo eilėje esantys pranešimai periodiškai bandomi išsiųsti nurodytu gavėjo adresu taip išvalant siuntimo eilę. Po tam tikro laiko, kuris nustatytas siuntimo eilės programoje nepavykus išsiųsti pranešimo siuntėjo SMTP serveriui gražinamas įspėjimas apie nepavykusį elektroninio laiško išsiuntimą.
Plačiau apie POP ir IMAP protokolų savybes skaitykite ties jų žymomis žodyne.
Naudota Literatūra
1. http://email.cityu.edu.hk/faq/popimap.htm
2. http://communication.howstuffworks.com/email3.htm