Xử lý lỗi, hết hạn và xóa bỏ tuyến

Một phần của tài liệu Nghiên cứu một số giao thức định tuyến trên mạng manet (Trang 54)

7. Bố cục của luận văn

2.4.6. Xử lý lỗi, hết hạn và xóa bỏ tuyến

Thông thường, việc xử lý RERR và liên kết gãy cần đến các bước sau đây: • Làm mất hiệu lực các tuyến hiện tại.

• Liệt kê các đích bị ảnh hưởng.

• Xác định rõ nếu có bất kì nút lân cận nào có thể bị ảnh hưởng. • Thực hiện một RERR tới các nút lân cận.

Một bản tin RERR có thể là broadcast, unicast hay multicast. Ngay cả khi bản tin RERR là một unicast l p lại tới một số ch ng trước, nó được xem là một bản tin điều khiển đơn. Với cách hiểu đó, một nút không nên khởi tạo nhiều hơn một lượng RERR_RATELIMIT bản tin RERR trên một giây.

Một nút bắt đầu xử lý cho một RERR trong ba hoàn cảnh sau:

a. Nếu nó phát hiện một liên kết gãy cho ch ng tới của một tuyến hoạt động trong bảng định tuyến của nó trong khi truyền dữ liệu.

b. Nếu có được một gói dữ liệu đi đến một nút mà nó không có một tuyến hoạt động và không được sửa chữa.

c. Nếu nó nhận một RERR từ một nút lân cận cho một ho c nhiều tuyến hoạt động

Ðối với trường hợp (a), đầu tiên nút tạo một danh sách các nút không tới được chứa các nút lân cận không tới được và bổ sung bất kỉ đích nào trong bảng định tuyến nội v ng cái mà sử dụng các nút lân cận không thể tới được như các ch ng tiếp theo. Trong trường hợp này, nếu một tuyến mạng con được tìm thấy là khổng thể tới được, một đỉa chỉ IP đích cho mạng con này được thiết lập b ng việc chèn các số 0 vào tiền tố mạng con như được chỉ ra trong mục bảng định tuyến.

Ðối với trường hợp (b), chỉ có một đích không thể tới được, cái mà là đích của gói dữ liệu mà không thể được phân phát. Trong trường hợp (c), danh sách nên bao

gồm các đích này trong RERR.

Một vài đích không tới được trong danh sách có thể được sử dụng bởi các nút nút lân cận, và vì thế nó có thể cần thiết cho việc gửi một RERR. RERR nên chứa các đích đó là một phần danh sách được tạo ra của các đích khồng đến được và có một danh sách ch n trước không trống rỗng.

Các nút láng giềng mà có thể nhận RERR là tất cả các nút thuộc về một danh sách ch ng trước của ít nhất một đích không thể tới được trong RERR mới được tạo. Trong trường hợp có duy nhất một nút lân cận mà cần nhận RERR, RERR nên được truyền unicast theo hướng nút lân cận đó. Nếu không RERR được gửi quảng bá các địa chỉ nội v ng ( IP đích là 255.255.255.255 và TTL =1) với các đích không thể đến được, và chỉ số thứ tự đích tương ứng của các đích đó, được chứa trong gói tin. Trường DestCount của gói RER xác định số lượng các đích không tới được đã bao gồm trong gói tin.

Ngay trước khi truyền RERR, những cập nhật đã chắc chắn được tạo trên bảng định tuyến mà có thể ảnh hưởng tới chỉ số thứ tự cho các đích không thể đến được. Ðối với mỗi một đích này, các mục bảng định tuyến tương ứng được cập nhật như sau: Chỉ số thứ tự đích của mục định tuyến này, nếu hiện tại nó là hợp lệ, được tăng trong các trường hợp (a) và (b) ở trên, và được sao chép từ RERR đến trong trường hợp (c) ở trên.

+ Mục được cho là không hợp lệ bởi sự đánh dấu của mục tuyến khi không hợp lệ.

+ Trường Lifetime được cập nhật b ng thời gian hiện tại cộng với thời gian DELETE_PERIOD. Trước thời gian này, mục không nên được xóa.

Trường Lifetime trong bảng định tuyến đóng hai vai trò: đối với một tuyến hoạt động nó là thời gian hết hạn, và đối với một tuyến không hợp lệ nó là thời gian xóa. Nếu một gói dữ liệu được nhận một tuyến không hợp lệ, trường Lifetime được cập nhật b ng thời gian hiện tại cộng với thời gian DELETE_PERIOD.

2.4.7. Quản lý kết nối nội vùng

Các nút có thể học thông tin từ nút lân cận của chúng b ng một ho c nhiều cách khác nhau. Bất cứ khi nào một nút nhận được quảng bá từ một nút lân cận, nó cập nhật thông tin kết nối nội bộ để đảm bảo đang liên kết với nút lân cận này. Khi một nút chưa gửi gói tin nào cho các nút lân cận trong khoảng thời gian Hello, nó quảng bá tới các nút lân cận một bản tin Hello, một bản tin RREP đ c biệt chứa nhận dạng và số thứ tự của nó. Số thứ tự của nút không được thay đổi khi truyền dẫn bản tin Hello. Bản tin Hello này không được quảng bá ra ngoài v ng lân cận do giá trị thời gian sống Time-To-Live (TTL) là 1. Các nút lân cận nhận gói tin này sẽ cập nhật thông tin kết

nối nội bộ chứa trong gói tin. Nhận một quảng bá ho c một bản tin Hello từ một nút lân cận mới ho c mất liên tục các gói tin Hello từ một nút lân cận trước đó trong v ng lân cận được ngầm hiểu là kết nối nội bộ đã bị thay đổi. Nếu các bản tin Hello không được nhận từ nút kế tiếp dọc theo tuyến đường hiệu dụng, các nút lân cận hoạt động sẽ dựa vào nút kế tiếp đó để gửi thông báo lỗi kết nối. Số lần mất Hello cho phép lý tưởng là hai. Quản lý kết nối nội bộ với các bản tin Hello có thể được sử dụng để đảm bảo chỉ các nút có kết nối song hướng mới được xem là lân cận của nhau. Với mục đích này, mỗi Hello được gửi bởi một nút liệt kê danh sách các nút mà nó nghe được. Mỗi nút kiểm tra để đảm bảo nó chỉ sử dụng các tuyến đường đến các nút lân cận mà nó nghe được qua bản tin Hello.

2.4.8. So sánh ưu điểm và nhược điểm của các giao thức ZRP, CBRP

Ƣu điểm:

 Điểm giống nhau của các giao thức ZRP và CBRP là chúng đều sử dụng các phương thức phân từng khu vực định tuyến (v ng định tuyến, cây phân phối, cụm) nh m để duy trì bảng định tuyến khu vực, nếu nút đích n m trong khu vực định tuyến nó sẽ sử dụng bảng định tuyến khu vực để gửi gói dữ liệu; ngược lại, nếu nút đích n m ngoài v ng định tuyến thì chúng sử dụng cơ chế định tuyến liên khu vực để định tuyến gói dữ liệu. Điều này giúp giảm chi phí trong việc định tuyến và nâng cao hiệu năng hoạt động của các giao thức.

 Điểm khác nhau của các giao thức ZRP và CBRP là mỗi giao thức có cách phân khu vực định tuyến với các phương pháp khác nhau và cách phân v ng định tuyến này ảnh hưởng đến hiệu năng của từng giao thức.

 Đối với giao thức ZRP, giao thức này kết hợp hai phương pháp định tuyến hoàn toàn khác nhau thành một giao thức. ZRP phân v ng định tuyến dựa trên số bước nhảy, các v ng định tuyến là chồng chéo nhau. Trong v ng định tuyến, thành phần chủ động IARP duy trì bảng định tuyến up-to-date. Các tuyến đường ngoài v ng định tuyến được phát hiện bởi thành phần bị động IERP. B ng cách kết hợp quảng bá biên, phát hiện truy vấn và chấm dứt sớm, nó có thể làm giảm lưu lượng truy vấn. Các tuyến đường đến các nút trong v ng đều có sẵn ngay lập tức. ZRP có thể xác định nhiều tuyến đường đến một địa điểm, cung cấp độ tin cậy và hiệu suất cao. ZRP là một giao thức phẳng, làm giảm n tắc và chi phí thường liên quan đến các giao thức phân cấp.

 Đối với giao thức CBRP, các nút được chia thành cụm. Nó sử dụng cấu trúc phân cụm cho giao thức định tuyến. B ng cách phân cụm, giao thức giảm tối thiểu lưu lượng lũ lụt trong thời gian khám phá tuyến và tăng tốc quá trình này. Rút ngắn tuyến đường của nó và các tính năng sửa chữa địa phương sử dụng các thông tin cơ sở dữ liệu two-hop-topology được duy trì bởi mỗi nút thông qua việc phát sóng các thông

điệp HELLO. CBRP có kiểm soát trên định tuyến nhỏ, tắc nghẽn mạng ít hơn và thời gian tìm kiếm trong quá trình định tuyến.

Nhƣợc điểm:

 Đối với ZRP, do v ng định tuyến của nó thường chồng chéo nhau nên một nút có thể nhận được nhiều gói tin c ng định tuyến một tuyến đường.

 Đối với CBRP, nếu mạng và cụm trở nên quá lớn, chi phí cho mỗi gói tin tăng lên do nguồn định tuyến. Tất cả các nút của các tuyến đường đã được lưu trữ trong các gói tin định tuyến. Vì vậy, các kích thước gói tăng tỷ lệ thuận với chiều dài đường đi của tuyến đường. Theo đó, thời gian truyền cũng tăng. Ngoài ra, nếu kích thước cụm tăng thì kích thước của thông điệp Hello và lưu trữ dữ liệu cấu trúc cũng tăng.

2.4.9. So sánh các giao thức định tuyến

Hình 2.17. So sánh các giao thức định tuyến Giao thức Thông tin lƣu trữ Thời gian cập

nhật

Thông tin cập nhật Đối tƣợng cập nhật

AODV Ch ng tiếp theo tới mỗi đích có

giao tiếp

Cơ chế duy trì đường theo sự

kiện

Thông điệp lỗi đường (route error)

Nút nguồn

DSDV Toàn bộ cấu hình mạng

Ðịnh kỳ Thông điệp : thông tin liên kết cục bộ và hàng xóm (MPR) Thông điệp TC : thông tin về các MPR Tất cả cả nút trong mạng

Trong đó:

Thông tin lưu trữ: Thông tin được lưu tại mỗi nút

Thời gian cập nhật : Áp dụng trong các giao thức định tuyến chủ ứng. Các giá trị so sánh là : định kỳ, theo sự kiện và lai ( kết hợp cả hai cơ chế). Ðối với các giao thức phản ứng, khi liên kết bị hỏng, cơ chế duy trì đường thực hiện, việc xây dựng lại đường được gọi là hướng sự kiện.

Thông tin cập nhật: Thông tin về trạng thái liên kết. Ðối với các giao thức phản ứng, cơ chế duy trì đường theo sự kiện, thông tin cập nhật là các thông điệp ROUTE- ERROR.

Ðối tượng cập nhật: là các hàng xóm ho c các nút nguồn bị ảnh hưởng.

Bảng 2.2. So sánh các giao thức định tuyến Giao thức Phƣơng pháp cập nhật Tính toán đƣờng Số đƣờng Duy trì đƣờng AODV Unicast Phản ứng theo yêu cầu, quảng bá

thông điệp truy vấn

Một đường ( đường đầu tiên nhận được bởi thông điệp trả lời)

Xóa đường, thông báo đến tất cả các nút nguồn bị ảnh

hưởng DSDV Quảng bá Trước, thực hiện

bởi nút

Một đường, đường đi

ngắn nhất Gửi các cập nhật Trong đó: Phương pháp cập nhật: quảng bá ho c unicast.

Tính toán đường: Khi nào đường được tính toán. Có ba trường hợp: tính toán trước, theo yêu cầu và lai giữa hai cơ chế. Ðối với các giao thức định tuyến trước, việc tính toán có thể thực hiện bởi nút ho c hợp tác, phân tán giữa các nút. Tuy nhiên, trong các giao thức định tuyến phản ứng, việc tính toán đường thông thường là việc gửi quảng bá thông điệp truy vấn đường được truyền qua toàn mạng để phát hiện đường. Số đường: Số đường tìm thấy được lưu trữ.

Duy trì đường: Việc có áp dụng hay không cơ chế duy trì đường trong các giao thức.

2.5. Kết luận chƣơng 2

Việc định tuyến trong hệ thống mạng MANET yêu cầu thời gian định tuyến hiệu quả và tiết kiệm tài nguyên. Một cách tiếp cận để giảm lưu lượng trong quá trình định tuyến là chia mạng thành các cụm (v ng) nhỏ. Trong chương này, chúng tôi đã phân tích cơ chế hoạt động của các giao thức định tuyến ZRP DSDV, , AODV, ZRP, thuộc giao thức định tuyến lai ghép trong mạng MANET, đồng thời đã làm rõ được ưu nhược điểm của chúng và làm cơ sở lý thuyết cho việc mô phỏng trong chương3

CHƢƠNG 3

ĐÁNH GIÁ HIỆU NĂNG MỘT SỐ GIAO THỨC ĐỊNH TUYẾN TRÊN MẠNG MANET

Để đánh giá hiệu suất hoạt động của các giao thức thông thường người ta có thể dùng các phương pháp như: phương pháp giải tích, phương pháp thử nghiệm ho c phương pháp mô phỏng. Trong luận văn này, chúng tôi chọn phương pháp mô phỏng để đánh giá hiệu năng hoạt động của giao thức định tuyến lai ghép dựa trên phần mềm mô phỏng mạng NS2.

3.1. Giới thiệu môi trƣờng mô ph ng NS

3.1.1. Tổng quan về NS2

NS (Network Simulation) là phần mềm mô phỏng mạng điều khiển sự kiện riêng lẻ hướng đối tượng, được phát triển tại UC Berkely, viết b ng ngôn ngữ C++ và Otcl [17],[18]. NS rất hữu ích cho việc mô phỏng các hệ thống mạng hữu tuyến và vô tuyến, NS có các đ c điểm cơ bản sau:

- Khả năng kiểm tra tính ổn định của các giao thức mạng đang tồn tại. - Khả năng đánh giá các giao thức mạng mới trước khi đưa vào sử dụng.

- Khả năng thực thi những mô hình mạng lớn mà gần như ta không thể thực thi được trong thực tế.

- Khả năng mô phỏng nhiều loại mạng khác nhau. [1]

Mục đích của NS2 là tạo ra một môi trường giả lập cho việc nghiên cứu, kiểm tra, thiết kế các giao thức, các kiến trúc mới so sánh các giao thức và tạo ra các mô hình mạng phức tạp. Phiên bản thứ nhất của NS được phát triển vào năm 1995 và phiên bản thứ hai ra đời vào năm 1996. NS2 là phần mềm mã nguồn mở có thể chạy được trên nền của Linux và Window.

NS thực thi các giao thức mạng như: Giao thức điều khiển truyền tải (TCP) và Giao thức gói người dùng (UDP); các dịch vụ nguồn lưu lượng như Giao thức truyền tập tin (FTP), Telnet, Web, Tốc độ bit cố định (CBR) và Tốc độ bit thay đổi (VBR); các kỹ thuật quản lý hàng đợi như Vào trước Ra trước (Drop Tail), Dò sớm ngẫu nhiễn (RED) và CBQ; các thuật toán định tuyến như Dijkstra… NS cũng thực thi multicasting và giao thức lớp điều khiển truy cập đường truyền (MAC) đối với mô phỏng LAN. [1]

3.1.2. Kiến trúc của NS2

NS2 là một công cụ giả lập hướng đối tượng được viết b ng ngôn ngữ C++ trong phần nhân và ngôn ngữ thông dịch Otcl ở phần giao tiếp.[1]

- Module nhân được gọi là Compiler Hierarchy. - Module giao tiếp được gọi là Interpreted Hierarchy.

- Module liên kết là module có tác dụng như một lớp keo dùng để gắn kết các lớp, các đối tượng, các biến tương ứng trong hai module nhân và module giao tiếp với nhau.

NS và Bộ biên dịch Tcl mở rộng hướng đối tượng; bao gồm các đối tượng Bộ lập lịch Sự kiện, các đối tượng Thành phần Mạng và các mô đun Trợ giúp Thiết lập Mạng.

Hình 3.1. Tổng quan về NS dƣới góc độ ngƣời dùng

- OTcl Script: Kịch bản Otcl.

- Simulation Program: Chương trình Mô phòng. - Otcl: Bộ biên dịch Tcl mở rộng hướng đối tượng. - NS Simulation Library: Thư viện Mô phỏng NS.

- Event Scheduler Objects: Các đối tượng Bộ lập lịch Sự kiện. - Network Component Objects: Các đối tượng Thành phần Mạng. - Network Setup Helping Modules: Các mô đun Trợ giúp Thiết lập Mạng. - Plumbling Modules: Các mô đun Plumbling.

- Simulation Results: Các kết quả Mô phỏng. - Analysis: Phân tích.

- NAM (Network Animator): Minh họa Mạng NAM.

Để sử dụng NS2, user lập trình b ng ngôn ngữ kịch bản OTcl. User có thể thêm các mã nguồn Otcl vào NS2 b ng cách viết các lớp đối tượng mới trong OTcl. Những lớp này khi đó sẽ được biên dịch cùng với mã nguồn gốc. Kịch bản OTcl có thể thực hiện những việc sau:

- Thiết lập Mô hình mạng dùng các đối tượng Thành phần Mạng.

- Báo cho nguồn traffic khi nào bắt đầu truyền và ngưng truyền packet trong Bộ lập lịch Sự kiện.

Thuật ngữ plumbing được dùng để chỉ việc thiết lập mạng, vì thiết lập một mạng nghĩa là xây dựng các đường dữ liệu giữa các đối tượng mạng b ng cách thiết lập con trỏ “neighbour” cho một đối tượng để chỉ đến địa chỉ của đối tượng tương ứng. Module plumbing OTcl trong thực tế thực hiện việc trên rất đơn giản. Plumbing làm nên sức mạnh của NS.

Thành phần lớn khác của NS bên cạnh các đối tượng Thành phần Mạng là Bộ lập lịch Sự kiện. Bộ lập lịch Sự kiện trong NS2 thực hiện những việc sau:

- Tổ chức Bộ định thời Mô phỏng.

- Huỷ các sự kiện trong hàng đợi sự kiện. - Gọi các Thành phần Mạng trong mô phỏng.

Một phần của tài liệu Nghiên cứu một số giao thức định tuyến trên mạng manet (Trang 54)

Tải bản đầy đủ (PDF)

(86 trang)