đồ án xây dựng webmail

145 496 3
đồ án xây dựng webmail

Đ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 tốt nghiệp Sinh viên thực hiện Nguyễn Xuân Thanh Trang 1 Đề tài: “Xây dựng ứng dụng Webmail” Đồ án tốt nghiệp Sinh viên thực hiện Nguyễn Xuân Thanh Trang 2 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 10 1.1. GIỚI THIỆU CHUNG VỀ INTERNET 10 1.2. HỌ GIAO THỨC TCP/IP 11 1.3. GIAO THỨC LIÊN MẠNG IP 12 1.4. GIAO THỨC ĐIỀU KHIỂN TRUYỀN TCP 19 CHƯƠNG 2 : CƠ SỞ VỀ LẬP TRÌNH MẠNG TRÊN MÔ HÌNH CLIENT/SERVER 21 2.1. LẬP TRÌNH GIAO TIẾP MẠNG VỚI WINDOWS SOCKETS 21 2.2. MỘT SỐ KHÁI NIỆM CƠ BẢN 22 2.2.1.Địa chỉ Internet 22 2.2.2. Khái niệm socket và port 22 2.3. CÁCH CÀI ĐẶT ỨNG DỤNG CLIENT/SERVER TCP 23 2.3.1. Cách cài đặt server TCP 24 2.3.2. Cách cài đặt client TCP 24 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) 26 Đồ án tốt nghiệp Sinh viên thực hiện Nguyễn Xuân Thanh Trang 3 1.3.GIỚI THIỆU KIẾN TRÚC DỊCH VỤ THƯ ĐIỆN TỬ 27 1.3.1. Kiến 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) 32 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 36 1.4.1.Phân tích cấu trúc thư điện tử (RFC 822) 36 1.4.1.1. Giới thiệu 36 1.4.1.2. Mô tả về cấu trúc thư 37 1.4.2. Định nghĩa về các trường Header 39 1.4.3. Các trường header điển hình 39 1.4.4. Ví dụ về cấu trúc thư 41 1.5. PHÂN TÍCH GIAO THỨC SMTP (RFC 821) 42 1.5.1. Giới thiệu chung 42 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 48 1.5.5. Các thủ tục Mailing và Sending 49 1.5.6. Các thủ tục Opening và Closing 51 1.5.7. Mã trả lời của các câu lệnh SMTP 52 1.6. PHÂN TÍCH GIAO THỨC POP3 (RFC 1081,1082) 53 1.6.1. Giới thiệu 54 1.6.2. Mô hình hoạt động phiên giao dịch 54 Đồ án tốt nghiệp Sinh viên thực hiện Nguyễn Xuân Thanh Trang 4 1.6.3. Trạng thái AUTHORIZATION 56 1.6.4. Trạng thái TRANSACTION 59 1.6.5. Trạng thái UPDATE 64 1.6.6. Ví dụ về một phiên giao dịch POP3 65 1.7. MIME (MULTIPURPOSE INTERNET MAIL EXTENSIONS) 67 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) 69 1.9.MAIL CLIENT, WEB MAIL 70 CHƯƠNG 4 : GIỚI THIỆU VỀ CÁC CÔNG NGHỆ LIÊN QUAN 70 2.1.GIỚI THIỆU VỀ JRUN WEBSERVER 3.1 70 2.2.GIỚI THIỆU VỀ SQL SERVER 7.0 71 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 71 2.2.2. Cấu trúc cơ sở dữ liệu vật lý: 72 2.2.2.1. Trang (page): 72 2.2.2.2 .Extent: 73 2.2.2.3 Những loại file trong CSDL:SQL Server có 3 loại file: 73 2.3. LÝ THUYẾT MÔ HÌNH QUAN HỆ 74 2. 3.1. Các khái niệm cơ bản 74 2.3.2. Khái Niệm phụ thuộc dữ liệu và các dạng chuẩn 74 2.3.3 Khái niệm chỉ dẫn và khóa chỉ dẫn 75 2.4.GIỚI THIỆU VỀ JAVA SERVLET 75 2.4.1.Khái niệm về JAVA SERVLET 75 2.4.2.Những ứng dụng thực tế của JAVA SERVLET và kiến trúc của JAVA SERVLET 76 Đồ án tốt nghiệp Sinh viên thực hiện Nguyễn Xuân Thanh Trang 5 2.5.GIỚI THIỆU VỀ JAVA SERVER PAGES(JSP) 76 2.5.1.Khái niệm về JSP 76 2.5.2.Quan hệ giữa Servlet và JSP 77 2.5.2.1.Cách trình chủ biên dịch trang JSP thành servlet 77 2.5.2.2. So sánh giữa Servlet và JSP 77 2.6. GIỚI THIỆU VỀ JAVABEANS 78 2.6.1.Khái niệm về JAVABEANS 78 2.6.2.Các thẻ chuẩn của JAVABEANS trong trang JSP 79 2.6.2.1.<jsp:useBean> 79 2.6.2.2.<jsp:setProperty> 80 2.6.2.3. <jsp:getProperty> 81 2.6.3.Thêm JAVABEANS vào JSP 81 PHẦN 2 : XÂY DỰNG ỨNG DỤNG 83 CHƯƠNG 1 PHÂN TÍCH BÀI TOÁN 83 1.1.TÊN ĐỀ TÀI 83 1.2.DỀ CƯƠNG CHI TIẾT 83 1.2.1.Khảo sát 83 1.2.2.Yêu cầu của bài toán 83 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 84 1.2.4. Chức năng của hệ thống thông tin quản lý 85 1.3. LÝ DO CHỌN ĐỀ TÀI 85 CHƯƠNG 2 : THIẾT KẾ VÀ CÀI ĐẶT ỨNG DỤNG 86 2.1.PHÂN TÍCH VÀ THẾT KẾ CƠ SỞ DỮ LIỆU 86 2.1.1.Phân tích 86 2.1.2. Giải thích các chức năng của hệ thống 88 Đồ án tốt nghiệp Sinh viên thực hiện Nguyễn Xuân Thanh Trang 6 2.1.3.biểu đồ luồng dữ liệu( DFD – Data flow Diagram) 89 2.1.4. THIẾT KẾ HỆ THỐNG 89 2.1.4.1. Các bảng dữ liệu chính 89 2.2. CÀI ĐẶT MAILSERVER 91 2.2.1.Phương án tổ chức lưu trữ mail trên Server 91 2.2.2.Các đơn thể của mailserver 92 2.2.2.1. Xây dựng SMTP Server 93 2.2.2.2. Xây dựng POP3 Server 114 2.3.CÀI ĐẶT MAILCLIENT 136 Một số giao diện chính 142 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. Đồ án tốt nghiệp Sinh viên thực hiện Nguyễn Xuân Thanh Trang 7 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. Hà Nội, tháng 5 năm 2003 Nguyễn Xuân Thanh Đồ án tốt nghiệp Sinh viên thực hiện Nguyễn Xuân Thanh Trang 8 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. Đồ án tốt nghiệp Sinh viên thực hiện Nguyễn Xuân Thanh Trang 9 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 Đồ án tốt nghiệp Sinh viên thực hiện Nguyễn Xuân Thanh Trang 10 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à một tập hợp gồm hàng vạn hệ mạng trên khắp thế giới, được phát triển vào thập kỷ bảy mươi. Số lượng máy tính nối mạng và số lượng người truy cập vào mạng Internet trên toàn thế giới đang ngày càng tăng lên nhanh chóng, đặ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 chóng mà còn giúp cung cấp 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ó xuất 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 cứu các công trình nghiên cứu khoa học tiên tiến thuộc Bộ Quốc phòng Mỹ (US Defense’s Advance Research Projects Agency - gọi 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ỹ thuật chuyển mạch gói qua mạng vô tuyến và thông tin vệ tinh. Năm 1980, DARPA thử nghiệm dùng giao thức TCP/IP và đã được các trường đại học ở Mỹ ghép nối 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 rất 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 cấp 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 nhập vào Internet một cách dễ dàng. Cấu trúc mạng Internet gồm có: [...]... Xuân Thanh Trang 24 Đồ án tốt nghiệp ứng dụng Server ứng dụng Client Tạo một socket Tạo một socket Kết buộc socket với một port (bind) Đặt socket ở trạng thái chờ client nối vào Nối vào port của server Chấp nhận kết nối của client Chuyển đổi dữ liệu giữa client và server Các bước giao tiếp giữa client và server trong giao thức TCP Sinh viên thực hiện Nguyễn Xuân Thanh Trang 25 Đồ án tốt nghiệp CHƯƠNG... dụng rộng 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 phức Sinh viên thực hiện Nguyễn Xuân Thanh Trang 29 Đồ án tốt nghiệp tạp, ngay cả những nơi phải mất nhiều thời gian mới đến được Một số công ty đã đánh giá rằng thư điện tử đã làm tăng năng suất sản xuất của họ lên 30 phần trăm (Perry and Adam 1992) Một khái niệm quan trọng... đích và một số tham số khác nếu có (ví dụ như là mức ưu tiên hay bảo mật) Người sử dụng Sinh viên thực hiện Nguyễn Xuân Thanh Trang 30 Đồ án tốt nghiệp có thể tạo thông điệp với một trình soạn thảo văn bản khác nhau, một chương trình sử lý từ hay với bộ soạn thảo được xây dựng trên UA Địa chỉ đích phải có một định dạng mà làm sao cho UA có thể hiểu được Nhiều UA tiếp nhận các địa chỉ DNS (Domain Name System)... và giữa các trường header của phong bì (envelope) không phân biệt rõ ràng như một chuẩn mới khác Khi sử dụng, thông thường UA xây dựng một thông điệp và đưa nó qua bộ phận tác nhân truyền thông điệp (message transfer agents - MTA), ở đây nó dùng một số các trường header để xây dựng một envelope thực sự, thông điệp được thay đổi bởi cái cũ đi một chút cùng với envelope Command Parameter Description H... thống 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 cùng với mỗi thông điệp Ví dụ như, khi trả lời một thông điệp , hệ thống 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 hồi âm (reply) Sinh viên thực hiện Nguyễn Xuân Thanh Trang 27 Đồ án tốt nghiệp 2 Transfer: Làm nhiệm... vùng dữ liệu có độ dài là bội số của 64 bits  Time to live (8 bits): qui định thời gian tồn tại (tính bằng giây) của datagram trong liên mạng để tránh tình trạng một datagram bị quẩn trên liên mạng Thời Sinh viên thực hiện Nguyễn Xuân Thanh Trang 14 Đồ án tốt nghiệp gian này được cho bởi 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... mạng cục bộ như vậy, hai trạm chỉ có thể liên lạc với nhau nếu chúng biết địa chỉ vật lý của nhau Như vậy, vấn đề đặt ra là phải thực hiện ánh xạ giữa địa chỉ IP (32 bits) và địa chỉ vật lý (48 bits) của một trạm Giao thức ARP (Address Resolution Protocol) đã được xây dựng để chuyển đổi từ địa chỉ IP sang địa chỉ vật lý khi cần thiết Ngược lại, giao thức RARP (Reverse Address Resolution Protocol) được... Transfer Protocol), DNS (Domain Name System) và một số các giao thức khác Hình bên dưới mô tả kiến trúc của mạng TCP/IP có so sánh với mô hình tham chiếu OSI để chúng ta hình dung được sự tương ứng về chức năng của các tầng Sinh viên thực hiện Nguyễn Xuân Thanh Trang 11 Đồ án tốt nghiệp OSI Model Layers Application Layer Presentation Layer Session Layer Transport Layer TCP/IP Protocol Architecture... thức khác cũng liên quan trực tiếp đến IP, đó là ICMP (Internet Control Message Protocol) Giao thức này thực hiện truyền các thông báo điều khiển (báo cáo Sinh viên thực hiện Nguyễn Xuân Thanh Trang 17 Đồ án tốt nghiệp 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à: một datagram không thể tới được đích của nó, hoặc một router không đủ bộ nhớ đệm để... thể IP ở trạm đích, nó sẽ thực hiện các công việc sau: 1 Tính checksum Nếu bất cập thì loại bỏ datagram 2 Tập hợp các đoạn của datagram (nếu có phân đoạn) Sinh viên thực hiện Nguyễn Xuân Thanh Trang 18 Đồ án tốt nghiệp 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 dùng primitive DELIVER 1.4 GIAO THỨC ĐIỀU KHIỂN TRUYỀN TCP bit 0 15 16 Source Port 31 Destination Port Sequence Number . Đồ án tốt nghiệp Sinh viên thực hiện Nguyễn Xuân Thanh Trang 1 Đề tài: Xây dựng ứng dụng Webmail Đồ án tốt nghiệp Sinh. 2.2.1.Phương án tổ chức lưu trữ mail trên Server 91 2.2.2.Các đơn thể của mailserver 92 2.2.2.1. Xây dựng SMTP Server 93 2.2.2.2. Xây dựng POP3 Server

Ngày đăng: 13/03/2014, 17:44

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan