lOMoARcPSD| 61601299
1
Nội dung
Autonomous System
Khái niệm IGP & EGP
Roung nh & Roung động
RIP
OSPF
TRƯỜNG CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
School of Information and Communication Technology
2
lOMoARcPSD| 61601299
2
Autonomous System
Khái niệm quản lý nhưng ảnh hưởng đến hành
School of Information and Communication Technology
3
3
TNG NG NGH THÔNG TIN VÀ TRUYN THÔNG
[1]
https://en.wikipedia.org/wiki/Autonomous_system_(Internet
)
lOMoARcPSD| 61601299
4
Định tuyến nh & định tuyến động
Tĩnh (stac roung): các đường định tuyến (giữa các mạng nghiệp v)
được xác định sẵn (theo qui hoạch mạng tổng thể của AS) và được
nhân viên quản trị mạng cấu hình sẵn trong các bảng roung.
Động (dynamic roung): các thuật toán cài đặt trong router phØp cÆc
chúng liên lạc với nhau để tự động phát hiện và duy trì thông n v
các đường định tuyến.
Định tuyến động có thđược áp dụng bên trong một AS hoặc giữa các
AS (cần chú ý vấn đề bảo mật)
TRƯỜNG CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
School of Information and Communication Technology
5
Tier 1 Networks =
cấu
trúc lõi
của
Internet,
gồm
các
backbone router
mạnh
,
kết
nối
nhau
bằng
ường
truyền
tốc
rất
cao &
ph
sóng toàn
cầu
.
Định
nghĩa
(theo Wikipedia
1
):
một
mạng
IP mà
th
kết
nối
với
tất
cả
các
mạng
khác trên Internet.
Mỗi
Tier Network th
ường
ược
ăng
ký là
một
AS
ược
vận
hành
bởi
một
công ty
kết
nối
mạng
.
Business
với
Internet Traffic (mua/thuê
kết
nối
)
Liên
kết
Tier 1 khác (peering)
mở
rộng
vùng
ph
sóng.
Liên
kết
peering ở mức
Tier 1
dựa
trên Peering Policy và Default-free.
Kết
nối
xuống
Tier 2
bán buôn
” traffic. Tier 2 tiếp
tục
kết
nối
xuống
các Tier 3 (th
ường
là ISP)
down link/up link
ISP
cuối
cùng bán
ường
truyền
kết
nối
Internet cho end-user
EGP: BGP
Kết
nối
các tier network (AS)
Kết
hợp
với
các IGP (RIP, OSPF, v.v..)
xây
dựng
các
bảng
routing
ầy
cho Internet
IGP & EGP
4
[1]
https://en.wikipedia.org/wiki/Tier_1_network
Các
BGP router
kết nối
multi AS
tạo nên mạng Internet toàn cầu
BGP
BGP
AS
AS
lOMoARcPSD| 61601299
5
6
lOMoARcPSD| 61601299
RIP Message Format
7
RIP
1
Introducon
Phương pháp véc tơ khoảng cách (distance vector): số đo khoảng cách từ vị trí của mình đến mỗi điểm đến
(mạng đích) – số router trung gian trên đường truyền (giống khái niệm số đo TTL trong gói IP)
Router sử dụng cột Metric trong bảng roung để thhiện khoảng cách để đi từ n tại đến mạng đích tương
ng
Khoảng cách càng ngắn
đường đi càng nhanh (tương đối)
Giải thuật roung: m thấy nhiều đường đi có
th
chọn đường đi ngắn nhất (giá trị Metric bé nhất)
Router được cài đặt giao thức RIP để tự xây dựng và duy trì (cập nhật) bảng roung với thông số Metric
Các router trao đổi thông n theo kiểu lan truyền, mỗi router chỉ có thể kết nối với router láng giềng
(neighbor) – có kế nối mạng trực ếp
TRƯỜNG CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
School of Information and Communication Technology
router lÆng
Route Table
Entries (RTEs)
lOMoARcPSD| 61601299
[1] https://en.wikipedia.org/wiki/Routing_Information_Protocol 8
8
ICMP Router Discovery Protocol
ICMP Internet Router Discovery Protocol (IRDP) [1]
Hỗ trợ các router (và các host) phát hiện router kết nối trực
tiếp
(neighbor)
Sử dụng 2 thông iệp ICMP [2]:
ICMP Router Solicitation:
type = 10
Gửi từ host ể tìm router
ICMP Router Advertisement
type = 9
Gửi từ router ể thông báo sự có mặt của mình
Gửi i âu:
Solicitation: Multicast/Broadcast Advertisement:
Multicast/Broadcast/Unicast
Gửi khi nào:
Khi bắt ầu kết nối
Theo chu kỳ refresh dữ liệu
Sử dụng iptables xem log các gói tin ICMP khi router lin lc vi nhau bng RIP
[1]
https://en.wikipedia.org/wiki/ICMP_Router_Discovery_Protocol
[2] https://tools.ietf.org/html/rfc1256
9
Sử dụng
mulcast
224.0.0.9
Source Address: An IP address belonging to the interface
from which this message is sent, or 0.
Destination Address: The configured SolicitationAddress.
Time-to-Live: 1 if the Destination Address is an IP multicast
address; at least 1 otherwise.
IP Fields:
Source Address: An IP address belonging to the interface
from which this message is sent.
Destination Address: The configured AdvertisementAddress
or the IP address of a neighboring host.
Time-to-Live : 1 if the Destination Address is an IP multicast
address; at least 1 otherwise.
9
IP Fields:
lOMoARcPSD| 61601299
10
Hoạt động của RIP
11
Wikipedia:
https://en.wikipedia.org/wiki/Multicast_address
lOMoARcPSD| 61601299
Router insight: Control & (Data) Forward plane
12
12
lOMoARcPSD| 61601299
RIP Demonstration
R1: tự ộng khởi tạo routing table:
net1, direct, 0
net2, direct, 0
13
13
14
RIP Demonstration
R1: tự ộng khởi tạo routing table:
net1, direct, 0
net2, direct, 0
R1
R2:
RTE: net1, direct, 0
(+) net1, R1, 0+1
RTE: net2, direct, 0
(-) net2, direct,0
R1
R2
Network #1
FDDI
backbone
network
R4
R6
R3
R5
Network #2
Network #n
Rn
net1
direct
0
net2
d
0
irect
R1
R2
Network #1
FDDI
backbone
network
R4
R6
R3
R5
Network #2
Network #n
Rn
direct
0
net1
net2
d
irect
0
lOMoARcPSD| 61601299
RIP Demonstration
14
R1: tự ộng khởi tạo routing table:
net1, direct, 0
net2, direct, 0
R1 R2:
RTE: net1, direct, 0 (+) net1, R1, 0+1
RTE: net2, direct, 0 (-) net2, direct,0
R2 R4:
RTE: net1, R1, 1 (+) net1, R2, 1+1
RTE: net2, direct, 0 (+) net2, R2,0+1
15
15
R1
R2
Network #1
FDDI
backbone
network
R4
R6
R3
R5
Network #2
Network #n
Rn
0
direct
net1
0
irect
d
net2
net2
direct
0
net1
R1
1
R2
2
net1
R2
1
net2
lOMoARcPSD| 61601299
RIP Demonstration
16
16
R1: tự ộng khởi tạo routing table:
net1, direct, 0
net2, direct, 0
R1 R2:
RTE: net1, direct, 0 (+) net1, R1, 0+1
RTE: net2, direct, 0 (-) net2, direct, 0
R2 R4:
RTE: net1, R1, 1 (+) net1, R2, 1+1 RTE: net2, direct, 0 (+) net2,
R2, 0+1
R4 R6:
RTE: net1, R2, 2 (+) net1, R4, 2+1
RTE: net2, R2, 1 (+) net2, R4, 1+1
R6 Rn:
RTE: net1, R4, 3 (+) net1, R6, 3+1
RTE: net2, R4, 2 (+) net2, R6, 2+1
17
17
lOMoARcPSD| 61601299
RIP Demonstration
18
18
R1: tự ộng khởi tạo routing table:
net1, direct, 0
net2, direct, 0
R1 R2:
RTE: net1, direct, 0 (+) net1, R1, 0+1
RTE: net2, direct, 0 (-) net2, direct, 0
R2 R4:
RTE: net1, R1, 1 (+) net1, R2, 1+1 RTE: net2, direct, 0 (+) net2,
R2, 0+1
R4 R6:
RTE: net1, R2, 2 (+) net1, R4, 2+1
RTE: net2, R2, 1 (+) net2, R4, 1+1
R6 Rn:
RTE: net1, R4, 3 (+) net1, R6, 3+1
RTE: net2, R4, 2 (+) net2, R6, 2+1
R2 R3:
RTE: net1, R1, 1 (+) net1, R2, 1+1 RTE: net2, direct, 0 (+) net2,
R2, 0+1
R3 R5:
RTE: net1, R2, 2 (+) net1, R3, 2+1
RTE: net2, R2, 1 (+) net2, R3, 1+1
19
19
lOMoARcPSD| 61601299
RIP Demonstration
RTE: net1, R3, 3 (+) net1, R5, 3+1
RTE: net2, R3, 2 (+) net2, R5, 2+1
20
20
lOMoARcPSD| 61601299
RIP Demonstration
R1: tự ộng khởi tạo routing table:
net1, direct, 0
net2, direct, 0
R1 R2:
RTE: net1, direct, 0 (+) net1, R1, 0+1
RTE: net2, direct, 0 (-) net2, direct, 0
R2 R4:
RTE: net1, R1, 1 (+) net1, R2, 1+1
RTE: net2, direct, 0 (+) net2, R2,
0+1
R4 R6:
RTE: net1, R2, 2 (+) net1, R4, 2+1
RTE: net2, R2, 1 (+) net2, R4, 1+1
R6 Rn:
RTE: net1, R4, 3 (+) net1, R6, 3+1
RTE: net2, R4, 2 (+) net2, R6, 2+1
R2 R3:
RTE: net1, R1, 1 (+) net1, R2, 1+1
RTE: net2, direct, 0 (+) net2, R2,
0+1
R3 R5:
RTE: net1, R2, 2 (+) net1, R3, 2+1
RTE: net2, R2, 1 (+) net2, R3, 1+1
R5 R6:
RTE: net1, R3, 3 (+) net1, R5, 3+1
RTE: net2, R3, 2 (+) net2, R5, 2+1
21
21
lOMoARcPSD| 61601299
RIP by FRR
22
Loop Routing & Split
Horizon
Rn:
netn, direct, 0
net1, R6, 4
net2, R6, 3
R6 Rn:
RTE: netn, direct, 0 (+) netn, R6, 0+1
RTE: net1, R6, 4 (?) net1, Rn, 4+1
RTE: net2, R6, 3 (?) net2, Rn, 3+1
Khả năng có thể có một kết nối khác từ Rn ến network
#1 (mà không phải i qua R6), và cần duy trì nhiều ường i
ể backup khi có sự cố mạng R6 chấp nhận 2 RTE i ến
net1 & net2 ược gửi ến từ Rn Tim ẩn vòng lặp
routing giữa Rn & R6:
Gói tin cần gửi từ Rn ến net1 hoặc net2
Rn R6
Lựa chọn Metric bé nhất, R6 R4
Kết ni ến R4 và R5 có lỗi, R6 cập nhật trạng thái còn duy nhất các RTE net1 & net2 i qua Rn loop routing giữa R6 & Rn
Giải pháp “Split Horizon” [1]: không gửi RTE mà ã nhận từ chính router láng giềng này
[1] https://en.wikipedia.org/wiki/Split_horizon_route_advertisement 23 23
TRƯỜNG CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
School of Information and Communication Technology
LAN1: 192.168.1.0/24
R2
LAN2: 192.168.2.0/24
LAN3: 192.168.3.0/24
R3
192.168.1.2
192.168.2.1
192.168.2.2
192.168.3.1
LAN0: 192.168.0.0/24
R1
192.168.0.1
192.168.1.1
Serial:
10.0.0.0/24
10.0.0.1
10.0.0.2
LAN4: 192.168.4.0/24
R4
192.168.4.1
192.168.3.2
R4# show ip route
R>* 192.168.0.0/24 [120/4] via 192.168.3.1, enp0s3, 00:01:28
R>* 192.168.1.0/24 [120/3] via 192.168.3.1, enp0s3, 00:01:28
R>* 192.168.2.0/24 [120/2] via 192.168.3.1, enp0s3, 00:01:28
C>* 192.168.3.0/24 is directly connected, enp0s3, 00:01:50
C>* 192.168.4.0/24 is directly connected, enp0s8, 00:01:50
R4:~$ tracepath -n 192.168.0.1
1?: [LOCALHOST] pmtu 1500
1: 192.168.3.1 2.228ms
1: 192.168.3.1 0.576ms
2: 192.168.2.1 1.475ms
3: 192.168.0.1 3.888ms reached
Resume: pmtu 1500 hops 3 back 3
R4# show ip route
R>* 10.0.0.0/24 [120/2] via 192.168.3.1, enp0s3, 00:01:43
R>* 192.168.0.0/24 [120/3] via 192.168.3.1, enp0s3, 00:01:38
R>* 192.168.1.0/24 [120/3] via 192.168.3.1, enp0s3, 00:25:33
R>* 192.168.2.0/24 [120/2] via 192.168.3.1, enp0s3, 00:25:33
C>* 192.168.3.0/24 is directly connected, enp0s3, 00:25:55
C>* 192.168.4.0/24 is directly connected, enp0s8, 00:25:55
R4:~$ tracepath -n 192.168.0.1
?: [LOCALHOST] pmtu
1500
1: 192.168.3.1 1.325ms
1: 192.168.3.1 3.056ms
2: 192.168.0.1 3.438ms reached
Resume: pmtu 1500 hops 2 back 2
R1
R2
Network #1
FDDI
backbone
network
R4
R6
R3
R5
Network #2
Network #n
Rn
netn
direct
0
R6
4
net1
net2
3
R6
R4
net1
3
net2
R4
2
net1
R5
4
net2
R5
3
Rn
netn
1
5
net1
Rn
net2
4
Rn
???
lOMoARcPSD| 61601299
[1] https://en.wikipedia.org/wiki/Split_horizon_route_advertisement 24
24
Route Poisoning
Vòng lặp routing vẫn xuất hiện khi các router kết nối
dạng loop
Rn R6 có xử lý “Split Horizon”: ok
R6 R5 có xử lý “Split Horizon”: tránh ược các RTE ã
gửi từ R5 nhưng vẫn chấp nhận các RTE gửi từ R4:
net1, R6, 4
net2, R6, 3
Tình huống loop routing lại xuất hiện giữa R6 & R5 ối
với net1 & net2, khi link (R6,R4) và (R5,R3) cùng xảy ra
sự cố
Giải pháp “Route Poisoning” [1]: phát hiện link down,
router gửi thông báo Metric = ến router láng giềng
nhằm tránh route qua ường này:
Link (R4, R6) down. R6 R5: (net1, R6, )
R5 phải update RTE này (ngược với qui tắc lấy Metric bé !!!)
R5 không route gói tin net1 ến R6 nữa
Tương tự khi link (R3,R5) down, R6 cũng sẽ không route gói tin net1,
net2 qua R5 nữa.
[1] https://en.wikipedia.org/wiki/Route_poisoning 25
25
lOMoARcPSD| 61601299
Tối ưu RIP
Holddown mer: Khi router nhận được “poisoned RTE”, nó khởi tạo Holddown mer (180 giây) để ignore tất c
các request update RTE này từ các router khác, ngoại trừ router đã gửi “poisoned RTE”. Nếu trong khoảng thời
gian Holddown mer này, đường link được phục hồi, router khởi tạo “poisoned RTE” cần gửi lại yêu cầu update
RTE với Metric được phục hồi.
Trong giai đoạn quảng bá thông n giữa các router, cần một khoảng thời gian (gọi là khoảng thời gian hội tụ -
convergence me) để tất c các thiết bị router trong mạng nh toán và đi đến thiết lập bảng định tuyến thống
nhất. Trên qui mô lớn, các mạng phức tạp sử dụng thuật toán vector khoảng cách có thể đòi hỏi khoảng thời
gian hội tụ quá lớn. Trong thời gian các bảng định tuyến chưa được hội tụ, hệ thống mạng dễ bị định tuyến
theo các đường đi không phù hợp. Điều này có thể gây ra các vòng lặp định tuyến hoặc các nh huống chuyển
ếp gói n không ổn định.
Để giảm thời gian hội tụ, một giới hạn thường được đặt ra dựa trên số ợng tối đa các bước nhảy trên một
đường định tuyến đến mạng đích. Điều này dẫn đến nh huống cÆc đường định tuyến hợp lệ nhưng vượt quá
giới hạn này lại không thể được sử dụng trong các mạng sử dụng định tuyến theo vector khoảng cách.
TRƯỜNG CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
School of Information and Communication Technology
26
26
lOMoARcPSD| 61601299
C i đặt quagga cho cÆc router để hỗ trợ RIP
Tạo m i trường ảo gồm 4 mạng (192.168.x.0/24) kết nối với nhau
th ng qua 3 router R1, R2, R3
Cấu h nh RIP (zebra & ripd) trŒn cÆc router
Vận h nh RIP & kiểm tra cÆc bảng roung trŒn router
Kiểm tra t nh đáp ứng khi hệ thống mạng thay đổi
ThŒm kết nối serial R1-R3 theo địa chỉ mạng 192.168.178.0/24
Kiểm tra đường đi của g i n giữa A & X trước v sau khi c kết nối mới bằng traceroute
Ngắt kết nối serial R1-R3 & kiểm tra đường đi của g i n giữa A & X
Kết nối với bŒn ngo i Autonomous System
AS được thiết lập gồm cÆc mạng trŒn v kết nối với mÆy host bằng network
interface Host only của router R1 (mạng 192.168.56.0/24)
MÆy Host đóng vai tr l một hệ thống AS khÆc cần được kết nối th ng suốt với AS
hiện tại cần lan tỏa kết nối mạng Host only
(192.168.56.0/24) đến cÆc router R2, R3
Khai bÆo “redistribute connected” trong le ripd.conf của R1
Bắt & ph n t ch cÆc g i n RIP
TRƯỜNG CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
School of Information and Communication Technology
27
AS Host
Host only: 192.168.56.1
A
IP = 192.168.0.20
GW = 192.168.0.1
192.168.56.100
R1 LAN0: 192.168.0.0/24
192.168.178.1
192.168.0.1
Serial: 192.168.1.1
192.168.178.0/24
R2
LAN1: 192.168.1.0/24
192.168.1.2
192.168.2.1
192.168.178.2 R3 LAN2: 192.168.2.0/24
192.168.2.2
192.168.3.1
LAN3: 192.168.3.0/24
X
IP = 192.168.3.21
GW = 192.168.3.1
Autonomous System – IGP (RIP)
27
Open Shortest Path First
(OSPF)
28
thực h nh:
RIP
lOMoARcPSD| 61601299
28
OSPF Introduction
Version 1 - RFC 1131 (1989), V2 - RFC 2328 (1998), V3 - RFC
5340
(2008) hỗ trợ IPv6. Cài ặt trên router các hãng khác nhau
Dựa trên trạng thái ường truyền (link state) thay vì khoảng cách
như RIP khắc phục nhược iểm ường i ngắn nhưng băng thông
hẹp.
Tương tự RIP, dựa trên kết nối láng giềng nhưng không lan truyền
bảng routing mà lan truyền toàn bộ topo mạng mọi router ều lưu
giữ topo mạng y ới dạng một thị (ỉnh ồ thlà các router &
các mạng nghiệp vụ, cạnh là các kết nối mạng của router)
Giá (cost) của các cạnh ththhin trạng thái kết nối mạng
(network interface) của router.
Cost = 10
8
/ interface bandwidth (bps)
56-kbps serial link = 1785 64-kbps serial link = 1562 128-kbps serial link = 781
T1 (1.544-Mbps serial link) = 64 E1 (2.048-Mbps serial link) = 48 Token Ring (4-Mbps)=
25 Ethernet = 10 Fast Ethernet = 1 Problem: Gigabit Ethernet and
faster = 1?
Mỗi router OSFP sử dụng thuật toán SFP (Shortest Path First
1
Dijkstra) ể tính toán ường i có tổng cost ngắn nhất ến mạng ích.
Các router ều giữ bản ồ topo giống nhau ường i có tổng cost ngắn nhất không tạo loop
routing
[1] https://en.wikipedia.org/wiki/Link-state_routing_protocol
29
R
n
R
6
29
R1
R2
Network #1
10
Mbps
FDDI
backbone
network
Mbps
100
R4
R6
R3
R5
Network #2
Mbps
10
Network #n
Mbps
10
Rn
serial
Kbps
56
#n
10
64
R
5
1
R
4
1
R
3
1
R
2
1
1
R
1
10
#2
10
10
#1
10
T1
1.544
Mbps
1785
lOMoARcPSD| 61601299
30
Hot ộng chung Source: Learn Cisco
Khi router ược kết nối mạng, nó chạy “hello
protocol” ể thiết lập quan hệ láng giềng
Gửi bản tin Hello ến các router láng giềng yêu cầu
cung cấp thông tin
Nhận bản tin Hello & thiết lp danh sách láng giềng
(neighbor).
Khi có thay ổi trong mạng (làm topo mạng thayi
hoặc link state thay ổi)
router gửi thông tin về trng thái liên kết
(link state) cho láng giềng bằng bản ghi LSA (Link
State Advertisement).
LSA ược tiếp tục lan truyền (flooding propagation) trên toàn vùng mạng thống nhất mọi router ều cập nhật trng
thái liên kết mới này vào ồ thị topo mạng mà nó angu giữ (dưới dạng một cơ sở dữ liệu trạng thái liên kết – Link
State Database).
Các router láng giềng cũng thường xuyên ồng bộ LS Database bằng cách gửi nhau các bản tin Database
description, mỗi bản tin chứa một tập các LSA.
Router có thể chủ ộng yêu cầu cập nhật LS Database bằng cách gửi LSA request cho láng giềng.
Sau khi cập nhật LS Database, giải thuật Dijkstra SPF ược chạy tính toán ường i có cost nhỏ nht ến tất cả các
mạng trong hệ thống & cập nhật vào bảng routing.
31
Link State, LS Database & Advertisement
Link State
Link: kết nối mạng của mỗi router
Link State: router giám sát trạng thái kết nối mạng của mình ể phát
hiện có sự thay ổi
Link Sate Database
Tập các Link State của toàn bộ mng
Mỗi router lưu giữ một bản copy ầy của LS Database
c
ó thể “tái tạo” thị topo mạng ầy
Cho phép tìm ường i có tổng cost nhỏ nhất giữa 2 nút
Đường i “ngắn nhất” loại bỏ chu trình (tránh loop routing)
Link State Advertisement
Router phát hiện thay ổi Link State của nh và gửi cho láng giềng
Router láng giềng tiếp tục lan truyền Link State ến các router khác
quá trình lan truyền Link State (flooding propagation)
Router kích hoạt quá trình lan truyền gọi là Advertisement Router
30
(
https://www.learncisco.net/courses/icnd-2/an
-
overview-of-ospf/ospf-data-overview.html)

Preview text:

lOMoAR cPSD| 61601299 1 Nội dung • Autonomous System
• Khái niệm IGP & EGP
• Routing tĩnh & Routing động • RIP • OSPF
TRƯỜNG CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
School of Information and Communication Technology 2 lOMoAR cPSD| 61601299 2 Autonomous System • • • • •
[1] https://en.wikipedia.org/wiki/Autonomous_system_(In
TRƯỜNG CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNGterne ) t •
Khái niệm quản lý nhưng ảnh hưởng đến hành
School of Information and Communication Technology 3 3 lOMoAR cPSD| 61601299 IGP & EGP
Tier 1 Networks = cấu trúc lõi của Internet, gồm các
backbone router mạnh , kết nối nhau bằng ường
truyền tốc ộ rất cao & phủ sóng toàn cầu .
Định nghĩa (theo Wikipedia 1 ): là một mạng IP mà
có thể kết nối với tất cả các mạng khác trên Internet.
Mỗi Tier Network th ường ược ăng ký là một AS
và ược vận hành bởi một công ty kết nối mạng .
Business với Internet Traffic (mua/thuê kết nối )
Các BGP router kết nối multi AS tạo nên mạng Internet toàn cầu
 Liên kết Tier 1 khác (peering) ể AS
mở rộng vùng phủ sóng.
Liên kết peering ở mức Tier 1 dựa trên Peering Policy và Default-free.
 Kết nối xuống Tier 2 ể “ bán buôn ” traffic. Tier 2 tiếp tục kết nối
xuống các Tier 3 (th ường là ISP) – down link/up link BGP AS
 ISP cuối cùng bán ường truyền kết nối Internet cho end-user EGP: BGP  Kết BGP nối các tier network (AS)
 Kết hợp với các IGP (RIP, OSPF, v.v..) ể xây dựng các bảng routing ầy ủ cho Internet
[1] https://en.wikipedia.org/wiki/Tier_1_network 4 4
Định tuyến tĩnh & định tuyến động
• Tĩnh (static routing): các đường định tuyến (giữa các mạng nghiệp vụ)
được xác định sẵn (theo qui hoạch mạng tổng thể của AS) và được
nhân viên quản trị mạng cấu hình sẵn trong các bảng routing.
• Động (dynamic routing): các thuật toán cài đặt trong router phØp cÆc
chúng liên lạc với nhau để tự động phát hiện và duy trì thông tin về
các đường định tuyến.
• Định tuyến động có thể được áp dụng bên trong một AS hoặc giữa các
AS (cần chú ý vấn đề bảo mật)
TRƯỜNG CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
School of Information and Communication Technology 5 lOMoAR cPSD| 61601299 5 • • • • • • 6 lOMoAR cPSD| 61601299 RIP Message Format • • • router lÆng • Route Table Entries (RTEs) • • •
TRƯỜNG CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
School of Information and Communication Technology 7 RIP1 Introduction
• Phương pháp véc tơ khoảng cách (distance vector): số đo khoảng cách từ vị trí của mình đến mỗi điểm đến
(mạng đích) – số router trung gian trên đường truyền (giống khái niệm số đo TTL trong gói IP)
• Router sử dụng cột Metric trong bảng routing để thể hiện khoảng cách để đi từ n tại đến mạng đích tương ứng
• Khoảng cách càng ngắn
 đường đi càng nhanh (tương đối)
• Giải thuật routing: tìm thấy nhiều đường đi có thể 
chọn đường đi ngắn nhất (giá trị Metric bé nhất)
• Router được cài đặt giao thức RIP để tự xây dựng và duy trì (cập nhật) bảng routing với thông số Metric
• Các router trao đổi thông tin theo kiểu lan truyền, mỗi router chỉ có thể kết nối với router láng giềng
(neighbor) – có kế nối mạng trực tiếp lOMoAR cPSD| 61601299
[1] https://en.wikipedia.org/wiki/Routing_Information_Protocol 8 8
ICMP Router Discovery Protocol Sử dụng
ICMP Internet Router Discovery Protocol (IRDP) [1] multicast
Hỗ trợ các router (và các host) phát hiện router kết nối trực tiếp 224.0.0.9 (neighbor) ◼
Sử dụng 2 thông iệp ICMP [2]:  ICMP Router Solicitation: ◼ type = 10 ◼
Gửi từ host ể tìm router IP Fields:  ICMP Router Advertisement
• Source Address: An IP address belonging to the interface ◼ type = 9
from which this message is sent, or 0.
• Destination Address: The configured SolicitationAddress. ◼
Gửi từ router ể thông báo sự có mặt của mình
• Time-to-Live: 1 if the Destination Address is an IP multicast
address; at least 1 otherwise. ◼ Gửi i âu:
 Solicitation: Multicast/Broadcast  Advertisement: Multicast/Broadcast/Unicast ◼ Gửi khi nào:
 Khi bắt ầu kết nối
 Theo chu kỳ refresh dữ liệu
Sử dụng iptables xem log các gói tin ICMP khi router liện lạc với nhau bằng RIP [1]
https://en.wikipedia.org/wiki/ICMP_Router_Discovery_Protocol
[2] https://tools.ietf.org/html/rfc1256 IP Fields:
• Source Address: An IP address belonging to the interface 9
from which this message is sent.
• Destination Address: The configured AdvertisementAddress
or the IP address of a neighboring host.
• Time-to-Live : 1 if the Destination Address is an IP multicast
address; at least 1 otherwise. 9 lOMoAR cPSD| 61601299
Wikipedia: https://en.wikipedia.org/wiki/Multicast_address • • •  10
Hoạt động của RIP 11 lOMoAR cPSD| 61601299
Router insight: Control & (Data) Forward plane 12 12 lOMoAR cPSD| 61601299 RIP Demonstration ◼
R1: tự ộng khởi tạo routing table:  net1, direct, 0
Network #n Rn  net2, direct, 0 R6 FDDI
backbone R5 network R4 net1 direct 0 Network #2 net2 d irect 0 R1 R3 R2 Network #1 13 13 RIP Demonstration
R1: tự ộng khởi tạo routing table:
Network #n Rn  net1, direct, 0  net2, direct, 0 R1  R2:
 RTE: net1, direct, 0  (+) net1, R1, 0+1
 RTE: net2, direct, 0  (-) net2, direct,0 R6 FDDI
backbone R5 network R4 net1 direct 0 Network #2 net2 d irect 0 R1 R3 R2 Network #1 14 lOMoAR cPSD| 61601299 RIP Demonstration 14 ◼
R1: tự ộng khởi tạo routing table:
Network #n Rn  net1, direct, 0  net2, direct, 0 ◼ R1  R2: 
RTE: net1, direct, 0  (+) net1, R1, 0+1 
RTE: net2, direct, 0  (-) net2, direct,0 ◼ R2  R4: 
RTE: net1, R1, 1  (+) net1, R2, 1+1 
RTE: net2, direct, 0  (+) net2, R2,0+1 R6 FDDI net1 R2 2
backbone R5 net2 R2 1 network R4 net1 direct 0 Network #2 net2 i d r ect 0 R1 R3 R2 Network #1 net2 direct 0 net1 R1 1 15 15 lOMoAR cPSD| 61601299 RIP Demonstration 16 16 ◼
R1: tự ộng khởi tạo routing table:  net1, direct, 0  net2, direct, 0 ◼ R1  R2: 
RTE: net1, direct, 0  (+) net1, R1, 0+1 
RTE: net2, direct, 0  (-) net2, direct, 0 ◼ R2  R4: 
RTE: net1, R1, 1  (+) net1, R2, 1+1  RTE: net2, direct, 0  (+) net2, R2, 0+1 ◼ R4  R6: 
RTE: net1, R2, 2  (+) net1, R4, 2+1 
RTE: net2, R2, 1  (+) net2, R4, 1+1 ◼ R6  Rn: 
RTE: net1, R4, 3  (+) net1, R6, 3+1 
RTE: net2, R4, 2  (+) net2, R6, 2+1 17 17 lOMoAR cPSD| 61601299 RIP Demonstration 18 18 ◼
R1: tự ộng khởi tạo routing table:  net1, direct, 0  net2, direct, 0 ◼ R1  R2: 
RTE: net1, direct, 0  (+) net1, R1, 0+1 
RTE: net2, direct, 0  (-) net2, direct, 0 ◼ R2  R4: 
RTE: net1, R1, 1  (+) net1, R2, 1+1  RTE: net2, direct, 0  (+) net2, R2, 0+1 ◼ R4  R6: 
RTE: net1, R2, 2  (+) net1, R4, 2+1 
RTE: net2, R2, 1  (+) net2, R4, 1+1 ◼ R6  Rn: 
RTE: net1, R4, 3  (+) net1, R6, 3+1 
RTE: net2, R4, 2  (+) net2, R6, 2+1 ◼ R2  R3: 
RTE: net1, R1, 1  (+) net1, R2, 1+1  RTE: net2, direct, 0  (+) net2, R2, 0+1 ◼ R3  R5: 
RTE: net1, R2, 2  (+) net1, R3, 2+1 
RTE: net2, R2, 1  (+) net2, R3, 1+1 19 19 lOMoAR cPSD| 61601299 RIP Demonstration 
RTE: net1, R3, 3  (+) net1, R5, 3+1 
RTE: net2, R3, 2  (+) net2, R5, 2+1 20 20 lOMoAR cPSD| 61601299 RIP Demonstration ◼
R1: tự ộng khởi tạo routing table: ◼  net1, direct, 0  net2, direct, 0 ◼ R1  R2: 
RTE: net1, direct, 0  (+) net1, R1, 0+1 
RTE: net2, direct, 0  (-) net2, direct, 0 ◼ R2  R4: 
RTE: net1, R1, 1  (+) net1, R2, 1+1
 RTE: net2, direct, 0  (+) net2, R2, 0+1 ◼ R4  R6: 
RTE: net1, R2, 2  (+) net1, R4, 2+1 
RTE: net2, R2, 1  (+) net2, R4, 1+1 ◼ R6  Rn: 
RTE: net1, R4, 3  (+) net1, R6, 3+1 
RTE: net2, R4, 2  (+) net2, R6, 2+1 ◼ R2  R3: 
RTE: net1, R1, 1  (+) net1, R2, 1+1
 RTE: net2, direct, 0  (+) net2, R2, 0+1 ◼ R3  R5: 
RTE: net1, R2, 2  (+) net1, R3, 2+1 
RTE: net2, R2, 1  (+) net2, R3, 1+1 ◼ R5  R6: 
RTE: net1, R3, 3  (+) net1, R5, 3+1 
RTE: net2, R3, 2  (+) net2, R5, 2+1 21 21 lOMoAR cPSD| 61601299 RIP by FRR • • R4# show ip route R1 LAN0: 192.168.0.0/24
R>* 192.168.0.0/24 [120/4] via 192.168.3.1, enp0s3, 00:01:28 10.0.0.1
R>* 192.168.1.0/24 [120/3] via 192.168.3.1, enp0s3, 00:01:28 192.168.0.1 192.168.1.1
R>* 192.168.2.0/24 [120/2] via 192.168.3.1, enp0s3, 00:01:28 •
C>* 192.168.3.0/24 is directly connected, enp0s3, 00:01:50 Serial: R2
C>* 192.168.4.0/24 is directly connected, enp0s8, 00:01:50 LAN1: 192.168.1.0/24 10.0.0.0/24 192.168.1.2
R4:~$ tracepath -n 192.168.0.1 192.168.2.1 • 1?: [LOCALHOST] pmtu 1500 1: 192.168.3.1 2.228ms R3 LAN2: 192.168.2.0/24 1: 192.168.3.1 0.576ms 10.0.0.2 2: 192.168.2.1 1.475ms 192.168.2.2 192.168.3.1
3: 192.168.0.1 3.888ms reached
Resume: pmtu 1500 hops 3 back 3 R4 LAN3: 192.168.3.0/24 192.168.4.1 192.168.3.2 • R4# show ip route
R>* 10.0.0.0/24 [120/2] via 192.168.3.1, enp0s3, 00:01:43 LAN4: 192.168.4.0/24
R>* 192.168.0.0/24 [120/3] via 192.168.3.1, enp0s3, 00:01:38
R>* 192.168.1.0/24 [120/3] via 192.168.3.1, enp0s3, 00:25:33 •
R>* 192.168.2.0/24 [120/2] via 192.168.3.1, enp0s3, 00:25:33
C>* 192.168.3.0/24 is directly connected, enp0s3, 00:25:55 •
C>* 192.168.4.0/24 is directly connected, enp0s8, 00:25:55
R4:~$ tracepath -n 192.168.0.1 1 ?: [LOCALHOST] pmtu 1500 1: 192.168.3.1 1.325ms 1: 192.168.3.1 3.056ms
2: 192.168.0.1 3.438ms reached
Resume: pmtu 1500 hops 2 back 2
TRƯỜNG CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
School of Information and Communication Technology 22 Loop Routing & Split netn direct 0 Horizon net1 R6 4 net2 R6 3
Network #n Rn ◼ Rn: net1 R4 3  netn, direct, 0 net2 R4 2  net1, R6, 4 net1 R5 4 net2 R5 3  net2, R6, 3 netn Rn 1 net1 Rn 5 ◼ R6  Rn: net2 Rn 4 ???
 RTE: netn, direct, 0  (+) netn, R6, 0+1
 RTE: net1, R6, 4  (?) net1, Rn, 4+1 R6
 RTE: net2, R6, 3  (?) net2, Rn, 3+1 FDDI
Khả năng có thể có một kết nối khác từ Rn ến network
backbone R5
#1 (mà không phải i qua R6), và cần duy trì nhiều ường i network R4
ể backup khi có sự cố mạng  R6 chấp nhận 2 RTE i ến
net1 & net2 ược gửi ến từ Rn ◼ Tiềm ẩn vòng lặp Network #2 routing giữa Rn & R6: R1 R3 R2
 Gói tin cần gửi từ Rn ến net1 hoặc net2 Network #1  Rn  R6
 Lựa chọn Metric bé nhất, R6  R4
 Kết nối ến R4 và R5 có lỗi, R6 cập nhật trạng thái  còn duy nhất các RTE net1 & net2 i qua Rn  loop routing giữa R6 & Rn ◼
Giải pháp “Split Horizon” [1]: không gửi RTE mà ã nhận từ chính router láng giềng này
[1] https://en.wikipedia.org/wiki/Split_horizon_route_advertisement 23 23 lOMoAR cPSD| 61601299
[1] https://en.wikipedia.org/wiki/Split_horizon_route_advertisement 24 24 Route Poisoning ◼
Vòng lặp routing vẫn xuất hiện khi các router kết nối dạng loop ◼
Rn  R6 có xử lý “Split Horizon”: ok ◼
R6  R5 có xử lý “Split Horizon”: tránh ược các RTE ã
gửi từ R5 nhưng vẫn chấp nhận các RTE gửi từ R4:  net1, R6, 4  net2, R6, 3 ◼
Tình huống loop routing lại xuất hiện giữa R6 & R5 ối
với net1 & net2, khi link (R6,R4) và (R5,R3) cùng xảy ra sự cố ◼
Giải pháp “Route Poisoning” [1]: phát hiện link down,
router gửi thông báo Metric = ∞ ến router láng giềng
nhằm tránh route qua ường này:
 Link (R4, R6) down. R6  R5: (net1, R6, ∞)
 R5 phải update RTE này (ngược với qui tắc lấy Metric bé !!!)
 R5 không route gói tin net1 ến R6 nữa
 Tương tự khi link (R3,R5) down, R6 cũng sẽ không route gói tin net1, net2 qua R5 nữa.
[1] https://en.wikipedia.org/wiki/Route_poisoning 25 25 lOMoAR cPSD| 61601299 Tối ưu RIP
• Holddown timer: Khi router nhận được “poisoned RTE”, nó khởi tạo Holddown timer (180 giây) để ignore tất cả
các request update RTE này từ các router khác, ngoại trừ router đã gửi “poisoned RTE”. Nếu trong khoảng thời
gian Holddown timer này, đường link được phục hồi, router khởi tạo “poisoned RTE” cần gửi lại yêu cầu update
RTE với Metric được phục hồi.
• Trong giai đoạn quảng bá thông tin giữa các router, cần một khoảng thời gian (gọi là khoảng thời gian hội tụ -
convergence time) để tất cả các thiết bị router trong mạng tính toán và đi đến thiết lập bảng định tuyến thống
nhất. Trên qui mô lớn, các mạng phức tạp sử dụng thuật toán vector khoảng cách có thể đòi hỏi khoảng thời
gian hội tụ quá lớn. Trong thời gian các bảng định tuyến chưa được hội tụ, hệ thống mạng dễ bị định tuyến
theo các đường đi không phù hợp. Điều này có thể gây ra các vòng lặp định tuyến hoặc các tình huống chuyển
tiếp gói tin không ổn định.
• Để giảm thời gian hội tụ, một giới hạn thường được đặt ra dựa trên số lượng tối đa các bước nhảy trên một
đường định tuyến đến mạng đích. Điều này dẫn đến tính huống cÆc đường định tuyến hợp lệ nhưng vượt quá
giới hạn này lại không thể được sử dụng trong các mạng sử dụng định tuyến theo vector khoảng cách.
TRƯỜNG CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
School of Information and Communication Technology 26 26 lOMoAR cPSD| 61601299 RIP
thực h nh:
• C i đặt quagga cho cÆc router để hỗ trợ RIP AS Host
• Tạo m i trường ảo gồm 4 mạng (192.168.x.0/24) kết nối với nhau Host only: 192.168.56.1 th ng qua 3 router R1, R2, R3 A
• Cấu h nh RIP (zebra & ripd) trŒn cÆc router IP = 192.168.0.20 GW = 192.168.0.1
• Vận h nh RIP & kiểm tra cÆc bảng routing trŒn router 192.168.56.100
• Kiểm tra t nh đáp ứng khi hệ thống mạng thay đổi R1 LAN0: 192.168.0.0/24 192.168.178.1
• ThŒm kết nối serial R1-R3 theo địa chỉ mạng 192.168.178.0/24 192.168.0.1 • Serial: 192.168.1.1
Kiểm tra đường đi của g i tin giữa A & X trước v sau khi c kết nối mới bằng traceroute 192.168.178.0/24
• Ngắt kết nối serial R1-R3 & kiểm tra đường đi của g i tin giữa A & X R2 LAN1: 192.168.1.0/24 • 192.168.1.2
Kết nối với bŒn ngo i Autonomous System 192.168.2.1
• AS được thiết lập gồm cÆc mạng trŒn v kết nối với mÆy host bằng network
192.168.178.2 R3 LAN2: 192.168.2.0/24
interface Host only của router R1 (mạng 192.168.56.0/24) 192.168.2.2
• MÆy Host đóng vai tr l một hệ thống AS khÆc cần được kết nối th ng suốt với AS 192.168.3.1
hiện tại  cần lan tỏa kết nối mạng Host only LAN3: 192.168.3.0/24
(192.168.56.0/24) đến cÆc router R2, R3
• Khai bÆo “redistribute connected” trong file ripd.conf của R1 X
Bắt & ph n t ch cÆc g i tin RIP IP = 192.168.3.21 GW = 192.168.3.1
Autonomous System – IGP (RIP)
TRƯỜNG CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
School of Information and Communication Technology 27 27 Open Shortest Path First (OSPF) 28 lOMoAR cPSD| 61601299 28 #n 10 OSPF Introduction Rn 64 R 1 6 1 R 5 ◼
Version 1 - RFC 1131 (1989), V2 - RFC 2328 (1998), V3 - RFC 1785 R 5340 4 1 1 R 1
(2008) hỗ trợ IPv6. Cài ặt trên router các hãng khác nhau 3 R 2 10
Dựa trên trạng thái ường truyền (link state) thay vì khoảng cách R 10 1
như RIP  khắc phục nhược iểm ường i ngắn nhưng băng thông 10 #2 hẹp. #1 10
Tương tự RIP, dựa trên kết nối láng giềng nhưng không lan truyền
bảng routing mà lan truyền toàn bộ topo mạng  mọi router ều lưu Network #n
giữ topo mạng ầy ủ dưới dạng một ồ thị (ỉnh ồ thị là các router & Mb
10 ps Rn
các mạng nghiệp vụ, cạnh là các kết nối mạng của router) T1
Giá (cost) của các cạnh ồ thị thể hiện trạng thái kết nối mạng 1.544 Mbps serial
(network interface) của router. Kb 56 ps R6
Cost = 108 / interface bandwidth (bps) FDDI backbone
56-kbps serial link = 1785
64-kbps serial link = 1562
128-kbps serial link = 781 network R5
T1 (1.544-Mbps serial link) = 64
E1 (2.048-Mbps serial link) = 48 Token Ring (4-Mbps)= R4 Mb 100 ps 25 Ethernet = 10
Fast Ethernet = 1 Problem: Gigabit Ethernet and faster = 1? Network #2 R3 M 10 bps
Mỗi router OSFP sử dụng thuật toán SFP (Shortest Path First1 – Network #1 R2 10 Mbps
Dijkstra) ể tính toán ường i có tổng cost ngắn nhất ến mạng ích. R1 29
Các router ều giữ bản ồ topo giống nhau  ường i có tổng cost ngắn nhất không tạo loop routing
[1] https://en.wikipedia.org/wiki/Link-state_routing_protocol 29 lOMoAR cPSD| 61601299
Link State, LS Database & Advertisement Link State
 Link: kết nối mạng của mỗi router
 Link State: router giám sát trạng thái kết nối mạng của mình ể phát hiện có sự thay ổi Link Sate Database
 Tập các Link State của toàn bộ mạng
 Mỗi router lưu giữ một bản copy ầy ủ của LS Database
 c ó thể “tái tạo” ồ thị topo mạng ầy ủ
 Cho phép tìm ường i có tổng cost nhỏ nhất giữa 2 nút
 Đường i “ngắn nhất” loại bỏ chu trình (tránh loop routing) Link State Advertisement
 Router phát hiện thay ổi Link State của mình và gửi cho láng giềng
 Router láng giềng tiếp tục lan truyền Link State ến các router khác
 quá trình lan truyền Link State (flooding propagation)
 Router kích hoạt quá trình lan truyền gọi là Advertisement Router 30 30 Hoạt ộng chung
( https://www.learncisco.net/courses/icnd-2/an - Source: Learn Cisco
overview-of-ospf/ospf-data-overview.html) ◼
Khi router ược kết nối mạng, nó chạy “hello
protocol” ể thiết lập quan hệ láng giềng
 Gửi bản tin Hello ến các router láng giềng yêu cầu cung cấp thông tin
 Nhận bản tin Hello & thiết lập danh sách láng giềng (neighbor). ◼
Khi có thay ổi trong mạng (làm topo mạng thay ổi hoặc link state thay ổi)
 router gửi thông tin về trạng thái liên kết
(link state) cho láng giềng bằng bản ghi LSA (Link State Advertisement). ◼
LSA ược tiếp tục lan truyền (flooding propagation) trên toàn vùng mạng ể thống nhất mọi router ều cập nhật trạng
thái liên kết mới này vào ồ thị topo mạng mà nó ang lưu giữ (dưới dạng một cơ sở dữ liệu trạng thái liên kết – Link State Database). ◼
Các router láng giềng cũng thường xuyên ồng bộ LS Database bằng cách gửi nhau các bản tin Database
description, mỗi bản tin chứa một tập các LSA. ◼
Router có thể chủ ộng yêu cầu cập nhật LS Database bằng cách gửi LSA request cho láng giềng. ◼
Sau khi cập nhật LS Database, giải thuật Dijkstra SPF ược chạy ể tính toán ường i có cost nhỏ nhất ến tất cả các
mạng trong hệ thống & cập nhật vào bảng routing. 31