A. Đại cương về định tuyến
I. Thuật ngữ
I. 1. Routing Protocol
Routing protocol: là ngôn ngữ để một router trao đổi với router khác để chia sẻ thông tin định tuyến về khả năng đến được cũng như trạng thái của mạng.
Được cài đặt tại các Router, chúng được sử dụng để: xây dựng nên bảng định tuyến để đảm bảo rằng tất cả các Router đều có bảng “Routing table ” tương thích nhau cũng như đường đi đến các mạng phải được xác định trong “Routing Table”.
I. 2. Routed Protocol
Nó sử dụng các bảng “Routing Table” mà Routing Protocol xây dựng lên để đảm bảo việc truyền dữ liệu qua mạng một cách tin cậy. Ví dụ: IP và IPX.
I. 3. Vùng tự trị AS (Autonomous System)
Mạng Internet được chia thành các vùng nhỏ hơn gọi là các vùng tự trị (Autonomous System – AS ). AS bao gồm một tập hợp các mạng con được kết nối với nhau bởi Router. Một hệ thống AS thông thường thuộc quyền sử hữu của một công ty hay nhà cung cấp dịch vụ Internet (ISP). Và để các hệ thống AS này kết nối được với nhau, nhà quản lý phải đăng ký với cơ quan quản trị mạng trên Internet (Inter NIC) để lấy được một số nhận dạng AS cho riêng mình. Bên trong mỗi AS, các nhà quản lý có quyền quyết định loại Router cũng như giao thức định tuyến cho hệ thống của mình.
I. 4. Bảng định tuyến
Một host hay một Router phải xem xét bảng định tuyến của mình trước khi chuyển gói tin đến địa chỉ ở xa. Bảng này được gán tương ứng mỗi địa chỉ đích với một địa chỉ Router cần đến ở chặng tiếp theo.Bảng địa chỉ đích trong bảng có thể bao gồm các địa chỉ mạng, mạng con, các hệ thống độc lập. Trong bảng định tuyến có thể bao gồm một tuyến mặc định, được biểu diễn bằng địa chỉ 0.0.0.0.
Bảng định tuyến của mỗi giao thức định tuyến là khác nhau, nhưng có thể bao gồm nhữnh thông tin sau :
Địa chỉ đích của mạng, mạng con hoặc hệ thống.
Địa chỉ IP của Router chặng kế tiếp phải đến.
Giao tiếp vật lý phải sử dụng để đi đến Router kế tiếp.
Mặt nạ mạng của địa chỉ đích.
Khoảng cách đến đích (thí dụ : số lượng chặng để đến đích).
Thời gian (tính theo giây) từ khi Router cập nhật lần cuối.
I. 5. Khoảng cách quản lý (Administrative Distance (AD))
Administrative Distance được sử dụng để đánh giá độ tin cậy của thông tin định tuyến mà Router nhận từ Router hàng xóm. AD là một số nguyên biến đổi từ : 0 đến 255; 0 tương ứng với độ tin cậy cao nhất và 255 có nghĩa là không có lưu lượng đi qua tuyến này (tức là tuyến này không được sử dụng để vận chuyển thông tin của người sử dụng). Tức là khi một Router nhận được một thông tin định tuyến, thông tin này được đánh giá và một tuyến hợp lệ được đưa vào bảng định tuyến của Router. Thông tin định tuyến được đánh giá dựa vào AD, giả sử Router được cài đặt nhiều hơn một giao thức định tuyến thì giao thức định tuyến nào có AD nhỏ hơn sẽ được Router sử dụng.
Mối giao thức định tuyến có tưng ứng một giá trị AD:
Directly 0
Static route 1
RIP 120
OSPF 110
IGRP 100
II. Nguyên tắc định tuyến
Các giao thưc định tuyến phi đạt được các yêu cầu đồng thời sau:
Khám phá động một topo mạng.
Xây dựng các đường ngắn nhất.
Kiểm soát tóm tắt thông tin về các mạng bên ngoài, có thể sử dụng các metric khác nhau trong mạng cục bộ.
Phản ứng nhanh với sự thay đổi topo mạng và cập nhật các cây đường ngắn nhất.
Làm tất cả các điều trên theo định kỳ thời gian.
III. Các thành phần của định tuyến (Components of Routing Data)
Routing là quá trình chuyển tiếp packet từ một mạng này sang mạng khác.
Chúng chuyển tiếp packet như thế nào?
Thứ nhất: bạn cần phải biết logical address là gì? Địa chỉ logic được sử dụng để xác định host thuộc mạng nào.
Thứ hai: Sau khi nhận packet từ một interface nó sẽ quyết định đẩy packet ra interface tương ứng, để chuyển tiếp packet đi.
Để đưa ra quyết định chính xác router phải thực hiện được 3 nhiệm vụ sau:
Router xác định xem lưu lượng mà nhận hoặc gửi chạy giao thức lớp mạng nao? IP, IPX hay AppleTalk.
Tiếp theo sẽ kiểm tra xem địa chỉ mạng đích có trong routing table hay không. Nếu không tìm thấy đường đến mạng đích đó trong routing table, router sẽ discard packet đó và gửi một gói ICMP network unreachable về host nguồn đã gửi packet.
Nếu tìm thấy trong routing table tuyến đường tới mạng đích router sẽ forward packet ra interface tưng ứng. Router sẽ đẩy packet đó ra buffer của interface đó. Tiếp theo kiểu encapsulation (đóng gói) của frame lớp 2 của interface đó. Nếu là Ethernet thì chạy ARP để lấy địa chỉ lớp 2 là MAC, còn nếu là Frame-Relay thì chạy Inverse ARP hoặc static map để tìm DLCI. Cuối cùng Outbound interface sẽ đưa frame xuống phương tiện truyền dẫn và forward thông tin đến next hop.
Packet sẽ tiếp tục được sử lý cho đến đích cuối cùng.
1. Routing tables
Routing table là một bảng chứa các tuyến đường đến các mạng mà người quản trị cấu hình. Các bảng này được tạo ra bằng tay theo ý muốn của người quản trị hay bằng cách trao đổi thông tin định tuyến với các router khác.
Để nhìn thấy routing table trên router, chúng ta sử dụng câu lệnh: show ip route.
Đoạn Code: xác định cách mà tuyến đường được học.
Dòng Gateway of last resort is not set: cho biết routing table không có default gateway, nếu router nhận được một packet mà địa mạng đích không tìm thấy trong routing table thì router sẽ drop packet và gửi một bản tin ICMP network unreachable tới nơi gửi packet đó.
Xét dòng thông tin sau:
R 175.21.0.0/16 [120/1] via 10.10.10.1, 00:00:18, Serial0
R: có nghĩa tuyến đường được học bằng giao thức RIP.
175.21.0.0/16: Địa chỉ mạng và số bit 1 trong subnetmask của mạng đích.
[120/1]: 120 là administrative distance của tuyến đường, 1 là metric của tuyến đường. Với RIP thì đây là hop count.
via 10.10.10.1: là địa chỉ next-hop của tuyến. Đây là đỉa chỉ mà packet cần phải gửi tới để gửi packet tới đích.
00:00:18: khảong thời gian kể từ khi tuyến đường được update. Trong trường hợp này là 18 second.
Serial0: là interface mà tuyến đường được học qua đó. Đồng thời đó cũng là interface mà packet được gửi qua để tới đích.
2. Xây dựng bảng định tuyến (Populating the Routing Table)
Trước khi tuyến đường được đưa vào bảng định tuyến, router pảhi học về những tuyến đường đó. Có hai cách để học tuyến đường:
+ Statically defining a route
+ Dynamically learning a route
a/ Statically Defined Routes
Statically defined route: bằng cách này tuyến đường được nhập bằng tay vào router. Static route được nhập vào router với cú pháp như sau ở global configuration mode:
ip route prefix mask {address|interface} distance
prefix = IP route prefix for the destination.
mask = Prefix mask for the destination.
address = IP address of the next hop that can be used to reach the destination.
interface = Network interface to use.
distance = (Optional) Administrative distance.
Nếu bạn muốn cấu hình default route, thì phần prefix = 0.0.0.0 và mask = 0.0.0.0. Default route sữ gửi bất cứ packet nào mà địa chỉ mạng đích tưng ứng không tìm thấy trong bảng định tuyến.
Ưu điểm của static route là ngưởi quản trị có toàn quyền điều khiển thông tin lưu trong routing table và phải lãng phí băng thông để xây dựng nên routing table.
Nhược điểm của static route là độ phức tạp của việc cấu hình tăng lên khi kích thước của mạng tăng lên. Giả sử một mạng có N router thì người quản trị cần phải cấu hình (N-1)*N câu lệnh trên tất cả các router. Một nhược điểm nữa của static route là không có khả năng thích ứng với những mạng có cấu trúc thay đổi.
b/Dynamically Learned Routes
Dynamic routing là quá trình mà trong đó giao thức định tuyến phải tìm ra đường tốt nhất trong mạng và duy trì chúng. Có rất nhiều cách để xây dựng lên bảng định tuyến một cách động. Nhưng tất cả đều thực hiện theo quy tắc sau: nó sẽ khám tất cả các tuyến đường đến đích có thể và thực hiện một số quy tắc đã định trước để xác định ra đường tốt nhất đến đích.
Ưu điểm của dynamic routing là đơn giản trong việc cấu hình và tự động tìm ra những tuyến đường thay thế nếu như mạng thay đổi.
Nhược điểm của dynamic routing là yêu cầu xử lý của CPU của router cao hơn là static route. Tiêu tốn một phần băng thông trên mạng để xây dựng lên bảng định tuyến.
b.1. Distance-Vector Routing
Distance-vector routing được chia làm hai phần: distance và vector. Distance là metric để tới đích (tiêu chuẩn về khoảng cách để tới đích). Vector là hướng để tới đích nó được xác định bởi next-hop của tuyến đường.
Các giao thức định tuyến Distance-vector cập nhật và update bảng định tuyến của mình bằng cách thường xuyên gửi thông điệp update liên tục theo chu kỳ dưới dạng Broadcast. Thông điệp Broadcast đó bao gồm toàn bộ bảng định tuyến. Tuy nhiên một vấn đề chung xảy ra đối với các giao thức định tuyến Distance-Vector đó chính là “Routing Loop ”. Do các Router không được update ngay lập tức( mà theo chu kỳ), chính điều đó đã khiến cho các Router xây dựng lên bảng định tuyến không đúng. Dẫn đến các gói tin đi trên đường mà nó đã đi qua rồi, kết quả là gói tin đi lòng vòng trên mạng. Hiện tượng “Routing Loop ” đã làm phát sinh lưu lượng mạng vô ích gây lãng phí băng thông.
Chính vì vậy người ta đã đưa vào các giao thức định tuyến theo khoảng cách các phương pháp để tránh loop đó là:
b.1.1. Route Poisoning
Một trong những phương pháp người ta đưa vào các giao thức định tuyến để tránh loop đó là “Route poisoning”. Route poisoning bắt đầu hoạt động khi Router nhận thấy một mạng nối tới nó bị down. Nó sẽ quảng bá tới tất cả các Router lân cận nó rằng: Mạng đó là không thể tới được. Ví dụ với RIP: nó sẽ gửi thông báo tới các Router lân cận của nó với hop count = 16. Kết quả là mạng đó sẽ được xoá khỏi bảng định tuyến.
b.1.2. Split Horizon
Tuy nhiên trong một số trường hợp thì Route Poisoning không thể giải quyết được. Như trường hợp dưới đây :
Người ta đã đưa ra phương pháp Split Horizon, tránh các Router không gửi lại các thông tin định tuyến quay trở lại Router mà nó đã “học” được đường đi từ Rouer đó (vẫn có thể xảy ra với cấu trúc mạng vòng).
b.1.3.Hold-Down Timer
Để giải quyết trường hợp mà Split Horizon không giải quyết được người ta đưa ra phương pháp Hold-Down Timer. Tránh việc thay đổi tuyến được thực hiện trước khi mạng hội tụ từ sự thay đổi đó. Tránh cập nhật thông tin từ việc thiết lập lại các thông tin không đúng. Khi một Router nhận được một cập nhật mà chứa một cấu trúc thay đổi, hold-down timer sẽ bắt đầu. Bất cứ cập nhật nào trong thời gian này sẽ bị huỷ bỏ. Thời gian hold-timer được đặt ít nhất phi lớn hơn 3 lần thời gian cập nhật thông tin toàn bộ tuyến trong mạng.
b.1.4. Triggered (Flash) Updates
Để ngăn chặn tình trạng hết thời gian hold-timer mà thông tin update mới tới. Người ta đưa ra phưng pháp Triggered (Flash) Updates tức là ngay sau khi nhậnđược thông cập nhật mà chứa một cấu trúc thay đổi nó sẽ gửi ngay lập tức broadcast update tới các Router lân cận.
b.2. Link-State Routing
Khác với Distance-vector routing protocol, router chỉ biết được next-hop để gửi packet đi tới đích. Đối với Link-state routing protocol mỗi router đều xác định được chính xác topology của mạng. Chính vì vậy router sẽ đưa ra quyết định để đưa packet đến đích tốt hơn. Mỗi router trong mạng sẽ báo cáo trạng thái của nó, các link nối trực tiếp và trạng thái của mỗi link. Router sẽ nhân bản thông tin này tới tất cả các router trên mạng. Cuối cùng tất cả các rouer trên mạng đều có cái nhìn giống nhau về topo mạng.
Một điểm khác nữa đối với distance-vector routing protocol là các router không gửi toàn bộ routing table mà chỉ gửi sự thay đổi xảy ra hay một bản tin hello với kích thước nhỏ gọn nếu như mạng không có sự thay đổi theo những chu ky nhất định. Nên link-state có một ưu điểm nữa là tốn ít băng thông hơn distance-vector để xây dựng nên routing table.
Nhược điểm của link-state protocol là phức tạp hơn trong cấu hình so với distace-vector routing protocol và yêu cầu phần cứng của router cao hơn khi sử dụng distance-vector routing protocol.
Tóm lại hoạt động của link-state routing protocol có thể chia làm 4 bước sau:
1. Các router tìm neighbors của mình từ các router nối trực tiếp.
2. Sau khi tìm được neighbors xong, router gửi các LSA tới các neighbor của nó. Sau khi nhận và copy thông tin từ LSA, router sẽ forward hay flood LSA tới các neighbor của nó.
3. Tất cả các router lưu LSA trong database của nó. Điều đó có nghĩa là tất c các router đều có một cái nhìn giống nhau về topo mạng.
4. Mỗi router sử dụng thuật toán Dijkstra để tính toán ra đường tốt nhất để đưa vào routing table.
c/Quyết định tuyến đường nào sẽ được lưu vào Routing table (The Final Decision on What Routes Populate the Routing Table)
Administrative distance và metric là hai nhân tố quyết định tuyến đường nào sẽ được lưu vào routing table. Nhân tố đầu tiên xét đến là AD, AD là độ tin cậy của routing protocol mà tìm ra tuyến đường. Nếu có nhiều hơn tuyến đường tới đích thì tuyến đường nào có AD nhỏ hơn sẽ được đưa vào routing table. Nếu các tuyến đường đó có cùng AD thì nhân tố thứ 2 được xét đến chình là metric.
Metric là giá trị của tuyến đường cụ thể của một giao thức định tuyến nào đó. Nếu có nhiều hơn một tuyến đường đến đích có cùng AD (cung giao thức định tuyến) thì tuyến nào có metric tốt hơn sẽ được đưa vào routing table. Nếu chúng có cùng AD và metric thì tuỳ từng routing protocol cụ thể mà số lượng tuyến đường được đưa vào routing table là khác nhau.
3. Reaching the Destination
Sau khi router nhận packet, the router sẽ gỡ bỏ header lớp 2 để tìm địa chỉ đích lớp 3. Sau khi đọc xong địa chỉ đích lớp 3 nó tìm kiếm trong routing table cho địa chỉ đích đó. Giả sử đỉa chỉ đích đó có trong routing table, router sẽ xác định địa chỉ của next-hop. Sau đó packet bị đẩy ra buffer của interface tương ứng, router sẽ khám phá loại encapsulation lớp 2 nào được sử dụng giữa out going interface và next-hop. Packet được đóng gói xuống lớp 2 rồi đưa xuống môi trường truyền dẫn dưới dạng bit, tín hiệu điện, quang…Quá trình này sẽ tiếp tục cho đến khi packet được đưa đến đích thì thôi.
IV. Hội tụ (Convergence)
Thời gian hội tụ (convergence time) là thời gian mà tất c router đồng ý về topo mạng sau một sự thay đổi của mạng. Các router phải đồng bộ routing table của chúng.
Routing Protocols
1. RIP v1 (Routing Information Protocol) :
- Rip là 1 distance vector
- Rip là một classful protocol
- Rip process dùng UDP port 520; tất cả Rip messages được encapsulate trong 1 UDP segment với port source và destination là 520
- Rip định nghĩa 2 messages là : Request messages và Response messages.(Request message dùng để yêu cầu những neighbors gởi Update, Response message mang update.
- Rip gởi routing information của nó mỗi 30 giây (default)
- Invalid timer là 180s (default)
- Hold-down timer là 180 giây (default)
- Flushed timer là 240s
- Rip dùng thuật toán Bellman-ford
- Rip metric dựa vào hop count (maximum là 15)
- Rip có AD (administrative Distance) là 120 (default)
- Rip có khả năng load balancing (cân bằng tải) với maximum 6 đường có metric bằng nhau (Six parallel equal-cost paths), Cisco Router (default) chỉ hổ trợ 4 đường bằng nhau.
Ví dụ : Ruoter1(config-router)#maximum-paths 5 : cho phép load balancing tối đa là 5
đường
- Không hổ trợ Discontiguous Network (mạng gián đoạn)
· Discontiguous network là một mạng chính (Major network) bị phân cách bởi major network khác.
Ví dụ :
) Bất cứ khi nào RIP quảng bá 1 network qua 1 major network boundary khác, Rip summaries netowk được quảng bá tại major network boundary như ở hình trên.
Các bước ROUTER 1 thực hiện trước khi gởi Update đến ROUTER 2 :
+ Net 131.108.5.0/24 có cùng major network với 137.99.88.0/24 ?
+ Không trùng, ROUTER 1 summarizes 131.108.5.0/24 và quảng bá route
131.108.0.0/16
Các bước thực hiện của ROUTER 2 trước khi chấp nhận update từ ROUTER 1 :
+ Major network đã nhận (131.108.0.0) có cùng major network 137.99.88.0
+ Không trùng, trong routing table có bất kỳ subnet nào thuộc major network này chưa
+ Có rồi, ROUTER 2 bỏ qua không update.
- Không hổ trợ VLSM (Variable-Length Subnet Mask) : Rip và igrp không có khả năng mang subnet mask information trong khi gởi update. Trước khi nó quảng bá, nó thực hiện 1 kiểm
tra dựa vào subnetmask của interface mà nó gởi update. Nếu 2 subnet không đúng thí nó sẽ
drop
Các bước thực hiện của ROUTER 1 trước khi gởi update đến ROUTER 2
+ ROUTER 1 kiểm tra xem, nếu 131.108.5.0/24 có cùng major network
131.108.6.0/30 không ?
+ Cùng major network. ROUTER 1 xác định 131.108.5.0/24 có cùng subnet mask
131.108.6.0/30 không ?
+ Bởi vì 2 subnet không trùng nên ROUTER 1 drop mạng 131.108.0.0 /16 và không quảng bá route
+ ROUTER 1 xác định 131.108.7.0/30 là cùng major network với 131.108.6.0/30
không ?
+ Cùng major network. ROUTER 1 xác định tiếp 131.108.7.0/30 có cùng subnet mask với 131.108.6.0/30 không ?
+ Vì cả 2 subnet mask giống nhau nên ROUTER 1 quảng bá network
131.108.7.0/30 đến ROUTER 2.
- Default Routes : Khi RIP thấy 1 default route trong routing table của nó, nó sẽ tự động quảng
bá default route này trong RIP update.
2. RIP V2 : Rip v2 có 1 vài cải tiến của Rip v1
- Gởi routing update dùng multicast 224.0.0.9
- Route tag : có thể pass thông tin về những routes học được từ source bên ngoài và được redistributed vào RIP. Route tag được dùng để phân biệt những routes RIP học từ bên ngoài
- Subnet mask
- Next-hop metric
- Multicast capability
- Authentication (clear text hoặc mã hóa MD5)
3. IGRP (Interior Gateway Routing Protocol) :
- Là 1 distance vector
- Là 1 classful protocol
- Gởi routing information của nó mỗi 90 giây (default)
- Hold-down timer là 280 giây (default)
- Dùng thuật toán Bellman-ford
- Maximum hop count là 255
- Metric dựa vào Bandwidth, delay, reliable, Load và MTU (maximum là 224), default chỉ lệ
thuộc vào Bandwidthigrp + Delayigrp.
) BWigrp = 107/BW
) Delayigrp = Delay/10
- AD (administrative Distance) là 100 (default)
- Bandwidth : Lấy BW nhỏ nhất trong quảng đường đi đến route đó
- Delay : Tổng các delay trong quảng đường đi đến mạng đó
- Có khả năng load balancing (cân bằng tải) với maximum 6 đường có metric bằng nhau (Six parallel equal-cost paths), Cisco Router (default) chỉ hổ trợ 4 đường bằng nhau và load balacing với cost không bằng nhau.
) Ví dụ :
Ruoter1(config-router)#maximum-paths 5 : cho phép load balancing tối đa là
5 đường bằng nhau.
Ruoter1(config-router)# variance 4 : là sẽ load balacing với những đường có metric nhỏ hơn 4 lần metric nhỏ nhất.
- Không hổ trợ Discontiguous Network (mạng gián đoạn)
- Không hổ trợ VLSM
4. EIGRP : Enhanced Interior Gateway Routing Protocol
- Giống như Distance vector protocol, EIGRP nhận update từ những neighbor.
- Giống như Link-state protocol, nó giữ 1 bảng topology nhưng biết gì về toàn mạng, nó chỉ
phụ thuộc vào nhưng quảng bá của neighbor của nó.
- Là Hybrid routing protocol : EIGRP đôi khi được mô tả như là distance vertor nhưng cơ
chế hoạt động như là link state protocol.
- EIGRP dùng 1 hệ thống tính toán phức tạp (Diffusing)
- EIGRP gởi những update qua địa chỉ multicast 224.0.0.10
- AD (administrative Distance) là 90 (default)
- Không giống IGRP, EIGRP phải thiết lập mối quan hệ trước khi gởi update. Hello packet dùng để thiết lập neighbor và thời gian gởi hello packet lệ thuộc vào môi trường truyền :
) Môi trường Broadcast như Ethernet, Token Ring, FDDI : Hello là gởi multicast cứ
mỗi 5 giây
) Môi trường X.25, Framerelay và ATM interface với tốc độ đường truyền là thấp hơn hoặc bằng T1 : Hello là gởi unicast cứ mỗi 60 giây.
) Hello interval có thể thay đổi được trên interface với câu lệnh như sau :
R1(config-if)#ip hello-interval eigrp
- Thời gian hội tụ nhanh nhưng vẫn chống được loop trong mọi trường hợp nào.
- EIGRP update không theo chu kỳ (nonperiodic), chỉ 1 phần (partial) và giới hạn (bounded) Nonperiodic : Không gởi theo gởi theo chu kỳ như igrp là 90 giây
Partial : Là sự cập nhật chỉ bao gồm những routes thay đổi
Bounded : Là sự cập nhật chỉ được gởi đến những Router cùng chạy EIGRP
- EIGRP dùng ít Bandwidth hơn Distance Vector
- EIGRP chiếm không quá 50% của Bandwidth để update bởi default (IOS mới sau này cho phép thay đổi bằng lệnh : ip bandwidth-percent eigrp).
- Là Classless protocol
- Hổ trợ VLSM
- Với IOS version 11.3 trở đi, những EIGRP packet có thể được xác thực dùng mã hóa kiểu
MD5
- EIGRP có thể với IP, IPX và Apple Talk.
- Cách tính metric giống như IGRP nhưng nhân thêm 256 bởi vì chiều dài metric = 32 bits
- EIGRP có 4 thành phần chính :
) Protocol-Dependent Modules (PDM): Giữ nhiệm vụ phân tách những việc routing 1
cách rõ ràng như : IP, IPX, AppleTalk.
) Reliable Transport Protocol (RTP) : Quản lý việc phát (delivery) và nhận
(reception) những gói EIGRP.
Reliable delivery : Sự cấp phát được bảo đảm và những gói đó sẽ được cấp phát hợp lệ.
) Neighbor Discovery / Recovery : Bởi vì EIGRP update không theo chu kỳ, nên nó cần phải có 1 xử lý bởi những neighbor.
) Diffusing Update Algorithm (DUAL) :
5. OSPF (Open Shortest Path First)
- Được phát triển bởi IETF (Internet Engineer Task Force : Nhóm KS Internet) để khắc phục những vấn để của RIP
- Thuộc Interior Gateway Protocol (IGP)
- Là Link state protocol
- Dùng Thuật toán Đường ngắn nhất của Dijkstra và là mở (Open) không phải của riêng hãng nào, có thể được dùng cho thiết bị của tất cả các hãng. Version 1 (RFC 1131), Version 2 (RFC 2328). Version 3 (RFC 2740)
- AD (administrative Distance) là 110 (default)
- Những ưu điểm của OSPF với Distance Vector
) Hội tụ nhanh
) Scalability mạng lớn
Những đặc điểm khác của OSPF
- Phân vùng (Area) để giảm tác động đối với CPU và RAM (chứa và xử lý routing protocol traffic) và tạo ra network có phân cấp
- Các xử lý classless hoàn toàn, loại trừ những vấn đề classful như mạng gián đoạn
- Hổ trợ VLSM và supernetting (CIDR)
- Metric không bị giới hạn (metric=cost=108/BW)
- Cân bằng tải với cost bằng nhau
- Dùng địa chỉ Multicast để giảm tác động đến những thiết bị non-OSPF.
- Hổ trợ authentication (MD5)
- Dùng route tagging để theo dõi những mạng bên ngoài được redistribute vào OSPF
- Hoạt Động của OSPF :
- OSPF-speaking routers gởi những Hello packets ra tất cả các interfaces chạy OSPF. Nếu 2 routers cùng chung 1 data-link thống nhất những tham số nào đó được xác định trong những hello packets tương ứng, chúng sẽ trở thành những láng giềng (neighbors).
- Adjacency : Có thể được xem như kết nối ảo point-to-point, được tạo thành những Routers với nhau.
- Mỗi Router gởi những quảng bá trạng thái kết nối (LSA – Link state advertisement) đến tất
cả adjacency. LSAs mô tả tất cả link của router hoặc những interface và trạng thái của những link. Những link này có thể là stub networks (là network với không có 1 router nào được gắn vào), những OSPF routers khác hoặc những networks trong những vùng khác, hoặc những mạng bên ngoài (network học từ routing khác). Vì những kiểu của thông tin link state biến
đổi nên OSPF định nghĩa nhiều kiểu LSA.
RIR có đặt điểm sau:
• Distance vector protocol.
• Uses UDP port 520.
• Classful protocol (no support for VLSM or CIDR).
• Metric is router hop count.
• Maximum hop count is 15; unreachable routes have a metric of 16.
• Periodic route updates broadcast every 30 seconds.
• 25 routes per RIP message.
• Implements split horizon with poison reverse.
• Implements triggered updates.
• No support for authentication.
• Administrative distance for RIP is 120.
OSPF có đặc điểm sau:
• Link-state routing protocol.
• Uses IP protocol 89.
• Classless Protocol (supports VLSMs).
• Metric is cost (based on interface bandwidth) by default.
• Sends partial route updates only when there are changes.
• Routes labeled as intra-area, interarea, external Type 1, or external Type 2.
• Supports authentication.
• Uses Dijkstra algorithm to calculate SPF tree.
• Default administrative distance is 110.
• Uses multicast 224.0.0.5 (ALLSPFrouters).
• Uses multicast 224.0.0.6 (ALLDRrouters).
Với các đặc điểm này khi thiết kế mạng RIP thường dùng cho mạng nhỏ, OSPF dùng cho mạng lớn.
Mạng lớn hay nhỏ khi liệt kê các yêu cầu cần thiết lập, sẽ có một list các đặc điểm, từ đó xem với các đặc điểm yêu cầu này giao thức định tuyến nào có thể giải quyết được (tất nhiên giao thức định tuyến chỉ mới là 1 phần).
Phan biet path-vector voi linkstate protocol!
-Distance vector: Gửi update định kì, router trao đổi toàn bộ sơ đồ đường đi của mình với router liền kề.
Ưu: đơn giản, dễ cấu hình, cấu hình router không cần mạnh. Thiết lập định tuyến cũng đơn giản.
Nhược: Vì phụ thuộc hoàn toàn vào router cận kề nên thông tin thiếu chính xác, có các vấn đề về loop, hội tụ chậm.
-LinkState: Nhận thông tin về trạng thái chính xác, do các router trong vùng gửi để tập hợp thành một bảng cơ sở dữ liệu. Sau đó giao thức dùng bảng này để tự xây dựng sơ đồ đường đi tối ưu cho riêng mình bằng giải thuật của chính giao thức đó [vd: với OSPF thì là SPF, Shortest Path Frist].
Ưu: Tự chọn đường đi cho mình nên tốc độ hội tụ nhanh, không loop. Ngày nay sử dụng nhiều.
Nhược: Cấu hình khó hơn, phần cứng mạnh.
Bên trên là những giao thức hầu hết chỉ chạy bên trong AS [IGP]. Vì bên trong AS mục đích chính là cần mạng hội tụ nhanh.
-Path-vector protocol: cụ thể ở đây chủ yếu là BGP.
Những giao thức bên trên thì chỉ có khả năng xử lí vài ngàn tuyến là hết chịu nổi nên ra đời giao thức Path-vector có khả năng xử lí rất lớn đến hơn hàng trăm ngàn tuyến.
Đối với BGP thì chủ yếu không phải để mạng hội tụ nhanh mà mục đích chính của nó là gửi số lượng tuyến nhiều nhất trong dung lượng update ít nhất có thể.
Giao thức path vector không chọn đường chủ yếu chỉ dựa vào metric mà nó phụ thuộc vào thuộc chủ yếu vào thuộc tính của route đó.
vd: thuộc tính AS-Path dùng xác định đường đi tối ưu và tránh loop khi các route được quảng bá đi chu du qua các AS.
Một số thuộc tính cần bắt buộc phải có nếu sản phẩm có hỗ trợ BGP: AS_Path, Origin, Next-hop.