Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 40 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
40
Dung lượng
680,63 KB
Nội dung
BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC DÂN LẬP HẢI PHÒNG -o0o - TÌM HIỂU KỸ THUẬT LẬP TRÌNH NETWORK SERVICE CHO WINDOW ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY NGÀNH CÔNG NGHỆ THÔNG TIN Giáo viên hướng dẫn: Ths Đỗ Xuân Sinh viên: Phạm Văn Mã số sinh viên: 121216 Hải Phịng, 7/2019 MỤC LỤC LỜI NĨI ĐẦU LỜI CẢM ƠN CHƯƠNG 1: KỸ THUẬT LẬP TRÌNH MẠNG 1.1 Tổng quan lập trình mạng 1.1.1 Mơ hình tham khảo tầng OSI 1.1.2 Giao thức TCP/IP 1.1.3 So sánh giao thức TCP UDP 1.1.4 Địa IP 1.2 Lập trình mạng NET FRAMEWORK 1.2.1 Cơ sở lý thuyết NET 1.2.2 Lập trình Socket 10 1.2.3 Sử dụng lớp hỗ trợ xây dựng từ lớp Socket 13 1.2.4 Sử dụng Thread ứng dụng mạng 15 CHƯƠNG : KỸ THUẬT LẬP TRÌNH WINDOW SERVICES 18 2.1 - Tổng quan windows service 18 2.1.1 Khác niệm window service 18 2.1.2 Bộ điều khiển dịch vụ 19 2.1.3 Cơ sở liệu dịch vụ cài đặt 19 2.1.4 Tài khoản dịch vụ 20 2.2 - Cấu trúc windows service NET 21 2.2.1 Cấu trúc tổng quát 21 2.2.2 Các phương thức, thuộc tính lớp 21 CHƯƠNG - XÂY DỰNG CHƯƠNG TRÌNH THỰC NGHIỆM 26 3.1 - Mơ tả chương trình thực nghiệm 26 3.2 - Thiết kế chương trình 26 3.2.1 Server 26 3.2.2 Client 30 3.3 Kết đạt 33 KẾT LUẬN 36 TÀI LIỆU THAM KHẢO 37 Đồ án tốt nghiệp Đại học Dân Lập Hải Phịng LỜI NĨI ĐẦU Tin học viễn thông hai thành phần cốt lõi công nghệ thơng tin Mạng máy tính khơng cịn thuật ngữ túy khoa học mà trở thành đối tượng nghiên cứu ứng dụng nhiều phạm vi hoạt động khác Những năm gần đây,do phát triển vũ bão cơng nghiệp máy tính,việc kết nối mạng máy tính trở thành nhu cầu thực cho người sử dụng Nhờ có mạng mà người dùng sử dụng máy tính đề điều khiển chương trình máy tính khác mạng Ngồi việc kết nối mạng máy tính phát triển mạng khơng dây cịn giúp máy tính kết nối với thiết bị khơng dây Vì nhu cầu điều khiển thiết bị cố định từ thiết bị di động lớn Xuất phát từ yêu cầu em vào tìm hiểu lập trình socket với đề tài: "Tìm hiểu kỹ thuật lập trình Network Service" để kết nối mạng máy tính điều khiển chương trình đơn giản Nhằm bước đầu hiểu cách thức lập trình điều khiển từ xa Đề án trình bày gồm chương: Chương 1: Kỹ thuật lập trình mạng Chương 2: Kỹ thuật lập trình window service Chương 3: Xây dựng chương trình thực nghiệm Đồ án thực khoảng thời gian tương đối ngắn nên không tránh khỏi cịn nhiều thiếu sót Em mong nhận ý kiến đóng góp thầy người quan tâm Phạm Văn Ninh - CT1201 Đồ án tốt nghiệp Đại học Dân Lập Hải Phòng LỜI CẢM ƠN Trước tiên em xin chân thành cảm ơn sâu sắc đến thầy cô trường Đại học Dân Lập Hải Phịng, đặc biệt thầy khoa Khoa công nghệ thông tin truyền đạt kiến thức cho chúng em thời gian qua Em xin chân thành cảm ơn thầy Đỗ Xuân tận tình giúp đỡ, bảo hướng dẫn trực tiếp em để em hoàn thành tốt đồ án tốt nghiệp, thời gian làm thầy hướng dẫn, em tiếp thu thêm nhiều kiến thức bổ ích q trình học tập trình làm việc sau Em xin gửi lời cảm ơn đến tất bạn bè động viên, đóng góp ý kiến giúp đỡ q trình học tập, nghiên cứu hồn thành đồ án Và cuối ,kính chúc thầy sức khỏe, tiếp tục đạt nhiều thành tích giảng dạy, nghiên cứu khoa học nghiệp giáo dục Xin chân thành cảm ơn ! Hải Phòng, ngày tháng năm 2019 Sinh viên thực Phạm Văn Ninh - CT1201 Đồ án tốt nghiệp Đại học Dân Lập Hải Phòng CHƯƠNG 1: KỸ THUẬT LẬP TRÌNH MẠNG 1.1 Tổng quan lập trình mạng 1.1.1 Mơ hình tham khảo tầng OSI Mơ hình kết nối hệ thống mở Tổ chức quốc tế tiêu chuẩn hoá ISO (International Organizaiton for Standardization) đưa nhằm cung cấp mơ hình chuẩn cho nhà sản xuất cung cấp sản phẩm viễn thông áp dụng theo để phát triển sản phẩm viễn thơng Ý tưởng mơ hình hố tạo nhằm hỗ trợ cho việc kết nối hệ thống modun hoá thành phần phục vụ mạng viến thơng a) Chức mơ hình OSI - Cung cấp kiến thức hoạt động kết nối liên mạng - Đưa trình tự cơng việc để thiết lập thực giao thức cho kết nối thiết bị mạng Mơ hình OSI cịn có số thuận lợi sau : + Chia nhỏ hoạt động phức tạp mạng thành phần công việc đơn giản + Cho phép nhà thiết kế có khả phát triển modun chức Cung cấp khả định nghĩa chuẩn giao tiếp có tính tương thích cao ―plug and play‖ tích hợp nhiều nhà cung cấp sản phẩm b) Cấu trúc mơ hình OSI Mơ hình OSI gồm lớp (level), lớp thực chức riêng cho hoạt động kết nối mạng Mơ hình lớp OSI Phạm Văn Ninh - CT1201 Đồ án tốt nghiệp Đại học Dân Lập Hải Phòng Tầng 1: Tầng vật lí (Physical Layer) Tầng vật lí định nghĩa tất đặc tả điện vật lý cho thiết bị Trong bao gồm bố trí chân cắm (pin), hiệu điện thế, đặc tả cáp nối (cable) Các thiết bị tầng vật lí bao gồm Hub, lặp (repeater), thiết bị tiếp hợp mạng (network adapter) thiết bị tiếp hợp kênh máy chủ (Host Bus Adapter) (HBA dùng mạng lưu trữ (Storage Area Network)) Chức dịch vụ thực tầng vật lý bao gồm: + Thiết lập ngắt mạch kết nối điện (electrical connection) với môi trường truyền dẫn phương tiện truyền thông (transmission medium) + Tham gia vào quy trình mà tài ngun truyền thơng chia sẻ hiệu nhiều người dùng Chẳng hạn giải tranh chấp tài nguyên (contention) điều khiển lưu lượng + Điều biến (modulation), biến đổi biểu diễn liệu số (digital data) thiết bị người dùng tín hiệu tương ứng truyền qua kênh truyền thông (communication channel) Tầng 2: Tầng liên kết liệu (Data Link Layer) Tầng liên kết liệu cung cấp phương tiện có tính chức quy trình để truyền liệu thực thể mạng, phát sửa chữa lỗi tầng vật lý có Cách đánh địa mang tính vật lý, nghĩa địa (địa MAC) mã hóa cứng vào thẻ mạng (network card) chúng sản xuất Hệ thống xác định địa khơng có đẳng cấp (flat scheme) Tầng 3: Tầng mạng (Network Layer) Tầng mạng cung cấp chức qui trình cho việc truyền chuỗi liệu có độ dài đa dạng, từ nguồn tới đích, thơng qua nhiều mạng, trì chất lượng dịch vụ (quality of service) mà tầng giao vận yêu cầu Tầng mạng thực chức định tuyến, Các thiết bị định tuyến (router) hoạt động tầng — gửi liệu khắp mạng mở rộng, làm cho liên mạng trở nên khả thi (cịn có thiết bị chuyển mạch (switch) tầng 3, gọi chuyển mạch IP) Đây hệ thống định vị địa lôgic (logical addressing scheme) – giá trị chọn kỹ sư mạng Hệ thống có cấu trúc phả hệ Ví dụ điển hình giao thức tầng giao thức IP Phạm Văn Ninh - CT1201 Đồ án tốt nghiệp Đại học Dân Lập Hải Phòng Tầng 4: Tầng giao vận (Transport Layer) Tầng giao vận cung cấp dịch vụ chuyên dụng chuyển liệu người dùng đầu cuối, nhờ tầng quan tâm đến việc cung cấp dịch vụ truyền liệu đáng tin cậy hiệu Tầng giao vận kiểm soát độ tin cậy kết nối cho trước Một số giao thức có định hướng trạng thái kết nối (state and connection orientated) Có nghĩa tầng giao vận theo dõi gói tin truyền lại gói bị thất bại Một ví dụ điển hình giao thức tầng TCP Tầng nơi thơng điệp chuyển sang thành gói tin TCP hoặcUDP Ở tầng địa đánh address ports, thông qua address ports để phân biệt ứng dụng trao đổi Tầng 5: Tầng phiên (Session layer) Tầng phiên kiểm soát (phiên) hội thoại máy tính Tầng thiết lập, quản lý kết thúc kết nối trình ứng dụng địa phương trình ứng dụng xa Tầng cịn hỗ trợ hoạt động song công (duplex) bán song công (half-duplex) đơn cơng (Single) thiết lập qui trình đánh dấu điểm hoàn thành (checkpointing) - giúp việc phục hồi truyền thơng nhanh có lỗi xảy ra, điểm hồn thành đánh dấu - trì hỗn (adjournment), kết thúc (termination) khởi động lại (restart) Mơ hình OSI uỷ nhiệm cho tầng trách nhiệm "ngắt mạch nhẹ nhàng" (graceful close) phiên giao dịch (một tính chất giao thức kiểm sốt giao vận TCP) trách nhiệm kiểm tra phục hồi phiên, phần thường không dùng đến giao thức TCP/IP Tầng 6: Tầng trình diễn (Presentation layer) Lớp trình diễn hoạt động tầng liệu mạng lớp máy tính truyền liệu làm nhiệm vụ dịch liệu gửi từ tầng Application sang dạng Fomat chung Và máy tính nhận, lớp lại chuyển từ Fomat chung sang định dạng tầng Application Lớp thể thực chức sau: - Dịch mã kí tự từ ASCII sang EBCDIC - Chuyển đổi liệu, ví dụ từ số interger sang số dấu phảy động - Nén liệu để giảm lượng liệu truyền mạng - Mã hoá giải mã liệu để đảm bảo bảo mật mạng Phạm Văn Ninh - CT1201 Đồ án tốt nghiệp Đại học Dân Lập Hải Phòng Tầng 7: Tầng ứng dụng (Application layer) Tầng ứng dụng tầng gần với người sử dụng Nó cung cấp phương tiện cho người dùng truy nhập thông tin liệu mạng thông qua chương trình ứng dụng Tầng giao diện để người dùng tương tác với chương trình ứng dụng, qua với mạng Một số ví dụ ứng dụng tầng bao gồm Telnet, Giao thức truyền tập tin FTP Giao thức truyền thư điện tử SMTP, HTTP, X.400 Mail remote 1.1.2 Giao thức TCP/IP IP họ giao thức để cung cấp phương tiện truyền thơng liên mạng cấu trúc theo kiểu phân cấp Khác với mơ hình OSI tầng liên mạng sử dụng giao thức kết nối mạng "không liên kết" (connectionless) IP, tạo thành hạt nhân hoạt động Internet Cùng với thuật toán định tuyến RIP, OSPF, BGP, tầng liên mạng IP cho phép kết nối cách mềm dẻo linh hoạt loại mạng "vật lý" khác như: Ethernet, Token Ring , X.25 Giao thức trao đổi liệu "có liên kết" (connection - oriented) TCP sử dụng tầng vận chuyển để đảm bảo tính xác tin cậy việc trao đổi liệu dựa kiến trúc kết nối "không liên kết" tầng liên mạng IP Các giao thức hỗ trợ ứng dụng phổ biến truy nhập từ xa (telnet), chuyển tệp (FTP), dịch vụ World Wide Web (HTTP), thư điện tử (SMTP), dịch vụ tên miền (DNS) ngày cài đặt phổ biến phận cấu thành hệ điều hành thông dụng UNIX (và hệ điều hành chuyên dụng họ nhà cung cấp thiết bị tính tốn AIX IBM, SINIX Siemens, Digital UNIX DEC), Windows9x/NT, NovellNetware, Phạm Văn Ninh - CT1201 Đồ án tốt nghiệp Đại học Dân Lập Hải Phòng 1.1.3 So sánh giao thức TCP UDP UDP (User Datagram Protocol) giao thức cốt lõi giao thức TCP/IP Dùng UDP, chương trình mạng máy tính gởi liệu ngắn gọi datagram tới máy khác UDP không cung cấp tin cậy thứ tự truyền nhận mà TCP làm Các gói liệu đến không thứ tự bị mà thơng báo Tuy nhiên UDP nhanh hiệu mục tiêu kích thước nhỏ yêu cầu khắt khe thời gian Do chất khơng trạng thái nên hữu dụng việc trả lời truy vấn nhỏ với số lượng lớn người yêu cầu TCP (Transmission Control Protocol - "Giao thức điều khiển truyền vận") giao thức cốt lõi giao thức TCP/IP Sử dụng TCP, ứng dụng máy chủ nối mạng tạo "kết nối" với nhau, mà qua chúng trao đổi liệu gói tin Giao thức đảm bảo chuyển giao liệu tới nơi nhận cách đáng tin cậy thứ tự TCP phân biệt liệu nhiều ứng dụng (chẳng hạn, dịch vụ Web dịch vụ thư điện tử) đồng thời chạy máy chủ Khác (cơ bản): Các header TCP UDP khác kích thước (20 byte) nguyên nhân chủ yếu TCP phải hộ trợ nhiều chức hữu ích hơn(như khả khơi phục lỗi) UDP dùng byte cho phần header yêu cầu xử lý từ host TCP : - Dùng cho mạng WAN - Khơng cho phép gói tin - Đảm bảo việc truyền liệu - Tốc độ truyền thấp UDP UDP: - Dùng cho mạng LAN - Cho phép liệu - Không đảm bảo - Tốc độ truyền cao, VolP truyền tốt qua UDP Phạm Văn Ninh - CT1201 Đồ án tốt nghiệp Đại học Dân Lập Hải Phòng 1.1.4 Địa IP Địa IP (IP viết tắt từ tiếng Anh: Internet Protocol - giao thức Internet) địa đơn mà thiết bị điện tử sử dụng để nhận diện liên lạc với mạng máy tính cách sử dụng giao thức Internet Một cách đơn giản hơn: IP địa máy tính tham gia vào mạng nhằm giúp cho máy tính chuyển thơng tin cho cách xác, tránh thất lạc Có thể coi địa IP mạng máy tính giống địa nhà bạn để nhân viên bưu điện đưa thư cho bạn khơng phải người khác Bất kỳ thiết bị mạng nào, bao gồm định tuyến, chuyển mạch mạng, máy vi tính, máy chủ hạ tầng (như NTP, DNS, DHCP, SNMP, v.v.), máy in, máy fax qua Internet, vài loại điện thoại tham gia vào mạng có địa riêng địa đơn phạm vi mạng cụ thể Vài địa IP có giá trị đơn phạm vi Internet toàn cầu, số khác cần phải đơn phạm vi công ty Địa IP Tổ chức cấp phát số hiệu Internet (IANA) quản lý tạo IANA nói chung phân chia "siêu khối" đến Cơ quan Internet khu vực, từ lại phân chia thành khối nhỏ đến nhà cung cấp dịch vụ Internet công ty Phạm Văn Ninh - CT1201 GetLifetimeService Trả thời gian tồn dịch vụ (Kế thừa từ MarshalByRefObject.) Trả đối tượng mà đại diện cho dịch vụ GetService cung cấp thành phần, Container (Kế thừa từ Component.) Install Phương thức sử dụng công cụ cài đặt (Ghi đè Installer.Install(IDictionary)) Xác định trình cài đặt rõ cài đặt đối IsEquivalentInstaller tượng tương cài đặt (Kế thừa từ ComponentInstaller.) MemberwiseClone() Tạo đối tượng (Kế thừa từ Object.) MemberwiseClone Tạo đối tượng MarshalByRef (Boolean) Object (Kế thừa từ MarshalByRefObject.) OnAfterInstall Raises the AfterInstall event (Kế thừ từ Installer.) OnAfterRollback Raises the AfterRollback event (Kế thừ từ Installer.) OnAfterUninstall Raises the AfterUninstall event (Kế thừ từ Installer.) OnBeforeInstall Raises the BeforeInstall event (Kế thừ từ Installer.) OnBeforeRollback Raises the eforeRollback event (Kế thừ từ Installer.) OnBeforeUninstall Raises the BeforeUninstall event (Kế thừ từ Installer.) OnCommitted Raises the Committed event (Kế thừ từ Installer.) OnCommitting Raises the Committing event (Kế thừ từ Installer.) Phạm Văn Ninh - CT1201 23 Đồ án tốt nghiệp Đại học Dân Lập Hải Phịng * ServiceInstaller - Phương thức Tên Mơ tả Tạo đối tượng có chứa tất thơng tin có liên quan, cần thiết để tạo proxy sử dụng để CreateObjRef giao tiếp với đối tượng từ xa (Kế thừa từ MarshalByRefObject.) Dispose() Giải phóng tất tài nguyên Component (Kế thừa từ Component.) sử dụng Dispose(Boolean) Giải phóng nguồn tài nguyên (khác với nhớ) sử dụng ServiceBase (Overrides Component.Dispose(Boolean).) Equals(Object) Xác định xem Object định tương đương với Object (Kế thừa từ Object.) GetHashCode Server hàm băm cho loại hình cụ thể (Kế thừa từ Object.) GetLifetimeService Trả thời gian tồn dịch từ MarshalByRefObject.) vụ (Kế thừa Trả đối tượng mà đại diện cho dịch vụ GetService cung cấp thành phần, Container (Kế thừa từ Component.) Phương thức sử dụng công cụ cài đặt Install (Ghi đè Installer.Install(IDictionary)) Xác định trình cài đặt rõ cài đặt đối IsEquivalentInstaller tượng tương cài đặt (Kế thừa từ ComponentInstaller.) Tạo đối tượng (Kế thừa từ MemberwiseClone() Phạm Văn Ninh - CT1201 Đồ án tốt nghiệp Object.) 24 Đại học Dân Lập Hải Phòng MemberwiseClone (Boolean) Tạo đối tượng MarshalByRefObject (Kế thừa từ MarshalByRefObject.) OnAfterInstall Raises the AfterInstall event OnAfterRollback Raises the AfterRollback event OnAfterUninstall Raises the AfterUninstall event OnBeforeInstall Raises the BeforeInstall event OnBeforeRollback Raises the BeforeRollback event OnBeforeUninstall Raises the BeforeUninstall event OnCommitted Raises the Committed event OnCommitting Raises the Committing event Phạm Văn Ninh - CT1201 25 Đồ án tốt nghiệp Đại học Dân Lập Hải Phịng CHƯƠNG - XÂY DỰNG CHƯƠNG TRÌNH THỰC NGHIỆM 3.1 - Mơ tả chương trình thực nghiệm - Phần Server, chạy dạng Network Service với tính năng: + Chạy ngầm dạng service với quyền hệ thống + Lắng nghe yêu cầu kết nối từ Client cổng TCP + Nhận lệnh từ Client kết nối chấp thuận thực thi lệnh quyền Administrator + Tạo FTP server dạng service để giúp truyền file cho Client có u cầu + Server khơng cần giao diện người dùng - Phần Client bao gồm chức năng: + Thực kết nối tới Server + Gửi lệnh tới Server nhận trạng thái lệnh từ server + Thực kết nối tới FTP server thực truyền/nhận file + Có giao diện chính: Giao diện gửi lệnh giao diện FTP client 3.2 - Thiết kế chương trình 3.2.1 Server a) Các chức Lắng nghe kết nối * Lưu đồ Bắt đầu Khởi tạo Socket Đăng ký với hệ thống Lắng nghe kết nối S Đ Chạy Server Chấp nhận kết nối Accept() Hủy Socket Nhận(Revc) Truyền(Send) Kết thúc Đóng kết nối Phạm Văn Ninh - CT1201 26 Đồ án tốt nghiệp Đại học Dân Lập Hải Phòng *Giải thuật - Tạo socket , đăng kí với hệ thống ( hàm bind) - Đặt socket chế độ chờ , lắng nghe kết nối - Khi có request từ client , chấp nhận kết nối , tạo process để xử lý - Quay lại trạng thái chờ lắng nghe kết nối - Công việc process gồm : + Nhận thông tin kết nối client + Giao tiếp với client theo giao thức lớp ứng dụng thiết kế + Đóng kết nối kết thúc process Chạy chương trình Client gửi yêu cầu *Giải thuật - Input: Tên tiến trình - Output: Thực thi tiến trình Bước 1: Tạo đối tượng ProcessStartInfo Bước 2: Gán tên tiến trình Bước 3: Tạo đối tượng Process Bước 4: Gán đối tượng ProcessStartInfo cho thuộc tính StartInfo đối tượng Process Bước 5: Start đối tượng Process Truyền file - Input: Địa đầy dủ file cần truyền - Output: File truyền Bước 1: Truyền thông tin file cần gửi ( Đường dẫn đầy đủ) Bước 2: Mở file cần truyền Bước 3: Lặp liên tục đến truyền xong có yêu cần ngừng gửi: + Đọc từ file nguồn mảng byte vào buffer + Ghi mảng byte vào socket stream Bước 4: Kết thúc q trình ( Đóng file ) Phạm Văn Ninh - CT1201 27 Đồ án tốt nghiệp Đại học Dân Lập Hải Phòng Nhận file - Input: Đường dẫn lưu file - Output: File nhận Bước 1: Nhận thông tin file cần nhận từ bên truyền Bước 2: Tạo mở/tạo file để lưu file chuẩn bị nhận Bước 3: Dùng buffer để đọc ghi liệu Bước 4: Lặp liên tục đến nhận xong có yêu cần ngừng nhận: + Đọc từ socket stream mảng byte vào buffer + Ghi mảng byte đọc đc vô file lưu Bước 5: Kết thúc q trình ( Đóng file ) b) Các lớp đối tượng sử dụng Lớp Socket: sử dụng để tạo kết nối chương trình Client and chương trình Server * Các phương thức sử dụng Tên Mô tả Accept() Tạo Socket client kết nối đến Bind() Gán tên cho Socket Xác định số lượng kết nối chờ xếp hàng cho Listen() server socket Receive(Byte[]) Send(Byte[], Int32, SocketFlags) Chứa số byte thực nhận Gửi liệu Lớp ProcessStartInfo: Sử dụng để định chi tiết cho ứng dụng cần chạy * Các thuộc tính sử dụng Tên Mơ tả FileName Tên ứng dụng cần chạy UseShellExecute Gọi Shell hệ điều hành Verb Hành động chạy ứng dụng Phạm Văn Ninh - CT1201 28 Đồ án tốt nghiệp Đại học Dân Lập Hải Phịng Lớp Process: Sử dụng để để mơ tả tiến trình mới, gán đối tượng ProcessStartInfo cho thuộc tính StartInfo đối tượng Process, khởi chạy ứng dụng cách gọi Process.Start() Lớp NetworkStream: Cung cấp phương thức gửi nhận liệu dạng mảng byte * Các thuộc tính sử dụng Tên Mơ tả Read Đọc liệu từ NetworkStream Write Ghi liệu tới NetworkStream Flush Cho xoá tất buffer writer hành Lớp FileStream: Được sử dụng đọc viết liệu vào từ file * Các thuộc tính sử dụng Tên Mơ tả Read Đọc khối byte từ stream ghi liệu vào buffer Write Ghi khối byte tới stream cách sử dụng buffer Flush Cho xoá tất buffer writer hành Lớp ServiceController: D * Các phương thức sử dụng Tên Mô tả Refresh Làm lại trạng thái dịch vụ Start() Khởi động dịch vụ Stop Dừng dịch vụ Startus Lấy thông tin trạng thái dịch vụ Phạm Văn Ninh - CT1201 29 Đồ án tốt nghiệp Đại học Dân Lập Hải Phòng 3.2.2 Client a) Các chức Chức kết nối gửi lệnh tới Server * Giải thuật - Xác định địa server - Tạo socket - Kết nối đến server - Gửi / nhận liệu theo giao thức lớp ứng dụng thiết kế - Đóng kết nối * Giao diện chương trình (1): Textbox nhập địa IP server (2): Textbox nhập số cổng (3): Textbox hiển thị thông tin thực lệnh (4): Textbox nhập lệnh (5): Button kết nối (6): Button ngắt kết nối (7): Button gửi lệnh Phạm Văn Ninh - CT1201 30 Đồ án tốt nghiệp Đại học Dân Lập Hải Phòng * Quá trình hoạt động - Khi người dùng nhấn nút kết nối (5) để kết nối đến Server + Nếu địa IP, số cổng khơng chương trình hiển thị thông báo lỗi + Nếu kết nối thành cơng chức gửi lệnh hiển thị - Khi người dùng nhập lệnh ô nhập lệnh (4) + Khi người dùng gửi lệnh "ftp" chương trình gửi yêu cầu khởi động dịch vụ FTP bên server chờ kết trả server - Nếu Server thông báo lại dịch vụ khởi động Client gọi chương trình FTP Client - Nếu Server thông báo lại dịch vụ khơng khởi động FTP Client khơng hiển thi + Khi người dùng gửi khác với lệnh "ftp" chương trình yêu cầu chạy chương trình bên Server - Khi người dùng nhấn nút ngắt kết nối (6) chương trình gửi lệnh "quit" yêu cầu ngắt kết nối đến Server Chức Download , Upload * Giao diện chương trình Phạm Văn Ninh - CT1201 31 Đồ án tốt nghiệp Đại học Dân Lập Hải Phòng (1): Textbox hiển thị đường dẫn tệp tin (2): Textbox hiển thị đường dẫn tệp tin bên FTP (3): Treeview hiển thị thư mục máy Cliert (4): Listview hiển thị danh sách file bên Client (5): Listview hiển thị danh sách file bên FTP Server (6): Button quay lại thư mục trước (7): Button download (8): Button upload (9): Button làm danh sách * Quá trình hoạt động - Chương trình gọi có lệnh "ftp" thành cơng - Khi chương trình bắt đầu khởi động danh sách file bên Server gửi hiển thị ô số (5) - Khi người dùng nhấn nút Download chương trình kiểm tra tồn file ô (5) đường dẫn (1) + Nếu đủ điều kiện u cầu tải xuống gửi đến server Sau Server nhận yêu cầu thực thì file tải lưu theo đường dẫn ô (1) + Nếu đường dẫn không chưa chọn file cần tải chương trình hiển thị thông báo cho người dùng yêu cầu kiểm tra lại - Khi người dùng nhấn nút Upload chương trình kiểm tra tồn file ô (4) đường dẫn ô (2) + Nếu đủ điều kiện yêu cầu tải lên gửi đến server Sau Server nhận yêu cầu thực thì file tải lên server theo đường dẫn ô (2) + Nếu đường dẫn không chưa chọn file cần tải chương trình hiển thị thông báo cho người dùng yêu cầu kiểm tra lại Phạm Văn Ninh - CT1201 32 Đồ án tốt nghiệp Đại học Dân Lập Hải Phòng 3.3 Kết đạt * Một số hình ảnh trình chạy chương trình Giao diện chưa kết nối tới server Phạm Văn Ninh - CT1201 33 Đồ án tốt nghiệp Đại học Dân Lập Hải Phòng Giao diện nhấn nút kết nối tới server Phạm Văn Ninh - CT1201 34 Đồ án tốt nghiệp Đại học Dân Lập Hải Phòng Giao diện thực lệnh "ftp" Giao diện nhấn nút Tải xuống, file lưu theo đường dẫn: E:\Demo Giao diện nhấn nút Tải lên File "Ghi chu.txt" tải lên thư mục \Demo server Phạm Văn Ninh - CT1201 35 Đồ án tốt nghiệp Đại học Dân Lập Hải Phòng KẾT LUẬN Với đề tài ―Tìm hiểu kỹ thuật lập trình Network service‖ Em mang kiến thức học nhà trường đem vận dụng vào thực tế để xây dựng tốn Qua em có điều kiện trau dồi, nâng cao kiến thức học Với yêu cầu tốn đặt đồ án em bước đầu đạt số kết sau: - Đã triển khai mơ hình Client-Server mức đơn giản - Tìm hiểu kiểu liệu, số lớp, đối tượng lập trình Socket - Tìm hiểu số lớp, đối tượng lập trình service cho windows - Cài đặt ứng dụng dạng dịch vụ Tuy nhiên, chương trình cịn số hạn chế như: - Chương trình chạy dễ phát trình lỗi, ngoại lệ khơng kiểm sốt hết -Mới xây dựng cho client đơn giản, chưa xây dựng chương trình client – server có tính chuyên nghiệp cao - Dịch vụ đơn gian, khó theo dõi trình hoạt động Hướng phát triển tương lai: - Xây dựng chương trình client – server hồn thiện - Xây dựng chương trình có khả kiểm soát lỗi tốt, kiểm soát ngoại lệ Do kiến thức hạn chế nên đồ án tốt nghiệp em chắn khơng tránh khỏi thiếu sót Em mong có ý kiến đánh giá, đóng góp thầy bạn để nội dung đồ án thêm hoàn thiện Phạm Văn Ninh - CT1201 36 Đồ án tốt nghiệp Đại học Dân Lập Hải Phòng TÀI LIỆU THAM KHẢO [1] Đề tài " Xây dựng chương trình quản lý máy tính mạng LAN", Tồn Thất Tư [2] Đồ án " Lập trình mạng nâng cao", Quốc Nhựt – Trọng Việt – Ngọc Trí, Cao đẳng Cơng nghệ thơng tin Hữu nghị Việt – Hàn [3] http://www.tenouk.com/ModuleDD.html [4] http://www.codeproject.com [5] http://www google.com Phạm Văn Ninh - CT1201 37 ... cầu em vào tìm hiểu lập trình socket với đề tài: "Tìm hiểu kỹ thuật lập trình Network Service" để kết nối mạng máy tính điều khiển chương trình đơn giản Nhằm bước đầu hiểu cách thức lập trình điều... lập trình điều khiển từ xa Đề án trình bày gồm chương: Chương 1: Kỹ thuật lập trình mạng Chương 2: Kỹ thuật lập trình window service Chương 3: Xây dựng chương trình thực nghiệm Đồ án thực khoảng... mức đơn giản - Tìm hiểu kiểu liệu, số lớp, đối tượng lập trình Socket - Tìm hiểu số lớp, đối tượng lập trình service cho windows - Cài đặt ứng dụng dạng dịch vụ Tuy nhiên, chương trình cịn số hạn