1. Trang chủ
  2. » Luận Văn - Báo Cáo

(Tiểu luận) đồ án môn học đề tài xây dựng chương trình mail client

38 2 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Xây dựng chương trình mail client
Tác giả Ngô Nguyễn Minh Hòa, Ngô Tiến Dũng
Người hướng dẫn ThS. Nguyễn Thanh Cẩm
Trường học Trường Đại Học Công Nghệ Thông Tin & Truyền Thông Việt - Hàn
Chuyên ngành Kỹ thuật máy tính và Điện tử
Thể loại Đồ án
Năm xuất bản 2022
Thành phố Đà Nẵng
Định dạng
Số trang 38
Dung lượng 346,69 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Vì vậynhững người sử dụng chỉ thấy được một nửa ứng dụng của dịch vụ E-Mail vàphần ứng dụng đó được gọi là Mail Client, hay còn được gọi là dịch vụ thư tínmáy trạm.. Nhằm để hiểu rõ hơn

Trang 1

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN &

TRUYỀN THÔNG VIỆT- HÀN

Khoa Kỹ thuật máy tính và Điện tử

Đà Nẵng, tháng 12 năm 2022

Trang 2

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN & TRUYỀN THÔNG VIỆT - HÀNKhoa Kỹ Thuật Máy Tính và Điện Tử

ĐỒ ÁN MÔN HỌC

ĐỀ TÀI: XÂY DỰNG CHƯƠNG TRÌNH MAIL CLIENT

Sinh viên thực hiện: NGÔ TIẾN DŨNG – 20IT825

NGÔ NGUYỄN MINH HÒA – 20IT532Giảng viên hướng dẫn:THS NGUYỄN THANH CẨM

Đà Nẵng, tháng 12 năm 2022

Trang 3

LỜI CẢM ƠN

Em xin gửi lời cảm ơn chân thành đến cô giáo, giáo viên hướng dẫnThS.Nguyễn Thanh Cẩm Trong quá trình nghiên cứu đề tài, cô đã tạo điềukiện về tài liệu và kiến thức liên quan, tận tình hướng dẫn em cũng như tạomọi điều kiện thuận lợi để em có thể hoàn thành tốt đề tài

Mặc dù đã rất cố gắng, nhưng trong khoảng thời gian có hạn nên trong đồ

án này của em không tránh khỏi những thiếu sót Vì vậy rất mong nhận được

sự góp ý của các bạn, các thầy cô giáo cũng như các cá nhân hay tổ chức quantâm đến vấn đề được trình bày trong đồ án này

Em xin chân thành cảm ơn!

Sinh viên

Ngô Nguyễn Minh HòaNgô Tiến Dũng

Trang 4

MỞ ĐẦU

Ngày nay, với sự phát triển nhanh chóng và mạnh mẽ của tin học vàcông nghệ Internet, hầu hết mọi người đều thấy rõ lợi ích mà các dịch vụ domạng Internet mang lại

Dịch vụ thư điện tử (E-Mail) là một trong những dịch vụ đã và đangđược sử dụng nhiều trên mạng Internet hiện nay Dịch vụ này cho phép các cánhân hay tổ chức trao đổi thư tín với nhau thông qua mạng Internet Nhiềungười sử dụng Internet chỉ để sử dụng dịch vụ này

Thông thường, khi sử dụng dịch vụ E-Mail, người sử dụng ít khi quantâm xem hệ thống được cài đặt, cấu hình và thực hiện như thế nào Vì vậynhững người sử dụng chỉ thấy được một nửa ứng dụng của dịch vụ E-Mail vàphần ứng dụng đó được gọi là Mail Client, hay còn được gọi là dịch vụ thư tínmáy trạm

Nhằm để hiểu rõ hơn hoạt động của hệ thống E-Mail, trong đồ án này

em xin trình bày về Mail Server, cụ thể là các mô hình truyền thông, các giaothức truyền thông, các hoạt động của một hệ thống Mail Server

Vì thời gian có hạn và có rất nhiều vấn đề liên quan, do đó trong đồ ánnày em chỉ xin trình bày những vấn đề cơ bản nhất về dịch vụ E-Mail và càiđặt một hệ thống Mail Server mang tính thử nghiệm

Đồ án gồm bốn chương:

Chương 1: Tổng quan về Mail Server và Client Server

Chương 2: Nguyên lý hoạt động

Chương 3: Xây dựng chương trình và kết

quả Kết luận

Trang 5

NHẬN XÉT (Của giảng viên hướng dẫn)

Mục Lục MỞ ĐẦU 4

DANH MỤC HÌNH 8

Danh Mục Bảng 9

DANH MỤC CỤM TỪ VIẾT TẮT 10

CHƯƠNG 1: TỔNG QUAN 11

1.1 Tổng quan về web server 11

1.1.1 Giao thức HTTP (HyperText Transfer Protocol) 11

1.1.2 Web Client 11

1.1.3 Web tĩnh 11

1.1.4 Web động 11

1.1.5 Web server 12

1.2 Tổng quan về Mail server: 12

1.2.1 Khái niệm về thư điện tử 12

1.2.2 Lịch sử của Mail 13

1.2.3 Ưu điểm của Mail 14

1.3 Một số khái niệm thuật ngữ khi sử dụng Mail 14

1.3.1 SMTP là gì? 14

1.3.2 Push Mail 14

1.3.3 Email Hosting là gì? 15

1.3.4 POP3, IMAP 15

1.3.5 Alterante Email 15

1.4 Những thành phần trong hệ thống Mail 15

1.5 Mail server: 16

1.6 Phần mềm quản lý Mail Server: 16

1.7 Những giao thức Mail 17

1.7.1 Giao thức SMTP (Simple Mail Transper Protocol) 17

1.7.2 Giao thức POP3 (Post Office Protocol version 3) 19

1.7.3 Giao thức IMAP (Internet Massage Acess Protocol) 20

CHƯƠNG 2: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 22

2.1 Sơ đồ use case tổng thể 22

2.2 Đặc tả use case 22

Trang 6

2.2.1 Use case đăng nhập: 22

2.2.2 Use case Gửi Mail 24

2.2.3 Trả lời email: 26

2.2.4 Chuyển tiếp Email 28

CHƯƠNG 3: XÂY DỰNG CHƯƠNG TRÌNH VÀ KẾT QUẢ 30

3.1 Các bước triển khai xây dựng: 30

3.1.1 Giai đoạn 1: Thu thập tài liệu liên quan: 30

3.1.2 Giai đoạn 2: Giai đoạn phân tích và thiết kế: 30

3.1.3 Giai đoạn 3: Tiến hành thiết kế giao diện và lập trình chức năng: 30

3.1.4 Giai đoạn 4: Giai đoạn chạy thử 31

3.2 Kết quả chương trình: 31

3.2.1 Mô hình kiến trúc: 31

3.2.2 Giao diện ứng dụng 32

CHƯƠNG 4: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 37

4.1 Những điểm chương trình làm được: 37

4.1.1 Đối với người dùng: 37

4.1.2 Đối với người quản trị: 37

4.2 Nhược điểm của chương trình: 37

4.3 Hướng phát triển của chương trình: 37

4.4 Những kiến thức kỹ năng đạt được sau khi thực hiện đồ án: 37

DANH MỤC TÀI LIỆU THAM KHẢO 39

DANH MỤC HÌN

Trang 7

Hình 1 1: Mô hình minh họa SMTP 19

Hình 1 2: Mô hình SMTP 20

Hình 1 3: Mô hình giao thức POP3 2 Hình 2 1: Sơ đồ usecase tổng quát 24

Hình 2 2: Sơ đồ Activity Diagram chức năng đăng nhập 26

Hình 2 3: Sơ đồ Sequence Diagram chức năng đăng nhập 27

Hình 2 4: Sơ đồ Activity Diagram chức năng gửi mail 28

Hình 2 5: Sơ đồ Sequence Diagram chức năng gửi mail 29

Hình 2 6: Sơ đô Activity Diagram chức năng trả lời mail 30

Hình 2 7: Sơ đồ Sequence Diagram chức năng trả lời mail 30

Hình 2 8: Sơ đồ Activity Diagram chức năng chuyển tiếp mail 31

Hình 2 9: S ơđôồ Sequence Diagram ch ức năng chuy ển tếếp mail 3 Hình 3 1: Mô hình Client – Server 34

Hình 3 2: Mô hình Quản lý email 35

Hình 3 3: Giao diện đăng nhập 36

Hình 3 4: Giao diện màn hình hộp thư đến 37

Hình 3 5: Giao diện hộp thư mail 38

Hình 3 6: Giao diện soạn mail 39

Trang 8

Danh Mục Bả

Bảng 2 1: Bảng đặc tả đăng nhập 27

Bảng 2 2: Bảng đặc tả chức năng gửi mail 29

Bảng 2 3: Bảng đặc tả chức năng trả lời mail 31

Bảng 2 4: Bảng đặc tả chức năng chuyển tiếp mail 33Y

Bảng 3 1: Bảng danh sách màn hình 39

Trang 9

DANH MỤC CỤM TỪ VIẾT TẮT

Trang 10

CHƯƠNG 1: TỔNG QUAN

1.1 Tổng quan về web server

1.1.1 Giao thức HTTP (HyperText Transfer Protocol)

HTTP là một giao thức cho phép Web browser và Web Server có thểgiao tiếp với nhau Nó chuẩn hóa các thao tác cơ bản mà một Web Server phảilàm được

HTTP là gao thức cơ bản giống như các giao thức chuẩn khác củaInternet, thông tin điều khiển để truyền dưới dạng văn bản thô thông qua kếtnối TCP

Cổng 80 là cổng mặc định dành cho Web Server lắng nghe các kết nối đượcgửi đến

1.1.2 Web Client

Là một phần mềm được sử dụng trên máy khách (Client), dùng để gởicác yêu cầu lên Web Server và nhận các kết quả đáp ứng từ Server đồng thờihiển thị lên với khuôn dạng thích hợp

Các trình duyệt: Mosaic NCSA, Internet Explore

1.1.3 Web tĩnh

Web tĩnh (Static Website) chính là cách gọi khác của những TrangWeb phiên bản trước tiên Là Website dùng hoàn toàn ngôn ngữ HTML (cóđuôi html hoặc htm), sau khi tải trang HTML từ máy chủ xuống, trình duyệtweb (IE, Firefox, Opera, …) sẽ biên dịch mã và hiển thị thông tin Website,người dùng hầu như không thể tác động qua lại với Trang Web

Về kiến thức cơ bản thì Trang Web tĩnh thường được tạo ra từ CSS,HTML, JAVASCRIPT (DHTML), vào thời điểm hiện tại có thêm công nghệHTML5 & CSS3

1.1.4 Web động

Trang 11

Các trang web tĩnh tuy tiện lợi nhưng không đáp ứng đủ nhu cầu củaứng dụng web, đặc biệt là những tương tác giữa Client và Web server Chúng

là những tệp có chứa mã lập trình, có thể tạo ra những trang web động, chophép trả về client và trang web có nội dung thay đổi linh độngứng với ngữcảnh cụ thể, thu thập những phản hồi thông tim mà người dùng gửi

lên server (thông qua URL), truy cập cơ sở sở liệu,

Một số ngôn ngữ lập trình web động phổ biến PHP, ASP, …

http://www.google.com thì nó sẽ ánh xạ (map) Uniform Resource Locator

(URL)trên vào một file cục bộ trên máy server

Ở khía cạnh phần cứng, một web server là một máy tính lưu trữ các filethành phần của một website (ví dụ: các tài liệu HTML, các file ảnh, CSS và cácfileJavaScript) và có thể phân phát chúng tới thiết bị của người dùng cuối (end-user)

Nó kết nối tới mạng Internet và có thể truy cập tới thông qua một tên miền giống như

mozilla.org.

Ở khía cạnh phần mềm, một web server bao gồm một số phần để điềukhiển cách người sử dụng web truy cập tới các file được lưu trữ trên một HTTPserver (máy chủ HTTP) Một HTTP server là một phần mềm hiểu được các URL (cácđịa chỉ web) và HTTP (giao thức trình duyệt của bạn sử dụng để xem các trang web)

1.2 Tổng quan về Mail server:

1.2.1 Khái niệm về thư điện tử

11

Trang 12

Thư điện tử hay còn gọi là Email (viết tắt của Electronic Mail trongtiếng Anh), là hệ thống được tạo ra với mục đích gửi và nhận thư qua mạnginternet.

Thư điện tử sinh ra để thay thế hệ thống gửi và nhận thư bằng giấy theocách truyền thống So với thư giấy vốn tốn nhiều kinh phí để vận hành và tốnthời gian vận chuyển, thư điện tử giúp tiết kiệm rất nhiều thời gian và tiềnbạc

Không chỉ có vậy, ngoài văn bản thư điện tử còn có thể chứa và gửi đicác tập tin đa phương tiện như âm thanh, hình ảnh, video và tài liệu

40 năm trước, bức thư điện tử (Electronic Mail – Email) đầu tiên được gửi đi, đánh dấu sự ra đời của một trong những khái niệm quan trọng nhất của tương lai

Đặc biệt, Tomlinson đã sử dụng ký tự “@” để phân cách giữa tên ngườidùng và tên của máy tính Từ đó, ký tự “@” được sử dụng trong các địa chỉemail, để phân cách giữa tên sử dụng và tên miền của dịch vụ emailNăm 1976, nữ hoàng Elizabeth Đệ Nhị đã sử dụng email đầu tiên.Năm 1978, bức email có nội dung quảng cáo đầu tiên trên thế giới được gửi đi, thông qua các hệ thống mạng của chính phủ và của các trường đại học

Năm 1982, từ “email” (viết tắt của Electronic Mail – Thư điện tử) lần đầu tiên được sử dụng

Tháng 10/1997, Yahoo! trình làng dịch vụ email của riêng mình và nhanh chóng trở thành một trong những dịch vụ email lớn nhất thế giới

Trang 13

Năm 2003, tổng thống Mỹ George Bush đã ký vào đạo luật đầu tiên về giới hạn việc sử dụng email cho các dịch vụ thương mại và quảng cáo

để ngăn chặn nạn Spam thư rác

Năm 2004, các từ viết tắt như LOL (cười sảng khoái) và nhiều từ viết tắt khác thường được sử dụng trong email được đưa vào từ điển tiếng Anh Oxford

21/3/2004, Google lần đầu tiên thử nghiệm dịch vụ email Gmail của mìnhdưới dạng Beta Chỉ những ai được mời mới có thể tham gia thử nghiệmdịch vụ này, và mỗi tài khoản Gmail lại được cung cấp tối đa 50 thư mờiđến những người dùng khác Hiện nay, trong tài khoản Gmailvẫn còn giữ lại chức năng gửi thư mời để tham gia Gmail

Đến năm 2007, Gmail chính thức trở thành dịch vụ email cho tất cảmọi người tham gia

Năm 2008, Barack Obama (khi đó là ứng cử viên tổng thống) đã thu thậpđược 13 triệu địa chỉ email của người dùng tại Mỹ Obama đã sử dụng các địa chỉemail thu thập được, cũng như các dịch vụ mạng xã hội nổi tiếng thời bấy giờ nhưMySpace hay Youtube để kêu gọi sự ủng hộ của người dân Mỹ

1.2.3 Ưu điểm của Mail

Rút ngắn thời gian và khoảng cách của việc gửi và nhận thư

Tiết kiệm chi phí cho việc gửi và nhận thư từ nơi này sang nơi khác Không mất nhiều thời gian cho việc viết thư

Chưa nhiều nội dung thông tin cho một lần

gửi Tính bảo mật thông tin cao

1.3 Một số khái niệm thuật ngữ khi sử dụng Mail

1.3.1 SMTP là gì?

SMTP là tên viết tắt của từ tiếng anh Simple Mail Transfer Protocol,nghĩa tiếng việt là một giao thức để truyền tải thư đơn giản Người ta sử dụnggiao thức nfay ở các chương trình gửi hận email được cài đặt trên máy tính

1.3.2 Push Mail

Trang 14

Push Mail là một dạng Mail Server mới, có chệ độ cập nhật email gầnnhư tức thì Nó sẽ lập tức gửi ngày một bản sao đến máy của bạn Khác vớiPull Mail, Push Mail hoạt động ngay cả khi bạn không truy cập vào ứng dụngcủa nó.

1.3.4 POP3, IMAP

POP3, IMAP là 2 giao thức để nhận email về máy qua Mail Client.POP3 sẽ tải email về máy, còn IMAP sẽ ánh xạ (hiển thị y chang hộp thư mailcủa bạn về trang web) về máy

1.3.5 Alterante Email

Nó có nghĩa là mail dự phòng, mail phụ hay mail thay thế Bạn sử dụng

nó trong trường hợp quên mật khẩu, mail sẽ có nhiệm vụ giúp bạn lấy lại mậtkhẩu đã mất

1.4 Những thành phần trong hệ thống Mail

Hệ thống phải có ít nhất hai thành phần: Mail server và Mail client.Mail gateway: máy kết nối giữa các mạng dùng cho các giao thức truyền tthonog khác nhau dùng chung giao thức

Mail Host: Là máy giữ vai trò máy chủ mail trong hệ thống mạngMail Server: chứa mailbox của người dùng

Trang 15

Mail Client: là những hệ thống mà nó cho phép tập tin mail spool của user được đọc thông báo qua cơ chế mount.

1.6 Phần mềm quản lý Mail Server:

Linux là một mã nguồn mở nên có đa dạng gói cài đặt giúp quản trị hệ thống Mail Server, trong đó có IRed Mail và Axigen Về Mail Server em sẽ cài IRedMail trên hệ điều hành Linux distro Centos 7 IRedMail là một "shell script" miễn phí cho phép triển khai nhanh một hệ thống, giải pháp Mail Server mở rất nhanh chóng và hiệu quả Trước hết, ta cần hiểu một số điều về iRedMail như sau:

Các hệ điều hành được hỗ trợ: Red Hat(R) Enterprise Linux & CentOS5.x, Debian 5.0.x, Ubuntu 8.04/9.04, FreeBSD 7.x/8.x (bao gồm cả i386 và x86_64)

Hầu hết các thành phần được sử dụng trong iRedMail được cung cấp bởi các bản phân phối Linux chính thức Điều này có nghĩa là người dùng iRedMail sẽ nhận được sự hỗ trợ về cập nhật phần mềm miễn phí, phân phối bởi nhà cung cấp

iRedMail hỗ trợ OpenLDAP và MySQL là cách để lưu các tên miền ảo

và người dùng ảo

Trang 16

Trang quản trị của iReadMail được xây dựng trên nền tảng web-admin

1.7 Những giao thức Mail

1.7.1 Giao thức SMTP (Simple Mail Transper Protocol)

SMTP (Simple Mail Transfer Protocol) là giao thức chuẩn TCP/IPtruyền tải thư điện tử đơn giản hóa Giao thức này có nhiệm vụ thiết lập kênhkết nối giữa mail client và mail server, và thiết lập kênh liên lạc giữa mailserver gửi và mail server nhận

Hình 1 1: Mô hình minh họa SMTP

- SMTP Server (máy chủ dùng gửi mail) là một dịch vụ cho phép gửi một sốlượng lớn Email với tốc độ nhanh mà không bị giới hạn như dịch vụ mail miễn phícủa Gmail hoặc mail đi kèm với dịch Hosting mà bạn đang dùng

- Nghĩa là các máy chủ này sẽ chỉ giúp bạn thực hiện thao tác gửi thư nênngười ta thường gọi là SMTP Server và máy chủ này sẽ thực hiện gửi thư qua giaothức TCP hoặc IP

- Trước tiên, việc gửi thông báo (notification) sẽ phải được thực hiện bắtđầu bằng việc chuyển thông báo đến một máy chủ SMTP chỉ định.Sau

Trang 17

đó, dựa vào tên miền của địa chỉ Email nhận (VD: TenGmail.com),SMTP Server mới bắt đầu trao đổi liên lạc đến một DNS Server, tạiđây sẽ bắt đầu thao tác tìm kiếm và trả về Host Name của SMTPServer đích (VD: Mail.TenGmail.com) cho tên miền đó.Sau cùng thìSMTP Server ban đầu sẽ thực hiện trao đổi thông tin trực tiếp vớiSMTP Server đích thông qua cổng 25 của TCP/IP.

Hình 1 2: Mô hình SMTP

- Nếu tên người dùng (username) của địa chỉ Email nhận trùng khớp với tàikhoản người dùng được cấp phép trong máy chủ đích thì thông báo Email gốc cuốicùng sẽ được đưa đến máy chủ này

- Kết quả là sẽ chờ người nhận có được thông báo đó thông qua một chươngtrình gửi nhận mail như Mail Server của Outlook chẳng hạn là được

- Trong bối cảnh khác, nếu SMTP Server đầu tiên không thể liên lạc và traođổi thông tin trực tiếp với Server đích thì giao thức SMTP sẽ tiếp tục cung cấp các cơchế để chuyển các thông báo thông qua một hay nhiều SMTP Server chuyển tiếptrung gian khác

17

Trang 18

- Một máy chủ trung gian sẽ nhận được thông báo gốc và sau đó sẽ tiếnhành gửi thông báo đó tới máy chủ đích hoặc cũng có thể gửi thông báo một lần nữatới một trong các máy chủ trung gian khác.

- Quá trình bên trên sẽ được thao tác nhiều lần cho đến khi thông báo được chuyển đi thành công hoặc hết hạn thời gian lưu giữ thông báo

1.7.2 Giao thức POP3 (Post Office Protocol version 3)

- POP3 là từ viết tắt của Post Protocol Version 3, đây là một giao thức tầngứng dụng dùng để lấy thư điện tử từ các server email bằng cách kết nối TCP/IP

- POP3 được dùng để kết nối đến các server mail và tải email đó xuống máytính cá nhân bằng ứng dụng email client như Outlook, Thunderbird, Windows mail,Mac mail,…

- Đây là một giao thức nhận email đã có từ rất lâu, khi mà máy tính còn bị giới hạn bởi tốc độ, băng thông

- POP3 là giao thức 1 chiều, có nghĩa là email được “kéo” từ email server từ

xa xuống email client

- Tìm hiểu về giao thức POP3 trong email

Hình 1 3: Mô hình giao thức POP3

Trang 19

- Chức năng máy chủ email

POP3 ngày nay được phát triển ngày một tốt hơn với khả năng cấu hình download mail từ máy chủ nhiều lần sau khoảng thời gian quy định mới xóa tuy nhiên phương thức này chỉ dành cho những người quản trị có kinh nghiệm còn với phần lớn người hiện nay thì nó vẫn chưa khả quan.Mặc dù máy chủ thư điện tử có các giao thức có thể thay thế như IMAP nhưng người ta vẫn ưu thích sử dụng phương thức POP3 trong nhận mail hơn vì khả năng phát sinh lỗi của

nó rất thấp, bên cạnh đấy có nhiều phiên bản nâng cấp của POP nhưng phiên bản POP3 vẫn là phiên bản được sử dụng nhiều nhất hiện nay với sự hoạt động ổn định

- Làm việc cùng ứng dụng

Bởi vì tính đơn giản trong việc truy xuất và lưu trữ email POP3 được sử dụng trong rất nhiều ứng dụng miễn là bạn cấu hình giao thức nhận mail đúng thì POP3 sẽ hoạt động vì vậy có nhiều ứng dụng cấu hình POP3 thành giao thức mặc định trong đó có thể kể đến như Outlook, Eudora,…

Mỗi máy chủ thư điện tử POP3 sẽ có địa chỉ khác nhau thường được cung cấp bởi các đơn vị lưu trữ web, địa chỉ này được nhận diện trong các trương trì

- Cơ chế hoạt động của POP3: Kết nối đến server Nhận toàn bộ mail.Lưu cục bộ như mail mới

Xóa mail trên server

Ngắt kết nối với server

1.7.3 Giao thức IMAP (Internet Massage Acess Protocol)

- IMAP là viết tắt của Internet Message Access Protocol, là giao thức chuẩnInternet được sử dụng bởi các ứng dụng email để truy xuất thư

19

Ngày đăng: 20/09/2023, 15:19

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w