Thuật toán đƣờng đi QoS tính toán trƣớc chính xác

Một phần của tài liệu GIẢI PHÁP QoS TRONG MẠNG NGN (Trang 68 - 70)

Xem xét một thuật toán lựa chọn đường đi dựa trên thuật toán đường đi ngắn nhất (Bellman-Ford), tương ứng với tính toán đường đi có dải thông lớn nhất có thể của tất cả các bước nhảy. Với việc đưa ra một cấu hình mạng và các kết nối metric, thuật toán cho phép tính toán trước tất cả các đường đi QoS có thể. Đặc biệt, thuật toán cho phép tính toán trước bất kỳ đích nào có bước nhảy nhỏ nhất với băng thông lớn nhất và so sánh với thuật toán đường đi ngắn nhất chuẩn.

Đặc tính của thuật toán BF là nó lặp lại lần thứ h trong suốt các đường đi có tối đa h bước nhảy. Nó nhận ra đường đi tối ưu (băng thông lớn nhất có thể) giữa nguồn và mỗi đích. Vì thế ngoài ra chúng ta có thể lợi dụng sự xử lý của thuật toán BF bằng việc tăng bước nhảy.

Đặc biệt, ở lần lặp lại thứ k của thuật toán, băng thông lớn nhất có khả năng đến tất cả các đích trên đường đi được tìm ra, cùng với thông tin định tuyến tương ứng. Sau khi thuật toán kết thúc, thông tin này giúp chúng ta nhận biết được đường đi có số bước nhảy nhỏ nhất và với đủ băng thông để cung cấp cho yêu cầu mới. Hơn nữa, đường đi này với băng thông lớn nhất có thể là một trong tất cả các đường đi khả thi có số bước nhảy nhỏ nhất. Thuật toán này luôn luôn chọn lựa chọn một đường có băng thông lớn nhất có thể.

Chúng ta sẽ xem xét sự miêu tả thuật toán chi tiết hơn nữa và cấu trúc dữ liệu được sử dụng để ghi các thông tin định tuyến. Gọi băng thông có được trên cung giữa đỉnh n và đỉnh m là b(n,m). Đỉnh tương ứng với bộ định tuyến có thuật toán đang chạy được gọi là node nguồn. Thuật toán xử lý các đường đi tính toán trước từ node nguồn này đến tất cả các mạng đích có thể và cho tất cả các giá trị băng thông có thể. Tại mỗi sự lập lại (bước nhảy), kết quả tức thời được ghi vào trong bảng định tuyến theo cấu trúc sau:

 Một ma trận H x K, trong đó H là số bước nhảy cho phép lớn nhất đối với một đường đi và K là số node đích.

 Mục (h,n) được tạo ra trong suốt quá trình lặp lại (giá trị bước nhảy) của thuật toán, và bao gồm 2 trường:

- bw (bandwidth): Băng thông lớn nhất có thể trên một đường đi của nhiều nhất h bước nhảy giữa node nguồn và node đích n.

- nb (neighbor): Thông tin định tuyến kết hợp với đường đi h bước nhảy (hoặc ngắn hơn) đến node đích n có băng thông là bw. Trong trường hợp lựa chọn đường đi hop-by-hop, thông tin kề bên chỉ là nhận dạng node kề với node nguồn trên đường đi.

H Node đích 2 3 4 5 6 b w nb b w nb b w nb b w nb b w nb 0 0 - 0 - 0 - 0 - 0 - 1 2 2 4 3 1 4 0 - 0 - 2 4 3 4 3 3 3 1 3 4 3 3 4 3 4 3 3 3 1 3 4 3

Bảng 2.1: Bảng định tuyến QoS của mô hình đồ thị trọng số

Khi thuật toán được gọi, đầu tiên bảng định tuyến khởi tạo với tất cả các trường bw được đặt bằng 0 và trường các trường nb không có gì. Với mỗi lần lặp thứ h và mỗi đích n, thuật toán sao chép bw và nb từ dòng h-1 đến dòng h. Sau đó thuật toán tìm mỗi kết nối có thể (m,n) và kiểm tra băng thông lớn nhất có thể trên đường đi h bước nhảy đến node n, bước nhảy cuối cùng là liên kết này. Nếu giá trị kết quả cao hơn trường bw trong mục (h,n) thì một đường đi tốt hơn (giá trị bw lớn hơn) được tìm ra đối với đích n và với nhiều nhất h bước nhảy. Trường bw trong mục (h,n) sau đó được cập nhật với giá trị mới. Trong trường hợp định tuyến hop-by-hop, các bản ghi trường nb nhận dạng bước nhảy đầu tiên (bước tiếp theo của node nguồn). Thuật toán kết thúc khi không có sự thay đổi nào đối với tất cả các giá trị giữa các mục trên dòng h-1 và dòng h hoặc đạt được số lần lặp lại lớn nhất. Bảng trên gồm tất cả giá trị trong bảng định tuyến QoS cho mỗi lần lặp lại h của mô hình đồ thị trọng số.

Một phần của tài liệu GIẢI PHÁP QoS TRONG MẠNG NGN (Trang 68 - 70)