Với thuật toỏn tỡm đường ngắn nhất, nhược điểm của cỏc thuật toỏn này là khi một cung là tốt với nhiều cặp nguồn – đớch, thỡ cỏc cặp nguồn – đớch sẽ chọn cung đú cho tuyến đường của chỳng và dẫn đến tắc nghẽn trờn cung đú. Thuật toỏn định tuyến dựa trờn lưu lượng khụng chỉ tối ưu tài nguyờn mạng tại thời điểm hiện tại, nhưng cũng cho yờu cầu của tương lai. Thuật toỏn định tuyến dựa trờn lưu lượng sẽ tiờn đoỏn liờn kết nào sẽ bị tắc nghẽn khi định tuyến quỏ nhiều lưu lượng qua chỳng và sẽ giảm định tuyến lưu lượng qua cỏc liờn kết đú.
Phõn loại :
- Dựa trờn thụng tin của mạng hiện tại, tớnh toỏn và chọn ra những liờn kết làm tối thiểu khả năng tắc nghẽn của mạng trong tương lai.
- Dựa trờn thụng tin thống kờ bởi server hoặc router sẽ cú thụng tin gần đỳng về yờu cầu trong tương lai. Cỏc thụng tin thống kờ đú gọi là "thụng tin mụ tả (profile)". Sau khi cú cỏc thụng tin mụ tả, sẽ sử dụng quy hoạch tuyến tớnh để tỡm ra giải phỏp tối ưu trong tương lai.
Sau đõy là một vài thuật toỏn định tuyến dựa trờn lưu lượng, cỏc thuật toỏn này gợi ý ra cỏc lý thuyết cơ bản và cỏc ý tưởng tổng quỏt cho cỏc thuật toỏn định tuyến dựa trờn lưu lượng.
*) Thuật toỏn định tuyến với điểm giao tối thiểu MIRA (Minimum Interference Routing Algorithm)
Để đảm bảo yờu cầu cài đặt LSP, giỏ trị maxflow càng nhỏ sau khi mọi cặp nguồn – đớch chọn được tuyến đường thỡ khả năng của mạng đỏp ứng cho yờu cầu của tương lai càng lớn. Vấn đề này cú thể được mụ tả bởi cụng thức toỏn học. Đặt
sd
θ là maxflow của cặp nguồn – đớch (s,d) được tớnh toỏn sau khi thỏa món yờu cầu
thiết lập LSP, bài toỏn đặt ra là cực đại tổng θsd của mọi cặp nguồn – đớch. Mục tiờu tối ưu là:
Maximize ( ∑) ( ) b a eP d s sd , , θ
Bờn cạnh đú, phải tỡm ra lưu lượng của mỗi cặp nguồn – đớch, thiết lập tuyến đường với băng thụng D và đảm bảo ràng buộc: tổng băng thụng của mọi lưu lượng
đi qua mỗi liờn kết phải nhỏ hơn băng thụng dự trữ của liờn kết đú, và tổng lưu lượng đi vào bằng tổng lưu lượng đi ra mỗi nỳt của mạng.
Để giải quyết hoàn toàn vấn đề là một bài toỏn NP khú. Để giải quyết vấn đề trờn, mụ tả bởi thuật toỏn MIRA: từ thụng tin về dung lượng dự trữ của mọi cung, cú thể tớnh toỏn ra maxflow của mọi cặp nguồn – đớch. Với mỗi cặp nguồn – đớch, tỡm ra tập mincut, và những liờn kết thuộc về cỏc tập đú được gọi là cỏc liờn kết tới hạn (critical links). Cỏc liờn kết tới hạn này cú tớnh chất là nếu định tuyến lưu lượng của cặp nguồn – đớch sẽ bị giảm. Do đú, mục tiờu của thuật toỏn MIRA là trỏnh đến tối đa việc đi qua cỏc liờn kết tới hạn.
í tưởng:
í tưởng của thuật toỏn là cỏc đường đi sẽ khụng ảnh hưởng quỏ nhiều để thỏa món yờu cầu tương lai. Thuật toỏn phỏt triển dựa trờn heuristic " critical link ". " critical link " được chỉ định bởi thuật toỏn, và là cỏc kết nối với cỏc thuộc tớnh mà một LSP được định tuyến qua cỏc kết nối này giỏ trị luồng lớn nhất (maxflow) của một hoặc nhiều đụi ngừ vào – ngừ ra (ingress – egress) giảm đi. Nếu " critical link " cú tải nặng thỡ mạng khụng cú khả năng thỏa món cho tương lai.
Hỡnh 2.2 : Cỏc ý tưởng chớnh
Vớ dụ :
Nếu thuật toỏn ớt trạm nhất (min – hop) được sử dụng, tuyến từ S3 tới D3 là 1- 7-8-5 và nú sẽ khúa cỏc tuyến giữa (S1, D1) và (S2, D2). Trong vớ dụ này, sự lựa chọn tốt nhất là 1-2-3-4-5.
Thiết lập luồng cực đại (maxflow) giữa một cặp ngừ vào – ngừ ra (S1, D1). Giỏ trị này là giới hạn trờn của tổng băng thụng cú thể đi từ ngừ vào đến ngừ ra. Giỏ
1 1 1 2 3 4 5 6 7 8 1 0 9
trị luồng cực đại sẽ giảm D đơn vị khi băng thụng yờu cầu của D đơn vị được định tuyến giữa (S1, D1).
Chọn đường đi bằng tớnh toỏn đường đi ngắn nhất: Sau khi xỏc định cỏc " critical link " sẽ trỏnh được định tuyến LSP trờn cỏc " critical link ". Sử dụng Dijkstra hay Bellman-Ford để tớnh đường đi. Thực hiện điều đú bằng cỏch xõy dựng ma trận trọng số (matrix weight) làm tăng chi phớ khi cỏc tuyến LSP đi qua " critical link ". Sau đú ta chọn đường đi theo thuật toỏn đường đi ngắn nhất.
MIRA (Minimum Interference Routing Algorithm):
Sau đõy là kết quả mụ hỡnh của MIRA. Với mụ hỡnh và băng thụng giống như trong tập tin đoạn mó thỡ lưu lượng từ nguồn 0 sẽ đi thụng qua con đường 0-6- 7-4 nhưng với MIRA, sau khi tớnh toỏn cho cỏc critical link, lưu lượng từ nguồn 0 sẽ đi qua con đường 0-1-2-3-4, vỡ thế 5, 9 và 8, 10 cú nhiều cơ hội để thiết lập một LSP thụng qua kết nối 6-7.
Hỡnh 2.3 : MIRA 1
Với thuật toỏn MIRA, đường đi từ nỳt 1 đến 5 là 1-3-5, từ nỳt 1 đến 4 là 1-2- 4 và con đường từ nỳt 2 đến 3 là 2-4-3. Sau đú ta sử dụng định tuyến tường minh để thiết lập ER-LSP dọc theo cỏc nỳt này. Với MIRA, mạng cú thể tối ưu tài nguyờn cho cỏc yờu cầu tương lai.
SVTH: Phạm Thanh Hải Trang 42 GVHD: ThS. Đào Minh Hưng
0 1 2 4 3 5 6 7 8 1 0 9
Hỡnh 2.4 : MIRA 2
*) Thuật toỏn định tuyến động trực tuyến DORA (Dynamic On Routing Algorithm):
Thuật toỏn DORA cũng dựa trờn thụng tin hiện tại của mạng để tiờn đoỏn ra cỏc liờn kết cú khả năng bị tắc nghẽn để trỏnh đi qua chỳng. DORA khỏc biệt với MIRA ở chỗ MIRA thỡ dựa trờn maxflow, trong khi DORA xem xột về số tuyến đường đi qua một liờn kết (xem xột đến mọi cặp nguồn – đớch). Đặt n là số tuyến đường (của mọi cặp nguồn – đớch) đi qua một liờn kết, giỏ trị của n càng lớn, khả năng tắc nghẽn trờn liờn kết đú trong tương lai càng lớn, do đú DORA chọn n làm trọng số cho mỗi liờn kết và sử dụng thuật toỏn tỡm đường ngắn nhất để tỡm ra tuyến đường cú trọng số tối thiểu. Ngoài ra, kết hợp n với cỏc điều kiện tối ưu metric khỏc (vớ dụ m), thuật toỏn DORA xõy dựng giỏ trị trọng số bằng cụng thức:
( )m
n
w=α ′+ 1−α ′ (2.1)
m
n′, ′là cỏc giỏ trị được chuẩn húa của n, m trong phạm vi [0, 100].
0 ≤α ≤ 1, chọn giỏ trị α dựa trờn thực nghiệm (thụng thường α=0,5).