MẠNG VÀ TRUYỀN THÔNG
THÔNG
Tìm hiểu về cơ chế kiểm tra độ toàn vẹn gói tin
trong các giao thức
Giảng viên hướng dẫn:
Nguyễn Thành Huy
Sinh viên thực hiện: Nhóm 10
Nguyễn Trung Kiên
Trần Bá Phúc
2
Giao thức mạng
TCP/IP
Giao thức không quy định một cách chi tiết
việc thựcBiểu
hiệndiễn
các quy
tắc
và
quy
ước
trong
dữ liệu
Máy giao thức
VD
SPX/IPX
(Protocol Machine/Engine)
Các giao thức truyền thông dành cho truyền thông tín hiệu số
TẬP HỢP
trong mạng máy tính có nhiều tính năng để đảm bảo việc trao
một hệ thống như thế nào
Phát tín hiệu
đổi dữ liệu một cách đáng tin cậy qua một kênh truyền thông
CÁC
Chứng thực dữ liệu
QUY TẮC hoàn hảo
không
Các thực thể (Entities)CHUẨN
V.v...
Phát hiện lỗi dữ liệu
3
Các dạng liên kết của Protocol
Connectionless Connectionless protocols
&
(Giao thức hướng
kếtthức
nối) hướng kết nối)
(Giao
Connection-Oriented protocols
(Giao thức không kết nối )
Dữ liệu được truyền theo tuần tự
Ví dụ : Giao thức TCP, SPX ,...
Nếu nhận thành công thì nơi nhận phải gửi tín hiệu ACK
( ACKnowledge )
Kiểm soát được dữ liệu đường truyền
4
Các dạng liên kết của Protocol
Connection-Oriented protocols
(Giao thức không kết nối )
Không kiểm soát đường truyền
Dữ liệu không bảo đảm đến được nơi nhận
Dữ liệu thường dưới dạng Datagrams
Thường được sử dụng khi xem các video hay live trực
tuyến
Ví dụ : Giao thức UDP của TCP/IP ,..
5
Các dạng liên kết của Protocol
Routable
(Giao thức có khả năng định tuyến)
&
Non-Routable protocols
(Giao thức không có khả năng định tuyến)
Routable protocols
(Giao thức có khả năng định tuyến)
•
Cho phép đi qua các thiết bị liên mạng như Router để xây dựng các
mạng lớn
•
Ví dụ : Các giao thức có khả năng định tuyến như TCP/IP, SPX/IPX, ...
7
Các dạng liên kết của Protocol
Routable
(Giao thức có khả năng định tuyến)
&
Non-Routable protocols
(Giao thức không có khả năng định tuyến)
Non-Routable protocols
(Giao thức không có khả năng định tuyến)
•
Không cho phép đi qua các thiết bị liên mạng như Router để xây
dựng các mạng lớn . Ví dụ : NETBEUI ...
9
Giao thức mạng
Giao thức UDP
1
Giao thức TCP
2
Giao thức HTTP
3
HyperText Transfer Protocol
Giao thức SMTP
4
Simple Mail Transfer Protocol
User Datagram Protocol
Transmission Control Protocol
10
Giao thức UDP
UDP
01
Một trong những giao thức cốt lõi của bộ giao thức
TCP/IP
Chia nhỏ các dữ liệu thành datagram để gửi
02
03
Khi gửi các khối dữ liệu lớn có thể không đúng thứ tự hoặc mất mà không có
Không cung cấp sự tin cậy hay thứ tự truyền nhận
04
thông báo
UDP nhanh và hiệu quả đối với những yêu cầu
05
Hữu dụng đối với các truy vấn nhỏ với số lượng người yêu cầu lớn
06
khắt khe về thời gian
11
Giao thức UDP
Những ứng dụng phổ biến sử dụng UDP
UDP
UDP
UDP
DNS ( Domain Name System )
Voice over IP
UDP
Ứng dụng stream media
Game trực tuyến
12
Giao thức UDP
U
D
Không có cơ chế kiểm tra độ tin cậy của dữ liệu
•
Giao thức không kết nối
•
P
Source port: địa chỉ cổng nguồn
•
Kém tin cậy
•
Destination port: địa chỉ cổng đích
Message length: độ dài của gói
Checksum
Header
Datagrams
Data
13
Giao thức UDP
1
Cơ chế kiểm tra độ toàn vẹn của gói tin : UDP
Đặc điểm củaUDP
không có cơ chế kiểm tra độ toàn vẹn của gói tin .
2
Giao thức UDP nằm ở tầng Transport trong mô hình OSI
Là một giao thứ phi kết nối, có thể truyền tải dữ liệu ngay mà không cần thiết lập bất cứ kết
nối nào
Lỗi chỉ được phát hiện hay kiểm tra dựa vào thuật
toán CRC kiểm tra phần checksum và kiểm tra
cũng rất qua loa
3
4
5
Sửa lỗi bị hạn chế do chỉ có Checksum
Là một giao thức Best-effort, truyền dữ liệu không tin cậy (Unreliable)
Không có chức năng khôi phục dữ liệu hay yêu cầu gửi lại dữ liệu bị mất
14
Giao thức TCP
•
•
Là một trong các giao thức cốt lõi
của bộ giao thức TCP/IP
Giao thức này đảm bảo chuyển giao dữ liệu
tới nơi nhận một cách đáng tin cậy và đúng
TCP
thứ tự
TC
P
TCP
TCP
TCP
P
TC
TCP
•
TCP còn phân biệt giữa dữ liệu của nhiều
ứng dụng (chẳng hạn, dịch vụ Web và dịch
TCP
P
TC
với nhau, mà qua đó chúng có thể trao đổi
P
TC
chủ được nối mạng có thể tạo các "kết nối"
TCP
Sử dụng TCP, các ứng dụng trên các máy
TCP
TCP
•
dữ liệu hoặc các gói tin
P
TC
TCP
vụ thư điện tử) đồng thời chạy trên cùng
một máy chủ.
15
Giao thức TCP
WWW
TCP hỗ trợ nhiều giao thức ứng dụng
phổ biến nhất trên Internet và các ứng
dụng kết quả
Thư điện tử
Secure Shell
16
Giao thức TCP
Kết nối đáng tin cậy
Ứng dụng
Ứng dụng
Ứng dụng
TCP
IP
Giao thức TCP/IP
Giao thức IP không cung cấp những dòng kiểu đó, mà chỉ cung cấp dịch vụ chuyển gói
tin không đáng tin cậy
17
Giao thức TCP
Không như giao thức UDP – giao thức có thể lập tức gửi gói tin
Pha 3
Kết thúc kết nối
mà không cần thiết lập kết nối, TCP đòi hỏi thiết lập kết nối trước
khi bắt đầu gửi dữ liệu và kết thúc kết nối khi việc gửi dữ liệu
hoàn tất
Pha 2
Truyền dữ liệu
Pha 1
Thiết lập kết nối
Kết nối TCP có ba pha
18
Giao thức TCP
Cơ chế kiểm tra độ toàn vẹn của các gói tin
•
TCP chuyển các gói tin này qua giao thức IP để
gửi nó qua một liên mạng đến TCP ở máy đích
Nguyên tắc hoạt động
TCP tạo ra các kết nối giữa 2 máy cần trao
đổi dữ liệu mà qua đó các gói tin được đảm
bảo truyền đến nơi nhận 1 cách đáng tin
cậy và đúng thứ tự
•
TCP tại máy nguồn phân chia các byte dữ liệu cần
truyền đi thành các đoạn ( Segment ) có kích thước
thích hợp
•
Khi TCP đích nhận được , họ gửi về TCP nguồn một thông
báo đã nhận ( Acknowledgement – ACK ) cho các gói tin
đã nhận thành công
•
TCP nguồn kiểm tra để không có một gói tin nào bị thất lạc
bằng cách gán cho mỗi gói tin một số thứ tự ( Sequence
Number )
•
TCP đích sẽ kiểm tra Checksum xem có byte nào bị hỏng
trong quá trình vận chuyển hay không ? Giá trị checksum
này được tính toán cho mỗi gói dữ liệu tại nơi gửi trước
khi nó được gửi và kiểm tra tại nơi nhận
Hoàn tất
•
Một đồng hồ tại TCP nguồn sẽ báo time-out nếu không
nhận được tin báo nhận trong khoảng thời gian bằng
một RRT ( Round Trip Time ) , và dữ liệu ( lúc này được
tính là thất lạc ) sẽ được gửi lại
21
Giao thức TCP
Ưu điểm của TCP so với UDP :
Truyền dữ liệu không lỗi ( Do có cơ chế sửa lỗi / Truyền lại )
Truyền dữ liệu đi theo đúng thứ tự
Truyền lại dữ liệu đã mất hoặc bị thất lạc
Loại bỏ các gói dữ liệu trùng lặp
Cơ chế hạn chế tắc nghẽn trên đường truyền
Ưu điểm
1
2
3
4
5
21
22
Câu hỏi cá nhân
Câu 1
Câu 2
Câu 3
Câu 4
Câu 5
UDP định đường đi cho packet tại vị
trí xác định bằng cách sử dụng số hiệu
cổng được xác định trong header của
datagram, vậy số hiệu cổng là vô hạn
và không có quy định?
Có phải mọi cổng đầu
nên và có thể sử dụng
trong UDP?
Trong TCP, giả sử Sender
Cơ chế truyền lại các gói
Giữa TCP và UDP thì
gửi quá nhiều dữ liệu
tin đã mất của TCP có phải
giao thức nào nên sử
cho Receiver thì sao?
là tối ưu?
dụng hơn?
23
Giao thức HTTP
Giao thức truyền tải siêu văn bản là một trong năm giao thức chuẩn về mạng Internet
Liên hệ thông tin
Máy cung cấp dịch vụ (Web server)
Là giao thức Client/Server dùng
cho World Wide Web - WWW
Máy sử dụng dịch vụ (Web client)
HTTP là một giao thức ứng
dụng của bộ giao
thức TCP/IP
24
Giao thức HTTP
HTTP được viết bởi ngôn ngữ
Điểm mạnh của giao thức HTTP là
HTTP server không nhớ thông tin
HTML, từ lúc công bố đến nay đã
hỗ trợ cả hai cách : Kết nối liên tục
về client , vì thế HTTP được gọi là
trải qua nhiều phiên bản 1.x (1.0,
và kết nối không liên tục
Giao thức không trạng thái
1.1, 1.2,1.3) đến ngày nay là phiên
bản 2.x
25
Giao thức HTTP
Khi liên kết mới được tạo ra , phía client và server phải tạo
Server không đóng các liên kết TCP sau khi gửi
ra vùng đệm TCP ( buffer ) cũng như lưu trữ các lại các biến
thông điệp yêu cầu và trả lời
TCP
Khi gửi các thông điệp yêu cầu hay trả lời , đều tạo ra biến
TCP mới và biến cũ vẫn được lưu lại
Kết nối không liên tục
Kết nối liên
tục
Gánh nặng cho server khi có nhiều client cùng yêu cầu
cùng một lúc
Các thông điệp sau đó ( giữa cùng một client và server )
được gửi qua cùng một kết nối trước đó
Giảm thiểu được áp lực khá nhiều cho server