1. Trang chủ
  2. » Luận Văn - Báo Cáo

Phân tích đánh giá hiệu suất hoạt động của giao thức định tuyến theo vùng ZRP trong mạng ad hoc bằng phương pháp mô phỏng máy tính

76 649 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 76
Dung lượng 1,51 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Trong thuật toán phân phối Bellman-Ford, mỗi trạm làm việc S lưu giữ một bảng định tuyến, trong đó chỉ rõ để tới được mỗi trạm làm việc đích D trong mạng thì phải chuyển gói tin số liệu

Trang 3

Lời cảm ơn

Lời cám ơn sâu sắc đầu tiên, tác giả xin được gửi tới thày giáo hướng dẫn PGS.TS

Vũ Duy Lợi – Văn phòng Trung ương Đảng Mặc dù công việc rất bận, nhưng thày đã dành khá nhiều thời gian để hướng dẫn tận tình, giúp cho luận văn được hoàn thành đúng thời hạn

Xin trân trọng cảm ơn thày giáo, TS Nguyễn Đình Việt, người đã cung cấp và hướng dẫn cài đặt bộ mô phỏng NS-2, một công cụ mô phỏng đã được sử dụng trong quá trình làm luận văn Thày cũng đã có những góp ý bổ ích và tạo điều kiện để tác giả luận văn được cùng làm việc với nhóm do thày hướng dẫn

Xin cảm ơn sự tạo điều kiện, giúp đỡ, động viên của lãnh đạo và anh chị em trong Viện Công nghệ Thông tin - Đại học Quốc gia Hà nội, cơ quan nơi tôi đang công tác Cảm ơn sự động viên giúp đỡ của các bạn cùng lớp cao học K9T3 Các bạn đã cung cấp một số tài liệu liên quan tới vấn đề mà luận văn nghiên cứu

Cảm ơn các thày cô giáo và các cán bộ trong trường Đại học Công nghệ - Đại học Quốc gia Hà nội đã cung cấp các kiến thức khoa học và tạo điều kiện thuận lợi cho tác giả trong quá trình học tập và thực hiện luận văn cao học này

Những nguồn giúp đỡ động viên quý báu kể trên tạo điều kiện và là động lực rất lớn

để tác giả hoàn thành luận văn

Trang 4

Danh mục các từ viết tắt

AODV Ad-hoc On Demand Distance Vector routing protocol – một giao thức

định tuyến cho mạng ad-hoc

BRP Bordercast Resolution Protocol - giải pháp truy vấn ngoại biên

CBR Constant Bit Rate – kỹ thuật phát gói tin theo tốc độ cố định

DSDV Highly Dynamic Destination-Sequenced DistanceVector routing protocol

– một giao thức định tuyến trước dựa vào vectơ khoảng cách

IARP Intrazone Routing Protocol – thành phần định tuyến nội vùng

IERP Interzone Routing Protocol – thành phần định tuyến liên vùng

NPDU Network Protocol Data Unit – gói dữ liệu mạng

QD Query Detection - Kỹ thuật phát hiện truy vấn đã xử lý

RERR Route Error – gói tin báo lỗi đường truyền

RREP Route Reply – gói tin trả lời định tuyến

RREQ Route Request – gói tin yêu cầu định tuyến

ZRP Zone Routing Protocol – giao thức định tuyến theo vùng, một giao thức

định tuyến cho mạng ad-hoc

Trang 7

Mở đầu Đặt vấn đề

Cùng với sự phát triển không ngừng của khoa học công nghệ, hệ thống thông tin liên lạc và truyền thông cũng liên tục đổi mới Ngày nay, các thiết bị di động ngày càng được sử dụng rộng rãi và phát huy sức mạnh Trên thế giới, các kết quả nghiên cứu và ứng dụng của mạng không dây đã mang lại rất nhiều lợi ích cho xã hội Tại Việt Nam, mạng điện thoại di động trong vài năm gần đây cũng phát triển hết sức mạnh mẽ Trong lĩnh vực mạng máy tính, đã có nhiều cơ quan, đơn vị lựa chọn sử dụng mạng không dây thay thế mạng hữu tuyến truyền thống Những mô hình mạng nói trên đòi hỏi các đơn vị, công ty phải xây dựng một cơ sở hạ tầng mạng với hệ thống các trạm tiếp sóng (base station) được thiết đặt trước tại những vị trí cố định Thời gian gần đây, các nhà khoa học đang hướng tới nghiên cứu, triển khai mạng di động, trong đó, các thiết bị di động có thể kết nối, giao tiếp, trao đổi thông tin với nhau bằng sóng vô tuyến, theo phương thức bắc cầu, mà không đòi hỏi có một cơ sở hạ tầng thông tin liên lạc nào được xây dựng từ trước Các thiết bị di động ở xa ngoài vùng phủ sóng vô tuyến của nhau có khả năng giao tiếp với nhau thông qua các thiết bị khác, và do vậy vẫn có thể phối hợp hoạt động một cách nhịp nhàng Việc kết nối cũng được thực hiện “trong suốt”, khi mà người sử dụng không cần phải bận tâm thiết lập môi trường làm việc để kết nối các thiết bị di động với nhau Một mạng như mô tả ở trên được gọi là mạng di động không cấu trúc, hay mạng ad-hoc Để mạng ad-hoc có thể làm việc được, các thiết bị di động trong mạng cần sử dụng một giao thức truyền thông hiệu quả, mà phần rất quan trọng trong đó là thuật toán định tuyến trong mạng ad-hoc

Luận văn đi sâu tìm hiểu một thuật toán định tuyến cho các thiết bị di động trong môi trường mạng di động không cấu trúc - thuật toán định tuyến theo vùng Zone Routing Protocol (ZRP)

Phương pháp nghiên cứu

Nhằm đạt được mục đích nghiên cứu của luận văn, tác giả phải tập hợp và nghiên cứu các tài liệu đề cập đến các vấn liên quan, đã được công bố trên thế giới; các bản nháp khuyến nghị của tổ chức IETF; các tài liệu trình bày về mạng không dây và các giao thức cho mạng không dây

Do không thể thực hiện thí nghiệm trên hệ thống mạng thực, tác giả sử dụng các hệ

mô phỏng NS-2 và Qualnet (phiên bản thương mại của Glomosim) – là các hệ mô phỏng mạng đã và đang được các nhà nghiên cứu và nhiều trường đại học trên thế giới tin cậy sử dụng trong các nghiên cứu khoa học và giảng dạy - để làm thí nghiệm

Trang 8

Luận văn cũng kế thừa các thành quả nghiên cứu đã được công nhận của các trung tâm nghiên cứu, các trường đại học và các tác giả đã từng nghiên cứu các lĩnh vực liên quan, sát với đề tài của luận văn

Tóm tắt nội dung các chương

Luận văn được chia làm 3 chương Chương 1 nêu lên khái niệm về mạng ad-hoc, ứng dụng của mạng ad-hoc và các vấn đề cần giải quyết Để đạt được tính nhất quán

về các thuật ngữ sử dụng trong luận văn, một số thuật ngữ cũng được đưa ra

Chương 2 giới thiệu các thuật toán định tuyến trước và định tuyến theo yêu cầu trong mạng ad-hoc, làm cơ sở cho việc trình bày thuật toán lai ZRP trong chương 3 Ở đây, luận văn bày sâu về thuật toán DSDV, một đại diện cho loại thuật toán định tuyến trước Tương tự, thuật toán AODV được chọn làm đại diện cho loại thuật toán định tuyến theo yêu cầu và cũng được trình bày kỹ lưỡng Ưu, nhược điểm của mỗi loại thuật toán được nêu ra ở phần đánh giá, cuối mỗi phần trình bày về nguyên tắc hoạt động của các thuật toán

Chương 3 trình bày về thuật toán định tuyến theo vùng Zone Routing Protocol – ZRP, trong đó, giới thiệu chi tiết các thành phần của thuật toán và mối quan hệ giữa chúng Đồng thời, nội dung của chương này cũng trình bày các giải pháp và kỹ thuật điều khiển truy vấn sao cho thuật toán đạt được hiệu quả cao nhất Phần đánh giá chỉ

rõ ưu, nhược điểm của thuật toán ZRP

Luận văn cũng đưa ra kết quả cài đặt và mô phỏng thuật toán trên hệ mô phỏng Qualnet và NS-2 làm minh họa và có đánh giá chung, sau đó, đưa ra các đề xuất cải tiến

Phần kết luận nêu các kết quả đạt được trong luận văn và hướng nghiên cứu tiếp theo

Cuối luận văn là danh sách các tài liệu tham khảo đã được sử dụng Sau cùng, hai phụ lục mô tả các bước tiến hành thí nghiệm và phân tích chi tiết kết quả thí nghiệm

mô phỏng, minh hoạ thuật toán định tuyến ZRP được đính kèm

Trang 9

Chương 1 Giới thiệu mạng ad-hoc 1.1 Khái niệm

Mạng không dây

Sau thời gian dài phát triển trên thế giới, những năm gần đây mạng điện thoại di động đã và đang nở rộ trên thị trường Việt Nam, làm nên những thay đổi lớn trong xã hội Mạng điện thoại di động chính là một thí dụ tiêu biểu của mạng không dây Ở đó, các điện thoại được kết nối với nhau thông qua các hệ thống thiết bị kết nối trung gian

là các trạm tiếp sóng Khi điện thoại di động không nằm trong vùng phủ sóng của bất

kỳ một trạm tiếp sóng nào, nó không thể thực hiện được cuộc gọi đi hay nhận cuộc gọi đến

Tương tự, trong lĩnh vực mạng máy tính, các máy tính có thể được kết nối với nhau thông qua một thiết bị trung gian gọi là Access Point (chính là các trạm tiếp sóng - Base Station) Các thiết bị này thường kết nối với nhau và với phần còn lại của mạng bằng đường truyền hữu tuyến nhưng giao tiếp với các máy tính (có cắm vỉ mạng không dây) bằng sóng vô tuyến Cũng có khi các Access Point kết nối vô tuyến với nhau như trong hình 1 Đó là mạng máy tính không dây thông thường

Hình 1 Mạng máy tính kết nối không dây với 2 access point

Với cách kết nối không dây như trên, các trạm làm việc (máy tính, điện thoại di động,…) sẽ trao đổi số liệu với nhau thông qua các trạm tiếp sóng Tức là các gói dữ liệu gửi giữa các trạm làm việc đều được truyền tới trạm tiếp sóng và trạm tiếp sóng sẽ chịu trách nhiệm chuyển các gói tin này tới trạm đích được chỉ định Như vậy, trạm tiếp sóng đồng thời đóng vai trò của bộ định tuyến

Trang 10

Mạng ad-hoc

Trong nhiều trường hợp, điều kiện không cho phép xây dựng hệ thống trạm tiếp sóng, chẳng hạn khi thiết lập hệ thống liên lạc phục vụ cứu nạn sau thiên tai, hoặc trong các trận chiến sử dụng công nghệ cao mà các vũ khí, khí tài và ngay cả các chiến binh cần thường xuyên liên lạc với nhau Để giải quyết vấn đề, người ta đưa ra giải pháp xây dựng mạng, trong đó, mỗi trạm làm việc không dây đồng thời đảm trách cả chức năng của bộ định tuyến Các trạm làm việc gửi số liệu cho nhau thông qua các trạm khác, không cần có các trạm kết nối trung gian (Base Station) Một mạng như vậy được gọi là Mobile Ad-hoc Network (MANET) hay mạng di động không cấu trúc, trong luận văn, gọi tắt là mạng ad-hoc

Hình 2 Mạng ad-hoc 1.2 Các ứng dụng của mạng ad-hoc

Như đã nói ở trên, mạng ad-hoc được áp dụng cho các cuộc tìm kiếm, cứu nạn sau thiên tai, như động đất, lũ lụt,… khi mà hệ thống thông tin liên lạc đã bị phá hủy Việc tiến hành cứu nạn là khẩn cấp, và người ta không thể chờ đợi để xây dựng lại hệ thống liên lạc Hay việc tìm kiếm cứu nạn ở những nơi mà hệ thống thông tin liên lạc không

có sẵn như các vùng núi cao, bắc cực, xa mạc… nơi không có con người sinh sống Trong trường hợp này, ngoài tính khẩn cấp, việc xây dựng một hệ thống thông tin liên lạc nhằm mục đích chỉ phục vụ cho một công việc nhất thời là không khả thi

Mạng ad-hoc còn được áp dụng rất hiệu quả trong quân đội một số cường quốc, nơi

mà các vũ khí, khí tài công nghệ cao, có độ chính xác rất lớn được sử dụng Khi triển khai các trận đánh, các vũ khí, khí tài, thậm chí từng quân nhân có thể liên lạc với nhau để có thể đánh hiệp đồng một cách nhịp nhàng, chính xác

Trang 11

Ngoài ra, mạng ad-hoc còn có thể được triển khai một cách rộng rãi cho các ứng dụng khác như:

• Trong các cuộc họp (thay thế mạng không dây thông thường đang sử dụng hiện nay) Công việc chuẩn bị cho cuộc họp sẽ dễ dàng hơn do không phải chuẩn bị

hệ thống liên lạc cho các máy móc thiết bị sử dụng trong cuộc họp Do vậy các cuộc họp có thể diễn ra tại bất cứ địa điểm nào

• Mạng kết nối dành cho cá nhân (Bluetooth) Mọi người không cần phải bận tâm trong việc thiết lập kết nối cho các thiết bị cá nhân

• Mạng kết nối các thiết bị trong gia đình Các thiết bị sẽ hoạt động hiệu quả hơn nhờ sự phối hợp nhịp nhàng Chẳng hạn đài sẽ tự tắt khi ta bật ti vi

• Trong các ứng dụng khác (điều khiển công nghệp, mạng taxi, mạng kết nối các tàu thuyền,…)

Hình 3 Ứng dụng rộng rãi của mạng ad-hoc trong cuộc sống 1.3 Đặc điểm của mạng ad-hoc

Mạng ad-hoc có các đặc điểm sau:

• Có cấu trúc động: Do tính di động của tất cả các trạm làm việc trong mạng, sự thay đổi về cấu trúc mạng xảy ra thường xuyên Các kết nối giữa các trạm làm việc có thể hình thành và mất đi nhanh chóng, phụ thuộc vào tốc độ và hướng di chuyển của các trạm làm việc Điều này khiến cho việc truyền số liệu giữa các trạm làm việc gặp nhiều khó khăn Chúng phải thường xuyên định tuyến lại trong suốt quá trình truyền số liệu và không sử dụng được hướng truyền mặc định (default route) như đối với mạng hữu tuyến và mạng di động thông

Trang 12

thường Do vậy, vấn đề định tuyến, vốn đã rất phức tạp trong mạng hữu tuyến

và mạng không dây thông thường, nay còn phức tạp hơn rất nhiều trong mạng ad-hoc

• Dung lượng đường truyền thấp: Các thiết bị di động kết nối với nhau qua sóng

vô tuyến, do vậy dung lượng đường truyền bị hạn chế, thấp hơn rất nhiều so với dung lượng truyền trên các đường truyền hữu tuyến Khi các trạm làm việc càng cách xa nhau, tín hiệu vô tuyến càng yếu và do đó dung lượng truyền cũng giảm dần

• Mức năng lượng cung cấp cho các trạm làm việc hạn chế: Do tính chất di động của các trạm làm việc, pin là nguồn cung cấp năng lượng chủ yếu Do vậy các thiết bị di động phải được thiết kế (cả phần cứng lẫn phần mềm) sao cho mức tiêu thụ năng lượng đạt tối thiểu và phải áp dụng các giải pháp tiết kiệm năng lượng tối đa Trong một vài năm gần đây, một số công ty lớn đã phát triển những loại pin có thời gian sử dụng lâu hơn, thậm chí thời gian sạc lại rất ngắn

và sẽ tung ra thị trường trong tương lai không xa Tuy nhiên, vấn đề hạn chế về nguồn năng lượng cung cấp cho các thiết bị di động vẫn là một mối quan tâm lớn

• Có thể xảy ra hiện tượng kết nối một chiều (unidirectional link): Ở mạng hữu tuyến, khi trạm làm việc A truyền được dữ liệu tới trạm làm việc B thì B cũng

có thể truyền dữ liệu trở lại A (bidirectional link) Tuy nhiên trong mạng không dây, đôi khi A gửi được dữ liệu tới B nhưng do mức năng lượng phát tín hiệu của B yếu, hoặc do nhiễu điện từ mà tín hiệu phát đi từ B lại không tới được A Trường hợp này được gọi là kết nối một chiều hay kết nối không đối xứng Cần

có biện pháp giải quyết để đảm bảo cho việc truyền số liệu khi gặp hiện tượng trên

• Ngoài ra, vấn đề bảo mật thông tin cũng là điều đáng quan tâm, do sự lan tỏa của sóng vô tuyến Đối với mạng hữu tuyến, muốn nhận được thông tin truyền trên đường truyền, bắt buộc phải tiếp cận được với đường cáp truyền Trong mạng không dây nói chung, sự lan tỏa của sóng vô tuyến khiến cho bất kỳ trạm làm việc nào nằm trong vùng bao phủ của sóng cũng có thể tiếp cận với tín hiệu được phát ra Có nghĩa là vấn đề mã hóa thông tin cần phải được chú trọng trong mạng ad-hoc nói riêng và mạng không dây nói chung

Như vậy có rất nhiều vấn đề cần được giải quyết để đảm bảo mạng ad-hoc hoạt động tin cậy, an toàn và hiệu quả Luận văn chỉ xin đề cập chủ yếu đến vấn đề định tuyến trong mạng ad-hoc

Trang 13

1.4 Một số khái niệm sử dụng trong luận văn

Trạm làm việc

Trong mạng máy tính, các máy tính được kết nối với nhau để trao đổi thông tin Các máy tính là thành phần quan trọng nhất trong mạng máy tính Nhưng để kết nối các máy tính này, cần có các thiết bị kết nối mạng như bộ định tuyến, bộ chuyển mạch,…

Để có thể đảm trách được nhiệm vụ đó, chúng cũng phải truyền, nhận, xử lý thông tin

ở một mức độ nào đấy

Trong mạng truyền thông nói chung, mỗi thiết bị như vậy (máy tính, bộ định tuyến,

bộ chuyển mạch,…) được gọi với tên chung là trạm làm việc (node) Tuy nhiên, trong mạng ad-hoc, có thể coi các trạm làm việc chính là các máy tính vì chúng đảm trách chức năng của tất cả các thiết bị còn lại Trong các ứng dụng thực tế của mạng ad-hoc, trạm làm việc là bất kỳ thiết bị nào có khả năng giao tiếp với các thiết bị mạng khác và chuyển tiếp gói tin trong mạng

Giá trị thước đo định tuyến - bước nhảy

Trong mạng máy tính thường có nhiều đường kết nối giữa hai trạm làm việc Vì vậy các bộ định tuyến (router) cần phải chọn đường kết nối nào để việc truyền dữ liệu đạt hiệu quả cao nhất Người ta đưa ra khái niệm thước đo định tuyến (metric) để đánh giá

ưu thế của các đường kết nối Giá trị này có thể là tổng hợp của nhiều yếu tố như tốc

độ tối đa của đường truyền, độ trễ truyền tin, tỷ lệ các gói tin bị mất,… nhưng cũng có thể chỉ dựa vào số bước nhảy (hop count) trong đường kết nối giữa hai trạm làm việc

Hình 4a: Khoảng cách 1 hop Hình 4b: Khoảng cách 2 hop

Hình 4 Giá trị thước đo định tuyến tính theo số bước nhảy

Nếu để đến được trạm làm việc đích, gói tin phải được chuyển qua N+1 bộ định tuyến khác nhau thì nói hai trạm làm việc cách nhau N bước nhảy, hay đường kết nối giữa hai trạm làm việc có khoảng cách N bước nhảy Nói cách khác, đường kết nối trực tiếp hai bộ định tuyến với nhau tương ứng với một bước nhảy

Ở đây, ta không chú ý đến độ dài địa lý của đường kết nối Trong ví dụ ở hình 4, mặc dù chiều dài đường kết nối gữa hai bộ định tuyến trong hình 4a có thể dài hơn rất nhiều (về mặt địa lý) so với tổng chiều dài đường kết nối trong hình 4b (từ bộ định tuyến A đến bộ định tuyến B) Nhưng khi tính theo số bước nhảy, khoảng cách từ A đến B trong hình 4a (1 hop) được coi là gần hơn khoảng cách từ A đến B trong hình 4b (2 hop)

Trang 14

Trong luận văn, số bước nhảy được lấy làm đơn vị thước đo đánh giá khoảng cách giữa hai trạm làm việc Mỗi trạm làm việc cũng đồng thời là một bộ định tuyến và kết nối giữa các trạm làm việc là kết nối vô tuyến

Trạm nguồn - Trạm đích - Trạm lân cận - Trạm kế tiếp

Để không bị nhầm lẫn các khái niệm được dùng trong luận văn, tác giả xin nêu các

từ đã sử dụng để chỉ rõ vai trò của các trạm làm việc trong mạng ad-hoc

Khi trạm A có yêu cầu truyền số liệu tới trạm B thì A được gọi là trạm làm việc nguồn, B được gọi là trạm làm việc đích Trạm làm việc nguồn phải sử dụng thuật toán định tuyến để tìm được đường đi tới trạm làm việc đích, sau đó mới có thể chuyển đi các gói số liệu

Một trạm làm việc N được coi là lân cận (neighbor node) của trạm làm việc S nếu

nó có thể trao đổi dữ liệu trực tiếp với S mà không cần thông qua các trạm làm việc khác Nói cách khác, N cách S một bước nhảy Trong mạng ad-hoc, N phải nằm trong vùng phủ sóng tín hiệu của S

N được coi là trạm làm việc kế tiếp (next hop) của M nếu nó là trạm lân cận của M

và nằm trên đường kết nối giữa trạm làm việc nguồn và trạm làm việc đích Nói cách khác, N sẽ là trạm làm việc đầu tiên mà M gửi gói số liệu đến trong quá trình chuyển tiếp các gói số liệu tới trạm làm việc đích

Gói tin yêu cầu định tuyến – gói tin trả lời định tuyến – gói tin định tuyến - xử lý truy vấn

Trước khi truyền số liệu, trạm làm việc nguồn cần phải tìm được đường đi tới trạm

làm việc đích Để thực hiện việc này, chúng phát đi các gói tin yêu cầu định tuyến

Khi một trạm làm việc biết đường đi tới trạm làm việc đích, nó sẽ trả lời trạm làm

việc nguồn bằng gói tin trả lời định tuyến cho biết đường đi tới trạm làm việc đích Gói tin định tuyến được sử dụng để chỉ tất cả các gói tin truyền trên mạng nhằm

mục đích tìm đường từ trạm làm việc nguồn đến tram làm việc đích, bao gồm cả các gói tin yêu cầu định tuyến, gói tin trả lời định tuyến và các gói tin cập nhật thông tin định tuyến Các gói tin định tuyến không chứa số liệu cần truyền

Những hành động mà một trạm làm việc thực hiện khi nhận được một gói tin yêu cầu định tuyến (kiểm tra gói tin yêu cầu định tuyến, tìm thông tin định tuyến, chuyển

tiếp gói tin yêu cầu định tuyến…) được gọi chung là xử lý truy vấn

Trang 15

Chương 2 Các thuật toán định tuyến trong mạng ad-hoc

Đã có rất nhiều thuật toán định tuyến dành cho mạng ad-hoc được đề xuất Mỗi thuật toán đều có ưu, nhược điểm riêng và được cải tiến dần để hạn chế các nhược điểm, đồng thời phát huy ưu điểm vốn có Người ta có thể phân loại các thuật toán định tuyến dành cho mạng ad-hoc theo các đặc điểm về thời điểm định tuyến (proactive, reactive), về tính phân cấp (hierachical), tính sử dụng dữ liệu địa lý (geographical), tính tiết kiệm năng lượng (power aware), v.v [14]

Xét theo thời điểm định tuyến, ta có hai loại thuật toán định tuyến: định tuyến trước (proactive routing protocol) và định tuyến theo yêu cầu (reactive routing protocol) Ngoài ra, nhiều thuật toán kết hợp hai loại trên cũng được đề xuất Luận văn sẽ trình bày về hai loại thuật toán trên với các đại diện tiêu biểu và tập trung vào một thuật toán kết hợp - thuật toán định tuyến theo vùng Zone Routing Protocol

2.1 Thuật toán định tuyến trước

Khi sử dụng thuật toán định tuyến trước, mỗi trạm làm việc sẽ lưu giữ và thường xuyên cập nhật một bảng định tuyến, trong đó, chỉ rõ đường đi tới các trạm làm việc khác trong mạng Do vậy, bất cứ khi nào một trạm làm việc muốn truyền số liệu, nó có thể lấy ngay thông tin trong bảng định tuyến do chính nó đang lưu giữ để lập tức chuyển gói tin tới đích đã định Nói cách khác, thông tin định tuyến đã sẵn sàng từ trước khi có nhu cầu truyền số liệu

Tiêu biểu cho loại thuật toán định tuyến trước phải kể đến DSDV (Highly Dynamic Destination-Sequenced DistanceVector routing protocol), WRP (Wireless Routing Protocol), OLSR (Optimized Link State Routing Protocol)

2.1.1 Tổng quát

Các thuật toán định tuyến trước thường sử dụng thuật toán phân phối Bellman-Ford (Distributed Bellman-Ford Algorithm) Đây là thuật toán sử dụng vector khoảng cách (Distance Vector), trong đó các trạm làm việc định kỳ trao đổi thông tin của toàn bộ bảng định tuyến Do vậy, các thuật toán sử dụng vector khoảng cách còn được gọi là các thuật toán dựa vào việc trao đổi bảng định tuyến (Table Driven)

Chúng ta sẽ tìm hiểu thuật toán Bellman-Ford làm cơ sở để sau đó xem xét một đại diện cho loại thuật toán đinh tuyến trước: thuật toán định tuyến DSDV Sở dĩ thuật toán DSDV được chọn trình bày trong luận văn, cùng với thuật toán AODV (được trình bày trong phần 2.2), vì cả hai thuật toán cùng do C Perkins đề xuất DSDV là thuật toán nền tảng để sau đó Perkins phát triển thuật toán định tuyến theo yêu cầu AODV Chúng ta sẽ dễ dàng phân tích đánh giá sự khác biệt giữa hai loại thuật toán sau khi tìm hiểu kỹ hai thuật toán này

Trang 16

2.1.2 Nguyên tắc hoạt động

2.1.2.1 Thuật toán phân phối Bellman-Ford

Thuật toán phân phối Bellman-Ford (còn được gọi là thuật toán vector khoảng cách

- Distance Vector) đã được sử dụng hiệu quả trong một số thuật toán định tuyến cho mạng hữu tuyến, chẳng hạn RIP (Routing Information Protocol), IGRP (Internet Gateway Routing Protocol – do Cisco phát triển), RTMP (Routing Table Maintenance Protocol – do Apple phát triển) và một số thuật toán định tuyến dành cho mạng không dây, trong đó có DSDV [1], [15]

Trong thuật toán phân phối Bellman-Ford, mỗi trạm làm việc S lưu giữ một bảng định tuyến, trong đó chỉ rõ để tới được mỗi trạm làm việc đích D trong mạng thì phải chuyển gói tin số liệu qua trạm làm việc lân cận N nào của S và khoảng cách tương ứng theo đường đi đó, với khoảng cách là quãng đường ngắn nhất từ S tới D, thường tính bằng số bước nhảy N khi đó sẽ là trạm làm việc kế tiếp của S trong đường đi ngắn nhất từ S tới D nêu trên

Để cập nhật các thông tin về đường đi ngắn nhất, mỗi trạm làm việc định kỳ trao đổi thông tin trong bảng định tuyến của nó với các trạm làm việc lân cận Căn cứ vào thông tin định tuyến do các trạm làm việc lân cận gửi đến, S sẽ biết được đường đi ngắn nhất tới mỗi trạm làm việc khác trong mạng, thông qua các trạm làm việc lân cận Chẳng hạn, với mỗi trạm làm việc D trong mạng, S sẽ chọn một trạm làm việc N lân cận với S làm trạm kế tiếp trong đường đi tới D, sao cho khoảng cách từ N tới D là ngắn nhất so với khoảng cách từ các trạm làm việc lân cận còn lại của S tới D Thông tin này được lưu lại trong bảng định tuyến của S (là một dòng của bảng định tuyến), và sau đó sẽ được S trao đổi với các trạm làm việc lân cận của nó tại thời điểm trao đổi thông tin định tuyến định kỳ lần tiếp theo

Hình 5 dưới đây là một thí dụ minh họa Trong minh hoạ này, trạm làm việc 1 kết nối trực tiếp với D (là lân cận của D) Dĩ nhiên, nó biết được đường đi ngắn nhất từ nó đến D và gửi thông tin định tuyến tới các trạm làm việc lân cận 2 và 3 cho biết trạm làm việc kế tiếp trong đường đi ngắn nhất từ nó tới D - ở đây chính là D - với khoảng cách là 1, tính theo số bước nhảy Dựa vào thông tin đó, trạm làm việc 2 và trạm làm việc 3 biết được đường đi ngắn nhất tới D là đi qua trạm làm việc 1 với khoảng cách cùng là 2 bước nhảy Trạm làm việc 2 tiếp tục gửi thông tin định tuyến của nó tới hai trạm lân cận là 4 và S Trong khi đó, trạm làm việc 3 cũng gửi thông tin định tuyến của mình tới trạm làm việc 4 Và do đó, S cũng sẽ nhận được thông tin định tuyến từ trạm làm việc 4 cho biết đường đi ngắn nhất từ trạm làm việc 4 tới D là qua trạm làm việc 3 với khoảng cách là 3 bước nhảy Như vậy, S nhận được thông tin định tuyến từ hai trạm làm việc 2 và 4

Trang 17

Hình 5 Thuật toán phân phối Bellman-Ford (Distance Vector)

Sau khi tính toán, S thấy rằng để đến D, nếu đi qua trạm làm việc 4 thì khoảng cách

là 4 bước nhảy; còn nếu đi qua trạm làm việc 2 thì khoảng cách là 3 bước nhảy Vậy đường đi qua trạm làm việc 2 sẽ ngắn hơn S sẽ lưu thông tin tính toán được này vào bảng định tuyến của nó và sau đó trao đổi thông tin này, cùng các thông tin khác đã được lưu trong bảng định tuyến, với các trạm làm việc lân cận của nó Việc tính toán đường đi tới các trạm làm việc khác cũng tương tự Bảng định tuyến tại S sẽ có nội dung như sau:

Destination Next Hop Hops

Trang 18

Tuy nhiên, thuật toán cũng có nhược điểm là sự hội tụ chậm Tức là khi có sự thay đổi về thông tin định tuyến, do tính chất định kỳ trong việc trao đổi thông tin nên phải mất một thời gian, toàn bộ các trạm làm việc trong mạng mới có được thông tin định tuyến chính xác (đạt trạng thái hội tụ - convergence) Tại một thời điểm nào đó, khi thông tin định tuyến trên toàn mạng chưa hội tụ có thể nảy sinh hiện tượng gói tin bị chuyển vòng quanh trên mạng (routing loop) Hiện tượng này thường xảy ra trong các mạng có nhiều kết nối không ổn định

2.1.2.2 Thuật toán định tuyến DSDV

DSDV (Destination Sequence Distance Vector routing protocol) được C Perkins đề xuất năm 1994, sử dụng thuật toán vector khoảng cách (hay thuật toán Bellman-Ford) trình bày ở trên với một số sửa đổi bổ sung nhằm tránh hiện tượng các gói tin bị gửi vòng quanh (loop) [3], [17] DSDV đã được tích hợp trong phần mềm mô phỏng NS2 Trong mạng ad-hoc sử dụng thuật toán định tuyến DSDV, mỗi trạm làm việc sẽ lưu giữ một bảng định tuyến chứa các thông tin về đường đi tới các tất cả các trạm làm việc khác mà nó có thể kết nối được Một bảng định tuyến được thể hiện như trong hình 6:

Destination Next Hop Hops Seq No

• Để đánh dấu các gói tin yêu cầu định tuyến mới, DSDV sử dụng cách đánh số thứ tự thông tin định tuyến tăng dần (sequence number) - trường Seq.No Việc đánh số thứ tự được thực hiện bởi mỗi trạm làm việc đích khi gửi lên mạng

Trang 19

thông tin về chính nó Chẳng hạn, trong bảng định tuyến trên, đường đi đến trạm làm việc D có số thứ tự do chính D đưa ra (D-502) Số thứ tự này luôn là

số chẵn Ở đây, D là ký hiệu trạm làm việc đã đưa ra số thứ tự này Trong thực

tế xây dựng thuật toán, số thứ tự có thể chỉ là một số tự nhiên thông thường mà không cần kèm thêm các giá trị đánh dấu cho biết trạm làm việc đã đưa ra nó

Cập nhật thông tin định tuyến

Mỗi trạm làm việc định kỳ truyền đi các thông tin định tuyến tới các trạm làm việc lân cận theo cách quảng bá Do tính chất thường xuyên thay đổi về cấu trúc của mạng ad-hoc, thời gian giữa các lần quảng bá thông tin định tuyến của mỗi trạm làm việc cần đủ ngắn để các trạm có được thông tin định tuyến chính xác tới mỗi trạm khác trong mạng

Để giảm lượng thông tin quảng bá trên mạng, thuật toán sử dụng hai cách cập nhật thông tin định tuyến: cập nhật toàn phần (full dump) và cập nhật tức thời (hay cập nhật tăng tiến - incremental) Cập nhật toàn phần được sử dụng khi một trạm làm việc muốn quảng bá toàn bộ bảng định tuyến Cập nhật tức thời được thực hiện giữa các lần cập nhật toàn phần, khi có các thay đổi đáng kể và lượng thông tin cần cập nhật là đủ nhỏ Các thông tin cập nhật này sẽ ngay lập tức được truyền đi Chẳng hạn, khi có sự thay đổi về giá trị thước đo định tuyến của một đường đi thì thay đổi đó được coi là đáng kể và ngay sau khi thông tin đạt được tính ổn định (được giải thích cụ thể hơn

trong phần trì hoãn quảng bá và thời gian chờ ổn định ở phần sau), nó phải được

quảng bá ngay để cập nhật cho các trạm làm việc khác trong mạng Khi thông tin mới nhận có giá trị thước đo định tuyến giữ nguyên, chỉ có thay đổi về số thứ tự định tuyến thì sự thay đổi đó không được coi là đáng kể và do vậy thông tin này không cần thiết phải được quảng bá ngay

Như đã nói, lượng thông tin cập nhật tức thời phải đủ nhỏ để có thể chỉ cần sử dụng một gói dữ liệu của mạng (network protocol data unit - NPDU) trong việc truyền dữ liệu Nếu lượng thông tin cập nhật vượt quá một gói dữ liệu, phương thức cập nhật toàn phần sẽ được sử dụng Khi đó toàn bộ thông tin trong bảng định tuyến sẽ được gửi đi Một mạng cho dù có kích thước khá nhỏ thì để truyền thông tin của toàn bộ bảng định tuyến của một trạm làm việc cũng cần tới vài gói dữ liệu Khi một mạng ổn định, nghĩa là sự di chuyển của các trạm làm việc trong mạng là rất ít, có thể hạn chế việc cập nhật toàn phần Tần suất cập nhật toàn phần cũng cần phải giảm bớt khi lượng

dữ liệu quảng bá tăng cao chiếm nhiều dung lượng đường truyền

Trong các gói tin cập nhật tức thời, thông tin định tuyến có những thay đổi về giá trị thước đo định tuyến sẽ được ưu tiên trước Phần không gian dư thừa còn lại sẽ dành cho thông tin định tuyến chỉ có thay đổi về số thứ tự định tuyến Nếu có quá nhiều thông tin định tuyến chỉ có thay đổi về số thứ tự định tuyến mà một gói dữ liệu của mạng không thể chứa hết thì một phần thông tin (đủ chứa trong một gói dữ liệu) sẽ được đưa vào gói dữ liệu để cập nhật tức thời Các dòng thông tin định tuyến còn lại sẽ

Trang 20

được quảng bá trong các lần cập nhật tức thời sau đó với một cơ chế lựa chọn sao cho chúng lần lượt được quảng bá hết

Đánh giá đường đi

DSDV đánh giá đường đi căn cứ vào số thứ tự định tuyến (sequence number) và giá trị thước đo định tuyến Thông tin định tuyến nào có số thứ tự lớn hơn được đánh giá

là mới hơn và được sử dụng Mỗi khi nhận được thông tin cập nhật, trạm làm việc sẽ

so sánh thông tin đó với thông tin trong bảng định tuyến mà nó lưu giữ Nếu số thứ tự định tuyến của thông tin mới nhận được là lớn hơn thì đường đi mới sẽ được sử dụng, tương ứng với việc loại bỏ thông tin cũ trong bảng định tuyến

Khi các thông tin định tuyến nhận được có số thứ tự định tuyến là như nhau, giá trị thước đo định tuyến sẽ được áp dụng để chọn đường đi tốt hơn Cụ thể là đường đi có giá trị thước đo định tuyến nhỏ nhất sẽ được chọn Chẳng hạn, nếu số bước nhảy được lấy làm thước đo định tuyến thì thông tin về đường đi nào (tới cùng trạm làm việc đích, có cùng số thứ tự định tuyến) có số bước nhảy ít nhất sẽ được chọn Giá trị thước

đo định tuyến tăng lên nếu quãng đường tới trạm đích phải qua nhiều trạm làm việc Nếu tính theo số bước nhảy thì qua mỗi trạm làm việc giá trị thước đo định tuyến sẽ tăng thêm 1 bước nhảy

Trì hoãn quảng bá và thời gian chờ ổn định

Đôi khi, một trạm làm việc trong mạng nhận được thông tin có cùng số hiệu định tuyến, nhưng giá trị thước đo định tuyến lại khác nhau Trường hợp này thường xảy ra khi mạng có kích thước lớn và mức độ thường xuyên của việc cập nhật thông tin định tuyến thấp, hoặc, khi thời gian giữa các lần cập nhật của các trạm làm việc có sự chênh lệch lớn

Hình 7 là một thí dụ minh họa một mạng ad-hoc, trong đó, F kết nối trực tiếp với hai nhóm riêng rẽ các trạm làm việc Số lượng trạm làm việc trong nhóm 2 nhiều hơn hẳn so với nhóm 1 A cũng kết nối với hai nhóm trên thông quan B và C Giả sử mỗi trạm làm việc cập nhật thông tin định tuyến với tần suất thấp (chẳng hạn, khoảng l lần/15 giây); B biết một đường tới F qua 12 bước nhảy, trong khi C biết đường đi tới F chỉ qua 11 bước nhảy Thông tin truyền từ B tới A nhanh hơn so với từ C tới A Khi

đó, A sẽ nhận được thông tin định tuyến đến F do B quảng bá trước khi nhận được thông tin do C quảng bá Việc này có thể xảy ra thường xuyên, mỗi khi F đưa ra số thứ

tự định tuyến mới Một trong những nguyên nhân là số lượng các trạm trong mỗi nhóm làm việc cũng ảnh hưởng đến thời gian nhận được thông tin cập nhật tại A, do

sự lựa chọn lần lượt thông tin đưa vào gói tin cập nhật tức thời, như đã nói trong phần

Cập nhật thông tin định tuyến ở trên Vậy, thông tin định tuyến tới F mà A nhận được

từ B sẽ không tốt (vì có số bước nhảy lớn hơn) so với thông tin A nhận được sau đó, từ

C

Trang 21

Hình 7 Trạm làm việc được cung cấp hai thông tin định tuyến khác nhau

Như vậy, do tính chất của việc quảng bá và cập nhật thông tin, thông thường một trạm làm việc sẽ nhận được nhiều thông tin định tuyến khác nhau, tới cùng một trạm làm việc đích, với cùng số thứ tự định tuyến, nhưng tại các thời điểm khác nhau Thông tin có giá trị định tuyến tốt nhất (có giá trị thước đo định tuyến nhỏ nhất) có thể đến muộn hơn

Nếu mỗi khi có sự thay đổi về thông tin định tuyến, các thay đổi này ngay lập tức được quảng bá tới các trạm làm việc lân cận (và việc cập nhật này được tiếp tục lặp lại tại mỗi trạm làm việc) thì việc cập nhật thông tin định tuyến đến cùng một trạm làm việc đích có thể phải lặp lại nhiều lần (xảy ra cả khi nhận được thông tin định tuyến mới hơn và khi thông tin định tuyến có cùng thứ tự định tuyến nhưng giá trị thước đo định tuyến tốt hơn) Việc cập nhật như thế là không hiệu quả và sẽ làm tổn hao dung lượng đường truyền mạng Sẽ là tốt hơn nếu các trạm làm việc trì hoãn một khoảng thời gian nhất định, mong nhận được thông tin định tuyến tốt nhất, rồi mới quảng bá thông tin định tuyến có được

Vậy, sau khi nhận được thông tin định tuyến có chứa sự thay đổi về giá trị thước đo định tuyến, nếu trạm làm việc đó chờ thêm một khoảng thời gian, nó có thể nhận được thông tin định tuyến tốt hơn Khoảng thời gian chờ đợi để nhận được thông tin định tuyến tốt nhất, tính từ khi nhận được thông tin định tuyến đầu tiên có cùng một số thứ

tự định tuyến, gọi là thời gian chờ ổn định (settling-time) Dĩ nhiên, thời gian chờ ổn định sẽ có giá trị rất khác nhau Mỗi trạm làm việc sẽ theo dõi thời gian chờ ổn định trong quá khứ để tính ra thời gian chờ ổn định trung bình tương ứng với từng trạm làm việc đích trong mạng Để cho chắc chắn, thời gian mà một trạm làm việc trì hoãn quảng bá thông tin định tuyến có thể được lấy gấp 2 lần thời gian chờ ổn định trung bình Gọi khoảng thời gian này là thời gian trì hoãn quảng bá

Như vậy, khi một trạm làm việc nhận được thông tin định tuyến có số thứ tự lớn hơn, chứng tỏ thông tin đó mới hơn, nó sẽ dùng thông tin này để lập tức quyết định đường đi cho gói tin cần được gửi nhưng chưa vội quảng bá thông tin định tuyến này ngay Nói cách khác, thông tin định tuyến dùng để chuyển gói tin không phải lúc nào

Trang 22

cũng là thông tin dành để quảng bá Do đó, mỗi trạm làm việc sẽ lưu hai bảng định tuyến cho hai mục đích tương ứng

Hiện tượng mất liên kết

Trong mạng ad-hoc, khi các trạm làm việc di chuyển sẽ gây ra việc mất các liên kết Việc mất liên kết có thể được phát hiện nhờ vào giao thức ở lớp 2 (layer 2 protocol) của mô hình OSI Hoặc khi các trạm làm việc lân cận không thấy thông tin định tuyến được tiếp tục gửi quảng bá, chúng cũng sẽ coi là đã xảy ra mất liên kết Một liên kết bị mất (break) sẽ được đánh dấu bằng cách đặt giá trị thước đo định tuyến bằng ∞ (là một giá trị bất kỳ lớn hơn giá trị lớn nhất mà thuật toán quy ước) Khi một trạm làm việc A phát hiện ra liên kết tới trạm làm việc lân cận B bị mất thì bất kỳ đường đi nào từ A tới các trạm làm việc khác, mà trạm kế tiếp là B, cũng sẽ bị đánh dấu là mất kết nối, bằng cách đặt giá trị thước đo định tuyến bằng ∞

Destination Next Hop Hops Seq No

Hình 8 Hiện tượng mất liên kết

Bởi vì đây là những thay đổi đáng kể, thông tin định tuyến ngay lập tức được quảng

bá tới các trạm làm việc lân cận (và tiếp tục được quảng bá bởi các trạm làm việc lân cận đó) Không những thế, số thứ tự định tuyến cũng sẽ được thay đổi thành một số lẻ

Và, trong trường hợp này, thay vì được đưa ra bởi trạm làm việc đích, số thứ tự định tuyến sẽ được đưa ra bởi chính trạm làm việc phát hiện ra mất liên kết (Lưu ý rằng số thứ tự định tuyến thông thường được gán bởi trạm làm việc đích và mang giá trị chẵn) Khi trong bảng định tuyến của một trạm làm việc có một đường đi mang giá trị thước đo là ∞ (trường hợp mất kết nối), mà trạm làm việc này lại nhận được thông tin định tuyến có số thứ tự lớn hơn (chứng tỏ mới hơn) đồng thời giá trị thước đo định tuyến là một số xác định (số hợp lệ - không phải ∞) thì nó, ngay lập tức, sẽ cập nhật bảng định tuyến và quảng bá thông tin định tuyến mới nhận này, mà không cần phải thực hiện việc trì hoãn quảng bá Thông tin về đường đi mới (nếu phát hiện thêm các trạm làm việc mới) cũng sẽ được quảng bá tới các trạm làm việc lân cận ngay lập tức Trong khi đó, thông tin định tuyến mới về đường đi đã được ghi nhận trong bảng định tuyến, nhưng có giá trị thước đo định tuyến tốt hơn (nhỏ hơn) sẽ bị trì hoãn một khoảng thời gian bằng 2 lần thời gian chờ ổn định (thời gian trì hoãn quảng bá) tương

Trang 23

ứng với mỗi trạm làm việc đích, như đã nói ở trên, rồi mới được quảng bá, dù cũng được coi là thông tin có chứa thay đổi đáng kể

Ví dụ trong hình 9 sẽ minh họa thêm hoạt động của mạng ad-hoc sử dụng thuật toán định tuyến DSDV, trong đó, trạm làm việc C sẽ di chuyển xa khỏi B và đến vùng lân cận của G và H

Hình 9 Mạng ad-hoc với sự di chuyển của trạm làm việc

Ta chú ý đến trạm làm việc A Ban đầu, trước khi C di chuyển, bảng định tuyến của

A chứa đầy đủ các thông tin định tuyến tới mọi trạm làm việc trong mạng

Destination Next Hop Hops Seq No

Bảng định tuyến dành để quảng bá của trạm làm việc A sẽ như sau:

Destination Hops Seq No

Trang 24

Khi C di chuyển, B sẽ phát hiện việc mất liên kết với C Ngay lập tức nó thực hiện việc cập nhật tức thời bằng việc truyền đi gói tin thông báo mất kết nối với số thứ tự định tuyến lẻ và thước đo định tuyến đặt bằng ∞

Khi C di chuyển tới gần G và H, chúng ngay lập tức phát hiện ra và cập nhật thông tin định tuyến, rồi quảng bá tới E E nhận được thông tin cập nhật, thấy có sự thay đổi đáng kể, do vậy, ngay lập tức sẽ quảng bá tiếp đến A Tương tự, A lại tiếp tục quảng

bá lập tức thông tin định tuyến trên tới các trạm lân cận bằng phương thức cập nhật tức thời

Sau khi cập nhật, bảng định tuyến dành để chuyển tiếp các gói tin của A sẽ như sau:

Destination Next Hop Hops Seq No

Bảng định tuyến dành để quảng bá của A:

Destination Hops Seq No

2.1.3 Đánh giá

Bằng việc định tuyến trước, mỗi trạm làm việc trong mạng thường xuyên trao đổi thông tin định tuyến cho nhau nên thông tin định tuyến luôn sẵn sàng Mỗi khi một

Trang 25

trạm làm việc muốn gửi số liệu, nó có thể lấy ngay thông tin định tuyến đã lưu giữ trong bảng định tuyến để quyết định đường đi cho gói tin

Tuy nhiên, thuật toán DSDV nói riêng, và các thuật toán định tuyến trước nói chung, có các nhược điểm sau:

• Trong khi cấu trúc mạng thay đổi thường xuyên thì các thông tin về sự thay đổi này cần nhiều thời gian để có thể đến được tất cả các trạm làm việc trong mạng (mạng đạt trạng thái hội tụ - convergence) Nói cách khác, việc cập nhật thông tin định tuyến của toàn mạng là khá chậm Do vậy, có thể xảy ra hiện tượng thông tin định tuyến trong toàn mạng, tại một thời điểm nào đó, không thống nhất Khi các trạm làm việc di chuyển đến vị trí mới, thông tin định tuyến mà một trạm lưu giữ có thể không còn đúng nữa Điều này dẫn đến việc các gói tin

có thể bị gửi đi lòng vòng trên mạng (routing loop)

• Việc trao đổi bảng định tuyến giữa các trạm làm việc khiến cho lưu lượng của mạng tăng lên đáng kể, đặc biệt khi số lượng trạm làm việc trong mạng tăng lên với số lượng lớn Người ta tính toán rằng dữ liệu điều khiển trong mạng sử dụng thuật toán định tuyến DSDV có cỡ O(nP

2

) [3] Do vậy, DSDV chỉ thích hợp cho mạng ad-hoc có kích thước tương đối nhỏ

• DSDV đòi hỏi mỗi trạm làm việc trong mạng lưu giữ một bảng định tuyến chứa thông tin định tuyến tới tất cả các trạm làm việc khác trong mạng Điều này làm cho các trạm phải tiêu tốn một khoảng bộ nhớ và vượt quá nhu cầu của mỗi trạm làm việc, do nó ít khi cần dùng tới tất cả các thông tin đó

• Mặc dù toàn mạng tốn khá nhiều tài nguyên để cập nhật thông tin định tuyến do

sự di chuyển liên tục của các trạm làm việc, nhưng các thông tin đó phần lớn đều chưa kịp được sử dụng Lý do đơn giản vì khi thông tin định tuyến đến một trạm làm việc được sử dụng thì thông tin này đã được cập nhật nhiều lần Đây

Chúng ta sẽ xem xét một đại diện cho các thuật toán định tuyến theo yêu cầu: thuật toán định tuyến AODV Như đã biết, AODV là thuật toán được C Perkins phát triển

từ thuật toán DSDV [4], [5], [6], [12], [16]

Trang 26

2.2.2 Nguyên tắc hoạt động

Giống như nhiều thuật toán định tuyến theo yêu cầu khác, AODV sử dụng cách gửi quảng bá gói tin yêu cầu định tuyến lên toàn mạng để tìm đường tới trạm làm việc đích

2.2.2.1 Tìm đường

Việc tìm đường được một trạm làm việc thực hiện mỗi khi nó muốn truyền số liệu với một trạm làm việc khác, nhưng trong bảng định tuyến mà nó đang lưu giữ không chứa thông tin định tuyến tới trạm làm việc này

Khi muốn truyền số liệu, trạm làm việc nguồn sẽ khởi tạo quá trình tìm đường bằng việc quảng bá gói tin yêu cầu định tuyến RREQ (route request packet) tới các trạm làm việc lân cận

Gói tin yêu cầu định tuyến RREQ chứa các thông tin sau:

• Địa chỉ trạm làm việc nguồn (source_addr)

• Số thứ tự định tuyến của trạm làm việc nguồn (source_sequence_#)

• Số hiệu gói tin yêu cầu định tuyến (broadcast_id)

• Số thứ tự định tuyến của trạm làm việc đích (dest_sequence_#)

• Giá trị thước đo định tuyến (ở đây ta dùng số bước nhảy hop_cnt)

Cặp giá trị <source_addr, broadcast_id> sẽ xác định duy nhất một gói tin yêu cầu định tuyến RREQ Như vậy, mỗi trạm làm việc phải sử dụng hai bộ đếm, một dành để đánh số thứ tự định tuyến cho trạm làm việc (node sequence-number) và một dành để đánh dấu số hiệu gói tin yêu cầu định tuyến (broadcast_id) Mỗi khi một trạm làm việc muốn tìm một đường đi mới, nó sẽ tự động tăng giá trị số hiệu broadcast_id để đánh dấu gói tin yêu cầu định tuyến, rồi mới phát quảng bá gói tin đó lên mạng

Nếu một trạm làm việc nhận được gói tin yêu cầu định tuyến, và nó đang lưu giữ thông tin định tuyến đủ mới tới trạm đích, gói tin trả lời RREP sẽ được gửi lại cho trạm làm việc nguồn Ngược lại, nó sẽ tăng thêm giá trị thước đo định tuyến hop_cnt rồi tiếp tục quảng bá gói tin yêu cầu định tuyến sang các trạm làm việc lân cận

Như đã trình bày ở trên, ngoài số hiệu gói tin quảng bá broadcast_id, trong gói tin yêu cầu định tuyến còn chứa các thông tin khác, trong đó có số thứ tự định tuyến mới nhất của trạm làm việc đích mà trạm nguồn biết được (dest_sequence_#) Số thứ tự định tuyến này cho biết tính cập nhật của thông tin định tuyến tới trạm đích mà trạm nguồn đang cần Thông tin định tuyến mà một trạm định cung cấp cho trạm làm việc nguồn phải có số thứ tự định tuyến của trạm đích lớn hơn hoặc bằng số thứ tự tương ứng trong gói tin yêu cầu định tuyến

Trang 27

Nếu một trạm làm việc trung gian nào đó (không phải trạm đích) có lưu giữ thông tin định tuyến đến trạm đích, định gửi gói tin trả lời RREP về cho trạm làm việc nguồn, nó phải chắc chắn thông tin định tuyến mà nó đang lưu giữ còn giá trị bằng cách so sánh số thứ tự định tuyến của trạm đích lấy trong gói tin yêu cầu định tuyến với số thứ tự định tuyến của trạm đích trong thông tin mà nó lưu giữ Nếu số thứ tự định tuyến yêu cầu lớn hơn, trạm trung gian không được phép gửi lại trạm nguồn gói tin trả lời RREP mà thay vào đó phải tiếp tục quảng bá gói tin yêu cầu định tuyến RREQ tới các trạm làm việc lân cận Trường hợp ngược lại, số thứ tự định tuyến yêu cầu nhỏ hơn hoặc bằng số thứ tự định tuyến của trạm đích trong thông tin định tuyến

do trạm trung gian lưu giữ, trạm trung gian sẽ gửi gói tin trả lời RREP trở lại trạm nguồn theo phương thức gửi chỉ định (unicast) theo đường quay lại đã được thiết lập

trước đó (mời xem phần Thiết lập đường quay lại ngay ở sau) Dĩ nhiên, việc này chỉ

được thực hiện nếu như trạm làm việc trung gian chưa từng xử lý yêu cầu định tuyến này

Nếu một trạm làm việc không có thông tin định tuyến đang được yêu cầu hoặc thông tin định tuyến lưu giữ không đủ tính cập nhật thì trước khi tiếp tục quảng bá gói tin yêu cầu định tuyến RREQ nhận được sang các trạm làm việc lân cận, nó sẽ lưu giữ lại các thông tin sau:

• Địa chỉ trạm làm việc đích

• Địa chỉ trạm làm việc nguồn

• Số hiệu gói tin quảng bá (broadcast_id)

• Thời gian lưu giữ đường quay lại (expiration time)

• Số thứ tự định tuyến của trạm làm việc nguồn

Các thông tin này được sử dụng để phục vụ việc thiết lập đường quay lại (reverse path) và đường truyền tin (forward path) sau đó

Lưu ý rằng, một trạm làm việc có thể nhận được cùng một gói tin yêu cầu định tuyến nhiều lần từ các trạm làm việc lân cận của nó Bằng việc so sánh cặp giá trị

<source_addr, broadcast_id>, các máy trạm sẽ biết được nó đã từng nhận được gói tin yêu cầu định tuyến đó chưa Trong trường hợp phát hiện ra gói tin yêu cầu định tuyến vừa nhận được giống với một gói tin đã nhận trước đó, nó sẽ không quảng bá tiếp tới các trạm làm việc lân cận mà đơn giản là hủy bỏ gói tin yêu cầu định tuyến vừa nhận Đến một lúc nào đó, tất cả các trạm làm việc trong mạng đều sẽ nhận được gói tin yêu cầu định tuyến Một trong số chúng có thể sẽ biết đường đi tới trạm làm việc đích nên gói tin trả lời sẽ được gửi lại trạm nguồn Hoặc chính trạm làm việc đích, sau khi nhận được gói tin yêu cầu định tuyến, sẽ gửi lại gói tin trả lời định tuyến Ngược lại,

có nghĩa là trạm làm việc đích không có trên mạng hoặc nằm ngoài vùng có thể giao tiếp

Trang 28

Thiết lập đường quay lại

Mục đích của việc thiết lập đường quay lại (reverse path) là để bất kỳ một trạm làm việc nào trong mạng (có thể là trạm làm việc đích hoặc trạm trung chuyển) đều có thể gửi gói tin trả lời RREP theo phương thức gửi chỉ định (unicast) qua đường này về trạm làm việc nguồn, khi nó nhận được yêu cầu chuyển tiếp gói tin trả lời

Để thiết lập đường quay lại, mỗi trạm làm việc sẽ lưu địa chỉ của trạm làm việc lân cận mà từ đó, gói tin yêu cầu định tuyến được truyền tới sớm nhất (vì, như đã nêu trên, một trạm làm việc có thể nhận được cùng một gói tin yêu cầu định tuyến nhiều lần từ các trạm làm việc lân cận của nó) Như vậy, khi gói tin yêu cầu định tuyến RREQ được truyền quảng bá lên mạng thì đồng thời đường quay lại cũng tự động được thiết lập từ mỗi trạm làm việc trong mạng về tới trạm nguồn

Hình 10 Thiết lập đường quay lại

Hình 10 là một thí dụ minh họa về việc thiết lập đường quay lại trong quá trình định tuyến của trạm làm việc S Để xác định đường tới D, S quảng bá gói tin yêu cầu định tuyến tới trạm lân cận A A sẽ lưu lại địa chỉ của S và tiếp tục quảng bá gói tin trên tới

B và E Tương tự, B, E lại lưu địa chỉ của A rồi quảng bá tiếp tới các trạm làm việc lân

Trang 29

cận khác của chúng, tương ứng là C và F Như vậy, đến thời điểm này, các đường quay lại được thiết lập sẵn sàng cung cấp đường đi trở về S từ bất kỳ trạm làm việc nào trong số các trạm A, B, C, E, F Quá trình cứ thế tiếp tục cho tới khi tất cả các trạm làm việc trong mạng nhận được gói tin yêu cầu định tuyến do S gửi đi

Do mục đích của việc thiết lập đường quay lại chỉ nhằm để gói tin trả lời có thể được gửi về trạm làm việc nguồn nên các trạm làm việc chỉ cần lưu giữ đường quay lại trong một thời gian nhất định, đủ để gói tin yêu cầu định tuyến lan truyền ra khắp mạng và gói tin trả lời được truyền về đến trạm làm việc nguồn Các trạm làm việc sẽ căn cứ vào số thứ tự định tuyến mới nhất của trạm làm việc nguồn mà nó biết được và thời gian lưu trữ đường quay lại (expiration time) để xác định xem đường quay lại trạm làm việc nguồn có còn giá trị hay không

Thiết lập đường truyền số liệu

Như đã thấy, đồng thời với việc gói tin yêu cầu định tuyến được gửi tới trạm làm việc đích hoặc tới một trạm trung gian có thể cung cấp thông tin định tuyến đủ mới tới trạm đích, đường quay lại cũng được thiết lập Do vậy, gói tin trả lời RREP sẽ được gửi theo đường quay lại về trạm nguồn

Gói tin trả lời RREP có chứa các thông tin sau:

• Địa chỉ trạm làm việc nguồn

• Địa chỉ trạm làm việc đích

• Số thứ tự định tuyến của trạm làm việc đích

• Giá trị thước đo định tuyến

• Thời gian tồn tại của gói tin trả lời (lifetime)

Các trạm làm việc trên đường quay lại, trước khi chuyển tiếp gói tin trả lời RREP,

sẽ lưu lại địa chỉ trạm lân cận vừa truyền tới gói tin RREP; cập nhật lại thời gian lưu trữ trong bảng định tuyến thông tin định tuyến đến trạm làm việc nguồn và trạm làm việc đích, đồng thời, lưu lại số thứ tự định tuyến mới nhất của trạm đích Bằng việc lưu lại địa chỉ của các trạm lân cận đã gửi tới nó gói tin trả lời RREP tại các trạm làm việc trung gian, đường truyền số liệu (forward path) đã được thiết lập

Một trạm làm việc sẽ gửi gói tin trả lời RREP đầu tiên mà nó nhận được về trạm nguồn theo đường quay lại Nếu tiếp tục nhận được các gói tin trả lời khác thì nó sẽ kiểm tra số thứ tự định tuyến của trạm làm việc đích và giá trị thước đo định tuyến trong gói tin RREP, so sánh với các giá trị tương ứng trong gói tin RREP nhận được trước đó Nếu số thứ tự định tuyến của trạm đích trong gói tin RREP mới nhận được lớn hơn hoặc có cùng số thứ tự định tuyến mà giá trị thước đo định tuyến hop_cnt lại nhỏ hơn (chứng tỏ đường đi ngắn hơn) thì nó sẽ cập nhật lại thông tin định tuyến, và tiếp tục truyền gói tin trả lời RREP về cho trạm nguồn, đồng thời với việc cập nhật lại

Trang 30

thông tin về đường truyền số liệu mới cho bảng định tuyến của nó Trong các trường hợp còn lại, gói tin RREP sẽ bị loại bỏ Việc này làm giảm bớt số lượng gói tin RREP truyền về trạm làm việc nguồn trong khi vẫn đảm bảo thông tin định tuyến được cập nhật nhanh chóng, đồng thời tìm được đường đi ngắn nhất

Ngay sau khi nhận được gói tin trả lời đầu tiên, trạm làm việc nguồn có thể truyền

đi các gói số liệu Trong lúc truyền dữ liệu, nó vẫn tiếp tục cập nhật bảng định tuyến, nếu nhận được thông tin định tuyến tốt hơn từ các gói tin trả lời RREP sau đó

Các trạm làm việc không thuộc đường truyền số liệu, sau khoảng thời gian lưu trữ đường quay lại (expiration time), sẽ tự động xóa đi các thông tin về đường quay lại Hình 11 minh họa việc thiết lập đường truyền số liệu từ S tới D (đường liền nét) Sau khi gói tin yêu cầu định tuyến đạt tới trạm làm việc đích D, D gửi gói tin trả lời định tuyến theo đường quay lại (đường đứt nét) về S Đường truyền số liệu đồng thời được thiết lập từ S tới D

Hình 11 Thiết lập đường truyền số liệu

Trang 31

2.2.2.2 Quản lý thông tin định tuyến

Ngoài các thông tin như trạm làm việc đích, trạm kế tiếp, giá trị thước đo định tuyến, số thứ tự định tuyến của trạm làm việc đích, một số thông tin hữu ích khác cũng được lưu giữ trong bảng định tuyến, bao gồm thời hạn duy trì thông tin định tuyến, danh sách các trạm làm việc lân cận tích cực Cụ thể, các thông tin được lưu trong mỗi dòng định tuyến bao gồm:

• Địa chỉ trạm làm việc đích

• Địa chỉ trạm làm việc kế tiếp (next hop)

• Giá trị thước đo định tuyến (tính bằng số bước nhảy)

• Số thứ tự định tuyến của trạm làm việc đích

• Danh sách các trạm làm việc lân cận tích cực tương ứng

• Thời hạn duy trì thông tin định tuyến (route caching timeout)

Trước tiên, ta xem xét khái niệm “trạm làm việc lân cận tích cực” và “đường kết nối tích cực” bằng thí dụ minh họa trong hình 12

Hình 12 Đường kết nối tích cực

Trang 32

Ở đây, hai trạm S và B đều có nhu cầu truyền số liệu với trạm D trong khoảng thời

gian gần nhau Chúng đều đã xác định được đường đi tới D cùng chung đường qua

trạm F, và đang sử dụng các kết nối này cách thời điểm hiện tại không quá lâu (trong

khoảng thời gian active_timeout) Khi đó, các đường kết nối từ B và S tới D được gọi

là đường kết nối tích cực Đối với F, hai trạm C và E được coi là hai trạm lân cận tích

cực, tương ứng với trạm làm việc đích D, vì từ đó, F nhận được các gói số liệu truyền

tới D

Như vậy, trạm làm việc lân cận tích cực có thể là một trạm trung chuyển dữ liệu

(như C và E trong hình trên đối với F) cũng có thể chính là trạm nguồn phát các gói số

liệu (đối với C thì B là trạm làm việc lân cận tích cực)

Việc lưu giữ địa chỉ các trạm làm việc lân cận tích cực nhằm mục đích các trạm làm

việc trên đường kết nối tích cực được thông báo kịp thời khi có hiện tượng mất kết nối

tới trạm đích Chẳng hạn, nếu F phát hiện mất kết nối đến D, nó lập tức thông báo cho

C và E biết Quá trình được lặp lại để cuối cùng S và B biết được trạng thái kết nối

hiện thời và khởi tạo lại quá trình tìm đường đi mới

Bảng định tuyến của F có thể chứa dòng thông tin định tuyến đến trạm làm việc D

như sau:

Destination Next

Hop Metric Dest_Seq_No

Active Neighbours Time Out

Cũng giống như trong thuật toán định tuyến DSDV, mỗi dòng thông tin định tuyến

trong bảng định tuyến đều được đánh số thứ tự bởi trạm làm việc đích, nhằm tránh

hiện tượng gói tin bị gửi vòng quanh trên mạng - hiện tượng thường xảy ra do việc mất

kết nối khi các trạm làm việc di chuyển nhanh

Một tham số quan trọng khác được lưu trong bảng định tuyến là thời gian lưu giữ

thông tin định tuyến (route caching timeout) Đây là thời gian mà thông tin định tuyến

được coi là còn giá trị sử dụng Vượt quá thời gian trên, thông tin định tuyến bị coi là

không hợp lệ Mỗi khi thông tin định tuyến được sử dụng để gửi gói số liệu tới trạm

làm việc đích, giá trị này được cập nhật lại và đặt bằng thời gian “hiện tại” cộng thêm

một khoảng thời gian active_timeout

Liên quan đến đường quay lại, thời gian duy trì đường quay lại (expiration time)

được sử dụng để xóa bỏ thông tin về đường quay lại ở các trạm làm việc không nằm

trên đường kết nối đã được thiết lập giữa trạm đích với trạm nguồn Giá trị thời gian

Trang 33

duy trì đường quay lại phụ thuộc vào kích thước của mạng ad-hoc, sao cho đủ để gói tin yêu cầu định tuyến đạt được đến trạm làm việc đích, và sau đó, gói tin trả lời định tuyến được gửi trở về đến trạm làm việc nguồn Thông tin về đường quay lại cũng được lưu trữ như một dòng định tuyến thông thường Xem lại thí dụ trong hình 11, đường quay lại từ C qua B tới A, do không nằm trên đường kết nối tích cực nên sau một khoảng thời gian expiration time sẽ tự động được xóa đi

Khi một trạm làm việc nhận được một thông tin định tuyến mới, nó có thể cập nhật lại bảng định tuyến hoặc không, căn cứ vào kết quả so sánh số thứ tự định tuyến trong thông tin định tuyến nhận được với giá trị tương ứng trong thông tin định tuyến đã lưu trữ Thông tin định tuyến nào chứa số thứ tự định tuyến mới hơn sẽ được chọn Trường hợp số thứ tự định tuyến là như nhau, thông tin định tuyến nào có giá trị thước đo định tuyến nhỏ hơn (số bước nhảy ít hơn) sẽ được chọn

Nếu giá trị thước đo định tuyến là ∞, có nghĩa kết nối đã bị mất, dòng thông tin định tuyến tương ứng sẽ bị xóa đi

2.2.2.3 Duy trì đường truyền số liệu

Như đã nói ở trên, mỗi khi thông tin định tuyến trong bảng định tuyến được sử dụng

để gửi gói số liệu tới trạm làm việc đích, thời hạn duy trì thông tin định tuyến route caching timeout sẽ được cập nhật lại và đặt bằng thời gian “hiện tại” cộng thêm một khoảng thời gian active_timeout Nhưng trong quá trình truyền số liệu, các trạm làm việc có thể vẫn tiếp tục nhận được các gói tin trả lời định tuyến RREP và cập nhật lại thông tin định tuyến, nếu phát hiện có đường đi tốt hơn

Khi một trạm làm việc phát hiện mất kết nối với trạm kế tiếp, nó sẽ tự động gửi một gói tin báo lỗi RERR ngược lại phía các trạm làm việc nguồn, thông qua danh sách các trạm lân cận tích cực, để thông báo cho các trạm làm việc khác trong đường kết nối biết hiện tượng mất kết nối đến trạm đích đã xảy ra Trong gói tin báo lỗi RERR, số thứ tự định tuyến của trạm làm việc đích được tăng thêm 1 (biểu thị thông tin định tuyến mới hơn) và giá trị thước đo định tuyến được đặt bằng ∞ (biểu thị việc mất kết nối) Gói tin này được các trạm làm việc tiếp tục truyền tới các trạm lân cận tích cực của chúng cho tới khi đến được các trạm làm việc nguồn Do các đường kết nối tích cực của thuật toán AODV là không chứa chu trình và số lượng trạm làm việc trong mạng là có hạn, nên sau một khoảng thời gian nhất định, việc truyền gói tin báo lỗi RERR này sẽ kết thúc

Khi nhận được thông báo mất kết nối, trạm làm việc nguồn có thể thực hiện lại quá trình định tuyến, nếu như nó vẫn cần kết nối đến trạm làm việc đích Khi đó, trạm làm việc nguồn sẽ gửi quảng bá gói tin yêu cầu định tuyến RREQ với số thứ tự định tuyến của trạm đích được tăng thêm 1 nhằm tránh việc các trạm làm việc khác trong mạng chưa kịp cập nhật bảng định tuyến gửi lại thông tin định tuyến cũ

Trang 34

Hình 13 Hiện tượng mất kết nối

Việc di chuyển của các trạm làm việc không thuộc đường kết nối tích cực sẽ không làm ảnh hưởng đến quá trình truyền số liệu, do vậy sẽ không gây ra bất kỳ hành động cập nhật thông tin định tuyến nào trên mạng

2.2.2.4 Quản lý kết nối với các trạm làm việc lân cận

Mỗi trạm làm việc có thể kiểm tra kết nối với các trạm lân cận của nó theo một trong hai cách: dựa vào các gói tin gửi quảng bá từ các trạm lân cận hoặc sử dụng các gói tin hello Mỗi khi nhận được gói tin quảng bá từ các trạm lân cận, trạm làm việc sẽ cập nhật lại danh sách các trạm lân cận Trường hợp không nhận được các gói tin quảng bá sau một khoảng thời gian hello_interval, nó sẽ gửi đi gói tin hello, là một dạng đặc biệt của gói tin RREP, trong đó có chứa thông tin về địa chỉ và số thứ tự định tuyến của nó, nhưng số thứ tự định tuyến này không thay đổi trong các gói tin hello Khi nhận được gói tin hello, trạm làm việc cũng sẽ cập nhật lại danh sách các trạm lân cận của mình

Gói tin hello chỉ được dùng để gửi cho các trạm làm việc lân cận, do vậy, để tránh

bị gửi đi xa hơn, giá trị thời gian tồn tại (time to live - TTL) trong gói tin hello được

Trang 35

đặt bằng 1 Trạm làm việc nào nhận được gói tin hello sẽ tự cập nhật lại thông tin định tuyến đang lưu giữ để đảm bảo thông tin về các trạm làm việc lân cận

Kết nối với các trạm làm việc lân cận được coi là có thay đổi khi nhận được gói tin hello từ một trạm làm việc mới, hoặc liên tiếp không nhận được một số (chẳng hạn 2 hay 3 – do người thiết kế thuật toán lựa chọn) gói tin hello từ một trạm làm việc lân cận Việc không nhận được gói tin hello từ các trạm làm việc không tham gia vào đường truyền số liệu (inactive node) không ảnh hưởng đến quá trình truyền số liệu Ngược lại, nếu không nhận được gói tin hello từ trạm làm việc kết tiếp (next hop) trong đường kết nối tích cực, trạm làm việc hiện thời phải gửi gói tin thông báo mất kết nối về phía các trạm làm việc nguồn, như đã đề cập ở phần trên

Việc sử dụng gói tin hello trong quản lý kết nối với các trạm làm việc lân cận cũng đảm bảo chỉ các kết nối đối xứng được sử dụng Để thực hiện việc này, trạm làm việc chỉ cần đưa vào gói tin hello sẽ gửi đi danh sách các trạm lân cận mà từ đó nó mới nhận được các gói tin hello khác Các trạm làm việc chỉ đưa một trạm vào danh sách các trạm làm việc lân cận của nó nếu trong gói tin hello mà nó nhận được từ trạm này

có chứa địa chỉ của chính nó Chẳng hạn, trạm làm việc A trong hình 14 nhận được gói tin hello từ B Nhận ra có địa chỉ của mình trong danh sách các trạm mà B có thể

“nghe” được, A đưa B vào danh sách các trạm làm việc lân cận của mình

Hình 14 Đảm bảo kết nối đối xứng dựa vào gói tin hello 2.2.3 Đánh giá

Như vậy thuật toán định tuyến theo yêu cầu nói chung, thuật toán AODV nói riêng, khắc phục được các nhược điểm của thuật toán định tuyến trước Cụ thể là:

• Các trạm làm việc không phải tiêu tốn bộ nhớ cho việc lưu giữ thông tin định tuyến của toàn mạng Chúng chỉ phải lưu giữ thông tin định tuyến đến các trạm làm việc mà chúng có nhu cầu trao đổi số liệu

• Việc định tuyến chỉ thực hiện khi có nhu cầu truyền số liệu, khiến cho lưu lượng các gói tin trên mạng giảm bớt vì các trạm làm việc không phải định kỳ gửi quảng bá bảng định tuyến của chúng, đồng thời, giảm bớt sự lãng phí do không có các thông tin định tuyến dư thừa (thông tin định tuyến không được sử dụng, như trong trường hợp của các thuật toán định tuyến trước)

Trang 36

• Việc trạm làm việc nguồn sử dụng số hiệu định tuyến của trạm làm việc đích trong quá trình tìm đường đi làm cho thông tin định tuyến mang tính cập nhật, giảm thiểu hiện tượng gói tin bị gửi vòng quanh trên mạng (routing loop)

AODV là thuật toán định tuyến theo yêu cầu thuần túy Ngoài việc không phải định

kỳ quảng bá thông tin định tuyến như trong các thuật toán định tuyến trước, các trạm làm việc không nằm trên đường kết nối tích cực cũng sẽ không phải lưu thông tin định tuyến Chúng không phải tìm đường đi và lưu giữ thông tin định tuyến tới bất kỳ tạm làm việc nào cho đến khi có nhu cầu trao đổi thông tin với một trạm làm việc khác hoặc phải trung chuyển dữ liệu cho các trạm làm việc khác

Nhược điểm lớn nhất, không thể tránh được, của các thuật toán định tuyến theo yêu cầu là thời gian trễ trong việc truyền dữ liệu Do không lưu sẵn các thông tin định tuyến, mỗi khi cần truyền số liệu, các trạm làm việc phải mất một khoảng thời gian cho việc tìm đường đi đến trạm làm việc đích mong muốn Độ lớn của khoảng thời gian này tùy thuộc vào kích thước của mạng và khoảng cách giữa trạm làm việc nguồn với trạm làm việc đích Cho dù thuật toán AODV có cơ chế để giảm bớt thời gian trễ, bằng việc sử dụng thông tin định tuyến của một trạm làm việc trung gian đã biết đường đi đến trạm làm việc đích, thì cũng khó tránh khỏi việc một trạm làm việc nào

đó phải đợi một khoảng thời gian dài trước khi truyền được dữ liệu

Một nhược điểm nữa của các thuật toán định tuyến theo yêu cầu là, mặc dù tránh được việc định kỳ gửi quảng bá bảng định tuyến, nhưng cách thức tìm đường bằng việc gửi quảng bá gói tin yêu cầu định tuyến sẽ khiến cho toàn mạng lan tràn các gói tin yêu cầu định tuyến này

Thuật toán AODV cũng đòi hỏi đường truyền giữa các trạm làm việc lân cận là đối xứng, tức là chúng phải nhận được tín hiệu quảng bá của nhau Vì để thiết lập đường truyền số liệu, gói tin trả lời định tuyến sẽ được gửi trở lại trạm làm việc nguồn theo đường quay lại đã thiết lập trong quá trình quảng bá gói tin yêu cầu định tuyến

2.3 Thuật toán lai

Như đã nhận xét trong phần đánh giá của hai loại thuật toán kể trên, chúng đều có những ưu, nhược điểm riêng mà nếu đem sử dụng cho một mạng ad-hoc có kích thước lớn và có độ biến động cao (các trạm làm việc di chuyển thường xuyên với tốc độ cao) thì đều không phát huy được hiệu quả Do vậy, người ta đề xuất thuật toán định tuyến theo vùng (ZRP - Zone Routing Protocol), lai giữa hai thuật toán kể trên, nhằm hạn chế bớt các nhược điểm và phát huy ưu điểm của từng loại thuật toán Luận văn sẽ trình bày sâu về thuật toán định tuyến theo vùng ZRP trong chương 3

Trang 37

Chương 3 Thuật toán định tuyến theo vùng ZRP

3.1 Giới thiệu chung

3.1.1 Tổng quát

Thuật toán định tuyến theo vùng ZRP (Zone Routing Protocol) là thuật toán kết hợp giữa thuật toán định tuyến trước với kỹ thuật định tuyến theo yêu cầu Hình 15 minh họa các thành phần của thuật toán ZRP và mối quan hệ giữa chúng

Nhằm hạn chế nhược điểm của thuật toán định tuyến trước, việc quảng bá thông tin định tuyến sẽ được thực hiện trong từng phạm vi nhỏ, gọi là vùng định tuyến (routing zone) và được thực hiện bởi thành phần định tuyến nội vùng IARP (Intrazone Routing Protocol) Việc tìm đường đi tới các trạm làm việc ngoài vùng định tuyến được thực hiện theo yêu cầu, do thành phần định tuyến liên vùng IERP (Interzone Routing Protocol) đảm trách, với sự hỗ trợ của giải pháp truy vấn ngoại biên BRP (Bordercast Resolution Protocol)

IERP và BRP đều căn cứ vào dữ liệu được cung cấp bởi IARP, trong khi IARP sử dụng chức năng phát hiện các trạm làm việc lân cận NDP (Neighbor Discovery Protocol) cung cấp bởi tầng 2 (MAC layer) để xác định các liên kết nội vùng

Hình 15 Các thành phần của thuật toán định tuyến vùng ZRP

Trong hình 15, thông tin trao đổi giữa các thành phần (inter-process communication) được biểu diễn bằng các mũi tên đứt nét Các mũi tên liền nét thể hiện dòng dữ liệu (Packet Flow)

Để tìm hiểu kỹ, trước tiên chúng ta hãy xem xét khái niệm vùng định tuyến

Trang 38

3.1.2 Vùng định tuyến

Vùng định tuyến (routing zone) là phạm vi tương ứng với mỗi trạm làm việc Nói

vùng định tuyến bán kính r của trạm làm việc S là tập hợp các trạm làm việc mà

khoảng cách của chúng đến trạm làm việc S (tính theo số bước nhảy) nhỏ hơn hoặc bằng r

Hình 16 minh họa vùng định tuyến của trạm làm việc S với bán kính bằng 2 Trong hình vẽ, vùng định tuyến được biểu diễn là phần trong của vòng tròn bao quanh S, gồm các trạm làm việc A, B, C, D (cách S 1 bước nhảy) và E, F, G, H (cách S 2 bước nhảy)

Chú ý rằng, khoảng cách được tính bằng số bước nhảy (không phải khoảng cách vật lý), do vậy, trong thực tế, vùng định tuyến không phải là một hình tròn, miễn là nó bao gồm các trạm làm việc cách xa S không quá r bước nhảy (r=2 trong trường hợp này)

Hình 16 Vùng định tuyến tương ứng với trạm làm việc S có bán kính r = 2

Ở đây, ta cần lưu ý là một vùng định tuyến luôn luôn tương ứng với một trạm làm việc Do vậy hai trạm làm việc khác nhau có vùng định tuyến khác nhau Các vùng định tuyến của các trạm làm việc khác nhau có thể chồng chéo lên nhau (overlap) Hình 17 là một ví dụ, trong đó vùng định tuyến của S bao gồm các trạm làm việc A, B,

C, D, E, F, G, H và S (thuộc vòng tròn đứt nét bên trên); còn vùng định tuyến của C bao gồm các trạm làm việc A, B, C, D, G, H, J và S Như vậy có rất nhiều trạm làm việc cùng thuộc cả hai vùng định tuyến

Ngày đăng: 03/08/2015, 18:08

HÌNH ẢNH LIÊN QUAN

Hình 1. Mạng máy tính kết nối không dây với 2 access point - Phân tích đánh giá hiệu suất hoạt động của giao thức định tuyến theo vùng ZRP trong mạng ad hoc bằng phương pháp mô phỏng máy tính
Hình 1. Mạng máy tính kết nối không dây với 2 access point (Trang 9)
Hình 3. Ứng dụng rộng rãi của mạng ad-hoc trong cuộc sống - Phân tích đánh giá hiệu suất hoạt động của giao thức định tuyến theo vùng ZRP trong mạng ad hoc bằng phương pháp mô phỏng máy tính
Hình 3. Ứng dụng rộng rãi của mạng ad-hoc trong cuộc sống (Trang 11)
Hình 5. Thuật toán phân phối Bellman-Ford (Distance Vector) - Phân tích đánh giá hiệu suất hoạt động của giao thức định tuyến theo vùng ZRP trong mạng ad hoc bằng phương pháp mô phỏng máy tính
Hình 5. Thuật toán phân phối Bellman-Ford (Distance Vector) (Trang 17)
Hình 7. Trạm làm việc được cung cấp hai thông tin định tuyến khác nhau - Phân tích đánh giá hiệu suất hoạt động của giao thức định tuyến theo vùng ZRP trong mạng ad hoc bằng phương pháp mô phỏng máy tính
Hình 7. Trạm làm việc được cung cấp hai thông tin định tuyến khác nhau (Trang 21)
Hình 12. Đường kết nối tích cực - Phân tích đánh giá hiệu suất hoạt động của giao thức định tuyến theo vùng ZRP trong mạng ad hoc bằng phương pháp mô phỏng máy tính
Hình 12. Đường kết nối tích cực (Trang 31)
Hình 13. Hiện tượng mất kết nối - Phân tích đánh giá hiệu suất hoạt động của giao thức định tuyến theo vùng ZRP trong mạng ad hoc bằng phương pháp mô phỏng máy tính
Hình 13. Hiện tượng mất kết nối (Trang 34)
Hình 15. Các thành phần của thuật toán định tuyến vùng ZRP - Phân tích đánh giá hiệu suất hoạt động của giao thức định tuyến theo vùng ZRP trong mạng ad hoc bằng phương pháp mô phỏng máy tính
Hình 15. Các thành phần của thuật toán định tuyến vùng ZRP (Trang 37)
Hình 17. Sự chồng chéo của các vùng định tuyến - Phân tích đánh giá hiệu suất hoạt động của giao thức định tuyến theo vùng ZRP trong mạng ad hoc bằng phương pháp mô phỏng máy tính
Hình 17. Sự chồng chéo của các vùng định tuyến (Trang 39)
Hình 25. Truy vấn ngoại biên chọn lọc - Phân tích đánh giá hiệu suất hoạt động của giao thức định tuyến theo vùng ZRP trong mạng ad hoc bằng phương pháp mô phỏng máy tính
Hình 25. Truy vấn ngoại biên chọn lọc (Trang 50)
Hình 26. Trạm làm việc nguồn S yêu cầu thông tin định tuyến - Phân tích đánh giá hiệu suất hoạt động của giao thức định tuyến theo vùng ZRP trong mạng ad hoc bằng phương pháp mô phỏng máy tính
Hình 26. Trạm làm việc nguồn S yêu cầu thông tin định tuyến (Trang 52)
Hình 28. Trạm làm việc J tiếp tục quá trình truy vấn định tuyến - Phân tích đánh giá hiệu suất hoạt động của giao thức định tuyến theo vùng ZRP trong mạng ad hoc bằng phương pháp mô phỏng máy tính
Hình 28. Trạm làm việc J tiếp tục quá trình truy vấn định tuyến (Trang 53)
Hình 34. Lưu lượng gói tin truyền trên mạng có tính di động cao - Phân tích đánh giá hiệu suất hoạt động của giao thức định tuyến theo vùng ZRP trong mạng ad hoc bằng phương pháp mô phỏng máy tính
Hình 34. Lưu lượng gói tin truyền trên mạng có tính di động cao (Trang 60)
Hình 36. Số lượng gói tin gửi thành công - Phân tích đánh giá hiệu suất hoạt động của giao thức định tuyến theo vùng ZRP trong mạng ad hoc bằng phương pháp mô phỏng máy tính
Hình 36. Số lượng gói tin gửi thành công (Trang 61)
Hình 37. Số lượng ít gói tin yêu cầu định tuyến được gửi đi - Phân tích đánh giá hiệu suất hoạt động của giao thức định tuyến theo vùng ZRP trong mạng ad hoc bằng phương pháp mô phỏng máy tính
Hình 37. Số lượng ít gói tin yêu cầu định tuyến được gửi đi (Trang 61)
Hình 47. Hiển thị và trích xuất dữ liệu bằng Analyzer - Phân tích đánh giá hiệu suất hoạt động của giao thức định tuyến theo vùng ZRP trong mạng ad hoc bằng phương pháp mô phỏng máy tính
Hình 47. Hiển thị và trích xuất dữ liệu bằng Analyzer (Trang 76)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w