Kĩ thuật lập trình - Mạng máy tính và lập trình mạng

Mô hình client/server  Một chương trình server có thể phục vụ nhiều chương trình client đồng thời. 2. Mô hình peer-to-peer  Có thể thực hiện vai trò của cả server và của client. 3. Mô hình đa tầng  Gồm nhiều tầng, tiêu biểu nhất là mô hình 3 tầng.  Ví dụ: dịch vụ Web với tầng đỉnh là trình duyệt, tầng trung gian là Webserver và tầng thông tin là cơ sở dữ liệu.

pdf25 trang | Chia sẻ: nguyenlam99 | Lượt xem: 1067 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu Kĩ thuật lập trình - Mạng máy tính và lập trình mạng, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
MẠNG MÁY TÍNH VÀ LẬP TRÌNH MẠNG Nguyễn Hữu Thể LẬP TRÌNH MẠNG LẬP TRÌNH MẠNG  Các chương trình:  kế toán doanh nghiệp, quản lý, trò chơi, điều khiển,... đều là các chương trình ứng dụng mạng.  Lập trình mạng liên quan:  ngôn ngữ lập trình,  phân tích thiết kế hệ thống,  kiến thức hệ thống mạng,  mô hình xây dựng chương trình ứng dụng mạng,  kiến thức về cơ sở dữ liệu,... các lĩnh vực khác như mạng điện thoại di động, PSTN, GPS, Bluetooth, sensor,... 2 LẬP TRÌNH MẠNG  3 vấn đề chính trong lập trình mạng:  Kiến thức mạng truyền thông  Mô hình lập trình mạng  Ngôn ngữ lập trình mạng 3 TCP/ IP  Mô hình TCP/IP ra đời trong những năm 1970, được phát triển dựa trên mô hình OSI.  Cung cấp các phương tiện truyền thông liên mạng giúp cho các hệ thống mạng khác nhau có thể làm việc với nhau. 4 Các tầng của mô hình TCP/IP Mô hình TCP/IP gồm có 4 tầng:  ứng dụng (Application), Mô hình OSI Mô hình TCP/IP  vận chuyển (Transport) ,  tầng Internet (Internet),  truy xuất mạng(NetworkAccess) 5 Tầng ứng dụng (Application Layer)  Trao đổi thông tin người dùng.  Một số giao thức thông dụng: 6 Tầng vận chuyển (Transport Layer)  Quản lý và kiểm tra truyền thông giữa các máy tính.  Chuyển tiếp dữ liệu nhận được lên lớp trên hoặc xuống lớp dưới.  Sử dụng cổng (port) để xác định ứng dụng nào của tầng trên sẽ nhận dữ liệu.  Hai giao thức chính là :  TCP (Transmission Control Protocol)  UDP (User Datagram Protocol) 7 Tầng vận chuyển (Transport Layer) TCP (Transmission Control Protocol) :  Cung cấp dịch vụ truyền thông tin cậy và hướng kết nối  Các ứng dụng cần truyền dữ liệu lớn tại một thời điểm  Ứng dụng cần cơ chế xác nhận dữ liệu.  Hướng kết nối gồm ba giai đoạn :  thiết lập kết nối,  truyền dữ liệu,  giải phóng kết nối. 8 Tầng vận chuyển (Transport Layer) UDP (User Datagram Protocol) :  Cung cấp dịch vụ truyền thông không kết nối  Không đảm bảo truyền dữ liệu thành công.  Thường chỉ truyền một lượng dữ liệu nhỏ tại một thời điểm. 9 Địa chỉ IP v4 (IP address)  Chức năng: đánh địa chỉ gói dữ liệu và định tuyến đến đích.  Cấu trúc: chia làm hai hoặc ba phần:  network_id & host_id  hoặc network_id & subnet_id & host_id  IPv4 Kích thước 32 bit, chia thành bốn phần, mỗi phần có kích thước 8 bit, gọi là octet hoặc byte. Trình bày:  Ký pháp thập phân có dấu chấm (dotted-decimal notation) • Ví dụ: 172.16.30.56  Ký pháp nhị phân (Binary) • Ví dụ: 10101100 00010000 00011110 00111000  Ký pháp thập lục phân (Hexa) • Ví dụ: AC 10 1E 38 11 Địa chỉ IP (IP address)  Không gian địa chỉ IPv4 (gồm 232 địa chỉ) chia thành nhiều lớp.  Các lớp: A, B, C, D và E  Lớp A, B và C được triển khai để đặt cho các host trên mạng Internet;  Lớp D dùng cho các nhóm multicast;  Lớp E phục vụ cho mục đích nghiên cứu.  Địa chỉ IP được gọi là địa chỉ logical  Địa chỉ MAC gọi là địa chỉ vật lý (physical). Địa chỉ IP (IP address) Địa chỉ IP (IP address) Địa chỉ cổng (port)  Hệ điều hành mạng đa nhiệm:  => cho phép nhiều tiến trình chạy đồng thời trên cùng một máy tính + địa chỉ IP.  Để phân biệt các tiến trình:  => gán cho mỗi tiến trình một nhãn duy nhất để phân biệt các tiến trình với nhau.  Nhãn (hay Port) được sử dụng và được quản lý bởi tầng transport, có giá trị từ 0 đến 65535. 14 Port: 0 đến 1023 (Cổng phổ biến -Well Known)  Dùng cho hệ thống, người sử dụng không nên dùng.  Gán mặc định cho các giao thức truyền thông phổ biến. Tham khảo tại iana.org/assignments/port-numbers  Danh sách các port thông dụng: 15 20 TCP File Transfer - FTP data 21 TCP File Transfer - FTP control 22 TCP/UDP SSH Remote Login Protocol/ pcAnywhere 23 TCP Telnet 25 TCP Simple Mail Transfer Protocol (SMTP) 38 TCP UDP Route Access Protocol (RAP) 42 UDP Host Name Server - Microsoft WINS 45 TCP Message Processing Module (receive) 46 TCP Message Processing Module (send) Port: 0 đến 1023 (Cổng phổ biến -Well Known) 16 50 TCP UDP Remote Mail Checking Protocol (RMCP) 66 TCP UDP Oracle SQL*NET 69 TCP UDP Trivial File Transfer Protocol (TFTP) 88 TCP UDP Kerberos Network Authentication Service 101 TCP UDP Network Information Center (NIC) Hostname Server 110 TCP UDP Post Office Protocol (POP) Version 3 118 TCP UDP SQL Services 119 TCP UDP Network News Transfer Protocol 130 TCP UDP Cisco FNATIVE 143 TCP UDP Internet Message Access Protocol (IMAP) Mail Server 161 TCP UDP SNMP 211 TCP UDP Texas Instruments 914C/G Terminal 280 TCP UDP http-mgmt 314 TCP UDP Opalis Robot 333 TCP UDP Texar Security Port Port: 0 đến 1023 (Cổng phổ biến -Well Known) 17 742 TCP UDP Network Revision Control System 747 TCP UDP Fujitsu Device Control 749 TCP UDP Kerberos Administration 767 TCP UDP Phonebook 777 TCP UDP Multiling HTTP 800 TCP UDP MDBS Daemon, Remotely Possible (Remote Control) 989 TCP UDP FTP Data Over TLS/SSL 990 TCP UDP FTP Control Over TLS/SSL 991 TCP UDP Netnews Administration System 992 TCP UDP Secure Telnet (over TLS/SSL) 993 TCP UDP Secure IMAP4 (over TLS/SSL) 994 TCP UDP Secure IRC (over TLS/SSL) 995 TCP UDP Secure POP3 (over TLS/SSL) 996 TCP Vsinet / Central Point Software Xtree License Server Port: 1024 đến 49151  Người sử dụng được phép dùng.  Phải đăng ký để tránh trùng lặp. 18 Port: 49152 đến 65535  Địa chỉ động hoặc dùng riêng.  Không phải đăng ký và cũng không phải chịu trách nhiệm khi xảy ra xung đột địa chỉ. 19 Socket Socket (cơ chế ổ cắm): kết nối máy khách và máy chủ.  Máy khách: xem như phích cắm  Máy chủ: xem như ổ cắm  Nhiều máy khách kết nối vào 1 máy chủ. 20 Socket  Mỗi tiến trình khi muốn truyền thông bằng socket:  tạo ra một socket  socket được gán một định danh duy nhất được gọi là địa chỉ socket.  Một địa chỉ socket là một tổ hợp gồm 2 địa chỉ: địa chỉ IP và địa chỉ cổng (port).  Ví dụ: 192.168.1.10 : 9090 21 3 loại socket  Stream socket:  Truyền thông với các giao thức hướng kết nối (TCP Socket).  Datagram socket:  Truyền thông với các giao thức không hướng kết nối (UDP socket).  Raw socket:  Truyền thông đến các giao thức ở tầng Network. 22 CÁC MÔ HÌNH LẬP TRÌNH MẠNG 1. Mô hình client/server  Một chương trình server có thể phục vụ nhiều chương trình client đồng thời. 2. Mô hình peer-to-peer  Có thể thực hiện vai trò của cả server và của client. 3. Mô hình đa tầng  Gồm nhiều tầng, tiêu biểu nhất là mô hình 3 tầng.  Ví dụ: dịch vụ Web với tầng đỉnh là trình duyệt, tầng trung gian là Webserver và tầng thông tin là cơ sở dữ liệu. 23 NGÔN NGỮ LẬP TRÌNH MẠNG  Hợp ngữ( Assembly Language)  C/C++  VC++, VB, Delphi  .NET  Java 24

Các file đính kèm theo tài liệu này:

  • pdf1_network_programming_9592.pdf
Tài liệu liên quan