Thuật toán trạng thái liên kết (Link State):

Một phần của tài liệu tìm hiểu phương pháp nâng cao hiệu năng của giao thức zrp với bl và sd (Trang 25)

5. Cấu trúc của luận văn

1.3.2 Thuật toán trạng thái liên kết (Link State):

Thuật toán trạng thái liên kết được dùng để xây dựng và tính toán đường đi ngắn nhất từ nút nguồn đến tất cả các nút đích trong mạng. Thuật toán Dijkstra được áp dụng trong giao thức định tuyến trạng thái liên kết được thực hiện qua các bước sau:

Input: Đồ thị (G,w,s); Dijkstra(G,w,s):

- Bước 1: Khởi tạo nút nguồn s;

- Bước 2: S: = {}; {Cuối cùng S sẽ chứa các đỉnh có trọng số đường đi

ngắn nhất từ s}

- Bước 3: Khởi tạo hàng đợi ưu tiên Q:= V[G] {Q chứa các đỉnh trong

đồ thị G}

- Bước 4: While Q<>{} do

u:=EXTRACT_MIN(Q) {Chọn ra đỉnh v trong Q lân cận đỉnh u có

trọng số cạnh (u,v) nhỏ nhất gán cho u}

- Bước 5: S:=U ∪{u}; Q:=Q\{u}

- Bước 6: for mỗi đỉnh v ∈ Adj[u] do {v các đỉnh liền kề với u}

If d(v) > d(u) + w then {d(u), d(v) là chi phí được tính từ nút gốc đến

các đỉnh u, v}

d(v):=d(u) + w; {Quay lại bước 4};

Output: Cây đường đi ngắn nhất từ đỉnh s đến các nút trong mạng.

Khi áp dụng các thuật toán trạng thái kết nối, mỗi nút sử dụng dữ liệu cơ sở của nó như là một bản đồ của mạng với dạng một đồ thị. Để làm điều này, mỗi nút phát đi tới toàn mạng những thông tin về các nút khác mà nó có thể kết nối được, và từng nút góp thông tin một cách độc lập vào bản đồ. Sử dụng bản đồ này, mỗi nút sau đó sẽ xác định được tuyến đường tốt nhất từ nó đến mọi nút khác.

Thuật toán này xây dựng cấu trúc dữ liệu dưới dạng cây, trong đó nút hiện tại là gốc, và chứa mọi nút khác trong mạng. Bắt đầu với một cây ban

đầu chỉ chứa chính nó. Sau đó lần lượt từ tập các nút chưa được thêm vào cây, nó sẽ thêm nút có chi phí thấp nhất để đến một nút đã có trên cây. Tiếp tục quá trình đến khi mọi nút đều được thêm vào cây.

Cây này sau đó phục vụ để xây dựng bảng định tuyến, đưa ra bước truyền kế tiếp tối ưu, để từ một nút đến bất kỳ nút khác trên mạng.

Thuật toán này có ưu điểm là có thể thích nghi được với đa số hệ thống, cho phép người thiết kế có thể thiết kế mạng linh hoạt, phản ứng nhanh với tình huống xảy ra. Do không gởi cập nhật định kỳ như vector khoảng cách, nên thuật toán trạng thái liên kết bảo đảm được băng thông cho các đường mạng.

Nhược điểm của thuật toán trạng thái liên kết là quá trình xử lý phức tạp, nên chiếm nhiều bộ nhớ. Đồng thời, việc sử dụng các giao thức định tuyến truyền thống trong mạng MANET sẽ dẫn đến rất nhiều vấn đề trở ngại cần giải quyết như tiêu tốn năng lượng nguồn nuôi cho các cập nhập định kỳ như trong giao thức định tuyến vector khoảng cách, tiêu tốn băng thông mạng cho các cập nhập định kỳ, làm quá tải bộ vi xử lý của thiết bị khi các thông tin cập nhật, số nút mạng tăng lên, tạo ra nhiều đường đi dư thừa.

Một phần của tài liệu tìm hiểu phương pháp nâng cao hiệu năng của giao thức zrp với bl và sd (Trang 25)