Giới thiệu Giao thức IP Định tuyến Biên soạn : Lê Minh LOGO Chuyển các segment từ máy tính gởi tới máy tính nhận Các giao thức tầng mạng hoạt động trên gởi/nhận và các thiết bị mạng trun
Trang 1Giới thiệu Giao thức IP Định tuyến
Biên soạn : Lê Minh
LOGO
Chuyển các segment
từ máy tính gởi tới
máy tính nhận
Các giao thức tầng
mạng hoạt động trên
gởi/nhận và các thiết
bị mạng trung gian (
router)
Giới thiệu
I
network data link physical
network data link physical
network data link physical
network data link physical
network data link physical
network data link physical
network data link physical
network data link physical
application transport network data link physical
application transport network data link physical
Biên soạn : Lê Minh
Trang 2Máy tính gởi: nhận
các segment từ tầng
giao vận, đóng gói
thành datagram
Máy tính nhận :
chuyển các segment
lên tầng giao vận
Router: kiểm tra và
chuyển tiếp các
datagram
Giới thiệu
I
network data link physical
network data link physical
network data link physical
network data link physical
network data link physical
network data link physical
network data link physical
network data link physical
application transport network data link physical
application transport network data link physical
Biên soạn : Lê Minh
LOGO
Chức năng cơ bản của tầng mạng :
Định tuyến (routing): xác định đường đi cho các gói tin để có thể đi từ nơi gởi tới nơi nhận
• Chạy các thuật toán định tuyến ở các router để xác định “đường đi”
Chuyển tiếp (forwarding): chuyển các gói tin
từ ngõ vào của router đến ngõ ra tương ứng
của nó Giới thiệu
I
Trang 3Các giao thức của tầng mạng:
Giới thiệu
I
forwarding table
Giao thức định tuyến
•Lựa chọn đường đi
•RIP, OSPF, BGP
Giao thức IP
•Định địa chỉ IP
•Định dạng gói tin datagram
•Nguyên tắc xử lý datagram Giao thức ICMP
•Thông báo lỗi
•Trao đổi thông tin Transport layer: TCP, UDP
Link layer physical layer
Network
layer
Biên soạn : Lê Minh
LOGO
Đặc điểm :
Là giao thức không hướng kết nối
Là giao thức không tin cậy
Quy định:
Định dạng gói tin của tầng mạng (IP datagram)
Cách thức đánh địa chỉ IP cho hệ thống
Cơ chế phân mảnh và hợp nhất các datagram
Giao thức IP
II
Biên soạn : Lê Minh
Trang 4Định dạng IP datagram
1
32 bits
Dữ liệu (độ lớn không cố định, Thường là một TCP hay UDP segment)
16-bit identifier
Internet checksum
time to live
32 bit source IP address
Phiên bản
Giao thức IP
Chiều dài header
(bytes)
Thời gian sống
Dùng đề Phân mảnh/
hợp nhất gói tin
Chiều dài cả datagram (bytes)
Kiểu giao thức
của tầng trên
head.
len
type of service Kiểu dữ liệu
flgs fragment offset upper
layer
32 bit destination IP address Options (if any) Tùy chọn
Biên soạn : Lê Minh
LOGO
Định dạng IP datagram
1
32 bits
Dữ liệu (độ lớn không cố định, Thường là một TCP hay UDP segment)
16-bit identifier
Internet checksum
time to live
32 bit source IP address
head.
len
type of service flgs fragment offset upper
layer
32 bit destination IP address Options (if any)
Trang 5Mỗi đường truyền có
MTU khác nhau: độ
dài lớn nhất của
frame dữ liệu
Các IP datagram lớn
được chia nhỏ bên
trong mạng:
datagram nhỏ hơn
datagram ở đích cuối cùng
Phân mảnh và hợp nhất các datagram
2
Biên soạn : Lê Minh
LOGO
Ví dụ: IP datagram có chiều dài 4000 byte
trên đường truyền có MTU 1500 byte
Datagram này được chia ra thành các datagram nhỏ hơn:
Phân mảnh và hợp nhất các datagram
2
ID
=x
offset
=0
fragflag
=0
length
=4000
ID
=x
offset
=0
fragflag
=1
length
=1500
ID
=x
offset
=1480
fragflag
=1
length
=1500 ID
=x
offset
=2960
fragflag
=0
length
=1040
Biên soạn : Lê Minh
Trang 6Địa chỉ IP: 1 con số
32 bit dùng để định
danh cho cổng
(interface) của các
thiết bị trên mạng
Cổng : kết nối các
thiết bị với đường
truyền vật lý
Địa chỉ IP V.4
3
223.1.1.1
223.1.1.2
223.1.1.3
223.1.1.4 223.1.2.9
223.1.2.2 223.1.2.1
223.1.3.2 223.1.3.1
223.1.3.27
Biên soạn : Lê Minh
LOGO
Thành phần của địa chỉ IP v.4:
Cách viết: 32 bit được chia thành 4 octet, mỗi octet cách nhau một dấu chấm Thường được
viết dạng thập phân xxx.xxx.xxx.xxx
Gồm 3 thành phần chính:
• Class bit: bit nhận dạng lớp
Địa chỉ IP v.4
3
Trang 7Phân lớp địa chỉ IPv4: chia thành 5 lớp
A,B,C,D và E
Lớp A:
Lớp B:
Lớp C:
Lớp D:
Lớp E:
Địa chỉ IP v.4
3
0 Network(7 bits) Host (24 bits)
1 Network(
14 bits)
Host (16bits) 0
110 Network(
21 bits)
Host (8bits)
1110 Multicast address
1111 Future use addresses
Biên soạn : Lê Minh
LOGO
Nguyên tắc: không dùng các IP có tất cả các
bit của phần host id bằng 1 và bằng 0 để đánh
địa chỉ
Lớp A:
Net id: phạm vi 1 - 126 Host id: phạm vi 0.0.1 – 255.255.254
Ví dụ: 110.10.3.5
Số lượng mạng lớp A? Số lượng máy trên mỗi
mạng?
Địa chỉ IP v.4
3
Biên soạn : Lê Minh
Trang 8Lớp B:
Net id: phạm vi 128.0 – 191.255 Host id: phạm vi 0.1 – 255.254
Ví dụ: 151.2.255.4
• 1 IP khác cùng địa chỉ mạng với IP trên?
Số lượng mạng lớp B? Số lượng máy trên mỗi
mạng?
Địa chỉ IP v.4
3
Biên soạn : Lê Minh
LOGO
Lớp C:
Net id: phạm vi 192.0.0 – 223.255.255 Host id: phạm vi 1 – 254
Ví dụ: 203.0.1.254
• 1 IP khác cùng địa chỉ mạng với IP trên?
Số lượng mạng lớp C? Số lượng máy trên mỗi
mạng?
Địa chỉ IP v.4
3
Trang 9Các thiết bị (máy tính, router…) xác định địa
chỉ mạng và địa chỉ máy như thế nào?
Mặt nạ mạng (net mask):
Vd:
• IP: 154.210.2.65
• net mask: 255.255.0.0
Quy định viết địa chỉ: IP/số bit 1 của mask
Vd: 154.210.2.65/16
Địa chỉ IP v.4
3
Biên soạn : Lê Minh
LOGO
Mạng con (subnet):
Lấy thêm một số bit của phần host id làm net
id (subnet id)
Xác định bằng mặt nạ mạng con (subnet mask)
• Vd: 223.2.5.129/ 26
mạng con (subnet mask)?
Địa chỉ IP V.4
3
Biên soạn : Lê Minh
Trang 10Mạng con (subnet):
Số lượng mạng con tạo ra được từ 1 địa chỉ
mạng gốc : (2 n ) mạng
• n : số bit lấy từ phần host id ban đầu
• Vd:
– địa chỉ mạng lớp C gốc 223.2.5.0/24, lấy 2 bit của phần host id để chia subnet.
– Số lượng mạng con có thể thành lập từ địa chỉ mạng
này là 2 2 = 4 mạng
Địa chỉ IP V.4
3
Biên soạn : Lê Minh
LOGO
Một số địa chỉ IP đặc biệt:
Địa chỉ loopback: 127.0.0.1
Địa chỉ mạng : địa chỉ có tất cả các bit của
phần host id bằng 0
Địa chỉ quảng bá (broadcast) địa chỉ có tất cả các bit của phần host id bằng 1
255.255.255.255 : địa chỉ quảng bá cục bộ (local broadcast)
Địa chỉ IP v.4
3
Trang 11IP riêng (private) và IP chung (puplic):
IP riêng: dành riêng cho các mạng nội bộ
• Mạng riêng lớp A: 10.0.0.0 /8
• Mạng riêng lớp B: 172.16.0.0 /12
• Mạng riêng lớp C: 192.168.0.0 /16
IP chung: được quản lý bởi tổ chức InterNic
Địa chỉ IP v.4
3
Biên soạn : Lê Minh
LOGO
Mục tiêu: xác định đường đi “tốt nhất” trên
mạng từ nút gởi đến nút nhận
Việc định tuyến được thực hiện bởi các router
Chạy các thuật toán định tuyến để xác định
đường đi Mỗi router sẽ có 1 bảng định tuyến (routing table)
Định tuyến
III
u
y x
w v
z
2 2
1
1 2
5 3
5
Biên soạn : Lê Minh
Trang 12Dùng đồ thị để xây dựng các thuật toán định
tuyến
Nút : các router
Đường liên kết (link): kết nối trực tiếp các nút
với nhau
Định tuyến
III
u
y x
w v
z
2 2
1
1 2
5 3
5
Biên soạn : Lê Minh
LOGO
Chi phí đường liên kết (cost of link, ký hiệu c(a, b) ): phụ thuộc vào băng thông, mức độ tắt
nghẽn, thời gian trễ …
• Ví dụ: c(u,w) = 5 Chi phí đường đi (cost of path) : tổng chi phí
của các đường liên kết từ nguồn tới đích
Định tuyến : xác định đường đi có tổng chi phí
Định tuyến
III
u
y x
w v
z
2 2
1
1 2
5 3
5
Trang 13Theo quy mô: định tuyến toàn cục (global
routing) hay phân tán (decentralized routing)
Toàn cục:
• Các router phải có đầy đủ thông tin về topology
Phân tán:
• Router chỉ biết các thông tin về router láng
Phân loại thuật toán định tuyến
1
Biên soạn : Lê Minh
LOGO
Theo tính chất: định tuyến tĩnh (static
routing) hay định tuyến động (dynamic
routing)
Tĩnh :
Động :
• Thông số định tuyến thay đổi nhanh chóng theo chu kỳ hoặc theo sự thay đổi cấu trúc đường
truyền
Phân loại thuật toán định tuyến
1
Biên soạn : Lê Minh
Trang 14Bảng định tuyến (routing table) của mỗi
router trên hệ thống được thiết lập bởi người
quản trị
Không tự động cập nhật bảng định tuyến khi
có sự thay đổi về cấu trúc mạng
Thiết lập bảng định tuyến cho router: dùng
câu lệnh
ip route địa chỉ mạng đích netmask exit interface
ip route địa chỉ mạng đích netmask next-hoop interface address
Định tuyến tĩnh
2
Biên soạn : Lê Minh
LOGO
Ví dụ: cho hệ thống mạng
Định tuyến tĩnh cho các router??
Kết quả : mophong\static_routing.pkt Định tuyến tĩnh
2
Trang 15Thuật toán Dijkstra
Tất cả các nút mạng đều biết được topo mạng
và chi chí các đường liên kết của cả mạng Tính toán chi phí đường đi thấp nhất từ một nút (nguồn) đến tất cả các nút còn lại
Sau một vài bước tính toán sẽ xác định được chi phí đường đi thấp nhất tới nút đích
Ký hiệu:
• c(x,y) : chi phí đường liên kết từ nút x tới nút y, = ∞ nếu nút y không kết nối trực tiếp tới x
• D(v): chi phí đường đi hiện tại từ nguồn tới v
• p(v): nút kế cận trước v trên đường đi tới v
Thuật toán định tuyến Link state
3
Biên soạn : Lê Minh
LOGO
Hoạt động :
Thuật toán định tuyến Link state
3
khởi tạo:
N' = {u}
for( tất cả các nút v)
if (v kết nối trực tiếp với u ) then ( D(v) = c(u,v) ) else D(v) = ∞
Lặp :
Tìm nút w không ở trong N' có D(w) nhỏ nhất thêm w vào N'
Cập nhật D(v) cho tất cả các nút v kết nối trực tiếp tới w và không ở trong N' :
D(v) = min( D(v), D(w) + c(w,v) )
dừng lại khi tất cả các nút đều có trong N'
Biên soạn : Lê Minh
Trang 16Ví dụ:
Thuật toán định tuyến Link state
3
u
y x
w v
z
2 2
1
1 2
5 3
5
Bước
0
1
2
3
4
5
N' u ux uxy uxyv
uxyvw
uxyvwz
D(v),p(v) 2,u 2,u 2,u
D(w),p(w) 5,u 4,x 3,y 3,y
D(x),p(x) 1,u
D(y),p(y)
∞ 2,x
D(z),p(z)
∞
∞
4,y 4,y 4,y
Biên soạn : Lê Minh
LOGO
Ý tưởng:
Gọi d v (z): chi phí đường
c(u,v) : chi phí đường liên kết từ u tới nút v kế
Khi đó:
d u (z) = min{c(u,v)+ d v (z) ,c(u,x) + d x (z),
c(v,w) + d w (z)}
= min{ 2 + 5, 1 + 3, 5 + 3 } = 4
Thuật toán định tuyến Distance Vector
4
u
y x
w v
z
2 2
1
1 2
5 3
5
Trang 17Thuật toán D-V:
• Biết chi phí đường link (c ) từ nó tới các nút kế cận
• Biết chi phí đường đi (d )
nhỏ nhất từ các nút kế
cận tới nút đích
đường đi nhỏ nhất từ nó
tới đích
Mỗi nút sẽ gởi thông số chi phí đường đi nhỏ
các nút kế cận
Việc gởi ( quảng bá) thông số được tiến hành theo chu kỳ
Thuật toán định tuyến Distance Vector
4
u
y x
w v
z
2 2
1
1 2
5 3
5
Biên soạn : Lê Minh
LOGO
Ví dụ:
Thuật toán định tuyến Distance Vector
4
1 2 7
y
Biên soạn : Lê Minh
Trang 18Chia các router thành các vùng nhỏ, gọi là các
miền tự quản (AS: Autonomous System)
Các router trong cùng một miền AS chạy cùng
một thuật toán định tuyến nội miền ( intra-AS
routing protocol)
Các router trong các miền AS khác nhau có
thể chạy các thuật toán định tuyến khác nhau
Định tuyến phân cấp
5
3b
1d
3a
1c
2a AS3
AS1
AS2
1a
2c 2b 1b
3c
Biên soạn : Lê Minh
LOGO
Gateway Router : nối các miền AS lại với
nhau
Chạy các thuật toán:
(Intra-AS routing)
(Inter-AS routing)
Định tuyến phân cấp
5
Intra-AS Routing algorithm
Inter-AS Routing algorithm
Routing table
3b
1d
3a
1c
2a AS3
AS1
AS2
1a
2c 2b 1b
3c
Gateway Router
Trang 19Các giao thức định tuyến nội miền : RIP,
OSPF, EIGRP
Giao thức định tuyến liên miền : BGP
RIP (Routing Information Protocol)
Dùng thuật toán Distance Vector Chi phí đường đi : số lượng router sẽ phải qua
để tới đích (hoop-count) Trao đổi bảng định tuyến theo chu kỳ 30s
OSPF (Open Shortest Path First)
Dùng thuật toán định tuyến Link State
Giao thức định tuyến động
6
Biên soạn : Lê Minh