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

Truyền file qua mạng lan

28 1.2K 4

Đ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

Cấu trúc

  • LỜI NÓI ĐẦU

  • TỔNG QUAN VỀ ĐỀ TÀI

  • CHƯƠNG 1 : TỔNG QUAN VỀ LẬP TRÌNH MẠNG

    • 1.1 Giao thức TCP/IP.

    • 1.2 Socket

    • 1.3 Port

    • 1.4 Mô hình Client – Server

  • CHƯƠNG 2 : CƠ SỞ LÝ THUYẾT

    • 2.1. Giới thiệu

    • 2.2. Các thuộc tính yêu cầu

    • 2.3. Kỹ thuật truyền file

      • 2.4. Phương thức SERIALIZATION

      • 2.5. Phương thức DESERIALIZATION

      • 2.6. Phương thức gửi file

      • 2.7. Phương thức nhận file

    • 2.8. Kỹ thuật chia nhỏ và nối file

  • CHƯƠNG 3 : THIẾT KẾ VÀ XÂY DỰNG CHƯƠNG TRÌNH

    • 3.1. Mô tả chức năng

    • 3.2 Phân tích chức năng

  • CHƯƠNG 4 : TRIỂN KHAI VÀ ĐÁNH GIÁ KẾT QUẢ

    • 4.1. Microsoft Visual Studio 2008

      • 4.1.1. Giới thiệu Microsoft Visual Studio 2008

      • 4.1.2. Các chức năng cơ bản Microsoft Visual Studio 2008

    • 4.2. Giới thiệu .NET framework & các thành phần chính

      • 4.2.1. Giới thiệu .NET framework

      • 4.2.2. Các thành phần chính .Net framework

    • 4.3. Kết quả các chức năng của chương trình

      • 4.3.1. Giao diện khi khởi động của chương trình

      • 4.3.2. Giao diện khi khởi động của server

      • 4.3.3. Chọn File muốn truyền

      • 4.3.4. Giao diện khi Client chia File và gởi các packet đã chia đến Server

      • 4.3.5. Thông báo gởi các packet đến Server thành công và bắt đầu nối Packet

      • 4.3.6. Gởi toàn bộ nội dung của Folder đến Server

  • CHƯƠNG 5 : KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ĐỀ TÀI

    • 5.1. Kết luận

    • 5.2. Kết quả đạt được

      • 5.2.1. Những vấn đề còn tồn tại

      • 5.2.2. Hướng phát triển

  • TÀI LIỆU THAM KHẢO

Nội dung

Truyền file qua mạng lan

Đề Tài : Truyền File Qua Mạng Lan GVHD:Đặng Duy Thắng NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… Trang Đề Tài : Truyền File Qua Mạng Lan GVHD:Đặng Duy Thắng NHẬN XÉT CỦA HỘI ĐỒNG BẢO VỆ ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… Trang Đề Tài : Truyền File Qua Mạng Lan GVHD:Đặng Duy Thắng MỤC LỤC LỜI NÓI ĐẦU .6 TỔNG QUAN VỀ ĐỀ TÀI CHƯƠNG : TỔNG QUAN VỀ LẬP TRÌNH MẠNG 1.1 Giao thức TCP/IP 1.2 Socket 1.3 Port 1.4 Mô hình Client – Server CHƯƠNG : CƠ SỞ LÝ THUYẾT 11 2.1.Giới thiệu 11 2.2.Các thuộc tính yêu cầu 11 2.3.Kỹ thuật truyền file 11 2.4.Phương thức SERIALIZATION 11 2.5.Phương thức DESERIALIZATION 12 2.6.Phương thức gửi file 12 2.7.Phương thức nhận file 12 2.8.Kỹ thuật chia nhỏ nối file 12 CHƯƠNG : THIẾT KẾ VÀ XÂY DỰNG CHƯƠNG TRÌNH 13 3.1 Mô tả chức 13 3.2 Phân tích chức 14 CHƯƠNG : TRIỂN KHAI VÀ ĐÁNH GIÁ KẾT QUẢ 17 4.1.Microsoft Visual Studio 2008 17 4.1.1.Giới thiệu Microsoft Visual Studio 2008 17 4.1.2.Các chức Microsoft Visual Studio 2008 17 4.2.Giới thiệu NET framework & các thành phần chính 19 4.2.1.Giới thiệu NET framework 19 4.2.2.Các thành phần Net framework 19 4.3.Kết chức chương trình .23 4.3.1.Giao diện khởi động chương trình 23 4.3.2.Giao diện khởi động server 24 4.3.3.Chọn File muốn truyền .24 4.3.4.Giao diện Client chia File gởi packet chia đến Server 25 4.3.5.Thông báo gởi packet đến Server thành công bắt đầu nối Packet 25 4.3.6 Gởi toàn nội dung Folder đến Server 26 Trang Đề Tài : Truyền File Qua Mạng Lan GVHD:Đặng Duy Thắng CHƯƠNG : KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ĐỀ TÀI 27 5.1.Kết luận 27 5.2.Kết đạt 27 5.2.1.Những vấn đề tồn 27 5.2.2.Hướng phát triển .27 TÀI LIỆU THAM KHẢO 28 Trang Đề Tài : Truyền File Qua Mạng Lan GVHD:Đặng Duy Thắng DANH MỤC HÌNH VẼ Hình : Mô Hình TCP/IP Hình : Cơ chế gọi hàm lập trình Socket 10 Hình : Serialization Process .12 Hình : Quy trình hoạt động Server .14 Hình : Quy trình hoạt động client 16 Hình : Các thành phần Net Framework .20 Hình : Giao diện khởi động chương trình 23 Hình : Giao diện khởi động server .24 Hình : Chọn file muốn truyền 24 Hình 10 : Giao diện Client chia file gửi packet chia đến Server 25 Hình 11 : Thông báo gửi packet đến Server thành công bắt đầu nối Packet .25 Hình 12 : Gửi toàn nội dung Folder đến Server 26 Hình 13 : Kết thúc trình gưi nội dung Folder đến Server 26 Trang Đề Tài : Truyền File Qua Mạng Lan GVHD:Đặng Duy Thắng LỜI NÓI ĐẦU Hiện nay, vấn đề toàn cầu hoá thông tin tốc độ phát triển khoa học công nghệ diễn cách nhanh chóng Một kỷ nguyên mở ra–kỷ nguyên xã hội hoá thông tin Công nghệ thông tin truyền thông phát triển đưa giới bước sang thời đại – thời đại công nghệ thông tin Việc nắm bắt ứng dụng công nghệ thông tin lĩnh vực khoa học, kinh tế, xã hội đem lại cho doanh nghiệp tổ chức thành tựu lợi ích to lớn Máy tính trở thành công cụ đắc lực thiếu người Các tổ chức, công ty hay quan cần phải xây dựng hệ thống mạng máy tính cho riêng để trao đổi liệu phận Dữ liệu truyền mạng phải bảo đảm : Dữ liệu chuyển tới đích nhanh chóng đắn Hầu hết liệu đưuọc truyền qua mạng truyền dạng file Nhằm tìm hiểu thấu đáo sâu số phương pháp truyền file qua mang, nhóm chúng em chọn đề tài : “Xây dựng ứng dụng truyền file qua mạng LAN “ sử dụng ngôn ngữ C# Với lập trình socket TCP bắt buộc máy phải nối mạng với Ta thấy máy muốn trao đổi liệu mạng, chúng tạo phía socket trao đổi liệu cách đọc/ghi từ socket TCP Khi chương trình tạo socket, định danh số gán cho socket Việc gán số hiệu cổng cho socket thực chương trình hệ điều hành Trong gói tin mà socket gửi chưa hai thông tin để xác định đích đến gói tin : • Một địa mạng để xác định hệ thống nhận gói tin • Một số định danh cổng để nói xác định cho hệ thống đích biết socket TCP nhận liệu Báo cáo sau trình bày đề tài: “Xây dựng ứng dụng truyền file qua mạng LAN” Trong khuôn khổ báo cáo, chúng em thực tìm hiểu thuật toán cắt xén file ghép nối file xây dựng ứng dụng Trang Đề Tài : Truyền File Qua Mạng Lan GVHD:Đặng Duy Thắng TỔNG QUAN VỀ ĐỀ TÀI Bối cảnh lý thực đề tài Với phát triển nhanh chóng Internet nay, truyền file qua mạng trở thành nhu cầu thiết Sự cần thiết hiểu Hiện có nhiều chương trình hỗ trợ việc truyền file mạng, chẳng hạn FTP… Tuy nhiên, không cần thiết phải sử dụng chương trình có sẵn mà ta xâu dựng chương trình tương tự Chương trình DATruyenFile xây dựng với mục đích nhằm để hiểu rõ chế truyền file áp dụng kiến thức học vào việc lập trình ứng dụng mạng Mục tiêu đề tài Đề tài nhằm tìm hiểu chế truyền file qua mạng LAN, thông qua tìm hiểu giải thuật, thuật toán chế cắt ghép, chia nhỏ nối file Qua xây dựng chương trình ứng dụng lập trình Socket TCP cho phép người dùng truyền file qua mạng từ máy Client đến Server Phương pháp triển khai đề tài  Lập trình Socket Client – Server  Tìm hiểu chế truyền file, thuật toán cắt nối file  Thiết kế lập trình ứng dụng, xây dựng ứng dụng truyền file qua mạng LAN mô hình Client – Server Kết cấu đồ án Đồ án gồm phần :      Trang Tổng quan lập trình mạng Cơ sở lý thuyết Thiết kế xây dựng chương trình Triển khai đánh giá kết Kết luận hướng phát triển đề tài Đề Tài : Truyền File Qua Mạng Lan GVHD:Đặng Duy Thắng CHƯƠNG : TỔNG QUAN VỀ LẬP TRÌNH MẠNG 1.1 Giao thức TCP/IP Bộ giao thức TCP/IP, ngắn gọn TCP/IP (tiếng Anh: Internet protocol suite IP suite TCP/IP protocol suite - giao thức liên mạng), giao thức truyền thông cài đặt chồng giao thức mà Internet hầu hết mạng máy tính thương mại chạy Bộ giao thức đặt tên theo hai giao thức TCP (Giao thức Điều khiển Giao vận) IP (Giao thức Liên mạng) Chúng hai giao thức định nghĩa Để cho máy tính trao đổi liệu với TCP/IP dử dụng mô hình truyền thông tầng hay gọi Mô Hình DoD( Mô hình Bộ Quốc Phòng Mỹ) Các tầng mô hình theo thứ tự từ xuống : • Tầng ứng dụng ( Application Layer) • Tầng giao vận ( Transport Layer) • Tầng lien mạng ( Internet Layer) • Tầng giao diện mạng (Network Interface Layer) TCP/IP TCP/IPPROTOCOL PROTOCOLSUITE SUITE APPLICATION APPLICATION LAYER LAYER Telnet Telnet FTP FTP TRANSPORT TRANSPORT LAYER LAYER INTERNET INTERNET LAYER LAYER NETWORK NETWORK INTERFACE INTERFACE LAYER LAYER SMTP SMTP RIP RIP TCP TCP IPIP ARP ARP ETHERNET ETHERNET SNMP SNMP UDP UDP TOKEN TOKEN RING RING Hình : Mô Hình TCP/IP Trang DNS DNS IGMP IGMP FRAME FRAME RELAY RELAY ICMP ICMP ATM ATM Đề Tài : Truyền File Qua Mạng Lan GVHD:Đặng Duy Thắng 1.2 Socket Socket cổng logic mà chương trình sử dụng để kết nối với chương trình khác chạy máy tính khác Internet Chương trình mạng sử dụng nhiều Socket lúc, nhờ nhiều chương trình sử dụng Internet lúc Có loại Socket: • Stream Socket: Dựa giao thức TCP( Tranmission Control Protocol) việc truyền liệu thực trình thiết lập kết nối Giao thức đảm bảo liệu truyền đến nơi nhận cách đáng tin cậy, thứ tự nhờ vào chế quản lý luồng lưu thông mạng chế chống tắc nghẽn • Datagram Socket: Dựa giao thức UDP( User Datagram Protocol) việc truyền liệu không yêu cầu có thiết lập kết nối trình Ngược lại với giao thức TCP liệu truyền theo giao thức UDP không tin cậy, không trình tự lặp lại Tuy nhiên không yêu cầu thiết lập kết nối có chế phức tạp nên tốc độ nhanh…ứng dụng cho ứng dụng truyền liệu nhanh chat, game… 1.3 Port Port xách định trình (process) máy mạng Hay nói cách khác cách mà phân biệt ứng dụng VD: Khi máy bạn chạy nhiều ứng dụng mạng Yahoo,Firefox, game online… Ví dụ chương Yahoo sử dụng ( port 5150 hay 5050) gửi tin nhắn đến cho bạn, lúc tin nhắn đến máy bạn dựa vào port để nhận biết chương trình Yahoo ( port 5150) ko pải chương trình khác Sau thông tin đc xử lý hiễn thị tin nhắn lên Một TCP/IP Socket gồm địa IP kết hợp với port ? Xác định tiến trình (process ) mạng.Hay nói cách khác Luồng thông tin mạng dựa vảo IP để xác định máy máy mạng port xác định tiến trình máy 1.4 Mô hình Client – Server Quy trình hoạt động ứng dụng Server – Client sau: Server có nhiệm vụ lắng nghe, chờ đợi kết nối từ Client địa IP với PORT quy định sẵn Khi client gởi liệu tới Server phải giải công việc nhận liệu -> xử lý -> trả kết lại cho Client Client ứng dụng phục vụ, gởi truy vấn chờ đợi kết từ Server Trang Đề Tài : Truyền File Qua Mạng Lan GVHD:Đặng Duy Thắng CƠ CHẾ GỌI HÀM TRONG LẬP TRÌNH SOCKET CLIENT CLIENT SERVER SERVER SOCKET() SOCKET() SOCKET() SOCKET() BIND() BIND() CONNECT() CONNECT() LISTEN() LISTEN() ACCEPT() ACCEPT() WRITE() WRITE() READ() READ() WRITE() WRITE() READ() READ() CLOSE() CLOSE() CLOSE() CLOSE() Hình : Cơ chế gọi hàm lập trình Socket Trang 10 Đề Tài : Truyền File Qua Mạng Lan GVHD:Đặng Duy Thắng 3.2 Phân tích chức Quy trình hoạt động Chương trình “ Truyền File Qua Mạng LAN” SERVER SERVER Bắt Bắtđầu đầu Tao TaoTCPListerner TCPListernervàvàlắng lắng nghe từ Client nghe từ Client Chấp Chấpnhận nhậnkết kết nối từ client nối từ client Đúng Đợi ĐợiClient Clientgởi gởiFile File Nhận NhậnFile Filehoặc hoặcThư Thưmục mục Nối NốiFile FilevàvàThư Thưmục mụcvừa vừa nhận nhận Đúng Tiếp Tiếptục? tục? Sai Kết Kếtthúc thúc Hình : Quy trình hoạt động Server Trang 14 Sai Báo Báolỗilỗi Kết Kếtthúc thúc Đề Tài : Truyền File Qua Mạng Lan GVHD:Đặng Duy Thắng CLIENT CLIENT Bắt Bắtđầu đầu Tạo TạoTCPClient TCPClientkết kếtvối vối đến đếnServer Server Kết Kếtnối nối thành công thành công Sai Báo Báolỗilỗi Đúng Chọn ChọnFile Filehoặc hoặcthư thưmục mục cần cầngởi gởiđến đếnServer Server Chia Chianhỏ nhỏFile, File,thư thưmục mụctheo theo dung dunglượng lượngcủa củaFile Filehoặc hoặcthư thư mục mụcmuốn muốngởi gởi Gởi Gởipacket packetđãđãchia chiatớitới Server Server Đúng Tiếp Tiếptục? tục? Sai Kết Kếtthúc thúc Trang 15 Kết Kếtthúc thúc Đề Tài : Truyền File Qua Mạng Lan GVHD:Đặng Duy Thắng Hình : Quy trình hoạt động client Trang 16 Đề Tài : Truyền File Qua Mạng Lan GVHD:Đặng Duy Thắng CHƯƠNG : TRIỂN KHAI VÀ ĐÁNH GIÁ KẾT QUẢ 4.1 Microsoft Visual Studio 2008 4.1.1 Giới thiệu Microsoft Visual Studio 2008 Microsoft Visual Studio 2008 môi trường phát triển tích hợp (Integrated Development Environment (IDE) phát triển từ Microsoft Đây loại phần mềm máy tính có công dụng giúp đỡ lập trình viên việc phát triển phần mềm Các môi trường phát triển hợp thường bao gồm: Một trình soạn thảo mã (source code editor): dùng để viết mã.Trình biên dịch (compiler) và/hoặc trình thông dịch (interpreter).Công cụ xây dựng tự động: sử dụng biên dịch (hoặc thông dịch) mã nguồn, thực liên kết (linking), chạy chương trình cách tự động Trình gỡ lỗi (debugger): hỗ trợ dò tìm lỗi.Ngoài ra, bao gồm hệ thống quản lí phiên công cụ nhằm đơn giản hóa công việc xây dựng giao diện người dùng đồ họa (GUI) Nhiều môi trường phát triển hợp đại tích hợp trình duyệt lớp (class browser), trình quản lí đối tượng (object inspector), lược đồ phân cấp lớp (class hierarchy diagram), để sử dụng việc phát triển phần mềm theo hướng đối tượng Như vậy, Visual Studio 2008 dùng để phát triển console (thiết bị đầu cuối – bàn giao tiếp người máy) GUI (giao diện người dùng đồ họa) với trình ứng dụng Windows Forms, web sites, ứng dụng, dịch vụ wed (web applications, and web services) Chúng phát triển dựa mã ngôn ngữ gốc (native code ) mã quản lý (managed code) cho tảng được hỗ trợ Microsoft Windows, Windows Mobile, NET Framework, NET Compact Framework Microsoft Silverlight.Visual Studio hỗ trợ nhiều ngôn ngữ lập trình, kể tên sau: C/C++ ( Visual C++), VB.NET (Visual Basic NET), va C# (Visual C#)… hỗ trợ ngôn ngữ khác F#, Python, Ruby; hỗ trợ XML/XSLT, HTML/XHTML, JavaScript CSS C# mang đến sức mạnh C++ với dễ dàng ngôn ngữ Visual Basic 4.1.2 Các chức Microsoft Visual Studio 2008 Visual Studio 2008 có chức sau: soạn thảo mã (code editor), trình gỡ lỗi (debugger) thiết kế (Designer) Ở trình bày số công cụ quan trọng chức Designer – xem điểm nhấn Microsft Visual Studio Trang 17 Đề Tài : Truyền File Qua Mạng Lan GVHD:Đặng Duy Thắng  WinForms Designer: công cụ tạo giao diện đồ họa dùng WinForms Điểm đặc biệt giao diện với người dùng sinh động, dễ nắm bắt Nó bao gồm phím bấm, tác vụ, hay box đa dạng (textbox, list box, grid view…) Bạn di chuyển, kéo ra, nhúng thả chúng cách dễ dàng  WPF Designer: WPF Designer có tên mã Cider, hỗ trợ Visual Studio 2008 Nó tạo mã XAML cho giao diện người sử dụng (UI), mã tích hợp với trình ứng dụng Microsoft Expression Design  Web designer: Visual Studio hỗ trợ cộng cụ thiết kế trang web, cho phép công cụ thiết kế trang web kéo, thả, rê, nhúng cách dễ dàng… Công cụ dùng để phát triển trình ứng dụng ASP.NET hỗ trợ HTML, CSS and JavaScript  Class designer: Đây công cụ dùng để thực thi chỉnh sửa lớp Nó dùng mã C# VB.NET …  Data designer: Đây công cụ dùng để chỉnh sửa cách sinh động, linh hoạt lược đồ liệu, bao gồm nhiều loại lược đồ, liên kết  Mapping designer: Đây công cụ tạo mối liên hệ sơ đồ liệu lớp để quản lý liệu cách hiệu Ngoài kể tên số công cụ khác như:  Open Tabs Browser: Nó dùng để liệt kể tab mở chuyển đổi chúng Bạn dùng phím nóng: CTRL + TAB  Properties Editor: Chức dùng để chỉnh sửa chức cửa sổ giao diện đồ họa người dùng (GUI) Visual Studio Nó áp dụng cho lớp, mẫu định dạng hay trang web đối tượng khác  Object Browser: Đây thư viện tên miền lớp trình duyệt cho Microsoft.NET  Solution Explorer: theo ngôn ngữ Visual Studio, solution phận mã file mã nguồn khác dùng để xây dựng trình ứng dụng Công cụ Solution Explorer dùng để để quản lý trình duyệt file solution  Team Explorer: Đây công cụ dùng để hợp máy tính Team Foundation Server, RCS (revision control system - hệ thống điều khiển xét duyệt) vào IDE Trang 18 Đề Tài : Truyền File Qua Mạng Lan GVHD:Đặng Duy Thắng  Data Explorer: Data Explorer dùng để quản lý liệu phiên bân Microsoft SQL Server Nó cho phép tạo lập chỉnh sửa bảng liệu tạo T-SQL commands hay dùng Data designer  Server Explorer: Đây công cụ dùng để quản lý liệu máy tính kết nối 4.2 Giới thiệu NET framework & các thành phần chính 4.2.1 Giới thiệu NET framework NET Framework Microsoft tảng lập trình tập hợp thư viện lập trình cài thêm có sẵn hệ điều hành Windows Nó cung cấp giải pháp thiết yếu cho yêu cầu thông thường chương trình điện toán lập trình giao diện người dùng, truy cập liệu, kết nối sở liệu, ứng dụng web, giải thuật số học giao tiếp mạng Ngoài ra, NET Framework quản lý việc thực thi chương trình viết dựa NET Framework người dùng cần phải cài NET Framework để chạy chương trình viết NET • Về chức NET Framework có khối chức là: Trình diễn (Presentation); Dữ liệu (Data); Giao tiếp (Communication) • Về kỹ thuật Hiện Microsoft giới thiệu kỹ thuật bật là: Windows CardSpace (InfoCard), Windows Presentation Foundation (Avalon), Windows Communication Foundation (Indigo), Windows Workflow Foundation (Workflow) 4.2.2 Các thành phần Net framework NET Framework bao gồm ba phần thực thi ngôn ngữ chung (Common Language Runtime) lớp lập trình hợp hay gọi thư viện lớp sở (Base Class Libraries) phiên cấu thành Microsoft Active Server Pages gọi Microsoft ASP.NET Trên thực tế ASP.NET Windows Forms hai thành phần nằm Base Class Libraries, nên xem NET Framework bao gồm phần Common Language Runtime (CLR) NET Framework Class Library (FCL) Một thành phần có vai trò quan trọng việc phát triển dịch vụ ứng dụng NET Trang 19 Đề Tài : Truyền File Qua Mạng Lan GVHD:Đặng Duy Thắng Hình : Các thành phần Net Framework  Common Language Runtime (CLR) Như bạn biết, ngôn ngữ lập trình khác cung cấp runtime (bộ thực thi) NET Framework ngoại lệ Tuy bạn thấy runtime đặc biệt so với phần lớn runtime sử dụng Common Language Runtime (gọi tắt thực thi – CRL) xây dựng dịch vụ hệ điều hành CLR tảng NET Framework, đảm nhận công việc sau: • Là công cụ thực thi mã trung gian (tựa JVM) • Biên dịch (Just-in-time compiler) • Thực thi mã nguồn • Quản lý nhớ • Thực thi luồng (Thread execution) • Xử lý lỗi (Error-handling) • Xác nhận mã nguồn an toàn hình thức khác việc xác mã nguồn (managed code) CLR(Common Language Runtime) phát triển tầm cao so với runtime trước VB-runtime chẳng hạn, đạt khả nǎng tích hợp ngôn ngữ, bảo mật truy cập mã, quản lý thời gian sống đối tượng hỗ trợ gỡ lỗi Mã biên dịch hướng tới CLR có tên “managed code” “Managed code” cung cấp siêu liệu (metadata) cần thiết cho CLR để cung cấp dịch vụ hỗ trợ đa ngôn Trang 20 Đề Tài : Truyền File Qua Mạng Lan GVHD:Đặng Duy Thắng ngữ, bảo mật mã, quản lý thời gian sống đối tượng quản lý nhớ Nếu NET Framework tồn (và cài đặt) tảng, tảng chạy chương trình NET Khả chương trình chạy (không có sửa đổi) nhiều tảng gọi độc lập tảng Code viết lần sử dụng loại máy tính mà không sửa đổi, tiết kiệm thời gian tiền bạc .NET Framework cung cấp mức độ tương tác cao ngôn ngữ Chương trình viết ngôn ngữ khác biên dịch thành phần MSIL khác kết hợp để tạo chương trình thống MSIL cho phép NET Framework trở thành ngôn ngữ không phụ thuộc, chương trình NET không gắn với ngôn ngữ lập trình cụ thể Bất ngôn ngữ biên dịch sang MSIL gọi ngôn ngữ tương thích với NET Danh sách ngôn ngữ lập trình khả dụng với NET liệt kê bảng sau:  Các ngôn ngữ lập trình NET APL Mondrian C# Oberon COBOL Oz Component Pascal Pascal Curriculum Perl Eiffel Python Forth RPZ Fortran Scheme Haskell Smalltalk Java Standard ML Jscript Visual Basic Mercury Visual C++  Common Language Infrastructure (CLI) Mục đích Common Language Infrastructure (CLI) cung cấp tảng ngôn ngữ trung lập để phát triển thực thi ứng dụng, bao gồm chức để xử lý lỗi, thu gom rác thải (garbage collection), bảo mật khả tương tác Bằng cách thực khía cạnh cốt lõi NET Framework phạm vi mình, CLI không gắn với ngôn ngữ mà có mặt nhiều ngôn ngữ hỗ trợ NET framework  Biên dịch NET Common Language Runtime (CLR) phần trung tâm NET Frameworkit thực chương trình NET Chương trình biên dịch vào hướng dẫn-cụ thể (machine-specific) máy theo hai bước Đầu tiên, chương trình dịch thành Microsoft Intermediate Language (MSIL), xác định hướng dẫn cho CLR Code chuyển đổi thành Trang 21 Đề Tài : Truyền File Qua Mạng Lan GVHD:Đặng Duy Thắng MSIL từ ngôn ngữ khác nguồn kết hợp với CLR Các MSIL cho thành phần ứng dụng đặt vào file thực thi ứng dụng (được gọi assembly) Khi ứng dụng thực thi, trình biên dịch (được gọi biên dịch justin-time biên dịch JIT) CLR phiên dịch MSIL file thực thi vào mã máy (đối với tảng cụ thể), sau mã máy thực thi tảng Ghi chú: MSIL ngôn ngữ trung gian, giải pháp để giúp cho lập trình viên không cần quan tâm đến việc lập trình ngôn ngữ NET Ví dụ: thực tế, nhóm lập trình, có người sử dụng VB.NET, có người dùng C#, có người dùng J#,… họ hợp tác làm sản phẩm, dùng ngôn ngữ quen thuộc họ để lập trình, không thiết group gồm người lập trình ngôn ngữ xác định Việc biên dịch chương trình sang MSIL giúp chương trình chạy nhiều máy, nhiều tảng khác Tại phải biên dịch lần:  Độc lập với phần cứng NET framewwork cài đặt nhiều platform Các chương trình NET thực mà thay đổi code (viết lần, chạy nơi)  Độc lập ngôn ngữ Các chương trình NET không bị trói buộc vào ngôn ngữ cụ thể Các chương trình NET viết bới ngôn ngữ NET  NET Framework class library (fcl) – Thư viện lớp NET Framework Có thể bạn nghe qua MFC JFC Microsoft Foundation Class (MFC) thư viện mà lập trình viên Visual C++ sử dụng Java Foundation Class (JFC) thư viện dành cho lập trình viên Java Bạn xem NET Framework Class Library (FCL) thư viện dành cho lập trình viên NET Với 80000 lớp đối tượng (với NET 4.0) để gọi thực đủ loại dịch vụ từ hệ điều hành, bạn bắt đầu xây dựng ứng dụng Notepad.exe Nhiều người lầm tưởng môi trường phát triển phần mềm Visual Studio 98 hay Visual Studio NET tất cần để viết chương trình Thực ra, chúng phần mềm dùng làm vỏ bọc bên Với chúng, bạn viết đoạn lệnh đủ màu xanh, đỏ; lỗi cú pháp báo gõ lệnh; thuộc tính đối tượng đặt cửa sổ properties, giao diện thiết kế theo phong cách trực quan Hầu hết lớp gom vào namespace (không gian tên) gọi system  Trang 22 Sơ lược namespace Đề Tài : Truyền File Qua Mạng Lan GVHD:Đặng Duy Thắng NET Framework tạo từ hàng trǎm lớp (class) Nhiều ứng dụng mà bạn xây dựng NET tận dụng lớp theo cách hay cách khác Vì số lượng lớp lớn, NET Framework tổ chức lớp vào cấu trúc lớp gọi namespace Một namespace namespace lớn Namespace lớn NET Framework System System Namespace sở NET Framework Tất namespace cung cấp NET framework bắt đầu với namespace sở Ví dụ, lớp phục vụ việc truy cập thao tác liệu tìm thấy namespace System.Data.Những ví dụ khác bao gồm System.IO, System.XML, System.XML, System.Collections, System.Drawing v v Lợi điểm namespace phân nhóm lớp đối tượng, giúp người dùng dễ nhận biết sử dụng Ngoài ra, namespace tránh việc lớp đối tượng có tên trùng với không sử dụng NET Framework cho phép bạn tạo lớp đối tượng namespace riêng Với 80000 tên có sẵn, việc đặt trùng tên lớp với lớp đối tượng có điều khó tránh khỏi Namespace cho phép việc xảy cách sử dụng tên đầy đủ để nói đến lớp đối tượng Ví dụ, muốn dùng lớp WebControls, bạn dùng tên tắt WebControls hay tên đầy đủ System.Web.UI.WebControls 4.3 Kết chức chương trình 4.3.1 Giao diện khởi động chương trình Hình : Giao diện khởi động chương trình Trang 23 Đề Tài : Truyền File Qua Mạng Lan GVHD:Đặng Duy Thắng 4.3.2 Giao diện khởi động server Hình : Giao diện khởi động server 4.3.3 Chọn File muốn truyền Hình : Chọn file muốn truyền Trang 24 Đề Tài : Truyền File Qua Mạng Lan GVHD:Đặng Duy Thắng 4.3.4 Giao diện Client chia File gởi packet chia đến Server Hình 10 : Giao diện Client chia file gửi packet chia đến Server 4.3.5 Thông báo gởi packet đến Server thành công bắt đầu nối Packet Hình 11 : Thông báo gửi packet đến Server thành công bắt đầu nối Packet Trang 25 Đề Tài : Truyền File Qua Mạng Lan GVHD:Đặng Duy Thắng 4.3.6 Gởi toàn nội dung Folder đến Server Hình 12 : Gửi toàn nội dung Folder đến Server Hình 13 : Kết thúc trình gưi nội dung Folder đến Server Trang 26 Đề Tài : Truyền File Qua Mạng Lan GVHD:Đặng Duy Thắng CHƯƠNG : KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ĐỀ TÀI 5.1.Kết luận Truyền file qua mạng ứng dụng phổ biến mạng LAN Internet :Tải xuống file từ máy chủ file xa, gởi/ nhận thư điện tử,… Truyền file qua mạng dựa Socket TCP phương pháp truyền file có độ tin cậy cao Không phải phương pháp thay hoàn toàn phương pháp truyền file khác mà ta sử dụng Bản chất phương pháp truyền file dựa Socket TCP nhằm tăng thêm hiệu xuất làm việc 5.2 Kết đạt • • • • • Về sở lý thuyết, đồ án trình bày nội dung mạng máy tính, sơ lược ngôn ngữ C#, lập trình Socket TCP nói chung, nội dung lien quan đến truyền File qua mạng Đã truyền file từ Client tới Server Nhiều Client kết nối tới Server thực trình truyền file Có thể truyền file truyền thư mục Chia nhỏ file Client truyền qua Server Server ghép nối file trở lại trạng thái ban đầu o Để tăng dung lượng file truyền qua o Giảm tình dung lượng file lớn không truyền o Giảm rủi ro trình truyền file o Đô bảo mật file tốt 5.2.1 Những vấn đề tồn • Tốc độ truyền file chậm • Server chưa tự động nối file 5.2.2 Hướng phát triển • Gia tăng tốc độ truyền file • Server tự động nối file Trang 27 Đề Tài : Truyền File Qua Mạng Lan GVHD:Đặng Duy Thắng TÀI LIỆU THAM KHẢO Giáo tŕnh “Ngôn Ngữ Lập Trình C#” biên dịch tổng hợp từ: • Programming C#, Jesse Liberty, O’Reilly • C# in 21 Days, Bradley L.Jones, SAMS • Windows Forms Programming with C#, Erik Brown, Manning • MSDN Library – April 2002 Trang web: www.codeproject.com Trang web: www.dotnetspider.com Trang web: www.socketcoder.com Trang 28 [...]... về mạng máy tính, sơ lược về ngôn ngữ C#, lập trình Socket TCP nói chung, và các nội dung lien quan đến truyền File qua mạng Đã truyền được file từ Client tới Server Nhiều Client có thể kết nối tới Server và thực hiện quá trình truyền file Có thể truyền file hoặc truyền cả thư mục Chia nhỏ file ở Client rồi truyền qua Server Server ghép nối file trở lại trạng thái ban đầu o Để tăng dung lượng file truyền. .. o Để tăng dung lượng file truyền qua o Giảm tình dung lượng file quá lớn không truyền được o Giảm rủi ro trong quá trình truyền file o Đô bảo mật file tốt hơn 5.2.1 Những vấn đề còn tồn tại • Tốc độ truyền file còn chậm • Server chưa tự động nối file 5.2.2 Hướng phát triển • Gia tăng tốc độ truyền file • Server tự động nối file Trang 27 Đề Tài : Truyền File Qua Mạng Lan GVHD:Đặng Duy Thắng TÀI LIỆU... trình Trang 23 Đề Tài : Truyền File Qua Mạng Lan GVHD:Đặng Duy Thắng 4.3.2 Giao diện khi khởi động của server Hình 8 : Giao diện khi khởi động server 4.3.3 Chọn File muốn truyền Hình 9 : Chọn file muốn truyền Trang 24 Đề Tài : Truyền File Qua Mạng Lan GVHD:Đặng Duy Thắng 4.3.4 Giao diện khi Client chia File và gởi các packet đã chia đến Server Hình 10 : Giao diện khi Client chia file và gửi các packet... Truyền File Qua Mạng Lan GVHD:Đặng Duy Thắng 4.3.6 Gởi toàn bộ nội dung của Folder đến Server Hình 12 : Gửi toàn bộ nội dung của Folder đến Server Hình 13 : Kết thúc quá trình gưi nội dung Folder đến Server Trang 26 Đề Tài : Truyền File Qua Mạng Lan GVHD:Đặng Duy Thắng CHƯƠNG 5 : KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ĐỀ TÀI 5.1.Kết luận Truyền file qua mạng là một trong những ứng dụng phổ biến trên mạng LAN. .. Packet khác nhau Processbar cho biết tiến trình gởi File cho Server Sau khi truyền thành công các Packet Server sẽ nối các Packet lại thành File ban đầu Dung lượng truyền theo Folder là không giới hạn Trang 13 Đề Tài : Truyền File Qua Mạng Lan GVHD:Đặng Duy Thắng 3.2 Phân tích chức năng Quy trình hoạt động của Chương trình “ Truyền File Qua Mạng LAN SERVER SERVER Bắt Bắtđầu đầu Tao TaoTCPListerner... and Join File) chia 1 File cần truyền gói nhỏ mỗi gói có kích thước 2048 byte sau đó tiến hành truyền từng gói nhỏ cho đến khi hết tập tin thì thôi Trang 12 Đề Tài : Truyền File Qua Mạng Lan GVHD:Đặng Duy Thắng CHƯƠNG 3 : THIẾT KẾ VÀ XÂY DỰNG CHƯƠNG TRÌNH 3.1 Mô tả chức năng Chương trình cho phép Client gởi File hoặc toàn bộ nội dung của Folder đến Server Tuỳ thuộc dung lượng của File muốn truyền sẽ... ứng dụng phổ biến trên mạng LAN và Internet như :Tải xuống các file từ một máy chủ file ở xa, gởi/ nhận thư điện tử,… Truyền file qua mạng dựa trên Socket TCP là một phương pháp truyền file có độ tin cậy cao Không phải là phương pháp thay thế hoàn toàn những phương pháp truyền file khác mà ta đã từng sử dụng Bản chất của phương pháp truyền file dựa trên Socket TCP là nhằm tăng thêm hiệu xuất làm việc... Báo Báolỗilỗi Đúng Chọn ChọnFile Filehoặc hoặcthư thưmục mục cần cầngởi gởiđến đếnServer Server Chia Chianhỏ nh File, File, thư thưmục mụctheo theo dung dunglượng lượngcủa củaFile Filehoặc hoặcthư thư mục mụcmuốn muốngởi gởi Gởi Gởipacket packetđãđãchia chiatớitới Server Server Đúng Tiếp Tiếptục? tục? Sai Kết Kếtthúc thúc Trang 15 Kết Kếtthúc thúc Đề Tài : Truyền File Qua Mạng Lan GVHD:Đặng Duy Thắng Hình... nhậnkết kết nối từ client nối từ client Đúng Đợi ĐợiClient Clientgởi gởiFile File Nhận NhậnFile Filehoặc hoặcThư Thưmục mục Nối NốiFile FilevàvàThư Thưmục mụcvừa vừa nhận nhận Đúng Tiếp Tiếptục? tục? Sai Kết Kếtthúc thúc Hình 4 : Quy trình hoạt động Server Trang 14 Sai Báo Báolỗilỗi Kết Kếtthúc thúc Đề Tài : Truyền File Qua Mạng Lan GVHD:Đặng Duy Thắng CLIENT CLIENT Bắt Bắtđầu đầu Tạo TạoTCPClient TCPClientkết... o Chia 1 file cần truyền gói nhỏ mỗi gói có kích thước 2048 byte sau đó tiến hành truyền từng gói nhỏ cho đến khi hết tập tin thì thôi Trong đó ghi và đọc file theo phương thức Stream 2.7 Phương thức nhận file Nhận từng gói nhỏ mỗi gói có kích thước 2048 byte cho đến khi kết thúc file Trong đó ghi và đọc file theo phương thức Stream 2.8 Kỹ thuật chia nhỏ và nối file Kỹ thuật chia nhỏ và nối File ( Split ... : Truyền File Qua Mạng Lan GVHD:Đặng Duy Thắng CHƯƠNG : KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ĐỀ TÀI 5.1.Kết luận Truyền file qua mạng ứng dụng phổ biến mạng LAN Internet :Tải xuống file từ máy chủ file. .. Server thực trình truyền file Có thể truyền file truyền thư mục Chia nhỏ file Client truyền qua Server Server ghép nối file trở lại trạng thái ban đầu o Để tăng dung lượng file truyền qua o Giảm tình... thúc Trang 15 Kết Kếtthúc thúc Đề Tài : Truyền File Qua Mạng Lan GVHD:Đặng Duy Thắng Hình : Quy trình hoạt động client Trang 16 Đề Tài : Truyền File Qua Mạng Lan GVHD:Đặng Duy Thắng CHƯƠNG : TRIỂN

Ngày đăng: 31/01/2016, 13:57

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

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

TÀI LIỆU LIÊN QUAN

w