2 Cấu trúc của luận văn
2.7 Định tuyến
MANET là mạng được tạo thành và hoạt động mà không cần có bất cứ một cơ sở hạ tầng mạng nào được thiết lập trước hoặc một sự quản lý tập trung. Các nút mạng sử dụng giao diện không dây để truyền thông với nhau, đóng vai trò vừa là host, vừa là
4
Thực chất của quá trình tạo đường ống là HA tra bảng “M obility Binding” của nó để tìm ra nút di động đang tham gia vào mạng ngoài nào, đồng thời cũng biết được địa chỉ c/o hiện tại của nút di động. Khi nhận được gói tin có địa chỉ IP đích là địa chỉ mạng nhà của nút mạng di động, HA sẽ đóng gói tói tin này với tiêu đề chứa địa chỉ IP đích là địa chỉ c/o của nút mạng di động, phần tải tin của gói tin mới này chính là gói IP ban đầu. Sau đó gói tin này được gửi tới cho nút mạng di động. Quá trình đóng gói như vậy được gọi là đóng gói IP-trong-IP (IP-within-IP) hoặc “tạo đường ống (tunneling)”.
router, có khả năng chuyển tiếp gói tin thay mặt lẫn nhau. Cũng chính vì thế các nút mạng di động có khả năng truyền thông với nhau vượt ra ngoài phạm vi truyền của mỗi nút bằng cách truyền thông đa chặng.
Vấn đề định tuyến trong mạng MANET là một thách thức do các nút mạng luôn có xu hướng tự do chuyển động. Các liên kết có thể bị phá vỡ hoặc khôi phục bất cứ lúc nào và có những đặc điểm khác hẳn với những lý do khác. Ngoài ra, dải thông trong mạng không dây là thấp, các nút bị hạn chế bởi nguồn nuôi nên tổng lưu lượng dành cho định tuyến cần phải nhỏ. Các thuật toán định tuyến cho mạng ad-hoc có thể được phân loại thành: proactive, reactive, và các thuật toán định tuyến lai (hybrid)5
.
Trong chiến lược định tuyến proactive, bảng định tuyến của mỗi nút được cập nhật định kỳ. Các thuật toán định tuyến truyền thống như distance vector (vectơ khoảng cách) và link state (trạng thái liên kết) là thuộc loại proactive: duy trì tuyến đường tới tất cả các nút trong mạng, kể cả các nút mà không có gói tin (packet) nào được truyền tới. Chính vì lý do này, các thuật toán định tuyến proactive yêu cầu nhiều thông điệp điều khiển định kỳ, dẫn tới việc khan hiếm tài nguyên do năng lượng, băng thông,… được sử dụng nhiều hơn trong trường hợp di động. Một ví dụ về giao thức định tuyến theo kiểu proactive là Destination-Sequenced Distance Vector (DSDV). Một thuật toán định tuyến proactive khác tốt hơn do giảm việc sử dụng băng thông một cách hiệu quả là Optimized Link State Routing (OLSR).
Trong chiến lược định tuyến reactive, việc định tuyến được thực hiện theo nhu cầu (on-demand), tức là chỉ khi có nhu cầu truyền thông, nút gửi tự tìm kiếm tuyến đường tới nút đích. Chiến lược này cho phép các nút mạng chỉ cần quan tâm tới các tuyến đường đang được sử dụng hoặc đang được thiết lập. Ví dụ về các thuật toán định tuyến theo kiểu reactive là Ad-hoc On-Demand Distance Vector (AODV) và Dynamic Source Routing (DSR).
Các thuật toán định tuyến lai (hybrid routing protocol) kết hợp hai chiến lược định tuyến trên: sử dụng định tuyến theo proactive trong một khu vực giới hạn nào đó (khu vực định tuyến) và sử dụng định tuyến reactive ngoài khu vực này. Ví dụ về một giao thức định tuyến theo chiến lược lai là Zone Routing Protocol (ZRP).
Cả hai chiến lược proactive và reactive đều có những ưu nhược điểm riêng, phù hợp riêng với từng ngữ cảnh sử dụng. Các giao thức định tuyến proactive có bảng định tuyến được cập nhật định kỳ, thường xuyên, do đó độ trễ khi gửi đi một gói tin là rất
nhỏ (tối thiểu). Tuy nhiên việc cập nhật các bảng định tuyến thường xuyên lại cần nhiều thông điệp điều khiển, làm tràn ngập mạng (flooding); tiêu tốn rất nhiều thời gian, băng thông và năng lượng. Ngược lại, các thuật toán reactive xác định tuyến đường đi giữa các nút chỉ khi cần chuyển đi các gói tin giữa hai nút đó. Do đó, khi có yêu cầu gửi đi một gói tin, nút mạng di động trước tiên phải tìm tuyến đường nếu như nó chưa biết tuyến đường đi. Quá trình tìm kiếm tuyến đường này có thể gây ra một độ trễ truyền tin đáng kể. Kết hợp cả hai chiến lược proactive và reactive là các thuật toán định tuyến lai. Chiến lược này có ít nhược điểm nhất, đồng thời lại có những ưu điểm do hai chiến lược trên đem lại. Dưới đây trình bày tóm lược về các thuật toán định tuyến đã được nhắc tới. Tuy nhiên cần chú ý rằng có rất nhiều các thuật toán định tuyến khác nhau đã được đề xuất, mỗi thuật toán có những ưu nhược điểm riêng và phù hợp đối với từng trường hợp cụ thể.