1
GIAO THỨC KIỂM SOÁT VÀ
ĐIỀU KHIỄN LỖI TRONG TCP/IP
(ICMP/IGMP)
NHÓM: LÊ ĐỨC ANH
VÕ XUÂN SƠN
GIỚI THIỆU GIAO THỨC TCP/IP
•Vàocuốinhững năm 1960 và đầu 1970
trung tâm nghiên cứucấpcaothuộcbộ
quốc phòng Mỹ (Department of Defense-
DoD) đượcgiaotráchnhiệm phát triển
mạng ARPANET bao gồmmạng củacác
tổ chức quân đội,cáctrường đạihọc, các
trung tâm nghiên cứuvàđược dùng để hỗ
trợ những dự án khoa họcvàquânđội
2
GIỚI THIỆU GIAO THỨC TCP/IP
• Đầunhững năm 1980 mộtbộ giao thức
mới được đưaralàmbộ giao thứcchuẩn
cho mạng ARPANET và các mạng của
DoD mang tên DARPA internet protocol
suit, và thường đượcgọilàbộ giao thức
TCP/IP (transmission control protocol/
internet protocol)
Kiếntrúcbộ giao thức TCP/IP
•Bộ giao thức TCP/IP gồmcó4 lớp:
-Lớp ứng dụng( Application Layer)
-Lớpgiaovận ( Transport Layer)
-Lớp internet (Internet Layer)
-Lớptruycậpmạng (Network Access Layer)
3
Các lớptương ứng giữaOSI và
TCP/IP
Application
Application
Presentation
Presentation
Transport
Transport
Network
Datalink
Physiccal
session
Application
Transport
Internet
Network access
Các giao thứctương ứng vớicác
lớptrongkiếntrúccủa TCP/IP
Application
Layer
SNMPSMTPTELNETFTP DNS
RIP
Transsmission
Control Protocol
User Datagram
Protocol
Transport
Layer
Internet Protocol
ICMP
ARP
Internet
Layer
Token Ring
FiberToken Bus
Ethernet
Network access
Layer
4
• FTP(Files transfer protocol):Giao thứctruyền
tệp cho phép người dùng lấyhoặcgửi file
đếnmột máy khác
• Telnet : Chương trình mô phỏng thiếtbịđầu
cuối cho phép ngườidùngtruycậpvàomáy
chủ từ một máy tính nào đótrênmạng
• SMTP(Simple mail transfer protocol): Một
giao thứcthư tín điệntử
• DNS (Domain Name Server) : Dịch vụ tên
miền cho phép nhậnramáytínhtừ mộttên
miềnthaychochuỗi địachỉ internet khó nhớ
• SNMP(Simple Simple Monitoring
protocol): Giao thứcquảntrị mạng cung
cấpnhững công cụ quảntrị mạng từ xa
• RIP(Routing Internet Protocol): Giao thức
tìm đường động
• ICMP(Internet Control message
protocol):Giao thứckiểm sóat và sửalỗi
• TCP (Transmission Control Protocol):Giao
thức định hướng kếtnối cung cấpdichvụ
truyền thông tin tin tưởng
5
• UDP(User Datagram protocol): Giao thức
truyền không kếtnốicungcấpdịch vụ
truyền không tin cậynhưng giảm chi phí
truyền
• IP(Internet Protocol):Giao thức internet
chuyển giao các gói tin qua các máy tính
đến đích
DATA
Application
DATA
TCP Header
Transport
DATA
TCP Header
IP Header
Internet
DATA
TCP Header
Ethernet
Trailer
IP Header
Ethernet
Header
Network
6
Giao thứckiểm soát và điềukhiển
lỗiICMP
•IP làmộtgiaothức best-effort để chuyển
gói tin tới đích. Nó không hề có cơ chế
nào để xác nhậndữ liệu đã đượcchuyển
tới đích hay chưa.
•Dữ liệucóthể gặpsự cố trên đường đido
các nguyên nhân sau : phầncứng bị hỏng
cấuhìnhsaihoặc thông tin định tuyến
không đúng.
CÊu tróc gãi tin IP
VERS
VERS
SERVICE TYPE
SERVICE TYPE
HLEN
HLEN
TOTAL LENGTH
TOTAL LENGTH
IDENTIFICATION
IDENTIFICATION
FLAG
FLAG
FRAGMENT OFFSET
FRAGMENT OFFSET
TIME TO LIVE
TIME TO LIVE
PROTOCOL
PROTOCOL
HEADER CHECK SUM
HEADER CHECK SUM
SOURCE IP ADDRESS
SOURCE IP ADDRESS
DESTINATION IP ADDRESS
DESTINATION IP ADDRESS
IP OPTION (IF ANY)
IP OPTION (IF ANY)
PADDING
PADDING
DATA
DATA
* * *
* * *
DATA
DATA
7
•IP sử dụng giao thức ICMP (internet
control message protocol) để thông báo
cho máy nguồnbiếtlàđãcósự cố xảyra
trong đường truyềndữ liệu.
•Am hiểuvề ICMP là mộtphầnrất quan
trong giúp bạnxử lí sự cố mạng và hiểu
đượcmộtcáchđầy đủ về mạng IP.
•ICMP làmộtgiaothức thông báo lỗicủa
IP khi quá trình truyềnxảyralỗithìICMP
đượcsử dụng để thông báo lỗi cho người
gửi.
• Khi các thông điệpICMP gặpsự cố ICMP
sẽ không tạo thêm các thông điệp báo lỗi
cho chính nó
8
Truyền thông điệpICMP
• Thông điệpICMP được đóng gói giống như các
dữ liệu khác khi truyền đibằng IP
9
Điềukiện để thựchiện thông tin
liên lạc được
•Thiếtbị gửivàthiếtbị nhậnphải đượccấu
hình đúng bộ giao thức TCP/IP.
• Khai báo default gateway nếuthiếtbị cần
truyềndữ liệu ra ngoài phạmvi cụcbộ.
•Cácthiếtbị trunggianphảithựchiện định
tuyến đúng để chuyển gói tin từ nguồn
đến đích (router)
10
Lệnh Ping
• Đượcsử dụng để kiểmtraxemđịachỉ
đích có đến được hay không
•ICMP cóthể gửi thông điệp echo request
đếnmáyđích nếunhận đượcmáyđích sẽ
gửilại thông điệp echo reply cho máy
nguồn
11
Phát hiện đường truyền quá giới
hạn
• Gói giữ liệu khi truyền đitrênmạng có thể
truyền lòng vòng không bao giờđến đích
điều này có thể xảy ra khi thông tin định
tuyếnlàsai. Vídụ : 2 router cứ gửimộtgói
dữ liệu cho nhau vì router này nghĩ router
kialàtrạmkế tiếp đến đích.
•Giaothức định tuyếncóqui định giớihạn
để xác định mạng đích không đến được.
Ví dụ RIP có số hop giớihạnlà15
12
•Mỗi gói dữ liệu đềucómộtgiátrị TTL(time
to live) mỗi router sau khi xử lí gói dữ liệu
đềugiảmgiátrị củaTTL đi1 khigiátrị
TTL = 0 thì router sẽ hủybỏ gói dữ liệu đó.
ICMP sẽ gửi thông điệp “time exceeded”
để thông báo cho máy nguồnTTL đãbị
hếtthờihạn.
13
Thông điệpECHO
• Thông điệpICMP gồmcó3 phần:
– Type
–Code
– Checksum
• Type : cho biếtloại thông điệp nào củaICMP
đượcgửi
• Code : cho biếtchi tiếthơnvề thông điệpICMP
• Checksum : đựợcsử dụng cho kiểmtralỗicho
dữ liệu
14
Thông điệp Destination
Unreachable
•Khidữ liệu không đến được đích thì ICMP
sẽ gửi thông điệp destination unreachable
cho máy nguồn để thông báo là có dữ liệu
không chuyển được đến đích.
• Điều quan trọng khi xử lí sự cố mạng IP là
phảihiểu được các nguyên nhân khác
nhau tạo nên thông điệpICMP
“destination unreachable”
15
Thông điệp điềukhiểncủa TCP/IP
• Không giống như thông điệp báo lỗi thông
điệp điềukhiển không phải đượctạo ra do
mấtdữ liệu hay do lỗi quá trình truyền
• Thông điệp điềukhiểndùngđể thông báo
cho host biếtvề tình trạng nghẽnmạch
trên mạng hay có một gateway tốthơn
dẫn đến đích
16
• Thông điệp điềukhiển được đóng gói
trong gói IP, ICMP sử dụng gói IP để
truyền thông điệptrênmạng.
•Mộtsố loại thông điệp điềukhiểnthường
gặp
17
Thông điệp ICMP redirect / change
request
• Là thông điệpthường gặpnhất được
tạorabởi gateway mà thông thường nó
chính là router
•Tấtcả các host khi muốn thông tin liên
lạcvớicácmạng IP đềuphải đượccấu
hình Default gateway
• R1 chuyển gói tin đi
và gửimột thông
điệpICMP
redirect/change
request tới host H
để thông báo host
H nên sử dụng R2
làm gateway cho tất
cả gói tin đếnmạng
10.0.0.0/8
18
• Default gateway chỉ gửi thông điệpICMP
redirect/change request khi:
–Cổng router nhân gói dữ liệuvàocũngchínhlàcổng
chuyểngóidữ liệu đi
– Địachỉ IP của máy nguồnlàcùngmộtmạng/subnet
với địachỉ IP củatrạmkế tiếp
–Góidữ liệunhận được không phảigửingượclạimáy
nguồn
–Con dường mà router thựchiện thông báo cho host
không phảilàđường mặc định của router và cũng
không phảicủa ICMP redirect khác
–Router phải đượccấuhìnhđể thực hiên redirect
Cấu trúc ICMP redirect/change
request
19
Đồng bộđồng hồ và ước tính thời
gian truyềndữ liệu
•Bộ giao thức TCP/IP cho phép hệ thống
mạng này kếtnốivớihệ thống mạng khác.
Mỗimộthệ thống mạng lạicómộtcơ chế
đồng bộđồng hồ riêng. Do đó, một host ở
mạng khác sử dụng phầnmềmcần đồng
bộ thờigianđể thựchiện liên lạccóthể
gặprắcrối.
• Thông điệp ICMP timestamp đượcthiếtkế
để gi
ải quyếtvấn đề này.
20
•Tấtcả các thông điệp ICMP timestamp
đềucóđầy đủ 3 thông số:
–Thời điểmgửi gói request
–Thời điểmnhận request
–Thời điểmgửi gói reply
•Dựa vào 3 thông số này host có thểước
lượng đượckhoảng thờigiandữ liệu
truyềntrênmạng từ máy nguồn đếnmáy
đích.
Thông điệp information request và
reply
• Thông điệp ICMP information request và
reply cho phép host xác định địachỉ mạng
của nó.
•Loại thông điệp này củaICMP đã quá lỗi
thời. Hiện nay các giao thức BOOTP và
DHCP đượcsử dụng nhiều để cung cấp
địachỉ mạng cho host.
21
Thông điệp Address Mask
•Nếu host không biết subnet mask nó có
thể gửi thông điệp Address Mask cho
router củanó
• Khi router nhận đượcyêucầunày,nósẽ
gửi thông điệp Address Mask reply để trả
lời
Thông điệp tìm router
•Khimột host chưa đượccấuhìnhdefault
gateway nó có thể tìm default gateway
bằng thông điệp router discovery
22
•Host gửi thông điệp router solicitation cho
tấtcả các router
• Khi nhận được thông điệptrênnếu router
có hỗ trợ qúa trình này sẽ trả lờibằng
thông điệp router advertisement
Thông điệp báo nghẽnvàđiều
khiểnluồng dữ liệu
• Gói tin sẽ bị hủybỏ mạng bị nghẽnqúamức
• Thông điệp source-quence giúp giảmlượng dữ
liệubị hủybỏ
• Khi nhận được thông điệp, máy gửisẽ giảmtốc
độ gửidữ liệu
23
Giao thức IGMP(Internet Group
Management Protocol)
• IGMP( internet group management protocol) là
mộtgiaothức truyền thông đượcsử dụng để
quản lí các thành viên của các nhóm internet
protocol multicate.
•IGMP đượcgửigiữa IP host và multi router để
thiếtlập các thành viên nhóm multicate.
•IGMP cóthểđượcsử dụng cho games online,
video online và cho phép sử dụng hiệuquả
nguồn tài nguyên.
Các phiên bảnIGMP
• Các phiên bảncủaIGMP gồm:
– IGMP version 0
– IGMP version 1
– IGMP version 2
– IGMP version 3
24
IGMP version 0
•IGMP được dùng giữa IP hosts và những
multicast agents ngay cạnh chúng để giúp
cho viêc đinh vi đia chỉ cac nhóm tạmthời
và hỗ trợ việcthêmhoặcbớtnhững thành
viên của nhóm
CấutrúccủaIGMP v0
25
• Code :
–xácđịnh host group mớitạo ra là public hay
private trong thông điệp Create Group
Request
Code Description
0 Public.
1 Private
– Trong thông điệp Reply nó cho biếtkếtquả
củayêucầu:
• 0 Request granted
• 1 Request denied, no resources
• 2 Request denied, invalid code
• 3 Request denied, invalid group address
• 4 Request denied, invalid access key
• 5-255 Request pending, retry in this many seconds