BK
TP.HCM
2008
dce
Chương 8
Tìm đường trong mạng chuyển mạch
Tìm đường trong mạng chuyển mạch mạch
Tìm đường trong mạng chuyển mạch gói
Các giải thuật tìm đường đi ngắn nhất
2008
dce
©2008, Dr. Dinh Duc Anh Vu
2
Data Communication and Computer Networks
Tìm đường trong mạng chuyển mạch mạch
•
Tìm đường
–
Tìm đường đi kết nối qua mạng giữa 2 node đầu cuối sao
cho mạng được sử
dụng hiệu quả
nhất
•
Chức năng
–
Xác định kết nối từ
thuê bao gọi đến thuê bao được gọi
qua một loạt các chuyển mạch và
trung kế
•
Các yêu cầu đặt ra trong vấn đề
tìm đường
–
Hiệu quả
•
Xử lý được tải trên mạng vào giờ cao điểm
•
Giảm thiểu số lượng thiết bị
trong mạng (node và
trunk)
–
Khả năng co giãn
•
Có
những trường hợp lưu thông trên mạng vượt quá
tải đã thiết kế
•
Mạng phải đảm bảo khả năng hoạt động ở
một mức độ
nào đó
trong những trường hợp như vậy
2008
dce
©2008, Dr. Dinh Duc Anh Vu
3
Data Communication and Computer Networks
Tìm đường phân cấp
•
Static Hierachical Routing
•
Các chuyển mạch được kết nối theo cấu trúc phân
cấp (thông thường theo cấu trúc cây)
–
Đường đi được hình thành từ
node lá đi lên
•
Tăng tính co giãn
–
Các trung kế (trunk) được kết nối thêm vào cắt ngang cấu
trúc cây
–
Cung cấp các đường đi thay thế
•
Tĩnh
–
Không thích nghi theo các điều kiện thay đổi trên mạng
–
Mạng phải được thiết kế để
chịu được tải nặng oversize
–
Cấu trúc tĩnh đáp ứng kém với lỗi
2008
dce
©2008, Dr. Dinh Duc Anh Vu
4
Data Communication and Computer Networks
Local (End)
office
Regional
center
Sectional
center
Primary
center
Toll
center
tandem
switch
Telephone
Toll connecting
FINAL
FINAL
FINAL
FINAL
HU (high-usage trunks)
Alternate
Hierarchical
Routing
Alternate
Hierarchical
Routing
Tìm đường phân cấp
2008
dce
©2008, Dr. Dinh Duc Anh Vu
5
Data Communication and Computer Networks
Tìm đường động
•
Tìm đường động (Dynamic Routing)
–
Cho phép thay đổi trong việc tìm đường tùy theo lưu thông trong mạng
–
Dùng cấu trúc ngang cấp cho các node trong mạng
–
Đường đi thiết lập giữa hai thuê bao thay đổi tùy theo khả năng tải và
băng thông của đường truyền tại thời điểm thiết lập kết nối
–
Phức tạp và linh động hơn
•
Một số phương pháp tìm đường động
–
Dựa vào thống kê biến động trong mạng (tải, băng thông, ) theo thời
gian, còn gọi là
Time-dependent Routing
•
Alternate routing
–
Dựa vào biến động trong mạng (tải, băng thông, ) để trao đổi cập
nhật thông tin tìm đường đi giữa các node trong mạng, từ đótìm ra
được đường đi tối ưu và
cập nhật vào bảng routing ở
các node
chuyển mạch trong mạng, còn gọi là
State-dependent Routing
•
Adaptive routing
–
Kết hợp cả hai phương pháp này
2008
dce
©2008, Dr. Dinh Duc Anh Vu
6
Data Communication and Computer Networks
Alternate routing
•
Các
đường
đi có
thể
giữa2
trạm
(end office) đượcliệt
kê
trước
•
Bộ
chuyểnmạch
nguồn
chọnlựacácđường
thích
hợp
•
Các
đường
đượcliệtkê
theo
thứ
tựưutiên
–
Ưutiênkếtnốitrựctiếp
–
Thứ
tự ưu tiên dựa vào thống
kê lưu thông trên mạng
–
Fixed alternate routing
•
Thay đổi thứ
tự ưu tiên của
các đường đi theo từng thời
điểm khác nhau
–
Dynamic alternate routing
2008
dce
©2008, Dr. Dinh Duc Anh Vu
7
Data Communication and Computer Networks
Adaptive routing
•
Cho
phép
các
bộ
chuyểnmạch
phản
ứng
lạivới
tình
hình
lưu
thông
trên
mạng
•
Chi phí
lớnhơnchoviệcquảntrị
–
Các
bộ
chuyểnmạch
phảitraođổi
thông
tin để
biếttìnhtrạng
mạng
•
DTM (dynamic traffic management)
–
Northern Telecom
–
Dùng
bộđiềukhiển
trung
tâm
để
tìm
đường
dự
phòng
khi
có
sự
nghẽn
mạng
–
Mỗibộ
chuyểnmạch
A cậpnhật
các
thông
tin sau
cho
bộđiềukhiển
trung
tâm
•
Số
trung
kế
rảnh
để
đi
đếncácđiểmlâncậnA
•
Hiệusuấtsử
dụng
CPU củaA
•
Đolưulượng
từ
A đến
B (không
thể
nốitrựctiếp)
–
Bộ
chuyểnmạch
trung
tâm
sẽ
cho
biết
đường
đi“tốt”
khi
các
đường
nốitrựctiếp
không
còn
khả
năng
2008
dce
©2008, Dr. Dinh Duc Anh Vu
8
Data Communication and Computer Networks
Tìm
đường trong mạng chuyển mạch gói
•
Vấn
đề
phứctạp, quyết
định
đốivớimạng
chuyểnmạch
gói
•
Các
đặctínhyêucầu
–
Chính
xác
–
Đơngiản
–
Mạnh
mẽ
•
Khả năng chuyển các gói trong điều kiện lỗi và
quá
tải
•
Không mất gói hoặc không làm đứt virtual circuit
–
Ổn
định
•
Hệ
thống có
khả năng thay đổi theo điều kiện mạng thường có xu hướng
không ổn định và đáp ứng chậm
•
Congestion oscillation
–
Công
bằng vs. tối ưu
•
Một số
hệ
thống ưu tiên chuyển các gói đến trạm gần hơn
•
Tối ưu thông lượng nhưng không công bằng
–
Hiệuquả
•
Tìm đường đòi hỏi phải tăng cường xử
lý và tăng cường lưu thông trên
mạng
•
Chi phí
cho tìm đường phải ít hơn lợi ích (ví
dụ tăng tính mạnh mẽ, công
bằng)
2008
dce
©2008, Dr. Dinh Duc Anh Vu
9
Data Communication and Computer Networks
Tiêu chuẩn đo tính hiệu quả
•
Là
tiêu chuẩn được dùng để
chọn đường
–
Số
chặng đường (hop) là
tối thiểu
•
Đơn giản
•
Tối thiểu việc sử
dụng tài nguyên
–
Chi phí
(cost) tối thiểu
•
Mỗi đường link được gán một chi phí
•
Chi phí
có
thể
là
–
Data rate (tỉ
lệ
nghịch)
–
Delay do các gói xếp hàng (tỉ
lệ
thuận)
2008
dce
©2008, Dr. Dinh Duc Anh Vu
10
Data Communication and Computer Networks
Chi phí
các
đường
đi
2008
dce
©2008, Dr. Dinh Duc Anh Vu
11
Data Communication and Computer Networks
Thời điểm và nơi quyết định việc tìm đường
•
Thời
điểm
quyết
định
–
Trên
cơ
sở
mạch
ảohoặcgói
–
Datagram: quyết định tìm đường thực hiện riêng cho mỗi
gói
–
Virtual circuit: quyết định tìm đường thực hiện lúc kết nối
•
Trong nhiều thiết kế, đường đi của mỗi virtual circuit thay đổi theo
điều kiện của mạng
•
Nơi
quyết
định
–
Node nào sẽ
ra quyết định tìm đường
–
Phân
tán
(Distributed)
•
Mỗi node tự
ra quyết định tìm đường
–
Tập
trung
(Centralized)
•
Nhiệm vụ
tìm đường được gán trước cho 1 số
node
–
Tại
nguồngởi
(Source)
•
Nguồn gởi chịu trách nhiệm tìm đường
•
Cho phép người dùng chọn đường đi theo tiêu chí
của họ
2008
dce
©2008, Dr. Dinh Duc Anh Vu
12
Data Communication and Computer Networks
Nguồn thông tin mạng và
thời điểm cập
nhật thông tin
•
Quyết định tìm đường thông thường (không phải luôn luôn)
được dựa trên các thông tin về
mạng
–
Tải lưu thông
–
Chi phí
của đường link
•
Tìm đường phân tán (Distributed routing)
–
Node sử
dụng các thông tin cục bộ
–
Có
thể
thu thập thông tin từ
các node kế
cận
–
Có
thể
thu thập thông tin từ
các node trên đường tiềm năng
•
Tìm đường tập trung (Central routing)
–
Thu thập thông tin từ
tất cả
các node
•
Cập nhật thông tin
–
Xác định khi nào các thông tin mạng được lưu trữ
tại các node được
cập nhật
–
Cố định (Fixed) –
không bao giờ được cập nhật
–
Động (Adaptive) –
cập nhật thường xuyên
–
Trade off
2008
dce
©2008, Dr. Dinh Duc Anh Vu
13
Data Communication and Computer Networks
Chiếnthuậttìmđường
•
Chiếnthuật
(Routing Strategies)
–
Fixed routing
–
Flooding routing
–
Random routing
–
Adaptive routing
2008
dce
©2008, Dr. Dinh Duc Anh Vu
14
Data Communication and Computer Networks
Fixed Routing
•
Mộtlộ
trình
cốđịnh
cho
mỗi
đường
đitừ
nguồn
đến
đích
•
Tấtcả
các
đường
đi
qua
mạng
đều
đã
đượcthiếtlập
từ
trước
và
không
cậpnhật
theo
các
biến
đổivề
các
điềukiệntải, …
trong
mạng
•
Đường
đi
đượcxácđịnh
dùng
giảithuật
chi phí
tối
thiểu
•
Đường
cốđịnh
ít
ra
cho
đếnkhicósự
thay
đổicấu
hình
mạng
•
Không có
sự
khác biệt giữa
datagram và VC
•
Đơn giản
•
Không đáp ứng lại lỗi và
nghẽn mạng
2008
dce
©2008, Dr. Dinh Duc Anh Vu
15
Data Communication and Computer Networks
Flooding Routing
•
Không
cần
thông
tin mạng
•
Node gởi
các
gói
tớitất cả
node kề
(láng
giềng)
•
Các
gói
nhận
đượcsẽđượctruyềntrêntấtcả
các
kếtnốingoạitrừ
kếtnối
đến
•
Cuốicùngsẽ
có
mộtsố
copy của
gói
sẽđến
đích
•
Mỗi
gói
được
đánh
số
duy
nhất
sao
cho
các
copy
trùng
nhau
sẽ
bị
loạibỏ
•
Node có
thể
ghi
nhớ
các
gói
đã
đi
qua, giúp
cho
mạng
không
quá
tảinhiều
•
Có
thể
chứasố
chặng
đường
(hop) trong
các
gói,
đượcdùngđể
giớihạn
hay kết
thúc
quá
trình
truyền
2008
dce
©2008, Dr. Dinh Duc Anh Vu
16
Data Communication and Computer Networks
Flooding Routing
•
Đặc
điểm
–
Tấtcả
các
lộ
trình
đều
được
thử
•
Robust
•
Lãng
phí
băng
thông
–
Ít
nhấtsẽ
có
một
gói
đi
theo
lộ
trình
vớisố
chặng
ít
nhất
•
Có
thểđược
dùng
để
thiết
lập
đường
mạch
ảo
–
Tấtcả
các
node đều
được
“duyệt”
•
Dùng
để
phân
tán
thông
tin
–
Gửi các mesg khẩn
•
Mạng quân sự
–
Thiết lập VC
–
Broadcast thông tin
2008
dce
©2008, Dr. Dinh Duc Anh Vu
17
Data Communication and Computer Networks
Random Routing
•
Node sẽ
chọnmột
đường
liên
kếtrađể
truyền
đicác
gói
nhận
được
•
Việcchọnlựacóthể
là
ngẫu
nhiên
hoặcxoayvòng
(round robin)
•
Có
thể
chọn
đường
liên
kếtradựatrênviệc
tính
toán
xác
suất
•
Không
cần
thông
tin mạng
•
Lộ
trình
tìm
được
thông
thường
không
phảilàđường
có
chi phí
tốithiểuhoặcsố
chặng
nhỏ
nhất
i
i
i
i
R
R
P
2008
dce
©2008, Dr. Dinh Duc Anh Vu
18
Data Communication and Computer Networks
Adaptive Routing
•
Đượcsử
dụng
bởihầuhếtcácmạng
chuyểnmạch
gói
•
Quyết
định
tìm
đường
thay
đổikhicácđiềukiệntrên
mạng
thay
đổi
–
Hư hỏng
(Failure): một node hoặc một trunk hư
–
Nghẽn
(Congestion)
•
Cầnbiết
các
thông
tin về
mạng
•
Quyết
định tìm đường là
một
hàm
phứctạp
•
Tradeoff giữachấtlượng
của
thông
tin mạng
và
chi
phí
•
Phản
ứng
quá
nhanh
có
khả
năng
gây
dao
động
•
Quá
chậmdẫn
đếnkhôngcònthíchhợp
2008
dce
©2008, Dr. Dinh Duc Anh Vu
19
Data Communication and Computer Networks
Adaptive Routing
•
Ưu
điểm
–
Hiệusuất
đượccảithiện
–
Trợ
giúp
điềukhiển
nghẽnmạng
•
Cân bằng tải, tránh tắc nghẽn
–
Hệ
thống
phứctạp để
hiện thực
•
Có
khả
năng
không
thựchiệncácíchlợivề
mặt
lý
thuyết
•
Phân
loại
–
Dựatrêncácnguồn
thông
tin
•
Cụcbộ
(isolated)
•
Các
node kề
(distributed)
•
Tấtcả
các
node (centralized)
2008
dce
©2008, Dr. Dinh Duc Anh Vu
20
Data Communication and Computer Networks
Isolated Adaptive Routing
•
Mỗi
node trong
mạng
tự
cậpnhậtbảng
tìm
đường
củamình
dựa
vào
các
thông
tin về
mạng
mà
node đóhọchỏi
được,
không
trao
đổi
thông
tin routing với
các
node khác
•
Gởi
các
gói
trên
các
liên
kết
ra
có
hàng
đợingắnnhất
–
Cân bằng tải trên các đường ra
–
Đường ra có
hàng đợi ngắn nhất có
thể không đúng hướng cần đi
•
Có
thể
thêm
các
độ
thiên vị
(bias) cho
các
đường ra
•
Một
trong
những
phương
pháp
đơngiảnnhấtcủatìmđường
động, phù
hợpvớicácmạng
có
kích
thướcnhỏ
và
hoạt
động
tương
đối
ổn
định
•
Ít
dùng
(không
dùng
thông
tin có
sẵn)
2008
dce
©2008, Dr. Dinh Duc Anh Vu
21
Data Communication and Computer Networks
Isolated Adaptive Routing
•
Ví
dụ
•
Đường ra được chọn là đường ra có
Q+B
i
nhỏ
nhất
2008
dce
©2008, Dr. Dinh Duc Anh Vu
22
Data Communication and Computer Networks
Adaptive Routing
•
Distributed Adaptive Routing
–
Trong
phương
pháp
này, thông
tin về
tình
trạng
hoạt
động
hiện
hành
củamạng
sẽđược
định
kỳ
trao
đổi, cậpnhậtgiữa
các
node trong
toàn
mạng. Sau
đó
thông
tin này
sẽđược
phân
bố
về
lại
các
node trong
mạng
hay mộtsố
node trong
mạng
làm
nhiệmvụ
tìm
đường
để
các
node này
cậpnhậtlạibảng
routing
–
Phương
pháp
này
đáp
ứng
đượcvớinhững
thay
đổitrạng
thái
của
mạng, nhưng
đồng
thờicũng
làm
tăng
lưulượng
thông
tin trong
mạng
•
Centralized Adaptive Routing
–
Trong
phương
pháp
này, thông
tin về
tình
trạng
hoạt
động
hiện
hành
củamạng
sẽđược
định
kỳ
trao
đổi, cậpnhậtgiữa
các
node trong
toàn
mạng. Sau
đó
thông
tin này
sẽđượctậptrungvề
mộtmáychủ
trong
mạng
làm
nhiệmvụ
routing
–
Tuy
đáp
ứng
đượcvớinhững
thay
đổitứcthờitrongmạng
nhưng
phương
pháp
này
có
nhược
điểm
là
thông
tin routing trong
toàn
mạng
tập
trung
về
một
máy
nên
khi
máy
này
không
hoạt
động
thì
toàn
mạng
sẽ
không
hoạt
động
được
2008
dce
©2008, Dr. Dinh Duc Anh Vu
23
Data Communication and Computer Networks
Giải
thuậttìmđường
ngắnnhất
•
Bài
toán
–
Cho
mạng
các
node đượcnốibởi
các
liên
kết
2 chiều, mỗichiềucógiátrị
chi
phí
riêng
–
Chi phí
của
đường
đigiữa
2 node trong
mạng
là
tổng
các
giá
trị
chi phí
của
các
liên
kết
đi
qua
–
Xác
định
đường
đingắnnhất
(chi phí
thấpnhất) giữa
2 node
•
Tiêu
chuẩn
đường
ngắnnhất
–
Số
chặng
đường
đi
•
Giá
trị
mỗi
liên
kếtlà1
–
Giá
trị
liên
kết
•
Tỉ
lệ
nghịch
tốc
độ
liên
kết
•
Tỉ
lệ
thuậntải
trên
liên
kết
•
Tổ
hợpcácđạilượng
trên
•
Giảithuật
–
Forward-search (Dijkstra)
–
Backward-search (Bellman-Ford)
2008
dce
©2008, Dr. Dinh Duc Anh Vu
24
Data Communication and Computer Networks
Giải
thuật
Dijkstra
•
Input
–
Đồ
thị
G(V, E) trong
đóV làtập
đỉnh, E là
tậpcạnh
có
trọng
số
không
âm
–
Đỉnh
nguồnS: S
V
•
Output
–
Đường
đingắnnhấttừđỉnh
nguồnS đếntấtcả
các
đỉnh
còn
lại
•
Ký
hiệu
–
D
i
: đường
đingắnnhấttừ
node nguồnS đến
node i tạibướcchạy
hiện
hành
củagiảithuật
–
M: tậpcácđỉnh
đãxéttạibướcchạyhiện
hành
củagiảithuật
–
d
ij
: trọng
số
trên
cạnh
nốitừ
node i đến
node j
d
ij
= 0 nếu
i trùng
j
d
ij
= E
ij
nếu
i khác
j
2008
dce
©2008, Dr. Dinh Duc Anh Vu
25
Data Communication and Computer Networks
Giải
thuật
Dijkstra
•
Giảithuật
–
Bước1: khởi
động
•
M = {S}
•
D
i
= d
si
(các cạnh nối trực tiếp với S)
–
Bước2: cậpnhật
đường
đingắnnhất
•
Chọn
đỉnh
N
V sao
cho: D
N
= min {D
i
} i
V\M
•
M = M U {N}
•
D
j
= min {D
j
, D
N
+ d
Nj
}
j
V\M
–
Bước3: lặplạibước2 chođếnkhiM=V
–
Kếtquả
D
i
sẽ
là
đường
đingắnnhấttừ
node nguồnS đến
node i