2.3.4. Tắnh tốn ựường ựi
Khi cơ sở dữ liệu định tuyến đã được xây dựng, việc tắnh tốn đường đi có thể được tiến hành thơng qua một thuật tốn định tuyến. Bộ giao thức WDM sử dụng giao thức SPF (Shortest Path Fist Ờ Tìm đường ngắn nhất) chắnh xác hơn là thuật tốn tìm đường tối ưụ Sau khi đã lựa chọn được một cơ chế, vắ dụ như khoảng cách ngắn nhất hay cost thấp nhất, thì cây SPF nguồn sẽ được tắnh tốn theo một trong số những giải thuật tìm đường ngắn nhất.
Thuật tốn SPF nguồn đơn phổ biến nhất là thuật toán Dijkstra, thuật tốn này trình bày kết quả dưới dạng chi phắ thấp nhất cho mỗi điểm đắch cho trước. Thuật tốn định tuyến SPF của Dijkstra trên cơ sở trạng thái liên kết và thực hiện các bước theo metric khoảng cách. Thuật toán sử dụng một khái niệm nút gần nhất và trên cơ sở nguyên lý: ỘCho trước một nút nguồn n, ựường ngắn nhất từ n ựến nút gần kề nhất s, hoặc là ựường mà ựược nối trực tiếp từ n ựến s, hoặc là ựường chứa n và một số nút gần nhất trung gian cộng với một ựường trực tiếp từ nút gần nhất cuối cùng ựến sỢ.
Cho một đồ thị G(V,E), trong đó V là tập các ựỉnh, E là tập các cạnh, s là ựỉnh nguồn thuộc tập V, một cây ựường ngắn nhất tới mỗi ựỉnh trong tập G có thể nhận
(a) (b)
ựược. S là tập các ựỉnh cuối cùng có trọng lượng đường ngắn nhất đã được xác định từ S.
định nghĩa: s(sj) = Khoảng cách ngắn nhất từ s tới sj
w(si, sj) = Trọng lượng của (si, sj), trong đó si, sj thuộc tập V Thuật toán thừa nhận w(si, sj) > 0 cho mỗi cạnh (i,j) thuộc E:
+ Thuật toán Dijkstra bắt ựầu với tập S0 = {s}, s thuộc V
+ đưa ra Sk = {s, s1, s2, ........, sk) tại bước thứ k, thuật toán Dijkstra dẫn đến sự tắnh tốn:
Ớ Với mỗi sj ∈ Sk , tìm bj ∉ Sk sao cho có min{w(sj, bj)}
Ớ Tìm sq ∈ Sk mà có min{d(sq) + w(sq, bq)}
Ớ Lập sk+1 = bq, Sk+1 = Sk ∪ {sk+1}, d(sk+1) + w(sq, sk+1)
Thuật tốn Dijkstra SPF đưa ra kết quả giá trị nhỏ nhất cho mỗi đắch ựến từ ựỉnh đưa ra sau điểm s cho trước. Nó khơng tự ựộng lưu trữ các ựường SPF, nó cũng chỉ quan tâm đến các cạnh có trọng lượng khơng âm.
Thuật tốn Bellman-Ford giải quyết vấn ựề các ựường ngắn nhất nguồn ựơn trong trường hợp tổng quát hơn với trọng lượng cạnh có giá trị âm. Thuật tốn dị tìm Ộvịng trọng lượng âmỢ từ ựỉnh nguồn s, và ghi lại một giá trị Boolean ựể chỉ ra khơng có giải pháp tồn tạị Nếu khơng có vịng như vậy trong G, thuật tốn cho ra cây ựường ngắn nhất cùng với các trọng lượng. Thuật toán Bellman-Ford sử dụng ký hiệu Din = giá trị ựường nhỏ nhất từ ựỉnh i tới ựỉnh nguồn s sử dụng n cạnh. Từ ựó, chúng ta có Dsn = 0 ∀n, Dis = ∞, i ≠ 0. Nếu khơng có cạnh nào giữa hai đỉnh i và j, thì w(i,j) = ∞. Thuật tốn Bellman-Ford dẫn đến các hoạt động sau với bước n:
Ớ Din+1 = min{w(i,j) + Djn), ∀i ≠ 0.
Ớ Kết thúc sau hầu hết mỗi chu kỳ m, trong đó m = số lượng nút. Khơng có vịng trọng lượng âm cho ta Dim = Dim-1.
Ta thấy thuật tốn Dijkstra tắnh tốn đường ngắn nhất chú ý tới trọng lượng liên kết cho một kết nối ựơn tại một thời ựiểm. điều này có thể rất khác nhau tới các ựường mà sẽ ựược lựa chọn khi một bó kết nối giữa một tập các điểm cuối là ựược yêu cầu cho mục ựắch tối ưu ựưa rạ
2.3.5. Những ràng buộc chuyển mạch
Việc tắnh tốn đường đi chắnh cho một lightpath trong một mạng WDM về cơ bản có một vấn đề ràng buộc về thiết yếu dựa trên vấn ựề ựịnh tuyến. Vấn ựề ràng buộc này thông thường là do độ khả dụng của bước sóng cần thiết cho lightpath cũng
với những ràng buộc về chắnh sách quản lý. Mặc dù có nhiều giao thức ựịnh tuyến và gán bước sóng nhưng giao thức ựịnh tuyến ựược sử dụng nhiều nhất vẫn là CSPF (Constrait SPE). Những ràng buộc có thể có trong mạng WDM bao gồm:
+ Tắnh khả dụng của bước sóng + Khả năng thay ựổi bước sóng + Băng thơng sợi quang
+ Số lượng bước sóng trên mỗi giao tiếp truyền dẫn
+ Loại trường chuyển mạch: trong suốt hay không trong suốt + u cầu định dạng tắn hiệu của client hoặc tốc ựộ ựường + Khả năng ghép kênh của cổng
+ Sự bắt buộc bó đa kết cấu
+ Những ràng buộc về chất lượng tắn hiệu, như là tỷ số tắn hiệu trên tạp âm (OSNR), tán sắc bước sóng, nhiễu xuyên âm, tắnh ổn định của đường, ...
Vì những giao thức IGP hiện tại như IS-IS và OSPE là Topology - driven (Topology truyền ựược), việc lựa chọn đường đi là dựa trên những tắnh tốn ựường ựi ngắn nhất sử dụng thêm những link metric. điều đó có nghĩa là các giao thức ựịnh tuyến khơng xem xét đến các đặc tắnh của lưu lượng và những ràng buộc khả năng của mạng. Những tiến bộ gần ựây trong mạng MPLS ựã mở ra những khả năng mới ựể vượt qua các giới hạn này bằng cách cho phép những người dùng thiết lập các ựường ựi LSP riêng biệt tại các thiết bị ở biên. Tuy nhiên, ựể làm ựược ựiều này, IGP cần ựược chỉnh sửa để nhờ đó chúng có thể phân bố thêm thơng tin cho việc tắnh tốn đường đi bên cạnh các thông tin về topologỵ Trong các mạng WDM, sẽ có nhiều ràng buộc về dung lượng hơn như giới hạn về trao đổi bước sóng trong suốt và giới hạn về tráo ựổi nhãn quang..., một vài mở rộng WDM cho các giao thức IGP ựã ựược thực hiện, nhờ vậy mà các bộ chuyển mạch biên có thể thiết lập các ựường quang thắch hợp.
2.3.6. định tuyến và gán bước sóng trong mạng WDM 2.3.6.1. định tuyến và gán bước sóng tĩnh 2.3.6.1. định tuyến và gán bước sóng tĩnh
định tuyến và gán bước sóng tĩnh được thực hiện khi mạng có đặc điểm:
+ Cho trước topo vật lý, tức là các nút mạng và các liên kết vật lý ựược cho trước
+ Cho trước tập các yêu cầu kết nối hoặc ma trận lưu lượng tĩnh để từ đó xác ựịnh các yêu cầu kết nối
+ Thắch hợp cho dạng trạng thái lưu lượng được biết trước và có tắnh ổn định, sự thay ựổi chỉ diễn ra trong khoảng thời gian dài (như trong các mạng ựường trục)
+ đường dẫn và bước sóng được xác định trước cho từng kết nối, không phụ thuộc vào sự thay ựổi thông tin trạng thái ựang diễn ra trên mạng. Khi ựường dẫn và bước sóng đã được xác định, các bộ OXC tại các nút mạng được lập trình để thiết lập các lightpath ựã ựược chỉ ựịnh trước
Mục tiêu khi thực hiện ựịnh tuyến và gán bước sóng tĩnh: + Tối thiểu hóa số bước sóng cần sử dụng
+ Hoặc tối ựa số kết nối có thể thiết lập ứng với một số lượng bước sóng và một tập kết nối cho trước
2.3.6.1.1. Vấn ựề ựịnh tuyến
để giải quyết vấn ựề ựịnh tuyến và gán bước sóng tĩnh, đầu tiên phải xác định đường cho tồn bộ kết nối, rồi sau ựó gán bước sóng cho chúng. Ngay cả khi hai cơng đoạn này khơng thực hiện ựộc lập thì ta vẫn thu ựược một cấu hình ngắn nhất tương ựối tốt bằng cách nàỵ Những kết nối thường ựược gán một ựường ngắn nhất nối hai điểm đầu cuối (bằng các thuật tốn thơng dụng như Dijkstra) vì những đường dài hơn thì sử dụng nhiều tài nguyên mạng và thường mang lại một cấu hình mạng có hiệu suất thấp hơn. Nếu có nhiều đường ngắn nhất giữa hai điểm thì việc chọn ựường sẽ mang tắnh ngẫu nhiên. Thơng thường, cấu hình tối ưu thu ựược bằng cách chọn các ựường ngắn nhất, tuy nhiên không nhất thiết kết nối nào cũng là ựường ngắn nhất (ựôi khi dùng đường dài hơn ta có thể tránh những tắc nghẽn khơng đáng có trên một kết nối nào đó).
2.3.6.1.2. Vấn đề gán bước sóng
Xét mạng định tuyến theo bước sóng khơng có khả năng chuyển đổi bước sóng. Nét ựặc trưng của mạng WDM là không cho phép hai kết nối sử dụng bước sóng giống nhau dùng chung một ựường nối (nếu dùng chung ựường nối sẽ gây nên sự xung đột bước sóng). Khi các tuyến đã được cố định thì việc cịn lại là gán bước sóng khả thi cho chúng sao cho số lượng bước sóng được sử dụng trên mạng là nhỏ nhất để có thể thỏa mãn các u cầu cơng nghệ về số lượng bước sóng tối đa trên một sợi quang.
Có nhiều thuật tốn khác nhau, việc chọn lựa giải thuật nào tùy thuộc vào quyết ựịnh của nhà quản lý dựa trên ựặc ựiểm của mạng. Sau ựây là một số phương pháp thông dụng:
+ Thuật tốn Longest-First: Các lightpath sẽ được sắp xếp theo thứ tự từ tuyến dài nhất đến ngắn nhất. Một bước sóng sẽ ựược gán cho các tuyến theo thứ tự này sao cho thỏa mãn ựiều kiện về xung đột bước sóng. Sau đó ta chuyển sang gán bước sóng kế tiếp. Cứ tiếp tục cho tới khi hết số lightpath.
+ Thuật toán Largest-First: Trong phương pháp này, các nút ựược sắp xếp theo thứ tự giảm dần theo bậc của nút. Ta gán bước sóng cho nút có bậc cao nhất là loại nó ra khỏi tuyến và tiếp tục q trình cho đến khi tất cả các nút được gán bước sóng. điều này ựảm bảo số bước sóng phải gán là ắt nhất.
2.3.6.2. định tuyến và gán bước sóng động
định tuyến và gán bước sóng ựộng phù hợp với các mạng có ựặc ựiểm:
+ Lưu lượng mạng là ựộng. Các kết nối này ựược yêu cầu tồn tại trong một khoảng thời gian cũng ngẫu nhiên. Vì thế, các lightpath khơng chỉ được thiết lập ựộng mà cịn phải được giải phóng ựộng. Việc ựịnh tuyến và gán bước sóng phụ thuộc vào trạng thái của mạng ở thời ựiểm yêu cầu kết nối xảy ra
+ Việc định tuyến và gán bước sóng phụ thuộc vào trạng thái mạng hiện tại và phải ựược thực hiện mỗi khi có yêu cầu kết nối xuất hiện. Nếu có thể thì thực hiện q trình định tuyến và gán bước sóng tại các nút trung gian cần thiết ựể thiết lập lightpath. Còn nếu một u cầu kết nối khơng được đáp ứng do thiếu tài nguyên thì xem như bị nghẽn. Khi quá trình liên lạc kết thúc, kết nối ựược giải phóng, do đó bước sóng đã sử dụng có thể được sử dụng lại cho một kết nối khác.
Dựa trên khả năng hốn đổi bước sóng trong mạng vật lý, thuật tốn có thể thiết lập ựể ựạt ựược một số mục đắch nào đó như:
+ Tối thiểu hóa số chặng trong một mạng WDM có số lượng giới hạn các bộ chuyển đổi bước sóng, hay tối thiểu hóa xác xuất nghẽn mạch yêu cầu kênh quang ựộng trong mạng WDM, với những rằng buộc về tắnh liên tục của bước sóng
+ Tận dụng hiệu quả tài ngun mạng để cực đại hóa xác xuất thiết lập thành cơng lightpath hay tối thiểu hóa số u cầu bị nghẽn
để tiết kiệm thời gian, việc tắnh tốn đường đi cho mỗi cặp node có thể được tiến hành trước, và hình cây định tuyến được lưu ở node nguồn. đường đi chắnh đã được lưu trữ có thể khơng được kết nối vào trong mơi trường động, vì một số lý do như khơng có bước sóng nào khả dụng hay liên kết bị ựứt. để giải quyết vấn ựề này, các ựường lựa chọn khác có thể cũng được tắnh và lưu cùng đường đi chắnh. Khi nhận ựược một yêu cầu kênh quang, thuật tốn cố gắng cấp phát các bước sóng dọc theo đường đi chắnh. Nếu đường đi này bị lỗi, thuật tốn sẽ tìm đường thay thế và cố
gắng tìm được một đường thay thế mà có thể được thiết lập dựa trên độ khả dụng của bước sóng trong mạng. Như vậy ta thấy so với ựịnh tuyến tĩnh thì định tuyến động tận dụng bước sóng tốt hơn. Về mặt kinh tế, ựiều này sẽ ựem lại lợi nhuận nhiều hơn cho các nhà kinh doanh mạng, gián tiếp giảm chi phắ cho các thuê bao
Vì u cầu phải đáp ứng nhanh với sự thay ựổi của mạng, các giải thuật ựịnh tuyến và gán bước sóng động địi hỏi phải đơn giản, độ phức tạp tắnh tốn càng nhỏ càng tốt. Việc kết hợp giữa ựịnh tuyến và gán bước sóng là rất khó ựể giải quyết cùng một lúc.
2.3.6.2.1. Vấn ựề ựịnh tuyến ạ định tuyến cố ựịnh ạ định tuyến cố ựịnh
Phương pháp ựơn giản nhất ựể ựịnh tuyến một kết nối là chọn cùng một tuyến cố ựịnh như nhau cho một cặp nguồn-đắch. Một vắ dụ điển hình của cách tiếp cận này là ựịnh tuyến đường ngắn nhất cố định. đường ngắn nhất tắnh cho mỗi cặp nguồn- đắch được tắnh trước (offline) sử dụng thuật tốn đường ngắn nhất chuẩn như Dijkstra hoặc Bellman-Ford. Do đó nút mạng khơng cần thiết lưu giữ tồn bộ trạng thái mạng. Bất kỳ kết nối nào giữa cặp các nút riêng ựược thiết lập sử dụng tuyến ựược xác định trước. Trong hình 2.21 ựường ngắn nhất cố ựịnh minh họa từ nút 0 ựến nút 2. 3 4 2 5 1 0 Hình 2.21: đường ngắn nhất cố ựịnh
Phương pháp ựịnh tuyến này rất ựơn giản, tuy nhiên có nhược điểm là nếu nguồn tài nguyên (bước sóng) được sử dụng hết có thể xảy ra tình trạng tắc ngẽn trong trường hợp lưu lượng ựộng, hoặc dẫn đến cần một số lượng lớn các bước sóng sử dụng trong mạng trong trường hợp lưu lượng tĩnh. định tuyến cố ựịnh cũng khơng thể xử lý hết các tình huống có sự cố khi một hay nhiều kết nối trong mạng bị hỏng. để ựiều khiển các trường hợp mạng bị hỏng thì cần phải có giải pháp thay thế đường ựi bị hỏng bằng ựường khác hoặc tìm ra một tuyến mới một cách linh động. Chú ý
rằng trong hình 2.21, một yêu cầu kết nối từ nút 0 đến nút 2 sẽ bị khóa nếu một bước sóng chung khơng thể sử dụng trên cả hai tuyến sợi trong tuyến cố ựịnh.
b. định tuyến thay thế cố ựịnh
Phương pháp này ựược cải tiến từ ựịnh tuyến cố ựịnh. Thay vì chỉ tìm được một đường ựi cố ựịnh sẽ tìm ựược nhiều ựường ựi giữa một cặp nút nguồn -đắch. Mỗi nút trong mạng sẽ phải lưu trữ một bảng ựịnh tuyến chứa ựường ựi cố ựịnh tới mỗi nút đắch. đường đi ngắn nhất giữa một cặp nút nguồn - đắch sẽ được chọn làm đường chắnh, các ựường còn lại sẽ ựược chọn làm các ựường phụ hay đường thay thế, đó là loại đường đi mà khơng chia sẻ bất kỳ kết nối vật lý nào với đường chắnh
Hình 2.22 mơ tả tuyến kết nối nút chắnh (ựường liền) từ nút 0 ựến nút 2, và tuyến thay thế (ựường nét ựứt) từ nút 0 ựến nút 2.
3 4 2 5 1 0
Hình 2.22: Tuyến chắnh (nét liền) và tuyến thay thế (nét ựứt) từ nút 0 ựến nút 2 Khi một yêu cầu kết nối ựến, nút nguồn cố gắng thiết lập lightpath trên mỗi ựường ựi theo tuần tự trong bảng ựịnh tuyến, cho tới khi một ựường ựi với một bước sóng xác định được tìm thấỵ Nếu khơng tìm được đường nào thoả mãn từ danh sách trong bảng ựịnh tuyến thì yêu cầu kết nối bị tắc nghẽn hoặc hủy và mất ựị Trong hầu hết các trường hợp, các bảng ựịnh tuyến tại mỗi nút ựược chỉ thị bằng số các chặng tới đắch, như vậy đường ngắn nhất tới nút đắch là đường đi qua ắt số chặng nhất và nó là ựường ựầu tiên trong bảng ựịnh tuyến. Trường hợp các ựường ựi khác nhau có cùng số chặng thì đường đi ngắn nhất sẽ ựược chọn một cách ngẫu nhiên
định tuyến thay thế cố ựịnh ựơn giản trong việc ựiều khiển thiết lập và xoá bỏ các nguồn quang và có thể được sử dụng để cung cấp một khả năng chịu ựựng sự ựứt liên kết trong mạng ở một mức ựộ nào ựó. Một ưu ựiểm khác trong ựịnh tuyến thay thế cố ựịnh là làm giảm ựáng kể xác xuất tắc nghẽn so với ựịnh tuyến cố ựịnh.
c. định tuyến thắch nghi
định tuyến thắch nghi sử dụng thơng tin trạng thái mạng tại thời ựiểm yêu cầu kết nối đến. Nhờ có chú ý đến sự thay đổi của trạng thái mạng, định tuyến thắch nghi làm tăng khả năng thực hiện thành công việc thiết lập một kết nốị