6 2.2.1 Sử dụng thuật toán phân cụm mật độ cho việc xác định ngưỡng cho khoảng thời gian gom nhóm các cảnh báo .... Sơ đồ hệ thống hạ tầng mạng có kiến trúc phân cấp Trong luận văn này,
Trang 1ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC BÁCH KHOA -
NGUYỄN NGỌC MINH THƯ
SỐ HÓA QUY TRÌNH QUẢN LÝ SỰ CỐ HẠ TẦNG
MẠNG TẠI CÔNG TY VIỄN THÔNG
Chuyên ngành: HỆ THỐNG THÔNG TIN QUẢN LÝ
Mã số: 83 40 405
LUẬN VĂN THẠC SĨ
TP.HỒ CHÍ MINH, tháng 08 năm 2020
Trang 2CÔNG TRÌNH ĐƯỢC HOÀN THÀNH TẠI TRƯỜNG ĐẠI HỌC BÁCH KHOA –ĐHQG -HCM
Cán bộ hướng dẫn khoa học: TS.LÊ HỒNG TRANG
Cán bộ chấm nhận xét 1: TS TRƯƠNG TUẤN ANH
Cán bộ chấm nhận xét 2: PGS.TS NGUYỄN TUẤN ĐĂNG
Luận văn thạc sĩ được bảo vệ tại Trường Đại học Bách Khoa, ĐHQG TP HCM, ngày 24 tháng 08 năm 2020
Thành phần Hội đồng đánh giá luận văn thạc sĩ gồm:
(Ghi rõ họ, tên, học hàm, học vị của Hội đồng chấm bảo vệ luận văn thạc sĩ)
1 Chủ tịch: TS LÊ LAM SƠN
2 Thư ký: PGS.TS NGUYỄN THANH BÌNH
3 Phản biện 1: TS TRƯƠNG TUẤN ANH
4 Phản biện 2: PGS.TS NGUYỄN TUẤN ĐĂNG
5 Ủy viên: PGS.TS VŨ THANH NGUYÊN
Xác nhận của Chủ tịch Hội đồng đánh giá LV và Trưởng Khoa quản lý chuyên ngành sau khi luận văn đã được sửa chữa (nếu có)
TS LÊ LAM SƠN
Trang 3ĐẠI HỌC QUỐC GIA TP.HCM
TRƯỜNG ĐẠI HỌC BÁCH KHOA
CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập - Tự do - Hạnh phúc
NHIỆM VỤ LUẬN VĂN THẠC SĨ
Họ tên học viên: NGUYỄN NGỌC MINH THƯ MSHV: 1870306
Ngày, tháng, năm sinh: 31/10/1991 Nơi sinh: Tiền Giang Chuyên ngành: HỆ THỐNG THÔNG TIN QUẢN LÝ Mã số : 8340405
I TÊN ĐỀ TÀI: SỐ HÓA QUY TRÌNH QUẢN LÝ SỰ CỐ HẠ TẦNG MẠNG
TẠI CÔNG TY VIỄN THÔNG
II NHIỆM VỤ VÀ NỘI DUNG:
Tìm ra ngưỡng thời gian quy định cho việc gom nhóm các cảnh báo, sự cố liên quan đang diễn ra trên hạ tầng mạng
Giảm thời gian nhận diện và thông tin sự cố
Hoàn thiện quy trình quản lý sự cố hạ tầng
III NGÀY GIAO NHIỆM VỤ: 24/02/2020
IV NGÀY HOÀN THÀNH NHIỆM VỤ: 21/06/2020
V CÁN BỘ HƯỚNG DẪN (Ghi rõ học hàm, học vị, họ, tên):
Trang 4LỜI CẢM ƠN
Để hoàn thành luận văn với đề tài “Số hóa quy trình quản lý sự cố hạ tầng mạng
tại công ty viễn thông”, bên cạnh sự nỗ lực, vận dụng những kiến thức tiếp thu,
đồng thời tìm tòi học hỏi cũng như thu thập thông tin số liệu liên quan đến đề tài, tôi luôn nhận được sự giúp đỡ, chỉ bảo tận tình của quý Thầy Cô, đồng nghiệp, bạn bè Tôi xin chân thành cảm ơn đến quý Thầy Cô tại Khoa - Khoa Học Máy Tính, phòng Sau Đại Học trường Đại Học Bách Khoa Đặc biệt tôi xin chân thành cảm ơn Tiến
Sĩ Lê Hồng Trang và Tiến Sĩ Phan Trọng Nhân, người đã tận tình hướng dẫn tôi nghiên cứu và hoàn thành luận văn thạc sĩ này
Tôi xin chân thành cảm ơn gia đình, cha mẹ, anh chị, những người luôn bên cạnh và ủng hộ, giúp đỡ tôi về mặt tinh thần để tôi có thời gian nghiên cứu, thực hiện luận văn
Trong quá trình thực hiện luận văn, dù có nhiều cố gắng hoàn thiện nhưng do khả năng và kinh nghiệm của bản thân còn hạn chế nên luận văn không tránh khỏi những thiếu sót Vì vậy, tôi rất mong nhận được sự góp ý chân thành từ quý Thầy
Cô nhằm bổ sung hoàn thiện trong quá trình nghiên cứu tiếp theo
Một lần nữa, xin trân trọng cảm ơn
Trang 5TÓM TẮT LUẬN VĂN
Giữ chân khách hàng được coi là một trong những mối quan tâm ở bất kỳ công ty nào, vì khách hàng là nguồn doanh thu cơ bản cho một doanh nghiệp Mất khách hàng không chỉ mất lợi nhuận, mà còn có thể khiến cả một doanh nghiệp gặp nguy hiểm Theo nghiên cứu của Cục quản lý các doanh nghiệp nhỏ phòng Thương mại Hoa Kỳ, chi phí để có được một khách hàng mới tốn gấp 5-7 lần so với chi phí duy trì khách hàng hiện có Để tăng lượng khách hàng, doanh nghiệp cần cải thiện việc thu mua và giữ chân khách hàng của mình Trong bài luận này sẽ trình bày về việc
số hóa quy trình quản lý sự cố hạ tầng mạng trong một công ty cung cấp dịch vụ viễn thông Internet bằng giải pháp gom nhóm các cảnh báo, sự cố liên quan đang
diễn ra trên hạ tầng mạng, tránh tình trạng một sự cố nhưng lại tạo nhiều thông tin
riêng lẻ để thực hiện xử lý Đồng thời tối ưu quy trình quản lý sự cố hạ tầng mạng giúp giảm thời gian thông tin và nâng cao sự hài lòng của khách hàng Bộ dữ liệu thu thập từ hệ thống giám sát và logs của hơn 30 nghìn thiết bị hạ tầng được lưu trữ trong một kho dữ liệu Kết quả chỉ ra rằng, quy trình trước đây phải mất trung bình 8.7 phút để phát hiện sự cố và thông tin đến đơn vị xử lý sự cố trong 20 phút, thì hiện tại với quy trình mới áp dụng kỹ thuật gom nhóm sự cố dùng DBSCAN, chỉ mất trung bình 5 phút để phát hiện sự cố và thông tin đến đơn vị xử lý sự cố trung bình 5 phút
Trang 6ABSTRACT
Customer retention is regarded as one of the most concerns in any company, since they provide the fundamental source of revenue for business Losing customers not only loses the profit, but also may put a whole business in danger In order to increase customer base, businesses need to improve both acquisition and retention
of its customers According to a study by the US Department of Commerce Small Business Administration, the cost of acquiring a new customer lose 5-7 times more than the cost of maintaining an existing customer In order to increase customer base, businesses need to improve both acquisition and retention of its customers In this paper, I will present about the The digitization process of management on infrastructure problems in an Internet telecommunications service company by grouping alerts and related incidents happening on the network infrastructure, avoiding creating a lot of duplicate information to perform processing At the same time, optimizing the network infrastructure incident management process helps reduce information time and improve customer satisfaction Data sets collected from the monitoring system and logs of more than 30,000 infrastructure devices are stored in a data warehouse The results show that the previous process took an average of 8.7 minutes to detect the problem and information to the troubleshooting unit in 20 minutes, now with the new process of applying incident clustering DBSCAN technique, it only takes 5 minutes to detect the problem and information
to the troubleshooting unit in 5 minutes
Trang 7LỜI CAM ĐOAN
Tôi cam đoan rằng: Đây là đề tài nghiên cứu của tôi
Những kết quả và các số liệu trong luận văn được thực hiện tại công ty X, không sao chép bất kỳ nguồn nào khác
Những thông tin trích dẫn trong luận văn đều được ghi rõ nguồn gốc trong tài liệu tham khảo
Nếu không đúng như đã nêu trên, tôi hoàn toàn chịu trách nhiệm về đề tài luận văn của mình
Hồ Chí Minh, ngày 03 tháng 08 năm 2020
Tác giả luận văn
Nguyễn Ngọc Minh Thư
Trang 8MỤC LỤC
DANH MỤC CÁC TỪ VIẾT TẮT iii
DANH MỤC HÌNH v
DANH MỤC BẢNG vii
I GIỚI THIỆU ĐỀ TÀI 1
1.1 Đặt vấn đề cần nghiên cứu 1
1.2 Ý nghĩa khoa học 3
1.3 Ý nghĩa thực tiễn 3
1.4 Mục tiêu nghiên cứu của đề tài 3
1.5 Giới hạn phạm vi và đối tượng nghiên cứu của đề tài 4
1.6 Bố cục luận văn 4
II CƠ SỞ LÝ THUYẾT 5
2.1 Các nghiên cứu liên quan đến đề tài 5
2.2 Lý thuyết liên quan 6
2.2.1 Sử dụng thuật toán phân cụm mật độ cho việc xác định ngưỡng cho khoảng thời gian gom nhóm các cảnh báo 6
2.2.2 Các nội dung hỗ trợ khác cho thuật toán 9
2.3 Quy trình xử lý sự cố hiện tại 13
III PHƯƠNG PHÁP NGHIÊN CỨU VÀ ỨNG DỤNG THỰC TẾ 15
3.1 Phương pháp nghiên cứu 15
3.1.1 Định dạng dữ liệu đầu vào 15
3.1.2 Giải pháp đề xuất 18
3.1.3 Mô hình dữ liệu 22
Xử lý dữ liệu Topo Access và Core từ API 28
3.1.4 Phân Tích Dữ Liệu 29
3.2 Kết quả 35
IV TRIỂN KHAI THỰC TẾ VÀ ĐÁNH GIÁ KẾT QUẢ 39
4.1 Triển khai thực tế 39
4.2 Đánh giá kết quả 43
4.2.1 Độ chính xác khi gom nhóm 43
4.2.2 Thời gian trung bình phát hiện sự cố (MTTD) 43
4.2.3 Đánh giá chất lượng việc gom nhóm 44
Trang 9V THÁCH THỨC VÀ HƯỚNG PHÁT TRIỂN 47
VI KẾT LUẬN 48
VII TÀI LIỆU THAM KHẢO 49
PHỤ LỤC A MÔ TẢ LOẠI THIẾT BỊ THUỘC CORE HAY ACCESS 51
PHỤ LỤC B MÔ TẢ LOẠI DỊCH VỤ PHÂN CHIA GOM NHÓM HOẶC ĐƠN LẺ 52 PHẦN LÝ LỊCH TRÍCH NGANG 54
Trang 10DANH MỤC CÁC TỪ VIẾT TẮT
trình ứng dụng
cố
trúc môi giới các đối tượng
Noise – Phân cụm mật độ không gian áp dụng với nhiễu
viện hạ tầng công nghệ thông tin
lý dịch vụ công nghệ thông tin
Sắp xếp các điểm để xác định cấu trúc phân cụm
Trang 1121 SLA Service Level Agreement – Thỏa thuận cấp độ dịch
vụ
quản lý mạng đơn giản
số xuất hiện, tần số nghịch của một từ trong tập dữ liệu
Trang 12DANH MỤC HÌNH
Hình 1 Số event và số ticket hàng tháng 2
Hình 2 Sơ đồ hệ thống hạ tầng mạng có kiến trúc phân cấp 3
Hình 3 Dạng cụm dữ liệu được khám phá bởi DBSCAN 7
Hình 4 Cơ sở dữ liệu cấu hình thiết bị 9
Hình 5 Quy trình tạo ticket và thông tin khi có sự cố đến đơn vị xử lý 13
Hình 6 Mô hình tổng quan dữ liệu đầu vào 15
Hình 7 Định dạng dữ liệu đầu vào 17
Hình 8 Block Code DBSCAN 19
Hình 9 Block code OPTICS 20
Hình 10 Kết quả thời gian DBSCAN 20
Hình 11 Kết quả thời gian OPTICS 21
Hình 12 Workflow cấu trúc dữ liệu và xác định ngưỡng thời gian 22
Hình 13 Block code chuyển đổi định dạng ngày giờ 22
Hình 14 Ngày giờ và cột idx là thời gian theo định dạng datetime 23
Hình 15 Dataframe khi đã merge các trường giá trị 23
Hình 16 Block code thực hiện so sánh thời gian trước và sau 23
Hình 17 Dataframe hiển thị thời gian trước sau 23
Hình 18 Block code tính khoảng thời gian gom nhóm bằng khoảng cách của thời điểm max và min 24
Hình 19 Block code tính quantile ngưỡng thời gian 25
Hình 20 Giá trị quantile của các tỉnh với eps và sample được định nghĩa 25
Hình 21 Ngưỡng thời gian gom nhóm tỉnh (locations) theo quantiles 26
Hình 22 Giá trị quantile của các thiết bị với eps và sample được định nghĩa 27
Hình 23 Ngưỡng thời gian gom nhóm thiết bị theo quantiles 27
Hình 24 Block code tính entropy 28
Hình 25 Block code và ngưỡng thời gian gom nhóm thiết bị, location theo quantile75 28
Hình 26 Workflow gom nhóm cảnh báo sử dụng TF-IDF 30
Hình 27 Block code xác định thiết bị core 31
Hình 28 Block code xác định thiết bị cùng thuộc một topo Core 31
Trang 13Hình 29 Block code tính độ tương tự theo msg mới với group hiện hữu bằng
TF-IDF 32
Hình 30 Các message trước khi phân tách 32
Hình 31 Các message sau khi ngăn cách bởi dấu chấm phẩy 33
Hình 32 Mức độ quan trọng các từ 33
Hình 33 Kết quả mức độ tương đồng giữa các ký tự trong chuỗi 34
Hình 34 Block code xác định thiết bị cùng thuộc một topo access 34
Hình 35 Block code gom những alert thuộc cùng một thiết bị 35
Hình 36 Block code tạo id mới cho alert nếu trong 20 phút chưa xuất hiện 35
Hình 37 Kết quả gom nhóm khi chạy thuật toán 36
Hình 38 Đánh giá lại các alert gom vào một group 37
Hình 39 Mô hình thiết kế hệ thống chạy gom nhóm cảnh báo online 40
Hình 40 Quy trình thông tin và xử lý sự cố 41
Hình 41 Đánh giá chất lượng gom nhóm từ đơn vị xử lý từ dashboard 45
Trang 14DANH MỤC BẢNG
Bảng 1 Ma trận hỗn loạn 12
Bảng 2 Định dạng dữ liệu đầu vào 16
Bảng 3 Kết quả so sánh DBSCAN và OPTICS 21
Bảng 4 Các tham số giá trị của thuật toán DBSCAN 24
Bảng 5 Ngưỡng thời gian gom nhóm tỉnh (locations) theo quantiles 26
Bảng 6 Ngưỡng thời gian gom nhóm thiết bị theo quantiles 28
Bảng 7 Giá trị entropy khi gom nhóm theo thiết bị, tỉnh ở các giá trị quantiles 28
Bảng 8 Kết quả đánh giá độ chính xác khi các alert được gom group 38
Bảng 9 Kết quả độ chính xác khi chạy thực tế 43
Bảng 10 Kết quả độ MTTD khi chạy thực tế 43
Bảng 11 Quy định đánh giá chất lượng gom nhóm trong một group 44
Bảng 12 Kết quả đánh giá chất lượng 46
Trang 15I GIỚI THIỆU ĐỀ TÀI
Event Management (EM), theo định nghĩa của ITIL[1], là quy trình giám sát, quản lý tất cả các sự kiện xảy ra trong suốt vòng đời của sự kiện thông qua cơ sở
hạ tầng Công Nghệ Thông Tin (CNTT) Nó cho phép sự hoạt động bình thường, phát hiện các điều kiện bất thường cũng như hoạt động chuyển sự kiện cần giải quyết lên cấp cao hơn
Một sự kiện (Event) có thể được định nghĩa là bất kỳ sự cố có thể phát hiện hoặc
có thể xảy ra ở thời điểm hiện tại có ảnh hưởng đến việc quản lý của hệ thống CNTT và đánh giá tác động mà sự sai lệch có thể gây ra cho các dịch vụ Các thông báo sự kiện thường được tạo bởi một dịch vụ CNTT hoặc một công cụ giám sát
Tình trạng hiện nay tại công ty Viễn thông:
nước (gần ~30 nghìn thiết bị), trong đó gồm 300 nghìn dịch vụ cần để quản lý các thiết bị nhưng chưa được vận dụng khai thác một cách hiệu quả
gần 170 nghìn sự kiện được giám sát từ một hệ thống giám sát Opsview, nhưng nhân sự vận hành giám sát chỉ phát hiện và tạo ra gần 14 nghìn ticket xử lý trên hệ thống Ticket – chiếm khoảng 7.6% sự cố hạ tầng mạng (như số liệu Hình 1)
Trang 16Hình 1 Số event và số ticket hàng tháng
Công ty Viễn thông đang gặp phải những vấn đề:
thời gian định kỳ), chỉ đang giám sát được 170 nghìn sự kiện trong khi mỗi tháng hơn ~18 triệu sự kiện hạ tầng, chiếm 0.01% sự kiện được giám sát và hệ thống cũng đang có nguy cơ quá tải và khó có khả năng mở rộng
tự động
cấp cao bị sự cố có thể ảnh hưởng tới tất cả thiết bị cấp thấp hơn, chính nguyên nhân này khi phát sinh ra nhiều sự kiện tại cùng thời điểm, việc không giải quyết được tất cả sự cố xảy ra dẫn đến thời gian nhận diện và
xử lý sự cố bị kéo dài (thời gian trung bình cho sự cố thông thường là 30 phút, sự cố phức tạp là 2 tiếng) Những cảnh báo dù có liên quan nhau nhưng được thông tin không đầy đủ hoặc rời rạc, lỗi bị xử lý riêng lẻ hoặc trùng lắp cần nhân sự chuyên môn cao để nhận diện sự cố làm tốn nhiều nguồn lực (con người) để thực hiện (tạo và gửi các thông tin sự cố đến các đơn vị xử lý) Bị động trong việc phát hiện và tìm lỗi xảy ra trên thiết bị
hạ tầng mạng làm cho khả năng phục vụ khách hàng bị gián đoạn, ảnh hưởng đến mức độ hài lòng của khách hàng
Trang 17Hình 2 Sơ đồ hệ thống hạ tầng mạng có kiến trúc phân cấp
Trong luận văn này, tôi sử dụng hơn 2 triệu logs sự kiện (năm 2019) để tìm ra ngưỡng thời gian quy định cho việc gom nhóm các cảnh báo, sự cố liên quan
đang diễn ra trên hạ tầng mạng, tránh tình trạng một sự cố nhưng lại tạo nhiều
thông tin riêng lẻ để thực hiện xử lý Cũng như hơn 100 nghìn logs sự kiện (tháng 6-7 năm 2020) để kiểm chứng lại việc gom nhóm khi chạy thực tế với các đơn vị quản lý sự cố
để kịp thời đưa giải pháp điều chỉnh cũng rất cần thiết của công ty
1.4 Mục tiêu nghiên cứu của đề tài
Khi tập trung nghiên cứu giải pháp gom nhóm các sự cố liên quan, sẽ có các mục tiêu mong muốn đạt được như sau:
Giảm thời gian nhận diện sự cố Trước đây thời gian phát hiện sự cố chậm
(thời gian trung bình cho sự cố thông thường là 30 phút, sự cố phức tạp là 2 tiếng)
Trang 18 Giảm số sự kiện nhiễu, số ticket bằng cách gom nhóm các sự kiện có liên
quan Trước đây lỗi được xử lý riêng lẻ và trùng lắp, tạo nên hàng chục nghìn ticket trên hệ thống giám sát và không có đơn vị xử lý
Giảm chi phí vận hành Trước đây tốn nhiều nguồn lực (con người) để duy
trì thực hiện (tạo và gửi các thông tin sự cố đến các đơn vị xử lý)
Tăng số khách hàng cần được chăm sóc chủ động mỗi tháng Trước đây Bị
động trong việc phát hiện và tìm lỗi xảy ra trên thiết bị hạ tầng mạng Khách hàng được chăm sóc kịp thời ngay khi hệ thống phát hiện có vấn đề
1.5 Giới hạn phạm vi và đối tượng nghiên cứu của đề tài
Giới hạn phạm vi nghiên cứu
hạ tầng mạng (Opsview), log thiết bị từ kibana lên đến hơn 200 triệu log thô/ tháng
tin cảnh báo (hệ thống ticket), gọi điện thoại thông tin chuyển cảnh báo đến đơn vị xử lý (Autocall), hệ thống gửi tin nhắn cảnh báo (Telegram),
hệ thống giám sát các cảnh báo được gom nhóm (Dashboard) nhằm đạt được những chỉ số như đã đề cập ở mục tiêu
Đối tượng nghiên cứu
Từ các cảnh báo của logs thiết bị, hệ thống giám sát hạ tầng mạng (Opsview) sẽ
thực hiện sử dụng thuật toán phân cụm để gom nhóm các cảnh báo
1.6 Bố cục luận văn
Ngoài phần mở đầu và phụ lục, luận văn gồm bảy chương như sau:
mục tiêu của đề tài
thuyết phâm cụm dựa trên mật độ, các nội dung hỗ trợ cho thuật toán
thuật toán phân cụm dựa trên mật độ để xác định khoảng thời gian gom nhóm
ra
Trang 19II CƠ SỞ LÝ THUYẾT
2.1 Các nghiên cứu liên quan đến đề tài
Đã có những nỗ lực giải quyết những khó khăn gom nhóm cảnh báo và tối ưu quy trình quản lý sự cố Trong đó có thể kể đến những nghiên cứu sau:
phụ thuộc [2] của Boris Gruschke vào năm 1998 đã trình bày lý thuyết
kiến trúc CORBA thiết lập đồ thị với các sự kiện tương quan để tìm ra được sự kiện lỗi Tuy nhiên, đề tài này chưa có thực nghiệm để chứng minh về thời gian xử lý, độ tin cậy khi thiết lập đồ thị với các sự kiện tương quan
[8] của Hidetoshi Yokota, Shun-ichi Iisaku, Tohru Asami vào năm 1999
đã thảo luận và đề xuất DHH như là một phương pháp tốc độ cao để liên kết các tập sự kiện lỗi bằng cách tận dụng các mối tương quan về thời gian giữa các sự kiện Đề tài này vẫn chỉ nghiên cứu xử lý những sự cố - lỗi đơn lẻ, các trường hợp phân cấp thành nhiều lỗi vẫn chưa được đề cập
có cấu trúc phân cấp trong môi trường điện toán phân tán [5] của
Gerhard Eschellbeck vào năm 2003 đã thiết kế một quy trình với hệ thống các cơ sở dữ liệu lưu trữ và thông báo các sự kiện mạng Đề tài này chỉ thiết kế quy trình kết hợp báo cáo những sự kiện mạng một cách thủ công dựa trên một môi trường điện toán và chưa áp dụng các kỹ thuật máy học
để tự động gom nhóm mà phải tự con người thực hiện
dụng các thuật toán trong học máy [16] của T Subbulakshmi, Geogre
Mathew, S.Mercy Shalinie vào năm 2010 đã thiết kế hệ thống phân loại cảnh báo hai pha Hệ thống phát hiện xâm nhập (IDS) giám sát một mạng được bảo mật để tìm bằng chứng về các chất độc hại có nguồn gốc từ bên trong hoặc bên ngoài Khi xác định lưu lượng đáng ngờ, IDS và ghi lại cảnh báo Pha đầu tiên gom nhóm và phân tích các nguyên nhân gốc Pha hai sử dụng thuật toán học máy để phân loại các cảnh báo thật/giả Khi có đợt cảnh báo, bộ phân loại có thể được cập nhật theo cách tăng dần theo đợt, vì thuật toán phân sử dụng là RIPPER, hỗ trợ học tập tăng dần Các quy tắc phân loại được học bởi RIPPER cho mỗi cảnh báo được cố vấn bởi một chuyên gia phân tích Điều này đảm bảo tính chính xác của phân loại Tuy nhiên, bài báo này khi phân loại cảnh báo thật/giả do thiếu hệ thống gán nhãn nên các nhà phân tích phải tốn nhiều thời gian để xác
Trang 20minh hàng nghìn cảnh báo trong thời gian thực cũng như chưa nói rõ việc gom nhóm và phân loại cảnh báo mất bao nhiêu thời gian
[12] của Martin Andreoni Lopez, Renato Souza Silva, Igor D.Alvarenga
vào năm 2017 đã trình bày việc sử dụng thuật toán mạng nhân tạo (neural network) và cây quyết định, sau đó đề xuất thuật toán cây quyết định để phân loại lưu lượng cảnh báo bất thường, giảm tải phân tích cho hệ thống,
độ chính xác đạt 93% trong việc xác định các luồng cảnh báo bất thường Tuy nhiên, vẫn chưa thực hiện xác định độ chính xác việc gom nhóm các luồng cảnh báo bất thường trong thời gian thực
Các nghiên cứu này đã giúp cho tôi xác định hướng liên quan về quy trình, gom nhóm cảnh báo cho luận văn của bản thân
2.2 Lý thuyết liên quan
2.2.1 Sử dụng thuật toán phân cụm mật độ cho việc xác định ngưỡng cho khoảng thời gian gom nhóm các cảnh báo
Quá trình nhóm [9] một tập hợp các đối tượng vật lý hoặc trừu tượng thành các đối tượng tương tự được gọi là phân cụm Một cụm là một tập hợp các đối tượng dữ liệu tương tự nhau trong cùng một cụm và không giống với các đối tượng trong cụm khác
Phân cụm dữ liệu [11] là một kỹ thuật trong khai phá dữ liệu, nhằm tìm kiếm,
phát hiện các cụm, các mẫu dữ liệu tự nhiên tiềm ẩn, được quan tâm trong tập
dữ liệu lớn, từ đó cung cấp thông tin, tri thức hữu ích cho ra quyết định
Mục tiêu phân cụm: nhóm các đối tượng tương tự Phân cụm dữ liệu bao
gồm các kỹ thuật phân cụm phân hoạch (K-Means, PAM …), phân cụm mật
độ (DBSCAN, OPTICS …)
Vì dữ liệu của nghiên cứu không thể xác định chính xác số cụm để gom nhóm, cùng với sự liên quan đến những cảnh báo ở các khu vực địa lý khác nhau, cần loại bỏ nhiễu nên thuật toán phân cụm phân hoạch sẽ không được lựa chọn mà thuật toán phân cụm mật độ sẽ được sử dụng trong nghiên cứu này
Phân cụm dựa trên mật độ: Nhóm các đối tượng theo hàm mật độ xác định
tượng dữ liệu theo một ngưỡng nào đó
các đối tượng dữ liệu mới miễn là số các lân cận của chúng lớn hơn một ngưỡng đã xác định
Phương pháp tiếp cận: phải xác định được ngưỡng mật độ số các đối
tượng lân cận của một đối tượng dữ liệu Các cụm có thể được xem như
Trang 21các vùng có mật độ cao, được tách ra bởi các vùng không có hoặc ít mật độ Khái niệm mật độ ở đây được xem như là số các đối tượng láng giềng Việc xác định các tham số mật độ của thuật toán rất khó khăn, trong khi các tham số này lại có tác động rất lớn đến kết quả phân cụm
dữ liệu nên bước đầu tiên trước khi áp dụng thuật toán là bước tuning parameter để chọn ra ngưỡng phù hợp nhất
Ưu điểm: có thể áp dụng cho các tập dữ liệu không gian lớn đa chiều
Có thể tìm ra các cụm với hình thù bất kỳ, trong khi đó tại cùng một thời điểm ít bị ảnh hưởng bởi thứ tự của các đối tượng dữ liệu nhập vào Kết quả của DBSCAN độc lập với thứ tự duyệt các đối tượng dữ liệu
Nhược điểm: Eps và MinPts là hai tham số toàn cục của thuật toán
DBScan hoặc MintPts đối với OPTICS chỉ được xác định bằng thủ công hoặc theo kinh nghiệm và chưa có một phương pháp chính thống nào để xác định hai tham số này Đây là nhược điểm lớn nhất của các thuật toán phân cụm mật độ
Tập dữ liệu không được sắp xếp theo một thứ tự nhất định và kết quả của DBSCAN hoặc OPTICS độc lập với thứ tự duyệt các đối tượng dữ liệu nên trong luận văn tôi chọn phương pháp này
Trong luận văn sẽ sử dụng hai thuật toán DBSCAN và OPTICS để tìm ra ngưỡng cho khoảng thời gian cần gom các sự kiện vào một nhóm Trong đó:
nghiên cứu các thuật toán gom cụm dữ liệu không gian dựa trên định nghĩa cụm là tập tối đa các điểm liên thông về mật độ DBSCAN phát hiện các cụm có hình dạng tùy ý, khả năng phát hiện nhiễu tốt, thực hiện tốt trên không gian nhiều chiều và thích hợp với cơ sở dữ liệu có mật độ phân bố dày đặc kể cả có phần tử nhiễu
Hình 3 Dạng cụm dữ liệu được khám phá bởi DBSCAN
Thực tế ba tập dữ liệu mẫu ở Hình 3, chúng ta dễ dàng nhận thấy các cụm điểm và các điểm nhiễu
Trang 22Tham số đầu vào của mỗi cụm phải xác định: bán kính vùng lân cận (Eps) và số lượng điểm tối thiểu trong vùng lân cận (MinPts), hình dạng vùng lân cận của một điểm được xác định dựa vào việc chọn hàm khoảng cách giữa hai điểm p và q kí hiệu là dist(p,q) và thường xác định bằng ngẫu nhiên/kinh nghiệm
Giải thuật DBSCAN[11]
Điểm này sau đó có thể được tìm thấy trong Epsilon vùng lân cận của một điểm khác, do đó có thể tạo thành một phần của cụm
Bước 3:
Nếu một điểm được xác định là Core point thì các điểm trong vùng lân cận cũng là một phần của cụm Vì vậy tất cả các điểm được tìm thấy trong vùng lân cận được thêm vào cụm cùng với các vùng lân cận của chúng nếu các điểm đó cũng là điểm lõi (Core point)
1999, là thuật toán mở rộng của DBSCAN bằng cách giảm bớt tham
số đầu vào, chỉ cần xem xét bán kính tối thiểu (Eps) Thuật toán thực hiện tính toán và sắp xếp các đối tượng theo thứ tự tăng dần nhằm tự động phân cụm và phân tích cụm tương tác hơn là đưa ra phân cụm một tập dữ liệu rõ ràng Thứ tự này diễn tả cấu trúc dữ liệu phân cụm dựa trên mật độ chứa thông tin tương đương với phân cụm dựa trên mật độ với một dãy các tham số đầu vào OPTICS xem xét bán kính tối thiểu nhằm xác định các láng giềng phù hợp với thuật toán
Thuật toán DBSCAN và OPTICS tương tự với nhau về cấu trúc và có cùng độ phức tạp: O(nLogn) (n là kích thước của tập dữ liệu) Các
Trang 23tham số của OPTICS tương tự như DBScan chỉ khác là OPTICS không cần phải khai báo tham số Epsilon và mặc định tham số này bằng vô cùng
Giải thuật OPTICS tương tự như DBScan chỉ khác là thuật toán phải
xử lý một số vô cực epsilon và OPTICS không tạo ra bất cứ cluster nào
2.2.2 Các nội dung hỗ trợ khác cho thuật toán
Đồ thị khu vực địa lý của các thiết bị: dựa vào cấu hình LLDP trên
thiết bị, sẽ xác định được các cổng kết nối các thiết bị thuộc những khu vực cùng tập điểm, cùng tỉnh, cùng vùng, liên tỉnh, liên vùng lưu trong
cơ sở dữ liệu và dùng API để truy xuất như Hình 4
Hình 4 Cơ sở dữ liệu cấu hình thiết bị
thành p phần có số phần tử bằng nhau Khi đó ta có thể gọi các điểm này là p-quantiles Một Quantile phổ biến khác dùng trong xác suất và thống kê gọi là Tứ phân vị (quartile) Tứ phân vị là đại lượng mô tả sự
Trang 24phân bố và sự phân tán của tập dữ liệu Tứ phân vị có ba giá trị, đó là tứ phân vị thứ nhất, thứ nhì, và thứ ba Ba giá trị này chia một tập hợp dữ liệu (đã sắp xếp dữ liệu theo trật từ từ bé đến lớn) thành bốn phần có số lượng Thực tế đều nhau
n là số biến có trong tập dữ liệu
càng thấp thì độ hỗn loạn càng thấp, mang nhiều thông tin hơn, nếu entropy càng cao sẽ không mang nhiều thông tin nữa dẫn đến việc gây
trung bình nhỏ nhất có thể mã hóa mà không làm mất mát thông tin Trong bài xử lý ngôn ngữ tự nhiên, entropy là trọng số thể hiện tần suất xuất hiện của một từ trong một tài liệu Trong một văn bản, đặc trưng của một từ được tính bằng số lần xuất hiện của từ đó trong văn bản Công thức tổng quát:
𝑪
𝒊=𝟏
Trong đó:
H là Entropy, giá trị nằm trong khoảng 0 và 1
p là phân phối rời rạc
C là tổng số biến cố xảy ra
thiết bị bằng phương pháp DBSCAN hoặc OPTICS, bước tiếp theo ta phải xác định được mức độ tương quan giữa các cảnh báo của các thiết
bị trong cùng một ngưỡng thời gian đó
Các cảnh báo thiết bị được thể hiện dưới dạng ngôn ngữ tự nhiên con người có thể đọc được nên cùng với việc thử nghiệm phương pháp lâu đời là Entropy, việc sử dụng Word Embedding với TF-IDF đại diện cho
Trang 25loại Frequency-based embedding (Dựa trên tần số xuất hiện của text trong document) cũng là một phần thực nghiệm trong đề tài này
TFIDF là một trong những kỹ thuật xử lý ngôn ngữ tự nhiên nhằm giúp máy tính hiểu được ngôn ngữ của con người
TFIDF là trọng số của một từ trong văn bản thu được qua thống kê thể hiện mức độ quan trọng của từ này trong một văn bản, mà bản thân văn bản đang xét nằm trong một tập hợp các văn bản
TF: dùng để ước lượng tần xuất xuất hiện của từ trong văn bản:
𝒕ổ𝒏𝒈 𝒔ố 𝒕ừ 𝒕𝒓𝒐𝒏𝒈 𝒗ă𝒏 𝒃ả𝒏 𝒅
IDF: Khi tính tần số xuất hiện TF thì các từ đều được coi là quan trọng
như nhau Tuy nhiên có một số từ thường được được sử dụng nhiều nhưng không quan trọng để thể hiện ý nghĩa của đoạn văn, ví dụ: nhưng, hoặc, vì thế … Vì vậy ta cần giảm đi mức độ quan trọng của những từ đó bằng cách sử dụng IDF:
Giá trị trọng số TFIDF sẽ bằng tích hai trọng số TF và IDF:
𝑻𝑭𝑰𝑫𝑭 = 𝑻𝑭 × 𝑰𝑫𝑭
mỗi từ trong văn bản, ta sẽ mô tả mỗi văn bản như là một vector Một tập dữ liệu được xem như là một tập hợp các vector trong một không gian vector Mỗi từ trong không gian vector sẽ có trục của riêng nó Bằng cách sử dụng công thức phía dưới, chúng ta có thể tìm ra độ tương đồng của bất kì tài liệu nào
vectơ a và b và chia nó cho tích của độ lớn của cả hai vectơ Mỗi i đại
diện cho một chiều của các vectơ, trong bối cảnh này, nó có thể là chữ cái hoặc từ Nếu ở đó không có chữ cái hoặc từ phù hợp, thì chúng ta sẽ
bỏ qua những từ đó (tức là coi chúng là 0)
Trang 26Vector chỉ làm việc với con số và trong luận văn này ta đang làm việc với văn bản Đó là lý do tại sao sử dụng TF – IDF để chuyển đổi từ ngữ
văn bản thành số để có thể biểu diễn chúng ở dạng vector
CNTT, thời gian trung bình để phát hiện (MTTD) đề cập đến thời gian trung bình trôi qua từ khi bắt đầu sự cố CNTT đến lúc phát hiện ra sự
cố
MTTD có thể được tính toán bằng công thức sau:
MTTD = Thời gian phát hiện sự cố - Thời gian bắt đầu sự cố
hệ thống
Trang 272.3 Quy trình xử lý sự cố hiện tại
Hình 5 Quy trình tạo ticket và thông tin khi có sự cố đến đơn vị xử lý
Quy trình hiện tại về tạo ticket và thông tin khi có sự cố đến đơn vị xử lý (như Hình 5) được mô tả như sau:
(1) Các thiết bị hạ tầng mạng sẽ được giám sát cảnh báo thông qua cơ chế SNMP polling cùng với các kịch bản được kiểm tra dựa theo các tiêu chuẩn ITSM được đề ra trên hệ thống giám sát Opsview (ví dụ: cảnh báo CPU/RAM cao, cảnh báo đứt cáp khi hàng loạt các cổng vật lý/ logic bị mất kết nối, cảnh báo giảm người dùng, …)
(2) Hệ thống giám sát Opsview ghi nhận hơn 18 triệu sự kiện thô, các sự kiện này
sẽ được nhân sự giám sát chọn lọc thủ công với những cảnh báo ở mức độ nghiêm trọng và tạo ticket trên hệ thống ticket theo đúng SLA đã cam kết với các đơn vị quản lý và tiếp nhận xử lý lỗi
Tổng số những cảnh báo quan trọng được nhân sự giám sát lọc ra gần bằng
180 nghìn cảnh báo/ tháng và tạo ra gần 14 nghìn ticket trên hệ thống Việc lọc cảnh báo và tạo ticket sự cố cũng như thông tin đến đơn vị xử lý bắt buộc
thực hiện trong vòng 20 phút từ khi có cảnh báo
Hệ thống Ticket gửi thông báo tới các đơn vị liên quan bằng các hình thức gồm email, sms, điện thoại Thông tin qua điện thoại đến nhân viên xử lý được thực hiện tự động bởi hệ thống AutoCall – nếu hệ thống AutoCall bị lỗi, nhân sự giám sát sẽ thủ công gọi điện thông tin cho đơn vị xử lý
Trường hợp hệ thống không cho tạo ticket, nhân sự giám sát của đơn vị tạo
ticket gửi thông báo cho các đơn vị liên quan bằng email, sms, điện thoại,
theo mẫu thông báo sự cố
(3) Xử lý ticket sự cố sẽ được trao đổi qua lại giữa nhân viên giám sát và nhân viên xử lý Đơn vị tiếp nhận xử lý ticket thực hiện: Xác định cấp độ, nguyên nhân, phạm vi, vùng, số lượng khách hàng bị ảnh hưởng, thời gian dự kiến hoàn thành
Trang 28 Đối với sự cố logic nguyên nhân đã xác định được từ khi có sự cố qua
Trang 29III PHƯƠNG PHÁP NGHIÊN CỨU VÀ ỨNG DỤNG THỰC TẾ
Nghiên cứu này được khảo sát tại công ty cung cấp dịch vụ Internet, một trong những công ty hàng đầu trong ngành viễn thông tại Việt Nam
3.1 Phương pháp nghiên cứu
3.1.1 Định dạng dữ liệu đầu vào
Hình 6 Mô hình tổng quan dữ liệu đầu vào
Hình 6 và 7 cũng như Bảng 2 mô tả tổng quan/chi tiết dữ liệu đầu vào gồm các log từ hệ thống giám sát Opsview và log từ thiết bị (lưu trên hệ thống Kibana), kèm theo các sự cố đã nhận diện được về khách hàng, bất thường từ thiết bị
Trang 30Bảng 2 Định dạng dữ liệu đầu vào
date_time device_id device_type location issue_name message
Opsview thời gian
phát sinh
bras_id device_type vị trí
của thiết bị,
ví dụ:
HCM
tên service = service_name
tin nhắn đi kèm log = message
"Connec-"BRAS x
get anomaly with sign in: xxx,
"Port pon
x of host y get sf: xxx, lofi: xxx"
"Splitter x
of host y
get broken with z
clients"
Trang 31Hình 7 Định dạng dữ liệu đầu vào
Trang 32Trong đó:
Lựa chọn thuật toán
Lựa chọn thuật toán gom cụm là do mục đích của bài toán muốn giảm thời gian thông tin và xử lý sự cố Bất cứ dạng nào cũng đều cần một bước xử lý đầu tiên là đánh nhãn cho dữ liệu, nếu cứ để cho nhân sự giám sát đánh nhãn
sẽ tốn nhiều thời gian, khi dùng gom cụm để nhân sự đánh giá lại việc gom nhóm sẽ làm tăng tốc độ đánh giá nhãn lên
Điều quan trọng cần giải quyết của bài toán là tính toán ngưỡng cho khoảng thời gian gom nhóm các cảnh báo liên quan nhau xảy ra trên hạ tầng (bắt đầu
và kết thúc gom nhóm trong khoảng thời gian bao lâu là phù hợp), và lựa chọn
sử dụng loại thuật toán nào của phân cụm mật độ DBSCAN hay OPTICS để gom nhóm các cảnh báo có liên quan với nhau Ở đây dữ liệu của nghiên cứu không thể xác định chính xác số cụm để gom nhóm, cùng với sự liên quan của các cảnh báo ở những khu vực địa lý khác nhau, cần loại bỏ nhiễu, với ưu điểm khi phân cụm mật độ có thể tìm ra các cụm với hình thù bất kỳ nên toán phân cụm mật độ sẽ được sử dụng trong nghiên cứu này Việc chọn DBSCAN/OPTICS, đây là hai thuật toán cơ bản trong phân cụm mật độ cũng được sự gợi ý từ chuyên gia trong công ty và dưới sự tham vấn của công ty Moogsoft (công ty chuyên đưa ra giải pháp IT cho hạ tầng viễn thông)
Trong bài nghiên cứu này, sự kiện từ nhiều nguồn sẽ được xem xét gom nhóm theo hai cách là gom theo các thiết bị cùng tỉnh và cùng tên thiết bị bằng cách
sử dụng DBSCAN/OPTICS, sau đó tính khoảng thời gian gom nhóm bằng khoảng cách của thời điểm max và min, cuối cùng dùng quantile để xác định
ngưỡng thời gian để gom nhóm các thiết bị
Sau khi đã xác định ngưỡng thời gian gom nhóm, mô hình sẽ trải qua hai giai đoạn học máy từ cơ bản đến nâng cao
Trang 33nhận diện được gom nhóm sẽ gửi cho đội ngũ vận hành giám sát hệ thống xác nhận có gom đúng hay không
Ở giai đoạn 2:
Sau khi đã có một lượng kết quả nhất định các tri thức sẽ được cập nhật vào hệ thống do đội ngũ vận hành giám sát hệ thống cung cấp giai đoạn 1 Ở giai đoạn 2 kết hợp với các sự kiện đầu vào để tiến hành học dựa vào các mô hình học bán giám sát và cho ra kết quả Giai đoạn này sẽ áp dụng các mô hình chuyên sâu như là text mining, cụ thể là TF-IDF để tìm kiếm các từ khóa và mức độ quan trọng của chúng trong từng sự kiện để tính độ liên kết giữa các
sự kiện, để học các kết quả đã được xác nhận nhằm tăng cao khả năng nhận diện các sự cố có liên quan với nhau, kết quả gom nhóm đó sẽ tạo ra một ticket gửi đến đơn vị xử lý
Tiền xử lý dữ liệu
DBSCAN
Hình 8 Block Code DBSCAN
Dựa vào Block code hình 8, hàm dbscan_cluster có:
3 tham số input, trong đó:
2 tham số output, trong đó:
đó không thuộc cluster nào và là nhiễu
Trang 34 metric: là tham số Silhouette, tham số này xác định điểm đang xét có thật sự
thuộc đúng cluster nó được gom cụm hay không Nếu metric = 1 là giá trị tốt nhất, điểm thuộc đúng cluster của nó, metric = -1 điểm bị gán vào cluster không đúng, metric = 0 điểm đang xét bị overlapping với cluster khác
OPTICS
Hình 9 Block code OPTICS
Dựa vào Block code Hình 9, Hàm optics_cluster có:
Hai tham số input, trong đó:
Hai tham số output, trong đó:
không thuộc cluster nào và là nhiễu
thuộc đúng cluster nó được gom cụm hay không Nếu metric = 1 là giá trị tốt nhất, điểm thuộc đúng cluster của nó, metric = -1 điểm bị gán vào cluster không đúng, metric = 0 điểm đang xét bị overlapping với cluster khác
So sánh kết quả khi chạy gom nhóm DBSCAN (Hình 10) và OPTICS (Hình 11) với ngưỡng thời gian tính dựa trên quantile:
Hình 10 Kết quả thời gian DBSCAN