1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

Tài liệu Lập trình mạng P1 pdf

35 494 0
Tài liệu được quét OCR, nội dung có thể không chính xác
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

Thông tin cơ bản

Tiêu đề Tổng quan về lập trình mạng
Tác giả Nguyễn Phương Lan, Hoàng Đức Hải
Trường học Trường Đại học Công Nghệ Thông Tin
Chuyên ngành Lập trình mạng
Thể loại Giáo trình môn học
Năm xuất bản 2023
Thành phố Hà Nội
Định dạng
Số trang 35
Dung lượng 411,52 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

GIAO THUC TCP/IP Giao thuc protocol Giao thức là một tập hợp các quy tắc giao tiếp giữa hai hệ thống giúp chúng hiéu va trao đôi dữ liệu được với nhau.. gọi là server -Quá trình có yêu

Trang 1

LAP TRINH MANG Thoi gian 45 tiét li thuyét, 15 tiét thuc hanh

Thi cuối kỳ: trắc nghiệm và tự luận

Thực hành theo sự phân nhóm, có điểm danh và làm báo cáo

Tài liệu tham khảo:

Trang 2

LAP TRINH MANG

Nội dung chương trình

Tổng quan về lập trình mạng

Lập trình mạng với thư viện Winsock của Windows Lap trinh multicasting

Lập trình mạng với hệ thông Web

Lập trình mạng với hệ thông Email

Lập trình mạng với hệ thông truyền File

Trang 5

1 Mo hinh OSI

4) Transport |a - Transpqrt Fratocol_ _ _ _ _ _ _ »| Transpot | TPDU

3] Network |&dp| Neatwork |&e-| Neatwork be ++} Network Packet

Trang 6

Tang 1 (tang vat ly-Physical): cung cap cac phương tiện truyén tin,

thủ tục khởi động, duy trì huỷ bỏ các liên két vat ly cho phép truyén

các dòng dữ liệu ở dạng bit

Tang 2 (tang lién kết dữ liệu-Data Link): thiết lập, duy trì, huỷ bỏ các

liên kết dữ liệu kiểm soát luồng dữ liệu, phát hiện và khắc phục các

sai sót truyên tin

Tang 3 (tang mạng-Network): chọn đường truyền tin trong mạng, thực

hiện kiểm soát luông dữ liệu, khắc phục sai sót, cắt hợp dữ liệu

Tang 4 (tâng giao vận-Transport): kiểm soát giữa các nút của luông

dữ liệu, khắc phục sai sót, có thể thực hiện ghép kênh và cắt hợp dữ

liệu

Tâng 5 (tâng phiên-Session): thiết lập, duy trì đồng bộ hoá và huỷ bỏ

các phiên truyền thông Liên kết phiên phải được thiết lập thông qua

đối thoại và các tham số điều khiến

Tang 6 (tâng trình dữ liệu-Presentation): biêu diễn thông tin theo cú

pháp dữ liệu của người sử dụng Loại mã sử dụng và vấn đề nén dữ

liệu

Tang 7 (tâng áp dụng-Application): là giao diện giữa người và môi

trường hệ thống mớ Xử lý ngữ nghĩa thông tin, tầng này cũng có

chức năng cho phép truy cập và quản chuyền giao tệp, thư tín điện tử

Trang 7

2 Data link nang Data link

(Hên kêt dữ liệu) mạng (Hên kêt dữ liệu)

Trang 9

Header li cẫadecr Nhan

FTETREYTE HEưnrrf remrzartt BIFraTiESE Frame

4 !11Ó < SCAU SCARE wa Et 1 ates ; Fair Sclit Neanendent)

Header |] Header ] Header Data} [railer Medium dependent)

Trang 10

2 GIAO THUC TCP/IP

Giao thuc (protocol)

Giao thức là một tập hợp các quy tắc giao tiếp giữa hai hệ thống

giúp chúng hiéu va trao đôi dữ liệu được với nhau

OSI Medel TCP/IP

Layers = = Protocol _ Tor stp Protocet

Kiến trúc giao thức TCP/IP

Trang 11

2 GIAO THUC TCP/IP

Trang 12

Tang 3 str dung giao thức IP, tầng 4 có thể sử dụng giao thức TCP ở chế độ

có nôi kêt hoặc UDP ở chê độ không nỗi kêt

Tang 9 lả tâng ứng dụng Môi loại ứng dụng phải định nghĩa một loại giao

thức đề các ứng dụng này trao đôi thông tin với nhau Ví dụ

>Ứng dụng Web sử dụng giao thức HTTP để tải các trang web từ webserver

về webbowser

>Ứng dụng thư điện tử sử dụng giao thức SMTP để chuyền tiếp mail gửi đi

đến mail server của người nhận và dùng giao thức POP3 hoặc IMAP để nhận

mail về cho người đọc

>Ứng dụng truyền tải tập tin sử dụng giao thức FTP để tải các tập tin từ các

FTP server ở xa về máy người dùng hay ngược lại

>

Trang 13

Theo mo hinh client — server, mot chương trình ứng dụng được chia làm 2

phan

-Quá trình chuyên cung cấp một số phục vụ nào đó ví dụ phục vụ web, phục

vụ tập tin, phục vụ thư điện tử gọi là server

-Quá trình có yêu cầu sử dụng các dịch vụ do server cung cấp được gọi là

client

Giao tiếp giữa server và client được thực hiện dưới hình thức trao đổi thông

diép (message) Request message tv client va Reply message từ phía

server

Trang 14

3 MO HINH CLIENT — SERVER

Quá trình đang thực thi

Quá trình đang chờ đợi

Trang 15

4 CAC CHE BDO GIAO TIEP

Giao tiếp giữa client va server có thê diễn ra ở hai chế dé la blocked va non —

Trang 16

4 CAC CHE BDO GIAO TIEP

Trang 17

5.1 Giới thiệu socket

- Socket la mét giao dién lap trinh wng dung (API — Application Programming

Interface) được giới thiệu đâu tiên trong ấn bản Unix — BSD 4.2 dưới dạng các hàm hệ thống trong ngôn ngữ C Ngày ngay, socket được hỗ trợ hầu hết trên

các hệ điều hành: Windows, Linux và trong nhiều ngôn ngữ lập trình như C, C++, Java, VC++, Dot.net

- Socket cho phép thiết lập các kênh giao tiếp mà hai đầu kênh được đánh dau bởi hai công (port)

> < Hoa >

Trang 18

5.1 Giới thiệu socket

Có hai kiéu socket

- AF_ UNIX: chỉ cho phép giao tiếp giữa các quá trình trong cùng một máy tính

- AF_ INET: cho phép giao tiếp giữa các quá trình trên những máy tính khác

nhau

Trang 19

9 SOCKET

5.2 Khái niệm céng (port)

Đề thực hiện các cuộc giao tiếp, quá trình cần có công của socket mà mình sử

dụng Môi công giao tiêp thê hiện một địa chỉ xác định trong hệ thông,

F~~~~T~""~~rTrTr"""rTr"""h¬ BO a

| a Anu _ B2C | |

Trang 20

9 SOCKET

5.2 Khái niệm céng (port)

Số hiệu công gán cho socket phải duy nhất trên máy tính, có giá trị trong

khoảng 0 — 65535 (16 bit), các công từ 1 tơi 1023 được dành riêng cho các quá

Trang 21

9 SOCKET

5.2 Khái niệm céng (port)

Số hiệu công gán cho socket phải duy nhất trên máy tính, có giá trị trong

khoảng 0 — 65535 (16 bit), các công từ 1 tơi 1023 được dành riêng cho các quá

Trang 22

9 SOCKET

5.2 Khái niệm céng (port)

Số hiệu công gán cho socket phải duy nhất trên máy tính, có giá trị trong

khoảng 0 — 65535 (16 bit), các công từ 1 tơi 1023 được dành riêng cho các quá

Trang 23

9 SOCKET

5.2 Khái niệm céng (port)

Số hiệu công gán cho socket phải duy nhất trên máy tính, có giá trị trong

khoảng 0 — 65535 (16 bit), các công từ 1 tơi 1023 được dành riêng cho các quá

Trang 24

9 SOCKET

5.3 Giao tiếp TCP va UDP

Giao tiếp có kết nỗi sử dụng giao thức TCP

Giao tiếp không có kết nỗi sử dụng giao thức UDP

Tôn tại kênh giao tiếp giữa hai bên Không tôn tại kênh giao tiệp ảo giữa

Dữ liệu được gửi đi theo chế độ đảm | Dữ liệu được gửi đi theo chế độ

bảo: có kiểm tra lỗi, truyền lại gói tin | không đảm bảo

lỗi hay mất, đảm bảo thứ tự đến của | pe liệu không chính xác, tốc độ

Cac gol tin truyền nhanh

Dữ liệu chính xác, tốc độ truyền cham | Thich hợp cho các ứng dụng cần tốc

độ không cần chính xác cao

Trang 25

-bind() server yêu cầu gán số hiệu công cho socket

-listen() server lắng nghe các yêu câu kết nỗi từ các client trên cổng đã được gán

Trang 26

9 SOCKET

5 4 M6 hinh Client — Server sw dung TCP

Giai doan 2: client tao socket, yêu câu thiết lập một kết nối tới server

-connect() client gửi yêu cầu connect tới server có dia chi IP va port xac định

-accept() server chấp nhận kết nỗi của client khi đó một kênh giao tiếp ảo được hình thành, client và server có thê trao đổi thông tin qua kênh giao tiếp ảo này

Trang 27

9 SOCKET

5 4 M6 hinh Client — Server sw dung TCP

Giai doan 3: trao déi thong tin gitva client va server

-Sau khi chap nhận yêu cau két néi,théng thuong server thực hiện lệnh read va

nghẽ (blocked) cho tới khi có thông điệp từ client gửi tới

-Server phân tích và thực thi yêu câu, kết quả sẽ được gửi về cho client bằng lệnh

write()

-Sau khi gửi yêu cầu bằng lệnh write(), client chờ nhận thông điệp từ server bang

lệnh read()

Trang 28

9 SOCKET

5 4 M6 hinh Client — Server sw dung TCP

- Việc trao đổi thông tin giữa client và server phải tuân thủ theo giao thức của

ứng dụng

Giai đoạn 4: Kết thúc phiên làm việc

Trang 29

5 4 M6 hinh Client — Server sw dung TCP

-Các câu lệnh read(), write() có thể được thực hiện nhiều lần

-Kênh ảo sẽ mất đi khi server hoặc client thực hiện đóng socket bằng lệnh

close()

Trang 30

9 SOCKET

5 4 M6 hinh Client — Server sw dung TCP

Toản bộ quá trình -

Trang 32

9 SOCKET

5 5 M6 hinh Client — Server sw dung UDP

Gial doan 2: client tao socket

-socket() client yéu cau tao mét socket để có thể sử dụng các dịch vụ của tầng vận chuyến, thông thường hệ thông tự động gán một sô hiệu công còn rảnh cho socket

của client

Trang 33

9 SOCKET

5 5 M6 hinh Client — Server sw dung UDP

Giai doan 3: trao déi thong tin gitva client va server

Trang 34

5 6 M6 hinh Client — Server sw dung TCP/UDP

Chương trình server ở chế độ đồng thời sử dụng TCP

- Tạo socket(), đăng ký địa chỉ socket với hệ thống,

- Đặt socket ở trạng thái chờ, lắng nghe kết nồi

- Khi có request từ client, chấp nhận kết nỗi, tạo một process con đề xử lý Quay

lại trạng thái chờ, lắng nghe kết nỗi mới

- Công việc của proccess mới gồm:

“Nhận thông tin kết nỗi của client

„Giao tiếp với client theo giao thức đã thiết kế

“Đóng kết nối và kết thúc proccess con

Trang 35

5 6 M6 hinh Client — Server sw dung TCP/UDP

Chương trình server ở chế độ đồng thời sử dụng UDP

-Tao socket

-Lap viec nhan dữ liệu từ client, đối với một dữ liệu nhận tạo proccess (quá trình)

đê xử lý, tiêp tục nhận dữ liệu từ client

-Công việc của proccess mới:

Nhận thông tin của proccess cha truyền đến, lây thông tin socket

„Xử lý và gửi thông tin về cho client theo giao thức lớp ứng dụng đã thiết kế

„Kết thúc

Ngày đăng: 22/12/2013, 21:17

TỪ KHÓA LIÊN QUAN

w