Phân loại các kỹ thuật định tuyến

Một phần của tài liệu KHẢO SÁT ẢNH HƢỞNG CỦA SỰ CHUYỂN ĐỘNG CÁC NÚT MẠNG ĐẾN HIỆU SUẤT CỦA MỘT SỐ GIAO THỨC ĐỊNH TUYẾN TRONG MANET pdf (Trang 28 - 69)

Thuật toán định tuyến vector khoảng cách (distance-vector routing protocols) Thuật toán này dùng thuật toán Bellman-Ford, trong đó chỉ định một con số, gọi là chi phí (hay trọng số), cho mỗi một liên kết giữa các nút trong mạng. Các nút sẽ gửi thông tin về đƣờng đi từ điểm A đến điểm B qua các đƣờng truyền (kết nối) mang lại tổng chi phí thấp nhất (là tổng các chi phí của các kết nối giữa các nút đƣợc dùng).

Thuật toán hoạt động với những hành động rất đơn giản. Khi một nút khởi động lần đầu, nó chỉ biết các nút kề trực tiếp với nó, và chi phí trực tiếp để đi đến đó (thông tin này, danh sách của các đích, tổng chi phí đến từng đích và bƣớc kế tiếp để gửi dữ liệu đến đó tạo nên bảng định tuyến, hay bảng khoảng cách). Mỗi nút, trong một tiến trình, gửi đến từng “hàng xóm” tổng chi phí của nó để đi đến các đích mà nó biết. Các nút “hàng xóm” phân tích thông tin này, và so sánh với những thông tin mà chúng đang “biết”; bất kỳ điều gì cải thiện đƣợc những thông tin chúng đang có sẽ đƣợc đƣa vào các bảng định tuyến của những “hàng xóm” này. Đến khi kết thúc, tất cả nút trên mạng sẽ tìm ra bƣớc truyền kế tiếp tối ƣu đến tất cả mọi đích, và tổng chi phí tốt nhất.

Khi một trong các nút gặp vấn đề, những nút khác có sử dụng nút hỏng này trong lộ trình của mình sẽ loại bỏ những lộ trình đó, và tạo nên thông tin mới của bảng định tuyến. Sau đó chúng chuyển thông tin này đến tất cả nút gần kề và lặp lại quá trình trên. Cuối cùng, tất cả nút trên mạng nhận đƣợc thông tin cập nhật, và sau đó sẽ tìm đƣờng đi mới đến tất cả các đích mà chúng còn tới đƣợc.

Thuật toán định tuyến trạng thái kết nối (Link-state routing protocols)

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 đã làm theo cách này là Dijkstra, bằng cách xây dựng cấu trúc dữ liệu khác, 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ốt ƣu, … để từ một nút đến bất kỳ nút khác trên mạng.

So sánh các thuật toán định tuyến

Các giao thức định tuyến theo thuật toán vector khoảng cách đơn giản và hiệu quả hơn trong các mạng nhỏ, đòi hỏi ít (nếu có) sự giám sát. Tuy nhiên nhƣợc điểm của nó là khả năng hội tụ chậm khi mạng lớn và thay đổi, điều này dẫn đến sự phát triển của các thuật toán trạng thái kết nối tuy phức tạp hơn nhƣng tốt hơn để dùng trong các mạng lớn.

Ƣu điểm chính của định tuyến bằng trạng thái kết nối là phản ứng nhanh nhạy hơn, và trong một khoảng thời gian có hạn, đối với sự thay đổi kết nối. Ngoài ra, những gói đƣợc gửi qua mạng trong định tuyến bằng trạng thái kết nối thì nhỏ hơn những gói dùng trong định tuyến bằng vector. Định tuyến bằng vector đòi hỏi bảng định tuyến đầy đủ phải đƣợc truyền đi, trong khi định tuyến bằng trạng thái kết nối thì chỉ có thông tin về “hàng xóm” của nút đƣợc truyền đi. Vì vậy, các gói này dùng tài nguyên mạng ở mức không đáng kể. Khuyết điểm chính của định tuyến bằng trạng thái kết nối là nó đòi hỏi nhiều sự lƣu trữ và tính toán để chạy hơn định tuyến bằng vector.

3.2.3.2. Định tuyến chủ ứng và phản ứng

Các giao thức định tuyến trong mạng MANET đƣợc ngƣời ta phân chia thành các loại: định tuyến chủ ứng (proactive), định tuyến phản ứng (reactive) và định tuyến lai ghép giữa hai loại trên. Các giao thức định tuyến chủ ứng sử dụng phƣơng pháp phát tràn (Floading) để quảng bá thông tin tới các thiết bị. Phƣơng pháp này cho phép thời gian thiết lập đƣờng nhanh dựa trên các tham số gửi tới thiết bị sẵn sàng cho kết nối. Tuy nhiên, phƣơng pháp này cũng làm lƣu lƣợng các gói tin tìm đƣờng tăng lên rất lớn, đây chính là nhƣợc điểm của phƣơng pháp này. Giao thức định tuyến trạng thái liên kết tối ƣu OLSR (Optimized Link State Routing) và giao thức định tuyến vector

Các giao thức định tuyến phản ứng thiết lập tuyến dựa theo từng yêu cầu kết nối. Phƣơng pháp này hạn chế đƣợc chi phí tìm đƣờng, nhƣng nhƣợc điểm cơ bản là gây trễ lớn cho các khung truyền dẫn đầu tiên cũng nhƣ thời gian chọn đƣờng dẫn chậm. Hai giao thức phản ứng điển hình là giao thức định tuyến vector khoảng cách theo yêu cầu AODV (On-demand Distance Vector Routing) và giao thức định tuyến định tuyến nguồn động DSR (Dynamic Source Routing).

Một khi xảy ra lỗi tại nút, các giao thức định tuyến thƣờng khôi phục đƣờng dẫn bằng phƣơng pháp thiết lập tuyến mới. Hầu hết các tiếp cận hiện nay đều sử dụng thông tin phản hồi tới thiết bị nguồn nhằm khởi tạo tuyến mới, vì vậy lƣu lƣợng bản tin trao đổi là rất lớn và tăng lên rất nhanh khi kích thƣớc mạng lớn, nhất là đối với các giao thức định tuyến chủ ứng. Khi kích thƣớc mạng tăng cũng đồng nghĩa với sự suy giảm hiệu năng mạng do hiện tƣợng trễ của thủ tục định tuyến và truyền khung đầu tiên tăng lên rất lớn nếu sử dụng giao thức định tuyến phản ứng.

3.2.3.3. Định tuyến nguồn và định tuyến theo chặng

Với định tuyến nguồn, toàn bộ thông tin về đƣờng đi tới đích đƣợc đặt trong trƣờng tiêu đề của gói tin dữ liệu, các nút trung gian chỉ việc chuyển tiếp gói tin theo đƣờng trong tiêu đề. Lợi điểm của giao thức này là loại bỏ đƣợc nhu cầu quảng bá đƣờng định kỳ và các gói tin khám phá (discovery) hàng xóm.

Trong định tuyến theo chặng, khi một nút nhận đƣợc gói tin cần chuyển tới đích, nút đó chuyển tiếp gói tin theo chặng tiếp theo hƣớng tới đích mà nó biết. Nút tiếp theo lại chuyển tiếp gói tin đến đích theo những chặng mà nó biết dựa vào bảng định tuyến của nó. Quá trình trên sẽ dừng lại khi gói tin đƣợc chuyển tới đích. Nhƣợc điểm của phƣơng pháp này là tất cả các nút cần duy trì thông tin định tuyến nên phải xử lý nhiều hơn và có khả năng tạo thành các vòng lặp định tuyến.

3.3. Các giao thức định tuyến chính trong mạng MANET

Hình 7: Phân loại các giao thức định tuyến trong mạng MANET

3.3.1. DSDV

DSDV (Destination-Sequenced Distance-Vector Routing) là giao thức chủ ứng dựa trên dựa trên thuật toán Distance vector đƣợc xây dựng bởi C.Perkins và P.Bhagwat năm 1994 [13]. Giao thức này đƣợc xây dựng dựa trên tiêu chí giữ nguyên sự đơn giản của giải thuật Bellman-Ford và loại bỏ vấn đề vòng lặp.

Truyền thông tin định tuyến: Thông tin định tuyến đƣợc gửi quảng bá (broadcast)

tới tất cả các nút hàng xóm liền kề nó. Thông tin cập nhật đƣợc phát định kỳ hoặc ngay khi có các thay đổi xảy ra trong mạng. Để tránh lặp định tuyến DSDV gắn số thứ tự chẵn cho mỗi đƣờng. Số thứ tự đƣợc gắn bởi nút đích, đƣợc gửi đi trong gói tin cập nhập. Số thứ tự này cho thấy độ mới của mỗi đƣờng, đƣờng nào có số thứ tự cao hơn đƣợc xem là tốt hơn. [10]

Hình 8: Tô-pô mạng thay đổi

Số thứ tự này sẽ tăng lên một đơn vị khi một nút phát hiện đƣờng đi tới đích có liên kết bị hỏng khi nó không nhận đƣợc cập nhật định kỳ. Khi ấy trong gói tin cập nhật kế tiếp nó gửi đi sẽ quảng bá đƣờng tới đích này có số chặng bằng vô hạn (metric ~ ∞) và tăng thứ tự đƣờng.

Khi một nút nhận đƣợc thông tin mới về một tuyến đƣờng, tuyến này sẽ đƣợc chọn nếu nó có số thứ tự lớn hơn các số thứ tự khác của cùng tuyến đó trong bảng định tuyến. Nếu nó có cùng số thứ tự thì nó sẽ đƣợc chọn nếu có số metric tốt hơn.

Để làm giảm kích thƣớc gói tin cập nhập, DSDV sử dụng hai loại thông điệp cập nhật là:

Full dump: Cập nhật đầy đủ. Thông điệp này bao gồm toàn bộ thông tin định tuyến mà nút đó biết đến thời điểm đó.

Incremental dump: cập nhật bổ sung. Gói thông điệp này chỉ bao gồm các thông

tin về những thay đổi từ lần cập nhật đầy đủ gần nhất. (adsbygoogle = window.adsbygoogle || []).push({});

Hai loại thông điệp cật nhật này đƣợc lƣu vào hai bảng khác nhau, một bảng để chuyển tiếp các gói tin đầy đủ, một để phát các gói tin cập nhật. Gói tin cập nhật đầy đủ chỉ đƣợc phát thƣờng xuyên khi các nút thƣờng xuyên di chuyển, khi mạng ít thay đổi, chủ yếu chỉ có gói tin cập nhật bổ sung đƣợc gửi đi.

3.3.2 OLSR [8]

OLSR (Optimized Link State Routing Protocol) là giao thức chủ ứng dựa trên thuật toán trạng thái kết nối (Link state). Các nút gửi định kỳ ra toàn mạng thông điệp “Hello” để trao đổi thông tin về hàng xóm. Thông tin này bao gồm IP của nút, số thứ tự và danh sách các thông tin khoảng cách của các nút hàng xóm. Sau khi cập nhật

những thông tin này nút sẽ xây dựng lên bảng định tuyến của nó và có cái nhìn tổng thể về toàn mạng. Dựa vào bảng định tuyến này nó có thể tự tính đƣợc đƣờng đi tới các nút khác dựa vào thuật toán tìm đƣờng đi ngắn nhất. Khi một nút nhận đƣợc một gói tin trùng lặp với cùng số thứ tự nó sẽ loại bỏ gói tin này. Trong bảng định tuyến nút lƣu trữ thông tin định tuyến tới tất cả các nút khác trong mạng. Những thông tin này chỉ đƣợc cập nhật khi:

 Khi nút nhận thấy sự thay đổi trong quan hệ hàng xóm (vd: mất liên kết đến nút hàng xóm,…)

 Tuyến đƣờng tới các nút đích khác hết hạn (quá lâu không đƣợc cập nhập)  Phát hiện ra đƣờng đi mới ngắn hơn để tới đích.

Điểm khác biệt giữa OLSR và LSR (Link State Protocol) là việc giao thức OLSR hoạt động dựa trên việc một nhóm nút mạng cộng tác với nhau tạo nên một kíp phát chuyển tiếp đa điểm (Multi-Point Relays - MPR). Mỗi nút N trong mạng sẽ lựa chọn ra một tập các nút hàng xóm của nó vào kíp đa điểm MPR(N), các nút thuộc kíp đa điểm này sẽ chuyển tiếp các gói tin điều khiển đƣợc gửi từ N. Nút không thuộc kíp đa điểm của N vẫn xử lý gói tin này nhƣng sẽ không chuyển tiếp đến các nút khác.

kể. Lợi điểm thứ hai là việc giảm đƣợc kích thƣớc của gói tin “Hello” vì nó chỉ lƣu trữ các thông tin liên quan tới các nút trong kíp đa điểm của nó.

Hình 10: OLSR ngăn chặn vòng lặp bằng việc sử dụng MPR để chuyển phát gói tin.

3.3.3. AODV [12]

AODV (Ad Hoc On-Demand Distance Vector) là giao thức dựa trên thuật toán vector khoảng cách. AODV tối thiểu hoá số bản tin quảng bá cần thiết bằng cách tạo ra các tuyến trên cơ sở theo yêu cầu, ngƣợc với việc duy trì một danh sách hoàn chỉnh các tuyến nhƣ thuật toán DSDV.

Hình 11: quá trình khám phá tuyến trong AODV

Khi một nút nguồn muốn gởi một bản tin đến một nút đích nào đó và không biết rằng đã có một tuyến đúng đến đích đó, nó phải khởi đầu một quá trình khám phá đƣờng truyền. Nó phát quảng bá một gói yêu cầu tuyến (RREQ) đến các nút lân cận.

Các nút lân cận này sau đó sẽ chuyển tiếp gói yêu cầu đến nút lân cận khác của chúng. Quá trình cứ tiếp tục nhƣ vậy cho đến khi có một nút trung gian nào đó xác định đƣợc một tuyến “đủ tƣơi” để đạt đến đích. AODV sử dụng số thứ tự đích để đảm bảo rằng tất cả các tuyến không lặp và chứa hầu hết thông tin tuyến hiện tại. Mỗi nút duy trì số tuần tự của nó cùng với một ID quảng bá. ID quảng bá đƣợc tăng lên mỗi khi nút khởi đầu một RREQ, và cùng với địa chỉ IP của nút, xác định duy nhất một RREQ. Cùng với số tuần tự và ID quảng bá, nút nguồn bao gồm trong RREQ hầu hết số tuần tự hiện tại của đích mà nó có. Các nút trung gian có thể trả lời RREQ chỉ khi nào chúng có một tuyến đến đích mà số tuần tự đích tƣơng ứng lớn hơn hoặc bằng số tuần tự chứa trong RREQ.

Trong suốt quá trình chuyển tiếp RREQ, các nút trung gian ghi vào Bảng định tuyến của chúng địa chỉ của các nút lân cận từ khi nhận đƣợc bản sao đầu tiên của gói quảng bá, theo đó thiết lập đƣợc một đƣờng dẫn theo thời gian. Nếu các bản sao của cùng một RREQ đƣợc nhận sau đó, các gói này sẽ bị huỷ bỏ. Một khi RREQ đã đạt đến đích hay một nút trung gian với tuyến “đủ tƣơi”, nút đích (hoặc nút trung gian) đáp ứng lại bằng cách phát đơn phƣơng một gói đáp ứng tuyến (RREP) ngƣợc về nút lân cận mà từ đó nó thu đƣợc RREQ. Khi RREP đƣợc định tuyến ngƣợc theo đƣờng dẫn, các nút trên đƣờng dẫn đó thiết lập các thực thể tuyến chuyển tiếp trong Bảng định tuyến của chỉ nút mà nó nhận đƣợc RREP. Các thực thể tuyến chuyển tiếp này chỉ thị tuyến chuyển tiếp tích cực. Cùng với mỗi thực thể tuyến là một bộ định thời tuyến có nhiệm vụ xoá các thực thể nếu nó không đƣợc sử dụng trong một thời hạn xác định. Do một RREP chuyển tiếp trên đƣờng dẫn đƣợc thiết lập bởi một RREQ nên AODV chỉ hỗ trợ việc sử dụng đƣờng truyền đối xứng.

Trong AODV, các tuyến đƣơc duy trì điều kiện nhƣ sau: Nếu một nút nguồn chuyển động, nó phải khởi động lại giao thức khám phá tuyến để tìm ra một tuyến mới đến đích. Nếu một nút trên tuyến chuyển động, nút lân cận luồng lên của nó chú ý đến chuyển động đó và truyền một bản tin “Khai báo sự cố đƣờng thông” (một RREP không xác định) đến mỗi nút lân cận tích cực luồng lên để thông báo cho các nút này xoá phần tuyến đó. Các nút này thực chất truyền một “Thông báo sự cố đƣờng thông” đến các nút lân cận luồng lên. Quá trình cứ tiếp tục nhƣ vậy cho đến khi đạt đến nút

HELLO có thể đƣợc sử dụng để duy trì khả năng kết nối cục bộ của một nút. Tuy nhiên, việc sử dụng bản tin HELLO là không cần thiết. Các nút lắng nghe việc truyền lại gói dữ liệu để đảm bảo rằng vẫn đạt đến chặng kế tiếp. Nếu không nghe đƣợc việc truyền lại nhƣ thế, nút có thể sử dụng một trong số các kỹ thuật, kể cả việc tiếp nhận bản tin HELLO. Các bản tin HELLO có thể liệt kê các nút khác mà từ đó nút di động đã nghe tin báo, do đó tạo ra khả năng liên kết lớn hơn cho mạng.

3.3.4. DSR [7]

Giao thức DSR (Dynamic Source Routing) là một giao thức định tuyến phản ứng từ nút nguồn. Trong đó, các nút di động cần duy trì bộ nhớ đệm về tuyến chứa các nút nguồn mà nút di động nhận biết đƣợc. Các thực thể trong bộ nhớ đệm về tuyến đƣợc cập nhật liên tục.

Hình 12: Định tuyến nguồn động (DSR)

Giao thức này bao gồm 2 giai đoạn chính: a) Khám phá tuyến và b) Duy trì tuyến. Khi một nút di động gởi một gói đến một nút đích nào đó, trƣớc hết nó phải tham vấn bộ nhớ đệm tuyến để xác định là nó đã có một tuyến để đến đích chƣa. Nếu nó có một tuyến chƣa hết hiệu lực để đến đích, nó sẽ sử dụng tuyến này để gởi gói đi. Trái lại, nếu không có một tuyến nhƣ thế, nó phải khởi đầu một quá trình khám phá

tuyến bằng cách phát quảng bá một gói yêu cầu tuyến. Bản tin yêu cầu này chứa địa

Một phần của tài liệu KHẢO SÁT ẢNH HƢỞNG CỦA SỰ CHUYỂN ĐỘNG CÁC NÚT MẠNG ĐẾN HIỆU SUẤT CỦA MỘT SỐ GIAO THỨC ĐỊNH TUYẾN TRONG MANET pdf (Trang 28 - 69)