Tải bản đầy đủ (.pdf) (20 trang)

dự đoán mức độ nghiêm trọng của sự gián đoạn dịch vụ mạng

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 (819.87 KB, 20 trang )

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
VIỆN TOÁN ỨNG DỤNG VÀ TIN HỌC

PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG

Dự đoán mức độ nghiêm trọng
của sự gián đoạn dịch vụ mạng

Giảng viên hướng dẫn: LÊ CHÍ NGỌC
Sinh viên thực hiện: Vũ Mạnh Quang
MSSV: 20163332
Lớp: Toán – Tin K61

Hà Nội-2020


Nội dung
Lời nói đầu............................................................................................................................ 2
Chương 1: Điều tra, khảo sát .............................................................................................. 3
1.1. Khảo sát hiện trạng...................................................................................................... 3
1.2. Mô hình nghiệp vụ ...................................................................................................... 3
1.3. Đặc tả yêu cầu phần mềm ........................................................................................... 4
1.4. Dữ liệu thực nghiệm .................................................................................................... 5
1.5. Mô hình áp dụng ......................................................................................................... 6
Chương 2: Phân tích hệ thống ............................................................................................ 9
2.1. Biểu đồ phân cấp chức năng ....................................................................................... 9
2.2. Biều đồ luồng dữ liệu .................................................................................................. 9
2.2.1. Biều luồng dữ liệu mức ngữ cảnh ........................................................................ 9
2.2.2. Biều đồ luồng dữ liệu mức đỉnh ......................................................................... 10
2.2.3. Biểu đồ luồng dữ liệu mức dưới đỉnh chức năng xử lý dữ liệu .......................... 10
2.2.4. Biểu đồ luồng dữ liệu mức dưới đỉnh chức năng dự đoán ................................. 11


Chương 3: Thiết kế chương trình .................................................................................... 12
3.1. Về mặt dữ liệu ........................................................................................................... 12
3.2. Mô hình hệ thống ...................................................................................................... 12
3.3. Về mặt giao diện ....................................................................................................... 13
3.3.1. Công nghệ sử dụng ............................................................................................. 13
3.3.2. Giao diện sản phẩm ............................................................................................ 14
Kết luận............................................................................................................................... 18
Tài liệu tham khảo ............................................................................................................. 19

1


Lời nói đầu
Trong quá trình hình thành và phát triển, các công ty viễn thông luôn xảy ra
tình trạng gián đoạn dịch vụ mạng. Hệ lụy của các sự cố gián đoạn này ảnh
hưởng đến công ty là không tránh khỏi.
Hiểu biết và dự đoán được tại sao mức độ nghiêm trọng của sự cố gián đoạn
dịch vụ giúp nhà quản lý có thể đưa ra các chiến lược khắc phục sự cố, trấn an
khách hàng. Trong báo cáo này em sẽ xây dựng một hệ thống hỗ trợ ra quyết
định dự đoán mức độ nghiêm trọng của sự gián đoạn dịch vụ.
Báo cáo gồm 3 chương chính:
• Chương 1: Điều tra, khảo sát
• Chương 2 : Phân tích hệ thống
• Chương 3: Thiết kế chương trình
Em xin chân thành cảm ơn Thầy Lê Chí Ngọc đã tận tình giúp đỡ để em có
thể hoàn thành báo cáo này.
Do có nhiều hạn chế về mặt kiến thức nên báo cáo có thể không tránh khỏi
một số sai sót về mặt chủ quan và khách quan. Vì vậy em rất mong nhận được
sự góp ý, đánh giá của Thầy và các bạn để báo cáo cũng như hệ thống được
hoàn thiện hơn.

Em xin chân thành cảm ơn!
Hà Nội, ngày 15 tháng 06 năm 2020
Sinh Viên thực hiện
Vũ Mạnh Quang

2


Chương 1: Điều tra, khảo sát
1.1. Khảo sát hiện trạng
Trong quá trình hoạt động, các nhà mạng viễn thông thường xảy ra các
sự cố gián đoạn dịch vụ mạng là điều không thể tránh khỏi. Sự gián đoạn hoạt
động mạng xảy ra khá thường xuyên và gia tăng đột biến trong thời gian vừa
qua.
Việc xảy ra sự cố mạng là một vấn đề khá đau đầu đối với các nhà quản
lý của nhà mạng viễn thông, nó sẽ dẫn tới nhiều thiệt hại nghiêm trọng cho
khác hàng, làm giảm trải nghiệm của người dùng và chất lượng của dịch vụ
chăm sóc khách hàng. Khách hàng sẽ dễ thay đổi nhà mạng khi gặp nhiều sự
cố gián đoạn dịch vụ. Ngoài ra sẽ ảnh hưởng đến hoạt động kinh tế của nhiều
doanh nghiệp sử dụng dịch vụ, vấn đề này sẽ khá nghiêm trọng nếu có sự cố
xảy ra.
Chính vì vậy, việc dự đoán được có sự gián đoạn mạng xảy ra và sự cố có là
một sự cố nghiêm trọng có thể dẫn đến sự mất hẳn dịch vụ hay không sẽ giúp
ích cho nhà quản lý. Nhà quản lý có thể dựa vào kết quả dự đoán để đưa ra kế
hoạch sửa chữa phù hợp, hoặc đưa là các chiến lược khắc phục sau khi sự mất
hẳn dịch vụ diễn ra như trấn an khách hàng, thêm chính sách ưu đãi sau khi sự
cố xảy ra (nhà mạng Telstra đã từng có chính sách miễn phí dữ liệu một ngày
sau sự cố mất dịch vụ của hàng triệu người dùng). Nhà quản lý cũng có thể
đưa ra quyết định nâng cấp cơ sở hạ tầng mạng tại những vị trị thường xuyên
xảy ra sự cố.

1.2. Mô hình nghiệp vụ
Dữ liệu có được thông qua các bảo cáo được gửi về từ các nút mạng
trung gian tại các vị trí khác nhau sau một khoảng thời gian nhất định. Các
báo cáo gửi về sẽ được tập trung và lưu trữ trong cơ sở dữ liệu của hệ thống.
Thông qua nhưng dữ liệu này hệ thống sẽ phân tích các hoạt động của các nút
3


mạng, từ đó sẽ đưa ra các dự đoán liệu có sự gián đoạn xảy ra hay không, và
nếu có thì sự gián đoạn xảy ra có nghiêm trọng hay không.
Nhà quản lý sẽ quan tâm đến các vị trí có sự gián đoạn xảy ra, nhất là
các vị trí xảy ra sự gián đoạn nghiêm trọng, từ đó sẽ đưa ra các quyết định cụ
thể.
Người

Chương

dùng

trình

Yêu cầu hỗ trợ

Xử lý

Kết quả

Mô hình hóa nghiệp vụ
1.3. Đặc tả yêu cầu phần mềm
Ứng dụng được xây dựng với mục đích hỗ trợ nhà quản lý đưa ra quyết

định nên cần phải trình bày được kết quả dự đoán một cách trực quan, sinh
động để nhà quản lý có cái nhìn tổng quan về tình hình xảy ra sự gián đoạn
dịch vụ.
Khi xây dựng hệ thống cần thực hiện được:
• Người quản lý được toàn quyền quản lý dữ liệu bên trong, sẽ nhìn thấy
tất cả số liệu trong cơ sở dữ liệu.

4


• Tổng số dữ liệu hiện tại, tổng quan một số đặc trưng của bộ dữ liệu,
biểu đồ phân bố của các trường thuộc tính.
• Thông tin chi tiết về dự đoán sự gián đoạn dịch mạng, biểu đồ về các
mức độ gián đoạn dịch vụ.
1.4. Dữ liệu thực nghiệm
Dữ liệu sử dụng trong đề tài là bộ dữ liệu về mức độ nghiêm trọng của
sự gián đoạn dịch vụ mạnh của Telstra trong cuộc thi của họ trên Kaggle
( Bộ dữ liệu có 7381
bản ghi với 5 file dữ liệu gồm 8 trường thuộc tính. Mô hình xây dựng trong đề
tài sẽ dự đoán mức độ nghiêm trọng của sự gián đoạn dịch vụ mạng.
Một vài chú ý về bộ dữ liệu:
• Bộ dữ liệu được cung cấp không có giá trị nào bị thiếu, bị sai.
• Dữ liệu cần được tiền xử lý khi áp dụng các mô hình do dữ liệu có các
trường thuộc tính hầu như là thuộc tính phân loại.
• Bộ dữ liệu khá mất cân bằng, có 65% là nhãn 0, 25% là nhãn 1, 10% là
nhãn 2.

5



1.5. Mô hình áp dụng
Mô hình được sử dụng trong đề tài là cây quyết định. Cây quyết định là
một trong những phương pháp học tập được biết đến nhiều nhất và sử dụng
rộng rãi nhất trong các ứng dụng khai thác dữ liệu. Cây quyết định có khái
niệm đơn giản, dễ sử dụng, tốc độ tính toán khá cao và mạnh mẽ với các quy
tắc dễ hiểu nó tạo ra.
Cây quyết định được xây dựng theo nguyên lý đệ quy, chia để trị từ
trên xuống, dựa trên việc chia tách tập dữ liệu thành các tập con nhỏ hơn tại
mỗi nút cho đến khi các nút chứa dữ liệu của một lớp duy nhất. Việc phân
chia dữ liệu tại mỗi nút dựa trên một hàm đánh giá cụ thể, hầu hết các tiêu chí
đánh giá được đề xuất đều có chung mục tiêu là tối đã hóa tính đồng nhất của
lớp mục tiêu cho các dữ liệu được đặt trong mỗi nút, các tiêu chí được sử
dụng phổ biến nhất là chỉ số entropy, chỉ số gini.
• Chỉ số entropy: 𝑝𝑖 là xác suất của một dữ liệu tùy ý trong nút D thuộc
lớp đối tượng I, chỉ số entropy tại một nút đại diện cho độ hỗn loạn
thông tin tại nút đó: 𝐸(𝐷) = − ∑𝑚
𝑖=1 𝑝𝑖 log 2 𝑝𝑖 , tiêu chí lựa chọn thuộc
tính chia tách ở đây được tính theo mức giảm entropy hay còn gọi là

6


mức tăng thông tin thu được: 𝐺𝑎𝑖𝑛(𝐴) = 𝐸(𝐷) − 𝐸𝐴 (𝐷) = 𝐸(𝐷) −
∑𝑣𝑗=1

|𝐷𝑗 |
|𝐷|

× 𝐸(𝐷𝑗 ) (A là thuộc tính chia tách, v là số phân vùng sau khi


chia tách). Mức giảm entropy càng lớn càng tốt.
• Chỉ số gini: cũng như entropy, chỉ số gini đại diện cho mức độ pha tạp
thông tin trong dữ liệu: 𝑔𝑖𝑛𝑖(𝐷) = 1 − ∑𝑛𝑖=1 𝑝𝑖2 với 𝑝𝑖 là tần số tương
đối của lớp i trong D. Nếu tập dữ liệu D được chia tách thành hai tập
con 𝐷𝑖 𝑣𝑎̀ 𝐷2 , 𝑔𝑖𝑛𝑖𝐴 (𝐷) =

|𝐷1 |
|𝐷|

𝑔𝑖𝑛𝑖(𝐷1 ) +

|𝐷2 |
|𝐷|

𝑔𝑖𝑛𝑖(𝐷2 ) là chỉ số gini

khi chia tách D dựa trên thuộc tính A. Độ giảm sự pha tạp thông tin
theo thuộc tính A: ∆𝑔𝑖𝑛𝑖(𝐴) = 𝑔𝑖𝑛𝑖(𝐷) − 𝑔𝑖𝑛𝑖𝐴 (𝐷). Thuộc tính cung
cấp 𝑔𝑖𝑛𝑖𝑠𝑝𝑙𝑖𝑡 (𝐴) nhỏ nhất (hoặc mức giảm sự pha tạp thông tin lớn
nhất) được chọn để phân chia nút.
Tập hợp các quy tắc phân tách có thể được tìm thấy dọc theo đường
dẫn kết nối gốc cây với một nút lá tạo thành quy tắc phân loại. Trong giai
đoạn dự đoán, để gán lớp mục tiêu cho một dữ liệu mới, một đường dẫn được
theo dõi từ nút gốc đến nút lá bằng cách tuân theo chuỗi quy tắc được áp dụng
cho các giá trị của các thuộc tính của dữ liệu mới. Lớp mục tiêu dự đoán sau
đó trùng khớp với lớp mà nút lá đạt được đã được dán nhãn trong giai đoạn
phát triển.
Cây quyết định là một mô hình phân lớp tốt, tuy nhiên chúng cũng dễ
xảy ra hiện tượng quá mức (overfitting) do cây có thể có quá nhiều nhánh và
nhạy cảm với dữ liệu huấn luyện dẫn đến không tổng quát để dự đoán. Để

khắc phục, một số quy tắc cắt tỉa cây được đưa ra.
• Quy tắc cắt tỉa trước: sử dụng một số tiêu chí hạn chế sự phát triển của
cây khi xây dựng cây như kích thước nút (nút chứa số lượng dữ liệu đặt
một ngưỡng nào đó), độ tinh khiết (tỷ lệ dữ liệu thuộc cùng một lớp),
7


cải thiện (mức độ giảm sự hỗn loạn hay phá tạp của dữ liệu), độ sâu tối
đa của cây,… Tuy nhiên việc chọn ngưỡng phù hợp cho các quy tắc là
khó khăn và đòi hỏi nhiều thử nghiệm.
• Quy tắc cắt tỉa sau: có những kỹ thuật được cắt tỉa sau, được áp dụng
sau khi đã xây dựng hoàn chỉnh một cây để giảm số lượng phân nhánh
và hy vọng cải thiện kết quả mô hình, phương pháp này sử dụng bộ dữ
liệu độc lập với tập huấn luyện để xác định cây được cắt tỉa tốt nhất.
Ưu điểm của cây quyết định:
• Làm việc tốt với bộ dữ liệu lớn
• Ứng dụng trong nhiều lĩnh vực khác nhau
• Sinh ra quy tắc dễ hiểu, các bộ luật ứng với mỗi nút lá
Nhược điểm của cây quyết định:
• Khó giải quyết các vẫn đề có biến mục tiêu liên tục
• Dễ thiên vị với bộ dữ liệu không cân bằng
• Dễ xảy ra quá mức (overfitting)

8


Chương 2: Phân tích hệ thống
2.1. Biểu đồ phân cấp chức năng

Biểu đồ phân cấp chức năng

2.2. Biều đồ luồng dữ liệu
2.2.1. Biều luồng dữ liệu mức ngữ cảnh

9


Biểu đồ luồng dữ liệu mức ngữ cảnh
2.2.2. Biều đồ luồng dữ liệu mức đỉnh

Biều đồ luồng dữ liệu mức đỉnh
2.2.3. Biểu đồ luồng dữ liệu mức dưới đỉnh chức năng xử lý dữ liệu

10


2.2.4. Biểu đồ luồng dữ liệu mức dưới đỉnh chức năng dự đoán

11


Chương 3: Thiết kế chương trình
3.1. Về mặt dữ liệu
Tên trường

Diễn giải

Type

id


id của một dữ liệu, chỉ thời gian

varchar

location

Vị trí của một nút mạng

varchar

event_type

Sự kiện xảy ra tại địa điểm trong

varchar

thời gian nào đó
resource_type

Tài nguyên phần cứng, cơ sở hạ

varchar

tầng của nút mạng tại 1 vị trí
log_feature

Tính năng nhật ký, ghi lại nhật ký

varchar


hoạt độn của nút mạng
volume

Khối lượng nhật ký

int

severity_type

Cảnh báo gửi về từ nút mạng

varchar

fault_severity

Mức độ nghiêm trọng của sự cố

int

3.2. Mô hình hệ thống

Mô hình hệ thống

12


3.3. Về mặt giao diện
3.3.1. Công nghệ sử dụng
Chương trình sử dụng các các công nghệ, thư viện Machine Learning
để lập trình mô hình máy học và sử dụng các ngôn ngữ HTML, CSS,

Javascript, Python để lập trình giao diện website.
• HTML là từ viết tắt của HyperText Markup Language (ngôn ngữ đánh
dấu siêu văn bản) dùng mô tả cấu trúc của các trang Web và tạo ra các
loại tài liệu có thể xem được trong trình duyệt.
• CSS (viết tắt của Cascading Style Sheets) là một ngôn ngữ định dạng
được sử dụng để mô tả trình bày các trang Web, bao gồm màu sắc,
cách bố trí và phông chữ. CSS cho phép chúng hiển thị nội dung tương
thích trên các loại thiết bị có kích thước màn hình khác nhau, chẳng
hạn như màn hình lớn, màn hình nhỏ như điện thoại hay máy tính bản.
• JavaScript là một ngôn ngữ nhanh và nhẹ chạy trong môi trường máy
chủ lưu trữ (ví dụ: trình duyệt web), JavaScript có thể được kết nối với
các đối tượng của môi trường để cung cấp kiểm soát chương trình đối
với chúng. JavaScript cho phép bạn thực hiện những điều phức tạp trên
các trang web như bản đồ tương tác. . . Javascript được hỗ trợ hầu như
trên tất cả các trình duyệt như Firefox, Chrome, . . . thậm chí các trình
duyệt trên thiết bị di động cũng có hỗ trợ.
• Python là một ngôn ngữ lập trình thông dịch (interpreted), hướng đối
tượng (object-oriented), và là một ngôn ngữ bậc cao (high-level) ngữ
nghĩa động (dynamic semantics). Python hỗ trợ các module và gói
(packages), khuyến khích chương trình module hóa và tái sử dụng mã.
Trình thông dịch Python và thư viện chuẩn mở rộng có sẵn dưới dạng
mã nguồn hoặc dạng nhị phân miễn phí cho tất cả các nền tảng chính

13


và có thể được phân phối tự do. Được sử dụng để chạy model của bài
toán.
• Framework Flask Flask là một web frameworks, nó thuộc loại microframework được xây dựng bằng ngôn ngữ lập trình Python. Flask cho
phép bạn xây dựng các ứng dụng web từ đơn giản tới phức tạp. Nó có

thể xây dựng các api nhỏ, ứng dụng web chẳng hạn như các trang web,
blog, trang wiki hoặc một website dựa theo thời gian hay thậm chí là
một trang web thương mại. Flask cung cấp cho bạn công cụ, các thư
viện và các công nghệ hỗ trợ bạn làm những công việc trên.
3.3.2. Giao diện sản phẩm
Trang DATA: Màn hình quản lý dữ liệu, hiển thị tổng số dữ liệu đang
có trong hệ thống cần được dự đoán, giúp nhà quản lý có cái nhìn tổng quan
về hệ thống, nhà quản lý có thể xem danh sách các dữ liệu với các thông tin
chính như id, vị trí, các sự kiện liên quan, tài nguyên cơ sở hạ tầng của nút
mạng, nhật ký hoạt động của nút mạng và loại cảnh báo, ngoài ra còn có biểu
đồ phân bố của từng thông tin thuộc tính dữ liệu, giúp nhà quản lý có cái nhìn
trực quan sinh động hơn.

s
14


Trang PREDICT: Trang dự đoán: đưa ra kết quả dự đoán rõ ràng cho từng
dữ liệu đầu vào, đưa ra một số biểu đồ thống kê về mức độ nghiêm trọng và
sự gián đoạn nghiêm trọng trên một số trường thuộc tính
15


16


17


Kết luận

Trong bài báo cáo này em đã trình bày về quy trình phân tích thiết kế hệ
thống hỗ trợ dự đoán mức độ nghiệm trọng của sự gián đoạn dịch vụ mạng,
bao gồm quy trình điều tra khảo sát, mô hình áp dụng, phân tích hệ thống và
thiết kế giao diện. Đưa ra các dự đoán dưới dạng báo cáo trực quan, dễ sử
dụng. Do còn những hạn chế nhất định về thời gian, kinh nghiệm nên bài báo
cáo không tránh khỏi những sai sót, em rất mong nhận được những ý kiến
đóng góp chỉnh sửa từ Thầy để bài báo cáo của em được hoàn thiện hơn.

18


Tài liệu tham khảo
[1] Carlo Vercellis, Business Intelligence: Data Mining and Optimization for
Decision Making, John Wiley & Sons, 2009.
[2] Ramesh Sharda • Dursun Delen • Efraim Turban, Business Intelligence
and Analytics: Systems for Decision Support, Laura Dent, 2014.
[3] Slide Datamining: Classification
[4] Vũ Hữu Tiệp, Machine Learning cơ bản, Diễn đàn machinelearningcoban.com, 2018.

19



×