MỤC LỤC
LỜI MỞ ĐẦU
Bưu chính viễn thông và công nghệ thông tin ngày nay rất phát triển. Cuộc cách
mạng thông tin đã và đang diễn ra trên hầu hết các nưóc tiên tiến trên thế giói .
Có thể nói thông tin ngày nay dóng vai trò hết sức quan trong trong cuộc sống hàng
ngày cúa mọi con người từ việc ăn gì ở đâu ,xem gì trong những ngày tối đến vấn đề cổ
phiếu tăng giá hay giám giá hay những vấn đề quan trọng của cả thể giới đều được phản ánh
qua thông tin được cập nhật hàng ngày. Điều đó cho thấy mạng lưới viễn thông đã bao trùm
lên toàn thế giới
Ngày nay chúng ta cũng không phái lo về việc thiếu hụt băng thông cho truyền tin
như trưóc kia thay vào đó là việc làm sao để xử lý gói tin tại các nút là nhanh nhất
Giao thức là một kiểu cách thức giao tiếp, đối thoại. Cũng như con ngưòi máy móc
muốn làm việc vói nhau cũng cần có những cách thức giao tiếp riêng . Trong việc truyền tin
cũng vậy các Router muốn giao tiếp với nhau cũng cần phái có những giao thức để làm việc
với nhau. Các giao thức đó thường là RIP, IGRP, EGRP, IS-IS,BGP4 và OSPF.
OSPF là giao thức định tuyến nhóm link-state thường được triển khai trong các hệ
thống mạng phức tạp. Giao thức OSPF tự xây dựng những cơ chế riêng cho mình, tự bảo
đảm những quan hệ của chính mình với các router khác. Nó có thể dò tìm nhanh chóng sự
thay đổi của topology (cũng như lỗi của các interface) và tính toán lại những route mới sau
chu kỳ hội tụ. Chu kỳ hội tụ của OSPF là rất ngắn và cũng tốn rất ít lưu lượng đường truyền.
Chính vì các lý do trên nên em đã lựa chọn đề tài tìm hiểu giao thức định tuyến OSPF
và đưa ra các mô hình mô phỏng trực quan và sinh động bằng phần mềm mô phỏng Packet
Tracer của CISCO. Xin được gửi lời cảm ơn chân thành tới thầy Nguyễn Tài Hưng đã góp ý
và động viên trong quá trình làm đề tài. Mặc dù đã cố gắng hết sức nhưng do khả năng còn
hạn chế nên không thể tránh khỏi thiếu sót. Xin chân thành cảm ơn!
I. KHÁI QUÁT CÁC GIAO THỨC ĐỊNH TUYẾN
1.Khái niệm
Định tuyến là cách thức mà Router (bộ định tuyến) hay PC (hoặc thiết bị mạng khác) sử dụng
để truyền phát các gói tin tới địa chỉ đích trên mạng.
Khái niệm routing gắn liền với mạng Intranet và Internet sử dụng một mô hình định tuyến hopby-hop. Điều này có nghĩa rằng mỗi PC hay Router sẽ tiền hành kiểm tra trường địa chỉ đích
trong phần tiêu đề của gói tin IP, tính toán chặng tiếp theo (Next hop) để từng bước chuyển gói
IP dần đến đích của nó và các Router cứ tiếp tục phát các gói tới chặng tiếp theo như vậy cho tới
khi các gói IP đến được đích.
2. Phân loại
Có 2 loại định tuyến: định tuyến tĩnh và định tuyến động
a. Định tuyến tĩnh
-
Trong bảng định tuyến gồm:
o Địa chỉ mạng và subnet mask và địa chỉa IP của router tiếp theo hoặc exit interface
o Được ký hiệu là chứ “S” trong bảng định tuyến
-
Chúng ta sử dụng định tuyến tĩnh khí:
o Khi mạng chỉ có 1 vài router hay mô hình mạng đơn giản
o Mạng được kết nối với Internet chỉ thông qua 1 ISP
o Mô hình Hub & spoke được sử dụng trên 1 mạng lớn
-
Chúng ta sử dụng định tuyến tĩnh khi :
o Khi mang chí có 1 vài router hay mô hình mang dơn gián .
o Mang dưoc ket noi vói Internet chí thông qua 1 ISP.
o Mô hình Hub & spoke dưoc sú dnng trên 1 mang lớn
b. Đinh tuyến động
Giao thức định tuyến động được sử dụng bởi các router để chia sẻ thông tin về tình trạng
-
của mạng từ xa. Giao thức định tuyến động thực hiện 1 số hoạt động bao gồm:
-
o
Khám phá mạng
o
Cập nhật và duy trì bảng định tuyến
Điểm đặc trưng của định tuyến động
o Tự động khám phá mạng
o Duy trì bảng định tuyến
-
Các loại định tuyến động
o RIP (Routing Information Protocol)
o IGRP (Inerior Gateway Routing Protocol)
o EIGRP (Enhanced IGRP)
o OSPF (Open Shortest Path First)
o IS-IS (Intermediate System-to-Intermediate System)
o BGP (Border Gateway Protocol)
Các loại thuật toán tìm đường: gồm 2 loại
-
Giao thức định tuyến Distance vector: Các giao thức định tuyến thuộc loại này như RIP,
IGRP….. hoạt động theo nguyên tắc Neighbors, nghĩa là mỗi router sẽ gửi bảng định
tuyến của mình cho tất cả router kết nối trực tiếp với nó. Các router đó sau đó so sánh
với bảng định tuyến mà mình hiện có và kiểm tra lại các tuyến đường của mình với các
tuyến đường mới nhận được, tuyến đường nào tối ưu hơn sẽ được đưa vào bảng định
tuyến các gói tin update sẽ được gửi theo chu kỳ (30s với RIP, 90s với EIRP)
o
Ưu điểm: dễ cấu hình, router không phải xử lý nhiều nên không tốn nhiều dung
lượng bộ nhớ và CPU có tốc độ xử lý nhanh hơn.
o
Nhược điểm:
Hệ thống metric quá đơn giản (như RIP chỉ là hop count) dẫn đến việc
các tuyền đường được chọn vào routing table chưa phải tuyến đường tốt
nhất
Vì các gói tin update được gửi theo định kỳ nên một lượng băng thông
(bandwidth) đáng kể sẽ bị chiếm (mặc dù mạng không thay đổi nhiều)
Do router hội tụ chậm, dẫn đến việc sai lệch trong bảng định tuyến gây
nên hiện tượng lặp định tuyến (loop)
-
Giao thức địng tuyến Link-state: giao thức định tuyến thuộc loại này như: OSPF, IS-IS.
Link-state không gửi bảng định tuyến của mình, mà chỉ gửi trạng thái của các đường
link trong linkstate database của mình đi cho các router khác, các router sẽ áp dụng giải
thuật SPF (Shortest Path First), để tự xây dựng bảng định tuyến riêng cho mình, khi
mạng hội tụ, link state protocol sẽ không gửi update định kỳ mà chỉ gửi khi nào có sự
thay đổi trong mạng
o
Ưu điểm: Có thể thích nghi với đa số hệ thống, cho phép người thiết kế có thể thiết
kế mạng linh hoạt, phản ứng nhanh với tình huống xảy ra. Do khong gửi invervalupdate nên link state bảo đảm băng thông cho các đường mạng.
o
Nhược điểm:
Do router phải xử lý nhiều nên chiếm nhiều bộ nhớ, tốc độ CPU chậm
hơn nên tăng delay.
II.
Link state khá khó cấu hình để chạy tốt
GIAO THỨC ĐỊNH TUYẾN OSPF
OSPF là giao thức định tuyến dang Link-state dựa trên chuẩn mở được phát triển để thay
thế phương thức Distance Vector (RIP). RIP là một giao thức định tuyến được chấp nhận trong
những ngày đầu của mạng và Internet, nhưng do phụ thuộc vào số lượng hop mà router có thể
đi được chỉ là 15neen RIP nhanh chóng không thể chập nhận được trong các mạng lớn hơn.
Các mạng lớn hơn cần 1 giải pháp định tuyến mạnh mẽ hơn. OSPF là 1 giao thức định tuyến
classless mà sử dụng khái niệm vùng cho khả năng mở rộng. Nó sử dụng thông số cost để tính
đường đi tốt nhất. OSPF sử dụng băng thông như là thước đo chi phí.
1. OSPF giải quyết các vấn đề
-
Tốc độ hội tụ nhanh
-
Hỗ trợ VLSM (Variable length subnet mask)
-
Kích thước mạng có thể hỗ trợ lớn
-
Chọn đường theo trạng thái đường link hiệu quả hơn distance vector
-
Đường đi linh hoạt hơn
-
Hỗ trợ xác thực (Authenticate)
2. Đóng gói bản tin OSPF
Phần dữ liệu của 1 thông báo OSPF được đóng trong 1 gói. Trường dữ liệu này có thể bao gồm
1 trong 5 loại bản tin OSPF
Các gói tiêu đề OSPF được gửi kèm với mỗi gói tin OSPF, bất kể loại bản tin nào của OSPF. Các
OSPF header và loại gói dữ liệu cụ thể được gói gọn trong gói tin IP. Trong dói tiêu đề IP, trường
giao thức được thiết lập bằng 89 để cho biết là OSPF, và địa chỉ đích được thiết lập là 1 trong 2
địa chỉ multicast: 224.0.0.5 hoặc 224.0.0.6. Nếu gói OSPF được đóng gói trong 1 khung Ethernet,
địa chỉ MAC đích cũng là 1 địa chỉ multicast: 01-00-5E-00-00-05 or 01-00-5E-00-00-06.
3. Các loại gói tin OSPF
-
Hello : Dùng để thiết lập và duy trì mối quan hệ hàng xóm với những router khác .
-
DBD : Gói tin này dùng để lựa chọn router nào sẽ được trao đổi thông tin trưóc
(master/slave)
-
LSR : Link state request gói tin này dùng để chỉ định loại LSA dùng trong tiến trình
trao đổi gói tin DBD
-
LSU : Link-state update được sử dụng để trả lời LSRs cũng như công bố thông tin mới.
LSUs chứa 7 loại khác nhau của LSAs.
-
LSAck : khi 1 LSU được nhận, router gửi 1 Link-State Acknowledgement (LSAck) để
xác nhận LSU
4. Giao thức Hello
Gói OSPF loại 1 là gói OSPF Hello. Các gói Hello được sử dụng để:
-
Khám phá hàng xóm OSPF và thiết lập hàng xóm gần kề.
-
Quảng bá các thông số ở trên 2 con router mà đã là hàng xóm của nhau
-
Bầu chọn DR và BDR ở trên mạng multiaccess và ethernet như Frame Relay.
Cấu trúc của bản tin Hello
Trong đó:
-
Type: loại gói OSPF: Hello (1), DD(2), LS Request (3), LS Update (4),
LS ACK(5)
-
Router ID: xác định router
-
Area ID: vùng hoạt động của OSPF
-
Network Mask: Subnet Mask của giao diện gửi.
-
Hello Interval: số giây gửi bản tin Hello của router
-
Router Prioty: sử dụng trong việc bầu chọn DR, BDR
-
Designated Router: Router ID của DR nếu có
-
Backup Designated Router: Router ID của BDR nếu có
-
List of Neighbors: danh sách OSPF Router ID của router hàng xóm
a. Thiết lập hàng xóm
Trước khi 1 router OSPF gửi trạng thái liên kết của nó tới tất cả các router
khác, trước tiên nó phải xác định xem có bất kỳ hàng xóm OSPF nào ở trên
bất ký liên kết nào của nó. Trong hình, router OSPF đang gửi những gói
Hello ra tất cả các cổng của nó cho phép các cổng của nó xác định xem có bất
kỳ hàng xóm nào ở trên liên kết đó không. Thông tin ở trong OSPF Hello bao
gồm OSPF của Router ID của router đang gửi gói Hello. Nhận 1 gói OSPF
Hello ở trên giao diện xác nhận cho 1 router mà có router OSPF khác ở trên
liên kết này. Sau đó OSPF được thiết lập là hàng xóm gần kề.
b. OSPF Hello và Dead Interval
Trước khi 2 router có thể hình thành hàng xóm gần kề, chúng phải đồng ý về 3 giá trị thời gian
Hello, cùng thời gian duy trì Dead Interval, và kiểu mạng.
Thời gian Hello chỉ ra việc gọi Hello gửi thường xuyên thế nào mặc định với mạng multilaccess
và point-to-point là 10s và 30s với mạng non-broadcast multiaccess (NBMA)
Trong hầu hết trường hợp, gói OSPF Hello gửi như multicast đến 1 địa chỉ dành riêng cho tất cả
SPF router tại 224.0.0.5. Sử dụng địa chỉ multicast cho phép thiết bị bỏ qua các gói dữ liệu nếu
các cổng của nó không được kích hoạt để chấp nhận các gói tin OSPF
Dead Interval là thời gian mà router chờ trước khi cho hàng xóm vào trạng thái down, thời gian
này theo cisco mặc định là gấp 4 lần thời gian Hello. Với mạng multiaccess và point-to-point là
40s và với NBMA là 120s.
c. OSPF link-state Updates
Link-state updates (LSU) là gói tin được sử dụng để cập nhật định tuyến OSPF. Một gói LSU có
thể chứa 10 loại bản tin khác nhau của link-state advertisements (LSAs) như hiển thị ở hình bên
dưới. Sự khác nhau giữa các điều khoản LSU và LSA đôi khi có thể khó hiểu. Đôi khi những
thuật ngữ này có thể được dùng lẫn lộn. Một LSU chứa 1 hoặc nhiều LSAs và các điều khoản
khác có thể được sử dụng để tuyên truyền thông tin trạng thái liên kết bởi router OSPF.
d. Bầu DR và BDR
Để giảm lưu lượng truy cập trên các mạng multiaccess, OSPF bầu 1 DR và 1 BDR. DR có nhiệm
vụ cập nhật router khác (gọi là DROthers) khi có sự thay đổi ở trong mạng. BDR để dự phòng
cho DR.
5. Thuật toán OSPF
Mỗi router OSPF duy trì 1 link-state database chứa các LSA nhận được từ tất cả router khác. Khi
1 router đã nhận được tất cả các LSA và xây dựng link-state địa phương, OSPF sử dụng thuật
toán Dijkstra’s (SPF-shortest path first) để tạo ra 1 cây SPF. Sau đó cây SPF được sử dụng lưu
giữ trong bảng định tuyến IP với đường đi ngắn nhất tới từng mạng
Khi nhận được thông tin mạng thay đổi nó sẽ tính lại SPF
Giả thiết:
r - là node nguồn, d là node đích
- là giá thấp nhất từ node r tới đích d
– là node tiếp theo của r trên đường tới d
– là giá của liên kết từ r tới s
Tính toán:
Bảng định tuyến trong mỗi node r được khởi tạo như sau:
= 0; s : s ≠ thì ;
Gọi Ω là tập các nút sau khi thực hiện sau k bước thuật toán:
Khởi tạo: , d Ω
Bước 1: Ω = r
;, r ≠ s;
Bước k:
( w≠ Ω )
, s Ω.
Thuật toán dừng khi tất cả các node thuộc Ω
Khi tính toán đường đi ngắn nhất sử dụng các thuật toán trên đây, thông tin trạng thái của mạng
thể hiện trong hệ đo lượng (metric), các bộ định tuyến phải được cập nhật giá trên tuyến liên kết.
Một trong khi có sự thay đổi tôp mạng hoặc lưu lượng các node mạng phải khởi tạo và tính toán
lại tuyến đường đi
6. Xác thực
Giống như các giao thức định tuyến khác OSPF có thể được cấu hình để xác thực. RIPV2, EIRP,
OSPF, IS-IS và BGP tất cả đều được cấu hình để mã hóa và xác thực thông tin định tuyến điều
này đảm bảo rằng các con router chỉ chấp nhận thông tin định tuyến từ router khác đã được cấu
hình với cùng mật khẩu và thông tin xác thực.
7. Các xác định Router ID
Các OSPF Router ID được sử dụng để nhận diện từng router trong vùng định tuyến. Một router
ID chỉ đơn giản là 1 địa chỉ IP. Router cisco chọn router id dựa trên 3 tiêu chí:
-
Sử dụng địa chỉ IP đã được cấu hình với lệnh router-id
-
Nếu router-id không được cấu hình thì router chọn địa chỉ IP cao nhất của bất kỳ cổng
loopback nào
-
Nếu không có cổng loopback được cấu hình thì router sẽ chọn địa chỉ IP cao nhất của
bất kỳ cổng vật lý nào của nó đang hoạt động
Ví dụ: Cho mô mình như hình vẽ
Bởi vì chúng ta đã không cấu hình router id hoặc cổng loopback nên chúng ta xác định router id
dựa vào điều kiện thứ 3, ta có thể sử dụng lệnh “show ip protocol” để kiểm tra router id.1 số IOS
không hiển thị được như hình vẽ thì chúng ta sử dụng lệnh “show ip ospf interface”. Như thể
hiện trong hình router id của mỗi router là:
R1: 192.168.10.5, which is higher than either 172.16.1.17 or 192.168.10.1
R2: 192.168.10.9, which is higher than either 10.10.10.1 or 192.168.10.2
R3: 192.168.10.10, which is higher than either 172.16.1.33 or 192.168.10.6
8. Bảng định tuyến
Xét mô hình như hình vẽ sau khi mạng hội tụ thì mỗi router sẽ có 1 bảng định tuyến của nó như
trong hình vẽ
Ta dùng lệnh “show ip route” để thấy bảng định tuyến của từng router
9. Kiểu mạng của OSPF
OSPF có 5 kiểu mạng
o
Point-to-pont
o
Broadcast multiaccess
o
Nonbroadcast Multiaccess (NBMA)
o
Point-to-multipoint
o
Virtual links
10. Quá trình lan tràn bản tin LSAs và bầu chọn DR và BDR trong mạng Multiaccess
a. Quá trình lan tràn bản tin LSAs
Bản tin LSAs được gửi đi khi khởi tạo hoặc khi có sự thay đổi của mô hình mạng.
Như trong hình vẽ:
Do tất cả router trong mạng đều lũ lụt gửi bản tin LSAs sẽ làm cho lưu lượng mạng trở nên tắc
nghẽn không lưu thông được. Giải pháp đưa ra là phải bầu chọn DR và BDR
b. Bầu chọn DR và BDR
Để quản lý được lưu lượng mạng cũng như số lượng bản tin LSAs ta bầu DR và BDR. DR có
nhiệm vụ thu thập và phân phối bản tin LSAs. BDR dùng để dự phòng trong trường hợp DR
không hoạt động. Các con router khác gọi là DROthers
Cách thức hoạt động:
Thay vì phải gửi tràn lan bản tin LSAs thì DROthers chỉ gửi LSAs của nó cho DR và BDR
sử dụng địa chỉ 224.0.0.6 trong trường hợp này R1 gửi LSA cho DR và BDR. Sau đó BDR
lắng nghe xem DR có hoạt động tốt hay không, sau đó DR có nhiệm vụ chuyển tiếp các
LSAs tới tất cả các router khác trong mạng bằng địa chỉ 224.0.0.5. Kết quả cuối cùng chỉ 1
router làm nhiệm vụ gửi lan tràn các LSAs
Các tiêu chí để bầu DR và BDR
-
DR: router với độ ưu tiên của cổng là cao nhất
-
BDR: router với độ ưu tiên của cổng là cao thứ hai
-
Nếu độ ưu tiên bằng nhau thì Router ID cao nhất được sử dụng để làm DR
Mặc định độ ưu tiên là 1
Như trong hình vẽ thì router C có router id lớn nhất nên được bầu là DR còn router B có
router id lớn thứ 2 nên được bầu làm BDR, các router khác sẽ là DROthers
Thời gian bầu chọn DR và BDR chỉ diễn ra trong vòng vài giây ngay sau khi router khởi động
với việc kích hoạt giao thức OSPF hoặc mạng Multiaccess, khi 1 router được bầu làm DR thì nó
vẫn là DR cho đến khi 1 trong các điều kiện sau thay đổi.
-
DR bị hỏng
-
Tiến trình OSPF trên con DR bị hỏng
-
Cổng Multiaccess ở trên con DR bị hỏng
11. Metric OSPF
Metric OSPF được gọi là cost. OSPF sử dụng cost như là metric để xác định đường đi tốt nhất,
giá trị cost càng nhỏ càng tốt và cost được tính theo công thức:
108 / bandwidth
Băng thông mặc định là 100Mpbs giá trị này có thể thay đổi được nhờ câu lệnh
“auto-cost reference-Bandwidth”
Cost của một tuyến đường là giá trị tích lũy từ 1 router tới router kế tiếp cho tới khi đến đích
III. MÔ PHỎNG
Mô hình 1:
22
Kết quả duyệt web với tên miền ktvt.com trên PC2 sau khi cấu hình OSPF
Kết quả kiểm tra các tuyến
Mô hình 2:
Bình bầu BR và BDR theo mô hình mạng multi-access
Kết quả:
Sẽ thấy
là DR
và RB
BDR
và RA
theocónguyên
vớilàđộDROTHER
ưu tiên như nhau
thì
chọnRC
router
có ID
cao là
nhất
là DR
sau là
là DROTHER
BDR và router
ID thấptắc
nhất