281
bog’lanish o’zaro Hong Kong va New York serverlari o’rtasida bo’ladi. Agar
klientning pochta serveri o’chirilgan bo’lsa, xabar biror bir vositachi pochta
serverida emas, balki Alisaning pochta serverida yangi urinishlar amalga
oshirilguncha saqlanadi.
SMTP klient (C) va SMTP server (S) o’rtasida xabar almashish jarayonini
misol tariqasida ko’rib chiqamiz. Klientning xost nomi “crepes.fr” va serverning
xost nomi “hamburger.edu” bo’lsin. Klient va server o’zlarining ASCII matn
qatorlarini mos ravishda o’zlarining TCP soketiga yuborishadi. TCP bog’lanish
o’rnatilganidan so’ng quyidagi dialog boshlanadi:
S: 220 hamburger.edu
C: HELO crepes.fr
S: 250 Hello crepes.fr, pleased to meet you
C: MAIL FROM:
S: 250 Alisa @crepes.fr ... Sender ok
C: RCPT TO:
S: 250 klient@hamburger.edu ... Recipient ok
C: DATA
S: 354 Enter mail, end with “.” on a line by itself
C: Do you like ketchup?
C: How about pickles?
C: .
S: 250 Message accepted for delivery
C: QUIT
S: 221 hamburger.edu closing connection
Yuqoridagi misolda klient xabar (“Do you like ketchup? How about
pickles?”) ni pochta serveri “crepes.fr” dan pochta serveri “hamburger.edu” ga
yubordi. Bunda klient 5 ta klient kiritgan: HELO (HELLO ning abreviaturasi),
282
MAIL FROM, RCPT TO, DATA, va QUIT. Bundan tashqari, klient serverga
xabar oxirini anglatuvchi qatorni ham yuboradi. Server klientning buyruqlariga
kod hamda ba’zi bir ingliz tilidagi jumlalar bilan javob qaytaradi. Shuni
qo’shimcha qilish kerakki, SMTP doimiy bog’lanishdan foydalanadi: agar xabar
yuboruvchi pochta serveri bir necha xabarga ega bo’lsa, u holda bu server barcha
xabarlarni bitta TCP bog’lanish orqali yuboradi. Klient har bir xabarni yangi
“MAIL FROM: crepes.fr” qatori bilan boshlaydi va barcha xabarlar yuborilgandan
so’ng QUIT ni kiritadi.
SMTP bilan haqiqiy dialogni amalga oshirmoqchi bo’lsangiz Telnet dan
foydalaning. Buning uchun “telnet serverName 25” qatorini kiriting.Bu yerda
serverName – mahalliy pochta serveri nomidir. Bu ishni amalga oshirganingizda,
mahalliy xost va pochta serveri o’rtasida TCP bog’lanish o’rnatiladi. Yuqoridagi
qatorni kiritganingizdan so’ng, siz darhol serverdan “220” javob xabarini qabul
qilasiz. Keyin esa mos ravishda HELO, MAIL FROM, RCPT TO, DATA,
CRLF.CRLF va QUIT buyruqlarini kiriting.