0
Tải bản đầy đủ (.doc) (49 trang)

Cơ chế khám phá tuyến và duy trì tuyến trong giao thức DSR

Một phần của tài liệu PHÂN TÍCH VÀ ĐÁNH GIÁ HOẠT ĐỘNG CỦA MỘT SỐ GIAO THỨC ĐỊNH TUYẾN TRONG MẠNG MANET (Trang 30 -33 )

a) Cớ chế khám phá tuyến

Khi một vài node nguồn khởi đầu một gói tin mới định trước tới một vài node đích khác, trong phần của gói tin chứa một tuyến nguồn lưu giữ chuỗi các chặng mà gói tin phải đi qua theo hướng đường đến đích . Thông thường, node nguồn sẽ tìm được một tuyến nguồn phù hợp bằng cách tìm kiếm trong bộ nhớ đệm Route Cache của các tuyến trước đây nó xử lý được, nhưng nếu không tìm thấy một tuyến nào trong bộ nhớ Cache nó sẽ phải thực hiện cơ chế khám phá tuyến (RD) để tìm ra đường mới tới đích. Trong trường hợp này, ta gọi node nguồn là điểm khởi đầu và node đích là điểm kết thúc của cơ chế RD.

Hình 12 minh họa một ví dụ về cơ chế RD, trong đó node A cố gắng xác định một tuyến tới node E. Để bắt đầu xác định tuyến, A gửi một bản tin Route Request như một gói đơn quảng bá khu vực, cái mà được nhận bởi tất cả các node trong phạm vi truyền không dây của node A hiện tại. Mỗi bản tin RREQ cũng mang thông tin về điểm khởi đầu và điểm kết thúc của quá trình RD, và cũng bao gồm một request id duy nhất, được xác định rõ bởi điểm khởi đầu của bản tin. Mỗi bản tin RREQ cũng bao gồm một danh sách ghi chép địa chỉ của mỗi node trung gian xuyên suốt quá trình bản tin RREQ được gửi đi. Bản định tuyến này ban đầu là một danh sách trống được tạo bởi điểm khởi đầu của cơ chế RD.

Khi một node khác nhận được bản tin RREQ, nếu nó là điểm kết thúc của RD, nó sẽ hổi đáp bằng bản tin Route Reply tới điểm bắt đầu của cơ chế RD, lưu giữ lại các tuyến tích lũy được từ bản tin RREQ, khi điểm khởi đầu nhận được bản tin RREP này, nó lưu giữ tuyến này vào bộ nhớ đệm của nó để sử dụng cho việc gửi các gói tin sau đó tới đích. Trong trường hợp, nếu node này nhận bản tin RREQ đã gặp mới đây được gửi từ điểm khởi đầu này và có cùng request id, hoặc nó tìm thấy địa chỉ của chính nó đã có trong danh sách chứa trong bản tin RREQ, nó sẽ loại bỏ yêu cầu này. Nếu không, node này gắn thêm vào danh sách tuyến của bản tin RREQ địa chỉ của chính mình và quảng bá các gói bản tin RREQ tới các node kế tiếp ( với cùng một chỉ số request id).

Trong việc gửi ngược lại bản tin RREP đến node khởi đầu xác định tuyến, chẳng hạn từ node E hồi đáp về node A trong hình 12 , node E sẽ nghiên cứu bộ nhớ đệm của chính nó để tìm ra một tuyến trở về A, và nếu tìm được, nó sẽ sử dụng tuyến đó làm tuyến nguồn để phân tán gói tin chứa bản tin RREP. Nếu không, E sẽ tự nó thực hiện một cơ chế xác định tuyến mới để tìm đường tới node A, nhưng để tránh sự đệ quy vô thời hạn của xác định tuyến, nó phải mang thêm bản tin RREP này trong chính bản tin RREQ của nó gửi tới A. Nó cũng phải mang thêm những gói dữ liệu nhỏ khác như gói TCP SYN trên bản tin RREQ sử dụng cùng kĩ thuật này. Node E cũng đảo ngược hoàn toàn chuỗi các chặng trong bản ghi tuyến trong bản tin RREQ mà nó đã nhận được để cố gắng gửi gói tin RREP và sử dụng nó như tuyến gốc trong gói tin mang chính bản tin RREP của nó. Đối với các giao thức MAC như IEEE 802.11 thì nó yêu cầu trao đổi một khung theo hai hướng trực tiếp như một phần của giao thức lớp MAC, tuyến đảo ngược này được ưu tiên hơn do nó tránh được có thể có của xác định tuyến thứ hai, và nó kiểm tra được tuyến đã xác định ra để đảm bảo nó là hai hướng trực tiếp trước khi xác định tuyến của điểm khởi đầu bắt đầu sử dụng tuyến. Tuy nhiên, kĩ thuật này sẽ ngăn cản sự khám phá tuyến kết nối đơn hướng. Trong các môi trường vô tuyến nơi mà việc sử dụng kết nối đơn hướng được cho phép, như các tuyến mà trong một vài trường hợp thì việc sử dụng kết nối đơn hướng trực tiếp hiệu quả hơn so với việc kết nối hai hướng trực tiếp, hoặc nó chỉ có một đường duy nhất để kết nối tới node đích.

Khi bắt đầu khám phá tuyến, node gửi sẽ lưu giữ một bản ghi của gói gốc trong vùng nhớ gọi là bộ nhớ đệm gửi Send Buffer. Bộ nhớ đệm gửi này chứa một bản ghi của mỗi gói cái mà nó không thể được truyền bởi node này vì không có tuyến gốc tới

A A B C D E ID=2 A,B ID =2 A,B,C ID=2 A,B,C,D ID=2

đích của gói tin. Mỗi gói trong bộ nhớ đệm gửi được ghi vào thời gian mà nó được nhớ vào bộ nhớ đệm và bị hủy bỏ sau khi hết hạn tồn tại trong bộ nhớ đệm gửi trong một vài khe thời gian; nếu cần thiết ngăn cản bộ nhớ đệm gửi bị tràn, một FIFO hoặc một kế hoạch thay thế nào khác cũng có thể được sử dụng để truyền các gói đi trước khi nó hết hiệu lực.

Trong khi một gói còn ở trong bộ nhớ đệm gửi, thì node cần thỉnh thoảng phát động một cơ chế khám phá tuyến mới tới địa chỉ đích của gói tin. Tuy nhiên, node phải giới hạn tốc độ phát động khám phá tuyến mới cho cùng một địa chỉ, vì nó có khả năng không thể đến đích. Cụ thể, do phạm vi truyền không dây bị giới hạn và các node di chuyển trong mạng, mạng có thể bị chia cắt tại nhiều thời điểm, có nghĩa là hiện tại không có một chuỗi các node xuyên suốt để có thể truyền một gói tới được đích. Tin tưởng vào hoạt động theo mẫu và sự đông đúc của các node trong mạng, theo đó sự chia cắt trong mạng có thể là hiếm có và có thể là bình thường.

Nếu một khá phá tuyến mới được phát động cho mỗi gói gửi bởi một node như trong trạng thái, một số lượng lớn các gói RREQ không hữu ích có thể truyền bá rộng khắp các tập hợp con của mạng ad hoc từ node này. Trong sự sắp xếp theo chiều hướng giảm xuống của xuất phát từ các khám phá tuyến, chúng ta có thể sử dụng sự giảm dần theo hàm số mũ tới tốc độ giới hạn mà tại đó các khám phá tuyến mới có thẻ được phát động bởi bất kì node nào đến cùng đích.

Nếu node cố gắng gửi thêm các gói dữ liệu đến cùng node đích này thường xuyên hơn giới hạn, các gói đến sau sẽ được lưu giữ tại bộ nhớ đệm gửi cho đến khi một bản tin RREP được nhận, nhưng mà node không được phát động một khám phá tuyến mới cho đến khi hết thời gian tối thiểu cho phép giữa các khám phá tuyến mới tới đích này.

b) Cơ chế duy trì tuyến

Khi bắt đầu hay gửi một gói tin sử dụng một tuyến gốc, mỗi node truyền gói tin có thể xác thực rằng gói tin đã được nhận bởi chặng kế tiếp dọc theo tuyến gốc hay chưa; các gói được truyền lại ( tới một số lượng lớn nhất có thể) cho đến khi được xác thực là đã được nhận. Ví dụ, trong minh họa hình dưới, node A phát động một gói tin tới node E sử dụng một tuyến gốc xuyên suốt các node trung gian là B, C và D. Trong trường hợp này, node A có nghĩa vụ xác thực tại B, node B có nghĩa vụ xác thực tại C, node C có nghĩa vụ xác thực tại D và node D cuối cùng có nghĩa vụ xác thực tại đích E. Sự ghi nhận xác thực này trong nhiều trường hợp có thể cung cấp không giá cho DSR, cái này như một phần tiêu chuẩn hiện tại của giao thức lớp MAC đang được sử dụng. Nếu các kĩ thuật xác thực không sẵn sàng, node truyền gói tin có thể bố trí một phần nhỏ trong gói tin để yêu cầu một phần mềm đặc biệt của DSR công nhận sự phản hồi của chặng kế tiếp; phần mềm này công nhận đường truyền trực tiếp thông thường tới node gửi, nhưng nếu kết nối giữa hai node là đơn hướng trực tiếp, phần mềm có thể sẽ công nhận di chuyển qua một chặng khác, như đường nhiều chặng.

Nếu gói tin được gửi lại bởi một vài chặng sau một lượng thời gian lớn nhất và không được xác thực là đã nhận, node này sẽ gửi trả lại một bản tin Route Error tới

A B C D E

Hình 13: Node C không thể chuyển tiếp gói tin từ A đến E do liên kết bị gãy

node gốc của gói tin, chỉ ra rằng không thể chuyển tiếp gói tin. Ví dụ, trong hình…, nếu C không thể gửi gói tin tới chặng kế tiếp D, thì C sẽ gửi một bản tin Route Error tới A, chỉ ra rằng kết nối giữa C và D bị đứt. Node A sau đó sẽ xóa bỏ liên kết bị gãy này khỏi bộ nhớ của nó; bất kỳ sự truyền lại nào của gói tin gốc đều là chức năng của các giao thức lớp cao hơn như TCP. Để gửi một sự truyền lại hay các gói tin khác đến cùng đích E, nếu A có trong bộ nhớ của nó một tuyến nào khác đến E ( ví dụ, từ các RREP của nó có được từ khám phá tuyến mới nhất, hoặc từ thông tin về tuyến đầy đủ trong từ các gói khác), nó có thể ngay lập tức gửi gói tin sử dụng tuyến mới. Nếu không, nó có thể phát động một khám phá tuyến mới để tìm đường đến đích.

Một phần của tài liệu PHÂN TÍCH VÀ ĐÁNH GIÁ HOẠT ĐỘNG CỦA MỘT SỐ GIAO THỨC ĐỊNH TUYẾN TRONG MẠNG MANET (Trang 30 -33 )

×