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

báo cáo đồ án mạng máy tínhlập trình socket

16 1 0
Tài liệu đã được kiểm tra trùng lặp

Đ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

Nội dung

Đánh giá mức độ hoàn thành STT Họ và Tên Phân công hoàn thành Tiến độ Ghi chú 1 Nguyễn Minh Trực - Tải được các mail từ mailbox về client - Tổ chức file config - Viết báo cáo 3/3 2 Nguyễ

Trang 1

TRƯỜNG ĐẠI HỌC KHOA HỌC TỤ NHIÊN

KHOA CÔNG NGHỆ THÔNG TIN

0 BÁO CÁO

ĐỒ ÁN MẠNG MÁY TÍNH

LẬP TRÌNH SOCKET

GVHD: Nguyễn Thanh Quân

SVTH MSSV

Nguyễn Minh Trực 22120394

Nguyễn Sinh Trực 22120395

Bùi Khắc Trung 22120396

Trang 2

NHẬN XÉT CỦA GIẢNG VIÊN

Trang 3

LỜI NÓI ĐẦU

Kể từ khi cuộc cách mạng công nghiệp lần thứ 3 nổ ra – cuộc cách mạng kỹ thuật số

(tiếng anh: Digital Revolution) vào những thập niên 50 – 70 của thế kỉ 20, mạng internet

đã được hình thành và có những bước phát triển lớn Đến nay, internet đã trở thành một

phần không thể thiếu trong cuộc sống, được ứng dụng rộng rãi trong mọi lĩnh vực Công

nghệ được sử dụng ngày càng hiện đại và thay đổi liên tục để đáp ứng nhu cầu càng cao

của con người Môn học Mạng máy tính (Computer Networking) ra đời để giúp người

học hiểu rõ hơn về các thành phần trong mạng internet và cách thức hoạt động của nó

Một phần nội dung không thể thiếu trong môn Mạng máy tính là lập trình socket Nhờ

có socket mà các ứng dụng giao tiếp được với nhau thông qua môi trường mạng dễ dàng

hơn

Qua đồ án “Lập trình socket – Viết chương trình mail Client”, chúng em xin gửi lời cảm

ơn chân thành đến thầy Nguyễn Thanh Quân – người đã hướng dẫn chúng em hoàn

thành đồ án này

Mặc dù đã rất cố gắng nhưng sai sót là không thể tránh khỏi Chúng em hy vọng nhận

được những nhận xét đánh giá từ thầy/cô để đồ án chúng em có được những kinh

nghiệm quý báu trong những sản phẩm sau này

Chân thành cảm ơn!

Nhóm thực hiện

Trang 4

Mục lục

I Thông tin thành viên 1

1 Giảng viên hướng dẫn 2

2 Sinh viên thực hiện 3

II Đánh giá mức độ hoàn thành 4

III Kịch bản giao tiếp chương trình 4

1 Gửi thư bằng giao thức SMTP 5

2 Nhận thư bằng giao thức POP36

IV Môi trường lập trình và các framework hỗ trợ 4

V Hướng dẫn sử dụng 4

1 Gửi thư 5

2 Nhận thư 6

3 Các chức năng khác 6

VI Bảng phân công công việc chi tiết 4

VII. Tham khảo 4

Trang 5

I. Thông tin thành viên

1 Giảng viên hướng dẫn:

- Nguyễn Thanh Quân

- Lớp 22CTT6, học kì I năm học 2023-2024

2 Sinh viên thực hiện

STT Họ và Tên MSSV

1 Nguyễn Minh Trực 22120394

2 Nguyễn Sinh Trực 22120395

3 Bùi Khắc Trung 22120396

II. Đánh giá mức độ hoàn thành

STT Họ và Tên Phân công hoàn thành Tiến độ Ghi chú

1 Nguyễn Minh Trực

- Tải được các mail từ mailbox

về client

- Tổ chức file config

- Viết báo cáo

3/3

2 Nguyễn Sinh Trực

- Gửi được email tới To và CC

- Gửi được mail với BCC

- Gửi được mail với attach file 3/3

3 Bùi Khắc Trung

- Quản lý trạng thái đọc mail

- Xử lý lọc email

- Xử lý tự động tải mail từ

mailbox theo thời gian cấu hình

trong file config

3/3

Trang 6

III. Kịch bản giao tiếp chương trình

1 Gửi thư bằng giao thức SMTP

Client Server

Socket.connect()

[string encoded]

220 Test mail server

[string encoded]

EHLO [<host ip>]

EHLO [127.0.0.1]

[string encoded]

250 OK

[string encoded]

MAIL FROM: <sender mail address>

[string encoded]

250 sender <sender mail address> OK

[string encoded]

RCPT TO: <recipient(s) mail address>

[string encoded]

250 recipient <sender mail address> OK

(…)

[string encoded]

DATA

[string encoded]

354 enter mail, end with line containing only “.”

[string encoded]

<message in MIME multiparts end with line

containing only “.”>

[string encoded]

250 # bytes accepted

[string encoded]

QUIT

[string encoded]

221 closing connection

Trang 7

2 Nhận thư bằng giao thức POP3

Client Server

Socket.connect()

[string encoded]

USER <user>

[string encoded]

+OK Test Mail Server

[string encoded]

+OK

[string encoded]

PASS <pass>

[string encoded]

+OK

[string encoded]

UIDL

[string encoded]

LIST

[string encoded]

+OK

1 <uid>

2 <uid>

[string encoded]

+OK

1 <size of mail>

2 <size of mail>

[string encoded]

RETR <mail’s sequence>

[string encoded]

+OK <mail size>

<mail content…>

[string encoded]

QUIT

[string encoded]

+OK

Trang 8

IV. Môi trường lập trình, các framework hỗ trợ

- Ngôn ngữ lập trình Python 3.11.7

- Editor: Visual Studio Code, MingW Text Editor

- Môi trường máy tính: Windows 11 64 bit

 Các framework hỗ trợ:

- GUI framework: tkinter

Trang 9

V. Hướng dẫn sử dụng

1 Giao diện ứng dụng khi khởi động

- Khi mở ứng dụng, người dùng sẽ nhìn thấy giao diện đăng nhập vào tài khoản

email của mình, người dùng có thể để trống trường USERNAME và PASSWORD

để đăng nhập vào tài khoản khách (guest)

Trang 10

- Sau khi đăng nhập xong, giao diện ứng dụng sẽ chuyển sang Menu chính với các

tùy chọn chức năng như Gửi thư, Xem thư, Đặt lại thư cục bộ hoặc Thoát chương

trình

2 Gửi thư

- Khi lựa chọn chức năng gửi thư, người dùng sẽ được yêu cầu nhập các thông tin

cần thiết để hoàn thành thư của mình

Trang 11

- Người dùng có thể chèn thêm file đính kèm vào thư của mình bằng cách chọn Yes

khi được hỏi có muốn thêm tệp đính kèm hay không

Trang 12

3 Xem thư

- Khi người dùng chọn chức năng xem thư, giao diện sau sẽ hiện ra để người dùng

lựa chọn thư theo các filter(**)

 Inbox: Hiện thị tất cả thư có trong hộp thư

 Project: Chứa các mail được gửi từ địa chỉ test@gmail.com,

sample@test.com, … (xem trong file config)

 Important: Chứa các mail có subject chứa các từ urgent, ASAP,…(xem

trong file config)

 Work: Chứa các mail có nội dung chứa từ khóa như report, meeting,…

(xem trong file config)

 Spam: Chứa các mail có nội dung hoặc subject chứa từ khóa virus, hack,

crack,…(xem file config)

** Lưu ý: Một mail có thể được phân vào nhiều filter khác nhau

Trang 13

- Nếu thư có tệp đính kèm, người dùng có thể lựa chọn tải thư hoặc bấm enter để bỏ

Trang 15

 Auto reload: Chương trình sẽ tự động kiểm tra mail từ server để tải về máy

sau một khoảng thời gian nhất định (xem file config)

 Reset Local Mail: Chương trình xóa tất cả mail lưu trên máy và tải về bản

mới nhất của các mail

VI. Bảng phân công công việc chi tiết

Chức năng Hàm, lớp Người phụ trách Ghi chú

Giao diện

Gửi thư

Send_() Trung thay gửi lệnh thủ

công bằng hàm

send_command()

Nhận thư Fetch_mail()Recv_mail() TrungTrung Thêm filterFix một số lỗi

Trang 16

Update_status() Trung Đóng góp

Create_path_mail() Trung Sửa lại

Create_path_file() Trung

Create_status_file() Trung

Connect_to_pop3_server() Trung

Autoload() Trung

Main() Trung Hệ thống lại code,

thêm luồng

autoload

VII. Tài liệu tham khảo

Ngày đăng: 26/09/2024, 17:29

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

TÀI LIỆU LIÊN QUAN

w