Tải bản đầy đủ (.docx) (19 trang)

BÁO CÁO CHUYÊN ĐỀ HỌC PHẦN ĐÁNH GIÁ HIỆU NĂNG MẠNG ĐỀ TÀI Triển khai hệ thống giám sát và đánh giá hiệu năng mạng sử dụng công cụ Zabbix

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (913.62 KB, 19 trang )

<span class="text_page_counter">Trang 1</span><div class="page_container" data-page="1">

TRƯỜNG ĐẠI HỌC ĐIỆN LỰC

<b> KHOA CÔNG NGHỆ THÔNG TIN</b>

<b>BÁO CÁO CHUYÊN ĐỀ HỌC PHẦNĐÁNH GIÁ HIỆU NĂNG MẠNG</b>

<b>ĐỀ TÀI: Triển khai hệ thống giám sát và đánh giá hiệu năng mạng sử dụng công cụ Zabbix</b>

<b> </b>

<i><b>Hà Nội, tháng 3 năm 2022</b></i>

</div><span class="text_page_counter">Trang 2</span><div class="page_container" data-page="2">

Tìm kiếm tài liệu, ứng dụng.

Giảng viên chấm:

<b>Họ và tênChữ kýGhi chú</b>

Giảng viên chấm 1:

Giảng viên chấm 2:

</div><span class="text_page_counter">Trang 3</span><div class="page_container" data-page="3">

<b>MỤC LỤC</b>

<small>LỜI NÓI ĐẦU...5</small>

<small>CHƯƠNG 1. GIỚI THIỆU VỀ AI VÀ THUẬT TỐN QUAY LUI...6</small>

<small>1.1. GIỚI THIỆU VỀ TRÍ TUỆ NHÂN TẠO...6</small>

<small>1.1.1. Trí tuệ nhân tạo là gì ?...6</small>

<small>1.1.2. Lịch sử...8</small>

<small>1.1.3. Lĩnh vực của AI...9</small>

<small>1.2. GIỚI THIỆU VỀ KỸ THUẬT QUAY LUI...10</small>

<small>1.2.1. Tư tưởng quay lui...10</small>

<small>CHƯƠNG 2. PHÁT BIỂU BÀI TOÁN VÀ THIẾT KẾ THUẬT TOÁN TỐI ƯU...15</small>

<small>2.1 Phát biểu bài toán...15</small>

<small>2.2 Thiết kế tối ưu thuật toán ...16</small>

<small>2.2.1. Biểu diễn bàn cờ vua...16</small>

<small>2.2.2. Các khả năng lựa chọn cho xi...17</small>

<small>2.2.3. Lựa chọn xi sao cho hiệu quả...18</small>

<small>2.2.4. Cách ghi nhận trạng thái mới ? trả về trạng thái cũ ?...19</small>

<small>2.2.5. Ghi nhận nhiệm vụ...19</small>

<small>2.2.6. Mô tả...19</small>

<small>2.2.7. Đánh giá thuật toán...21</small>

<small>2.2.8. Kết quả thực tế cài đặt...21</small>

<small>CHƯƠNG 3: THIẾT KẾ GIAO DIỆN...23</small>

<small>3.1. Màn hình đầu tiên khi chạy chương trình...23</small>

<small>3.2. Màn hình chính...24</small>

</div><span class="text_page_counter">Trang 4</span><div class="page_container" data-page="4">

<small>3.3. Màn hình chính...24</small>

<small>3.3.1. Ở nước đi đầu tiên ...24</small>

<small>3.3.2. Bắt đầu đi tuần ...26</small>

<small>3.3.3. Kết quả ...28</small>

<small>KẾT LUẬN...30</small>

<small>TÀI LIỆU THAM KHẢO...31</small>

</div><span class="text_page_counter">Trang 5</span><div class="page_container" data-page="5">

<i><b>LỜI NÓI ĐẦU</b></i>

</div><span class="text_page_counter">Trang 6</span><div class="page_container" data-page="6">

<b>Chương 1. Tổng quan về đánh giá hiệu năng mạng</b>

<b>1.1.Tầm quan trọng của việc đánh giá hiệu năng mạng</b>

Hiệu năng mạng là một vấn đề phức tạp do các yếu tố có thể tổng hợp đưa ra nhằm đánh giá vấn đề hiệu năng chưa thực sự rõ ràng. Đã có nhiều khái niệm, tham số được đưa ra nhằm minh chứng cho bản chất của vấn hiệu năng, lý giải cho việc truyền thông tin hiệu quả hay kém hiệu quả giữa các hệ thống trong mạng. Tuy nhiên, trong thực tế rất cần có những khái niệm bản chất và sát thực tiễn với mục tiêu đánh giá được toàn bộ vấn đề hiệu năng bao gồm cả các yếu tố đo đạc, theo dõi, điều khiển đều được tính đến. Có thể sơ lược khái niệm hiệu năng mạng như sau: Hiệu năng mạng là hiệu quả và năng lực hoạt động của hệ thống mạng. Như vậy việc đánh giá hiệu năng mạng chính là tính toán và xác định hiệu quả, năng lực thực sự của hệ thống mạng trong các điều kiện khác nhau.Các điều kiện được sử dụng trong đánh giá hiệu năng là rất quan trọng, chúng ảnh hưởng trực tiếp tới các kết quả thu được. Trong các điều kiện ảnh hưởng tới quá trình đánh giá hiệu năng thì kịch bản mô tả là yếu tố then chốt quyết định giá trị hiệu năng tại điểm cần đo. Trong kịch bản cần xác định các tham số đầu vào rõ ràng như các nút tham gia hệ thống, thiết bị kết nối, tác nhân tham gia, giaothức hoạt động, ứng dụng triển khai, thời gian thực hiện,… và rất nhiều yếu tố khác kết hợp tạo ra một kịch bản hoàn thiện.

<b>1.2.Các độ đo hiệu năng mạng</b>

</div><span class="text_page_counter">Trang 7</span><div class="page_container" data-page="7">

- Tỉ lệ mất gói tin (𝑝𝑎𝑐𝑘𝑒𝑡 𝑙𝑜𝑠𝑠 𝑟𝑎𝑡𝑒): được xác định là tỉ số của tổng số gói tin bị mất 𝑡𝑜𝑡𝑎𝑙 𝑙𝑜𝑠𝑠 𝑝𝑎𝑐𝑘𝑒𝑡 với tổng số gói tin đã gửi 𝑡𝑜𝑡𝑎𝑙 𝑠𝑒𝑛𝑡 𝑝𝑎𝑐𝑘𝑒𝑡 . Đối với mạng ổn định thì tỉ lệ này thấp, ngược lại tỉ lệ này rất cao. Tỉ lệ này mất gói tin được xác định theo công thức như sau:

- Mức độ sử dụng đường truyền: là khả năng tận dụng đường truyền của mạng. Chỉ số này cho biết khả năng truyền của mạng qua đường truyền là mạnh hay yếu và tính theo cơng thức sau:

- Mức độ cơng bằng: là mức độ của các luồng thể hiện mạng có đảm bảo sự công bằng cho các kết nối khi trong mạng có nhiều loại hình thơng lượng khác nhau. Mức độ công bằng là 1 khi thông lượng của các luồng bằng nhau, và ngược lại.

- Kích thước hàng đợi trung bình: là chỉ số biểu thị trực tiếp mức độ sử dụng tài nguyên tại bộ định tuyến. Chỉ số này được xácđịnh bằng tỉ số của kích thước hàng đợi trung bình với kích thước thực của hàng đợi. Cơ chế có chỉ số này càng nhỏ sẽ có độ trễ tại hàng đợi nhỏ và ngược lại.

</div><span class="text_page_counter">Trang 8</span><div class="page_container" data-page="8">

<b>1.3.Các dạng lưu lượng mạng</b>

- Đó là một chuỗi các giao tiếp giữa hai điểm cuối; được giới hạn bởi việc mởvà kết thúc phiên. Có rất nhiều dữ liệu được lưu trữ trong một luồng có sẵn để phân tích. Các điểm dữ liệu được thu thập là:

o Mơ hình giải tích thuờng là khơng thể giải được nếu khơng được đơn giản hố nhờ các giả thiết, hoặc được phân rã thành các mơ hình nhiều cấp. Các mơ hình giải được thuờng rất đơn giản hoặc khác xa thực tế.

o Thuờng chỉ được sử dụng ngay trong giai đoạn đầu của việc thiết kế mạng, giúp cho nguời thiết kế dự đoán được các giá trị giới hạn của hiệu năng.

- Phương pháp mô phỏng:

o Phương pháp thực hiện cài đặt và thực nghiệm, địi hỏi một chi phí rất cao. Tuy nhiên, sau khi đã xây dựng xong bộ mơ phỏng, có thể tiến hành chạy chương trình mơ phỏng bao nhiêu lần tuỳ ý, với độ chính xác theo yêu cầu và chi phí cho mỗi lần chạy thuờng là rất thấp.

</div><span class="text_page_counter">Trang 9</span><div class="page_container" data-page="9">

o Các kết quả mơ phỏng nói chung vẫn cần được kiểm chứng, bằng phương pháp giải tích hoặc đo đạc.

o Phương pháp mơ hình Giải tích và mơ hình Mơ phỏng đóng vai trị rất quan trọng trong việc thiết kế và triển khai thực hiện hệ thống, đặcbiệt là ở giai đoạn đầu.

- Phương pháp độ đo

o Phương pháp chỉ có thể thực hiện được trên mạng thực, đang hoạt động, nó địi hỏi chi phí cho các cơng cụ đo và việc tiến hành đo.o Việc đo cần được tiến hành tại nhiều điểm trên mạng thực, ở những

thời điểm khác nhau và cần lặp đi lặp lại trong một khoảng thời gian đủ dài.

o Ngồi ra, nguời nghiên cứu phải có kiến thức về Lý thuyết thống kêthì mới có thể rút ra được các kết luận hữu ích từ các số liệu thu thập được.

- Tổng hợp các phương pháp đánh giá hiệu năng mạng

Hình 1.4.1

</div><span class="text_page_counter">Trang 10</span><div class="page_container" data-page="10">

<b>Chương 2: Sử dụng phần mềm mô phỏng NS2</b>

<b>2.1. NS2 (Network Simulator) là gì?</b>

<b>- NS2 là phần mềm mơ phỏng mạng điều khiển sự kiện riêng rẽ hướng đối </b>

tượng, được phát triển tại UC Berkely, viết bằng ngôn ngữ C++ và OTcl. NS2 rất hữu ích cho việc mô phỏng mạng diện rộng (WAN) và mạng local (LAN).

<b>o NS thực thi các giao thức mạng như: giao thức điều khiển truyền tải </b>

(TCP) và giao thức gói người dùng (UDP).

<b>o Các dịch vụ nguồn lưu lượng như: Giao thức truyền tập tin (FTP), </b>

Telnet, Web, tốc độ bit cố định (CBR) và tốc độ bit thay đổi (VBR).

<b>o Các kỹ thuật quản lý hàng đợi như: Vào trước ra trước (Drop Tail),</b>

dò sớm ngẫu nhiễn (RED) và CBQ.- Kiến trúc NS2

<b>o Dùng C++ để:</b>

 Mô phỏng giao thức chi tiết yêu cầu ngôn ngữ lập trình hệ thống

 Thao tác trên byte, xử lý gói, thực thi thuật tốn.

 Thực hiện bất kỳ việc gì mà cần phải xử lý tứng packet của một luồng.

<b>o Otcl để:</b>

 Mô phỏng những thông số hay cấu hình thay đổi.

</div><span class="text_page_counter">Trang 11</span><div class="page_container" data-page="11">

 Cấu hình, thiết lập, thời gian tương tác.

 Thực hiện những cái ta muốn bằng cách thao tác trên các đối tượng C++ đang tồn tại

<b>2.2. Cài đặt NS2</b>

<b>- Bước 1: Chuẩn bị hệ điều hành Linux ( Ubuntu, Lubuntu Alternate )</b>

/ Có thể cài trực tiếp lên laptop, desktop của mình hoặc có thể dùng máy ảo VMWare Player.

- Bước 2: Tải phần mềm NS2 ( allinone-2.35.tar.gz )

Bước 3: Sau khi tải xong file dạng tar.gz, ta di chuyển nó qua folder nào đó cho dễ truy cập nhất có thể, ta có thể đặt tại /home/[user]/

- Bước 4: Cài đặt các gói thư viện cần thiết (Cần có kết nối mạng)

<b>o Mở terminal và gõ lệnh dưới đây:</b>

sudo apt-get install build-essential autoconf automake libxmu-dev xgraph

- Bước 5: Giải nén file tải về

<b>o Ta mở Terminal lên, cd (change directory) đến thư mục chứa file tải </b>

về ở Bước 2. Gõ lệnh sau để giải nén (hoặc có thể click double nếu bạn dùng Lubuntu, mở ra và giải nén ra thư mục ns-allinone-2.35):

</div><span class="text_page_counter">Trang 12</span><div class="page_container" data-page="12">

tar zxvf ns-allinone-2.35.tar.gz

<b>o Sau khi giải nén ta thu được folder /ns-allinone-2.35/</b>

- Bước 6: Hiệu chỉnh 1 số dòng văn bản để ứng dụng có thể được cài đặt

<b>o Dùng 1 trình soạn thảo (Gedit, Vi, VIM, Nano…) tìm và mở file </b>

ns-allinone-2.35/ns-2.35/linkstate/ls.h. Tại dòng 137, thay thế dòng:void eraseAll() { erase(baseMap::begin(),

</div><span class="text_page_counter">Trang 13</span><div class="page_container" data-page="13">

<b>/ns-allinone-o Chú ý ghi chú lại mấy đường dẫn cần thiết.</b>

- Bước 8: Thiết lập biến môi trường

<b>o Như trong nội dung thông báo thì sau khi hồn tất cài đặt NS2, </b>

chương trình sẽ yêu cầu cái đặt biến môi trường. PATH

 LD_LIBRARY_PATH TCL_LIBRARY

<b>o Mở file /home/[user]/.bashrc (Nếu khơng nhìn thấy thì bạn nhấn </b>

Ctrl+H để hiện ra file này). Và chỉnh sửa dựa trên nội dung mà sau khi cài NS2 xong như hình dưới:

</div><span class="text_page_counter">Trang 14</span><div class="page_container" data-page="14">

export PATH=$PATH:...

export LD_LIBRARY_PATH=...export TCL_LIBRARY=...

<b>o Đoạn thêm vào tương ứng với đường dẫn mà ta đã ghi chú lại khi </b>

nãy. (Đường dẫn này có thể khác nhau với mỗi người dùng khác nhau)

<b>o Chú ý: Mỗi đường dẫn cách nhau dấu “:“. Riêng TCL_LIBRARY ta </b>

copy 2 lần đường dẫn.

<b>o Chạy lệnh sau để hệ thống cập nhật biến môi trường:</b>

source ~/.bashrc- Bước 9: Hoàn tất cài đặt

<b>o Ta mở Terminal và gõ lệnh: NS : kết quả trả về ký tự % (OK) nam : </b>

hiện ra bảng GUI về chương trình (OK)

</div><span class="text_page_counter">Trang 15</span><div class="page_container" data-page="15">

<b>2.3. Thiết lập mơ hình và cài đặt các thông số mạng</b>

- Ta có một mơ hình mạng đơn giản với 4 note mạng

</div><span class="text_page_counter">Trang 16</span><div class="page_container" data-page="16">

<b>- Khi có được mơ hình thì sẽ đến phần viết code khởi tạo các node mạng</b>

set ns [new Simulator]; #Create a simulator object$ns color 1 Blue; #Define different colors for data flows$ns color 2 Red ; #Define different colors for data flowsset nf [open out.nam w]; #Open the NAM trace file$ns namtrace-all $nf

set tf [open out.tr w]$ns trace-all $tf

#Define a 'finish' procedureproc finish {} {

global ns nf$ns flush-trace

close $nf ; #Close the NAM trace file

exec nam out.nam & ; #Execute NAM on the trace fileexit 0

#Create four nodes

set n0 [$ns node] ; set n1 [$ns node] ;set n2 [$ns node] ; set n3 [$ns node]

$ns duplex-link $n0 $n2 2Mb 10ms DropTail; #Create links between the nodes$ns duplex-link $n1 $n2 2Mb 10ms DropTail; #Create links between the nodes$ns duplex-link $n2 $n3 1.7Mb 20ms DropTail; # links between the nodes$ns queue-limit $n2 $n3 10; #Set Queue Size of link (n2-n3) to 10

</div><span class="text_page_counter">Trang 17</span><div class="page_container" data-page="17">

$ns duplex-link-op $n0 $n2 orient right-down; #Give node position (for NAM)$ns duplex-link-op $n1 $n2 orient right-up; #Give node position (for NAM)$ns duplex-link-op $n2 $n3 orient right; #Give node position (for NAM)$ns duplex-link-op $n2 $n3 queuePos 0.5; #Monitor the queue for link (n2-n3)#Setup a TCP connection

set tcp [new Agent/TCP]$tcp set class_ 2

$ns attach-agent $n0 $tcpset sink [new Agent/TCPSink]$ns attach-agent $n3 $sink$ns connect $tcp $sink$tcp set fid_ 1

#Setup a FTP over TCP connectionset ftp [new Application/FTP]$ftp attach-agent $tcp

set cbr [new Application/Traffic/CBR]; #Setup a CBR/ UDP connection

</div><span class="text_page_counter">Trang 18</span><div class="page_container" data-page="18">

$cbr attach-agent $udp$cbr set type_ CBR

$cbr set packet_size_ 1000$cbr set rate_ 1mb

$cbr set random_ false

#Schedule events for the CBR and FTP agents$ns at 0.1 "$cbr start"

$ns at 1.0 "$ftp start"$ns at 4.0 "$ftp stop"$ns at 4.5 "$cbr stop"

$ns at 4.5 "$ns detach-agent $n0 $tcp ; $ns detach-agent $n3 $sink"$ns at 5.0 "finish"

#Print CBR packet size and interval

puts "CBR packet size = [$cbr set packet_size_]"puts "CBR interval = [$cbr set interval_]"

#Run the simulation$ns run

<b>2.4. Chạy mơ hình và đánh giá các độ đo hiệu năng2.4.1. Chạy mơ hình</b>

</div><span class="text_page_counter">Trang 19</span><div class="page_container" data-page="19">

- Mơ hình đã được khởi tạo và chạy thành cơng trên phần mềm NS2

<b>2.4.2. Đánh giá các độ đô hiệu năng</b>

</div>

×