Tổng quan về
MMT và Lập trình
mạng
Truyền thơng
Cơ chế giao tiếp liên q trình
(IPC)
Mơ hình OSI
Mạng TCP/IP
Dịch vụ mạng
Mơ hình Client/Server
Các kiểu kiến trúc chương trình
1
Truyền thông
Là sự giao tiếp, trao đổi thông tin
giữa 2 hay nhiều thực thể trong hệ thống.
Trong hệ thống máy tính, hệ thống mạng máy tính:
truyền thơng là sự giao tiếp bên trong 1 quá trình
hay giữa các quá trình với nhau thông qua các cơ
chế truyền thông.
Hệ thống đơn nhiệm (monotasking):
Giao tiếp chỉ trong phạm vi 1 chương trình.
Dùng biến toàn cục, tham số gọi hàm, trị trả về của hàm …
Hệ thống đa nhiệm (multitasking):
Nhiều quá trình được thực thi song song.
Dùng cơ chế giao tiếp liên quá trình (InterProcess Communication)
được cung cấp bởi hệ điều hành và hệ điều hành mạng.
2
Cơ chế giao tiếp liên quá trình
Phân loại:
Loại 1: Giao tiếp giữa các q trình trên cùng 1 máy tính
Loại 2: Giao tiếp giữa nhiều q trình
trên các máy tính khác nhau
3
Cơ chế giao tiếp liên quá trình
IPC loại 1: giao tiếp trên cùng 1 máy tính.
Thơng qua hạt nhân (kernel) của hệ điều hành.
Dùng vùng nhớ dùng chung hay tập tin chia sẻ:
Một quá trình ghi
Một quá trình đọc
IPC loại 2: giao tiếp trên các máy tính khác nhau.
Thông qua các hạt nhân (kernel) của nhiều hệ điều hành.
Phải có quy tắc trao đổi thơng tin (protocol) giữa các hạt
nhân và giữa các quá trình.
Một số IPC phổ biến: Pipe, Socket, RPC.
4
Mơ hình OSI
Mơ hình OSI đầy đủ:
Mơ hình OSI gồm 7 tầng
5
Mơ hình OSI
Kiến trúc các hệ điều hành mạng:
Cùng chức năng, không tương tác được với nhau
6
Tổng qt về TCP/IP
Một
số đặc tính:
Độc lập về hình thái của mạng.
Độc lập về phần cứng của mạng.
Các chuẩn giao thức mở.
Mơ hình địa chỉ tồn cầu.
Nền tảng client/server mạnh mẽ.
Các chuẩn về giao thức ứng dụng mạnh mẽ.
7
Mạng TCP/IP
TCP/IP: giao thức chung để giao tiếp trên Internet.
Mạng TCP/IP dùng mơ hình OSI đơn giản:
giản
Mơ hình OSI đơn giản gồm 5 tầng
8
TCP/IP
TCP/IP
là một tập của các protocols (một bộ
giao thức) định nghĩa cách thức truyền dữ
liệu qua môi trường Internet
TCP/IP là tên của mơ hình mạng được ghép
giữa hai giao thức chính trong mạng làTCP
(Transmission Control Protocol) và IP
(Internet Protocol)
9
Mạng TCP/IP
Tầng ứng dụng
Transport
(TCP, UDP,..)
TCP
UDP
Programming Interface:
Network
(IP,..)
Sockets
Tầng mạng
Application
(http,ftp,telnet,…)
User apps
HTTP
FTP
Telnet
Tầng vận chuyển
IP
Link
(device driver,..)
Tầng kết nối
TCP/IP Stack
Standard apps
Device drivers
10
Những điểm khác giữa OSI và
TCP/IP
Lớp
ứng dụng trongTCP/IP xử lý các chức
năng của các lớp 5,6, và7 trong mô hình OSI
Lớp transport trongTCP/IP cung cấp cơ chế
UDP truyền dữ liệu không tin cậy, khác với
lớp transport trong mô hình OSI là ln đảm
bảo dữ liệu truyền tin cậy
11
Mạng TCP/IP
TCP (Transport Control
Protocol) là giao thức vận
chuyển dựa trên kết nối
logic trực tiếp giữa 2 máy
tính.
Ví dụ:
TCP/IP Stack
Application
(http,ftp,telnet,…)
Transport
(TCP, UDP,..)
HTTP
FTP
Telnet
Network
(IP,..)
Link
(device driver,..)
12
Mạng TCP/IP
UDP (User Datagram
Protocol) là giao thức vận
chuyển phi kết nối thực
hiện gửi các packets gọi
là datagrams từ máy này
sang máy khác.
Ví dụ:
TCP/IP Stack
Application
(http,ftp,telnet,…)
Transport
(TCP, UDP,..)
Network
(IP,..)
Clock server
Ping
Link
(device driver,..)
13
TCP/IP và mạng Internet
Một liên mạng(internet) dùngTCP/IP được xem như là
một mạng đơn kết nối các máy tính với nhiều loại
Mạng Internet là sự kết nối giữa các mạng vật lý độc lập
thông qua các thiết bị liên mạng
Với mô hìnhTCP/IP, các mạng khác nhau kết nối với
nhau được xem như là một mạnglớn đồng nhất, không
quan tâm đến sự khác nhau giữa các thiết bị vật lý hay
môi trường
Mỗi máykết nối vào mạng xem như kết nối đến một
mạng luận lý, không quan tâm đến mạng vật lý
14
Mạng Internet với TCP/IP
15
Đóng gói dữ liệu trong TCP/IP
Đơn
vị dữ liệu trong lớp ứng dụng gọi là
message
Giao thứcTCP và UDP tạo ra một đơnvị dữ liệu
tương ứng là segment và user datagram.
Đơn vị dữ liệu trong lớp IP được gọi là datagram
Datagram phải được đóng gói(encapsulate)
trong một frame để truyền trên mạng vật lý
Frame sẽ được truyền theo dạng tín hiệu trên
đường truyền vật lý
16
Đóng gói dữ liệu trong TCP/IP
17
Lớp Network
Mơ hình TCP/IP cung cấp giao thức liên
mạng(internetworkprotocol -IP), là một cơ chế
truyền dữ liệu không tin cậy và phi kết
nối(connectionless)
IP cắ tdữ liệu ra thành các gói gọi là datagrams,
và mỗi gói được truyền độc lập
Datagram có thể đi theo các đường khác nhau và
có thể đến không đúng thứ tự hoặc trùng nhau.
IP không giữ thông tin đường đi cũng như không
sắp xếp lại các gói khi chúng đến
18
Địa chỉ IP
Là
địa chỉ luận lý trong mạng để xác định địa
chỉ của các máy trong mạng (ngoài địa chỉ
vật lý) cho việc truyền nhận dữ liệu
Địa chỉ IP có32 bit nhị phân chia ba phần:
class type, netid, hostid
Để biểu diễn ở dạng ngắn hơn và dễ đọc, địa
chỉ IP được chia thành dạng 4 phầnx 8 bit,
cách nhau bằng dấu chấm, một phần được
biểu diễn theo giá trị thập phân
19
Một số địa chỉ IP đặc biệt
20
Lớp Transport
Có 2 dạng dịch vụ:
TCP (Tranmission
Control Protocol)
UDP (User Datagram
Protocol)
21
Lớp Transport
Cung cấp sự truyền nhận luận lý giữa các process ứng
dụng giữa các máy trong mạng
Các giao thức lớp transport hoạt động ở các hệ thống
đầu cuối
Lớp transport so với lớp network:
– network layer: dữ liệu truyền nhận giữa các hệ thống
– transport layer: dữ liệu được truyền nhận giữa các
processes, dựa trên các dịch vụ của lớp network và mở
rộng một số chức năng
22
Lớp Transport
Định nghĩa một tập các kết nối mức khái niệm cho các
processes gọi là protocol ports. Một protocol port là một
điểm đích dùng để lưu dữ liệu cho một process cụ thể
Việc quản lý giao tiếp giữa các processes và các ports
tương ứng được hệ điều hành cung cấp
Các protocol lớp transport là port-to-port protocols,
truyền dữ liệu giữa process gởi đên process nhận
Mỗi port được xác định bằng một số nguyên dương 16
bits nhị phân
23
Lớp Transport
Mở rộng cách đánh
địa chỉ cho process.
– Địa chỉ port : xác định
ứng dụng mạng trên
mỗi máy.
– Địa chỉ củamột ứng
dụng mạng (IP,port)
24
Port Addresses
25