Mô phỏng, đánh giá ảnh hƣởng và giải pháp làm giảm hiệu ứng của tấn công lỗ đen

Một phần của tài liệu Nghiên cứu giải pháp chống tấn công lỗ đen trong mạng không dây di động (Trang 42)

tấn công lỗ đen

Trong mục này luận văn sẽ trình bày việc tiến hành mô phỏng đánh giá ảnh hưởng và giải pháp làm giảm ảnh hưởng của tấn công lỗ đen trong mạng MANET. Để tiếp cận một cách có hệ thống, trước tiên ta phải xác định được các tham số của môi trường (hệ thống) trong quá trình mô phỏng, các độ đo hiệu năng được chọn làm tiêu chuẩn để so sánh. Sau đó tôi sẽ thực hiện một dãy các thí nghiệm với các kịch bản khác nhau nhằm đưa ra được lượng thông tin lớn nhất về ảnh hưởng của tấn công lỗ đen. Cuối cùng là việc phân tích, đánh giá các kết quả thu được dưới dạng bảng, biểu từ đó đưa ra kết luận, nhận xét.

a. Các độ đo hiệu năng được đánh giá

- Tỷ lệ phân phát gói tin thành công(PDR – Packet Delivery Ratio): Là tỷ

đi nguồn phát. Giá trị của tỉ số này càng lớn chứng tỏ hiệu năng hoạt động của mạng càng cao

- Số gói tin bị mất: Là tổng số gói tin bị loại bỏ trong quá trình mô phỏng.

Được tính bằng hiệu giá trị giữa tổng số gói tin đã gửi và tổng số gói tin đã nhận.

- Độ trễ trung bình (End-to-End Delay): Thời gian trung bình để gửi một

gói dữ liệu tới đích. Nó bao gồm cả độ trễ gây ra bởi quá trình khám phá tuyến và dữ liệu truyền tải nằm trong hàng đợi. Chỉ các gói dữ liệu được truyền thành công tới đích mới được tính.

b. Thiết lập các lựa chọn, tham số mô phỏng

Như đã trình bày ở trên, do đặc thù của mạng MANET là mạng động với băng thông thấp, năng lượng của nút hạn chế cho nên khi nghiên cứu về ảnh hưởng của tấn công lỗ đen trong mạng MANET ta cần chú ý đến một số lựa chọn, tham số mô phỏng như:

- Kích thước mạng (độ lớn của mạng): Số lượng nút trong mạng

- Mật độ nút: Tính theo số hàng xóm trung bình hoặc theo số nút trung bình trong diện tích phủ sóng (radio range) của một nút.

- Độ linh động của mạng: Được đo bằng tốc độ chuyển động trung bình của các nút mạng.

- Các mẫu lưu lượng: Hệ thống với các mẫu lưu lượng như CBR hoặc TCP chẳng hạn.

c. Các kịch bản mô phỏng

Kịch bản mô phỏng trong mạng MANET được cấu thành bởi các yếu tố như tô-pô mạng, mô hình chuyển động, mô hình sinh lưu lượng, diện tích và hình dạng vùng mô phỏng, thời gian hoạt động của các nguồn sinh lưu lượng, thời gian mô phỏng. Bằng cách thay đổi các yếu tố kể trên sẽ cho chúng ta những ngữ cảnh mạng khác nhau.

Trong luận văn này, kịch bản mô phỏng tôi xây dựng gồm 50 nút có vị trí khởi tạo ngẫu nhiên trong một vùng địa lý có kích thước 1000m x 1000m với phạm vi truyền sóng vô tuyến của mỗi nút là 250m (bán kính). Tọa độ của mỗi nút tại một vị trí trong vùng mô phỏng có dạng (x,y,z) trong đó z có giá trị bằng 0.

Nút di chuyển theo mô hình Random Waypoint, được hiểu là đầu tiên 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 gọi là thời gian tạm dừng. Khi quãng thời gian này hết hạn, nút chọn ngẫu nhiên một đích trong khu vực mô phỏng và một tốc độ được phân bố đều giữa [Speed min, Speed max]. Sau đó, nút di chuyển tới vị trí mới với tốc độ đã chọn. Khi tới vị trí mới, nút dừng một khoảng thời gian được chọn theo phân bố đồng đều giữa [Pmin, Pmax] và sau đó tiếp tục lại quá trình. Trong mô phỏng việc

khởi tạo vị trí các nút và quá trình di chuyển theo mô hình trên được thực hiện bằng cách sử dụng công cụ “./setdest”- một ứng dụng đã được cài đặt trong gói all-in-one của phần mềm NS2. Chạy setdest với các tham số sau để tạo hình trạng mạng với các tốc độ di chuyển khác nhau là 0, 5, 10, 15, 20m/s :

./setdest -n <num of nodes> -p <pausetime> -s <maxspeed> -t <simtime> -x <maxx> -y <maxy> > <outdir>/<scenario-file>

./setdest –n 50 –p 10 –s 0.0 –t 600 –x 1000 – y 1000 > kichban1-AODV- n50-t600-1000-1000 ./setdest –n 50 –p 10 –s 5.0 – t 600 –x 1000 – y 1000 > kichban2-AODV- n50-t600-1000-1000 ./setdest –n 50 –p 10 –s 10.0 – t 600 –x 1000 – y 1000 > kichban3-AODV- n50-t600-1000-1000 ./setdest –n 50 –p 10 –s 15.0 – t 600 –x 1000 – y 1000 > kichban4-AODV- n50-t600-1000-1000 ./setdest –n 50 –p 10 –s 20.0 – t 600 –x 1000 – y 1000 > kichban5-AODV- n50-t600-1000-1000

Giao thức UDP được chọn để đưa vào mô phỏng bởi trong các ứng dụng mạng MANET sử dụng nhiều trên giao thức này. Thực thể truyền thông CBR được gắn trên nút có tốc độ phát gói tin không đổi là 4 gói tin/giây và các gói tin có kích thước là 512 byte. Việc sinh ra các lưu lượng bao gồm 10 kết nối được cho bởi công cụ cbrgen đã được tích hợp sẵn trong phần mềm NS2 với cú pháp như sau:

ns cbrgen.tcl [-type cbr|tcp] [-nn nodes] [-seed seed] [-mc connections] [-rate rate] > <outdir>/<scenario-file>

Ns cbrgen.tcl –type cbr –nn 50 –seed 1.0 –mc 10 –rate 4.0 > scenarios/cbradov

Việc sử dụng các công cụ setdestcbrgen 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.

Các kịch bản tôi tiến hành có thời gian mô phỏng là 600s.

Sau khi đã tạo các ngữ cảnh về mô hình di chuyển, nguồn lưu lượng, tiếp đến là việc tạo các nút đúng theo quy trình đã nêu ở phần trên. Ở đây luận văn tạo ra 3 kịch bản: thứ nhất là kịch bản với các nút cài đặt giao thức AODV thông thường, thứ hai là trong mạng bị ảnh hưởng bởi một nút lỗ đen, thứ ba là các nút trong kịch bản thứ nhất được thay bằng giao thức sửa đổi idsaodv và có một nút

lỗ đen. Mỗi kịch bản tương ứng với 5 ngữ cảnh tương ứng với 5 tốc độ di chuyển của các nút như đã nêu ở trên.

Việc tạo cấu hình các nút không dây cho bởi đoạn mã sau:

# configure node, please note the change below. $ns_ node-config -adhocRouting $val(rp) \ (adsbygoogle = window.adsbygoogle || []).push({});

-llType $val(ll) \ -macType $val(mac) \ -ifqType $val(ifq) \ -ifqLen $val(ifqlen) \ -antType $val(ant) \ -propType $val(prop) \ -phyType $val(netif) \ -topoInstance $topo \ -agentTrace ON \ -routerTrace ON \ -macTrace ON \ -movementTrace ON \ -channel $chan_1_

Tạo các nút với vòng lặp for và thay đổi giao thức cho mỗi kịch bản được cho bởi đoạn mã sau:

for {set i 0} {$i < $val(nnaodv)} {incr i} { set node_($i) [$ns_ node]

$node_($i) random-motion 0 ;#disable random motion }

# Creating Black Hole nodes for simulation

$ns_ node-config -adhocRouting blackholeAODV for {set i $val(nnaodv)} {$i < $val(nn)} {incr i} { set node_($i) [$ns_ node]

$node_($i) random-motion 0 ;#disable random motion $ns_ at 0.01 "$node_($i) label \"blackhole node\""

Trong đó các giá trị nnaodv và giá trị rp có thể thay đổi tùy từng kịch bản như đã đề cập ở trên. Các tệp mô phỏng được tạo ra đặt tên tùy các kịch bản ví

dụ như: kịch bản 1 được đặt tên tăng dần là normaladov1->5.tcl tương tự kịch bản 2 là blackholeaodv1->5.tcl, kịch bản 3 là idsaodv1->5.tcl.

Tóm lại, trong mỗi ngữ cảnh mô phỏng, các tham số mô phỏng giống nhau được cho bởi bảng sau:

Bảng 3.1 – Cấu hình mạng mô phỏng Thông số Giá trị Cấu hình chung Khu vực địa lý 1000m x 1000m Tổng số nút 50 nút Vùng thu phát sóng 250m Cấu hình di chuyển Tốc độ di chuyển nhanh nhất 20 m/s  72 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

Nguồn sinh lưu lượng CBR

Số kết nối 10

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

Tốc độ phát gói 4 gói/s

3.4. Tiến hành mô phỏng, phân tích tệp vết để tính các tham số hiệu năng

Sau khi xây dựng xong các kịch bản với các tham số mô phỏng như trên, tôi tiến hành mô phỏng các kịch bản để thu được các tệp vết. Tệp vết là tệp chứa tất cả các sự kiện trong mô phỏng như thời điểm gói tin được gửi, nút nào sinh ra chúng, nút nào đã nhận chúng, kiểu của gói tin gửi, nếu bị loại bỏ thì lý do bị loại bỏ là gỉ? Trong các mô phỏng này, tôi sử dụng định dạng tệp “new trace” cho môi trường mạng không dây. Ví dụ tệp “new-trace” được thể hiện trong Phụ lục B.

Để đánh giá các tham số hiệu năng, luận văn tập trung vào các trường sau trong tệp .tr:

- “s” giá trị của thông tin sự kiện trong trường 0 để đếm xem có bao nhiêu gói CBR được gửi bởi nút gửi.

- “r” giá trị của thông tin sự kiện trong trường 0 để đếm xem có bao nhiêu gói CBR được nhận bởi nút nhận.

- “node id” giá trị thông tin chỉ số nút trong trường 4, chỉ ra chỉ số nút gửi, nút nhận.

Ngoài ra căn cứ vào dấu hiệu trường 19 - Trace Level chỉ ra gói tin gửi, nhận ở tầng nào trong mô hình OSI (trường thứ 19 trong tệp .tr bao gồm các giá trị như MAC, RTR, AGT tương ứng với các tầng MAC, tầng Network và tầng Transpot).

Sau khi xác định rõ các trường trong tệp .tr cho việc tính toán các tham số hiệu năng. Luận văn sử dụng ngôn ngữ AWK [1] để tiến hành tính toán. Nội dung tệp ketqua.awk được trình bày trong phụ lục C.

Một phần của tài liệu Nghiên cứu giải pháp chống tấn công lỗ đen trong mạng không dây di động (Trang 42)