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

(LUẬN văn THẠC sĩ) định tuyến có đảm bảo chất lượng dịch vụ trong mạng manet luận văn ths công nghệ thông tin 60 48 15

72 3 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

Tiêu đề Định Tuyến Có Đảm Bảo Chất Lượng Dịch Vụ Trong Mạng MANET
Tác giả Nguyễn Thành Trung
Người hướng dẫn PGS.TS. Nguyễn Đình Việt
Trường học Đại học Quốc gia Hà Nội
Chuyên ngành Công nghệ thông tin
Thể loại luận văn thạc sĩ
Năm xuất bản 2015
Thành phố Hà Nội
Định dạng
Số trang 72
Dung lượng 2,04 MB

Cấu trúc

  • CHƯƠNG 1: GIỚI THIỆU CHUNG (10)
    • 1.1 Mạng MANET (10)
      • 1.1.1 Sự phát triển và các ứng dụng trong mạng MANET (10)
      • 1.1.2 Các đặc điểm của mạng MANET (11)
    • 1.2 Các vấn đề cần giải quyết (12)
      • 1.2.1 Định tuyến trong mạng MANET (12)
      • 1.2.2 Vấn đề tiết kiệm năng lượng (13)
      • 1.2.3 Vấn đề đảm bảo chất lượng dịch vụ (0)
        • 1.2.3.1 Giới thiệu (15)
        • 1.2.3.2 Tham số đặc trưng QoS (0)
    • 1.3 Mục tiêu nghiên cứu luận văn (15)
  • CHƯƠNG 2: MỘT SỐ GIAO THỨC ĐỊNH TUYẾN TRONG MANET (17)
    • 2.1 Giao thức DSDV (Destination – Sequenced Distance – Vector) (17)
    • 2.2 Giao thức AODV (19)
      • 2.2.1 Tổng quan về giao thức AODV (19)
      • 2.2.2 Cơ chế hoạt động (20)
        • 2.2.2.1 Tiến trình Discovery (20)
        • 2.2.2.2 Tạo Route Request (21)
        • 2.2.2.3 Chuyển tiếp Route Request (22)
        • 2.2.2.4 Tạo Route Reply (23)
        • 2.2.2.5 Chuyển tiếp Route Relay (24)
      • 2.2.3 Quản lý cục bộ (24)
      • 2.2.4 Duy trì đường đi (25)
    • 2.3 Phân tích giao thức AODV (26)
      • 2.3.1 Modified AODV (MAODV) (26)
        • 2.3.1.1 Giới thiệu (26)
        • 2.3.1.2 Giao thức MAODV (Modified AODV) (27)
  • CHƯƠNG 3: BỘ MÔ PHỎNG MẠNG NS-2 VÀ MỘT SỐ CÔNG CỤ PHÂN TÍCH SỐ LIỆU MÔ PHỎNG (29)
    • 3.1 Tổng quan NS-2 (29)
    • 3.2 Đại cương về NS-2 (30)
      • 3.2.1 Các chức năng mô phỏng của NS-2 (30)
      • 3.2.2 Các thành phần của NS (30)
      • 3.2.3 Kiến trúc của NS-2 (31)
    • 3.3 Các mô hình chuyển động của các nút mạng được NS-2 hỗ trợ (0)
      • 3.3.1 Mô hình Random Waypoint (38)
      • 3.3.2 Mô hình Random Walk (39)
    • 3.4 Công cụ để phân tích và biểu diễn kết quả mô phỏng (40)
      • 3.4.1 Perl (40)
      • 3.4.2 GNUPLOT (41)
    • 3.5 Thiết lập mạng mô phỏng MANET (42)
      • 3.5.1 Thiết lập tô-pô mạng (42)
      • 3.5.2 Thiết lập tham số của mô hình chuyển động của các nút mạng và thời gian mô phỏng (44)
      • 3.5.3 Thiết lập các nguồn sinh lưu lượng đưa vào mạng (45)
      • 3.5.4 Lựa chọn thời gian mô phỏng (45)
  • CHƯƠNG 4: MÔ PHỎNG (47)
    • 4.1 Các độ đo hiệu năng được dùng trong luận văn (0)
    • 4.2 Thực nghiệm mô phỏng (48)
      • 4.2.1 Thiết lập giá trị cho các thông số mô phỏng (48)
      • 4.2.2 Xây dựng và thi hành chương trình mô phỏng (49)
    • 4.3 Phân tích số liệumô phỏng và đánh giá, so sánh các giao thức định tuyến AODV, DSDV (50)
      • 4.3.1 Kết quả thực hiện (50)
        • 4.3.1.1 Đánh giá, so sánh tỷ lệ phân phát gói tin thành công theo tốc độ chuyển động tăng dần của các nút mạng (50)
        • 4.3.1.2 Đánh giá, so sánh trễ đầu cuối trung bìnhtheo tốc độ chuyển động tăng dần của các nút mạng 52 (52)
        • 4.3.1.3 Đánh giá, so sánh thông lượng đầu cuốitheo tốc độ chuyển động tăng dần của các nút mạng 54 (0)
        • 4.3.1.4 Đánh giá, so sánh tải định tuyến chuẩn hóa theo tốc độ chuyển động tăng dần của các nút mạng 57 (57)
      • 4.3.2 Đánh giá hiệu năng hai giao thức AODV, DSDV (59)
  • CHƯƠNG 5: KẾT LUẬN VÀ HƯỚNG NGHIÊN CỨU (61)
  • TÀI LIỆU THAM KHẢO (63)
  • PHỤ LỤC (64)
    • 1. Chương trình mô phỏng mạng Adhoc (64)
    • 2. Đoạn mã Perl để phân tích tệp vết, tính thời gian trễ end-to-end trung bình (67)
    • 3. Đoạn mã Perl để phân tích tệp vết, tính chi phí định tuyến chuẩn hóa (68)
    • 4. Đoạn mã Perl để phân tích tệp vết, tính tỉ lệ phân phát gói tin thành công (69)
    • 5. Đoạn mã Perl để phân tích tệp vết, tính thông lượng trung bình (0)

Nội dung

GIỚI THIỆU CHUNG

Mạng MANET

1.1.1 Sự phát triển và các ứng dụng trong mạng MANET

Mạng di động đặc biệt MANET (Mobile Adhoc Network) là một mạng tự cấu hình, cho phép các nút di động kết nối qua liên kết không dây, tạo ra một mạng độc lập không phụ thuộc vào cơ sở hạ tầng Các thiết bị trong mạng có khả năng di chuyển tự do theo mọi hướng, dẫn đến sự thay đổi liên tục trong các kết nối với các thiết bị khác.

Nguyên lý hoạt động của mạng Adhoc được phát triển dựa trên nguyên lý của mạng ALOHA, ra đời từ năm 1968 Mặc dù trong mạng ALOHA, các trạm là cố định, nhưng giao thức ALOHA cho phép quản lý truy cập kênh truyền theo cách phân tán Điều này đã tạo ra nền tảng lý thuyết quan trọng cho việc phát triển kỹ thuật truy cập kênh phân tán trong mạng Adhoc.

Vào năm 1973, tổ chức DARPA đã khởi động dự án mạng vô tuyến gói tin PRnet, đánh dấu sự ra đời của mạng vô tuyến gói tin đa chặng đầu tiên Mạng này cho phép các nút kết nối hợp tác để truyền dữ liệu đến một nút ở xa thông qua các nút trung gian PRnet cung cấp cơ chế quản lý hoạt động hiệu quả, cả theo cách tập trung lẫn phân tán.

Vào năm 1983, mạng SURAN (Surviable Radio Network) đã được đề xuất nhằm mở rộng quy mô mạng Hiện nay, mạng MANET đã được tổ chức IEEE chuẩn hóa trong tiêu chuẩn 802.11, phục vụ cho nhiều ứng dụng khác nhau.

Mạng Adhoc đóng vai trò quan trọng trong lĩnh vực quân sự, đặc biệt trong các tình huống chiến đấu khốc liệt khi cơ sở hạ tầng mạng bị phá hủy Với khả năng hoạt động phi tập trung và không phụ thuộc vào cơ sở hạ tầng, mạng Adhoc trở thành lựa chọn hàng đầu cho việc truyền thông nhanh chóng giữa các thiết bị.

Trong môi trường trường học, việc thiết lập các mạng Adhoc tại lớp học, thư viện và sân trường giúp kết nối nhanh chóng các thiết bị di động như laptop và smartphone Điều này tạo điều kiện thuận lợi cho sinh viên và giáo viên trong việc trao đổi tài liệu một cách hiệu quả thông qua mạng Adhoc.

Tại nhà, bạn có thể nhanh chóng thiết lập mạng Adhoc để kết nối các thiết bị di động, giúp bạn di chuyển tự do mà vẫn duy trì kết nối và truyền tải dữ liệu hiệu quả.

Trong tương lai, khi các thiết bị điện tử được trang bị giao tiếp không dây, mạng Adhoc sẽ trở thành giải pháp lý tưởng để kết nối và tạo thành một hệ thống thông minh, cho phép các thiết bị trao đổi thông tin một cách hiệu quả.

1.1.2 Các đặc điểm của mạng MANET

Mỗi nút di động trong mạng MANET có đặc điểm riêng về nguồn năng lượng và bộ phận thu phát sóng Chúng có khả năng di chuyển theo nhiều hướng với tốc độ khác nhau, từ đó tạo nên những đặc điểm nổi bật của mạng MANET.

Cấu hình mạng động liên tục thay đổi theo mức độ di chuyển của các nút mạng, dẫn đến việc kết nối giữa chúng có thể bị gián đoạn thường xuyên Do đó, việc xác định các tuyến đường cần được thực hiện thường xuyên hơn, đồng thời khả năng mất gói tin cũng tăng cao do việc xác định tuyến không kịp thời.

Khoảng cách sóng ngắn trong các thiết bị di động rất hạn chế, dẫn đến việc truyền thông trong mạng thường phải trải qua nhiều chặng (multihop) để đảm bảo độ tin cậy.

Hạn chế năng lượng là một yếu tố quan trọng trong mạng di động, đặc biệt là trong mạng MANET, nơi mỗi nút không chỉ là một hệ thống đầu cuối mà còn là một bộ định tuyến Việc tiết kiệm năng lượng trở nên cần thiết hơn bao giờ hết, vì mỗi nút cần tiêu tốn nhiều năng lượng hơn để chuyển tiếp các gói tin cho các nút khác trong mạng.

Mạng MANET có đặc điểm bảo mật yếu, do việc truyền sóng qua môi trường không dây dễ bị nghe lén, giả mạo và tấn công từ chối dịch vụ (DoS).

Băng thông hạn chế là một vấn đề phổ biến trong các liên kết không dây, khi chúng thường có băng thông thấp hơn so với đường truyền cáp Những kết nối này còn chịu ảnh hưởng từ nhiễu, suy giảm tín hiệu, hiệu ứng truyền đa đường và các điều kiện giao thoa, dẫn đến hiệu suất truyền tải không ổn định.

Việc đảm bảo chất lượng dịch vụ (QoS) trong mạng MANET là một thách thức lớn, đặc biệt khi phân phối lưu lượng mạng đa phương tiện QoS bao gồm nhiều yếu tố như thông lượng, tỷ lệ mất gói tin, độ trễ và độ biến động của độ trễ Với cấu hình mạng thường xuyên thay đổi và băng thông hạn chế, việc duy trì chất lượng dịch vụ trở nên khó khăn hơn bao giờ hết.

Các vấn đề cần giải quyết

Định tuyến mạng là quá trình xác định đường đi từ nguồn đến đích trong hệ thống mạng, với giao thức định tuyến đảm nhiệm việc lựa chọn đường cho các cặp nguồn-đích và phân phối gói tin chính xác Trong mạng MANET, việc truyền thông dựa vào các đường đi đa chặng, làm cho định tuyến gói tin trở thành một hoạt động thiết yếu Khác với các mạng cố định có cấu hình ổn định, mạng Adhoc gặp phải nhiều thách thức do tính chất không dây và động Do đó, các giao thức định tuyến được thiết kế cho mạng cố định thường không hiệu quả hoặc không thể áp dụng trong mạng Adhoc, tạo ra một bài toán khó khăn trong việc phát triển giao thức định tuyến phù hợp.

Do đó, việc thiết kế các giao thức định tuyến trong mạng Adhoc thường xem xét một số các yếu tố sau đây [5]:

Hoạt động phân tán là một cách tiếp cận hiệu quả hơn so với phương pháp tập trung, vì việc tập hợp thông tin trạng thái mạng hiện tại và tính toán các tuyến có thể mất nhiều thời gian Trong khoảng thời gian đó, cấu hình mạng có thể thay đổi, khiến cho thông tin định tuyến mà các nút nhận được trở nên không còn giá trị.

Không có lặp định tuyến là hiện tượng khi một số gói tin quay vòng trong mạng trong một khoảng thời gian nhất định Để khắc phục tình trạng này, một giải pháp hiệu quả là áp dụng giá trị thời gian quá hạn cho các gói tin.

Tính toán đường truyền dựa trên yêu cầu giúp tối ưu hóa quá trình định tuyến trong mạng Thay vì duy trì định tuyến đến tất cả các nút liên tục, phương pháp này chỉ tìm đường khi có yêu cầu truyền từ một nút đến nút khác Mục tiêu chính là tiết kiệm năng lượng và băng thông, mặc dù có thể dẫn đến độ trễ tăng lên do thời gian cần thiết để phát hiện đường.

Tính toán đường trước khi có yêu cầu truyền sẽ giúp giảm độ trễ phân phát gói tin, đặc biệt khi cần độ trễ định tuyến nhỏ và băng thông cùng các tài nguyên năng lượng cho phép.

Giao thức định tuyến mạng Adhoc dễ bị tấn công qua các hình thức như xâm nhập truyền thông, phát lại, và thay đổi tiêu đề gói tin Để bảo vệ tính toàn vẹn của giao thức, cần áp dụng các phương pháp bảo mật phù hợp nhằm ngăn chặn việc sửa đổi hoạt động của nó.

Hoạt động nghỉ trong giao thức định tuyến cần thiết phải có cơ chế bảo tồn năng lượng cho các nút khi không có yêu cầu truyền dữ liệu hoặc không thực hiện nhiệm vụ chuyển tiếp gói tin cho các nút khác.

Giao thức định tuyến đa chặng trong mạng Adhoc cần hỗ trợ liên kết đơn hướng, cho phép tuyến đường từ nút nguồn đến nút đích và ngược lại không hoàn toàn trùng khớp Điều này giúp tối ưu hóa quá trình truyền tải dữ liệu trong môi trường mạng không dây.

1.2.2 Vấn đề tiết kiệm năng lƣợng Để thiết lập các tuyến đường giữa các nút, một giao thức định tuyến hiệu quả là cần thiết kế để việc khám phá đường trong mạng MANET Năng lượng của nút là một trong những tiêu chí thiết kế quan trọng cho mạng MANET do cấu trúc liên kết năng động của mạng MANET Thời gian hoạt động của các nút di động bị hạn chế bởi dung lƣợng pin của chúng Khi một nút di động bị hết năng lƣợng, không những chính nút đó ngưng làm việc, mà còn làm đứt tất cả các kết nối đa chặng đi qua nó, làm ảnh hưởng đến hiệu suất của mạng do phải xây dựng lại các tuyến đường bị lỗi Việc xây dựng các tuyến đường mới hay khôi phục các tuyến đường bị lỗi sẽ cần đến việc gửi, nhận và xử lý nhiều gói tin và làm tiêu hao năng lƣợng và do đó làm tuổi thọ của mạng giảm bớt Một nút di động tiêu thụ năng lƣợng pin của nó không chỉ khi chủ động gửi hoặc nhận gói tin, mà còn cả khi nó ở trạng thái nhàn rỗi nhƣng vẫn nghe các nút khác trong mạng xem có yêu cầu thông tin liên lạc từ các nút khác hay không Nhƣ vậy, một giao thức định tuyến hiệu quả năng lƣợng là giao thức làm giảm thiểu tối đa năng lƣợng truyền thông dành cho việc truyền tải và nhận gói dữ liệu hoặc trong thời gian không hoạt động

Phương pháp điều khiển năng lượng truyền tải giúp xác định đường đi tối ưu nhằm giảm thiểu tổng năng lượng cần thiết để chuyển gói dữ liệu đến đích Mỗi nút có thể tiết kiệm năng lượng bằng cách chuyển sang chế độ ngủ hoặc tắt khi không có dữ liệu để truyền, dẫn đến tiết kiệm năng lượng đáng kể, đặc biệt trong các ứng dụng truyền thông yêu cầu băng thông thấp Tuy nhiên, điều này cần một giao thức định tuyến tốt để đảm bảo khả năng truyền dữ liệu ngay cả khi nhiều nút đang ở chế độ ngủ Một cách tiếp cận quan trọng là phương pháp phân phối tải, tập trung vào việc cân bằng sử dụng năng lượng giữa các nút, nhằm tối đa hóa tuổi thọ mạng bằng cách tránh sử dụng thường xuyên một số nút nhất định, mặc dù đó có thể là tuyến đường tối ưu.

Luận văn của tôi sẽ tập trung vào việc cải thiện hiệu quả sử dụng năng lượng trong mạng MANET thông qua hai giao thức định tuyến AODV và MAODV, dựa trên các nghiên cứu đã trình bày.

1.2.3 Vấn đề đảm bảo chất lƣợng dịch vụ 1.2.3.1 Giới thiệu

QoS (Chất lượng dịch vụ) là khả năng đảm bảo việc truyền dữ liệu với độ trễ thấp, tỷ lệ mất hoặc lỗi gói tin trong giới hạn cho phép, đồng thời cung cấp băng thông đủ lớn cho các ứng dụng truyền thông đa phương tiện thời gian thực.

Chất lượng dịch vụ trên môi trường Internet và các mạng khác đã được nghiên cứu và áp dụng từ lâu, với các vấn đề chính hiện nay như định tuyến có QoS Để đảm bảo QoS, cần thực hiện kiểm soát truy cập và đặt trước tài nguyên một cách hiệu quả.

Mạng MANET và mạng có dây truyền thống khác nhau cơ bản về tính di động, hạ tầng mạng, nguồn năng lượng của các nút mạng và khả năng tự tổ chức Những sự khác biệt này dẫn đến nhiều yêu cầu cải tiến trong các lĩnh vực như mô hình hóa, điều khiển môi trường truyền, định tuyến, bảo mật, tổ chức thông tin, đảm bảo chất lượng dịch vụ và tiết kiệm năng lượng.

Dựa trên những đặc điểm đó, chúng tôi đƣa ra một số đề xuất khi tiếp cận nghiên cứu về đảm bảo chất lƣợng dịch vụ trên mạng MANET

1.2.3.2 Tham số đặc trƣng QoS

Sau đây là tham số đặc trƣng sẽ đƣợc sử dụng để đánh giá chất lƣợng dịch vụ trong mạng MANET:

 Thông lƣợng tối thiểu: (đơn vị kbps):

 Độ trễ tối đa (đơn vị là s): Thời gian độ trễ lớn nhất của một gói dữ liệu

 Jitter: Độ lệch của độ trễ hay biến động trễ

 PDR (Packet Delivery Ratio): Tỷ lệ phân phát gói tin đến đích thành công.

Mục tiêu nghiên cứu luận văn

Việc sử dụng mạng không dây MANET cho phép các máy tính di động kết nối và truyền dữ liệu mọi lúc, mọi nơi mà không bị ràng buộc bởi vị trí vật lý.

Mạng cảm biến di động (MANET) thường xuyên thay đổi do các nút có thể gia nhập hoặc rời bỏ, yêu cầu tất cả các nút thực hiện chức năng như một bộ định tuyến Vấn đề định tuyến tại tầng mạng được chú trọng, bao gồm việc tìm đường từ nút phát đến nút nhận và duy trì tuyến đường đó Nghiên cứu về định tuyến thường liên quan đến tiết kiệm năng lượng Đồng thời, với sự gia tăng nhu cầu truyền thông đa phương tiện, việc đảm bảo chất lượng dịch vụ cũng trở thành một yếu tố quan trọng trong nghiên cứu các thuật toán định tuyến.

Tôi đã chọn nghiên cứu đề tài "Định tuyến có đảm bảo chất lượng dịch vụ và tối ưu hóa năng lượng trong mạng MANET" Luận văn này nhằm mục đích cải thiện hiệu suất định tuyến và tiết kiệm năng lượng trong các mạng di động ad hoc.

 Nghiên cứu các đặc điểm mạng MANET

Nghiên cứu các giao thức định tuyến trong mạng MANET, đặc biệt chú trọng đến giao thức định tuyến đảm bảo chất lượng dịch vụ (QoS) Bài viết tập trung vào phân tích các giao thức DSDV, AODV và M-AODV, nhằm hiểu rõ hơn về hiệu suất và khả năng cung cấp QoS trong môi trường mạng di động.

 Đánh giá khả năng năng tiêu thụ năng lƣợng của giao thức trên

MỘT SỐ GIAO THỨC ĐỊNH TUYẾN TRONG MANET

Giao thức DSDV (Destination – Sequenced Distance – Vector)

DSDV, một trong những giao thức đầu tiên cho mạng Adhoc, là biến thể của giao thức định tuyến vector khoảng cách chủ động Giao thức này dựa trên ý tưởng của thuật toán định tuyến kinh điển Bell-Man-Ford và được cải tiến để nâng cao hiệu quả.

Cải tiến mới của DSDV là việc áp dụng kỹ thuật đánh số sequence number, giúp nhận diện các con đường không còn giá trị trong quá trình cập nhật bảng định tuyến Kỹ thuật này đóng vai trò quan trọng trong việc ngăn chặn vòng lặp trong định tuyến Mỗi nút trong mạng sẽ tăng số sequence number khi gửi thông tin về bảng định tuyến của mình đến các nút khác.

Các cơ chế trong DSDV:

Quản lý bảng định tuyến là quá trình mà mỗi nút trong mạng duy trì một bảng định tuyến đến các nút khác Mỗi mục trong bảng định tuyến chứa thông tin cần thiết để xác định đường đi đến các nút, đảm bảo việc truyền tải dữ liệu hiệu quả và chính xác trong mạng.

 Địa chỉ của nút đích

 Số hop đến đích (hop – count)

Để duy trì tính chính xác của bảng định tuyến trong mạng, các nút cần thường xuyên cập nhật thông tin định tuyến theo một khoảng thời gian nhất định khi có sự thay đổi Điều này được thực hiện thông qua việc quảng bá thông tin định tuyến tới các nút khác trong mạng Khi nhận gói tin cập nhật, nút sẽ kiểm tra số sequence number; nếu số này lớn hơn hoặc bằng số trong bảng định tuyến và có hopcount nhỏ hơn, nút sẽ cập nhật thông tin đó Chẳng hạn, DSDV thực hiện cập nhật số thứ tự định kỳ để phản ánh nhanh chóng các thay đổi trong thông tin định tuyến, ví dụ như khi nút X nhận thông tin từ nút Y về tuyến đường đến nút Z.

Khi nút Y gửi bảng định tuyến đến nút X, nút X sẽ so sánh số thứ tự điểm đến nút Z được lưu trữ tại X, tương ứng với S(X) và S(Y).

-Nếu S(X) > S(Y), thì X sẽ bỏ qua những thông tin định tuyến nhận đƣợc từ Y

-Nếu S(X) =S(Y), thì chi phí để qua Y nhỏ hơn so với các tuyến đường đến X, như vậy

-Nếu S(X) < S(Y), S(X) sẽ cập nhật số thứ tự sao cho bằng với số thứ tự của S(Y) và đi đến Z

 Cách thức cập nhật bảng định tuyến trong DSDV Bảng định tuyến sẽ đƣợc cập nhật theo hai cách:

Thứ nhất, cập nhật toàn bộ bảng định tuyến cho các nút láng giềng và có thể phải truyền trong nhiều packet, gọi là full-dump

Thứ hai, các phần thay đổi trong bảng định tuyến được cập nhật cho các nút láng giềng thông qua một packet gọi là incremental-update Kiểu cập nhật này thường được sử dụng trong mạng Adhoc ổn định để hạn chế lưu lượng truyền Ngược lại, full-dump sẽ được áp dụng trong các mạng thiếu ổn định.

 Quản lý sự thay đổi của Topology

Khi một nút di chuyển, các liên kết với các nút láng giềng có thể bị mất hiệu lực Khi nút nhận thấy rằng liên kết đến chặng kế tiếp không còn tồn tại, đường đi qua chặng kế tiếp đó sẽ ngay lập tức có hop-count là 0.

Trong giao thức DSDV, số thứ tự được tăng lên 1 và thông tin này được phát broadcast đến tất cả các nút trong mạng, giúp các nút cập nhật bảng định tuyến của mình Ưu điểm nổi bật của DSDV là khả năng ngăn chặn các vòng lặp định tuyến thông qua việc sử dụng số thứ tự để đánh dấu mỗi đường Số thứ tự không chỉ phản ánh mức độ "mới" của đường định tuyến mà còn cho thấy mức độ tin cậy; số càng lớn thì độ tin cậy càng cao.

R được xem là tốt hơn R’ khi số thứ tự của R lớn hơn; nếu số thứ tự bằng nhau, R cần có số bước ít hơn Số thứ tự tăng khi nút A phát hiện ra đường đến đích D bị phá vỡ, sau đó nút A sẽ quảng bá đường định tuyến của mình tới nút D với số bước không giới hạn, dẫn đến việc số thứ tự tăng lên.

DSDV phụ thuộc vào thông tin quảng bá định kỳ, dẫn đến việc mất thời gian để tổng hợp thông tin trước khi đường định tuyến được sử dụng Thời gian này không đáng kể đối với mạng có cấu trúc cố định, nhưng lại trở nên quan trọng trong mạng Adhoc, có thể gây ra mất gói tin trước khi xác định được định tuyến hợp lý Hơn nữa, bản tin quảng cáo định kỳ cũng góp phần vào việc lãng phí tài nguyên mạng như băng thông, điện năng và thời gian xử lý.

Giao thức AODV

Giao thức AODV sử dụng một phương pháp mới để xây dựng đường đi trong mạng Khi một nút muốn gửi gói tin, nó khởi động quá trình phát hiện đường để tìm nút đích Nếu không tìm thấy đường đi trong thời gian xác định, nút sẽ kết luận rằng không có đường đi tới nút đích và hủy bỏ gói tin Ngược lại, nếu tìm thấy đường đi phù hợp, nút sẽ cập nhật bảng định tuyến của mình với thông tin này.

Khi một đầu vào mới được tạo ra, quá trình duy trì tuyến sẽ được kích hoạt để giám sát tình trạng của đường đi Nếu sau một thời gian dài mà đường đi không được sử dụng, nút mạng sẽ xóa nó khỏi bảng định tuyến Khi có lỗi xảy ra trên một đường đi đang hoạt động, nút mạng phát hiện lỗi sẽ ngay lập tức thông báo cho nút lân cận về chặng bị lỗi bằng gói tin điều khiển Nhận được thông báo lỗi, các nút mạng bị ảnh hưởng sẽ khởi động lại quá trình discovery để tìm kiếm đường đi thay thế nếu cần thiết.

AODV quản lý thông tin đường đi theo cách phân tán, nghĩa là mỗi nút trên đường đi lưu trữ một phần trong bảng định tuyến cho nút đích tương ứng Phương pháp này hoàn toàn khác biệt so với source routing, nơi chỉ nút nguồn biết toàn bộ đường đi đến nút đích AODV cho phép mỗi nút duy trì một đường đi duy nhất cho mỗi nút đích, trong khi một số giao thức khác có thể tìm nhiều đường cho mỗi nút đích Khi đường đi ban đầu gặp lỗi, AODV sẽ sử dụng đường đi thay thế.

Các thành phần của bảng định tuyến trong giao thức AODV đƣợc định dạng bao gồm các trường như sau:

+ Trường số thứ tự được sử dụng để ngăn chặn sự hình thành các vòng lặp và thể hiện mức độ cập nhật của các đường đi

Khoảng cách được định nghĩa là số bước truyền Khi một đường đi không còn hiệu lực, thứ tự của nó sẽ tăng lên một và khoảng cách sẽ được coi là vô hạn.

+ Danh sách precursor chứa tập hợp các nút lân cận, sử dụng thành phần này để chuyển tiếp các gói dữ liệu

Thời gian hết hạn xác định thời gian tồn tại tối đa của thành phần trong bảng định tuyến, sau thời gian này, thành phần sẽ bị xóa bỏ Giá trị của trường thời gian này sẽ tăng lên mỗi khi thành phần được sử dụng.

2.2.2 Cơ chế hoạt động 2.2.2.1 Tiến trình Discovery

Tiến trình Discovery là một kỹ thuật trong mạng MANET cho phép các nút nguồn xác định địa chỉ IP của nút đích Quá trình này chỉ được khởi động khi nút đích chưa được định vị trước hoặc không có thông tin nào trong bảng định tuyến tương ứng Nếu thông tin về nút đích đã có trong bảng định tuyến, gói tin sẽ được chuyển ngay lập tức mà không cần thực hiện tiến trình Discovery.

Khi bắt đầu tiến trình Discovery, nút khởi động cần gửi gói tin yêu cầu tìm đường (RREQ) đến tất cả các nút lân cận Gói tin này sẽ được phát tán tới các nút khác trong mạng cho đến khi tìm được một đường đi.

Khi nút nguồn S muốn tìm nút đích D trong mạng MANET, nó sẽ gửi gói tin RREQ đến tất cả các nút lân cận để thông báo về việc tìm kiếm nút D Gói tin RREQ bao gồm địa chỉ IP và số thứ tự của cả nút nguồn và nút đích Số thứ tự đích thể hiện đường đi cuối cùng tới nút D mà nút S biết Nếu nút nguồn S không tìm thấy số thứ tự nào cho đường đi tới nút D, số thứ tự đích sẽ được đặt mặc định là 0.

Cấu trúc gói tin RREQ:

Mỗi nút trong mạng khi nhận gói tin RREQ sẽ ngay lập tức truyền tiếp đến các nút lân cận cho đến khi gói tin đến nút D hoặc một nút nào đó có thông tin về đường đi đầy đủ đến nút D, dựa trên số thứ tự đích trong gói tin RREQ.

Gói tin RREQ bao gồm hai trường quan trọng là TTL (TIME TO LIVE) và BROADCAST ID Trường TTL cho phép quá trình Discovery kiểm soát mức độ lan truyền của gói tin RREQ trong mạng Ví dụ, nếu TTL được đặt bằng 2, gói tin RREQ sẽ chỉ thực hiện tối đa 2 bước truyền từ nút gốc Khi gói tin RREQ được phát đi, nút nguồn sẽ thiết lập giá trị cho trường TTL và chuyển sang trạng thái chờ, với khoảng thời gian chờ tương ứng với giá trị của trường TTL.

Quá trình lan truyền gói tín RREQ diễn ra như sau: nếu một đường đi được tìm thấy trước khi thời gian chờ kết thúc, quá trình khám phá tuyến đường sẽ thành công Ngược lại, nếu nút nguồn không nhận được gói tin trả lời nào trong thời gian chờ, nó sẽ gửi lại gói tin RREQ mới với giá trị TTL cao hơn và thời gian chờ kéo dài hơn, giúp gói tin lan truyền đến nhiều nút mạng hơn Nếu vẫn không nhận được phản hồi, nút nguồn sẽ gửi gói tin RREQ với giá trị tối đa của trường TTL, và sau lần này, tiến trình Discovery sẽ bị hủy bỏ Kỹ thuật này được gọi là kỹ thuật mở rộng dần vòng tìm kiếm.

Mỗi gói tin RREQ được gán một BROADCAST ID, cho phép các nút mạng phân biệt nguồn gốc của các gói tin nhận được BROADCAST ID tăng lên sau mỗi lần truyền, tạo ra một cặp duy nhất cho mỗi gói tin Khi một nút nhận gói tin RREQ, nó sẽ ghi nhớ giá trị của BROADCAST ID và chỉ xử lý các gói tin có giá trị lớn hơn mà nó đã lưu Những gói tin có giá trị nhỏ hơn sẽ bị hủy bỏ.

Trong mỗi gói tin RREQ còn có trườnghop-count được dùng để ghi số bước truyền mà gói tin đã đƣợc truyền qua

Khi nút I nhận gói tin RREQ từ nút nguồn S để tìm đường tới nút đích D, nó sẽ kiểm tra giá trị của trường BROADCAST ID Nếu giá trị này nhỏ hơn hoặc bằng giá trị đã ghi nhớ trước đó, gói tin RREQ sẽ bị hủy bỏ Ngược lại, nút I sẽ xử lý gói tin RREQ bằng cách tạo hoặc cập nhật đường đi ngược tới nút S Đường đi này sẽ được sử dụng để gửi thông báo trả lời – Route Reply trở lại nút S khi đường tới nút D được tìm thấy.

Sau khi tạo đường đi ngược, nút I kiểm tra khả năng kết nối tới nút D Nếu có, nó sẽ gửi gói tin trả lời (route reply packet) ngược lại, ngừng phát gói tin RREQ Nếu không, nút I tiếp tục phát gói tin RREQ, giảm trường TTL xuống một Khi TTL bằng 0, việc phát sẽ dừng lại; nếu không, trường hop-count sẽ tăng lên một.

Khi một nút mạng có thông tin đầy đủ về đường đi và cập nhật, hoặc nó là nút đích, nó sẽ tạo ra một gói tin RREP để gửi trở lại nút nguồn.

Phân tích giao thức AODV

Trong mạng AODV có 2 nguyên nhân chính dẫn đến việc mất dữ liệu là liên kết bị hỏng và hàng đợi bị tràn đầy khi ở một nút trung gian

Hình 2-5: Lan truyền gói tin RERR

Nguyên nhân chính dẫn đến mất dữ liệu trong mạng MANET là hỏng liên kết, do tính di động của các nút mạng thường xuyên thay đổi cấu trúc (topology) Sự thay đổi này có thể làm gãy liên kết giữa hai nút trên tuyến đường truyền dữ liệu từ nguồn đến đích Trong quá trình truyền, nút nguồn không thể xác định được tuyến đường bị đứt, dẫn đến việc tiếp tục truyền dữ liệu và gây ra mất mát thông tin.

Nguyên nhân thứ hai là khi một liên kết gặp sự cố, nút sẽ bắt đầu quá trình sửa chữa địa phương mà nút nguồn không hay biết, dẫn đến việc dữ liệu vẫn được gửi đến đích Trong tình huống này, dữ liệu sẽ bị giữ lại tại bộ đệm của nút cạnh liên kết hỏng Nếu tình trạng này kéo dài, bộ đệm sẽ bị tràn, khiến các gói tin bị loại bỏ và không thể đến đích.

2.3.1.2 Giao thức MAODV (Modified AODV)

Giao thức mới sẽ bổ sung thông tin vào các gói tin điều khiển để tìm kiếm và khám phá tất cả các tuyến đường Tuyến đường với số hop count thấp nhất sẽ được chọn Hai gói tin RREQ và RREP sẽ được định tuyến thông qua phương pháp phát quảng bá.

Khi một nút cần truyền dữ liệu, nó sẽ kiểm tra bảng định tuyến để xác định xem có đường dẫn nào đến đích hay không Nếu không có, nó sẽ tiến hành khám phá đường đến đích bằng cách phát các gói tin RREQ.

Khi một nút nhận gói tin RREQ, nó sẽ kiểm tra bảng định tuyến để xác định xem có đường dẫn nào tới đích không Nếu có, nút đó sẽ phản hồi bằng cách gửi thông tin trở lại.

Trong MAODV, gói tin RREP được gửi trở về nguồn để khám phá tuyến đường Nếu không có gói tin này, hệ thống sẽ phát quảng bá gói tin RREP đến các hàng xóm nhằm tìm kiếm các tuyến đường khả thi.

Hình 2-7: Minh họa việc gửi các gói tin RREP về nút nguồn Ở đây những tuyến đường sẽ được lựa chọn là:(S, N1, N3, N6, D) (S, N1, N4,

N6, D), (S, N1, N4,N7, D), (S, N2, N5, N7, D), (S, N2, N4, N6, D), (S, N2, N5, N4, N6, D) và (S, N2, N5 , N4, N7, D) Khi chỉ với nút N4 thực hiện, những tuyến đường qua đó sẽ không có hiệu lực Những tuyến đường sẽ được lựa theo mức độ thấp nhất là: (S, N1,

N3, N6, D), (S, N2, N5, N7, D) Một đường sẽ là đường chính và một đường sẽ đường dự phòng (thay thế)

Quá trình quản lý tuyến được thực hiện bởi nút nguồn, trong khi các nút trung gian chỉ chịu trách nhiệm tham chiếu đến bảng định tuyến của chúng Khi gặp liên kết bị lỗi, nút nguồn sẽ ngừng truyền tải và chỉ hoạt động trở lại khi tìm được một con đường khả dụng từ những con đường chưa được sử dụng.

Giao thức này có một ràng buộc quan trọng: số tuyến đường được chọn không vượt quá n0 với ngưỡng s0 Khi ngưỡng này đạt được trong quá trình truyền tải dữ liệu, giai đoạn khám phá tuyến mới sẽ được khởi động để tìm kiếm các tuyến đường khác cho đến khi đạt được “n0” Mặc dù giải pháp này có thể tạo ra chi phí lớn, nhưng nó đảm bảo rằng luôn có sẵn các tuyến đường để truyền tải dữ liệu Trong AODV, khi một con đường bị hỏng, giai đoạn sửa chữa địa phương sẽ được khởi xướng; nếu không thành công, giai đoạn khám phá mới sẽ được tiến hành.

Giai đoạn bảo trì tuyến đường vẫn theo quy tắc tương tự như AODV ban đầu bằng cách sử dụng gói tin “Hello”.

BỘ MÔ PHỎNG MẠNG NS-2 VÀ MỘT SỐ CÔNG CỤ PHÂN TÍCH SỐ LIỆU MÔ PHỎNG

Tổng quan NS-2

Mạng không dây ngày nay đang trở nên phổ biến trong cuộc sống nhờ vào những lợi ích vượt trội mà nó mang lại Số lượng thiết bị mạng không dây dự kiến sẽ vượt qua thiết bị mạng có dây, dẫn đến sự gia tăng nghiên cứu trong lĩnh vực này Nghiên cứu mạng không dây có thể thực hiện qua việc kiểm tra thực tế hoặc mô phỏng, với mô phỏng mạng ngày càng được chú trọng bởi các nhà cung cấp dịch vụ và thiết bị mạng Phần mềm mô phỏng mạng đóng vai trò quan trọng trong việc phát triển, kiểm tra và đánh giá các giao thức mạng, cho phép thực hiện mà không cần thiết bị phần cứng, tiết kiệm chi phí và phù hợp với nhiều kích thước kiến trúc mạng khác nhau Nó có khả năng mô phỏng kết nối với bất kỳ băng thông và độ trễ nào, kể cả những kết nối không tồn tại trong thực tế Bên cạnh đó, phần mềm mô phỏng cho phép thiết lập mỗi nút mạng với phần mềm tùy chọn, làm cho việc triển khai trở nên dễ dàng hơn Kết quả thu được từ mô phỏng cũng dễ dàng phân tích nhờ vào thông tin chính xác từ các điểm quan trọng trong mạng thông qua việc phân tích tệp vết sự kiện.

Hình 3.1 cung cấp cái nhìn tổng quan về các phần mềm hiện đang được sử dụng trong mô phỏng và nghiên cứu mạng, cùng với mức độ phổ biến của từng phần mềm.

Trong chương này, tôi sẽ nghiên cứu sâu về phần mềm NS-2 (Network Simulator 2), một công cụ mô phỏng mạnh mẽ và phổ biến Sự gia tăng người dùng NS-2 trong những năm gần đây cho thấy tính ứng dụng cao của nó Mặc dù NS-2 ban đầu được thiết kế để mô phỏng các mạng có dây, nhưng hiện tại nó đã được mở rộng để hỗ trợ cả mạng không dây, bao gồm WLAN, mạng di động ad hoc, mạng cảm biến và mạng vệ tinh.

Đại cương về NS-2

+Định tuyến: Vector khoảng cách (DV), trạng thái liên kết (LS), multicast

Transport protocols such as TCP, UDP, RTP, and SCTP play crucial roles in data transmission Various traffic sources, including Web, FTP, TELNET, CBR, and STOCHASTIC, significantly influence network performance Queue management techniques like Drop-tail, RED, FQ, SFQ, and DRR are essential for optimizing data flow and minimizing congestion in networks.

+ Các mô hình đảm bảo chất lƣợng dịch vụ QoS: IntServ và Differv – Đối với mạng không dây:

+Định tuyến cho mạng Adhoc (AODV, DSDV) và IP di động +Truyền theo hướng trực tiếp, cảm biến MAC

– Hìnhảnh và các tiện ích minh họa khác

3.2.2 Các thành phần của NS Các thành phần của NS bao gồm:

– NS phần mềm mô phỏng – NAM: Netwok animator minh họa cho các kết quả đầu ra của NS, giao diện GUI để tạo kịch bản cho NS-2

– Tiền xử lý: Khởi tạo topo mạng và lưu lượng

– Quá trình xử lý: Phân tích file trace với các công cụ của UNIX hoặcGNU/LINUX nhƣ AWK,Perl,Tcl,minh họa bằng hìnhảnh với Xgraph

Các thành phần chính của NS-2:

+Tcl/TK8.x(thường là 8.3.5):Có thể tham khảo tại địa chỉ http://resource.tcl.tk/resource/sofware/tcltk/

+ OTcl và Tclcl:Có thể tham khảo tại địa chỉ http://otcl-tclcl.sourceforge.net

+ NS-2 và NAM-1 Có thể tham khảo tại http://www.isi.edu/nsnam/dist

+ Các tiện ích khác xem tại http://www.isi.edu/nsnam/ns/ns-build.html + Tcl-debug, GT-ITM,Xgraph v.v…

NS-2 là một phần mềm hướng đối tượng sử dụng hai ngôn ngữ C++ và OTcl Phầndữ liệu và phần điều khiển đƣợc tách biệt:

C++ là ngôn ngữ lý tưởng cho việc xử lý dữ liệu, cho phép xử lý nhanh chóng từng gói tin và thực thi các thuật toán một cách chi tiết Nó cung cấp đầy đủ công cụ cần thiết để điều khiển và quản lý bộ dữ liệu lớn hiệu quả.

+ OTcl cho phần điều khiển:

- Mô phỏng các cấu hình cho kịch bản

- Thực thi nhanh chóng,dễ dàng cấu hình lại -Thao tác với các đối tƣợng C++ hiện tại -Viết mã nhanh chóng và thayđổi dễ dàng

Hình 3-2: Đơn gian hóa cách nhìn người sử dụng

Theo quan điểm của người dùng, NS được xem như một bộ thông dịch cho các kịch bản Tcl, nhằm phục vụ đối tượng cụ thể NS bao gồm các bộ định trình sự kiện mô phỏng, thư viện đối tượng thành phần mạng, và thư viện các module tạo lập mạng Việc kết nối các module này được thực hiện thông qua các hàm thành viên của các đối tượng mô phỏng cơ bản.

Khi sử dụng NS-2, người dùng cần lập trình bằng ngôn ngữ kịch bản Tcl để tạo và triển khai mạng mô phỏng Việc này bao gồm việc viết kịch bản Tcl nhằm khởi tạo bộ định trình sự kiện và thiết lập topo mạng thông qua các đối tượng thành phần mạng và các hành liên kết trong thư viện của NS Để thiết lập một mạng, người dùng ghép nối các đường dữ liệu giữa các đối tượng mạng bằng cách chỉ định con trỏ của một đối tượng tới địa chỉ của một đối tượng khác Khi muốn tạo một đối tượng mạng mới, người dùng có thể xây dựng đối tượng đó từ đầu hoặc kết hợp các đối tượng có sẵn trong thư viện của NS và tạo ra các đường liên kết dữ liệu giữa chúng.

Một thành phần quan trọng của mạng số (NS) là bộ định trình sự kiện, nơi mỗi sự kiện được gán một mã nhận dạng duy nhất và liên kết với một con trỏ đến đối tượng xử lý Bộ định trình sự kiện giám sát toàn bộ thời gian mô phỏng, quản lý và kích hoạt các sự kiện theo hàng đợi Khi một sự kiện được kích hoạt, nó gọi đến đối tượng mạng tương ứng để thực hiện các tác vụ trên gói dữ liệu liên quan Các thành phần mạng giao tiếp bằng cách trao đổi gói, và mỗi thành phần cần thời gian nhất định để xử lý gói Thời gian trễ này được thể hiện qua việc gửi một sự kiện gắn với gói và chờ sự kiện đó được kích hoạt trước khi tiếp tục xử lý Ví dụ, một thành phần mạng có thể mô phỏng thiết bị chuyển mạch với 20 ms trễ, gửi đi sự kiện trễ 20 ms và sau đó kích hoạt nó trở lại thành phần chuyển mạch để thực hiện việc chuyển gói tới đối tượng liên kết đầu ra.

Một ứng dụng nữa của bộ định trình sự kiện là tạo ra các bộ định thời Ví dụ: giao thức TCP cần bộ định thời để giám sát thời gian chờ khi phát đi một gói nhằm thực hiện việc phát lại gói Khi đó, bộ định thời sử dụng bộ định trình tương tự như trong trường hợp giả lập trễ, sự khác biệt duy nhất là bộ định thời đo giá trị thời gian gắn với một gói, thực hiện các tác vụ liên quan đến gói đó sau một khoảng thời gian nhất định trôi qua mà không thực hiện việc mô phỏng trễ.

NS được phát triển bằng hai ngôn ngữ OTcl và C++, với mục tiêu tối ưu hóa hiệu suất bằng cách phân chia đường dữ liệu và đường điều khiển riêng biệt Để giảm thời gian xử lý sự kiện và gói, bộ định trình sự kiện và các đối tượng mạng cơ bản được viết và biên dịch bằng C++ Các đối tượng này vẫn có thể được sử dụng bởi bộ thông dịch OTcl thông qua các liên kết Otcl, tạo ra đối tượng OTcl tương ứng cho mỗi đối tượng C++, cũng như các hàm và biến thành viên trong đối tượng OTcl Nhờ đó, việc điều khiển các đối tượng C++ có thể thực hiện qua OTcl, đồng thời cho phép thêm biến và hàm thành viên khác vào đối tượng OTcl Các đối tượng C++ không cần điều khiển trực tiếp trong mô phỏng cũng không yêu cầu liên kết sang OTcl.

Mặt khác, một đối tượng không nằm trên đường số liệu có thể được xây dựng hoàn toàn bằng OTcl Hình 3-3 minh họa một cây phân cấp đối tượng trong C++ và OTcl.

Hình 3-3: Tính đối ngẫu của C++ và Otcl

Hình 3.3 minh họa sự phân cấp đối tượng trong C++ và OTcl Đặc biệt, các đối tượng C++ có khả năng kết nối với OTcl, tạo nên một cấu trúc phân cấp Sự phân cấp đối tượng trong OTcl tương tự như trong C++, cho thấy sự tương đồng giữa hai ngôn ngữ lập trình này.

Hình 3.4 cho thấy kiến trúc chung của NS-2

Trong hình ảnh, một người dùng không phải là nhà phát triển NS-2 có thể đứng ở góc dưới bên trái và thực hiện các kịch bản mô phỏng viết bằng ngôn ngữ Tcl, sử dụng các đối tượng mô phỏng từ thư viện OTcl Các bộ lập lịch sự kiện mạng cùng với hầu hết các thành phần mạng được thực hiện bằng C++ và kết nối với OTcl thông qua một liên kết OTcl, được thiết lập nhờ vào Tclcl.

NS là trình biên dịch Tcl hướng đối tượng mở rộng và các thư viện mô phỏng mạng

3.2.4 Các thành phần của mạng

Nhƣ đã nói nhiều đến trong phần trên Mục này sẽ trình bày về các thành phầncủa NS-2, hầu hết là các thành phần cấu thành mạng

Hình 3-4: Kiến trúc chung của NS-2

Hình 3.5 minh họa phân cấp lớp OTcl trong NS-2, giúp hiểu rõ các thành phần mạng Lớp TclObject là gốc của tất cả đối tượng thư viện OTcl, bao gồm bộ lập lịch, các thành phần mạng, bộ định giờ và NAM Tương tự, NsObject là lớp gốc cho các đối tượng mạng cơ bản điều khiển gói tin, tạo ra các đối tượng như nút và liên kết Các thành phần mạng cơ bản được chia thành hai lớp con: Connector và Classifier, dựa trên số đường dẫn dữ liệu đầu ra Các đối tượng mạng có thể có một đường dẫn dữ liệu đầu ra nối với lớp Connector, trong khi đối tượng chuyển đổi có thể có nhiều đường dẫn dữ liệu đầu ra nối với lớp Classifier.

+ Nút (node) và sự định tuyến:

Một nút là một đối tƣợng hỗn hợp bao gồm toàn bộ đối tƣợng nút và các đối tƣợng phân loại nhƣ trong hình 3.6

Trong NS, có hai loại nút: Unicast và Multicast Nút Unicast sử dụng một bộ phân loại địa chỉ để thực hiện định tuyến, trong khi nút Multicast được bổ sung thêm bộ phân loại Multicast Classifier để phân loại gói tin Multicast và thực hiện định tuyến cho chúng Trong NS-2, các nút Unicast là mặc định, nhưng để tạo nút Multicast, người dùng cần khai báo rõ ràng trong kịch bản Otcl ngay sau khi tạo đối tượng lịch biểu Khi đó, tất cả các nút được tạo ra sẽ là nút Multicast.

Hình 3-6: Nút Unicast và Multicast

Người dùng có thể chọn một giao thức định tuyến đặc biệt thay vì sử dụng giao thức định tuyến mặc định.

Một liên kết trong mạng xã hội (NS) là một đối tượng cấu thành quan trọng Khi người dùng tạo một liên kết thông qua hàm thành viên duplex-link của đối tượng mô phỏng, sẽ có hai liên kết đơn công (Simplex link) được hình thành theo cả hai hướng.

Hàng đợi đầu ra của một nút hoạt động như một phần của đối tượng liên kết duplex-link, nơi các gói tin được lấy ra và gửi đến đối tượng Delay để xử lý độ trễ của liên kết Các gói tin bị loại bỏ tại hàng đợi sẽ được chuyển đến đối tượng NullAgent và được giải phóng tại đó Cuối cùng, đối tượng TTL sẽ tính toán các thông số time-to-live cho mỗi gói tin nhận được và cập nhật trường TTL tương ứng.

Các mô hình chuyển động của các nút mạng được NS-2 hỗ trợ

Việc thống kê chuyển động của các nút di động trong mạng Adhoc có thể được thực hiện thông qua hai mô hình tiêu biểu là Random Waypoint và Random Walk Mỗi nút sẽ được gán một giải thuật nhằm ngẫu nhiên hóa quá trình di chuyển, từ đó tạo ra sự đa dạng trong hành vi di động của các nút.

Trong mô hình này, mỗi nút bắt đầu với một vị trí ngẫu nhiên trong khu vực mô phỏng và tạm dừng tại đó trong một khoảng thời gian nhất định Sau khi hết thời gian tạm dừng, nút sẽ chọn một đích ngẫu nhiên trong khu vực và di chuyển với tốc độ phân bố đồng đều trong khoảng từ speedmin đến speedmax Khi đến vị trí mới, nút sẽ dừng lại trong khoảng thời gian từ Pmin đến Pmax trước khi tiếp tục quá trình di chuyển.

Hình 3-10: Di chuyển một nút theo mô hình Random Waypoint Đây là mô hình có tính linh động cao nên đƣợc sử dụng phổ biến và rộng rãi nhất

Mô hình Random Waypoint có biến thể khác với một vài thay đổi khác biệt là mô hình

Mô hình này mô phỏng chuyển động ngẫu nhiên của các thực thể trong tự nhiên, trong đó nút di động di chuyển từ vị trí hiện tại đến vị trí mới bằng cách chọn ngẫu nhiên một hướng trong khoảng [0, 180°] và tốc độ trong khoảng [speedmin, speedmax] Mỗi chuyển động diễn ra trong thời gian travel_time hoặc một khoảng cách hằng số mà không có thời gian tạm dừng trước khi thay đổi hướng và tốc độ Hình 3-11 minh họa quá trình di chuyển của tám nút mạng theo mô hình Random Walk.

Hình 3-11: Di chuyển của 8 nút theo mô hình Random Walk

Mô hình chuyển động của các nút trong mạng quyết định đến mức độ thay đổi của mạng Nếu tham số về sự thay đổi hướng di chuyển nhỏ, các nút sẽ di chuyển ngẫu nhiên trong phạm vi hạn chế, tạo thành mạng nửa tĩnh Ngược lại, khi tham số này lớn, mạng sẽ có sự thay đổi rộng hơn.

Công cụ để phân tích và biểu diễn kết quả mô phỏng

Perl (Practical Extraction and Report Language) là một ngôn ngữ lập trình ban đầu được thiết kế cho thao tác văn bản, nhưng sau đó đã phát triển để phục vụ nhiều ứng dụng khác nhau như quản trị hệ thống, phát triển web, lập trình mạng và giao diện phát triển Với ưu điểm nổi bật là tính nhỏ gọn, dễ sử dụng và hỗ trợ lập trình hướng đối tượng (OOP), Perl được xây dựng đặc biệt để xử lý văn bản hiệu quả.

Sử dụng Perl Để chạy Perl trên Linux, ta dùng lệnh sau:

Viết Script bằng perl, đặt dòng sau lên trên đầu trong Script

 /duongdan/script.pl ví dụ : chmod 755 script.pl

Cú pháp cơ bản của Perl:

Một đoạn code Perl script hoặc chương trình bao gồm nhiều statements được viết theo cách đơn giản trong script Không cần thiết phải có hàm main() hoặc cấu trúc tương tự.

 perl statements kết bằng dấu “ ; “

 Ví dụ: print”Hello, I’m Trung”;

Sử dụng “#” để Comments trong Perl, ví dụ :

Gnuplot là một công cụ vẽ đồ thị mạnh mẽ và hữu ích trên hệ điều hành Linux Mặc dù ban đầu có thể khó sử dụng, nhưng khi nắm vững các cú pháp cơ bản, người dùng sẽ nhận ra hiệu quả của nó Chức năng tạo script giúp việc tạo và chỉnh sửa đồ thị trở nên dễ dàng hơn bao giờ hết.

Gnuplot cho phép nhập dữ liệu từ tệp văn bản có nhiều cột, trong đó người dùng cần chỉ định hai cột cụ thể để vẽ đồ thị Ngoài ra, Gnuplot còn hỗ trợ nhập dữ liệu từ nhiều tệp khác nhau và vẽ chúng trên cùng một đồ thị, điều này rất hữu ích cho việc so sánh và phân tích dữ liệu.

Bảng 3-1: Bảng mẫu dữ liệu để vẽ trong gnuplot

Bảng 3-2: Thiết lập định dạng cho bản vẽ và thực hiện vẽ đồ thị :

In the analysis of throughput data, the plot is titled "Throughput.data," with the x-axis representing speed in meters per second (m/s) and the y-axis indicating throughput in seconds (s) The graph features a legend positioned at the top right, utilizes a point size of 1, and is configured with x-axis limits ranging from 0 to 30 and y-axis limits from 0 to 160 The plot displays the data from "Throughput.data," specifically using the first and third columns, and illustrates the DSDV protocol with lines and points, characterized by line type 1, point type 6, and line width 1.

Câu lệnh set xlabel “Speed (m/s)” Thực hiện việc gán nhán cho trục x là tốc độ.Kèm theo đó set xr [0:30]thiết lập phân chia đơn vị trục Ox là 0-30

Câu lệnh `set ylabel "Throughput (s)"` gán nhãn cho trục y là "Thông lượng (Throughput)" Đồng thời, lệnh `set yr [0:160]` thiết lập khoảng giá trị cho trục Oy từ 0 đến 160.

Câu lệnh plot được sử dụng để vẽ đồ thị từ bảng dữ liệu "Throught.data" Bảng dữ liệu này có nhiều cột, vì vậy khi vẽ, cần chỉ định rõ cột nào sẽ được sử dụng, với yêu cầu là phải có 2 cột dữ liệu để vẽ.

Câu lệnh set output "Throught.eps"thiết lập lưu file kết quả ra ngoài.

Thiết lập mạng mô phỏng MANET

Tôi đã phát triển một chương trình mô phỏng mạng Adhoc sử dụng giao thức DSDV, dựa trên mã ví dụ từ cuốn "NS Simulator for beginners" của tác giả Eitan Altman và Tania Jimenez Chương trình mô phỏng này mang tên:

MANET_Simulation.tcl, đƣợc in trong mục 2.Mô phỏng mạng MANET của phần Phụ

Lục Chương trình này sau khi chạy sẽ sinh ra các tệp vết là :MANET.nam và

MANET.tr sẽ được sử dụng làm đầu vào cho chương trình NAM nhằm trực quan hóa toàn bộ quá trình mô phỏng bằng đồ họa Đồng thời, nó cũng là đầu vào cho đoạn mã Perl mà tôi phát triển để tính toán tỷ lệ phân phát gói tin thành công, thời gian phản ứng của các giao thức định tuyến và thông lượng Cuối cùng, kết quả sẽ được xuất ra các tệp để sử dụng với gnuplot cho việc vẽ đồ thị.

3.5.1 Thiết lập tô-pô mạng

Sau nhiều khảo sát đánh giá, chúng tôi đã chọn khu vực mô phỏng mạng MANET hình vuông với diện tích 1500m x 900m (1,5Km x 0,9Km) Việc mở rộng diện tích này đảm bảo các nút mạng di động có đủ không gian di chuyển, với quãng đường tối đa lên tới 2,12Km Theo chuẩn 802.11, vùng thu phát sóng của nút di động tối đa là 250m, do đó độ dài đường đi lớn nhất trong mạng mô phỏng vượt hơn 8 chặng dài nhất có thể Điều này rất hữu ích cho việc nghiên cứu quá trình định tuyến giữa các nút ở xa nhau.

Mạng mô phỏng bao gồm 50 nút di động phân bố ngẫu nhiên trong diện tích mô phỏng với tọa độ các nút là (x, y, z) trong đó z = 0 (Mặt phẳng)

Hình 3-12:Diện tích mạng mô phỏng và các nút mạng

Vị trí ban đầu của các nút đƣợc khởi tạo ngẫu nhiên nhƣ vậy nhằm làm tăng tính khách quan trong quá trình mô phỏng

Tổng quan về mạng mô phỏng với các tham số cấu hình chung, cấu hình di chuyển và cấu hình truyền dữ liệu đƣợc thể hiện trong bảng 3-3

Bảng 3-3: Cấu hình mạng mô phỏng g Giá trị

Tốc độ di chuyển nhanh nhất 30 m/s  180 km/h

Tốc độ di chuyển chậm nhất 0 m/s  Đứng yên

Cấu hình truyền dữ liệu

Số nguồn phát 10 nguồn, nằm trên 8 nút mạng: 4, 5,

7, 12, 15, 16, 18, 19 Thực thể nhận 8 nút mạng: 5, 6, 8, 13, 16, 17, 19, 20

Kích thước gói tin 512 bytes

Kiểu – Kích thước hàng đợi DropTail - 50

3.5.2 Thiết lập tham số của mô hình chuyển động của các nút mạng và thời gian mô phỏng a Mô hình Random WayPoint

NS-2 cung cấp nhiều công cụ hỗ trợ tạo file ngữ cảnh một cách tự động và ngẫu nhiên Những công cụ này được lưu trữ trong thư mục: …/ns-2/indep-utils/cmu-scen-gen.

Setdest là một công cụ viết bằng C++ giúp các nhà nghiên cứu tạo ra các kịch bản cho vị trí ban đầu và sự di chuyển của các nút di động Trong công cụ này, tọa độ z của các nút được coi là bằng 0, cho phép các nút di chuyển trên cùng một mặt phẳng Để thực hiện setdest, người dùng chỉ cần gõ lệnh tương ứng.

/setdest –v 1 -n -p -M -t -x

-y >/

-v: phiên bản loại 1, -n : số lƣợng nút,-p: thời gian tạm dừng thực hiện mô phỏng, -

M tốc độ lớn nhất, -t thời gian thực hiện mô phỏng, -x tọa độ X trong không gian mô phỏng, -y tọa độ Y trong không gian mô phỏng, và scenario-file: tên file kết xuất.

/setdest -v -n < nodes> -s -m -M

-t -P -p -x -y

Để tạo tệp di chuyển cho nút di động theo mô hình Random Walk, tôi sử dụng công cụ rwalk, được mô tả chi tiết tại [7] Đầu tiên, tải mã chương trình từ http://monarch.cs.rice.edu/~santa/research/mobility/code.tar.gz và giải nén Sau khi giải nén, sẽ có ba thư mục là palm-general, palm-graph và palm-rw Tiếp theo, chuyển vào thư mục palm-rw và gõ lệnh make để cài đặt chương trình rwalk Cuối cùng, thực hiện rwalk bằng cách gõ lệnh tương ứng.

./rwall 3

The simulation involves several key parameters: the number of nodes participating in the simulation, the maximum dimensions of the simulation area (both X and Y), the total simulation time, the average speed of the nodes, the speed delta, and the pause time.

: thời gian tạm dừng delta

3.5.3 Thiết lập các nguồn sinh lưu lượng đưa vào mạng

cbrgen.tcl là một công cụ viết bằng ngôn ngữ TCL, được sử dụng thông qua bộ thông dịch ns-2, cho phép các nhà nghiên cứu tạo ra các kịch bản truyền thông dựa trên giao thức vận chuyển TCP Câu lệnh sử dụng cho công cụ này là: ns cbrgen.tcl [-type cbr|tcp] [-nn nodes] [-seed seed] [-mc connections].

[-rate rate] >/

Trong bài viết này, chúng tôi trình bày các tham số quan trọng cho việc cấu hình lưu lượng kết nối, bao gồm: -type để xác định kiểu lưu lượng như CBR hoặc TCP; -nn đại diện cho số lượng nút; -seed là giá trị seed; -mc chỉ số lượng kết nối; -rate thể hiện vận tốc của nút; -outdir chỉ đường dẫn đến thư mục chứa tệp cần tạo; và -file_name là tên tệp lưu lượng.

Việc sử dụng các công cụ này cho phép các nhà nghiên cứu tạo ra kịch bản truyền thông và di chuyển mạng với số lượng nút di động lớn Tuy nhiên, quá trình tạo ra các kịch bản này thường mang tính ngẫu nhiên và không hoàn toàn theo ý muốn của người nghiên cứu Do đó, trong nhiều trường hợp, các nhà nghiên cứu cần tự viết ra những kịch bản truyền thông có ý nghĩa để mô phỏng các tình huống điển hình.

3.5.4 Lựa chọn thời gian mô phỏng

Quá trình mô phỏng diễn ra trong 900 giây (15 phút), thời gian đủ để nghiên cứu các sự kiện trong mạng Với vận tốc di chuyển của các nút mạng từ 0m/s đến 30m/s, giả sử nút di chuyển với tốc độ thấp nhất là 1m/s, quãng đường mà nút có thể di chuyển sau 900 giây đạt tới 900m.

Với thời gian này, nút chậm nhất có thể di chuyển ra ngoài vùng thu phát sóng của nút khác (radio range = 250m), dẫn đến sự thay đổi trong tô-pô mạng Quá trình này thể hiện rõ các tính chất đặc trưng của các mô hình chuyển động khác nhau.

Mô hình Random Waypoint cho phép các nút có thời gian tạm dừng ngắn trước khi thay đổi hướng và tốc độ di chuyển Mặc dù thời gian tạm dừng này rất nhỏ so với tổng thời gian mô phỏng, nhưng với 900 giây, các nút mạng vẫn có đủ thời gian để di chuyển và tạo ra các thay đổi khác nhau trong tô-pô mạng.

Mô hình Random Walk cho phép các nút di chuyển liên tục mà không có thời gian tạm dừng, do đó, thời gian mô phỏng 900 giây là đủ để đánh giá hiệu quả của các giao thức định tuyến trong điều kiện mạng có sự thay đổi liên tục về topo.

MÔ PHỎNG

Thực nghiệm mô phỏng

Mạng MANET có những đặc điểm nổi bật như cấu hình mạng động, liên kết với dung lượng thay đổi và băng tần hạn chế, cùng với các nút có năng lượng thấp và bảo mật vật lý hạn chế Do đó, khi phân tích hiệu suất của các giao thức định tuyến ADHOC, cần xem xét một số tham số quan trọng trong ngữ cảnh mạng.

 Kích thước mạng: được thể hiện bằng kích thước diện tích mô phỏng và số nút trong mạng

 Kết nối mạng: đƣợc thể hiện bằng số trung bình các hàng xóm của một nút

 Tốc độ thay đổi mạng: là tốc độ thay đổi tô-pô của mạng theo thời gian

 Khả năng của liên kết: là băng thông của liên kết không dây, đƣợc tính bằng bps

 Dạng truyền thông: đƣợc thể hiện bằng các mức độ tải trong mạng, có thể là đồng dạng, không đồng dạng hoặc bùng phát

 Dạng di chuyển: đƣợc thể hiện các mô hình chuyển động cụ thể

Mục đích của các thí nghiệm là đánh giá khả năng phản hồi của các giao thức định tuyến trước sự thay đổi cấu hình mạng do di động của các nút mạng Phương pháp thực hiện bao gồm việc áp dụng nhiều hình thức di chuyển với vận tốc khác nhau Các mạng Adhoc được mô phỏng dựa trên các mô hình di chuyển và truyền thông Chúng tôi sử dụng hai mô hình di chuyển tiêu biểu là Random Waypoint và Random Walk, thể hiện những dạng di chuyển khác nhau Đối với mỗi mô hình, các tham số được điều chỉnh để thay đổi trạng thái mạng, với vận tốc của các nút mạng lần lượt là 0, 5, 10, 15, 20, 25 và 30 m/s.

Khi so sánh các giao thức định tuyến, việc áp dụng các điều kiện tải và môi trường giống nhau là rất quan trọng để đảm bảo tính công bằng Để thực hiện điều này, tôi đã xây dựng các file ngữ cảnh mô tả chính xác chuyển động của từng nút và thời gian thay đổi của chúng cho mỗi mô hình di chuyển Đồng thời, các file ngữ cảnh truyền thông cũng được tạo ra để thể hiện chính xác các kết nối giữa các nút và thời gian diễn ra các truyền thông Nhờ đó, tập hợp các file ngữ cảnh chuyển động và truyền thông giống nhau được áp dụng cho từng giao thức.

Trong nghiên cứu này, tôi lựa chọn mô hình truyền thông với nguồn sinh lưu lượng có tốc độ không đổi (CBR) để thực hiện các thí nghiệm, thay vì sử dụng các ứng dụng mô phỏng TCP, vì TCP điều phối tải theo tình trạng mạng, dẫn đến thời gian gửi gói tin không đồng nhất Điều này gây khó khăn trong việc so sánh các giao thức khác nhau Tôi đã áp dụng các giao thức AODV và DSDV trong các ngữ cảnh mạng khác nhau, và bộ mô phỏng ghi nhận các hoạt động mạng diễn ra tại các lớp Từ những ghi nhận này, khả năng hoạt động của các giao thức được đánh giá chủ yếu trên lớp ứng dụng và lớp mạng Các thí nghiệm và đánh giá sẽ được trình bày trong các phần tiếp theo, bao gồm mô hình Random Waypoint và mô hình Random Walk.

4.2.2 Xây dựng và thi hành chương trình mô phỏng:

Chương trình mô phỏng của tôi được đặt tên là: nguyenthanhtrung-83.tcl, được trình bày tại phụ lục

Tôi đã cho thi hành chương trình mô phỏng như sau:

To analyze the output data from the file "aodv-cbr10-scenv5-out.tr," utilize Perl scripts by executing the following commands: "perl average_end-end_delay.pl aodv-cbr10-scenv5.tr 5>>average_end-end_delay.data" and "perl normalized_routing_overhead.pl aodv-cbr10-scenv5.tr 5." This process will facilitate the extraction and examination of key metrics related to network performance.

>>normalized_routing_overhead.data perl packet_delivery_fraction.pl aodv-cbr10-scenv5.tr 5 >> packet_delivery_fraction.data perl throughput.pl aodv-cbr10-scenv5.tr 5>> throughput.data

Kết quả nhận được lưu trong các file sau: average_end-end_delay.data normalized_routing_overhead.data packet_delivery_fraction.data throughput.data

Phân tích số liệumô phỏng và đánh giá, so sánh các giao thức định tuyến AODV, DSDV

4.3.1 Kết quả thực hiện 4.3.1.1 Đánh giá, so sánh tỷ lệ phân phát gói tin thành công theo tốc độ chuyển động tăng dần của các nút mạng

Tôi đã thực hiện một chương trình mô phỏng mạng với 50 nút di động sử dụng hai mô hình Random Waypoint và Random Walk, trong đó có 10 nguồn sinh lưu lượng gắn trên 10 nút mạng khác nhau để truyền dữ liệu tới 10 nút khác Sau khi hoàn thành mô phỏng, tôi đã sử dụng đoạn mã Perl để phân tích dữ liệu và thu được tỷ lệ phân phát gói tin thành công, kết quả được trình bày trong Bảng 4.1 và 4.2 Các kết quả này được biểu diễn dưới dạng đồ thị bằng công cụ Gnuplot, như thể hiện trong hình 4.1 và 4.2.

Bảng 4-1: Bảng dữ liệu tỷ lệ phân phát gói tin thành công với mô hình RandomWaypoint

Hình 4-1 cho thấy tỷ lệ phân phát gói tin thành công của các nút mạng chuyển động theo mô hình Random Waypoint với 10 nguồn phát Khi các nút mạng đứng yên (vận tốc bằng 0), tỷ lệ thành công của cả hai giao thức đạt gần 100% Tuy nhiên, khi các nút mạng di chuyển với vận tốc khác nhau, giao thức AODV có tỷ lệ phân phát gói tin cao hơn, với trung bình 92% so với 72,3% của DSDV Cả hai giao thức đều hoạt động hiệu quả khi nút mạng đứng yên hoặc di chuyển chậm (dưới 3m/s), với tỷ lệ rớt gói không vượt quá 15% Bảng 4-2 cung cấp dữ liệu về tỷ lệ phân phát gói tin thành công trong mô hình Random Walk.

Trong mô hình Random Walk, tỷ lệ phân phát gói tin thành công giảm dần khi tốc độ chuyển động của các nút mạng tăng lên, như thể hiện trong hình 4-2 So với mô hình Random Waypoint, tỷ lệ này của AODV và DSDV ở các tốc độ cụ thể thấp hơn, với DSDV giảm nhanh hơn khi tốc độ tăng Sự khác biệt này xuất phát từ việc các nút mạng trong mô hình Random Walk linh động hơn và không có khoảng thời gian tạm dừng, mặc dù vận tốc được thiết lập giống nhau.

4.3.1.2 Đánh giá, so sánh trễ đầu cuối trung bìnhtheo tốc độ chuyển động tăng dần của các nút mạng

Tôi đã thực hiện một chương trình mô phỏng mạng với 50 nút di động theo hai mô hình Random Waypoint và Random Walk, sử dụng 10 nguồn sinh lưu lượng gắn trên 10 nút mạng khác nhau để truyền dữ liệu đến 10 nút khác Số liệu mô phỏng được phân tích bằng đoạn mã Perl, cho ra kết quả về trễ đầu cuối trung bình, được trình bày trong Bảng 4.3 Kết quả này cũng được thể hiện dưới dạng đồ thị bằng công cụ Gnuplot, như thể hiện trong Hình 4.3.

Bảng 4-3: Bảng dữ liệu độ trễ đầu cuối trung bình với mô hình Random Waypoint

Nhận xét từ hình 4-3 cho thấy mô hình Random Waypoint có độ trễ end-to-end trung bình trong việc chuyển tiếp gói tin ở DSDV cao hơn so với AODV Nguyên nhân là do AODV là giao thức định tuyến theo yêu cầu, giúp nó dễ dàng thích nghi với các thông số di chuyển của các nút Trong khi đó, DSDV gặp phải độ trễ cao khi thông số di chuyển của mạng lớn.

Bảng 4-4:Bảng dữ liệu độ trễ đầu cuối trung bình với mô hình Random Walk

Hình 4-3: Độ trễ trung bình đầu cuối của gói dữ liệu với mô hình Random Way Point

Trong mô hình Random Walk, độ trễ trung bình end-to-end của giao thức DSDV luôn cao hơn so với AODV Đặc biệt, khi tốc độ của nút mạng bằng không, độ trễ của AODV lại lớn hơn DSDV Điều này xảy ra vì AODV cần thời gian để phát hiện đường đi trước khi truyền dữ liệu, trong khi DSDV cho phép truyền ngay lập tức Kết quả này cũng tương tự trong mô hình Random Waypoint, với AODV vẫn phản hồi tốt nhất trong cả hai trường hợp.

4.3.1.3 Đánh giá, so sánh thông lƣợng đầu cuốitheo tốc độ chuyển động tăng dần của các nút mạng

Tôi đã tiến hành một chương trình mô phỏng mạng với 50 nút di động, áp dụng hai mô hình Random Waypoint và Random Walk Trong đó, có 10 nguồn sinh lưu lượng được gắn trên 10 nút mạng khác nhau, truyền dữ liệu đến 10 nút đích Chương trình mô phỏng này đã được thực hiện nhằm phân tích hiệu suất của các mô hình di chuyển trong mạng di động.

Mô hình Random Walk được phân tích với độ trễ trung bình đầu cuối, như trình bày trong phụ lục 1 Sử dụng đoạn mã Perl từ phụ lục 4, tôi đã xử lý dữ liệu mô phỏng để thu được thông lượng đầu cuối, với kết quả hiển thị trong Bảng 4-5 và 4-6 Các kết quả này được thể hiện dưới dạng đồ thị qua công cụ Gnuplot, như thể hiện trong hình 4.5 và 4.6.

Bảng 4-5: Bảng dữ liệu thông lượng với mô hình Random Waypoint

Vận tốc (m/s) AODV (kb/s) DSDV (kb/s)

Nhận xét từ hình 4-5 cho thấy, khi các nút mạng đứng yên, thông lượng của AODV và DSDV tương đương nhau Tuy nhiên, khi tốc độ tăng lên, thông lượng giảm, nhưng AODV duy trì sự ổn định cao hơn DSDV Điều này phù hợp với tỷ lệ phân phát gói đã nêu ở trên.

Mô hình Random Waypoint cho thấy thông lượng đầu cuối thấp hơn so với giao thức AODV, đặc biệt khi tốc độ đạt 15m/s, thông lượng giảm mạnh Bên cạnh đó, mô hình Random Walk cũng cần được xem xét trong bối cảnh này.

Bảng 4-6: Bảng dữ liệu thông lượng với mô hình Random Walk

Vận tốc (m/s) AODV (kb/s) DSDV (kb/s)

Nhận xét cho thấy rằng khi vận tốc tăng, thông lượng giảm, tương tự như mô hình chuyển động Random Waypoint Tuy nhiên, mức giảm thông lượng theo sự tăng vận tốc trong mô hình Random Walk diễn ra mạnh hơn đáng kể Giao thức AODV vẫn cho thấy tính ổn định cao hơn, với sự thay đổi thông lượng không đáng kể, duy trì trong khoảng 115kb/s.

Hình 4-6: Thông lượng đầu cuối với mô hình Random Walk

4.3.1.4 Đánh giá, so sánh tải định tuyến chuẩn hóa theo tốc độ chuyển động tăng dần của các nút mạng

Tôi đã thực hiện một chương trình mô phỏng mạng với 50 nút di động, áp dụng hai mô hình Random Waypoint và Random Walk, trong đó có 10 nguồn sinh lưu lượng gắn trên 10 nút mạng khác nhau để truyền dữ liệu đến 10 nút khác Đoạn mã Perl được sử dụng để phân tích số liệu mô phỏng, cho ra kết quả tải định tuyến chuẩn hóa được trình bày trong Bảng 4-7 và 4-8 Các kết quả này được trực quan hóa dưới dạng đồ thị bằng công cụ Gnuplot, như thể hiện trong hình 4.7 và 4.8.

Bảng 4-7: Bảng dữ liệu tải định tuyến chuẩn hoá với mô hình Random Waypoint

Nhận xét về khả năng sử dụng tài nguyên mạng của các giao thức cho thấy rằng, trong điều kiện tải thấp và mức độ di chuyển dưới 10m/s, giao thức định tuyến phản ứng AODV có tải định tuyến chuẩn hóa tương đương với giao thức chủ ứng DSDV Điều này xảy ra do AODV không thực hiện định tuyến theo yêu cầu, dẫn đến sự thay đổi không đáng kể trong số gói tin định tuyến Tuy nhiên, khi mức độ di chuyển tăng lên, tải định tuyến của AODV vượt trội hơn hẳn so với DSDV, chủ yếu do sự gia tăng gói tin phát hiện đường, trả lời đường và thông báo lỗi Tình trạng tải định tuyến cao có thể tiêu tốn băng thông và gây ra tắc nghẽn mạng.

Bảng 4-8:Bảng dữ liệu tải định tuyến chuẩn hoá với mô hình Random Walk

Trong mô hình Random Walk (hình 4-8), có sự khác biệt về tải định tuyến chuẩn hoá so với mô hình Random Waypoint (hình 4-7) Giao thức DSDV duy trì mức tải định tuyến thấp và ổn định, trong khi AODV cho thấy mức tải ổn định trong cả hai trường hợp tải mạng.

4.3.2 Đánh giá hiệu năng hai giao thức AODV, DSDV

DSDV là một giao thức định tuyến dựa trên vector khoảng cách, hoạt động hiệu quả nhất trong các mạng tĩnh, nơi các nút mạng không di chuyển hoặc di chuyển với tốc độ thấp Điều này áp dụng cho cả hai mô hình chuyển động của nút mạng, bao gồm Random Waypoint và Random Walk.

Ngày đăng: 17/12/2023, 18:00