Tải bản đầy đủ (.doc) (83 trang)

đồ án : Giao thức định tuyến EIGRP

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (527.98 KB, 83 trang )

Đồ án tốt nghiệp Đại học Lời nói đầu
LỜI NÓI ĐẦU
Định tuyến là một chức năng không thể thiếu trong bất kỳ mạng viễn thông
nào. Mục đích của định tuyến là chuyển thông tin từ một điểm trong mạng (nguồn) tới
một hoặc nhiều điểm khác (đích). Mỗi khi thực hiện thiết kế, xây dựng một mạng mới
hay cải tiến một mạng đã cũ, người thiết kế mạng phải đặc biệt quan tâm tới vấn đề
định tuyến, bởi hoạt động của một mạng có hiệu quả hay không, chất lượng của các
dịch vụ cung cấp trên mạng có thỏa mãn được yêu cầu của người sử dụng mạng hay
không phụ thuộc rất nhiều vào việc định tuyến trong mạng đó.
Do tính chất quan trọng của mình mà việc định tuyến cần liên tục được cải tiến,
thay đổi để có thể đáp ứng được với sự phát triển của mạng viễn thông. Từ những thời
kỳ ban đầu của mạng điện thoại, việc định tuyến chỉ được thực hiện một cách thủ công
nhờ các điện thoại viên, cho tới bây giờ, quá trình định tuyến được thực hiện một cách
hoàn toàn tự động với chất lượng, tốc độ cao để có thể cho phép cung cấp các dịch vụ
ngày càng đa dạng trong các mạng thế hệ mới.
Trải qua một quá trình phát triển mạnh, rất nhiều phương pháp, kỹ thuật định
tuyến đó được đưa ra. Nghiên cứu về các kỹ thuật định tuyến là một lĩnh vực nghiên
cứu rất rộng bởi mỗi mạng cần có một chiến lược định tuyến cho riêng mình, phù hợp
với mục đích truyền dẫn, phù hợp với công nghệ mạng, phù hợp với yêu cầu của
người sử dụng để trao đổi thông tin…Không thể áp đặt hoàn toàn chiến lược định
tuyến của một mạng này lên một mạng khác.
Các giao thức định tuyến trước đây như RIP, RIP-2, IGRP, OSPF mặc dù đã
được phát triển nhưng vẫn tồn tại những nhược điểm như là tốc độ hội tụ chậm (RIP,
RIP-2), không hỗ trợ mặt nạ mạng con có độ dài thay đổi(RIP), hạn chế về số
hop(RIP-2), khả năng học hỏi đường đi kém và không hỗ trợ nhiều giao thức khác
nhau(IGRP) Chính bởi lẽ đó, EIGRP do tập đoàn Cisco phát minh nhằm khắc phục
các hạn chế trong các giao thức định tuyến khác.
Xuất phát từ mong muốn tìm hiểu và nghiên cứu về EIGRP, đồ án “Giao thức
định tuyến EIGRP“ sẽ trình bày các kiến thức cơ bản về giao thức EIGRP và một số
ứng dụng của nó trong các giao thức định tuyến khác.
Hướng đi của đồ án là tập trung nghiên cứu chủ yếu về nguyên lý hoạt động,


các khái niệm liên quan đến EIGRP, cách cấu hình EIGRP trong một số mạng như là
IP, IPX
Đồ án bao gồm 3 chương:
• Chương I: Tổng quan về định tuyến, chương này sẽ giới thiệu về vấn đề
định tuyến cùng với một số các thuật toán định tuyến cơ bản, cách tính
toán đường đi cùng các tham số trong các giải thuật định tuyến.
• Chương II: Giao thức định tuyến EIGRP, chương này sẽ trình bày về các
khái niệm EIGRP cũng như nguyên lý hoạt động, các kỹ thuật ứng dụng
trong EIGRP, nhằm mục đích đưa ra một cái nhìn tổng quan về giao
thức định tuyến EIGRP. Từ đây có thể thấy được sự khác biệt về mặt tốc
Phan Thái Minh-D04VT1 i
Đồ án tốt nghiệp Đại học Lời nói đầu
độ hội tụ và khả năng tương thích với các giao thức khác nhau giữa
EIGRP so với các giao thức định tuyến khác trước đây.
• Chương III: IPX EIGRP, sẽ trình bày về một ứng dụng của EIGRP trong
mạng IPX, cách cấu hình và lộ trình phân phối của EIGRP trong mạng
IPX, cách xử lý các bản tin SAP.
Em xin chân thành cảm ơn thầy giáo ThS.Nguyễn Việt Hùng, người đã tận tình
hướng dẫn và tạo mọi điều kiện tốt nhất để em có thể hoàn thành đồ án tốt nghiệp này.
Em cũng xin chân thành cảm ơn các thầy cô giáo trong học viện đã dạy dỗ em
những năm qua.
Phan Thái Minh-D04VT1 ii
Đồ án tốt nghiệp Đại học Mục lục
MỤC LỤC
LỜI NÓI ĐẦU i
MỤC LỤC iii
THUẬT NGỮ VIẾT TẮT v
DANH MỤC HÌNH VẼ vii
Phan Thái Minh-D04VT1 iii
Đồ án tốt nghiệp Đại học Thuật ngữ viết tắt

THUẬT NGỮ VIẾT TẮT
Viết tắt Viết đầy đủ Ý nghĩa
ACK Acknowlegement Báo nhận
ABR Area Boundary Router Bộ định tuyến vùng biên
ARP Address Resolution Protocol Giao thức phân giải địa chỉ
AS Autonomous System Hệ thống tự trị
ATM Asynchronous Transfer Mode Chế độ truyền bất đồng bộ
BDR Backup Designated Router Router được đề cử dự phòng
BGP Border Gateway Protocol Giao thức cổng biên
CD Collision Detection Dò tìm đụng độ
CRC Cycle Redundancy Check Mã kiểm tra vòng
CSMA Carrier Sense Multiple Access Đa truy cập cảm nhận sóng mang
CIDR Classless Interdomain Routing Định tuyến liên miền không
theo lớp địa chỉ
DHCP Dynamic Host Control
Protocol
Giao thức điều khiển trạm động
DNS Domain Name System Hệ thống tên miền
DUAL Difusing Update Algorithm Thuật toán cập nhật lan truyền
EIGRP Enhanced Interior Gateway
Routing Protocol
Giao thức định tuyến nội miền
mở rộng
EGP Exterior Gateway Protocol Giao thức cổng ngoài
FDDI Fiber Distributed Data
Interface
Giao diện dữ liệu phân phối theo
cáp sợi quang
FTP File Transfer Protocol Giao thức truyền file
ICMP Internet Control Message

Protocol
Giao thức thông điệp điều khiển
Internet
IGRP Interior Gateway Routing
Protocol
Giao thức định tuyến nội miền
IP Internet Protocol Giao thức Internet
ISDN Integrated Services Digital
Network
Mạng tích hợp dịch vụ số
ISO International Standards
Orrgnization
Tổ chức tiêu chuẩn quốc tế
LAN Local Area Network Mạng cục bộ
MAC Media Access Control Điều khiển truy cập môi trường
truyền
MTU Maximum Transmission Unit Độ dài lớn nhất của chuỗi thông
tin được truyền qua đường truyền
OSI Open Sysstems Interconnection Kết nối hệ thống mở
PDU Protocol Data Unit Đơn vị dữ liệu giao thức
PPP Point - To – Point Protocol Giao thức điểm_điểm
RARP Reverse Address Resolution
Protocol
Giao thức phân giải địa chỉ
ngược
Phan Thái Minh-D04VT1 v
Đồ án tốt nghiệp Đại học Thuật ngữ viết tắt
PDU Protocol Data Unit Đơn vị dữ liệu giao thức
PPP Point - To – Point Protocol Giao thức điểm_điểm
RAM Random Access Memory Bộ nhớ truy xuất ngẫu nhiên

RARP Reverse Address Resolution
Protocol
Giao thức phân giải địa chỉ
ngược
RIP Routing Information Protocol Giao thức thông tin định tuyến
RTMP Routing Table Management
Protocol
Giao thức quản lý bảng đường
truyền
RTP Reliable Transport Protocol Giao thức truyền tải tin cậy
SAP Solutions Application And
Service Protocol
Giao thức giới thiệu dịch vụ
SMTP Simple Mail Transfer Protocol Giao thức truyền thư đơn giản
TCP Transmission Control Protocol Giao thức điều khiển truyền tải
UDP User Datagram Protocol Giao thức dữ liệu người dùng
VLSM Variable-Length Subnet Masks Mặt nạ mạng con có độ dài biến
đổi
Phan Thái Minh-D04VT1 vi
Đồ án tốt nghiệp Đại học Danh mục hình vẽ
DANH MỤC HÌNH VẼ
Hình1.1. Truyền thông tin theo kiểu hướng kết nối 2
Hình1.2. Truyền thông tin theo kiểu phi kết nối 2
Hình 1.3.Quá trình tốc độ hội tụ thấp dẫn tới định tuyến vòng 8
Hình 1.4. Mô hình mạng 6 node 9
Hình 1.5. Cây đường đi ngắn nhất sau khi chọn đường 10
Hình 1.6. Mạng ví dụ 5 node 13
Hình1.7. Mạng ví dụ bước nhảy 15
Hình 1.9. Mạng ví dụ trạng thái tắc nghẽn 18
Hình 1.10. Mạng ví dụ cung cấp ứng dụng 18

Hình 1.11. Thông báo trạng thái liên kết – LSA 19
Hình 1.12. Mạng hai cấp 21
Hình 1.13. Định tuyến quảng bá 23
Hình 2.1. Mạng ví dụ phân phối thông tin 28
Hình 2.2.a. Mô tả các đường kế tiếp của router A đến mạng Z 30
Hình 2.4. Quá trình trao đổi thông tin 32
Hình 2.5. Mô tả gói đầu của EIGRP 35
Hình 2.6. Mô tả một kiểu của gói tin EIGRP 35
Hình 2.7. Giản đồ các thành phần của EIGRP 38
Hình 2.8. Quá trình luồng dữ liệu được định tuyến 39
Hình 2.11. Mô tả đường kế tiếp của EIGRP 41
Hình 2.12. Mô tả đường kế tiếp khả thi 42
Hình 2.13. Mô tả mạng kiểm tra EIGRP 42
Hình 2.14. Quá trình kiểm tra mạng EIGRP logic 43
Hình 2.15. Bước đầu tiên trong việc truyền bá tuyến mới 46
Hình 2.16. Quá trình router Fred nhận một tuyến tốt hơn 48
Hình.2.17. Mô tả mạng bao gồm các phần tử cục bộ 54
Hình 2.18.Quá trình chọn một tuyến thay thế giữa hai router 54
Hình 2.19. Quá trình tính toán lan tràn được bắt đầu ở router San
Jose 55
Hình 2.20. Quá trình router Austin chọn một tuyến thay thế 55
Hình 2.21. Quá trình hội tụ mạng 56
Hình 2.22.Phương pháp cấu hình EIGRP cho giao thức IP 58
Hình 2.23.a. Quá trình EIGRP tự động tổng hợp đường đi theo lớp địa
chỉ IP 59
Hình 2.23.b. Mô tả mạng có sơ đồ địa chỉ không liên tục 59
Hình 2.23.c. Mô tả quá trình kết nối của các router 59
Hình 2.23.d. Mô tả việc tổng hợp đường đi của EIGRP 60
Phan Thái Minh-D04VT1 vii
Đồ án tốt nghiệp Đại học Danh mục hình vẽ

Hình 2.24. Quá trình trao đổi thông tin định tuyến giữa hai router
láng giềng với nhau 63
Hình 3.1. Quá trình xử lí bản tin cập nhật IPX EIGRP 69
Chỉ có các thông tin đi qua các bước kiểm tra phù hợp thì mới được
xem như là luồng vào cho bảng SAP chính. Bảng SAP chính chỉ chứa
các thông tin quảng bá tốt nhất mà đã qua các bước kiểm tra phù hợp.
69
Hình 3.2. Quá trình thông tin được phục hồi từ bảng phục hồi SAP 70
Phan Thái Minh-D04VT1 viii
Đồ án tốt nghiệp Đại học Danh mục bảng biểu
DANH MỤC BẢNG BIỂU
Bảng 1.1: Các bước thực hiện thuật toánDijkstra 10
Bảng 1.2: Bảng chọn đường tại node 1 10
Bảng 1.4: Cost của các node trong mạng đến A 14
Bảng 1.5: Cost của các node trong mạng tới A 14
Bảng 1.6: Quá trình đếm tới vô cùng 15
Bảng 1.7: Bảng chọn đường trong trường hợp không phân cấp 21
Bảng 1.8: Bảng chọn đường trong trường hợp phân cấp 22
Bảng 2.1: Bảng truy vấn và trả lời 52
Bảng 2.3. Các lệnh EIGRP gỡ rối 62
Bảng 3.1. Các lệnh cấu hình IPX EIGRP cơ bản 64
Bảng 3.2 Các lệnh cấu hình để điều khiển phân bố lại định tuyến IPX.
64
Bảng 3.3. Các tham số dữ liệu ngoại vùng của một tuyến IPX EIGRP
65
Phan Thái Minh-D04VT1 ix
Đồ án tốt nghiệp Đại học Chương I. Tổng quan về định tuyến
CHƯƠNG I: TỔNG QUAN VỀ ĐỊNH TUYẾN
1.1. Khái niệm về định tuyến
Định tuyến là một công việc quan trọng trong quá trình truyền tin trong mạng

thông tin. Nó được thực hiện ở tầng mạng (tầng 3 trong mô hình tham chiếu OSI).
Mục đích của định tuyến là lựa chọn một đường để truyền một hay nhiều đơn vị dữ
liệu (một gói tin chẳng hạn) từ trạm nguồn đến trạm đích của nó. Kỹ thuật này phải
thực hiện hai chức năng chính sau đây:
• Quyết định chọn đường theo những tiêu chuẩn (tối ưu) nào đó.
• Cập nhật thông tin chọn đường, tức là các thông tin dùng cho
chức năng
Quá trình định tuyến (routing) bao gồm hai hoạt động chính, đó là:
• Xác định đường truyền.
• Chuyển tiếp thông tin theo con đường đã chọn.
Việc chuyển tiếp thông tin đi theo con đường đã chọn có thể nói là khá đơn
giản (về mặt thuật toán), trong khi đó, việc xác định đường truyền phức tạp hơn nhiều.
Trong các mạng thông tin khác nhau, việc xác định đường truyền cũng diễn ra khác
nhau. Tuy nhiên, cách xác định đường truyền nào cũng bao gồm hai công việc cơ bản.
Thứ nhất là thu thập và phân phát thông tin về tình trạng của mạng (ví dụ như trạng
thái đường truyền, tình trạng tắc nghẽn…) và của thông tin cần truyền (ví dụ như lưu
lượng, yêu cầu dịch vụ…). Các thông tin này sẽ được sử dụng làm cơ sở cho việc xác
định đường truyền. Thứ hai là chọn ra đường truyền khả dụng (cũng có thể là đường
truyền tối ưu) dựa trên các thông tin trạng thái trên. Đường truyền khả dụng là đường
truyền thoả mãn mọi yêu cầu của thông tin cần truyền (ví dụ: tốc độ) và điều kiện của
mạng (ví dụ: khả năng của đường truyền). Còn đường truyền tối ưu (theo một tiêu
chuẩn nào đó) là đường truyền tốt nhất trong các đường truyền khả dụng. Tiêu chuẩn
(tối ưu) để chọn đường xác định bởi người quản lí hoặc thiết kế mạng, nó có thể là:
Độ trễ trung bình của việc truyền gói tin.
Số lượng nút trung gian giữa nguồn và đích của gói tin.
Độ an toàn của việc truyền tin.
• Cước phí truyền tin.
• Tổ hợp các tiêu chuẩn trên.
Việc chọn tiêu chuẩn tối ưu như vậy phụ thuộc nhiều vào tình trạng mạng (cấu
hình mạng, thông lượng, mục đích sử dụng v.v…). Các tiêu chuẩn có thể thay đổi vì

tình trạng mạng cũng có thể thay đổi theo thời gian.
Đối với việc chuyển tiếp thông tin, trong mỗi mạng thông tin có thể sử dụng 2
kiểu chuyển tiếp: hướng kết nối và phi kết nối. Kiểu hướng kết nối là kiểu truyền
thông tin bao gồm 3 giai đoạn: giai đoạn thiết lập kết nối, giai đoạn truyền thông tin
trên kết nối vừa thiết lập và cuối cùng là giai đoạn giải phóng kết nối. Còn kiểu
chuyển tiếp phi kết nối thì chỉ có mỗi một giai đoạn truyền thông tin. Trong kiểu
Phan Thái Minh-D04VT1 1
Đồ án tốt nghiệp Đại học Chương I. Tổng quan về định tuyến
hướng kết nối, thông tin sử dụng luôn được truyền trên một con đường(hình 1.1).
Trong khi đó, kiểu phi kết nối thì thông tin được truyền từ nguồn tới đích bằng nhiều
con đường khác nhau (hình 1.2).
Hình1.1. Truyền thông tin theo kiểu hướng kết nối
Hình1.2. Truyền thông tin theo kiểu phi kết nối
1.2. Các phương pháp truyền thông tin
1.2.1. Truyền thông tin theo kiểu tràn lụt
Phương pháp truyền tin theo kiểu tràn lụt hoạt động rất hiệu quả trong những
mạng động: vị trí node đích thay đổi hoặc cấu hình mạng thay đổi liên tục, hoặc lưu
lượng trong mạng thay đổi với lượng lớn, liên tục.
Hoạt động của phương pháp này như sau: thông tin từ nguồn được truyền tới
tất cả các điểm lân cận. Từ những điểm này, thông tin lại tiếp tục được chuyển đi tới
các điểm lân cận nó. Việc truyền này chỉ kết thúc khi điểm đích đã nhận được thông
tin.
Để có thể kết thúc việc phân phát các gói tin thường sử dụng một trong hai
cách sau:
• Mỗi node lưu lại thông tin về các gói tin nó đã nhận và phát tràn
lụt. Khi nhận được gói tin đến từ node lân cận, nó sẽ kiểm tra
xem gói đã được nhận lần nào chưa. Nếu đó là gói chưa nhận lần
nào, sẽ lưu thông tin về gói đó trong bộ nhớ và phát tràn lụt sang
node lân cận. Nếu đã nhận được gói trong quá khứ, sẽ không thực
hiện phát tràn lụt nữa.

• Trong mỗi gói tin được phát tràn lụt, có một trường mang thông
tin về số bước nhảy của gói đó (chính là số link nó đã đi qua).
Mỗi khi một node chuyển tiếp một gói tin sang node lân cận, giá
Phan Thái Minh-D04VT1 2
A B
M
es
sa
ge
4
M
es
sa
ge
1
Message 2
S2
S1
S3
S5
S4
S6
A B
M
es
sa
ge
1
S2
S1

S3
S5
S4
S6
Đồ án tốt nghiệp Đại học Chương I. Tổng quan về định tuyến
trị bước nhảy này sẽ tăng lên một. Nếu giá trị mới này lớn hơn
một giá trị giới hạn nào đó, gói tin sẽ không phát tràn lụt nữa, còn
nếu nhỏ hơn, nó sẽ tiếp tục được phát tràn lụt. Giá trị tới hạn
thường được chọn tuỳ vào kích thước mạng.
Theo phương pháp phát tràn lụt, một lượng lớn tài nguyên mạng bị hao phí, tuy
nhiên sẽ đến đích theo con đường nhanh nhất mà không cần phải tính toán, không cần
phải lưu giữ bảng chọn đường.
Phương pháp tràn lụt hiếm khi được dùng để truyền thông tin người sử dụng.
Nhìn chung, nó thường chỉ được sử dụng trong mạng để phân phát các thông tin cần
thiết hoặc hỗ trợ cho hoạt động của mạng. Ví dụ, truyền tin tràn lụt có thể được dùng
khi thiết lập kênh ảo trong mạng ATM: một node khi thiết lập kênh ảo VC tới một
node khác trên mạng, nó chỉ việc gửi gói tin tìm đường. Các gói tin này luôn ghi lại
con đường nó đã đi qua. Tại phía node đích, khi nhận được gói tin đầu tiên, sẽ báo về
nguồn theo con đường của gói tin đó và VC được thiết lập cũng theo con đường này.
1.2.2. Truyền thông tin theo con đường ngẫu nhiên
Ở phương pháp truyền này, mỗi khi thông tin tới một node, nếu đó không phải
là đích thì nó sẽ tiêp tục truyền theo một con đường ngẫu nhiên nào đó (miễn là không
phải hướng mà qua đó vừa nhận dữ liệu). Việc chọn hướng này có thể là hoàn toàn
ngẫu nhiên, cũng có thể là ngẫu nhiên theo trọng số. Nếu ngẫu nhiên theo trọng số thì
các trọng số thường được xác định dựa vào thống kê về kết quả của các lần truyền
trước.
Theo phương pháp truyền ngẫu nhiên, việc tính toán đường truyền rất ít, tổng
lưu lượng đường truyền chắc chắn sẽ nhỏ hơn so với phương phát tràn lụt. Tuy vậy,
thời gian để dữ liệu đi đến đích sẽ lớn, không thể xác định trước được.
1.2.3. Truyền thông tin dựa vào bảng chọn đường

Tại mỗi node trong mạng có lưu giữ một bảng chọn đường. Bảng này có chứa
nhiều mục. Mỗi mục mang thông tin về hướng truyền (đường truyền) cho một đích
(có thể là một node, cũng có thể là một nhóm node). Mỗi khi cần truyền thông tin đến
một đích, node nguồn lại tìm kiếm trong bảng chọn đường của mình chọn ra entry phù
hợp nhất với node đích. Sau đó, thông tin sẽ được truyền đi theo hướng dẫn trong mục
này.
Mạng chuyển mạch kênh thiết lập một đường truyền vật lý hoặc logic giữa hai
node trước khi truyền thông tin. Sau đó, tất cả thông tin (của một lần kết nối) sẽ được
truyền đi theo con đường này. Nhiệm vụ của việc chọn đường là phải chỉ ra được con
đường tốt nhất giữa mỗi cặp node trong mạng.
Trong mạng chuyển mạch gói, để cung cấp các dịch vụ hướng kết nối hai node,
một con đường ảo sẽ được tạo ra mỗi khi thiết lập kết nối. Con đường này sẽ được sử
dụng để truyền tất cả các gói tin trong lần kết nối đó. Bởi vậy, mỗi gói tin cần phải có
thông tin về đường ảo của mình. Bảng chọn đường ở mỗi node sẽ chứa thông tin để
có thể xác định hướng đi tiếp theo cho các gói tin của các con đường ảo khác nhau.
Ngoài các dịch vụ hướng kết nối, mạng chuyển mạch gói còn có khẩ năng cung
cấp các dịch vụ phi kết nối nhờ sử dụng phương pháp định tuyến đơn vị dữ liệu. Với
định tuyến đơn vị dữ liệu, con đường cho mỗi gói tin không xác định trước và chỉ
Phan Thái Minh-D04VT1 3
Đồ án tốt nghiệp Đại học Chương I. Tổng quan về định tuyến
được xác định từng bước một qua quyết định chọn đường ở mỗi node trung gian. Do
đó, mỗi gói tin phải mang theo mình đầy đủ thông tin về địa chỉ node đích. Thêm nữa,
mỗi gói tin từ cùng một node nguồn được chuyển tới node đích theo nhiều con đường
khác nhau, nên ở node đích, thứ tự của gói tin sẽ lộn xộn và cần phải sắp xếp lại, nên
mỗi gói tin phải mang số thứ tự kèm theo.
Nhưng dù là mạng kết nối hay phi kết nối, thì vẫn phải thực hiện việc tính toán
tạo bảng chọn đường. Bảng chọn đường có thể mang dữ liệu cố định hoặc thay đổi
theo thời gian. Nếu dữ liệu thay đổi, trong mạng cần có thủ tục tính toán sao cho dữ
liệu thay đổi phù hợp với sự thay đổi của mạng. Để tính toán bảng chọn đường, cần
phải đặt ra những tiêu chuẩn để chọn lựa giữa các con đường với nhau. Thông thường,

người ta gán cho mỗi link trong mạng một giá trị gọi là cost. Thủ tục chọn đường sẽ
dựa trên cost của các link trong mạng để hoạt động. Giá trị cost gán cho mỗi link được
tính toán dựa trên các tham số khác nhau. Có những tham số cố định như: dung lượng,
trễ truyền lan, mức độ bảo mật, giá cả sử dụng link…Cũng có những tham số thay đổi
liên tục như: mức độ chiếm dụng link, mức độ sử dụng bộ đệm, trễ trung bình của mỗi
gói tin, tỉ lệ lỗi…
Đối với những mạng cập nhật bảng chọn đường theo thời gian, khoảng thời
gian giữa hai lần cập nhật là một giá trị quan trọng. Nếu giá trị này quá lớn, cost của
mỗi tuyến đường theo như bảng chọn đường không còn đúng với thực tế, tức là các
con đường không còn đảm bảo đúng theo tiêu chuẩn. Nếu khoảng thời gian này quá
ngắn, lượng công việc tính toán tạo bảng chọn đường sẽ tăng lên rất nhiều, các bảng
chọn đường liên tục thay đổi. Đồng thời nếu các node không đồng bộ trong việc cập
nhật bảng chọn đường sẽ gây ra lộn xộn trong việc truyền thông tin.
Nếu có một hàm tính toán cost hợp lý giữa các tham số tĩnh và động, cùng với
chọn được khoảng thời gian cập nhật thích hợp, mạng sẽ hoạt có hiệu quả cao nhất,
đảm bảo chất lượng dịch vụ mà người dùng yêu cầu.
1.3. Phân loại các phương pháp định tuyến
Có rất nhiều phương pháp phân loại việc định tuyến đã được đưa ra. Nhưng rất
khó có thể tìm ra một cách phân loại nào có thể bao quát được tất cả các mục tiêu đặt
ra đối với việc định tuyến. Dưới đây là các kiểu phân loại định tuyến mà mỗi loại chỉ
phản ánh một cách tương đối công việc chọn đường. Sự liệt kê chúng là một cố gắng
mô tả rõ nét nhất các khía cạnh của vấn đề định tuyến.
1.3.1. Định tuyến tập trung và phân tán
Một cách phân loại phổ biến chia các phương pháp định tuyến ra làm hai loại:
định tuyến tập trung và định tuyến phân tán.
Định tuyến tập trung được thực hiện bởi một (hoặc một vài) trung tâm điều
khiển mạng. Thông tin về chọn đường trong bảng chọn đường sau đó được gửi tới tất
cả các node dọc theo con đường đã chọn. Trong trường hợp này, thông tin tổng thể
của mạng cần dùng cho việc chọn đường chỉ được cất giữ tại trung tâm điều khiển
mạng. Các node mạng có thể không gửi bất kì một thông tin nào và trạng thái của

chúng tới trung tâm, hoặc gửi theo định kỳ, hoặc chỉ khi xảy ra một sự kiện nào đó.
Trung tâm điều khiển sẽ cập nhật bảng chọn đường dựa trên các thông tin nhận được
đó.
Phan Thái Minh-D04VT1 4
Đồ án tốt nghiệp Đại học Chương I. Tổng quan về định tuyến
Đối với kỹ thuật định tuyến phân tán, công việc tính toán chọn đường được
thực hiện ở các node trong mạng mà không tồn tại một trung tâm điều khiển quyết
định chọn đường nào. Tất cả các node đều có nhiệm vụ xử lý chọn đường như nhau.
Nhược điểm của kỹ thuật định tuyến tập trung là độ tin cậy không cao, bởi hoạt
động của trung tâm xử lý tập trung vào một chỗ nên nếu tại đấy gặp sự cố thì mạng sẽ
bị ảnh hưởng. Chính vì lí do này mà định tuyến tập trung không được sử dụng nhiều
trong các mạng hiện tại.
Định tuyến phân tán giúp nâng cao độ tin cậy của mạng. Khi có một node
hỏng, việc chọn đường ở các node xung quanh cũng không bị ảnh hưởng. Thêm nữa,
bảng chọn đường tại mỗi node nhanh chóng được cập nhật hơn.
1.3.2. Định tuyến thích nghi và không thích nghi
Các kỹ thuật định tuyến cũng có thể phân thành hai loại: thích nghi (định tuyến
động) và không thích nghi (định tuyến tĩnh).
Định tuyến không thích nghi là kỹ thuật chọn đường trong đó việc chọn đường
có thể tập trung hay phân tán nhưng nó không đáp ứng với mọi sự thay đổi trên mạng.
Trong trường hợp này, việc chọn đường được thực hiện mà không có sự trao đổi
thông tin, không đo lường và không cập nhật thông tin một cách tự động. Thông tin về
đường đi được lưu cố định trong các bảng chọn đường, khi cần chọn đường thì đường
đi sẽ được lấy từ đó. Thông tin trong các bảng chọn đường không tự thay đổi, nếu
muốn thay đổi thì cần phải có sự can thiệp của người quản trị mạng. Thông thường,
với chọn đường không thích nghi, bảng chọn đường có thể đưa ra một số con đường
thay thế khi con đường kế tiếp gặp sự cố (quá tải, hỏng). Kỹ thuật chọn đường này
nhìn chung là đơn giản, do vậy được sử dụng rất rộng rãi, đặc biệt trong các mạng
tương đối ổn định ít có sự thay đổi về topo, lưu thông trên mạng và thành phần trên
mạng.

Ưu điểm:
• Đường đi lựa chọn nhanh, phù hợp với mạng ổn định, ít có sự
thay đổi, cập nhật.
Nhược điểm:
• Khi có thêm node mạng, người quản trị mạng phải cập nhật
thông tin về đường đi cho node mạng và các node có liên quan.
• Không có khả năng chọn đường đi mới trong quá trình trao đổi
thông tin khi đường đi bị tắc nghẽn, hỏng v.v…
Định tuyến thích nghi (còn gọi là định tuyến động) là kỹ thuật chọn đường
trong đó việc tính toán chọn đường tối ưu được thực hiện nhiều lần trong khi mạng
hoạt động và có khả năng thích ứng với những sự thay đổi của mạng. Cứ sau một
khoảng thời gian qui định trước hoặc mỗi khi mạng có sự thay đổi về cấu hình, trạng
thái thì thông tin về mạng lại được gửi tới những nơi có nhiệm vụ thực hiện chọn
đường để tiến hành chọn đường lại.
Kỹ thuật chọn đường thích nghi thu hút sự quan tâm đặc biệt của các nhà thiết
kế do khả năng đáp ứng đối với các trạng thái khác nhau của mạng. Đây là một yếu tố
Phan Thái Minh-D04VT1 5
Đồ án tốt nghiệp Đại học Chương I. Tổng quan về định tuyến
quan trọng, đặc biệt đối với các ứng dụng thời gian thực trong đó yêu cầu đầu tiên của
người sử dụng là mạng phải có khả năng cung cấp được các con đường khác nhau để
đề phòng sự cố và thích nghi nhanh chóng với các thay đổi trên mạng. Mức độ thích
nghi của một kỹ thuật chọn đường được đặc trưng bởi sự trao đổi thông tin trong
mạng. Đơn giản nhất là không trao đổi gì hết. Mỗi node (hoặc trung tâm điều khiển
trong trường hợp kỹ thuật tập trung) hoạt động một cách độc lập với thông tin riêng
của mình để thích nghi với sự thay đổi của mạng theo một phương pháp nào đó. Ở
mức độ cao hơn, thông tin trạng thái của mạng có thể được cung cấp từ các node láng
giềng hoặc từ các node khác. Thông thường, các thông tin đo lường và sử dụng cho
việc chọn đường bao gồm:
• Các trạng thái của đường truyền.
• Các độ trễ truyền dẫn.

• Mức độ lưu thông.
• Các tài nguyên khả dụng.
Khi có sự thay đổi trên mạng (ví dụ sự thay đổi topo do sự cố hoặc do sự phục
hồi của một node mạng, nối thêm một node mới v.v… hoặc thay đổi về mức độ lưu
thông) các thông tin trên cần được cập nhật.
1.3.3. Định tuyến nguồn/ từng bước
Các phương pháp định tuyến cũng có thể phân loại dựa vào cách tạo ra tuyến
đường. Nếu tuyến đường được xác định ngay từ ở node nguồn, các node trung gian
trên đường đi chỉ làm nhiệm vụ chuyển tiếp gói tin, thì ta gọi là định tuyến nguồn
(Source routing). Còn nếu tuyến đường không được định ngay từ đầu, mà được phân
thành nhiều đoạn do các node khác nhau chọn, thì ta gọi là định tuyến từng bước.
Theo phương pháp định tuyến nguồn, mỗi gói tin khi truyền trên mạng đều
phải mang thông tin về tuyến đường của mình. Ở mỗi node chỉ việc căn cứ vào thông
tin này mà chuyển tiếp gói tin. Còn theo cách chọn đường từng bước mỗi gói tin cần
mang địa chỉ đích là đủ. Do đó, tiêu đề của gói tin sẽ bé hơn.
Định tuyến từng bước đáp ứng nhanh hơn với những thay đổi trong mạng
(những thay đổi này ảnh hưởng tới gói tin ngay khi gói tin đang truyền trong mạng).
Nhưng đồng thời, chọn đường từng bước có thể làm cho các gói tin bị chuyển đi theo
vòng. Còn chọn đường nguồn đảm bảo gói tin sẽ đi thẳng tới đích.
1.3.4. Định tuyến phân cấp và không phân cấp
Trong định tuyến không phân cấp, tất cả các node được coi là ngang hàng với
nhau về mặt xử lý định tuyến. Trong khi đó, định tuyến phân cấp phân các node ra
thành nhiều cấp khác nhau. Các node thuộc các cấp khác nhau có những khả năng
định tuyến thông tin khác nhau.
Chọn đường phân cấp đơn giản hơn nhiều so với chọn đường không phân cấp,
tuy nhiên, kết quả không tốt bằng.
Trong chọn đường phân cấp các node chỉ cần biết thông tin về các node đồng
cấp, cùng vùng, mà không cần biết cấu hình của mạng ở các vùng khác, cấp khác. Để
định tuyến sang một node ở vùng khác, nó chuyển công việc lên cho node cấp trên.
Phan Thái Minh-D04VT1 6

Đồ án tốt nghiệp Đại học Chương I. Tổng quan về định tuyến
Trong chọn đường không phân cấp bảng chọn đường ở mỗi node chứa thông
tin về tất cả các node trong mạng nó có thể tới. Do đó cần phải có lượng bộ nhớ lớn
hơn để lưu trữ bảng chọn đường, đồng thời cũng cần nhiều đường truyền dành cho
việc trao đổi thông tin chọn đường giữa các node hơn. Ưu điểm của chọn đường
không phân cấp là nó có thể đáp ứng tốt với vấn đề xử lý lưu lượng, đối phó với lỗi
xảy ra, do đó nâng cao được độ tin cậy của mạng. Trong khi đó, chọn đường phân cấp
làm cho hoạt động của mạng bị phụ thuộc vào node cấp trên, nếu các node này hỏng,
mạng sẽ bị tách ra thành nhiều phần không liên lạc được với nhau.
1.4. Một số giải thuật định tuyến điển hình
1.4.1. Giới thiệu
Có rất nhiều giải thuật định tuyến khác nhau. Mỗi giải thuật có những ưu điểm
cũng như những hạn chế riêng. Người thiết kế khi thiết kế mạng sẽ căn cứ vào mạng
của mình (đặc điểm của mạng, các tiêu chí đối với việc truyền thông tin trong
mạng…) để lựa chọn thuật toán chọn đường cho phù hợp. Người ta có thể đánh giá
thuật toán chọn đường theo những khía cạnh sau:
• Tối ưu.
• Lượng tài nguyên mạng sử dụng để phục vụ việc định tuyến.
• Mạnh và ổn định.
• Tốc độ hội tụ.
• Linh hoạt.
Tối ưu
Có những thuật toán chọn ra được những đường truyền tối ưu, cũng có những
thuật toán chỉ chọn ra được đường truyền gần tối ưu…Để đánh giá mức độ tối ưu của
tuyến đường, khi triển khai thuật toán phải xác định rõ là tối ưu theo tiêu chí gì? Có
nhiều tham số hay được sử dụng để đánh giá một tuyến đường tối ưu:
• Số node phải đi qua.
• Khoảng cách vật lý.
• Giá thành truyền dẫn.
• Độ trễ truyền lan.

• Độ tin cậy.
• Băng thông.
• Hiệu suất sử dụng mạng.
• Mức độ xử lý tại node.
Để đơn giản khi mô tả các thuật toán, người ta đưa ra một khái niệm: “độ dài”.
Độ dài của tuyến đường là một hàm phụ thuộc vào một hoặc nhiều tham số ở trên. Do
đó, việc chọn con đường có độ dài tối ưu cũng là con đường có “độ dài ngắn nhất”.
Nhiều khi, “độ dài” của link còn được gọi là cost, hoặc giá. Các cách gọi này mang ý
nghĩa như nhau.
Phan Thái Minh-D04VT1 7
Đồ án tốt nghiệp Đại học Chương I. Tổng quan về định tuyến
Lượng tài nguyên mạng sử dụng để phục vụ việc định tuyến.
Bất kỳ thuật toán chọn đường nào, để hoạt động được đều phải sử dụng tài
nguyên mạng. Để đánh giá lượng tài nguyên mạng sử dụng, người ta thường dựa trên
những thông tin như: độ phức tạp tính toán khi xây dựng bảng chọn đường, lượng bộ
nhớ yêu cầu, lượng thông tin trao đổi để phục đường.
Mạnh và ổn định.
Thuật toán phải mạnh và ổn định, nghĩa là nó phải hoạt động tốt trong mọi tình
huống, ngay cả trong những trường hợp bất thường, không thể dự báo trước như là lỗi
truyền dẫn, lưu lượng tăng cao đột ngột…
Tốc độ hội tụ.
Đối với những mạng thay đổi liên tục, việc chọn đường cũng cần phải cập nhật
thông tin thường xuyên và sau đó thì đưa ra các quyết định chọn đường mới. Do đó,
nếu tốc độ hội tụ của thuật toán thấp, không đáp ứng kịp thời với sự thay đổi của
mạng, có thể gây ra tình trạng có những vòng lặp đi, lặp lại trong tuyến đường làm
cho hoạt động của mạng bị đình trệ. Ta có thể xem xét một thí dụ đơn giản như sau:
Hình 1.3.Quá trình tốc độ hội tụ thấp dẫn tới định tuyến vòng
Giả sử việc chọn đường được thực hiện tại từng node, mỗi lần mạng thay đổi
hoặc trong một khoảng thời gian nào đó thì thông tin về mạng được cập nhật, và sau
đó thì các bộ chọn đường phải tính toán lại. Nhưng do độ hội tụ của thuật toán thấp

nên các bảng chọn đường ở mỗi node được tạo ra ở những thời điểm khác nhau. Nếu
ta cần chuyển một bản tin tới node X trong mạng, con đường tới node X đã được xác
định là phải qua node R1. Khi gói tin tới R1, bảng chọn đường vừa được cập nhật và
xác định node tiếp theo trên con đường đi tới node X là phải đi qua node R2, nó sẽ
được chuyển tới R2, nhưng khi tới node R2, do chưa có bảng chọn đường cập nhật
nên lại xác định node tiếp theo trên con đường đi tới node X là node R1 (theo thông
tin cũ ), gói tin lại được chuyển trở lại node R1. Điều này làm cho việc chọn đường
của chúng ta bị luẩn quẩn ở hai node R1, R2 này, gói tin không thể tới đích
Linh hoạt
Chọn đường linh hoạt có nghĩa là mỗi khi trong mạng có sự thay đổi, việc chọn
đường phải nhanh chóng phát hiện được thay đổi này và điều chỉnh lại các thông tin
chọn đường cho phù hợp.
Phan Thái Minh-D04VT1 8
Gói tin tới
router X
Đích: Node sau:
X R2
Đích: Node sau:
X R1
Bảng chọn đường đã cập nhật Bảng chọn đường chưa cập nhật
Node R1 Node R2
Đồ án tốt nghiệp Đại học Chương I. Tổng quan về định tuyến
1.4.2. Thuật toán tìm đường ngắn nhất
Bài toán tìm đường đi ngắn nhất trong số các con đường tồn tại giữa hai điểm
đã được giải quyết từ lâu và thuần tuý là toán học. Các giải thuật đó có thể áp dụng
vào kỹ thuật chọn đường trong mạng với một ít thay đổi với bối cảnh ứng dụng. Sau
đây sẽ trình bày hai giải thuật điển hình.
Thuật toán Dijkstra
Bài toán đặt ra là: tìm con đường có giá (độ dài) cực tiểu từ một node nào đó
(node nguồn) tới một node khác trong mạng (node đích). Giá ở đây là giá trị của các

đại lượng như trễ trung bình, khoảng cách vật lý, số node phải đi qua.v.v…Ta dùng
giá ở đây là để xét bài toán tổng quát. Giải thuật Dijkstra sẽ từng bước kiến thiết một
cây đường “ngắn nhất”, có gốc tại node nguồn, cho tới khi node xa nhất trong mạng
đã được đưa vào. Ở bước thứ k, các con đường “ngắn” nhất của k node gần nguồn
nhất sẽ được tính. Các node đó được định nghĩa thuộc một tập N.
Gọi: d(i,j) là “độ dài” của đường nối hai node i và j, d(i,j) =∞ nếu đường nối
đó không tồn tại.
Nk là tập hợp tạo thành bởi k+1 phần tử: nguồn và k node gần nguồn
nhất sau k bước thực hiện thuật giải.
Dk(n) là “độ dài” từ nguồn tới node n theo con đường ngắn nhất bao
hàm trong Nk.
Xét tổng quát, giả sử node 1 là node nguồn. Để tính các con đường ngắn nhất
từ node 1 tới các node còn lại của mạng, ta có các bước sau:
Bước 0 (khởi động)
N0 = {1}
D0(v)= d(1,v), v không thuộc N0
Bước k (tính và cập nhật)
Nk=Nk-1U {w}
trong đó w thoã mãn biểu thức Dk-1(w)=minDk-1(v), với mọi v không thuộc Nk-1
Dk(v)=min[Dk-1(v), Dk-1(w) +d(w,v)], v không thuộc Nk.
Thuật toán sẽ dừng lại khi tất cả các node đã nằm trong N.
Dưới đây ta sẽ xét một ví dụ với mạng có 6 node và yêu cầu là phải thiết lập
một cây đường đi ngắn nhất từ node 1 tới các node còn lại.
Hình 1.4. Mô hình mạng 6 node
Phan Thái Minh-D04VT1 9
Node 1
Node 2 Node 3
Node 4
Node 5Node 6
2

1
1
2
1
Đồ án tốt nghiệp Đại học Chương I. Tổng quan về định tuyến
Mạng trong ví dụ như hình 1.4, trong đó những con số ghi cạnh các đường nối
các node biểu thị giá của từng cặp node kề nhau và nối với nhau
Hình 1.5. Cây đường đi ngắn nhất sau khi chọn đường
Áp dụng thuật toán trên ta được cây đường đi ngắn nhất được biểu diễn trong hình 1.4.
Ta thấy rằng, giải thuật ở trên sử dụng thông tin tổng thể của mạng tại mỗi
node, vì thể nó thích hợp cho kỹ thuật chọn đường tập trung.
Bảng mô tả thuật toán tìm đường ngắn nhất cho node 1 như sau:
Bảng 1.1: Các bước thực hiện thuật toánDijkstra
Bước Tập N D(2) D(3) D(4) D(5) D(6)
0
1
2
3
4
5
{1}
{1,4}
{1,4,5}
{1,2,4,5}
{1,2,3,4,5}
{1,2,3,4,5,6}
2
2
2
2

2
2
5
4
3
3
3
3
1
1
1
1
1
1

2
2
2
2
2


4
4
4
4
Sau khi đã thực hiện chọn đường ngắn nhất xong, tại node 1 bảng chọn đường
sẽ có dạng như dưới đây:
Bảng 1.2: Bảng chọn đường tại node 1
Đích Nút tiếp theo

2
3
4
5
6
2
4
4
4
4
Dưới đây sẽ tiếp tục giới thiệu một thuật toán tìm đường ngắn nhất. Thuật toán
này phù hợp với dạng chọn đường kiểu phân tán.
Thuật toán Bellman-Ford
Thuật toán này cũng gồm hai phần: bước khởi đầu và bước lặp cho tới khi
tính xong các tuyến đường dẫn. Sự khác biệt với thuật toán đã trình bày là ở chỗ thay
vì coi nút 1 là nút nguồn thì lại coi nó là nút đích, đồng thời từ tất cả các nút khác ta
Phan Thái Minh-D04VT1 10
Node 1
Node 2
Node 3
Node 4
Node 5
Node 6
2
1
2
Đồ án tốt nghiệp Đại học Chương I. Tổng quan về định tuyến
tìm đường dẫn ngắn nhất tới đích 1 này. Trong bảng chọn tuyến ta sẽ chỉ ra khoảng
cách (đây cũng chỉ là giá trị trọng số trừu tượng để mô tả giá của tuyến truyền) từ nút
bất kỳ tới nút 1 và nút lân cận để truyền tới đích 1 theo tuyến ngắn nhất. Việc tạo

bảng chọn tuyến sử dụng thuật toán này đòi hỏi phải lặp đi lặp lại cho từng nút một,
và cuối cùng thì ghi tất cả vào trong một tập các nhãn cho từng nút, mỗi nhãn có thông
tin chọn tuyến (nút tiếp theo) và khoảng cách tới đích cuối cùng.
Mỗi nút v có nhãn (n, D(v)), với D(v) là giá trị hiện thời của khoảng cách
ngắn nhất từ nút đó tới đích, còn n là số hiệu của nút tiếp theo trên đường dẫn ngắn
nhất tạm thời.
1. Bước thứ nhất
Coi nút 1 là nút đích, đặt D(v) = 0 và gán (., ∞) cho tất cả các nút
khác.
2. Bước lặp: dán nhãn khoảng cách cho các nút còn lại
Với từng nút khác 1 ta thực hiện như sau:
Thay D(v) bởi giá trị hiện thời D(w) với từng nút lân cận w để tính
giá trị D(w) + l(w, v) và thực hiện phép toán
D(v) = min [D(w] + l(w, v)] (1.1)
Sau đó, gán nhãn mới của v bằng cách thay n bởi nút lân cận tương ứng với
biểu thức (1.1) tính được và thay giá trị mới tìm được vào D(v).
Với mạng ví dụ như hình 1.2, ta thiết lập bảng các vòng thực hiện sau:
Bảng 1.3: Các bước thực hiện thuật toán Bellman-Ford
Bảng 1.3: Các bước thực hiện thuật toán Bellman-Ford
Vòng Nút đích /Nhãn 2 3 4 5 6
0
1
2
1
1
1
(., ∞)
(1, 2)
(1, 2)
(., ∞)

(1, 5)
(5, 3)
(., ∞)
(1, 1)
(1, 1)
(., ∞)
(4, 2)
(4, 2)
(., ∞)
(5, 4)
(5, 4)
Sau hai vòng lặp, các giá trị nhãn trở nên bất biến, có nghĩa rằng thuật toán đã
được thực hiện xong. Như vậy, trong vòng 1 nhận thấy nút 2 là “gần nhất” đối với nút
1, giá thành mới của nó là D(v) = D(1) + l(1,2) = 2, và nhãn của nó chuyển thành
(1,2). Chuyển tới nút 3, ta có thể chọn hoặc D(2) + l(2,3) =5 hoặc D(1) + l(1,3) = 5;
giả sử ta chọn D(1) + l(1,3) thì nhãn mới của nó là (1,5) (ta cũng có thể chọn D(2) +
l(2,3) vì kết quả cuối cùng như nhau). Ở vòng lặp thứ hai,ta có thể thay tại nút 3 nhãn
mới vì giá trị tối thiểu mới là D(w) + l(w, 3) = D(5) + l(5,3) = 3, do vậy nhãn của nó là
(5,3). Từ đó trở đi, các giá trị không thay đổi nên quá trình có thể coi là hoàn thành.
Nếu ta xây dựng sơ dồ cây trên cơ sở các kết quả nhận được thì ta có mô hình của
hình 2.4b, với nút 1 là gốc.
1.4.3. Thuật toán tràn ngập
Một giải thuật định tuyến khác nữa là tràn ngập. Trong giải thuật này mỗi một
gói đến đều dược truyền đi trên mọi link nối vào nó ngoại trừ link mà nó từ đấy đến.
Cách hoạt động này của tràn ngập làm tạo ra một số lượng lớn các bản sao của gói mà
Phan Thái Minh-D04VT1 11
Đồ án tốt nghiệp Đại học Chương I. Tổng quan về định tuyến
trong thực tế là một lượng vô hạn trừ khi có một số phép đo nào đó được thực hiện để
hạn chế quá trình này. Một trong những phép đo như vậy là có một bộ đếm bước nhảy
trong phần đầu của mỗi một gói, bộ đếm này được giảm ở mỗi bước nhảy và gói sẽ bị

huỷ bỏ khi bộ đếm bằng 0. Một cách lí tưởng, bộ đếm bước nhảy cần được khởi động
bằng cách nạp giá trị đầu là chiều dài của đường dẫn từ nguồn tới đích. Nếu nguồn
không biết đường dẫn dài bao nhiêu, ta có thể khởi động bộ đếm bằng giá trị xấu nhất,
nghĩa là đường kính của toàn mạng.
Một cách khác để hạn chế sự tràn ngập là theo dõi những gói bị ngập, để tránh
truyền lại các gói này lần thứ hai. Để đạt được mục đích này, bộ định tuyến nguồn
phải đặt một số thứ tự trong mỗi một gói mà bộ định tuyến này nhận được từ máy host
nối vào nó. Mỗi một bộ định tuyến sau đó cần có một danh sách trên mỗi bộ định
tuyến nguồn cho biết số thứ tự nào khởi đầu của nguồn đó đã được nhận thấy. Nếu có
một gói đến trong bảng danh sách, gói này không bị tràn ngập.
Tràn ngập không thiết thực trong hầu hết các ứng dụng, nhưng tràn ngập cũng
có một số các ứng dụng. Thí dụ, các ứng dụng trong quân sự, trong đó một số lượng
lớn các bộ định tuyến có thể bị hư làm trì hoãn tại một lúc bất kỳ thì sự tràn ngập là
một cứu vãn tốt nhất. Trong các ứng dụng dữ liệu phân bố, đôi khi ta cần cập nhật các
dữ liệu một cách đồng thời, trong trường hợp này tràn ngập lại rất hữu dụng.
Tóm lại, thuật toán “tràn ngập” là một thuật toán định đường tĩnh (vì nó không
có sự cập nhật thông tin trong quá trình định đường) rất đơn giản và không được ưa
thích cho lắm. Tuy nhiên, khi trong mạng có một node bị hỏng có thể gây khó khăn
cho các thuật toán định tuyến khác thì thuật toán “tràn ngập” lại làm việc tốt, mặc dù
nó định đường không tối ưu và thường gây tắc nghẽn trong mạng.
1.4.4. Định tuyến theo vec-tơ khoảng cách
1.4.4.1. Giới thiệu
Thuật toán chọn đường theo vec-tơ khoảng cách đã được sử dụng phổ biến
trong các mạng chuyển gói từ cách đây vài thập kỷ, bắt đầu từ mạng ARPANET. Nó
được sử dụng phổ biến có thể là do đơn giản, tính toán phân tán, chỉ sử dụng những
thông tin cục bộ để định ra con đường tới đích.
Giải thuật định tuyến theo vec-tơ khoảng cách hoạt động trong thực tế bằng
cách mỗi một bộ định tuyến duy trì một bảng (nghĩa là một vec-tơ) cung cấp khoảng
cách tốt nhất được biết cho mỗi đích và đường dây nào được sử dụng để đến được
đích. Các bảng này được cập nhật bằng cách trao đổi thông tin với các bộ định tuyến

láng giềng.
Thuật toán chọn đường theo vec-tơ khoảng cách chọn ra con đường tối ưu theo
một tiêu chuẩn tối ưu định trước. Thước đo để đánh giá có thể là các tham số về trễ, tỉ
lệ lỗi, cước phí truyền dẫn…Khi đánh giá một đường truyền, ta dựa trên một giá trị
gọi là cost của đường truyền đó. Cost có thể là một tham số ở trên, cũng có thể là một
hàm phụ thuộc vào nhiều tham số. Đường truyền tối ưu nghĩa là có cost nhỏ nhất.
Cơ sở của thuật toán chọn đường theo vec-tơ khoảng cách là thuật toán
Bellman-Ford mà ta đã xét ở trên.
Hạn chế của thuật toán chọn đường theo vec-tơ khoảng cách là tốc độ hội tụ
của thuật toán bị ảnh hưởng rất nhiều khi các link trong mạng thay đổi cost liên tục.
Phan Thái Minh-D04VT1 12
Đồ án tốt nghiệp Đại học Chương I. Tổng quan về định tuyến
Sau đây là các vấn đề cần được xét của thuật toán chọn đường theo vec- tơ
khoảng cách.
1.4.4.2. Tính toán lại cost
Giả sử tại thời điểm trước khi có sự thay đổi về cost của các link, tuyến đường
từ node i đến node j phải đi qua lân cận với i là k, và cost của toàn tuyến đường đó là
d. Nếu sau khi thay đổi cost, node i nhận được thông tin từ node lân cận k rằng qua k,
con đường tới j có tổng cost là d’<d, thì thông tin về con đường tới j của i sẽ được cập
nhật. Trường hợp khác, nếu node k thông báo với node i rằng con đường tới j qua k
tăng cost, khi đó node i sẽ thực hiện lại việc tính toán chọn đường tới node j.
Trong trường hợp node k bị hỏng (hoặc link từ i tới j bị hỏng), cần phải có biện
pháp để xử lí lỗi này, bởi vì theo như hoạt động thông thường, lỗi này không thể được
xử lý. Bởi con đường tới j của i chỉ có thể thay đổi khi k gửi thông tin thay đổi cost
của con đường tới j cho i, mà việc gửi này không thể thực hiện được. Các giao thức
chọn đường theo phương pháp vec-tơ khoảng cách đều cần có một cơ chế xử lý
trường hợp này. Ví dụ như giao thức RIP, sẽ quy định một chu kỳ cho các node gửi
thông tin cập nhật tới các node lân cận. Nếu có một node, cứ sau một số hữu hạn chu
kỳ đó, không nhận được thông tin cập nhật từ một node lân cận thì tất cả các con
đường từ node này qua node lân cận đó đều bị huỷ và phải tính toán lại những con

đường bị huỷ đó.
1.4.4.3. Đếm đến vô cùng
Thuật toán chọn theo vec-tơ khoảng cách có tốc độ hội tụ khác nhau trong các
trường hợp thay đổi cost khác nhau. Nó đáp ứng nhanh với tin tốt lành và đáp ứng
chậm với tin xấu. Để thấy rõ điều này, chúng ta xem xét ví dụ sau: Một mạng có 5
node như hình 1.6, trong đó cost là số bước nhảy.
Hình 1.6. Mạng ví dụ 5 node
Con đường tới các đích không thể tới có cost bằng ‘vô cùng’. Giả sử lúc đầu A
bị hỏng và tất cả các node khác đều biết điều này nên có cost tới A là ‘vô cùng’. Khi
A được khôi phục (tin lành) ở lần trao đổi thông tin đầu tiên, B biết láng giềng bên trái
của nó có cost bằng 0 đến A. Theo bảng định tuyến của B, con đường tới sẽ có cost
bằng 1. Tất cả các node còn lại vẫn nghĩ A bị hỏng và cost của con đường tới A bằng
‘vô cùng’ như trong bảng 2.1, dòng thứ hai. Tại lần trao đổi sau, C biết có cost đến A
là 1 vì thế nó cập nhật bảng định tuyến của nó cost đến A là 2. Cứ vậy, sau 4 chu kỳ
trao đổi thông tin kết quả đúng đã có ở tất cả các node.
Xét trường hợp thứ hai, mạng đang hoạt động tốt thì đường link từ node B đến
node A bị hỏng (tin xấu). Khi B không nhận được thông tin gì về A từ phía bên trái,
nó sẽ coi rằng cost của con đường tới A theo hướng bên trái bằng ‘vô cùng’. Trong
khi đó, con đường tới A theo hướng bên phải sẽ là 2 (qua C) +1(từ B đến C)=3. Con
đường này thực ra là không chính xác bởi nó phải đi qua B để tới A. Cost tới A của C,
D, E vẫn không thay đổi như trong bảng 1.4.
Phan Thái Minh-D04VT1 13
A B C D E
Đồ án tốt nghiệp Đại học Chương I. Tổng quan về định tuyến
Bảng 1.4: Cost của các node trong mạng đến A
Đến lần cập nhật thông tin thứ hai, C nhận được thông tin từ các node lân cận
về con đường ngắn nhất đến A là 3, nó sẽ có cost của con đường đến A là 4. Đến lần
cập nhật thứ ba, B lại cập nhật lại thông tin của mình theo C…Và thông tin cứ chậm
chạp được thay đổi như vậy cho tới khi tất cả các node đều có cost của con đường tới
A là ‘vô cùng’.

Bảng 1.5: Cost của các node trong mạng tới A
B C D E
Thời điểm ban đầu 1 2 3 4
Sau 1 lần cập nhật 3 2 3 4
Sau 2 lần cập nhật 3 4 3 4
Sau 3 lần cập nhật 5 4 5 4
Sau 4 lần cập nhật 5 6 5 6
Sau 5 lần cập nhật 7 6 7 6
Sau 6 lần cập nhật 7 8 7 8
… … … … …
∞ ∞ ∞ ∞
Tại đây có một điều cần lưu ý là nếu như tuân theo phép tính thì giá trị cost sẽ
tiến đến ‘vô cùng’ khi số lần cập nhật tiến đến vô cùng. Điều này là không thể được,
cho nên có một cách giải quyết để tránh khỏi vướng mắc trên là giá trị cost=∞ sẽ được
đặt ngầm định là bắng cost dài nhất cộng 1 (vì ở đây giá trị cost là có giới hạn dựa
theo cấu hình mạng). Còn nếu đối tượng là thời gian trễ trung bình thì không có một
giới hạn nào hoàn toàn xác định cho nên ta sẽ đặt ngầm định ở đây một giá trị lớn
tương ứng với giá trị ‘vô cùng’.
1.4.4.4. Chia cắt hai hướng
Trong trường hợp tin xấu ở trên, hai node C và B đã liên tiếp truyền những
thông tin không chính xác cho nhau, tạo ra đường đi lòng vòng. Để giải quyết tình
trạng này, giải pháp chia cắt hai hướng (trong một số tài liệu, được gọi là giải pháp
chẻ ngang), đã được đưa ra. Theo giải pháp này, một node truyền thông tin đúng về
cost tới đích cho tất cả các node láng giềng trừ node mà qua đó nó sẽ đi tới đích. Đối
với node này, hoặc là nó không truyền thông tin gì (theo phương pháp chia cắt hai
hướng thông thường), hoặc nó truyền lại thông tin rằng cost bằng ‘vô cùng’. Như
Phan Thái Minh-D04VT1 14
B C D E
Thời điểm ban đầu
∞ ∞ ∞ ∞

Sau 1 lần cập nhật 1
∞ ∞ ∞
Sau 2 lần cập nhật 1 2
∞ ∞
Sau 3 lần cập nhật 1 2 3

Sau 4 lần cập nhật 1 2 3 4
Đồ án tốt nghiệp Đại học Chương I. Tổng quan về định tuyến
trong ví dụ trên, node C chỉ truyền thông tin cập nhật đúng về con đường tới A cho
node D, còn với node B, nó không truyền thông tin gì hoặc sẽ truyền thông tin rằng
cost tới A là ‘vô cùng’.
Tuy nhiên, giải pháp chia cắt hai hướng chỉ giải quyết được tình trạng hai node
đưa thông tin không chính xác cho nhau. Còn khi có ba node trở lên đưa thông tin
không chính xác, nó có sẽ lại rơi vào tình trạng tạo nên đường vòng như trong hình vẽ
1.7.
Hình1.7. Mạng ví dụ bước nhảy
Tại thời điểm ban đầu, mạng hoạt động tốt. C có cost tới D là 1. Cả hai A và B
đều có cost tới D là 2 và đi qua C. Khi qua đường link giữa C và D bị hỏng do cả A và
B đều thông báo với B rằng con đường tới D có cost bằng ‘vô cùng’ nên C sẽ đặt cost
con đường tới D bằng ‘vô cùng’ và thông báo cho A, B biết.
Vậy là, cả A, B và C cùng rơi vào tình trạng ‘đếm tới vô cùng’, như trong bảng 1.6.
Khi A và B biết được điều này, nó sẽ thay đổi con đường tới D của mình. A tới
D qua B (với cost bằng 2+1=3<∞) và B tới D qua A (cũng với cost C bằng 3) và hai
node này sẽ gửi thông tin là có cost bằng 3 cho C…
Bảng 1.6: Quá trình đếm tới vô cùng
A B C
từB từC kquả từA từC kquả từA từB kquả
Thời điểm ban đầu 2 1 2 2 1 2
∞ ∞
1

Sau 1 lần cập nhật 2 1 2 2 1 2
∞ ∞ ∞
Sau 2 lần cập nhật 2

3 2

2
∞ ∞ ∞
Sau 3 lần cập nhật
∞ ∞ ∞ ∞ ∞ ∞
3 3 4
Sau 4 lần cập nhật
∞ ∞ ∞ ∞
4 5
∞ ∞ ∞
Sau 5 lần cập nhật 5

6
∞ ∞ ∞ ∞ ∞ ∞
Sau 6 lần cập nhật
∞ ∞ ∞ ∞ ∞ ∞
6

7
Sau 7 lần cập nhật
∞ ∞ ∞ ∞
7 8
∞ ∞ ∞
… … … … … … … … … …
∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞

Phan Thái Minh-D04VT1 15
A
B
C
D
Đồ án tốt nghiệp Đại học Chương I. Tổng quan về định tuyến
Cập nhật có điều kiện là cơ chế giúp cho các mạng sử dụng phương pháp cập
nhật theo chu kỳ hoạt động hiệu quả hơn. Cập nhật có điều kiện là quá trình cập nhật
cost diễn ra ngay sau khi phát hiện ra có sự thay đổi cost của tuyến đường tới đích.
Thông thường, để giảm phí tổn truyền dẫn cho thông tin cập nhật, quá trình cập nhật
có điều kiện chỉ thực hiện cập nhật đối với những tuyến đường mà cost sẽ bị thay đổi.
Đồng thời, quá trình cập nhật có điều kiện có thể làm chậm lại một khoảng thời gian,
trong khoảng thời gian đó, nếu việc cập nhật định kỳ xảy ra thì cập nhật có điều kiện
sẽ không được tiến hành nữa.
Quá trình cập nhật có điều kiện diễn ra như sau: Giả sử node i sau khoảng thời
gian quy định không nhận được thông tin gì từ node j, nó sẽ coi rằng node j không thể
liên lạc được. Khi đó, i sẽ gửi thông tin cập nhật có điều kiện đến tất cả các node lân
cận của nó. Trong các node lân cận của i, chỉ những node có đường đi tới j qua i phản
ứng với thông tin cập nhật này. Các node còn lại sẽ bỏ qua thông tin cập nhật đó.
Những node có liên quan sẽ tiến hành tính toán lại con đường tới j., đồng thời lại gửi
thông tin cập nhật có điều kiện tới các node lân cận. Kết quả là thông tin cập nhật
được lan truyền từ i tới tất cả các node có đường đi tới j qua i.
Với cơ chế cập nhật có điều kiện này, vấn đề “đếm đến vô cùng” sẽ được loại
trừ nếu trong quá trình thông tin cập nhật có điều kiện truyền lan không có thay đổi gì
về tuyến đường tới đích đang xét.
1.4.5. Định tuyến theo trạng thái liên kết
1.4.5.1. Giới thiệu
Định tuyến theo trạng thái liên kết là một phương pháp chọn đường mạnh hơn,
linh hoạt hơn so với định tuyến theo vec-tơ khoảng cách mà đã được sử dụng trong
mạng ARPANET và đang được tiếp tục sử dụng trong mạng Internet hiện tại.

Trong thuật toán chọn đường theo trạng thái liên kết, mỗi node trong mạng sẽ
có một bản sao của cơ sở dữ liệu miêu tả cost của các đường link giữa các node trong
mạng. Cơ sở dữ liệu này được tạo thành từ các phần nhỏ gọi là các thông báo trạng
thái liên kết LSA. Mỗi node trong mạng có nhiệm vụ tạo ra một LSA miêu tả về tất cả
các đường link nối với mình. Sau đó, nó gửi LSA này tới các node còn lại trong mạng.
Việc phân phát các LSA được thực hiện bởi quá trình tràn lụt. Yêu cầu đối với
việc tràn lụt này là nhanh, chính xác. Trong thuật toán chọn đường theo trạng thái liên
kết, điều quan trọng là các node phải có cơ sở dữ liệu giống nhau. Có vậy thì mới có
thể chọn được những con đường kế tiếp xác và không tồn tại vòng. Khi trong mạng có
bất kỳ sự thay đổi về trạng thái link (thay đổi về khả năng làm việc của node cũng dẫn
đến thay đổi về trạng thái link), các node có liên quan sẽ phải tạo ra những bản LSA
mô tả thay đổi đó và gửi đi cho toàn mạng. Trong khi đang thực hiện tràn lụt, các node
sẽ có những cơ sở dữ liệu khác nhau. Nhưng chỉ sau một khoảng thời gian ngắn (có
thể nói là chỉ phụ thuộc vào trễ truyền dẫn, nếu tràn lụt tốt), việc đồng nhất dữ liệu lại
được đảm bảo.
Sau khi node đã có được dữ liệu cập nhật, nó sẽ được thực hiện việc tính toán
tìm đường truyền dựa trên cơ sở dữ liệu đó. Phương pháp tính toán phổ biến nhất là sử
dụng thuật toán Dijkstra (còn đường gọi là thuật toán chọn đường ngắn nhất trước tiên
như đã nói ở trên).
Phan Thái Minh-D04VT1 16
Đồ án tốt nghiệp Đại học Chương I. Tổng quan về định tuyến
Có thể miêu tả thuật toán chọn đường theo trạng thái liên kết gồm 5 bước:
• Xác định các node lân cận.
• Đánh giá các link để xác định cost.
• Tạo các LSA.
• Phân phát các LSA.
• Tính toán chọn đường.
1.4.5.2. Xác định các node lân cận
Khi một node bắt đầu làm việc, nhiệm vụ đầu tien là gửi đi một gói tin đặc biệt
“HELLO” theo tất cả các node trong hướng.

Hình 1.8. Cách mô tả LAN
Các node ở đầu kia của link khi nhận được gói tin này, sẽ gửi trở lại một gói tin
trả lời, mang những thông tin cần thiết về node đó.
Nếu có nhiều node kết nối với nhau bởi một LAN, có thể miêu tả một cách
thông thường là các node này kết nối điểm-điểm cho mỗi cặp. Tuy nhiên, người ta
thường coi LAN như một node ảo. Node ảo này kết nối điểm - điểm tới tất cả các node
đó. (Như trong hình1.8, mạng LAN kết nối ba node A, C, F).
1.4.5.3. Xác định cost cho mỗi link
Thuật toán chọn đường theo trạng thái liên kết yêu cầu mỗi node phải biết
được, hay ít nhất là ước lượng được cost của mỗi link nối tới nó. Như đã biết cost của
mỗi link có thể được đánh giá theo nhiều tham số, do đó có nhiều cách xác định cost
của mỗi link. Ví dụ: nếu cost của mỗi link được đánh giá theo trễ truyền lan trên link
thì một gói có thể xác định cost bằng cách gửi đi một gói tin lặp lại, và đầu bên kia khi
nhận được gói tin này thì ngay lập tức gửi trở lại. Khi đó, node ban đầu có thể căn
cứ vào khoảng thời gian từ khi phát đến khi nhận được gói tin lặp lại để xác định cost.
Cũng có thể làm cho cost của mỗi link phụ thuộc cả vào lưu lượng của link. Nếu
muốn phụ thuộc vào lưu lượng, khi tính thời gian truyền gói lặp lại, ta tính cả thời
gian từ khi gói này được đưa vào hàng đợi, cho đến khi nó bắt đầu được truyền đi.
Đánh giá cost phu thuộc cả vào lưu lượng có cái lợi là thông tin sẽ truyền đi theo
đường ít bị tắc nghẽn. Tuy nhiên, cũng có lúc cách này dẫn đến là mạng hoạt động
không hiệu quả như trong hình 1.9.
Phan Thái Minh-D04VT1 17
A
B
C
D E
H
G
I
F

×