bài 5.1.docx Sinh học di truyền đại cương năm nhất của học sinh y đa khoa
Research and Implementation of a New Dynamic Routertable Using Classified Multi-Suffix Trie
1. BỘ GIÁO DỤC VÀ ĐÀO TẠO BỘ QUỐC PHÒNG
HỌC VIỆN KỸ THUẬT QUÂN SỰ
NGHIÊN CỨU VÀ CÀI ĐẶT BẢNG ĐỊNH TUYẾN ĐỘNG
SỬ DỤNG CẤU TRÚC DỮ LIỆU CÂY PHÂN LOẠI ĐA HẬU TỐ (CMST)
ĐỀ TÀI:
HƯỚNG DẪN KHOA HỌC: TS. NGUYỄN MẠNH HÙNG
NGHỆ AN, 7 - 2013
HỌC VIÊN THỰC HIỆN : NGUYỄN TUẤN NGHĨA
1
2. VẤN ĐỀ NÂNG CAO HIỆU QUẢ ĐỊNH TUYẾN
TÍNH KHOA HỌC
TÍNH THỰC TIỄN
TĂNG CHẤT LƯỢNG
PHẦN CỨNG
CẢI TIẾN CTDL
VÀ THUẬT TOÁN
ĐANG PHÁT TRIỂN BỊ GIỚI HẠN
NGHIÊN CỨU VÀ CÀI ĐẶT BẢNG ĐỊNH TUYẾN ĐỘNG
SỬ DỤNG CẤU TRÚC DỮ LIỆU CÂY PHÂN LOẠI ĐA HẬU TỐ(CMST)
ĐỀ TÀI:
2
3. NHỮNG ĐÓNG GÓP KHOA HỌC CHÍNH
NGHIÊN CỨU CTDL CMST
VÀ CẢI TIẾN
NỀN TẢNG LÝ THUYẾT
ĐỊNH TUYẾN,
BẢNG ĐỊNH TUYẾN
BINARY TRIE
LỊCH SỬ VẤN ĐỀ
GIAO THỨC
ĐỊNH TUYẾN
MULTI-BIT TRIE
LC - TRIE
PREFIX TREE
CẤU TRÚC K-CMST
CÁC THAO TÁC TRÊN
CÂY K-CMST
TÍNH CHẤT CÂY K-CMST
HIỆU QUẢ CỦA K-CMST
CẢI TIẾN K-CMST
ĐÁNH GIÁ
K-CMST & K-IPCMST
ĐỊNH TUYỀN
DỰA VÀO LMP
CHƯƠNG 1 CHƯƠNG 2 CHƯƠNG 3
KẾT LUẬN & KIẾN NGHỊ
3
4. CHƯƠNG 1: TỔNG QUAN VỀ BÀI TOÁN ĐỊNH TUYẾN GÓI TIN
CIDR (1993)
* Định tuyến là quá trình tính toán để đưa ra quyết định chọn đường đi cho gói tin
dựa trên một số tiêu chí nhất định, khi gói tin được truyền từ trạm nguồn đến trạm
đích trong một liên mạng
Have to find LMP
4
* Router quyết định chọn Nexthop của gói tin đến dựa vào thông tin trong tiêu đề
gói tin và một bảng các quy tắc (luật) trong bảng định tuyến
5. CHƯƠNG 2: MỘT SỐ CẤU TRÚC CỦA BẢNG ĐỊNH TUYẾN ĐỘNG
BINARY TRIE
PREFIX TREE
MULTI-BIT TRIE LC - TRIE
Nén
mức
Nhược điểm:
5
- Cây có số node lớn Cây cao, bộ nhớ lưu trữ lớn, truy nhập bộ nhớ nhiều lần
- Giá trị LMP bị cập nhật nhiều lần
- Duyệt đến node lá mới kết thúc
6. CHƯƠNG 3: ÁP DỤNG CTDL CMST ĐỂ GIẢI QUYẾT
BÀI TOÁN XÂY DỰNG BẢNG ĐỊNH TUYẾN ĐỘNG
Nút chính (m_node)
K-CMST NODE
Nút Thứ cấp (s_node)
Same
Prefix Tree node
CẤU TRÚC CỦA MỘT NÚT CÂY k - CMST
6
7. THAO TÁC BẢNG ĐỊNH TUYẾN
Thao tác chèn tiền tố: CMST_INSERT(p, v)
Input: tiền tố p; Cây k-CMST gốc v
Output: p được chèn vào k-CMST
Độ phức tạp tính toán: O(W/k);
7
8. MÔ TẢ HOẠT ĐỘNG THUẬT TOÀN CHÈN
CHƯƠNG 3: ÁP DỤNG CTDL CMST ĐỂ GIẢI QUYẾT
BÀI TOÁN XÂY DỰNG BẢNG ĐỊNH TUYẾN ĐỘNG
8
8
8
Chèn : ( 00100* , Q )
9. THAO TÁC BẢNG ĐỊNH TUYẾN
9
Thao tác Tra cứu: CMST_LOOKUP(DA, v)
Input: Địa chỉ đích DA; nút gốc v
Output: nexthop của luật có tiền tố
đích khớp dài nhất với DA
Độ phức tạp tính toán: O(W/k);
10. MÔ TẢ THUẬT TOÁN TRA CỨU
10
CHƯƠNG 3: ÁP DỤNG CTDL CMST ĐỂ GIẢI QUYẾT
BÀI TOÁN XÂY DỰNG BẢNG ĐỊNH TUYẾN ĐỘNG
10
Tra cứu:00100011* Port : Default port
B
A
O
11. THAO TÁC BẢNG ĐỊNH TUYẾN
11
Thao tác xóa tiền tố CMST_DELETE(p, v)
Input: tiền tố p; Nút gốc v
Output: p bị xóa khỏi k-CMST
Độ phức tạp tính toán: O(2k W/k);
12. MÔ TẢ HOẠT ĐỘNG THAO TÁC XÓA
12
CHƯƠNG 3: ÁP DỤNG CTDL CMST ĐỂ GIẢI QUYẾT
BÀI TOÁN XÂY DỰNG BẢNG ĐỊNH TUYẾN ĐỘNG
12
Xóa tiền tố : (0010010*,G)
Delete
13. MỘT SỐ TÍNH CHẤT CỦA CÂY k - CMST
- Số tiền tố tối đa trong nút chính: 2k+1
, trong nút thứ cấp: 2k-1
- Sự phân loại các hậu tố:
Chiều cao cây: h < (W/k+k-1)
p: hậu tố trong u, có tiền tố nguyên thủy là p’
q: hậu tố trong v, có tiền tố nguyên thủy là q’
q’ là tiền tố con của p’
Len(p) < k PT of (v)
Len(p) = k portr(v)
Len(p) > k fr(v)
Level(u) < Level(v)
TC1
TC2
TC3
13
(u gần nút gốc hơn v)
CHƯƠNG 3: ÁP DỤNG CTDL CMST ĐỂ GIẢI QUYẾT
BÀI TOÁN XÂY DỰNG BẢNG ĐỊNH TUYẾN ĐỘNG
14. - Nhiều hậu tố trong 1 nút
- Sự phân loại các tiền tố:
k-CMST là cấu trúc có nhiều ưu điểm so với các cấu trúc khác
(trong chương 2) trong ứng dụng làm bảng định tuyến động
14
ĐÁNH GIÁ HIỆU QUẢ ĐỊNH TUYẾN CỦA CÂY k-CMST
Chiều cao cây giảm, số lần truy cập bộ nhớ giảm
Giảm không gian so khớp các tiền tố
- LMP có thể được kết luận mà không cần đi tới nút lá.
CHƯƠNG 3: ÁP DỤNG CTDL CMST ĐỂ GIẢI QUYẾT
BÀI TOÁN XÂY DỰNG BẢNG ĐỊNH TUYẾN ĐỘNG
15. CÁC KỸ THUẬT CẢI TIẾN K-CMST
KỸ THUẬT SỬ DỤNG BỘ ĐỆM
(CACHE)
Ý TƯỞNG: Có thể làm giảm số lần
tra cứu lặp lại của địa chỉ đích lân cận
PHƯƠNG PHÁP: Dùng bộ đêm
lưu lại kết quả tra cứu lân cận.
Trước khi thực hiện tra cứu thì tìm
trong bộ đệm trước, nếu có thì lấy
từ bộ đệm, ngược lại, thì tra cứu rồi
lưu vào bộ đệm
ĐÁNH GIÁ: Có hiệu quả cao,
nhưng cần lưu chọn dung lượng và
cấu trúc Cache phù hợp
NHƯỢC ĐIỂM: Gia tăng chi phí bộ nhớ lưu
trữ
15
16. CÁC KỸ THUẬT CẢI TIẾN K-CMST
KỸ THUẬT THAY ĐỔI THỨ TỰ
TRA CỨU
Ý TƯỞNG: Có thể làm giảm số lần tra
cứu, cập nhật LMP (trong cây PT).
PHƯƠNG PHÁP: Không thực hiện tra
cứu trong cây PT, mà lưu các gốc cây PT
cần tra cứu vào Stack và thực hiện tra cứu
sau cùng.
ĐÁNH GIÁ: Có hiệu quả, nhưng chỉ rõ
ràng khi cây cao, và việc tra cứu trong
cây PT là phức tạp.
NHƯỢC ĐIỂM: Gia tăng chi phí bộ nhớ
lưu trữ
16
17. - Chọn giá trị β (β = Min(len(p)) )
CÁC KỸ THUẬT CẢI TIẾN K-CMST
KỸ THUẬT PHÂN HOẠCH k-CMST THÀNH k-PCMST
- Mảng A[i] không quá 2β phần tử, mỗi phần tử có
2 trường: Output_port và pointer (trỏ tới nút gốc
của một k-CMST con)
17
- Chiều cao cây giảm mà không làm tăng bước
nhảy k
18. CÁC KỸ THUẬT CẢI TIẾN K-CMST: KỸ THUẬT PHÂN HOẠCH (2)
18
19. THỬ NGHIỆM ĐÁNH GIÁ HIỆU QUẢ k-CMST và k-IPCMST
SO SÁNH THỜI GIAN TRA CỨU CỦA 2-CMST VÀ 2-IPCMST
VỚI SỐ LUẬT CỐ ĐỊNH 4000 LUẬT
19
k-IPCMST: là thuật toán cải tiến k-CMST trên cơ sở áp dụng tổng hợp 3 kỹ thuật
tăng tốc nói trên
20. THỬ NGHIỆM ĐÁNH GIÁ HIỆU QUẢ k-CMST và k-IPCMST
SỰ ẢNH HƯỞNG CỦA SỐ LƯỢNG LUẬT TỚI THỜI GIAN TRA CỨU
Sự ảnh hưởng này là không lớn
20
21. KẾT LUẬN & KIẾN NGHỊ
KẾT LUẬN:
HƯỚNG PHÁT TRIỂN:
21
Kết quả nghiên cứu thu được có tính khoa học, chính xác và ổn định cao:
- Khẳng định ưu thế của CTDL cây k-CMST trong ứng dụng làm BĐTĐ
- Đề xuất thuật toán k-IPCMST có hiệu quả định tuyến cao hơn
Nhằm khắc phục một số hạn chế:
- Chi phí bộ nhớ k-IPCMST cao hơn k-CMST
- Chưa cấp phát bộ nhớ theo mức tối ưu (mức nút càng cao, yêu cầu bộ nhớ càng giảm)
- Một số phần của các quá trình xử lý có thể xử lý song song chưa được áp dụng
- Hệ thống lại nền lý thuyết và lịch sử vấn đề nghiên cứu
22. CÁC TÀI LIỆU THAM KHẢO CHÍNH
SẮP XẾP THEO MỨC ĐỘ LIÊN QUAN TRỰC TIẾP GIẢM DẦN:
22
1. Sun-Yuan Hsieh & Ying-Chi Yang, (2011), “A classified multi-suffix trie for ip
lookup and update”, Computers IEEE Transactions, 6, (5), 726 -731
2. M. Berger, (2003), “IP lookup with low memory requirement and fast update”,
Workshop High Performance Switching and Routing, 287-291.
3. Nilsson, S. & Karlsson, G, (1999), “IP-address lookup using LC-tries”, Computers
IEEE Transactions, 6, (17), 1083 -1092
4. Jinpeng Jia, Chuang Lin, Weidong Liu(2003), “A Fast Two Way IP Lookup
Algorithm Based Multibit - Trie”, Computer Networks and Mobile Computing, 2003.
ICCNMC, International Conference, 136 -142
…….