Đồ án Dịch vụ thư tín điện tử và cài đặt một chương trình mang tính thử nghiệm do dịch vụ thư tín điện tử
[Year
]
ĐỒ ÁN:
Dịch vụ thư tín điện tử và cài đặt một
chương trình mang tính thử nghiệm
do dịch vụ thư tín điện tử
[Pick the date]
LỜI CẢM ƠN
Trước hết tôi xin chân thành cảm ơn các thầy cô giáo khoa Đại học Đại Cương
của trường Đại học Thuỷ Sản Nha Trang và khoa Công Nghệ Thông Tin trường Đại
học Bách Khoa Hà Nội đã trang bị cho tôi những kiến thức cơ bản cần thiết trong
những năm học vừa qua để tôi có thể thực hiện tốt cuốn đồ án này.
Em xin chân thành cảm ơn thầy Văn Thế Minh đã tận tình giúp đỡ và hướng
dẫn em hoàn tất cuốn đồ án này. Ngoài ra tôi cũng xin cảm ơn tất cả bạn bè đã giúp đỡ
tôi trong suốt quá trình thực hiện đồ án.
Mặc dù đã rất cố gắng, nhưng trong khoảng thời gian cho phép cũng như những
hạn chế về kiến thức nên cuốn đồ án này của tôi không thể tránh khỏi những thiếu sót.
Chính vì vậy, tôi rất mong nhận được sự góp ý của các thầy cô giáo cũng như bạn bè
gần xa và những cá nhân hay tổ chức có quan tâm đến lĩnh vực được trình bày trong
cuốn đồ án này.
MỤC LỤC
PHẦN 1 : CƠ SỞ LÝ THUYẾT.................................................................................. 9
CHƯƠNG 1 : GIỚI THIỆU CHUNG VỀ INTERNET VÀ MỘT SỐ GIAO THỨC
TRUYỀN THÔNG TRÊN INTERNET................................................................... 9
1.1. GIỚI THIỆU CHUNG VỀ INTERNET ....................................................... 9
1.2. HỌ GIAO THỨC TCP/IP........................................................................... 10
1.3. GIAO THỨC LIÊN MẠNG IP ................................................................... 11
1.4. GIAO THỨC ĐIỀU KHIỂN TRUYỀN TCP ............................................. 20
CHƯƠNG 2 : CƠ SỞ VỀ LẬP TRÌNH MẠNG TRN MƠ HÌNH CLIENT/SERVER
.............................................................................................................................. 23
2.1. LẬP TRÌNH GIAO TIẾP MẠNG VỚI WINDOWS SOCKETS................. 23
2.2. MỘT SỐ KHÁI NIỆM CƠ BẢN................................................................ 23
2.2.1.Địa chỉ Internet ................................................................................... 23
2.2.2. Khái niệm socket và port .................................................................. 24
2.3. CÁCH CÀI ĐẶT ỨNG DỤNG CLIENT/SERVER TCP........................... 24
2.3.1. Cách cài đặt server TCP................................................................... 24
2.3.2. Cách cài đặt client TCP ................................................................... 25
CHƯƠNG 3 : MỘT SỐ KHÁI NIỆM LIÊN QUAN ĐẾN THƯ ĐIỆN TỬ........... 26
1.1. MAILSERVER........................................................................................... 26
1.2. GIAO THỨC GỬI MAIL (MAIL TRANSPORT PROTOCOL)................. 27
1.3.GIỚI THIỆU KIẾN TRÚC DỊCH VỤ THƯ ĐIỆN TỬ................................ 27
1.3.1. Kin trĩc vµ c¸c dÞch vơ ..................................................................... 27
1.3.2. T¸c nh©n ng-i sư dơng (The User Agent)......................................... 30
1.3.2.1.Gửi thư (Sending Email) ................................................................ 30
1.3.2.2. Đọc thư (Reading Email)............................................................... 31
1.3.2.3.Định dạng thông điệp (Message Formats)....................................... 33
1.3.2.4.Chuẩn RFC 822.............................................................................. 33
1.4.PHÂN TÍCH CẤU TRÚC THƯ ĐIỆN TỬ, CÁC GIAO THỨC SMTP VÀ
POP3 ................................................................................................................. 37
1.4.1.Phân tích cấu trúc thư điện tử (RFC 822).......................................... 37
1.4.1.1. Giíi thiƯu..................................................................................... 37
1.4.1.2. Mô tả về cấu trúc thư..................................................................... 38
1.4.2. §Þnh ngha vỊ c¸c tr-ng Header ......................................................... 39
1.4.3. C¸c tr-ng header ®iĨn h×nh.............................................................. 40
1.4.4. VÝ dơ vỊ cu trĩc th- ........................................................................... 42
1.5. PHÂN TÍCH GIAO THỨC SMTP (RFC 821)............................................ 43
1.5.1. Giíi thiƯu chung................................................................................ 43
1.5.2. M« h×nh ho¹t ®ng phiªn giao dÞch .................................................. 43
1.5.3. Thđ tơc Mail...................................................................................... 45
1.5.4. Thđ tơc Forwarding........................................................................... 49
1.5.5. C¸c thđ tơc Mailing vµ Sending......................................................... 50
1.5.6. C¸c thđ tơc Opening vµ Closing ........................................................ 52
1.5.7. M· tr¶ li cđa c¸c c©u lƯnh SMTP ..................................................... 53
1.6. PHÂN TÍCH GIAO THỨC POP3 (RFC 1081,1082) .................................. 55
1.6.1. Giíi thiƯu........................................................................................... 55
1.6.2. M« h×nh ho¹t ®ng phiªn giao dÞch .................................................. 55
1.6.3. Tr¹ng th¸i AUTHORIZATION......................................................... 57
1.6.4. Tr¹ng th¸i TRANSACTION.............................................................. 60
1.6.5. Tr¹ng th¸i UPDATE .......................................................................... 66
1.6.6. VÝ dơ vỊ mt phiªn giao dÞch POP3 ................................................. 67
1.7. MIME (MULTIPURPOSE INTERNET MAIL EXTENSIONS)................. 69
1.8.POP BEFORE SMTP(CHỨNG THỰC QUYỀN TRUY CẬP THEO GIAO
THỨC POP TRƯỚC KHI SỬ DỤNG SMTP)................................................... 72
1.9.MAIL CLIENT, WEB MAIL ...................................................................... 73
CHƯƠNG 4 : GIỚI THIỆU VỀ CÁC CÔNG NGHỆ LIÊN QUAN ...................... 73
2.1.GIỚI THIỆU VỀ JRUN WEBSERVER 3.1................................................. 73
2.2.GIỚI THIỆU VỀ SQL SERVER 7.0............................................................ 74
2.2.1. Lý thuyết hệ quản trị cơ sở dữ liệu sql server 7.0 và Cấu trúc cơ sở
dữ liệu của sql server 7.0 ............................................................................. 74
2.2.2. Cấu trúc cơ sở dữ liệu vật lý:............................................................. 75
2.2.2.1. Trang (page):................................................................................. 75
2.2.2.2 .Extent:........................................................................................... 76
2.2.2.3 Những loại file trong CSDL:SQL Server có 3 loại file: .................. 76
2.3. LÝ THUYẾT MƠ HÌNH QUAN HỆ.......................................................... 77
2. 3.1. Các khái niệm cơ bản........................................................................ 77
2.3.2. Khái Niệm phụ thuộc dữ liệu và các dạng chuẩn ............................. 77
2.3.3 Khái niệm chỉ dẫn và khóa chỉ dẫn.................................................... 78
2.4.GIỚI THIỆU VỀ JAVA SERVLET............................................................ 78
2.4.1.Khái niệm về JAVA SERVLET ......................................................... 78
2.4.2.Những ứng dụng thực tế của JAVA SERVLET và kiến trúc của
JAVA SERVLET......................................................................................... 79
2.5.GIỚI THIỆU VỀ JAVA SERVER PAGES(JSP) ......................................... 79
2.5.1.Khái niệm về JSP ................................................................................ 79
2.5.2.Quan hệ giữa Servlet và JSP .............................................................. 80
2.5.2.1.Cch trình chủ biên dịch trang JSP thành servlet .............................. 80
2.5.2.2. So sánh giữa Servlet và JSP........................................................... 80
2.6. GIỚI THIỆU VỀ JAVABEANS ................................................................. 81
2.6.1.Khái niệm về JAVABEANS................................................................ 81
2.6.2.Các thẻ chuẩn của JAVABEANS trong trang JSP........................... 82
2.6.2.1.<jsp:useBean>................................................................................ 82
2.6.2.2.<jsp:setProperty> ........................................................................... 83
2.6.2.3. <jsp:getProperty>.......................................................................... 84
2.6.3.Thêm JAVABEANS vào JSP.............................................................. 84
PHẦN 2 : XÂY DỰNG ỨNG DỤNG ....................................................................... 85
CHƯƠNG 1 PHÂN TÍCH BÀI TOÁN.................................................................. 85
1.1.TÊN ĐỀ TÀI ............................................................................................... 85
1.2.DỀ CƯƠNG CHI TIẾT ............................................................................... 86
1.2.1.Khảo sát............................................................................................... 86
1.2.2.Yêu cầu của bài toán........................................................................... 86
1.2.3.Dữ liệu vào, dữ liệu ra và các chức năng xử lý của hệ thống ............ 87
1.2.4. Chức năng của hệ thống thông tin quản lý ....................................... 87
1.3. LÝ DO CHỌN ĐỀ TÀI .............................................................................. 88
CHƯƠNG 2 : THIẾT KẾ VÀ CÀI ĐẶT ỨNG DỤNG ......................................... 88
2.1.PHÂN TÍCH VÀ THẾT KẾ CƠ SỞ DỮ LIỆU............................................ 88
2.1.1.Phân tích.............................................................................................. 88
2.1.2. Giải thích các chức năng của hệ thống.............................................. 90
2.1.3.biểu đồ luồng dữ liệu( DFD – Data flow Diagram)............................ 91
2.1.4. THIẾT KẾ HỆ THỐNG.................................................................... 91
2.1.4.1. Các bảng dữ liệu chính.................................................................. 91
2.2. CÀI ĐẶT MAILSERVER .......................................................................... 94
2.2.1.Phương án tổ chức lưu trữ mail trên Server...................................... 94
2.2.2.Các đơn thể của mailserver ................................................................ 95
2.2.2.1. Xây dựng SMTP Server ................................................................ 95
2.2.2.2. Xây dựng POP3 Server................................................................ 118
2.3.CÀI ĐẶT MAILCLIENT .......................................................................... 143
Một số giao diện chính................................................................................. 149
LỜI NÓI ĐẦU
Ngày nay với sự phát triển mạnh mẽ của tin học và công nghệ Internet, hầu như
mọi người đều thấy rõ lợi ích mà các dịch vụ do mạng Internet mang lại.
Dịch vụ thư điện tử gọi tắt là Email là một trong nhưng dịch vụ được sử dụng
nhiều nhất trên Internet hiện nay. Dịch vụ này cho phép các cá nhân hay tổ chức trao
đổi thư với nhau thông qua mạng Internet. Nhiều người sử dụng Internet chỉ để dùng
dịch vụ này.
Thông thường, khi sử dụng dịch vụ thư tín điện tử, người sử dụng thường ít khi
quan tâm xem hệ thống bên trong đã thực hiện như thế nào. Vì vậy, họ ( người sử
dụng) mới chỉ thấy được một nửa của ứng dụng dịch vụ Email và phần ứng dụng đó
được gọi là Mail Client, hay là sử dụng dịch vụ thư tín máy trạm.
Nhằm mục đích hiểu rõ hơn về hoạt động bên trong của ứng dụng Email ở phần
cung cấp dịch vụ mà thường được gọi là Mail Server, trong cuốn đồ án này tôi xin
trình bày một cách cơ bản hệ thống phục vụ việc truyền thư tín điện tử trên cơ sở tìm
hiểu về các mô hình truyền thông thư tín, các giao thức truyền thông chuẩn, các hoạt
động của một hệ Mail Server.
Vì thời gian có hạn và có rất nhiều các vấn đề có liên quan, do đó đồ án này chỉ
trình bày những vấn đề cơ bản nhất về dịch vụ thư tín điện tử và cài đặt một chương
trình mang tính thử nghiệm do dịch vụ thư tín điện tử mà thôi.
PHẦN 1 : CƠ SỞ LÝ THUYẾT
CHƯƠNG 1 : GIỚI THIỆU CHUNG VỀ INTERNET VÀ MỘT SỐ GIAO
THỨC TRUYỀN THÔNG TRÊN INTERNET
1.1. GIỚI THIỆU CHUNG VỀ INTERNET
M¹ng Internet lµ mt tp hỵp gm hµng v¹n hƯ m¹ng trªn kh¾p th giíi, ®-ỵc ph¸t
triĨn vµo thp k b¶y m-¬i. S l-ỵng m¸y tÝnh ni m¹ng vµ s l-ỵng ng-i truy cp vµo m¹ng
Internet trªn toµn th giíi ®ang ngµy cµng t¨ng lªn nhanh chng, ®Ỉc biƯt t n¨m 1993 tr
®i. M¹ng Internet kh«ng ch cho phÐp chuyĨn t¶i th«ng tin nhanh chng mµ cßn giĩp
cung cp th«ng tin, n cịng lµ diƠn ®µn vµ lµ th- viƯn toµn cÇu ®Çu tiªn.
M¹ng Internet c xut x n¨m 1969 t m¹ng m¸y tÝnh toµn cơc ARPANET do c¬
quan qu¶n lý c¸c d ¸n nghiªn cu c¸c c«ng tr×nh nghiªn cu khoa hc tiªn tin thuc B Quc
phßng M (US Defense’s Advance Research Projects Agency - gi t¾t lµ DARPA) tµi
trỵ. T gi÷a n¨m 1970, trung t©m DARPA h-íng tíi m¹ng Internet víi k thut chuyĨn
m¹ch gi qua m¹ng v« tuyn vµ th«ng tin vƯ tinh. N¨m 1980, DARPA thư nghiƯm dng
giao thc TCP/IP vµ ®· ®-ỵc c¸c tr-ng ®¹i hc M ghÐp ni víi hƯ ®iỊu hµnh UNIX
BSD (Berkely Software Distribution).
HƯ ®iỊu hµnh UNIX lµ hƯ ph¸t triĨn m¹nh víi rt nhiỊu c«ng cơ hç trỵ vµ ®¶m
b¶o c¸c phÇn mỊm ng dơng c thĨ chuyĨn qua l¹i trªn c¸c h m¸y kh¸c nhau (m¸y mini,
m¸y tÝnh lín vµ hiƯn nay lµ m¸y vi tÝnh). Bªn c¹nh ® hƯ ®iỊu hµnh UNIX BSD cßn
cung cp nhiỊu thđ tơc Internet c¬ b¶n, ®-a ra kh¸i niƯm Socket vµ cho phÐp ch-¬ng
tr×nh ng dơng th©m nhp vµo Internet mt c¸ch dƠ dµng.
Cu trĩc m¹ng Internet gm c:
TÇng ng dơng: TELNET, FTP, SMTP;
TÇng giao vn: TCP, UDP;
TÇng Internet: Internet Protocol;
TÇng m¹ng: X.25, Ethernet, FDDI. . .;
TÇng vt lý: lµ c¸c m«i tr-ng truyỊn tin kh¸c nhau.
1.2. HỌ GIAO THỨC TCP/IP
TCP/IP lµ h cđa c¸c giao thc ®-ỵc sư dơng cho viƯc truyỊn th«ng m¸y tÝnh.
C¸c ch÷ c¸i ®-ỵc vit t¾t bi c¸c t (Transmission Control Protocol/Internet Protocol), hai
giao thc nµy c c¸ch biĨu diƠn kh¸c nhau, ng-i ta Ýt khi sư dơng víi c¸i tªn ®Çy ®đ cđa
hai giao thc nµy. Th-ng c¸c giao thc ®-ỵc nhm l¹i thµnh c¸c h (®«i khi cßn ®-ỵc gi lµ
c¸c suites hay c¸c stacks). C¸c giao thc nµo ®-ỵc nhm l¹i víi nhau th-ng ®-ỵc x¸c ®Þnh
bi c¸c b cµi ®Ỉt cđa giao thc.
H giao thc TCP/IP bao gm c¸c giao thc nh- lµ IP (Internet Protocol) , ARP
(Address Resolution Protocol), ICMP (Internet Control Message Protocol), UDP (User
Datagram Protocol), TCP (Transport Control Protocol), RIP (Routing Information
Protocol), Telnet, SMTP (Simple Mail Transfer Protocol), DNS (Domain Name
System) vµ mt s c¸c giao thc kh¸c. H×nh bªn d-íi m« t¶ kin trĩc cđa m¹ng TCP/IP c so
s¸nh víi m« h×nh tham chiu OSI ®Ĩ chĩng ta h×nh dung ®-ỵc s t-¬ng ng vỊ chc n¨ng
cđa c¸c tÇng.
OSI Model
Layers
TCP/IP Protocol
Architecture
Layers
TCP/IP Protocol
Suite
Application
Layer
Presentation
Layer
Application
Layer
Telnet FTP SMTP
RIP SNMP
DNS
Session
Layer
Host-to-Host
Transport
Layer
TCP
UDP
Transport
Layer
Internet
Layer
Network
Layer
IGMP ICMP
IP
ARP
Data Link
Layer
Network
Interface
Layer
Frame
Relay
Token
Ring
ATM
Ethernet
Physical
Layer
So s¸nh c¸c kin trĩc ISO vµ TCP/IP
TCP/IP thc cht lµ mt h giao thc cng lµm viƯc víi nhau ®Ĩ cung cp ph-¬ng tiƯn
truyỊn th«ng liªn m¹ng. Trong phÇn nµy chĩng ta s xem xÐt giao thc IP, giao thc TCP
vµ mt s ng dơng tÇng trªn nh- Telnet, FTP, DNS, SMTP. . .
1.3. GIAO THỨC LIÊN MẠNG IP
Mơc ®Ých chÝnh cđa IP lµ cung cp kh¶ n¨ng kt ni c¸c m¹ng con thµnh liªn
m¹ng ®Ĩ truyỊn d÷ liƯu. Vai trß cđa IP t-¬ng t vai trß cđa giao thc tÇng m¹ng trong m«
h×nh OSI.
IP lµ mt giao thc kiĨu ”kh«ng liªn kt” (connectionless) c ngha lµ kh«ng cÇn c
giai ®o¹n thit lp liªn kt tr-íc khi truyỊn d÷ liƯu. §¬n vÞ d÷ liƯu dng trong IP ®-ỵc gi
lµ datagram, c khu«n d¹ng ch ra trong h×nh bªn d-íi.
ý ngha cđa c¸c tham s nh- sau:
VER (4 bits): ch version hiƯn hµnh cđa IP ®-ỵc cµi ®Ỉt
IHL (4 bits): ch ® dµi phÇn ®Çu (Internet Header Length) cđa datagram, tÝnh
theo ®¬n vÞ t (word = 32 bits). § dµi ti thiĨu lµ 5 t (20 bytes).
0
3 4
7 8
15 16
31
VE
R
I
Type
of
Total Length
H
L
Service
Header
Indentification
Fl
ag
s
Fragment
offset
đ
Time
live
to Protocol Header Checksum
Source Address
Destination Address
Options + Padding
Data
(max: 65.535 bytes)
Type of service (8 bits): ®Ỉc t¶ c¸c tham s vỊ dÞch vơ, c d¹ng cơ thĨ nh- sau:
Precede
nce
D
T
R
Rese
rved
trong ®:
Precedence (3 bits): ch thÞ vỊ quyỊn -u tiªn gưi datagram, cơ thĨ lµ:
111 - Network Control (cao nht) 011 - Flash
110 - Internetwork Control
101 - CRITIC/ECP
010 - Immediate
001 - Priority
100 - Flas Override
000 - Routine (thp nht)
D (Delay) (1 bit): ch ® trƠ yªu cÇu
D = 0 ® trƠ b×nh th-ng
D = 1 ® trƠ thp
T (Throughput) (1 bit): ch th«ng l-ỵng yªu cÇu
T = 0 th«ng l-ỵng b×nh th-ng
T = 1 th«ng l-ỵng cao
R (Reliability) (1 bit): ch ® tin cy yªu cÇu
R = 0 ® tin cy b×nh th-ng
R = 1 ® tin cy cao
Total Length (16 bits): ch ® dµi toµn b datagram, kĨ c¶ phÇn header (tÝnh theo
®¬n vÞ bytes).
Indentification (16 bits): cng víi c¸c tham s kh¸c (nh- Source Address vµ
Destination Address) tham s nµy dng ®Ĩ ®Þnh danh duy nht cho mt datagram
trong kho¶ng thi gian n vn cßn trªn liªn m¹ng.
Flags (3 bits): liªn quan ®n s ph©n ®o¹n (fragment) c¸c datagram, cơ thĨ lµ:
0
D
F
M
F
Bit 0: reserved - ch-a sư dơng , lu«n ly gi¸ trÞ 0
Bit 1 (DF) = 0 (May Fragment)
= 1 (Don’t Fragment)
Bit 2 (MF) = 0 (Last Fragment)
= 1 (More Fragment)
Fragment Offset (13 bits): ch vÞ trÝ cđa ®o¹n (fragment) trong datagram, tÝnh
theo ®¬n vÞ 64 bits, c ngha lµ mçi ®o¹n (tr ®o¹n cui cng) ph¶i cha mt vng d÷
liƯu c ® dµi lµ bi s cđa 64 bits.
Time to live (8 bits): qui ®Þnh thi gian tn t¹i (tÝnh b»ng gi©y) cđa datagram
trong liªn m¹ng ®Ĩ tr¸nh t×nh tr¹ng mt datagram bÞ qun trªn liªn m¹ng. Thi gian
nµy ®-ỵc cho bi tr¹m gưi vµ ®-ỵc gi¶m ®i (th-ng qui -íc lµ 1 ®¬n vÞ) khi
datagram ®i qua mçi router cđa liªn m¹ng.
Protocol (8 bits): ch giao thc tÇng trªn k tip s nhn vng d÷ liƯu tr¹m ®Ých
(hiƯn t¹i th-ng lµ TCP hoỈc UDP ®-ỵc cµi ®Ỉt trªn IP).
Header Checksum (16 bits): m· kiĨm so¸t lçi 16 bits theo ph-¬ng ph¸p CRC, ch
cho vng header.
Source Address (32 bits): ®Þa ch cđa tr¹m ngun.
Destination Address (32 bits): ®Þa ch cđa tr¹m ®Ých.
Options (® dµi thay ®ỉi): khai b¸o c¸c options do ng-i gưi yªu cÇu.
Padding (® dµi thay ®ỉi): vng ®Ưm, ®-ỵc dng ®Ĩ ®¶m b¶o cho phÇn header
lu«n kt thĩc mt mc 32 bits.
Data (® dµi thay ®ỉi): vng d÷ liƯu, c ® dµi lµ bi s cđa 8 bits, vµ ti ®a lµ
65535 bytes.
S¬ ® ®Þa ch ho¸ ®Ĩ ®Þnh danh c¸c tr¹m (host) trong liªn m¹ng ®-ỵc gi lµ ®Þa
ch IP 32 bits (32- bit- IP address). Mçi ®Þa ch IP c ® dµi 32 bits ®-ỵc t¸ch thµnh 4
vng (mçi vng 1 byte), c thĨ ®-ỵc biĨu thÞ d-íi d¹ng thp ph©n, b¸t ph©n, thp lơc ph©n
hoỈc nhÞ ph©n. C¸ch vit phỉ bin nht lµ dng ký ph¸p thp ph©n c du chm (dotted
decimal notation) ®Ĩ t¸ch c¸c vng. Mơc ®Ých cđa ®Þa ch IP lµ ®Ĩ ®Þnh danh duy nht
cho mt host bt k trªn liªn m¹ng. Do tỉ chc vµ ® lín cđa c¸c m¹ng con (subnet) cđa liªn
m¹ng c thĨ kh¸c nhau, ng-i ta chia c¸c ®Þa ch IP thµnh 5 líp, ký hiƯu lµ A, B, C, D vµ
E, víi cu trĩc ®-ỵc ch ra trong h×nh bªn d-íi.
0 1
7 8
15 16
23 24
31
hostid
Líp A
netid
Líp B
Líp C
netid
Hostid
Líp D
Líp E
netid
hostid
Multicast address
Reserved for future use
Cu trĩc cđa c¸c líp ®Þa ch IP
Líp A cho phÐp ®Þnh danh tíi 126 m¹ng, víi ti ®a 16 triƯu host trªn mçi m¹ng.
Líp nµy ®-ỵc dng cho c¸c m¹ng c s tr¹m cc lín.
Líp B cho phÐp ®Þnh danh tíi 16384 m¹ng, víi ti ®a 65534 host trªn mçi m¹ng.
Líp C cho phÐp ®Þnh danh tíi 2 triƯu m¹ng, víi ti ®a 254 host trªn mçi m¹ng.
Líp nµy ®-ỵc dng cho c¸c m¹ng c Ýt tr¹m.
Líp D dng ®Ĩ gưi IP datagram tíi mt nhm c¸c host trªn mt m¹ng.
Líp E d phßng ®Ĩ dng trong t-¬ng lai.
VÝ dơ:
= 10.0.0.0 (Líp A)
netid = 10
0000
0000
0000
0000
= 128.3.2.3 (Líp B)
netid = 128.3
hostid = 2.3
= 192.0.1.255 (Líp C)
netid = 192.0.1
1010
0000
0000
0000
1000
0000
0000
0011
0000
0010
0000
0011
1100
0000
0000
0000
0000
0001
1111
1111
Mt ®Þa ch c hostid (host identifier) b»ng 0 ®-ỵc dng ®Ĩ h-íng tíi m¹ng ®Þnh
danh bi vng netid (network identifier). Ng-ỵc l¹i, mt ®Þa ch c vng hostid gm toµn s 1
®-ỵc dng ®Ĩ h-íng tíi tt c¶ c¸c host ni vµo m¹ng netid, vµ nu vng netid cịng gm toµn s
1 th× n h-íng tíi tt c¶ c¸c host trong liªn m¹ng.
Trong nhiỊu tr-ng hỵp, mt m¹ng c thĨ ®-ỵc chia thµnh nhiỊu m¹ng con (subnet),
lĩc ® c thĨ ®-a thªm c¸c vng subnetid ®Ĩ ®Þnh danh c¸c m¹ng con. Vng subnet ®-ỵc ly
t hostid, cơ thĨ ®i víi 3 líp A, B, C nh- sau (h×nh bªn d-íi).
(Líp A)
Netid
Subnetid
Hostid
0
0
31
(Líp B)
(Líp C)
7
8
15 1631
23 24
Netid
Subnetid
Hostid
7
8
15 16
23 24
Netid
Sub
neti
d
Ho
stid
Bỉ sung vng subnetid
CÇn l-u ý r»ng c¸c ®Þa ch IP ®-ỵc dng ®Ĩ ®Þnh danh c¸c host vµ m¹ng tÇng
m¹ng cđa M« h×nh OSI, vµ chĩng kh«ng ph¶i lµ c¸c ®Þa ch vt lý (hay ®Þa ch MAC -
Media Access Control) cđa c¸c tr¹m ® trªn mt m¹ng cơc b (Ethernet,Token Ring...).
Trªn mt m¹ng cơc b nh- vy, hai tr¹m ch c thĨ liªn l¹c víi nhau nu chĩng bit ®Þa ch vt lý
cđa nhau. Nh- vy, vn ®Ị ®Ỉt ra lµ ph¶i thc hiƯn ¸nh x¹ gi÷a ®Þa ch IP (32 bits) vµ
®Þa ch vt lý (48 bits) cđa mt tr¹m. Giao thc ARP (Address Resolution Protocol) ®·
®-ỵc x©y dng ®Ĩ chuyĨn ®ỉi t ®Þa ch IP sang ®Þa ch vt lý khi cÇn thit. Ng-ỵc l¹i,
giao thc RARP (Reverse Address Resolution Protocol) ®-ỵc dng ®Ĩ chuyĨn ®ỉi t ®Þa
ch vt lý sang ®Þa ch IP. Chĩ ý r»ng c¶ ARP vµ RARP ®Ịu kh«ng ph¶i lµ b phn cđa
IP. IP s dng ®n chĩng khi cÇn.
Mt giao thc kh¸c cịng liªn quan trc tip ®n IP, ® lµ ICMP (Internet Control
Message Protocol). Giao thc nµy thc hiƯn truyỊn c¸c th«ng b¸o ®iỊu khiĨn (b¸o c¸o vỊ
c¸c t×nh tr¹ng lçi trªn m¹ng,...) gi÷a c¸c gateway hoỈc tr¹m cđa liªn m¹ng. T×nh tr¹ng lçi
c thĨ lµ: mt datagram kh«ng thĨ tíi ®-ỵc ®Ých cđa n, hoỈc mt router kh«ng ®đ b nhí
®Ưm ®Ĩ l-u vµ chuyĨn mt datagram,... Mt th«ng b¸o ICMP ®-ỵc t¹o vµ chuyĨn cho
IP. IP s ”bc” (encapsulate) th«ng b¸o ® víi mt IP header vµ truyỊn ®n cho router hoỈc
tr¹m ®Ých.
Chĩng ta c thĨ tm t¾t c¸c b-íc thc hiƯn bi mt thc thĨ IP nh- sau:
§i víi thc thĨ IP tr¹m ngun, khi nhn ®-ỵc mt primitive SEND t tÇng trªn , n
thc hiƯn c¸c b-íc sau ®©y:
1. T¹o mt IP datagram da trªn c¸c tham s cđa primitive SEND
2. TÝnh checksum vµ ghÐp vµo header cđa datagram.
3. Ra quyt ®Þnh chn ®-ng: hoỈc lµ tr¹m ®Ých n»m trªn cng m¹ng hoỈc mt
gateway s ®-ỵc chn cho chỈng tip theo.
4. ChuyĨn datagram xung tÇng d-íi ®Ĩ truyỊn qua m¹ng.
§i víi gateway, khi nhn ®-ỵc mt datagram qu¸ c¶nh, n thc hiƯn c¸c ®ng t¸c
sau:
1. TÝnh checksum, nu bt cp th× lo¹i b datagram.
2. Gi¶m gi¸ trÞ cđa tham s Time-to-Live. Nu thi gian ®· ht th× lo¹i b datagram.
3. Ra quyt ®Þnh chn ®-ng.
4. Ph©n ®o¹n datagram, nu cÇn.
5. Kin t¹o l¹i IP header, bao gm gi¸ trÞ míi cđa c¸c vng Time-to-Live,
Fragmentation vµ Checksum.
6. ChuyĨn datagram xung tÇng d-íi ®Ĩ truyỊn qua m¹ng.
Cui cng, khi mt datagram ®-ỵc nhn bi thc thĨ IP tr¹m ®Ých, n s thc hiƯn c¸c
c«ng viƯc sau:
1. TÝnh checksum. Nu bt cp th× lo¹i b datagram.
2. Tp hỵp c¸c ®o¹n cđa datagram (nu c ph©n ®o¹n).
3. ChuyĨn d÷ liƯu vµ c¸c tham s ®iỊu khiĨn lªn tÇng trªn b»ng c¸ch dng
primitive DELIVER.
1.4. GIAO THỨC ĐIỀU KHIỂN TRUYỀN TCP
bit 0
15 16
31
Source Port
Destination Port
Sequence Number
Acknowledgment Number
D
a
t
a
o
f
Rese
rved
Window
f
s
e
t
Checksum
Options
Urgent Pointer
Padding
TCP data
Khu«n d¹ng cđa TCP segment.
TCP lµ mt giao thc kiĨu ”c liªn kt” (connection - oriented), ngha lµ cÇn ph¶i thit
lp liªn kt (logic) gi÷a mt cỈp thc thĨ TCP tr-íc khi chĩng trao ®ỉi d÷ liƯu víi nhau.
§¬n vÞ d÷ liƯu sư dơng trong TCP ®-ỵc gi lµ segment (®o¹n d÷ liƯu), c khu«n
d¹ng m« t¶ trong h×nh bªn d-íi.
C¸c tham s trong khu«n d¹ng trªn c ý ngha nh- sau:
Source Port (16 bits): s hiƯu cỉng cđa tr¹m ngun.
Destination Port (16 bits): s hiƯu cỉng cđa tr¹m ®Ých.
Sequence Number (32 bits): s hiƯu cđa byte ®Çu tiªn cđa segment tr khi bit
SYN ®-ỵc thit lp. Nu bit SYN ®-ỵc thit lp th× Sequence Number lµ s hiƯu
tuÇn t khi ®Çu (ISN) vµ byte d÷ liƯu ®Çu tiªn lµ ISN+1. Tham s nµy c vai
trß nh- tham s N(S) trong HDLC.
Acknowledgment Number (32 bits): s hiƯu cđa segment tip theo mµ tr¹m
ngun ®ang ch ®Ĩ nhn. NgÇm ý b¸o nhn tt (c¸c) segment mµ tr¹m ®Ých ®·
gưi cho tr¹m ngun - Tham s nµy c vai trß nh- tham s N(R) trong HDLC.
Data offset (4 bits): s l-ỵng t - 32 bit (32 bit words) trong TCP header (tham s
nµy ch ra vÞ trÝ b¾t ®Çu cđa vng d÷ liƯu).
Reserved (6 bits): dµnh ®Ĩ dng trong t-¬ng lai.
Control bits (c¸c bit ®iỊu khiĨn):
T- tr¸i sang ph¶i:
URG: vng con tr khn (Urgent Pointer) c hiƯu lc
ACK: vng b¸o nhn (ACK number) c hiƯu lc
PSH: chc n¨ng PUSH
RST: khi ®ng l¹i (reset) liªn kt
SYN: ®ng b ho¸ c¸c s hiƯu tuÇn t (sequence number)
FIN: kh«ng cßn d÷ liƯu t tr¹m ngun
Window (16 bits): cp ph¸t credit ®Ĩ kiĨm so¸t lung d÷ liƯu (c¬ ch cưa sỉ). §©y
chÝnh lµ s l-ỵng c¸c byte d÷ liƯu, b¾t ®Çu t byte ®-ỵc ch ra trong vng ACK
number, mµ tr¹m ngun ®· s½n sµng ®Ĩ nhn.
Checksum (16 bits): m· kiĨm so¸t lçi (theo ph-¬ng ph¸p CRC) cho toµn b
segment (header + data).
Urgent Pointer (16 bits): con tr nµy tr tíi s hiƯu tuÇn t cđa byte ®i theo sau d÷
liƯu khn, cho phÐp bªn nhn bit ®-ỵc ® dµi cđa d÷ liƯu khn. Vng nµy ch c
hiƯu lc khi bit URG ®-ỵc thit lp.
Options (® dµi thay ®ỉi): khai b¸o c¸c Options cđa TCP, trong ® c ® dµi ti ®a
cđa vng TCP data trong mt segment.
Padding (® dµi thay ®ỉi): PhÇn chÌn thªm vµo header ®Ĩ b¶o ®¶m phÇn
header lu«n kt thĩc mt mc 32 bits. PhÇn thªm nµy gm toµn s 0.
TCP data (® dµi thay ®ỉi): cha d÷ liƯu cđa tÇng trªn, c ® dµi ti ®a ngÇm
®Þnh lµ 536 bytes. Gi¸ trÞ nµy c thĨ ®iỊu chnh b»ng c¸ch khai b¸o trong vng
options.
Mt tin tr×nh ng dơng trong mt host truy nhp vµo c¸c dÞch vơ cđa TCP cung cp
th«ng qua mt cỉng (port). Mt cỉng kt hỵp víi mt ®Þa ch IP t¹o thµnh mt socket duy nht
trong liªn m¹ng. DÞch vơ TCP ®-ỵc cung cp nh mt liªn kt logic gi÷a mt cỈp socket. Mt
socket c thĨ tham gia nhiỊu liªn kt víi c¸c socket xa kh¸c nhau. Tr-íc khi truyỊn d÷ liƯu
gi÷a hai tr¹m cÇn ph¶i thit lp mt liªn kt TCP gi÷a chĩng vµ khi kh«ng cßn nhu cÇu
truyỊn d÷ liƯu th× liªn kt ® s ®-ỵc gi¶i phng. Cịng ging nh- c¸c giao thc kh¸c, c¸c thc
thĨ tÇng trªn sư dơng TCP th«ng qua c¸c hµm dÞch vơ nguyªn thủ (service
primitives), hay cßn gi lµ c¸c li gi hµm (function calls).
CHƯƠNG 2 : CƠ SỞ VỀ LẬP TRÌNH MẠNG TRÊN MÔ HÌNH
CLIENT/SERVER
2.1. LẬP TRÌNH GIAO TIẾP MẠNG VỚI WINDOWS SOCKETS
Windows NT lµ mt hƯ ®iỊu hµnh m¹nh, cho phÐp tn dơng ti ®a kh¶ n¨ng cđa
m¸y tÝnh lo¹i 32 bit, cung ng hµng lo¹t c¸c dÞch vơ m¹ng trªn m«i tr-ng Intranet vµ
Internet. HiƯn nay Windows NT ®-ỵc sư dơng t-¬ng ®i phỉ bin c¸c c¬ quan; doanh
nghiƯp ViƯt Nam.
Giao thc truyỊn th«ng TCP/IP ®· ®-ỵc dng bi hƯ ®iỊu hµnh UNIX vµ m¹ng
Internet, ®Ĩ c¸c m¸y trªn m¹ng NT c thĨ giao tip víi c¸c m¸y trªn m¹ng kh¸c, Windows
NT cịng cung cp giao thc nµy. Ngoµi mt s lƯnh dng giao thc TCP/IP ®· ®-ỵc vit s½n
nh-: ftp, telnet, finger..., Windows NT cho phÐp ng-i lp tr×nh ph¸t triĨn c¸c ng dơng
khai th¸c k thut TCP/IP th«ng qua mt th- viƯn tªn lµ Windows Sockets.
C ba lý do chÝnh ®Ĩ ng-i lp tr×nh sư dơng k thut TCP/IP:
C thĨ vit c¸c ng dơng trªn Windows NT ®Ĩ ni vµo m¹ng UNIX vµ khai th¸c c¸c dÞch
vơ c s½n trªn ®.
T¹o ra c¸c dÞch vơ trªn m¸y Windows NT ®Ĩ c¸c m¸y UNIX c thĨ khai th¸c nh÷ng
dÞch vơ nµy.
Vit c¸c ch-¬ng tr×nh cho phÐp c¸c m¸y Windows NT giao tip trªn hƯ thng m¹ng
Internet.
2.2. MỘT SỐ KHÁI NIỆM CƠ BẢN
2.2.1.Địa chỉ Internet
Trong hƯ thng m¹ng Internet, mçi m¸y ®Ịu c mt tªn vµ mt ®Þa ch IP (cịng gi lµ
®Þa ch Internet). VÝ dơ nh-, mt m¸y NT c tªn lµ ntsvr.csc.hcmu.vn vµ ®Þa ch lµ
192.48.94.200. Tªn hay ®Þa ch IP ®Ịu x¸c ®Þnh duy nht mt m¸y trong hƯ thng m¹ng
Internet. Khi lp tr×nh, chĩng ta c c¸c hµm ®Ĩ chuyĨn ®ỉi t tªn sang ®Þa ch IP vµ ng-ỵc
l¹i.
2.2.2. Khái niệm socket và port
Mt socket lµ mt thit bÞ truyỊn th«ng hai chiỊu t-¬ng t nh- tp tin, chĩng ta c thĨ
®c hay ghi lªn n, tuy nhiªn mçi socket lµ mt thµnh phÇn trong mt mi ni nµo ® gi÷a c¸c
m¸y trªn m¹ng m¸y tÝnh vµ c¸c thao t¸c ®c/ghi chÝnh lµ s trao ®ỉi d÷ liƯu gi÷a c¸c
ng dơng trªn nhiỊu m¸y kh¸c nhau.
Trong giao thc truyỊn th«ng TCP, mçi mi ni gi÷a hai m¸y tÝnh ®-ỵc x¸c ®Þnh
bi mt port, kh¸i niƯm port ®©y kh«ng ph¶i lµ mt cỉng giao tip trªn thit bÞ vt lý mµ ch
lµ mt kh¸i niƯm logic trong c¸ch nh×n cđa ng-i lp tr×nh, mçi port ®-ỵc t-¬ng ng víi mt
s nguyªn d-¬ng.
H×nh bªn d-íi minh ha c¸ch giao tip gi÷a hai m¸y tÝnh trong giao thc truyỊn
th«ng TCP. M¸y A t¹o ra mt socket vµ kt buc (bind) socket nµy víi port X (tc lµ mt s
nguyªn d-¬ng c ý ngha cơc b trong m¸y A), trong khi ® m¸y B t¹o mt socket kh¸c vµ
mc vµo (connect) port X trong m¸y A.
socket
socket
M¸y A
M¸y B
Port
HƯ thng m¹ng
C¸c socket vµ port trong mi ni TCP
2.3. CÁCH CÀI ĐẶT ỨNG DỤNG CLIENT/SERVER TCP
2.3.1. Cách cài đặt server TCP
ng dơng server lµm viƯc theo qui tr×nh sau ®©y:
1. Gi hµm socket ®Ĩ t¹o mt socket.
2. Gi hµm bind ®Ĩ kt buc socket víi mt port, ®i víi mçi giao thc ng chun th× s c mt
h»ng s ®-ỵc ®Þnh ngha s½n trong Winsock cho port cđa giao thc ®.
3. Gi hµm listen ®Ĩ ch ®n khi c mt client ni vµo port.
4. Khi c mt client ni vµo th× hµm listen tr¶ ®iỊu khiĨn vỊ, ng dơng server gi hµm
accept ®Ĩ x¸c nhn mi ni cđa client.
5. Gi c¸c hµm gưi hay nhn d÷ liƯu ®Ĩ trao ®ỉi th«ng tin víi client, vÝ dơ nh- hµm
send, recv.
Sau khi ®· hoµn tt qu¸ tr×nh trao ®ỉi d÷ liƯu, ng dơng server gi hµm closesocket ®Ĩ
®ng socket ®· t¹o.
2.3.2. Cách cài đặt client TCP
ng dơng client thc hiƯn c¸c b-íc sau:
1. Gi hµm socket ®Ĩ t¹o mt socket.
2. Gi hµm connect ®Ĩ ni vµo server.
3. Gi c¸c hµm gưi hay nhn d÷ liƯu ®Ĩ trao ®ỉi th«ng tin víi server, vÝ dơ nh-
c¸c hµm send, recv.
4. Sau khi ®· hoµn tt qu¸ tr×nh trao ®ỉi d÷ liƯu, ng dơng client gi hµm
closesocket ®Ĩ ®ng socket ®· t¹o.
H×nh minh ha c¸c b-íc cÇn thit ®Ĩ c¸c ng dơng client vµ server giao tip víi
nhau nh- sau:
ng dơng Server
ng dơng Client
T¹o mt socket
T¹o mt socket
Kt buc socket víi
mt port (bind)
§Ỉt socket tr¹ng
th¸i ch client ni
Ni vµo port cđa
server
Chp nhn kt ni
CHƯƠNG 3 : MỘT SỐ KHÁI NIỆM LIÊN QUAN ĐẾN THƯ ĐIỆN TỬ
1.1. MAILSERVER
Theo mô hình hoạt động khách chủ, trình chủ là một dịch vụ đóng vai trò người
chủ phục vụ trình khách. Mail Server thật ra là một trình mở socket lắng nghe các yêu
cầu (hay lệnh gửi mail) từ trình khách đưa đến. Như đã nói, mail server sẽ tiếp nhận
nội dung mail, phân phối mail đến các trình chủ khác, cho phép trình khách truy cập
vào máy chủ để nhận mail về, bảo vệ mail…Chính vì vậy, trước khi nhận hay gửi mail
cần phải biết được địa chỉ IP của máy chủ mail server. Địa chỉ này thường được gọi là
mail host. Về khái niệm socket và địa chỉ IP sẽ được trình bày ở phần sau.
1.2. GIAO THỨC GỬI MAIL (MAIL TRANSPORT PROTOCOL)
Để gửi mail đến máy chủ, trình khách phải sử dụng một giao thức trò chuyện
với mail server. Tương tự trình duyệt dùng giao thức HTTP để trò chuyện với trình
chủ Web server. Các trình khách muốn bắt tay với trình chủ mail server và gửi mail
lên máy chủ sẽ sử dụng giao thức SMTP (Simple Mail Transport Protocol). SMTP
được hầu hết các mail server trên thế gới sử dụng. Địa chỉ IP của máy chủ nhận mail
gửi đi thường được gọi là outgoing mail address. Trình chủ thực hiện chức năng tiếp
nhận mail theo giao thức SMTP gọi là SMTP Server, trình khách dùng giao thức
SMTP để gửi mail đến trình chủ mail server gọi là SMTP Client.
1.3.GIỚI THIỆU KIẾN TRÚC DỊCH VỤ THƯ ĐIỆN TỬ
1.3.1. Kin trĩc vµ c¸c dÞch vơ
C¸c hƯ thng th- ®iƯn tư th-ng bao gm hai hƯ thng con: c¸c t¸c nh©n ng-i sư
dơng (the user agents - gi t¾t lµ UA), n cho phÐp chĩng ta ®c vµ gưi th-, vµ c¸c t¸c
nh©n truyỊn th«ng ®iƯp (the message transfer agents - gi t¾t lµ MTA), n lµm nhiƯm
vơ chuyĨn c¸c th«ng ®iƯp t ngun ®n ®Ých. C¸c UAs lµ c¸c ch-¬ng tr×nh cơc b hç
trỵ da trªn ®iỊu khiĨn b»ng lƯnh, tr×nh ®¬n menu hay dng ph-¬ng ph¸p ® ho¹ ®Ĩ
t-¬ng t¸c víi hƯ thng th- ®iƯn tư. C¸c MTAs lµ c¸c tr×nh tiƯn Ých ho¹t ®ng ch ®
nỊn (background) thc hiƯn c¸c nhiƯm vơ cÇn thit nh- tip nhn th- ®iƯn tư vµ chuyĨn
th- qua c¸c hƯ thng.
§Ỉc biƯt, c¸c hƯ thng th- ®iƯn tư hç trỵ n¨m chc n¨ng c¬ b¶n, ®-ỵc m« t¶ d-íi
®©y:
1. Composition: Xư lý viƯc t¹o c¸c th«ng ®iƯp vµ tr¶ li. Cho phÐp bt c tr×nh
so¹n th¶o nµo c thĨ ®-ỵc sư dơng cho phÇn th©n cđa th«ng ®iƯp, c¸c hƯ
thng c thĨ t n ®¶m tr¸ch viƯc ®¸nh ®Þa ch vµ ch s c¸c tr-ng tiªu ®Ị (header
fields) ®-ỵc kÌm theo cng víi mçi th«ng ®iƯp. VÝ dơ nh-, khi tr¶ li mt
th«ng ®iƯp , hƯ thng th- ®iƯn tư c thĨ t¸ch ®Þa ch cđa ng-i gưi t c¸c th-
®-ỵc gưi ®n vµ t ®ng chÌn n vµo c¸c tr-ng thÝch hỵp trong phÇn hi ©m
(reply).
2. Transfer: Lµm nhiƯm vơ chuyĨn c¸c th«ng ®iƯp t ng-i gưi ®n n¬i ng-i
nhn. Trong phÇn nµy, viƯc chuyĨn c¸c th«ng ®iƯp yªu cÇu ph¶i thit lp mt
kt ni ®n ®Ých (ng-i nhn) hay mt s thao t¸c cđa thit bÞ nh- xut th«ng ®iƯp
vµ kt thĩc viƯc kt ni. HƯ thng th- ®iƯn tư lµm viƯc nµy mt c¸ch t ®ng mµ
kh«ng cÇn c mt s can thiƯp nµo cđa ng-i sư dơng.
3. Reporting: Buc ph¶i thc hiƯn ®Ĩ b¸o cho ng-i gưi nh÷ng g× x¶y ra ®i víi
th«ng ®iƯp va gưi lµ t×nh hun ®· gưi ®n ®Ých ch-a? hoỈc viƯc gưi ®·
bÞ hủ b? hoỈc th- ®· bÞ l¹c?.
4. Displaying: Nh÷ng th«ng ®iƯp gưi ®n ®-ỵc yªu cÇu lµm sao ®Ĩ mi ng-i c
thĨ ®c ®-ỵc th- cđa h. §«i khi ng-i ta yªu cÇu qu¸ tr×nh chuyĨn ®ỉi hay mt
tr×nh hiĨn thÞ ®Ỉc biƯt ®Ĩ hç trỵ, vÝ dơ nh-, nu th«ng ®iƯp c d¹ng mt tƯp
PostScript hay ting ni ®-ỵc s ha kÌm theo trong th«ng ®iƯp gưi ®n.
5. Disposition: Lµ b-íc cui cng liªn quan ®n nh÷ng g× ng-i nhn thc hiƯn ®i
víi th«ng ®iƯp sau khi ®· nhn n. Nh÷ng kh¶ n¨ng c thĨ lµ nÐm n ®i tr-íc
khi ®c, nÐm n ®i sau khi ®c, l-u n, v ..v. N cịng s c thĨ thu nhn ®Ĩ ®c l¹i
víi c¸c th«ng ®iƯp ®· ®-ỵc l-u l¹i, chuyĨn tip chĩng hoỈc xư lý chĩng b»ng
nh÷ng ph-¬ng ph¸p kh¸c nhau khi ®-ỵc yªu cÇu cđa ng-i sư dơng.
Thªm vµo ® c¸c dÞch vơ nµy, hÇu ht c¸c hƯ thng th- ®iƯn tư cung cp nhiỊu
®Ỉc tÝnh n©ng cao kh¸c nhau. Mt s ®Ỉc tÝnh tiªu biĨu nh-, khi ng-i ta mun chuyĨn th-
hay khi h ngh xa h¬n vỊ c¸c chi tit vỊ thi gian , c l h mun th- cđa h ®-ỵc chuyĨn tip,
chÝnh v× th mµ hƯ thng thc hiƯn ®iỊu nµy mt c¸ch t ®ng.
HÇu ht c¸c hƯ thng cho phÐp ng-i sư dơng t¹o c¸c hp th- (mailboxes) ®Ĩ l-u tr÷
c¸c th- chuyĨn ®n (incoming email). C¸c lƯnh ®-ỵc ng-i ta yªu cÇu t¹o vµ hđy b c¸c
hp th-, kiĨm tra c¸c ni dung hp th-, chÌn vµ xa c¸c th«ng ®iƯp khi hp th-, v..v.
Nh÷ng ng-i gi¸m ®c c«ng ty th-ng cÇn gưi mt th«ng ®iƯp ®n mçi ng-i trong s
nh÷ng ng-i cp d-íi, nh÷ng kh¸ch hµng, hay ®n c¸c nhµ cung cp. Th× ®iỊu nµy ®-a ra
mt ý t-ng vỊ danh s¸ch th- (mailing list), n lµ mt danh s¸ch c¸c ®Þa ch th- ®iƯn tư.
Khi mt th«ng ®iƯp ®-ỵc gưi ®n mailing list, c¸c b¶n sao ging hƯt ®-ỵc ph¸t ®n mi
ng-i c ®Þa ch trªn danh s¸ch.
Mt ý t-ng quan trng kh¸c lµ th- ®iƯn tư ®-ỵc ®¨ng ký, ®Ĩ cho phÐp ng-i gưi
(sender or originator) bit th- cđa h ®· ®n. ViƯc th«ng b¸o t ®ng cđa c¸c th- kh«ng
®-ỵc ph¸t ®i mt c¸ch lu©n phiªn ®Ĩ ng-i ta c thĨ bit. Trong bt k tr-ng hỵp nµo, ng-i gưi
nªn c mt s ®iỊu khiĨn th«ng qua th«ng b¸o nh÷ng g× x¶y ra.
Name: Mr. Daniel Dumkopf
Street: 18 Willow Lane
State: NY
Zip code: 10604
Mr. Daniel Dumkopf
18 Willow Lane
Envelope
White Plains, NY 10604
Priority: Urgent
From: United Gizmo
Address: 180 Main St
Location: Boston, MA 02120
Date: April, 5, 2001
Subject: Invoice 1081
United Gizmo
180 Main St
Boston, MA
02120
April, 5, 2001
Subject: Invoice 1081
Dear Mr. Dumkopf,
Our computer records
Messag
show that you still have not
paid the above invoice of
$0.00. Please send us a check
for $0.00 promptly.
Dear Mr. Dumkopf,
Our computer records
show that you still have not
paid the above invoice of
$0.00. Please send us a check
for $0.00 promptly.
Yous truly
United Gizmo
(a
(b)
C¸c ®Ỉc tÝnh n©ng cao kh¸c lµ ®ng gưi (carbon copies), th- c mc -u tiªn cao
(high-priority email), b¶o mt th- (secret email) c ngha lµ th«ng ®iƯp ®-ỵc m· ha tr-íc
khi gưi ®i, thay ®ỉi ng-i nhn th- (alternative recipients) nu ng-i ®Çu tiªn kh«ng c kh¶
n¨ng nhn ®-ỵc, vµ c¸c kh¶ n¨ng cho c¸c c« th- ký vn dơng th- cđa c¸c «ng chđ cđa
m×nh.
HiƯn nay th- ®iƯn tư ®-ỵc sư dơng rng r·i trong viƯc kinh doanh cho viƯc
truyỊn th«ng tin trong c«ng ty. N cho phÐp c¸c c«ng nh©n xa hỵp t¸c vỊ c¸c d ¸n phc
t¹p, ngay c¶ nh÷ng n¬i ph¶i mt nhiỊu thi gian míi ®n ®-ỵc. Mt s c«ng ty ®· ®¸nh gi¸
r»ng th- ®iƯn tư ®· lµm t¨ng n¨ng sut s¶n xut cđa h lªn 30 phÇn tr¨m (Perry and
Adam 1992).
Mt kh¸i niƯm quan trng trong tt c¶ c¸c hƯ thng th- ®iƯn tư hiƯn ®¹i lµ s ph©n
biƯt gi÷a phong b× (envelope) vµ c¸c ni dung bªn trong cđa n. Phong b× bao bc
(encapsulate) c¶ th«ng ®iƯp. N cha tt c¶ c¸c th«ng tin cÇn thit cho viƯc truyỊn t¶i
th«ng ®iƯp, nh- lµ ®Þa ch ®Ých, ® -u tiªn, vµ mc ® b¶o mt , tt c¶ nh÷ng c¸i ® ®Ịu
kh¸c biƯt víi th«ng ®iƯp bªn trong n. C¸c MTAs sư dơng phong b× cho viƯc ®Þnh
tuyn ®-ng truyỊn, ®iỊu nµy cịng ging nh- c«ng viƯc cđa b-u ®iƯn lµm.
Th«ng ®iƯp bªn trong phong b× cha hai phÇn: phÇn ®Çu th- (header) vµ phÇn
th©n th- (body). PhÇn header cha c¸c th«ng tin ®iỊu khiĨn cho c¸c UAs. PhÇn th©n lµ
phÇn hoµn toµn dµnh cho ng-i nhn th-. C¸c phong b× vµ c¸c th«ng ®iƯp ®-ỵc m« t¶
trong h×nh bªn d-íi.
1.3.2. T¸c nh©n ng-i sư dơng (The User Agent)
C¸c hƯ thng th- ®iƯn tư c hai phÇn c¬ b¶n, nh- chĩng ta ®· thy gm: phÇn UA
vµ phÇn MTA. Trong phÇn nµy chĩng ta s xÐt ®n phÇn UA. Mt UA th-ng lµ mt
ch-¬ng tr×nh (®«i khi ®-ỵc gi lµ b phn ®c th-) n nhn mt trong nh÷ng lƯnh kh¸c nhau
nh- lµ cho mơc ®Ých so¹n th-, nhn th-, vµ hi ®¸p c¸c th«ng ®iƯp, cịng nh- viƯc thao
t¸c trªn c¸c hp th- (mailboxes). Mt s UA (User Agent) c giao diƯn tr×nh ®¬n (menu)
hay biĨu t-ỵng (icon) kh¸ hp dn mµ n yªu cÇu sư dơng chut hoỈc chp nhn c¸c lƯnh 1 ký
t t bµn phÝm c cng chc n¨ng víi menu vµ c¸c icon.
1.3.2.1.Gửi thư (Sending Email)
Tải về để xem bản đầy đủ
Bạn đang xem 30 trang mẫu của tài liệu "Đồ án Dịch vụ thư tín điện tử và cài đặt một chương trình mang tính thử nghiệm do dịch vụ thư tín điện tử", để tải tài liệu gốc về máy hãy click vào nút Download ở trên.
File đính kèm:
- do_an_dich_vu_thu_tin_dien_tu_va_cai_dat_mot_chuong_trinh_ma.pdf