You are on page 1of 43

CHNG 3

CAC NGHI THC TRUYEN NHAN ---- b ---Cong viec phat trien cac he thong Mail (Mail System) oi hoi hnh thanh cac chuan ve Mail. ieu nay giup cho viec gi nhan cac thong iep c am bao , lam cho nhng ngi cac ni khac nhau co the trao oi thong tin cho nhau. Co 2 chuan ve Mail quan trong nhat va c s dung nhieu nhat t trc en nay la X.400 va SMTP ( Simple Mail Transfer Protocol). SMTP thng i kem vi chuan POP3 va do han che cua SMTP ma ngay nay ngi ta dung chuan m rong cua no la ESMTP (Extended SMTP). Muc ch chnh cua X.400 la cho phep cac mail co the c truyen nhan thong qua cac loai mang khac nhau bat chap cau hnh phan cng, he ieu hanh mang , giao thc truyen dan c dung. Con muc ch cua chuan SMTP mieu ta cach ieu khien cac thong iep tren mang Internet. ieu quan trong cua chuan SMTP la gia nh may nhan phai dung giao thc SMTP gi Mail cho 1 Server luon luon hoat ong. Sau o, ngi nhan se en lay Mail cua ho t Server khi nao ho muon dung giao thc POP (Post Office Protocol), ngay nay POP c cai tien thanh POP3 (Post Officce Protocol vertion 3). Cac giao thc Mail thong dung : chuan X.400, chuan MAIP, SMTP (ESMTP), POP3 . ay ch trnh bay chi tiet ve POP3 va SMTP .

Phan 1

Giao thc SMTP (Simple Mail transfer Protocol )


-----***----Bo phan chnh cua he thong Internet Mail chnh la cac MTA ( Message Transfer Agent), cac MTA gi 1 vai tro quan trong trong viec chuyen giao email. V du sau khi mot ngi s dung gi mot bc mail ti hang i message, MTA se lay o va chuyen no ti mot MTA khac. Qua trnh o se tiep tuc tiep dien cho en khi message en c ni nhan. e co the lien lac vi cac MTA thong qua ket noi TCP cac MTA cua he thong Internet Mail co the s dung nhieu nghi thc khac nhau e chuyen giao cac thong tin (X400,ESMTP,....), Nhng ay ta ch xet nghi thc SMTP. ay la mot nghi thc cho phep chuyen mail t iem nay sang iem khac cho en ch tren

mang Internet. No c cau tao bi tap cac cau lenh e Client co the yeu cau Sever thc hien mot so tac vu va tap cac cau tra li e Server hoi ap lai cho Client ve ket qua thc hien cac tac vu o. Mot chng trnh muon gi c mail th no phai biet a ch cua mot SMTP server. Server nay co nhiem vu chuyen mail en ni can thiet.

I- Gii thieu
Mot ac trng quan trong cua SMTP la kha nang chia ca Mail qua moi trng dch vu giao chuyen, mot dch vu giao chuyen cung cap mot moi trng truyen thong lien qua trnh (Interprocess Communication Environment IPCE ). Mot moi trng truyen thong lien qua trnh co the bao gom mot Network, vai Network, hay mot tap hp con cua Network. ieu o quan trong cho viec thc hien he thong giao chuyen (hay cac IPCE) one-to-one vi Network, mot qua trnh co the giao tiep vi mot qua trnh khac thong qua viec nhan biet IPCE. Mail la ng dung hay la cach dung cua giao tiep lien qua trnh, Mail co the giao tiep gia cac qua trnh trong nhng IPCE khac bang cach chia ca thong qua mot qua trnh c ket noi en hai (hay nhieu ) IPCE. Chi tiet hn Mail co the chia ca gia nhng Host tren he thong giao chuyen khac nhau bang mot Host tren ca hai he thong chuyen giao.

II- Mo hnh SMTP


SMTP c thiet ke da tren mo hnh giao tiep sau: nh ket qua cua mot yeu cau Mail cua user . Sender- SMTP thiet lap mot kenh hai ng van chuyen en mot receiver- SMTP . Receiver- SMTP co the la ch en cuoi cung hay mot trung gian. Nhng lenh SMTP c sinh ra bi Sender-SMTP gi en Receiver- SMTP. Nhng reply SMTP c gi t Receiver- SMTP en Sender- SMTP trong s ap ng cho nhng lenh o. Khi mot kenh giao chuyen c thiet lap sender-SMTP gi i 1 lenh Mail bieu th cho Sender cua mail o. Neu ReceiverSMTP co the chap nhan mail, no tra li vi mot OK reply. Sau o Sender-SMTP gi mot lenh RCPT nhan dien Receiver mail neu Receiver-SMTP co the chap nhan mail no tra li vi 1 OK reply neu khong no se li vi 1 reply bac bo receiver o (nhng khong phai toan bo s giao dch o). Sender- SMTP va Receiver- SMTP co the ieu nh vi vai recipient, khi nhng recipient a c dan xep Sender-SMTP gi mail data ket thuc vi mot chuoi ac biet neu receiver x ly mail data thanh

cong no tra li vi 1 OK reply. Cuoc hoi thoai mot cach chu y lock step (one-at-a-time). User File Syste m Sender SMTP
SMTP Commands/Repli es

File

and Mail

Receiver
SMTP

Syst em

Sender-SMTP

S o tren la mo hnh cho cach dung SMTP. SMTP cung cap nhng c che giao chuyen Mail mot cach trc tiep t Host cua User gi en host cua user nhan khi ca hai host c ket noi en cung dch vu giao chuyen hay qua nhieu SMTP-Sever tiep van khi host xuat phat hay ch en khong c ket noi en cung dch vu chuyen giao. e co the cung cap kha nang tiep van SMTP-Sever phai c cung cap ten cua host en cung chang han nh han cua Mailhost en . oi so cua lenh mail la 1 reverse-path no ac ta mail o t au en; oi so cho RCPT la 1 Forward-path no ac ta mail o i en au. Forward-path la mot lo trnh nguon, reverse-path la mot lo trnh tr ve (no co the c dung e tra ve mot message cho sender- khi xay ra loi vi 1 message c tiep van). Khi cung mot message c gi cho nhieu recipient SMTP khuyen khch chuyen giao ch mot ban sao cua data cho tat ca cac Receiver cung mot host ch. Nhng command va reply mail co nhng cu phap khac khe. Nhng reply cung co mot ma so. Trong nhng th du theo sau se xuat hien nhng lenh (commands) va nhng tra li (replies) , mot danh sach cac lenh va reply hoan chnh trong phan 4. Cac command va reply khong phan biet kieu ch hoa hay thng. Lu y, ieu nay khong ung vi ten cua User mailbox. Cho mot so host ten cua user co phan biet kieu ch, SMTP phai thi hanh ay u viec nhan kieu ch va gi gn kieu ch cua nhng user name nh chung a xuat hien trong nhng oi so cua mailbox. Host names khong phan biet kieu ch. Cac command va reply la nhng ky t c tao ra t tap ky t ASCII{1}, khi dch vu van chuyen cung cap mot kenh chuyen giao 8 bit (octet). Moi mot ky t 7 bit c truyen ung

ReceiverSMTP

bang cach chuyen no ve he 8 (octet) vi bit co th t cao nhat b xoa ve 0. Khi ac ta cau truc thong thng cua command va reply, mot oi so (hay mot ky hieu ac biet ) se c bieu th bang mot bien meta-linguistic (hay mot hang so), v du nh : <string>, hay <reverse-path>. ay dau ngoac nhon ch nh chung la nhng bien meta-linguistic. Tuy nhien cac oi so th dung dau ngoac nhon mot cach literal. V du nh, mot reverse-path thc c bao trong dau ngoac nhon nh, <John.Smith@USC-ISI.ARPA> la mot trng hp cua <reverse-path> (dau ngoac nhon c giao chuyen trong command va reply la ma thc cua no).

III . Mail
1- Khai quat : Co 3 bc cho s giao dch SMTP mail. Giao dch c bat au vi yeu cau Mail mang s nhan dien sender, tiep theo sau la mot chuoi cua mot hay nhieu lenh RCPT trao nhng thong tin cua receiver, sau o mot lenh DATA cho mail data.Va cuoi cung la phan ch nh ket thuc mail data xac nhan giao dch o. Bc au tien trong thu tuc la lenh MAIL...<reverse-path> cha mailbox nguon MAIL <SP> FROM : <reverse-path> <CRLF> Lenh nay bao cho receiver biet mot giao dch mail mi se bat au va e reset tat ca cac bang trang thai va cac buffer cua no bao gom tat ca recipient hay mail data. No phat ra reverse-path co the c dung e bao loi. Neu c chap nhan receiver-SMTP tra ve mot reply 250 OK. <Reverse-path> co the cha nhieu hn mot mailbox.<Reverse-path> la mot lo trnh nguon tr ve liet ke cac host va mailbox nguon. Host au tien trong reverse-path se la host gi lenh nay. Bc th hai trong thu tuc nay la lenh RCPT RCPT <SP> To : <forward-path> <CRLF> Lenh nay phat i mot forward-path nhan dien recipient. Neu c chap nhan receiver-SMTP tra ve mot reply 250 OK. Va lu lai forward-path. Neu recipient khong nhan biet th receiver tra ve reply 550 Failure. Bc th hai cua thu tuc nay co the lap lai nhieu lan. Forward-path co the cha nhieu hn mot mailbox. Forward-path la lo trnh nguon liet ke cac host va mailbox ch. Host au tien trong <forword-path> se la host nhan lenh nay.

Bc th ba trong thu tuc la lenh DATA DATA <CRLF> Neu chap nhan receiver-SMTP tra ve mot reply 354 va coi tat ca cac dong noi tiep o la message text. Khi van ban cuoi cung c nhan va lu tr receiver-SMTP gi mot reply 250 OK.

Ke t mail data c gi tren kenh chuyen giao, iem ket thuc cua mail data phai c ch nh e hoi thoai command va reply co the bat au tr lai. SMTP ch nh ket thuc cua mail data bang cach gi mot dong cha ch mot dau cham. Chu y rang mail data bao gom nhng muc (item) memo header chang han nh Subject, To, Cc, From. Phan ch nh ket thuc cua mail data cung xac nhan s giao dch mail va bao cho receiver-SMTP biet e x ly viec lu tr recipient va mail data ngay luc o. Neu c chap nhan receiver-SMTP tra ve mot reply 250 OK. Lenh DATA se ch fail neu giao dch mail khong hoan thanh (v du khong co receiver) hoac neu tai nguyen khong co hieu lc. Thu tuc tren la mot v du cua mot giao dch mail. Nhng lenh nay ch c dung trong nhng trat t c trnh bay tren. V du : Mot minh hoa cach dung nhng lenh nay tron ut; end with <CRLF>.<CRLF> S: Blah blah blah... S: ...etc. etc. etc. S: <CRLF>.<CRLF> R: 250 OK Bay gi mail c chap nhan cho Jones va Brown. Green khong co mot mailbox tren Beta host. 2- S nh hng : Co mot so trng hp thong tin cua ch en trong <forward-path> b sai nhng receiver-SMTP biet ch en ung. Trong trng hp nh vay mot trong nhng reply sau se c dung e cho phep sender tiep xuc ch en ung : 251 User not local ; will forward to <forward-path> Reply nay ch cho receiver-SMTP biet mailbox cua user o nam tren mot host khac va ch nh forward-path ung e sau o s dung. Lu y mot trong hai host hay user hay ca hai co the khac nhau . Receiver chu trach nhiem cho viec phan phoi nhng message.

551 User not local ; please try <forward-path> Reply nay ch cho receiver-SMTP biet mailbox cua user nam tren mot host khac va ch nh forward-path ung e s dung . Lu y host hoac la user hay ca hai co the khac nhau . Receiver t choi chap nhan mail cho user A. Sender phai nh hng lai cho mail o tuy theo nhng thong tin c cung cap hoac la tra tra li error cho user khi au.V du sau minh hoa cach dung cua nhng ap ng nay : S: RCPT TO:Postel@USC-ISI.ARPA R: 251 User not local; will forward to <Postel@USC-ISIF.ARPA> Hay S: RCPT TO:<Paul@USC-ISIB.ARPA> R: 551 User not local; please try Mockapetris@USC-ISIF.ARPA

3- Kiem tra va m rong : SMTP cung cap them nhng iem ac trng, cac lenh e kiem tra mot user name hay m rong mot danh sach a ch c lam vi lenh VRFY va EXPN no dung oi so kieu chuoi ky t. Vi lenh VRFY chuoi o la mot user name, va cau tra li(response) co the bao gom full name cua user o va phai bao gom mailbox cua user o. Vi lenh EXPN chuoi o nh danh mot danh sach a ch va cau tra li co nhieu dong co the cha full name cua cac user o va phai cha nhng mailbox tren danh sach a ch (mailing list). Neu mot host c bo sung lenh VRFY hay EXPN th t nhat nhng mailbox cuc bo phai c tha nhan nh lauser names. Neu mot host chon la e tha nhan nhng chuoi khac nh user names th ieu o c cho phep. Trong mot so host s phan biet gia mot mailing list va mot b danh cho single mailbox hi m ho. T o mot cau truc d lieu pho bien co the gi ca hai kieu phan t va no co the dung cac mailing list cua mot mailbox. Neu mot yeu cau c tao ra e kiem tra mot mailing list mot cau tra li khang nh co the c cho neu tren message nhan c a c nh a ch no se c phan phat cho tat ca moi ngi trong danh sach o. Mat khac mot loi se c bao cao (e.g., "550 That is a mailing list, not a user"). Neu mot yeu cau c tao ra e m rong mot user name mot cau tra li khang nh co the c cau hnh bang cach tra ve mot danh sach cha mot ten hay mot loi co the c bao cao (e.g., "550 That is a user name, not a mailing list"). Trong trng hp mot reply nhieu dong (thng cho EXPN) la mot mailbox c ac ta tren tng dong cua reply o mot cach chnh xac. Trong trng hp nay mot yeu cau

nhap nhang kho hieu nh : VRFY Smith co hai cau tra li cua Smith phai la "553 User ambiguous". V du kiem tra mot user name S: VRFY Smith R: 250 Fred Smith <Smith@USC-ISIF.ARPA> Hay S: VRFY Smith R: 251 User not local; will forward to <Smith@USCISIQ.ARPA> Hay S: VRFY Jones R: 550 String does not match anything. Hay S: VRFY Jones R: 551 User not local; please try <Jones@USC-ISIQ.ARPA> Hay S: VRFY Gourzenkyinplatz R: 553 User ambiguous. Trng hp m rong mot mailbox list oi hoi mot reply nhieu dong xem trong v du sau: m rong mot mailing list (danh sach a ch) S: EXPN Example-People R: 250-Jon Postel <Postel@USC-ISIF.ARPA> R: 250-Fred Fonebone <Fonebone@USC-ISIQ.ARPA> R: 250-Sam Q. Smith <SQSmith@USC-ISIQ.ARPA> R: 250-Quincy Smith <@USC-ISIF.ARPA:Q-Smith@ISIVAXA.ARPA> R: 250-<joe@foo-unix.ARPA> R: 250 <xyz@barunix.ARPA> Hay S: EXPN Executive-Washroom-List R: 550 Access Denied to You. Nhng oi so chuoi ky t cua lenh VRFY va EXPN khong the vt qua gii han c quyen tren s bo sung a dang cua user name va khai niem mailbox. Tren mot so he thong no co the danh rieng cho oi so cua lenh EXPN e la mot file name cho mot file cha mot mailing list nhng lai co mot qui c a dang cua viec ac ten file trong internet. Lenh VRFY va EXPN khong c bao gom trong s thc thi toi thieu (trnh bay trong phan sau) va khong c oi hoi e lam viec thay ca khi chung c thc thi. 4- Sending and Mailing : Muc ch chnh cua SMTP la phan phoi nhng message en nhng mailbox cua user . Mot dch vu rat pho bien c cung cap bi mot so host la e phan phoi nhng message

en nhng terminal cua user( cung cap cho user lam viec tren host o) . S phan phat en nhng mail box cua user c goi la mailing, s phan phat en nhng user terminal c goi la sending. Bi v mot so host co s thc thi cua sending gan giong vi s thc thi cua mailing chung la hai chc nang c lien ket vi SMTP. Mac du lenh sending khong bao gom trong yeu cau thc thi toi thieu( xem phan sau). Nhng user co kha nang ieu khien viec ghi message len nhng terminal cua ho. Hau het cac host cho phep chap nhan hay t choi nhng message. Ba lenh sau c nh ngha e cung cap nhng option cho sending. Chung c dung trong giao dch mail thay cho lenh MAIL va cung cap cho receiver-SMTP nhng ng ngha giao dch ac biet SEND <SP> FROM:<reverse-path> <CRLF> Lenh SEND oi hoi mail data c gi en user terminal. Neu user o khong hoat ong (hay khong chap nhan nhng terminal message) tren host o mot reply 450 co the c tra cho mot lenh RCPT. Giao chuyen mail thanh cong khi message o c phan phat en terminal. SOML <SP> FROM:<reverse-path> <CRLF> Lenh nay la SEND Or MAIL oi hoi mail data c phan phat en terminal cua user neu user o ang hoat ong (va chap nhan nhng message terminal) tren host o. Neu user khong hoat ong (haykhong chap nhan terminal message) th mail data c a vao trong mailbox cua user . Giao chuyen mail thanh cong khi message o c phan phat en terminal hay mailbox. SAML <SP> FROM:<reverse-path> <CRLF> Lenh nay la SEND And MAIL oi hoi mail data c phan phat en terminal cua user neu user o ang hoat ong (va chap nhan nhng message terminal) tren host o. Trong nhng tat ca trng hp mail data c a vao trong mailbox cua user. Giao dch mail thanh cong khi message o c phan phat en mailbox. Nhng ma reply tng t c dung cho lenh MAIL cung c dung cho nhng lenh nay. 5- Opening and Closing : Ngay thi iem ma kenh giao chuyen c open co mot s trao oi e am bao nhng host o ang giao tiep vi nhng host khac. Hai lenh sau c dung trong viec ong m kenh truyen

HELLO <SP> <domain><CRLF> QUIT <CRLF> Trong lenh HELLO host nay gi i nhng nhan dang lenh cua no co the c dch nh "HELLO, I am <domain>". * V du m ket noi : Opening R : 220 BBN-UNIX.ARPA Simple Mail Transfer Service Ready S : HELO USC-ISIF.ARPA R: 250 BBN-UNIX.ARPA * V du ong ket noi : Closing S: QUIT R :221 BBN-UNIX.ARPA Service transmission channel. 6- Chia ca (Relaying) : Forward-path co the la mot lo trnh nguon cua form "@ONE, @TWO:JOE@THREE" vi ONE ,TWO, THREE la cac host. Form nay c dung e nhan manh s phan biet gia mot address va mot route. Mailbox la mot address tuyet oi, va route la thong tin ve viec lay chung nh the nao . Nhng thanh phan cua forward-path c chuyen en reverse-path khi message o c chia ca t mot server SMTP en mot server-SMTP khac. Reverse-path la mot lo trnh nguon tr ve (khac vi mot lo nguon la t v tr hien hanh cua message en iem khi au cua message o). Khi mot server SMTP xoa phan nhan dang cua no trong forward-path va chen phan nhan dang cua no vao trong reverse-path, no phai dung cai ten ma no c biet ti trong moi trng ma no se gi vao, khong phai la moi trng ma mail t o en, trong trng hp server-SMTP c biet en vi nhng ten khac nhau trong nhng moi trng khac nhau. Neu mot message en mot SMTP thanh phan au tien cua forward-path khong phai la phan nhan dang cua SMTP o, thanh phan nay khong b xoa trong forward-path va c dung e xac nh SMTP ke e gi message en. Trong trng hp nay SMTP them phan nhan dang cua no vao reverse-path.. Dung lo trnh nguon receiver-SMTP nhan mail e chia ca en mot server-SMTP khac. Receiver-SMTP o co the chap nhan hoac bac bo cong viec chia ca cho mail, nh cach no chap nhan hay bac bo mail cho mot user cuc bo. ReceiverSMTP thay oi nhng oi so lenh bang cach chuyen phan nhan dang cua no t forward-path vao cho m au cua reverse-path. Sau o receiver-SMTP tr thanh sender-SMTP, thiet lap mot kenh truyen en SMTP ke trong forward-path,va gi mail o cho no.

Host au tien trong reverse-path se la host gi cac lenh SMTP va host au tien trong forward-path se la host cac nhan cac lenh SMTP . Lu yrang forward-path va reverse-path xuat hien trong cac lenh va cac reply SMTP, nhng no khong can thiet xuat hien trong message . No khong can thiet cho nhng ng dan va cu phap ac biet nay xuat hien trong nhng field cua message header nh "To:" , "From:", "CC:",. Neu mot server-SMTP chap nhan cong viec chia ca mail va sau o thay forward-path khong ung hay mail o khong the c phan phat c v bat c l do nao, th no phai xay dng mot message thong bao "undeliverable mail" (mail khong the phan phat) va gi no en ni xuat phat cua mail khong the phan phat o(c ch nh trong reversepath). Message thong bao nay phai la t server-SMTP tai host o. D nhien nhng server-SMTP se khong gi nhng message thong bao ve nhng s co xay ra cho message thong bao o. Mot cach ngan chan s lap lai trong viec thong bao loi la ac ta mot null reverse-path trong lenh MAIL cua message mot thong bao. Khi mot message thong bao nh vay c chia ca no c dung e loai bo reverse-path null. Mot lenh MAIL vi null reverse-path nh di ay: MAIL FROM:< > Thong bao nay nam trong tra li cho mot message c khi ong bi JOE tai HOSTW va gi thong qua HOSTX en HOSTY vi ch th chia ca no en HOSTZ, no la bc au tien trong viec tra ve message thong bao . V du message thong bao mail khong the phan phat S: MAIL FROM:<> R: 250 ok S: RCPT TO:<@HOSTX.ARPA:JOE@HOSTW.ARPA> R: 250 ok S: DATA R: 354 send the mail data, end with . S: Date: 23 Oct 81 11:22:33 S: From: SMTP@HOSTY.ARPA S: To: JOE@HOSTW.ARPA S: Subject: Mail System Problem S: S: Sorry JOE, your message to SAM@HOSTZ.ARPA lost. S: HOSTZ.ARPA said this: S: "550 No Such User" S: . R: 250 ok 8-Thay oi vai tro : Lenh TURN co the dung e ao vai tro cua hai chng trnh ang giao tiep tren kenh giao chuyen.

Neu chng trnh A ang la sender-SMTP hien hanh va no gi lenh TURN va nhan mot reply OK(250) th chng trnh A tr thanh receiver-SMTP. Neu chng trnh B ang hien hanh receiver-SMTP hien hanh va no gi lenh TURN va nhan mot reply OK(250) th chng trnh B tr thanh sender-SMTP. e t choi thay oi vai tro receiver gi reply 502 Lu y la lenh nay khong bat buoc. Thng no khong c dung trong tnh trang kenh giao chuyen la TCP. Tuy nhien khi tr gia cho viec thiet lap kenh giao chuyen cao, lenh nay co the rat co ch. V du nh lenh nay co ch trong viec ho tr la trao oi mail dung he thong public switched telephone lam mot kenh giao chuyen, ac biet neu mot so host e c cac host khac cho viec trao oi mail.

IV. ac ta SMTP
A. Nhng lenh SMTP (Commands SMTP) 1. Ng ngha lenh : Nhng lenh SMTP nh ngha s truyen mail hay chc nang cua he thong mail c yeu cau bi user. Nhng lenh SMTP la nhng chuoi ky t ket thuc bang <CRLF>. Ban than ma lenh la nhng ky t ch (alphabetic) ket thuc bi <SP> neu co nhng tham so theo sau va <CRLF> khac. Cu phap cua nhng mailbox phai tuan theo nhng thoa hiep pha receiver. Nhng reply SMTP c ban en trong phan B. Mot s giao dch mail bao gom vai oi tng d lieu c giao tiep khi nhng oi so cho cac lenh khac nhau. Reverse-path la oi so cua lenh MAIL. Forward-path la oi so cua lenh RCPT. Va mail data la oi so cua lenh DATA. Ba oi so va nhng oi tng d lieu c duy tr cho en khi xac nhan truyen xong bi s ch nh ket thuc cua mail data th that s ket thuc giao dch. Mo hnh cho no la nhng buffer rieng biet c cung cap e gi kieu cua oi tng d lieu. Mot so lenh ac trng sinh ra thong tin c gan vao mot buffer ac trng, hay lam cho mot hay nhieu buffer b xoa. HELLO (HELO) : Lenh nay dung nh danh sender-SMTP en receiver-SMTP. Field oi so cha host name cua sender-SMTP. Receiver-SMTP nh danh no en sender-SMTP trong tra li bat tay cho viec ket noi, va trong cau tra li cho lenh nay.Lenh nay va mot reply OK e xac nhan ca hai sender-SMTP va receiver-SMTP ang trong tnh trang khi ong, ieu o la: khong co mot giao dch mail nao ang tien hanh va tat ca cac bang trang thai va buffer a c xoa.

MAIL : Lenh nay c dung khi tao mot giao dch mail trong o mail data c phan phoi en mot hay nhieu mailbox. Feild oi so cha mot reverse-path. Rever _se - path bao gom mot danh sach cac host tuy y va mailbox cua user. Khi danh sach cac host hoan tat no la mot lo trnh nguon tr ve va ch nh mail o c chia ca thong qua moi host tren danh sach o (host au tien trong list la host chia ca gan nhat). List nay c dung nh mot lo trnh nguon e tra ve sender nhng thong bao khong the phan phat. Tai moi host chia ca no them phan nh danh cua ban than vao cho bat au cua list o va phai dung ten cua no c biet trong IPCE ni no se chia ca mail en o, ung hn la ICPE co mail en t o (neu chung khac nhau). Trong mot so loai message thong bao loi (v du thong bao mail khong the phan phat) reversepath co the la null. RECIPIENT (RCPT) : Lenh nay dung nh danh mot recipient (ngi nhan) mail data rieng le, nhieu recipient c ac ta bang nhieu lenh nay. Forward-path bao gom mot danh sach cac host tuy y va mot mailbox ch c yeu cau. Khi danh sach host o hoan tat. No la mot lo trnh nguon va ch nh mail phai c chia ca en host ke tiep tren list o. Neu receiver-SMTP khong thc thi chc nang chia ca no co the dung c reply nay va se cho mot unknown local user (550). Khi mail c chia ca, host chia ca phai chuyen phan nh danh no t cho bat au forward-path va at vao cho bat au cua reverse-path. Khi mail trai ra ti ch cuoi cung (forward-path ch cha mot mailbox ch) receiverSMTP Insert no vao trong mailbox ch trong s ong y vi thoa hiep host mail cua no. V du mail c nhan tai host chia ca A vi nhng oi so: FROM:<USERX@HOSTY.ARPA> TO:<@HOSTA.ARPA,@HOSTB.ARPA:USERC@HOSTD.A RPA> Se c chia ca en host B vi oi so FROM:<@HOSTA.ARPA:USERX@HOSTY.ARPA> TO:<@HOSTB.ARPA:USERC@HOSTD.ARPA>. Lenh nay sinh ra oi so forward-path cua no c gan vao forward-path buffer. DATA(DATA) : Receiver x ly nhng dong theo sau lenh nay khi mail data t sender en. No lam cho mail data t lenh nay c ghi vao data buffer. Mail data nay co the cha

nhng ky t cua 128 ma ACII. Data mail c ket thuc bang mot dong ch cha mot dau cham. o la mot day ky t "<CRLF>. <CRLF>" (xem phan 4.D.2). Va o la ch nh ket thuc cua mail data. S ch nh ket thuc mot chuoi oi hoi receiver phai x ly viec lu tr nhng thong tin giao dch mail ngay lap tc. Qua trnh x ly nay dung thong tin trong reversepath buffer, forward-path buffer, mail data buffer, va khi hoan tat lenh nay nhng buffer o se b xoa c nhan, nhng message c chia ca se co nhieu dong anh dau thi gian. Khi mot receiver-SMTP tao ra final delivery cua mot message no insert vao cho bat au cua mail data mot dong return-path . Dong return-path o bao quan thong tin trong reverse-path t lenh mail. ay deliver final co ngha la message o ri khoi the gii SMTP. Thong thng co ngha la no a c chuyen en user ch . nhng trong mot so trng hp no co the c x ly na va va c giao chuyen bi he thong mail khac. Co the cho mailbox trong return path la khac biet vi mailbox that s cua sender, v du nh neu nhng tra li error c dung phan phat mot loi ac biet ieu khien mailbox. Hai oan trc y noi mail data cuoi cung se bat au vi mot dong return path theo sau la mot hay nhieu dong anh dau thi gian , sau nhng dong nay se la phan header va body cua mail data [2]. S e cap ac biet can thiet cho s tra li (response) va s hanh ong tiep na c yeu cau khi qua trnh x ly theo sau s ch nh ket thuc mail data la s thanh cong cuc bo. ieu nay co the phat sinh neu sau khi chap nhan mot vai recipient va data mail receiverSMTP thay mail data o co the c phan phat en mot so recipient thanh cong nhng lai khong the en nhng ngi khac (v du nh xay ra van e ve viec ch nh v tr cua mailbox). Trong tnh trang nh vay cau tra li cho lenh DATA phai la mot reply OK. Nhng receiver-SMTP phai soan va gi ve ni xuat x cua message o mot message thong bao undelivered mail. Mot thong bao n liet ke tat ca cac recipient khong nhan c message, hay nhng message thong bao rieng le phai c gi cho tng recipient mot , tat ca nhng thong bao mail khong the phan phat c gi dung lenh MAIL (ngay ca neu ket qua o t qua trnh x ly mot lenh SEND, SOML, hay SAML ).

V du cho ng dan tra ve va nhan anh dau thi gian nhan Return-Path: <@GHI.ARPA,@DEF.ARPA,@ABC.ARPA:JOE@ABC.ARPA> Received: from GHI.ARPA by JKL.ARPA ; 27 Oct 81 15:27:39 PST Received: from DEF.ARPA by GHI.ARPA ; 27 Oct 81 15:15:13 PST Received: from ABC.ARPA by DEF.ARPA ; 27 Oct 81 15:01:59 PST Date: 27 Oct 81 15:01:01 PST From: JOE@ABC.ARPA Subject: Improved Mailing System Installed To: SAM@JKL.ARPA This is to inform you that ... SEND (SEND) : Lenh nay dung khi tao mot giao dch mail trong o mail data c phan phat en mot hay nhieu terminal. Field oi so cha mot reverse-path. Lenh nay thanh cong neu message c phan phat en mot terminal. Reverse-path bao gom mot list cac host va mailbox sender tuy y khi list o hoan tat, no la mot lo trnh nguon tr ve va ch nh mail a c chia ca thong qua cac host trong list o (host au tien trong list la host chia ca gan nhat) danh sach nay c dung nh mot lo trnh nguon e tra ve cho sender nhng thong bao ve viec khong phan phat c. Khi moi host chia ca them phan nh danh vao trong v tr bat au cua list , no phai dung ten ma no c biet en trong IPCE ni no se chia ca mail ti o , ung hn la IPCE co mail ti t o. Lenh nay xoa reverse-path buffer, forward-path buffer va mail data buffer va chen thong tin reverse-path t lenh nay vao trong reverse-path buffer. ?????????? END OR MAIL (SOML) : Lenh nay dung khi tao mot giao dch mail trong o mail data c phan phat en mot hay nhieu terminal hay mailbox. Cho tng recipient, data mail c phan phat en terminal cua recipient neu recipient o ang hoat ong tren host o (va chap nhan nhng terminal message ), mat khac la en mailbox cua nhng recipient o. Field oi so cha mot reverse-path . Lenh nay thanh cong khi message c phan phat en mot terminal hay mailbox. Reverse-path bao gom mot danh sach cac host tuy y va mailbox cua sender . Khi danh sach cac host o hoan tat, no la mot lo trnh nguon tr ve va ch nh mail o a c chia ca thong qua cac host tren danh sach (host au tien trong danh sach la host chia ca gan nhat). Danh sach nay c dung nh mot lo trnh nguon tra ve cho

sender nhng thong bao ve viec khong the phan phat. Khi moi host chia ca them phan nh danh no vao cho bat au cua danh sach o, no phai dung ten c biet en trong IPCE ni no se chia ca mail en o ung hn la IPCE co mail en t o(neu chung khac nhau). Lenh nay xoa reverse-path buffer, forward-path buffer va mail data buffer va chen thong tin reverse-path t lenh nay vao trong reverse-path buffer. SEND AND MAIL (SAML) : Lenh nay dung khi tao mot giao dch mail trong o mail data c phan phat en mot hay nhieu terminal va cac mailbox. Cho tng recipient data mail c phan phat en terminal cua recipient neu recipient o ang hoat ong tren host o (va chap nhan nhng terminal message ) va cho tat ca recipient th en mailbox cua cac recipient o. Field oi so cha mot reverse-path . lenh nay thanh cong khi message c phan phat en mailbox. Reverse-path bao gom mot danh sach cac host tuy y va mailbox cua sender. Khi danh sach hoan tat no la mot lo trnh nguon tr ve va ch nh mail a c chia ca thong qua cac host trong danh sach o(host au tien trong danh sach la host chia ca gan nhat ) Danh sach nay c dung nh mot lo trnh nguon tra ve cho sender nhng thong bao ve viec khong the phan phat. Khi moi host chia ca them phan nh danh no vao cho bat au cua danh sach o no phai dung ten ma no c biet en trong IPCE ma no se chia ca mail en o ung hn la IPCE ma mail en t o(neu chung khac nhau). Lenh nay xoa reverse-path buffer, forward-path buffer va mail data buffer va chen thong tin reverse-path t lenh nay vao trong reverse-path buffer. ???????? RESET (RSET) : Lenh nay nh ro giao dch mail hien hanh b huy bo. Cac sender, recipient, mail data a lu se b huy bo va tat ca cac bang trang thai, cac buffer b xoa. Receiver phai gi mot reply OK. VERIFY (VRFY) : Lenh nay yeu cau receiver xac nhan oi so nh danh mot user. Neu no la mot user name, full name cua user o (neu receiver biet) va mailbox ac ta ay u c tra ve.Lenh nay khong anh hng en reverse-path buffer, forward-path buffer va data mail buffer. EXPAND (EXPN) : Lenh nay yeu cau receiver xac nhan mot mailing list ( danh sach a ch) va tra ve mot thanh phan

trong danh sach o. Full name cua cac user (neu biet) va nhng mailbox c ac ta ay u c tra ve trong mot reply nhieu dong. Lenh nay khong anh hng en reverse-path buffer, forward-path buffer va data mail buffer. HELP (HELP) : Lenh nay lam cho receiver thong tin giup cho sender lenh HELP. Lenh nay co the nhan mot oi so (co the la ten lenh) va tra ve thong tin chi tiet. Lenh nay khong anh hng en reverse-path buffer, forward-path buffer va data mail buffer. NOOP (NOOP) : Lenh nay khong anh hng cac tham so hay cac lenh c a vao trc no, no ac ta khong co mot hanh ong nao khac hn la receiver gi mot reply OK. Lenh nay khong anh hng en reverse-path buffer, forward-path buffer va data mail buffer. QUIT (QUIT) : Lenh nay nh ro receiver phai gi mot reply OK va sau o ong kenh giao dch . Receiver se khong ong kenh giao dch cho en khi no nhan va tra li cho lenh QUIT (ngay ca neu co mot loi xay ra). Sender se khong ong kenh giao dch cho en khi no gi mot lenh QUIT va nhan reply o (ngay ca neu co mot loi tra li cho lenh trc o). Neu ket noi b ong trc thi gian mong muon receiver se lam viec nh va nhan c mot lenh RSET (bo tat ca cac giao dch ang treo ma cha lam, nhng khong undo nhng giao dch a hoan tat trc o) sender se hanh ong nh neu lenh hay giao dch o trong qua trnh x ly nhan c mot loi tam thi (4xx). TURN (TURN) : Lenh nay nh ro receiver phai gi mot trong hai reply sau: (1) reply OK va sau o nhan vai tro cua mot sender-SMTP, hay (2) gi mot reply t choi va gi lai vai tro mot receiver-SMTP. Neu program-A hien tai la mot sender-SMTP gi mot lenh TURN va nhan mot reply OK (250) th program-A tr thanh receiver-SMTP sau o program-A se trong trang thai khi ong ch neu kenh giao chuyen a c m, sau o no ch nhan mot chao hoi dch vu a san sang 220. e t choi thay oi vai tro receiver gi mot reply 502. Co s han che trong trat t khi dung nhng lenh nay. au tien trong mot cuoc trao oi phai la lenh HELLO, lenh nay co the c dung sau o trong mot cuoc trao

oi khac. Neu oi so trong lenh HELLO khong c chap nhan mot reply failure 501 phai c tra ve va receiverSMTP o phai trong trang cu. Nhng lenh NOOP, HELP, EXPAND va VRFY co the c dung nhieu lan trong mot cuoc giao dch. Cac lenh MAIL, SEND, SOML, va SAML bat au mot giao dch mail. Khi bat au mot giao dch mail bao gom mot lenh khi tao giao dch , mot hay nhieu lenh RCPT, va mot lenh DATA o la mot trat t . mot giao dch mail co the c bo qua bi mot lenh RSET co the co hay khong co nhieu giao dch trong mot cuoc trao oi (session). Neu oi so cua lenh khi ong giao dch khong the chap nhan mot reply failure 501 phai c tra ve va sercer-SMTP phai nam trong trang thai cu. Neu nhng lenh trong cuoc giao dch khong ung trat t mot reply failure 503 c tra ve va receiver-SMTP o phai nam trong trang thai cu. Lenh cuoi cung trong cuoc trao oi phai la lenh QUIT va lenh QUIT khong the c dung nhieu lan trong mot cuoc trao oi. 2- Cu phap lenh : Nhng lenh nay bao gom mot ma lenh theo sau la mot field oi so . Ma lenh la bon ky t ch . Nhng ky t thng va hoa c x ly nh nhau . Vay nhng t sau ay co the ai dien cho lenh MAIL: MAIL Mail mail MaIl mAIl ay cung dung mot so ky hieu trnh bay cho nhng gia tr cua tham so , chang han nh TO hay to cho forwardpath. Ma lenh va nhng field oi so c tach ra bi mot hay nhieu khoang trang. Tuy nhien ben trong nhng oi so reverse-path va forward-path kieu ch rat quan trong. Trong mot so host user vu khac vi user Vu. Field oi so gom co mot bien chieu dai chuoi ky t, ket thuc vi chuoi <CLRF>. Receiver khong nhan hanh ong cho en khi nhan c chuoi <CLRF> nay. Dau ngoac vuong bieu th mot field oi so tuy y. Neu khong nhan chon la nay mot defaul phu hp se c ap dung.

Sau ay la nhng lenh SMTP: HELO <SP> <domain> <CRLF> MAIL <SP> FROM:<reverse-path> <CRLF> RCPT <SP> TO:<forward-path> <CRLF> DATA <CRLF>

RSET <CRLF> SEND <SP> FROM:<reverse-path> <CRLF> SOML <SP> FROM:<reverse-path> <CRLF> SAML <SP> FROM:<reverse-path> <CRLF> VRFY <SP> <string> <CRLF> EXPN <SP> <string> <CRLF> HELP [<SP> <string>] <CRLF> NOOP <CRLF> QUIT <CRLF> TURN <CRLF> Cu phap cua nhng field oi so tren( dung ky hieu BNF co the ap dung c ay) c cho ben di. Ky hieu ch nh mo field co the c lap mot hay nhieu lan. <reverse-path> ::= <path> <forward-path> ::= <path> <path> ::= "<" [ <a-d-l> ":" ] <mailbox> ">" <a-d-l> ::= <at-domain> | <at-domain> "," <a-d-l> <at-domain> ::= "@" <domain> <domain> ::= <element> | <element> "." <domain> <element> ::= <name> | "#" <number> | "[" <dotnum> "]" <mailbox> ::= <local-part> "@" <domain> <local-part> ::= <dot-string> | <quoted-string> <name> ::= <a> <ldh-str> <let-dig> <ldh-str> ::= <let-dig-hyp> | <let-dig-hyp> <ldh-str> <let-dig> ::= <a> | <d> <let-dig-hyp> ::= <a> | <d> | "-" <dot-string> ::= <string> | <string> "." <dot-string> <string> ::= <char> | <char> <string> <quoted-string> ::= """ <qtext> """ <qtext> ::= "\" <x> | "\" <x> <qtext> | <q> | <q> <qtext> <char> ::= <c> | "\" <x> <dotnum> ::= <snum> "." <snum> "." <snum> "." <snum> <number> ::= <d> | <d> <number> <CRLF> ::= <CR> <LF> <CR> ::= the carriage return character (ASCII code 13) <LF> ::= the line feed character (ASCII code 10) <SP> ::= the space character (ASCII code 32) <snum> ::= one, two, or three digits representing a decimal integer value in the range 0 through 255 <a> ::= any one of the 52 alphabetic characters A through Z in upper case and a through z in lower case <c> ::= any one of the 128 ASCII characters, but not any <special> or <SP> <d> ::= any one of the ten digits 0 through 9 <q> ::= any one of the 128 ASCII characters except <CR>,

<LF>, quote ("), or backslash (\) <x> ::= any one of the 128 ASCII characters (no exceptions) <special> ::= "<" | ">" | "(" | ")" | "[" | "]" | "\" | "." | "," | ";" | ":" | "@" """ | the control characters (ASCII codes 0 through 31 inclusive and 127) Chu y dau suyet ngc \ la mot ky t nh at, no c dung ch nh ky t ke tiep c dung mot cach literal (thay cho s thong dch thong thng cua no) v du nh "Van\,Sam" se c dung ch nh mot ky t mot field bay ky t n vi dau phay la ky t th t cua field. Thng nhng host c biet en bang nhng cai ten , no c bien dch thanh a ch cua moi host. Lu y ten phan t cua domains phai la ten chnh thc, khong dung ten hieu hay b danh. Thnh thoang mot host khong biet en chc nang bien dch va s giao tiep b khoa. e pht l chng ngai nay hai cau truc dang so cung c chap nhan cho names cua host. Mot dang la mot so nguyen he thap phan nam sau ky hieu gii han # no ch nh so nay la a ch cua host. Mot dang khac la bon so nguyen nho bao trong dau ngoac vuong va cach nhau bi nhng dau cham nh "[123.255.37.2]". No ch nh mot a ch 32 bit- ARPA internet trong bon field 8 bit. Dong anh dau thi gian va dong ng dan tr ve thng c nh ngha nh v du sau : <return-path-line> ::= "Return-Path:" <SP><reversepath><CRLF> <time-stamp-line> ::= "Received:" <SP> <stamp> <CRLF> <stamp> ::= <from-domain> <by-domain> <opt-info> ";" <daytime> <from-domain> ::= "FROM" <SP> <domain> <SP> <by-domain> ::= "BY" <SP> <domain> <SP> <opt-info> ::= [<via>] [<with>] [<id>] [<for>] <via> ::= "VIA" <SP> <link> <SP> <with> ::= "WITH" <SP> <protocol> <SP> <id> ::= "ID" <SP> <string> <SP> <for> ::= "FOR" <SP> <path> <SP> <link> ::= The standard names for links are registered with the Network Information Center ( Ten chuan cho nhng lien ket c ang ky vi Net Work Information Center) <protocol> ::= The standard names for protocols are registered with the Network Information Center.( Ten chuan cho nhng protocol c ang ky vi Net Work Information Center) <daytime> ::= <SP> <date> <SP> <time> <date> ::= <dd> <SP> <mon> <SP> <yy>

<time> ::= <hh> ":" <mm> ":" <ss> <SP> <zone> <dd> ::= the one or two decimal integer day of the month in the range 1 to 31. <mon> ::= "JAN" | "FEB" | "MAR" | "APR" | "MAY" | "JUN" | "JUL" | "AUG" | "SEP" | "OCT" | "NOV" | "DEC" <yy> ::= the two decimal integer year of the century in the range 00 to 99. <hh> ::= the two decimal integer hour of the day in the range 00 to 24. <mm> ::= the two decimal integer minute of the hour in the range 00 to 59. <ss> ::= the two decimal integer second of the minute in the range 00 to 59. <zone> ::= "UT" for Universal Time (the default) or other time zone designator (as in [2]). V du : Return Path Return-Path: <@CHARLIE.ARPA,@BAKER.ARPA:JOE@ABLE.ARPA> V du : dong anh dau thi gian : Received: FROM ABC.ARPA BY XYZ.ARPA ; 22 OCT 81 09:23:59 PDT Receive h bay trong Sequencing cua phan V.3 va lc o trang thai cua phan V.4 Mot reply SMTP bao gom mot so ba ch so (c truyen nh ba ky t ch so) theo sau la mot so van ban (text). So o c danh cho cac chng trnh t ong e xac nh trang thai a vao ke tiep. Text tren co y ngha cho user con ngi(khong phai may). Ba ch so o c an nh cha ay u thong tin c ma hoa sender-SMTP khong can kiem tra text o va co the huy bo hay chuyen no qua mot user thch hp. ac biet text nay co the oc lap vi receiver va oc lap vi ng canh, do co s giong nhau trong nhng text khac nhau tng ma reply. Nguyen ly cua nhng ma reply cho trong phu luc E. thong thng mot reply c nh ngha la chuoi gom: mot ma ba ch so, <SP>, mot dong text, va <CRLF>, hay mot reply nhieu dong (nh nh ngha trong phu luc E) ch nhng lenh EXPN va HELP co ket qua la nhng reply nhieu dong trong nhng tnh huong bnh thng, tuy nhien nhng reply nhieu dong c chap nhan cho nhieu lenh.

1. Nhng ma Reply cho mot nhom cac chc nang: 500 Loi cu phap, khong chap nhap lenh [no co the bao gom nhng loi nh: lenh qua dai] 501 Loi cu phap trong nhng oi so hay nhng tham so lenh khong c cung cap dong lenh sai tham so cua lenh khong c cung cap 211 Trang thai he thong, hay tra li giup ve he thong 214 Thong iep giup [thong tin ve lam the nao e dung receiver hay y ngha cua mot lenh khong chuan ac biet ; reply nay rat co ch cho ngi s dung] 220 <domain> dch vu san sang 221 <domain> dch vu ong kenh giao chuyen 421 <domain> dch vu khong dung c, ong kenh giao chuyen [no co the la mot reply cho nhieu lenh neu dch vu o biet reply nay phai shut down] 250 Hanh dong mail yeu cau ok, hoan thanh 251 User khong cuc bo, se hng en forwardpath 450 Khong lay hanh ong mail yeu cau: mailbox khong co hieu lc [chang han nh mailbox khong tm thay, khong truy xuat c] 451 Bo qua hanh ong c yeu cau; loi trong qua trnh x ly 551 User khong cuc bo, vui long th lai <forwardpath> 452 Khong nhan hanh ong c yeu cau : lu tr cua he thong khong u 552 Bo qua hanh ong mail yeu cau: vt qua ch nh lu tr 553 Khong nhan hanh ong c yeu cau : khong chap nhan ten mailbox [nh sai cu phap mailbox]. 554 Khi ong viec nhan mail; ket thuc vi <CLRF>.<CLRF> giao chuyen b sai.

2. Th t cua danh sach nhng ma Reply so : 211 Tnh trang he thong, hay reply giup he thong . 214 Thong iep giup . {thong tin lam the nao e dung receiver hay y ngha cua mot lenh khong chuan ac biet ; reply nay rat co ch cho ngi s dung] 220 <domain> dch vu san sang 221 <domain> dch vu ong kenh giao chuyen 250 Hanh ong mail yeu cau OK, hoan thanh 251 User khong cuc bo; se hng en <forward-path> 354 Khi ong viec nhap mail; ket thuc vi <CLRF>. <CLRF> 421 <domain> dch vu khong s dung c, ong kenh giao chuyen [no co the la mot reply cho nhieu lenh neu dch vu o biet reply nay phai shut down] 450 Khong lay hanh ong mail yeu cau; mailbox khong hieu lc [nh mailbox ban] 450 Bo qua hanh ong c yeu cau ; loi cuc bo trong qua trnh x ly 451 Khong nhan hanh ong c yeu cau; lu tr cua he thong khong u. 500 Loi cu phap; khong chap nhan lenh [no co the bao gom nhng loi nh: lenh qua dai] 501 Loi cu phap trong tham so hay oi so 502 Lenh khong c cung cap 503 Dong lenh sai 504 Tham so cua dong lenh khong c cung cap 550 Khong nhan hanh ong c yeu cau ; mailbox khong hieu lc [nh mailbox khong tm thay hay khong truy cap c] 551 User khong cuc bo; vui long th <forward-path> 552 Bo qua hanh ong ma mail yeu cau, vt qua ch nh lu tr 554 Khong nhan hanh ong c yeu cau; ten mailbox khong c

chap nhan. [nh sai cu phap mailbox] giao chuyen sai. 3. S lien tuc cua nhng Command & Reply : S giao tiep gia sender va receiver c nh la mot cuoc hoi thoai tuan t do sender ieu khien. Chang han nh sender sinh ra mot lenh va receiver tra li vi mot reply. Sender phai ch s tra li nay trc khi gi them lenh. Mot reply quan trong la chao hoi ket noi. Thong thng mot receiver se gi mot reply 220 service ready khi ket noi hoan thanh. Sender phai ch thong iep chao hoi nay trc khi gi cac lenh. Lu y: tat ca cac reply kieu chao hoi dung ten chnh thc cua host server la t au tien theo sau ma reply V du : 220 <SP> USC-ISIF.ARPA <SP> Service ready <CRLF> Bang ben di liet ke nhng reply thanh cong va that bai cho moi lenh no phai c gia nhap vao mot cach nghiem ngat e; mot receiver co the thay the text trong cac reply nhng y ngha va hanh ong c nh bi ma so va bi chuoi command reply ac trng khong the b thay oi.

Moi lenh c liet ke vi cac reply co the cua no. Nhng tien to c dung trc nhng reply co the la P e khi au (khong dung trong SMTP) I cho phan gia, S cho s thanh cong va E cho loi. Reply 421 (dch vu khong hieu lc, ong kenh giao chuyen) co the cho mot so lenh neu receiver-SMTP nhan biet rang no phai shut down. S liet ke sau ay la cau truc c ban cho s o trang thai(state diagram) trong phan IV.C CONNECTION ESTABLISHMENT (thiet lap ket noi) S: 220 F: 421 HELLO S: 250 E: 500, 501, 504, 421 MAIL S: 250 F: 552, 451, 452 E: 500, 501, 421 RCPT S: 250, 251 F: 550, 551, 552, 553, 450, 451, 452 E: 500, 501, 503, 421

*- Nhng chuoi COMMAND-REPLY

DATA I: 354 -> data -> S: 250 F: 552, 554, 451, 452 F: 451, 554 E: 500, 501, 503, 421 RSET S: 250 E: 500, 501, 504, 421 SEND S: 250 F: 552, 451, 452 E: 500, 501, 502, 421 SOML S: 250 F: 552, 451, 452 E: 500, 501, 502, 421 SAML S: 250 F: 552, 451, 452 E: 500, 501, 502, 421 VRFY S: 250, 251 F: 550, 551, 553 E: 500, 501, 502, 504, 421 EXPN S: 250 F: 550 E: 500, 501, 502, 504, 421 HELP S: 211, 214 E: 500, 501, 502, 504, 421 NOOP S: 250 E: 500, 421 QUIT S: 221 E: 500 TURN S: 250 F: 502 E: 500, 503

C- S o trang thai (STATE DIAGRAM)


Di ay la s o trang thai cho mot s thi hanh SMTP n gian. Ch mot ch so au tien cua nhng ma reply c s dung . ay la mot bang trang thai cho tng nhom

lenh SMTP nhng nhom lenh nay c xac nh bang cach xay dng mot mo hnh cho moi lenh va sau o gom nhng lenh o lai vi nhau vi nhng mo hnh giong nhau ve cau truc. Cho moi lenh co ba ket qua thanh cong (S), that bai (F), loi (E) trong s o trang thai sau chung ta dung ky hieu B cho begin va ky hieu W cho wait for reply. au tien s o trnh bay cho hau het cac lenh SMTP : 1,3

E S F

cmd

2 4,5

S o nay mo hnh cho nhng lenh sau: HELO, MAIL, RCPT, RSET, SEND, SOML, SAML, VRFY, EXPN, HELP, NOOP, QUIT, TURN

Mot s o phc tap hn mo hnh cho lenh DATA :

DATA 3

1,2

W
4, 5 2

E S

4, F 5 Lu y: data ay la mot chuoi nhng dong gi t sender en receiver khong can s tra li cho en khi dong cuoi cung c gi.

dat a

1, 3

D- Chi tiet 1. S thc thi toi thieu : Lp le e lam cho SMTP co the lam viec, s thc thi toi thieu sau c yeu cau cho tat ca cac receiver COMMANDS -- HELO

MAIL RCPT DATA RSET NOOP QUIT 2. Tnh trong suot : Khong co mot s cung cap nao cho tnh trong suot d lieu, chuoi ky t <CRLF>.<CRLF> ket thuc mail text va khong c user gi i. Thong thng user khong nhan biet c s ngan can nhng chuoi ky t o. e cho phep tat ca cac text a soan thao cua user c truyen mot cach ro rang nhng thu tuc sau ay c s dung. 1>Trc khi gi mot dong mail text sender-SMTP kiem tra ky t au tien cua dong o. Neu no la mot dau cham, mot dau cham phu c them vao au dong. 2> Khi receiver-SMTP nhan mot dong mail text no kiem tra dong o. Neu dong o ch co mot dau cham n th no la ket thuc cua mail. Neu ky t au tien la mot dau cham va theo sau la nhng ky t khac nam tren cung dong. Th ky t au tien o b xoa. Mail data co the cha cac ky t ma ASCII (128 ky t) tat ca cac ky t c phan phat en mailbox cua recipient bao gom phan nh dang va nhng ky t ieu khien khac. Neu kenh chuyen giao cung cap mot luong d lieu 8 bit (octet), nhng ma ASCII 7 bit tren c van chuyen ung ieu chnh lai trong he bat phan vi bit cao nhat b xoa ve 0. No co the can thiet e bien oi d lieu c nhan hay lu tr . Trong mot so he thong, ieu nay can thiet cho nhng host dung mot tap hp ky t khac vi tap ASCII , nh tap ky t cuc bo cua chung hay d lieu lu trong nhng record nhieu hn chuoi. Neu nhng thay oi tren la can thiet, chung phai khoi phuc lai( bien oi hai chieu) c neu nhng bien oi o c ap dung cho mail c chia ca. 3. Kch thc : Co vai oi tng oi hoi kch thc nho nhat ln nhat. o la tat ca tat ca s thc thi phai co e nhan nhng oi tng co kch thc toi thieu, nhng khong bat buoc phai gi nhng oi tng ln hn kch thc nay E CO PHAM VI LN NHAT CO THE, THC THI KY THUAT ANH LA KHONG GII HAN CHIEU DAI CUA NHNG OI TNG SE C DUNG

user : Chieu dai tong cong ln nhat cua user name la 64 ky t. domain : Chieu dai tong cong ln nhat cua domain name hay so la 64 ky t. path : Chieu dai tong cong ln nhat cua mot dong lenh bao gom nhng t lenh va <CRLF> la 512 ky t. text line (dong van ban) : Chieu dai tong cong ln nhat cua dong van ban bao gom <CRLF> la 1000 ky t (khong tnh dau cham au c nhan len cho van e trong suot). recipients buffer : Tong so recipient ln nhat la 100 recipient.

* Loi vt qua quyen c gii han co the c bao cao bang cach dung nhng ma reply. V du nh : 500 Line too long.(dong qua dai) 501 Path too long (ng dan qua dai) 552 Too many recipients.(qua nhieu recipient) 552 Too much mail data (qua nhieu mail data)

V- Phu luc
Dch vu van chuyen TCP Transmission Control Protocol (ieu khien giao chuyen [3]) c dung trong ARPA internet va trong mot so mang theo tieu chuan US DoD cho cac protocol internetwork . * Thiet lap ket noi : Mot kenh giao chuyen SMTP la mot ket noi c thiet lap the sender process port U and the receiver process port L. no la mot ket noi full duplex n gian c dung nh kenh ket noi tren protocol nay c gan mot dch vu port 25 (31 he mi) o la L=25. * Truyen d lieu : Ket noi TCP ho tr truyen nhng byte 8 bit. D lieu SMTP la nhng ky t 7 bit ma ASCII. Moi ky t c truyen nh mot byte 8 bit vi bit cao nhat b xoa ve 0.
A.

B. Dch vu van chuyen NCP ARPANET Host-to-Host Protocol [4] (c cung cap bi Network Control Program) co the c dung trong ARPANET . * Thiet lap ket noi : Kenh giao chuyen SMTP c thiet lap qua NCP gia sender process socket U va receiver process socket L. The Initial Connection Protocol [5] la ket qua la ket qua tiep theo mot cap ket noi simplex. Cap ket noi nay c dung nh kenh

giao chuyen . protocol nay c gan toan bo socket 25 , o la L=25. * Truyen d lieu: Ket noi NCP data c thiet lap trong che o 8 bit . SMTP data la nhng ky t ASCII 7 bit . Moi ky t c truyen nh mot byte 8 bit vi bit cao nhat b xoa ve 0. C. NTTS Network Independent Transport Service [6] (dch vu van chuyen mang oc lap) co the c dung . * Thiet lap ket noi : Kenh giao chuyen SMTP c thiet lap qua NTTS sender process va receiver process . Sender process thi hanh CONNECT ban au va ch receiver process thc thi ACCEPT ban au . * Truyen d lieu : Ket noi NTTS ho tr giao chuyen cac byte 8 bit . SMTP data la nhng ky t ASCII 7 bit . Moi ky t c truyen nh mot byte 8 bit vi bit cao nhat b xoa ve 0 D. Dch vu van chuyen X.25 No co the dung X.25 service [7] cung cap bi Public Data Networks mot cach trc tiep , tuy nhien no c e ngh mot protocol ang tin cay chang han nh TCP c dung tren ket noi X.25. E. Nguyen ly cua cac ma Reply Ba ch so cua ma reply moi ch co mot y ngha ac biet. Ky t au tien bieu th response, good hay bad hay khong hoan tat. Mot sender-SMTP that se co the xac nhan hanh ong ke tiep cua no (tien hanh theo ke hoach, lam lai, cat giam bt, ..) bang mot cach n gian la kiem tra ch so au tien nay. Mot ssender-SMTP muon biet mot cach gan ung cac kieu loi xay ra (nh mail system error, command syntax error) co the kiem tra ch so th hai, e danh ch so th ba cho viec ket thuc s sap at tang dan cua thong tin (the finest gradation of information. ) . * Co nam gia tr cho ch so au tien cua ma reply: 1yz Positive Preliminary reply (reply khang nh ban au ) : Lenh nay c chap nhan nhng hanh ong yeu cau se c gi hoan lai, tr hoan s xac nhan thong tin trong reply nay. Sender-SMTP se gi mot lenh khac nh ro tiep tuc hay bo qua hanh ong nay. [ Lu y: SMTP khong co lenh nao tha nhan kieu reply nay, vado o khong co lenh tiep tuc hay bo qua].

2yz Positive Completion reply (reply khang nh s hoan thanh) : Hanh ong c yeu cau hoan tat mot cach thanh cong, mot yeu cau mi co the c bat au . 3yz Positive Intermediate reply (reply khang nh gia chng) : Lenh nay c chap nhan nhng hanh ong yeu cau se c gi hoan lai, tr hoan s nhan thong tin them. SenderSMTP se gi mot lenh khac nh ro thong tin nay. Reply nay c dung trong nhng nhom lenh tuan t. 4yz Transient Negative Completion reply (reply phu nh s hoan thanh ngan han): Lenh nay khong c chap nhan va hanh ong yeu cau khong xay ra, tuy nhien trang thai loi la tam thi, hanh ong co the c yeu cau tr lai. Sender se quay tr lai bat au chuoi lenh (neu co) kho gan mot ngha tc thi cho no khi hai site khac nhau (receiver- va sender- SMTPs) phai ong y s thong dch. Moi reply loai nay co mot gia tr thi gian khac nhau nhng sender-SMTP c khuyen khch th lai. Mot quy tac lat trang e xac nh neu mot reply ac vao trong loai 4yz hay 5yz (xem ben di) th nhng reply o la 4yz neu chung co the c lap lai ma khong can thay oi g trong cau truc lenh hay trong nhng thuoc tnh cua sender hay receiver (nh mot lenh c lap lai mot cach giong nhau va receiver khong a ra mot s thc thi mi). 5yz Permanent Negative Completion reply (reply phu nh s hoan thanh dai han): Lenh nay khong c chap nhan va hanh ong c yeu cau khong xay ra . Sender-SMTP ngan can viec lap lai yeu cau (trong chuoi tuan t o). Ngay ca mot so hoan canh loi dai han co the hieu chnh c, do o ngi s dung muon hng sender-SMTP khi tao lai chuoi lenh o bang cach ch ao hanh ong tai mot so thi iem trong tng lai(nh: sau khi chnh ta a c thay oi, hay user o thay oi trang thai account ) . a/ Ch so th hai ma hoa nhng loai tra li(response) ac trng : * x0z Syntax : Nhng reply nay xem xet loi cu phap, nhng lenh ung cu phap khong a vao mot loai chc nang nao. Va khong thc thi cac lenh khong can thiet. * x1z Information : Nhng reply nay e yeu cau thong tin, nh trang thai hay giup . * x2z Connections : Nhng reply nay tham khao en kenh giao chuyen. * x3z : Cho en hien tai cha c ac ta.

* x4z : Cho en hien tai cha c ac ta. * x5z Mail system : Reply nay ch nh tnh trang cua receiver mail system vis-a-vis yeu cau truyen hay hoat ong he thong mail khac . b/ Ch so th ba mang lai mot mc o y ngha nhieu hn cho moi loai (category) c ac ta bi ch so th hai. Danh sach cac reply minh hoa ieu nay. Moi reply text c e ngh nhieu hn la lenh, va co the thay oi tuy theo lenh vi nhng ket hp cua lenh o. Trong s kiem soat khac nhng ma reply nay phai theo s ac ta nghiem ngat trong phan nay s thc thi cua receiver se khong phat sinh ra ma mi cho tnh trang khac nhau khong ang ke cua nhng g c ac ta ay. Nhng nhng ma thch hp hn a c nh ngha san. V du nh, mot lenh nh NOOP chang han no thc thi thanh cong khong can e ngh sender-SMTP mot thong tin mi nao se tra ve mot reply 250. Cau tra li la 502 khi lenh yeu cau mot hanh ong non-site-specific khong thc thi c. Mot s cai tien cho ieu o la reply 504 cho mot lenh c thc thi nhng no yeu cau mot tham so khong thc thi. Reply text co the dai hn mot dong n, trong trng hp nay mot text hoan tat phai c anh dau do o sender biet khi nao no co the ngng oc reply nay. ieu nay oi hoi mot nh dang e ch nh mot reply nhieu dong. nh dang cho cac reply nhieu dong quy nh tat ca cac dong, chap nhan cho cuoi cung va bat au cua ma reply, theo sau o la mot dau gach noi - (dau tr) theo sau la text dong cuoi cung se bat au vi ma reply theo ngay sau o la <SP> , cac text va <CRLF> . Cho v du: 123-First line 123-Second line 123-234 text beginning with numbers 123 The last line Trong mot so trng hp sender-SMTP can tm ma reply theo sau la <SP> au dong, va pht l tat ca cac dong trc. Mot t trng hp co d lieu quan trong cho sender trong reply text sender se nhan biet trng hp nay t ng canh hien hanh.

Phan 2

Giao thc POP 3 (Post Office Protocol version


3)

-----***----I . Gii thieu


Nghi thc POP3 c cai tien t nghi thc POP ( Post Office Protocol ). Tren internet mot loai nao o nho hn node thng khong thc te e duy tr mot he thong van chuyen message (message transport system: MTS), v du nh mot workstation khong co u tai nguyen (recycle, disk space) hp le e cho phep mot SMTP server va mot he thong phan phat mail cuc bo ket hp gi thng tru va chay mot cach lien tuc . Thng th no co the rat at (hay khong thch hp) e gi mot personal computer noi vi mot IP-style netwrork trong mot thi gian dai (node o c biet se thieu tai nguyen nh connectivity) . Mac du vay, e co the quan ly mail rat hu hieu tren nhng node nho hn nay. Va chung thng ho tr mot user agent (UA) e giup cong viec ieu khien mail. e giai quyet van e mot node co the cung cap mot thc the MTS a ra mot maildrop service en nhng node c cap nho hn nay. Post Office Protocol - Version 3 (POP3) c dung cho phep mot workstation truy xuat ong en mot maildrop tren mot server host. Thng ieu o co ngha la POP3 c dung e chap nhan mot workstation goi mail c server ang gi cho no. Khi mot user agent tren mot client host mong muon a mot message vao trong he thong van chuyen, no thiet lap mot ket noi SMTP en host chia ca cua no( host chia ca nay co the, hay khong can POP3 server host cho client host o).

Ban au server host bat au mot POP3 service bang cach lang nghe tren TCP port 110. Khi mot client host mong muon dung POP3 service, no thiet lap mot ket noi TCP vi server host o. Khi ket noi c thiet lap, POP3 server gi mot chao hoi. Client va server POP3 sau o trao oi nhng lenh va cac tra li cho en khi ket noi o c ong hay loai bo. Lenh trong POP3 bao gom mot keyword (t khoa) theo sau co the la mot hay nhieu oi so tat ca cac lenh c ket thuc bi mot cap CRLF. Cac t khoa va oi so c tach rieng ra bi mot ky t trang n , t khoa dai 3 hay 4 ky t. Moi oi so co the len en chieu dai 40 ky t.

II.

Thao tac c ban

Cac tra li trong POP3 bao gom phan ch nh trang thai va mot t khoa co the theo sau la thong tin them vao. Tat ca cac tra li c ket thuc bi mot cap CRLF. Ch co hai loai tra li la: ch nh trang thai khang nh (+OK) va phu nh (-ERR) . Tra li cho cac lenh la tra linhieu dong. Trong trng hp nay, no cho phep ch nh mot cach ro rang, sau khi gi dong au tien cua cau tra li va mot CRLF, mot so dong them vao c gi i, moi dong ket thuc bang mot cap CRLF. Khi tat ca cac dong cua tra li a c gi i bao gom mot so ket thuc he bat phan (termination octe) (ma 046 he mi, . ) va mot cap CRLF. Neu dong nao cua tra li nhieu dong bat au vi termination octet dong o la "byte-stuffed" bang cach (prepending) treotermina_ tion octe o cua dong tra li. Ke t ay mot tra li nhieu dong c ket thuc vi nam octet "CRLF.CRLF". Khi xem xet mot tra li nhieu dong client kiem tra xem neu dong o bat au vi termintion octet. Neu ung va neu nhng octet theo sau khac vi CRLF, octet au tien cua dong nay (termination octet) c bo i. Neu ung va neu nhng ky t ket thuc theo ngay sau no, th tra li t POP3 server nay c ket thuc vi mot dong cha .CRLF khong c coi la mot phan cua tra li nhieu dong o. Mot POP3 session tien hanh qua mot so trang thai trong thi gian song cua no. Khi ket noi TCP c m va mot POP3 server gi mot chao hoi. Hoi ngh se i vao trang thai AUTHORIZATION (xac nhan). Trong trang thai nay client phai nh danh no en POP3 server. Khi client nh danh thanh cong, server thu c nhng tai nguyen ket hp vi clients maildrop, va hoi ngh i vao trang thai TRANSACTION (giao dch). Trong trang thai nay client yeu cau cac hanh ong trong vai tro cua POP3 server khi client phat ra lenh QUIT, hoi ngh i vao trang thai UPDATE. Trong trang thai nay giai phong cac tai nguyen thu nhan c trong trang thai TRANSACTION va say goodbye. Sau o ket noi TCP ong lai. Mot POP3 server co the co mot timer t ong logout khong chu ong. Mot timer nh vay phai ton tai trong khoang thi gian t nhat la 10 phut. Trong khoan thi gian nhan cac lenh t client u e reset timer t ong logout o. Khi timer het hieu lc, hoi ngh khong i vao trang thai UPDATE, server se ong ket noi TCP ma khong remove hay gi mot message nao cho client.

III. Trang thai xac nhan (authorization state)


Khi ket noi TCP c m ra bi mot cleint. POP3 server se xuat ra mot dong chao hoi no co the la mot chuoi nao

o c ket thuc bi CRLF. V du : S: +OK POP3 server ready Chao hoi o la mot POP3 reply. POP3 server bao gi cung se truyen i mot tra li khang nh nh chao hoi tren. POP3 session hien nam trong trang thai AUTHORIZATION. Client phai nh danh va xac nhan no vi POP3 server. Co hai c che thch hp e thc hien. S ket hp lenh USER va PASS , va lenh APOP. e xac nhan dung s ket hp lenh USER va PASS. au tien client phai phat mot lenh USER, neu POP3 server tra li vi mot ch th trang thai khang nh (+OK), th client co the phat i lenh PASS e hoan tat s xac nhan hay lenh QUIT e ket thuc POP3 session. Neu POP3 server tra li vi mot ch th trang thai phu nhan (-ERR) cho lenh USER, th client co the phat ra mot lenh xac nhan mi hay co the phat mot lenh QUIT. Khi client phat ra mot lenh PASS, POP3 server dung cap oi so t lenh USER va PASS e xac nh neu client se c cho truy xuat en maildrop thch hp. Khi POP3 server a c xac nh bang cac lenh xac nhan, no cho client truy xuat en nhng mailbox thch hp, sau o POP3 server thu c mot khoa truy xuat loai tr tren maildrop, v s can thiet e ngan chan message b sa oi hay b loai bo trc khi hoi ngh i vao trang thai UPDATE. Neu thu nhan khoa thanh cong POP3 server tra li vi mot ch nh trang thai khang nh. Va luc nay hoi ngh i vao trang thai TRANSACTION ma khong co message nao b anh dau e xoa. Neu maildrop khong m c v mot so l do nao o(v du : mot khoa khong the nhan c, pha client b t choi truy cap ti maldrop thch hp o, hay maildrop khong c phan tch cu phap ), POP3 server tra li vi mot ch nh trang thai phu nh (neu mot khoa c thu nhan nhng POP3 server d nh tra li vi mot ch nh trang thai phu nh, POP3 server phai giai phong khoa trc khi loai bo lenh o ). Sau khi tra ve mot ch nh trang thai phu nh server phai ong ket noi, neu server khong ong ket noi client co the phat mot lenh xac nhan mi va bat au tr lai, hoac la client phat ra mot lenh QUIT. Sau khi POP3 server m c maildrop no gan mot message-number cho moi message va bieu th kch thc cua moi message trong he tam (octet), message au tien trong maildrop c gan message-number 1, message th hai la 2 Trong cac lenh va cac tra li POP3 tat ca cac message-

number va kch thc message c trnh bay da tren he 10 (decimal) . ay la nhng tom tat cho ba lenh POP3 ban luan tren : USER name - oi so: Mot chuoi nh danh mot mailbox (c yeu cau), no ch co y ngha vi server. - Gii han : Ch co the c cho trong trang thai AUTHORIZATION sau khi POP3 chao hoi hay sau khi mot lenh USER PASS khong thanh cong . - Cau tra li co the : +OK ten mailbox co hieu lc -ERR khong chap nhan ten mailbox V du : C: USER mrose S: +OK mrose is a real hoopy frood ... C: USER frated S: -ERR sorry, no mailbox for frated here PASS string - oi so: Mot password cho mailbox hay server (c yeu cau) a server/mailbox-specific password (required) - Gii han : Ch co the dc cho trong trang thai AUTHORIZATION sau khi mot lenh user thanh cong. - Discussion: (thao luan) : Ke t ay lenh PASS ch co mot oi so, mot POP3 server co the x ly khoang trong trong oi so nay nh la mot phan cua password, thay v la e tach oi so ra . - Cau tra li co the: +OK khoa maildrop va san sang -ERR password khong hieu lc -ERR khong c phep khoa maildrop V du : C: USER mrose S: +OK mrose is a real hoopy frood C: PASS secret S: +OK mrose's maildrop has 2 messages (320 octets) ... C: USER mrose S: +OK mrose is a real hoopy frood C: PASS secret

S: -ERR maildrop already locked QUIT - oi so: khong -Gii han: khong - Cau tra li co the: +OK

IV.

Trang thai giao dch (transaction)

Khi client nh danh no en POP3 server thanh cong va POP3 server a khoa va m maildrop thch hp, POP3 session bay gi trong trang thai TRANSACTION client co the phat nhieu lan cac lenh POP3 sau ay. Sau moi lenh POP3 server phat ra mot cau tra li. Cuoi cung client phat ra mot lenh QUIT va POP3 session i vao trang thai UPDATE . ay la cac lenh POP3 co hieu lc trong trang thai TRANSACTION: STAT - oi so: khong - Gii han : Ch co the c cho trong trang thai TRANSACTION. - Discussion: (thao luan) : POP3 server phat ra mot tra li khang nh vi mot dong cha thong tin cua maildrop. Dong nay c goi la mot "drop listing" cho maildrop o. Thch hp e phan tch cu phap mot cach n gian, tat ca cac POP3 server yeu cau dung mot nh dang cho drop listings. Cau tra li khang nh gom co +OK theo sau la mot khoang trang n, va kch thc cua maildrop trong he tam. Khong yeu cau cai g theo sau maildrop size. Lu y: Viec ngan can mot cach manh me s thc thi cac thong tin phu cung cap trong drop listing. Mat khac ieu kien c ban luan sau, no cho phep client phan tch cu phap cac message trong maildrop. Chu y : Nhng message c anh dau xoa khong c em trong tong so - Cau tra li co the: +OK nn mm V du : C: STAT S: +OK 2 320 LIST [msg] - oi so : Mot message-number (tuy y) co the khong tham khao en mot message c anh dau xoa.

- Gii han : Ch co the c cho trong trang thai transaction. - Discussion: Neu mot oi so c cho va POP3 server phat ra mot tra li khang nh vi mot dong cha thong tin cho message o, dong nay c goi la scan listing cho message o. Neu khong co oi so c trao cho va POP3 server phat ra mot tra li khang nh th tra li c cho la multi-line. Sau khi khi tao +OK , cho moi message trong maildrop, POP3 server tra li vi mot dong cha thong tin cho message o. Dong nay cung c goi la mot scan listing cho message o . Phu hp e n gian hoa viec phan tch cu phap, tat ca cac POP3 server yeu cau dung mot nh dang cho scan listing. Mot scan listing bao gom message number cua message o, theo sau la mot khoang trang n va kch thc chnh xac cua message o bang he tam, khong yeu cau nhng g theo sau message size trong scan listing . Lu y: ay ngan can mot cach manh me s thc thi cac thong tin phu cung cap trong scan listing. Mat khac, ieu kien c ban luan sau , no cho phep client phan tch cu phap cac message trong maildrop. Nhng message c anh dau xoa khong c liet ke . - Cau tra li co the: +OK scan listing follows -ERR no such message V du : C: LIST S: +OK 2 messages (320 octets) S: 1 120 S: 2 200 S: . ... C: LIST 2 S: +OK 2 200 ... C: LIST 3 S: -ERR no such message, only 2 messages in maildrop RETR msg - oi so : Mot message-number (c yeu cau) no co the khong tham khao en mot message c anh dau xoa. - Gii han : Ch c cho trong trang thai TRASACTION - Discussion : Neu POP3 server phat ra mot tra li khang nh, th tra li c trao la multi-line. Sau khi khi tao +OK ,

POP3 server gi mot message tng ng vi message-number c cho, mot cach can than e byte-stuff ky t cuoi cung (nh vi cac tra li multi-line) . - Cau tra li co the: +OK message follows -ERR no such message V du : C: RETR 1 S: +OK 120 octets S: <the POP3 server sends the entire message here> S: . DELE msg - oi so : Mot message-number (c yeu cau) co the khong tham khao en mot message c anh dau xoa. - Gii han : Ch c cho trong trang thai TRANSACTION . - Discussion : POP3 server anh dau xoa message o. Nhng tham khao sau o en message-number ket hp vi message o cua mot lenh POP3 se sinh ra loi. POP3 server khong that s xoa message o cho en khi POP3 session i vao trang thai UPDATE . - Cau tra li co the: +OK message deleted -ERR no such message V du : C: DELE 1 S: +OK message 1 deleted ... C: DELE 2 S: -ERR message 2 already deleted NOOP - oi so: khong - Gii han : Ch c cho trong trang thai TRANSACTION - Discussion : POP3 server khong lam g het , no ch hoi am vi mot tra li khang nh. - Cau tra li co the: +OK V du: C: NOOP S: +OK RSET - oi so: khong - Gii han : Ch c cho trong trang thai TRANSACTION .

- Discussion : Neu mot message nao o a c anh dau xoa bi POP3 server, chung c bo anh dau xoa(unmark ). Sau o POP3 server hoi am vi mot tra li khang nh. - Cau tra li co the: +OK V du : C: RSET S: +OK maildrop has 2 messages (320 octets)

V.

Trang thai cap nhat (update)

Khi client phat ra mot lenh QUIT t trang thai TRANSACTION, POP3 session i vao trang thai UPDATE (lu y rang neu client phat ra mot lenh QUIT t trang thai AUTHORIZATION, POP3 session ket thuc nhng khong i vao trang thai UPDATE). Neu POP3 session ket thuc v cac l do khac sau o mot lenh QUIT c phat ra t client, POP3 session khong i vao trang thai UPDATE va PHAI khong remove mot message nao t maildrop o. QUIT - oi so: khong - Gii han: khong - Discussion : POP3 server loai bo tat ca cac mesasage c anh dau xoa t maildrop. Sau o no giai phong cac khoa truy cap loai tr (exclusive-access lock) tren maildrop o va cac reply ve phan tnh trang cua nhng thao tac nay. Sau o ket noi TCP c ong lai. - Cau tra li co the: +OK V du : C: QUIT S: +OK dewey POP3 server signing off (maildrop empty) ... C: QUIT S: +OK dewey POP3 server signing off (2 messages left) ...

VI. Cac lenh POP 3 chon la (optional POP3 commands) Nhng lenh POP3 c noi en tren phai c ho

tr bi s thc thi toi thieu cua POP3 server. Cac lenh POP3 la chon c mo ta sau ay cho phep mot POP3 client t do hn trong viec ieu khien message, trong khi van gi mot s thc thi POP3 server n gian.

Lu y: So ghi chep khuyen khch nhng s th thi nham ho tr cho nhng lenh nay thay cho viec phat trien tang them drop va scan listings. Thu gon, triet ly cua so ghi nh la nham at mot s thong minh trong vai tro cua client POP3 va khong cho server POP3. TOP msg n - oi so: Mot message-number (c yeu cau) no co the khong tham khao en mot message c anh dau xoa, va mot non-negative number (c yeu cau) . - Gii han : Ch c cho trong trang thai TRANSACTION - Discussion : Neu POP3 server phat ra mot tra li khang nh, th tra li c trao la multi-line. Sau khi tao +OK , POP3 server gi header cua message o, dong trong tach header khoi body, va sau o la so dong ch nh phan body cua message, nen can than e byte-stuff ky t cuoi cung (nh vi tat ca cac tra li muti-line) . Chu y : Neu so dong c yeu cau bi POP3 client ln hn so dong trong body th POP3 server gi toan bo message o . - Cau tra li co the: +OK top of message follows -ERR no such message V du : C: TOP 1 10 S: +OK S: < POP3 server gi phan headers cua message, mot dong trong, va 10 dong au tien cua phan body cua message o> S: . ... C: TOP 100 3 S: -ERR no such message UIDL [msg] - oi so: Mot message-number (tuy y) neu mot message number c cho, no co the khong tham khao en mot message c anh dau xoa. - Gii han : Ch co the c cho trong trang thai TRANSACTION . - Discussion : Neu mot oi so c cho va POP3 server phat ra mot tra li khang nh vi mot dong cha thong tin cho message o. Dong nay c goi la mot unique-id listing cho message o. Neu khong co oi so nao c cho va POP3 server phat ra mot tra li khang nh th cau tra li c trao la

multi-line. Sau khi khi tao OK cho moi message trong maildrop, POP3 server tra li vi mot dong cha thong tin cho message o. Dong nay c goi la mot unique-id listing cho message o. Hp le e n gian hoa viec phan tch cu phap. Tat ca cac server c yeu cau dung mot nh dang cho cac unique-id-listing. Mot unique-id-listing bao gom message number cua message theo sau la mot khoang trang va unique-id cua message. Khong co thong tin khac theo sau unique-id trong unique-id-listing. Unique-id cua mot message la mot chuoi xac nh server tuy y, bao gom nhng ky t trong pham vi 0x21 en 0x7E, no nh danh mot message ben trong mot maildrop la duy nhat va no gi nh vay trong thi gian hoi ngh. Server se khong bao gi dung lai mot unique-id trong mot maildrop a cho. Nhng message c anh dau xoa khong c liet ke. - Cau tra li co the +OK unique-id listing follows -ERR no such message V du : C: UIDL S: +OK S: 1 whqtswO00WBw418f9t5JxYwZ S: 2 QhdPYR:00WBw1Ph7x7 S: . ... C: UIDL 2 S: +OK 2 QhdPYR:00WBw1Ph7x7 ... C: UIDL 3 S: -ERR no such message, only 2 messages in maildrop APOP name digest - oi so : Mot chuoi nh danh mot mailbox va mot chuoi MD5 digest ( yeu cau ca hai). - Gii han : Ch co the c cho trong trang thai AUTHORIZATION sau khi POP3 chao hoi. - Discussion : Thng th, moi POP3 session bat au vi mot s trao oi USER/PASS, no dan en mot password ac ta server/user-id c gi len mang . Nhng s thc thi cua POP3 client ket noi en POP3 server theo mot quy tac c ban e kiem tra mail mi. Hn na khoang thi gian khi tao mot POP3 session theo quy tac la nam phut. Luc o kha nang b

anh cap password rat ln. oi hoi phai co mot thay oi trong phng thc xac nhan cung cap ca s xac nhan va xem lai s bao ve, nhng no khong bao gom viec gi mot passsword khong c ma hoa len mang. Lenh APOP cung cap chc nang nay. Mot POP3 server thc thi lenh APOP no se a mot dong anh dau thi gian vao trong banner greeting cua no. POP3 client ghi nh dong anh dau thi gian nay va sau o phat ra lenh APOP. Tham so name giong nh tham so name trong lenh USER tham so digest cb tnh toan bang cach ap dung giai thuat MD5 [RFC1321] cho mot chuoi cha moc thi gian (nam trong dau ngoac tron) theo sau la mot share secret. Share secret la mot chuoi ch e nhan biet client va server. Tham so digest la mot gia tr 16-octet no c g theo format cua he hex. Khi mot server POP3 nhan c mot lenh APOP, no kiem tra digest. Neu digest ung, POP3 server phat ra mot tra li khang nh va POP3 session i vao trang thai TRANSACTION. Ngc lai no phat ra mot tra li phu nh va POP3 session van gi trang thai AUTHORIZATION - Cau tra li co the: +OK maildrop locked and ready -ERR permission denied V du : S: +OK POP3 server ready <1896.697170952@dbc.mtview.ca.us> C: APOP mrose c4c9334bac560ecc979e58001b3e22fb S: +OK maildrop has 1 message (369 octets) Trong v du nay share secret la chuoi `tan-staaf'. Giai thuat MD5 c ap dung cho chuoi <1896.697170952@dbc.mtview.ca.us>tanstaaf no sinh ra mot gia tr digest c4c9334bac560ecc979e58001b3e22fb

VI. Tom tac cac lenh POP3


A. Cac lenh can phai co : USER name co hieu lc trong trang thai AUTHORIZATION PASS string QUIT STAT TRANSACTION LIST [msg] RETR msg co hieu lc trong trang thai

DELE msg NOOP RSET QUIT co hieu lc trong trang thai UPDATE

* Cac lenh POP3 chon la: APOP name digest co hieu lc trong trang thai AUTHORIZATION TOP msg n co hieu lc trong trang thai TRANSACTION UIDL [msg} * Cac reply POP3 : +OK -ERR LU Y : Vi s chap nhan cac lenh STAT, LIST, va UIDL , reply ma POP3 server gi cho cac lenh ch mang y ngha "+OK" va "-ERR". Nhng text xuat hien sau trply nay se c client pht l.

B. Cac chuan truyen khac :


Ngoai hai chuan truyen tren, Mail con co cac chuan truyen khac nh : - MAIP : Chuan MAPI da tren nen tang mo hnh COM. Chuan nay co rat nhieu chi tiet, nhieu e muc, ham, interface, Object... Trong chuan MAPI, tat ca nhng thanh phan bo phan eu c xem nh la nhng oi tng, muon thao tac vi nhng bo phan o, eu phai theo cach thc truy nhap vao mot Object, sau o mi co the s dung cac method cua Interface ma Objectt tng ng ho tr. V du nh ngay ca thong iep cung c xem la mot oi tng, o la Message Object. - ESMTP (Extender SMTP) - Nghi thc m rong SMTP SMTP co mot han che gay kho khan ln trong viec truyen nhan mail la gii han toi a kch thc noi dung mot bc mail ch la 128KB.Ngay nay noi dung cac bc mail khong ch la dang van ban n thuan ma con bao gom hnh anh, am thanh va nhieu loai d lieu khac na, gii han 128KB tr nen qua nho. Do vay ngi ta a cai tien chuan SMTP thanh mot chuan m rong mi goi la ESMTP.

Chuan nay cho phep tang kch thc mail, no a them t khoa SIZE=nnnnnnn sau lenh khi ong cuoc giao dch, nh o ta co the tang gii han kch thc cua mail len tren 1MB, u e cha them vao cac am thanh, hnh anh e biet xem Server MTA co theo chuan ESMTP hay khong, thay v dung lenh HELLO au mot cuoc giao dch, Client MTA dung lenh mi EHLO, neu Server MTA co trang b, no se tra ve ma thanh cong la 250. Hien nay hau nh chuan ESMTP a thay the chuan SMTP a so cac he thong. X.400 : Chuan X.400 la mot bo phan cua cac chuan Open Systems Interconnection ( OSI ) ve truyen dan thong iep ien t ( electronic Messaging Handling System - MHS ) c phat trien bi to chc ien thoai va Truyen thong quoc te ( Comite Consultatif International de Telegraphique et Telephonique - CCITT ), c xay dng tren viec tham khao mo hnh 7 lp cua OSI va cac protocol c nh ngha bi To chc tieu chuan quoc te ( International Organization for Standardization - ISO )

*. Thong iep theo chuan X.400 : Mot thong iep X.400 co 2 thanh phan : Phan phong b cha thong tin can thiet e phan phoi mot thong iep va phan noi dung cha thong tin can truyen. Phan phong b c dung bi MTA va phan Noi dung c dung bi UA. Phan Noi dung thong tin to chc theo dang IPM ( Interpersonal Message : Dang th tn ca nhan rieng t ) bao gom 2 phan cach biet nhau : Heading va Body. Heading bao gom cac thong tin nh a ch ni i va en, cho biet loai th hoac yeu cau phan hoi.Body cha noi dung can gi. Cac tai lieu ve X.400 ra i nam 1984, va c goi la " red book " ( v chung co ba mau o ). c tu chnh va in lan hai vao nam 1988 va c goi la " blue book " ( v chung co ba xanh ).

You might also like