Hội tụ (Convergence) và chống loop:
Phần quan trọng nhất và cũng phức tạp nhất của RIP nằm ở những phương thức chống loop. Giống như những giao thức định tuyến distance vector khác, RIP sử dụng kết hợp những công cụ chống loop khác nhau, nhưng đáng tiếc rằng những công cụ này cũng làm tăng thời gian hội tụ (convergence) một cách đáng kể. Sự thật, đó là một hạn chế rất lớn của RIP (kể cả RIPv2). Bảng 8.3 tổng hợp những tính năng và phương thức liên quan đến sự hội tụ và chống loop của RIP.
Tính năng Mô tả
Split horizon Thay vì quảng bá tất cả các route ra một interface, RIP không quảng bá những route mà router học được từ interface này.
Triggered update Router sẽ gửi một update mới ngay khi thông tin định tuyến bị thay đổi, thay vì phải chờ hết thời gian update time. Trigger update còn có tên gọi khác là flash update. Khi một giá trị metric thay đổi tốt hơn hoặc kém hơn, router ngay lập tức sẽ gửi ra một thông điệp cập nhật mà không cần chờ cho khoảng thời gian update timers bị hết. Quá trình tái hội tụ diễn ra nhanh hơn so với trường hợp phải chờ những khoảng thời gian cập nhật định kỳ. Các thông điệp cập nhật định kỳ vẫn diễn ra cùng với các thông điệp trigger update. Như vậy một router có thể nhận một thông tin kém về một route từ một router chưa hội tụ sau khi đã nhận một thông tin chính xác từ một trigger update. Tình huống này xảy ra và các lỗi định tuyến vẫn có thể xảy ra trong quá trình tái hội tụ.
Một sự hiệu chỉnh xa hơn nữa là trong thông điệp cập nhật, chỉ bao gồm các địa chỉ mạng làm cho việc trigger xảy ra. Kỹ thuật này làm giảm thời gian xử lý và giảm ảnh hưởng đến băng thông.
Route poisoning khi route bị lỗi, router sẽ gửi update về route đó đi với infinity-metric (hop count = 16).
Poison reverse Router nhận được quảng bá về một poisoned route (metric 16) trên một interface, router sẽ hồi đáp lại thông điệp
poison reverse trên cùng interface đó.
Update timer Qua mỗi khoảng thời gian update timer, router sẽ gửi update một lần qua một interface, mỗi interface có một update timer riêng, mặc định trên tất cả interface là 30 giây.
Holddown timer Đối với mỗi route đến một subnet trong bảng định tuyến, nếu như metric của route thay đổi đến một giá trị lớn hơn, thời gian holddown timer sẽ bắt đầu. Trong khoảng thời gian này (mặc định là 180 giây) router sẽ không cập nhật route nào khác đến subnet đó trong bảng định tuyến cho đến khi thời gian holddown timer kết thúc.
Trigger update sẽ làm tăng khả năng đáp ứng một hệ thống mạng đang hội tụ. Holddown timers sẽ giúp kiểm soát các thông tin định tuyến xấu.
Nếu khoảng cách đến một mạng đích tăng (ví dụ số hop count tăng từ hai lên bốn), router sẽ gán một giá trị thời gian cho route đó. Cho đến khi nào thời gian hết hạn, router sẽ không chấp nhận bất kỳ cập nhật nào cho route đó.
Rõ ràng có một sự đánh đổi ở đây. Khả năng các thông tin định tuyến kém bị đưa vào bảng định tuyến là giảm nhưng bù lại thời gian hội tụ sẽ tăng lên. Nếu thời gian holdown là quá ngắn, nó sẽ không hiệu quả. Nếu khoảng thời gian là quá dài, quá trình định tuyến thông thường sẽ bị ảnh hưởng.
Invalid timer Đối với mỗi route tồn tại trong bảng định tuyến, thời gian invalid timer sẽ tăng cho đến khi router nhận được update thông báo về route đó. Nếu như nhận được update, thời gian invalid sẽ được đặt về 0. Nếu như router không nhận được update, mà thời gian invalid đã hết (mặc định là 180 giây), route đó được xem như là không dùng được.
Flush (Garbage) timer
Thời gian flush timer mặc định là 240 giây, cũng giống như thời gian invalid timer, tuy nhiên thời gian flush timer mặc định sẽ tăng thêm 60 nữa, trong thời gian này nếu không nhân được update về route, router sẽ loại route đó ra khỏi bảng định tuyến.
Bài 15: