Trong mô phỏng mạng Ad-hoc các mô hình di chuyển đóng một vai trò rất quan trọng. Nó thể hiện chính xác các ngữ cảnh có thể của mạng và góp phần quyết định tính đúng đắn của việc đánh giá hiệu suất của các giao thức định tuyến trước khi mang ra
triển khai thực tế. Trên thực tế có hai loại mô hình di chuyển được sử dụng cho mạng không dây là mô hình vết (trace-based model) và mô hình tổng hợp (synthetic model). Mô hình vết cung cấp cho ta thông tin chính xác, đặc biệt là khi nó có liên quan tới nhiều bên tham gia va có thời gian đủ dài. Tuy nhiên, mô hình tổng hợp là phù hợp hơn đối với mạng di động ngày nay. Mô hình tổng hợp cố gắng thể hiện hành vi của các nút di động bằng cách thống kê. 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. Hai mô hình tiêu biểu mô phỏng các mạng Ad-hoc là: Random Waypoint và Random Walk.
4.2.2.1. Mô hình Random Waypoint
Tại mô hình này, ban đầu mỗi nút có một vị trí ngẫu nhiên trong khu vực mô phỏng và ở tại đó một khoảng thời gian tạm dừng. Khi hết quãng thời gian tạm dừng, nút chọn cho mình một đích ngẫu nhiên trong khu vực mô phỏng và chuyển động với tốc độ phân bố đồng đều giữa [speedmin, speedmax]. Khi tới vị trí mới nút dừng một khoảng thời gian trong khoảng [Pmin, Pmax] và sau đó tiếp tục lại quá trình.
Hình 14: 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
4.2.2.2. Mô hình Random Walk
Mô hình này mô phỏng chuyển động ngẫu nhiên của các thực thể trong cuộc sống tự nhiên. Nút di động di chuyển từ vị trí hiện tại tới vị trí mới bằng việc chọn ngẫu nhiên một hướng nằm trong khoảng [0, 180°] và tốc độ nằm trong khoảng [speedmin, speedmax]. Mỗi chuyển động diễn ra trong khoảng thời gian travel_time (thời gian di chuyển của nút trước khi thay đổi hướng và tốc độ) hoặc trong một khoảng cách hằng số và đặc biệt là không có thời gian tạm dừng trước khi nút mạng thay đổi hướng và tốc độ. Hình 15 thể hiện trực quan hóa quá trình di chuyển của tám nút mạng theo mô hinh Random Walk.
Hình 15: Di chuyển của 8 nút theo mô hình Random Walk
Với mô hình chuyển động này thì tham số về sự thay đổi hướng di chuyển của nút có tính chất quyết định đến mức độ thay đổi của mạng. Nếu tham số này nhỏ, các nút di chuyển ngẫu nhiên trong phạm vi nhỏ, lúc này mạng được coi là mạng nửa tĩnh. Ngược lại nếu tham số này lớn, mạng thay đổi trên phạm vi rộng hơn.
4.2.3 Thiết lập các nguồn sinh lưu lượng đưa vào mạng
Chúng tôi lựa chọn 10 cặp truyền thông (sender, receiver) truyền phát dữ liệu. Chúng được sắp xếp phân bố hợp lý trên khu vực mô phỏng sao cho đảm bảo có đủ các chặng truyền phát với độ dài khác nhau, từ các cặp truyền thông nằm gần nhau nhất tới các cặp truyền thông nằm xa nhau nhất có thể trong khu vực mô phỏng , các nút mạng còn lại tham gia vào quá trình định tuyến với vai trò là nút trung gian chuyển tiếp gói tin.
Giao thức TCP được chúng tôi lựa chọn để đưa vào mô phỏng bởi trong các ứng dụng trên thực tế hầu hết đều hoạt động dựa trên giao thức này. Các nguồn phát sinh lưu lượng sử dụng giao thức FTP để truyền.
NS-2 hỗ trợ một số công cụ để tạo ra các file ngữ cảnh một cách tự động và ngẫu nhiên. Các công cụ này nằm trong thư mục: …/ns-2/indep-utils/cmu-scen-gen/, với các tính năng sau:
• setdest: Là công cụ viết trên nền C++, giúp cho người nghiên cứu tạo ra các
kịch bản bao gồm vị trí ban đầu của nút di động và sự di chuyển của chúng. Trong công cụ này, chúng ta coi tọa độ z của các nút đều bằng 0 và các nút di chuyển trên cùng một mặt phẳng. Thực hiện setdest bằng cách gõ lệnh như sau:
./setdest -n <num of nodes> -p <pausetime> -s <maxspeed> -t <simtime> -x <maxx> -y <maxy> > <outdir>/<scenario-file>
• cbrgen.tcl: Là công cụ viết bằng ngôn ngữ tcl, sử dụng thông qua bộ thông dịch
ns-2, giúp người nghiên cứu có thể tạo ra các kịch bản truyền thông trên nền giao thức giao vận TCP. Câu lệnh:
ns cbrgen.tcl [-type cbr|tcp] [-nn nodes] [-seed seed] [-mc connections] [-rate rate] > <outdir>/<scenario-file>
Sử dụng các công cụ này giúp người nghiên cứu tạo ra các kịch bản truyền thông cũng như di chuyển của mạng với số lượng các nút di động là tương đối lớn. Tuy nhiên việc tạo ra các kịch bản này là ngẫu nhiên, có thể không theo ý muốn của người nghiên cứu, nên trong nhiều trường hợp người nghiên cứu phải tự viết ra các kịch bản truyền thông có ý nghĩa mô phỏng điển hình.
4.2.4. Lựa chọn thời gian mô phỏng
Quá trình mô phỏng diễn ra trong thời gian t = 600s = 10 phút. Đây là khoảng thời gian vừa đủ để chúng ta nghiên cứu các sự kiện xảy ra trong mạng. Thật vậy do các nút mạng di chuyển với vận tốc từ [0m/s – 20m/s] nên ta giả sử nút di chuyển với tốc độ gần như là thấp nhất ứng với người đi bộ là 1m/s thì quãng đường đi được sau 600s cũng lên tới 600m.
S = v.t = 1 x 600 = 600m
Với thời gian như vậy đủ để nút chậm nhất di chuyển ra ngoài vùng thu phát sóng của nút khác (radio range = 250m) và làm cho tô-pô mạng thay đổi. Quá trình đó cũng 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:
•Random Waypoint: Mô hình này tuy các nút có thêm các khoảng thời gian tạm dừng trước khi thay đổi hướng và tốc độ chuyển động nhưng thời gian tạm dừng này là rất nhỏ so với thời tổng toàn bộ thời gian mô phỏng. Do đó với 600s các nút mạng vẫn đủ thời gian để đạt đưỡng quãng đường di chuyển cần thiết tạo ra các thay đổi khác nhau đối với tô-pô mạng.
•Random Walk: Mô hình này các nút di chuyển liên tục, không có thời gian tạm dừng nên đương nhiên với thời gian mô phỏng 600s là đủ để đánh giá các giao thức định tuyến khi tô-pô mạng thay đổi liên tục.
4.3. Thực hiện mô phỏng các giao thức định tuyến
4.3.1. Phân tích kết quả bằng công cụ perl
Tôi đã xây dựng các chương trình perl để đánh giá các tham số hiệu năng sẽ được trình bày tại mục 4.3.1 này. Tên các chương trình đó là:
• Pkt_success_rate. pl: Dùng để tính ra tỷ lệ phân phát gói tin thành công, chính là tỷ lệ giữa số các gói tin được phân phát thành công tới đích so với số các gói tin tạo ra bởi nguồn phát.
• Time_of_connection_setup.pl: Dùng để tính thời gian phản ứng của các giao thức định tuyến từ thời điểm nút nguồn có nhu cầu truyền đến khi bắt đầu truyền dữ liệu.
4.3.1.1. Tỷ lệ phân phát gói tin thành công
Mô phỏng mạng gồm 50 nút di động với 10 nguồn sinh lưu lượng kết nối.
a. Mô hình Random Waypoint
Bảng 6: Thống kê chi tiết tỷ lệ phân phát gói tin thành công - Random Waypoint
DSDV AODV DSR
0m/s Gói tin truyền thành công 2768 50802 49802
Tổng số gói tin gửi đi 2813 50925 49943
Tỷ lệ % 98,40 99,75 99,72
5m/s Gói tin truyền thành công 63930 62871 57789
Tổng số gói tin gửi đi 64601 64063 58170
Tỷ lệ % 98,96 98,13 99,34
10m/s Gói tin truyền thành công 97453 60909 105725
Tổng số gói tin gửi đi 97979 61554 106059
Tỷ lệ % 99,46 98,95 99,69
15m/s Gói tin truyền thành công 24978 46136 41019
Tổng số gói tin gửi đi 25222 46937 41356
Tỷ lệ % 99,03 98,29 99,19
20m/s Gói tin truyền thành công 37344 46212 45568
Tổng số gói tin gửi đi 37839 47180 45897
b. Mô hình Random Walk
Bảng 7: Thống kê chi tiết tỷ lệ phân phát gói tin thành công - Random Walk
DSDV AODV DSR
0m/s
Gói tin truyền thành công 69919 72729 69972
Tổng số gói tin gửi đi 70033 72859 70101
Tỷ lệ % 99,84 99,82 99,82
5m/s
Gói tin truyền thành công 51120 48731 44450
Tổng số gói tin gửi đi 51547 50096 44685
Tỷ lệ % 99,17 97,28 99,47
10m/s
Gói tin truyền thành công 55272 61102 56998
Tổng số gói tin gửi đi 55652 62065 57391
Tỷ lệ % 99,32 98,45 99,32
15m/s
Gói tin truyền thành công 34680 44709 42969
Tổng số gói tin gửi đi 35149 45723 43396
Tỷ lệ % 98,67 97,78 99,02
20m/s
Gói tin truyền thành công 31045 49969 50373
Tổng số gói tin gửi đi 31498 51238 50845
4.3.1.2. Thời gian thiết lập kết nối a. Mô hình Random Waypoint
Bảng 8: Thời gian thiết lập kết nối trung bình-Random_Waypoint
Tốc độ
Giao thức 0m/s 5m/s 10m/s 15m/s 20m/s
DSDV (s) 0,0045 1,1788 5,4950 5,0125 6,9357
AODV (s) 0,6204 1,6365 1,4021 2,3528 1,4003
DSR (s) 0,0333 1,4792 3,8303 3,4793 0,5594
b. Mô hình Random Walk
Bảng 9: Thời gian thiết lập kết nối trung bình-Random_Walk
Tốc độ
Giao thức 0m/s 5m/s 10m/s 15m/s 20m/s
DSDV (s) 0,0039 0,7459 0,2433 0,0721 0,0514
AODV (s) 0,0077 3,2728 1,8551 6,0929 0,9361
4.3.2. Sử dụng gnuplot để vẽ đồ thị
Tôi đã sử dụng gnuplot với input là các file sau: • Time_of_connection_setup_randomWaypoint • Time_of_connecion_setup_randomWalk
Thực hiện các theo tác trong chế độ tương tác của gnuplot để vẽ các đồ thị trong mục 4.3.2.2: Thời gia thiết lập kết nối.
4.3.2.1. Tỷ lệ phân phát gói tin thành công a. Mô hình Random Waypoint
Bảng 10: Tỷ lệ phân phát gói tin thành công - Random Waypoint
Tốc độ
Giao thức 0m/s 5m/s 10m/s 15m/s 20m/s
DSDV (%) 98,40 98,96 99,46 99,03 98,69
AODV (%) 99,75 98,13 98,95 98,29 97,95
DSR (%) 99,72 99,34 99,69 99,19 99,28
Hình 16: Đồ thị tỷ lệ phân phát gói thành công – Random Waypoint
Kết quả phân phát gói tin dữ liệu
P hầ n tr ăm g ói t in t ru yề n th àn h cô ng ( % ) Vận Tốc
b. Mô hình Random Walk
Bảng 11: Tỷ lệ phân phát gói tin thành công – Random Walk
Tốc độ
Giao thức 0m/s 5m/s 10m/s 15m/s 20m/s
DSDV (%) 99,84 99,17 99,32 98,67 98,56
AODV (%) 99,82 97,28 98,45 97,78 97,52
DSR (%) 99,82 99,47 99,32 99,02 99,07
Hình 17: Đồ thị tỷ lệ phân phát gói tin thành công – Random Walk
Kết quả phân phát gói tin dữ liệu
P hầ n tr ăm g ói t in t ru yề n th àn h cô ng ( % ) Vận Tốc
4.3.2.2. Thời gian thiết lập kết nối a. Random Waypoint
Hình 18: Đồ thị thời gian thiết lập kết nối trung bình_Random-Waypoint
b. Mô hình Random Walk
4.4. Đánh giá ảnh hưởng của sự chuyển động của nút mạng đến hiệu suất của các giao thức định tuyến của các giao thức định tuyến
Thông qua tập các cấu hình mạng mô phỏng được xây dựng ở trên, chúng tôi tiến hành mô phỏng, phân tích, khảo sát ảnh hưởng của sự chuyển động các nút đến hiệu suất của ba giao thức định tuyến điển hình trong mạng MANET là: DSDV, AODV và DSR. Các kết quả so sánh được bao gồm: kết quả về tỷ lệ phân phát gói tin thành công và thời gian phản ứng của các giao thức định tuyến (Thời gian thiết lập kết nối).
Hình 16 thể hiện tỷ lệ phân phát gói tin thành công trong mô hình Random Waypoint với 10 nguồn phát. Các giao thức cho kết quả làm việc khá tốt với tỷ lệ đạt trên 97%, tỷ lệ mất gói tin là rất ít chỉ chiếm khoảng từ 1-3%. Đi vào xem xét sâu hơn nữa chúng ta thấy ngay hoạt động tốt nhất là giao thức DSR gần như các gói tin truyền đi đều tới đích, tỷ lệ rớt gói luôn dưới 1%. Giao thức AODV thể hiện ưu điểm của mình khi tô-pô mạng cố định không có thay đổi nào, nó cho phép truyền dữ liệu khá tin cậy với tỷ lệ gói tin truyền thành công là 99,75% nhưng khi các nút mạng thay đổi tốc độ di chuyển thì hiệu quả của nó lại bị giảm đi nhiều hơn so với các giao thức còn lại. Nhìn chung cả ba giao thức hoạt động khá tốt, tỷ lệ rớt gói là rất nhỏ và chỉ bị giảm đôi chút khi các nút thay đổi tốc độ chuyển động làm cho tô-pô mạng thay đổi.
Với mô hinh Radom Walk, tỷ lệ phân phát gói tin thành công được thể hiện trong hình 18. Các giao thức cũng có tỷ lệ phân phát gói tin thành công là rất cao như trong mô hình Radom Waypoint. Hoạt động hiệu quả nhất vẫn là DSR với việc thích nghi tốt với sự thay đổi của mạng khi các nút di chuyển liên tục theo các vẫn tốc khác nhau.
Hình 19 thể hiện thời gian thiết lập kết nối trong mạng hoạt động theo mô hình Random Waypoint. Đây là khoảng thời gian được tính từ khi nút nguồn có yêu cầu truyền dữ liễu đến khi bắt đầu truyền. Thời điểm này chính là lúc nút thực hiện quá trình bắt tay ba bước thiết lập kết nối. Tùy vào từng loại giao thức và trạng thái của tô-pô mạng hiện tại mà quá trình thiết lập kết nói này có thể diễn ra thành công hoặc thất bại, lúc đó các nút nguồn sẽ phải truyền lại gói tin. Từ hình vẽ chúng ta có thể thấy ban đầu khi mạng ít thay đổi, các nút chuyển động rất chậm với tốc độ dưới 5m/s thì khoảng thời gian cần thiết để thiết lập kết nối của cả ba giao thức là như nhau. Nhưng khi các nút mạng chuyển động nhanh hơn với vận tốc từ 5m/s tới 10m/s thì lúc này có sự phân hóa rõ rệt giữa các giao thức định tuyến. Giao thức chủ ứng DSDV cần tới nhiều thời gian nhất để thiết lập kết nối, thời gian hội tụ rất chậm, có thời điểm phải mất tới 5,49s mới thiết lập xong được kết nối truyền thông. Bên cạnh đó thì giao thức DSR cần tới hơn 3s
cho việc kết nối và giao thức có thời gian kết nối nhanh nhất là AODV với thời gian tối đa cho việc thiết lập kết nối là 1,4s. Một điều khá đặc biệt mà đồ thị 19 cho chúng ta thấy đó là khi các nút mạng tăng vận tốc di chuyển lên trong khoảng từ 10m/s đến 15m/s thì thời gian thiết lập kết nối của hai giao thức DSDV và DSR là giữ nguyên không không có sự tăng đột biến trừ giao thức AODV có mất thời gian kết nối lâu hơn một chút.
Hình 20 thể hiện đồ thị về thời gian thiết lập kết nối với mô hình Random Walk. Với mô hình di chuyển này các nút mạng chuyển động liên tục không có quãng thời gian nghỉ với việc chọn ngẫu nhiên hướng đi và tốc độ chuyển động. Trái với mô hình chuyển động Radom Waypoint, trong mô hình này giao thức DSDV lại thể hiện được ưu điểm vượt trội của mình, cho phép kết nối nhanh chóng với thời gian luôn dưới 1s cho dù tô-pô mạng có thay đổi nhanh hơn đi chăng nữa, giao thức vẫn cho khả năng kết nối nhanh chóng. Khi các nút mạng chuyển động nhanh hơn dẫn tới tô-pô mạng cũng thay đổi một cách liên tục thì hai giao thức còn lại: DSR và AODV phải cần tới một khoảng thời gian từ 3 đến 5s cho việc thiết lập kết nối. Các nút mạng chuyển động càng nhanh thì càng cần nhiều thời gian để thiết lập kết nối hơn do tô-pô mạng thay đổi liên tục, các nút phải mất thêm một khoảng thời gian cần thiết để học hỏi về mạng mới.
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN
1. Các kết quả của khóa luận
Khóa luận đã trình bày các kết quả khảo sát đánh giá về ảnh hưởng của sự chuyển động các nút mạng đến hiệu suất của một số giao thức định tuyến trong MANET. Khóa luận đã nghiên cứu một cách chi tiết về môi trường mạng, các giao thức định tuyến, các