1. Trang chủ
  2. » Công Nghệ Thông Tin

Thuật toán xoay vòng với quản lý dữ liệu chuỗi thời gian và ứng dụng trong quản trị mạng máy tính

95 355 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 95
Dung lượng 1,28 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Trong Quản trị mạng, tần suất trích mẫu thu thập thông tin càng lớn thì việc chẩn đoán hoạt động của mạng càng chính xác Ví dụ: chẩn đoán lỗi, nhưng việc xử lý và lưu trữ dữ liệu theo th

Trang 1

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN & TRUYỀN THÔNG

NGUYỄN THỊ MỸ HẠNH

THUẬT TOÁN XOAY VÒNG VỚI QUẢN LÝ DỮ LIỆU CHUỖI THỜI GIAN

VÀ ỨNG DỤNG TRONG QUẢN TRỊ MẠNG MÁY TÍNH

LUẬN VĂN THẠC SỸ CÔNG NGHỆ THÔNG TIN

Thái Nguyên - 2016

Trang 2

ĐẠI HỌC THÁI NGUYÊN

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN & TRUYỀN THÔNG

NGUYỄN THỊ MỸ HẠNH

THUẬT TOÁN XOAY VÒNG VỚI QUẢN LÝ DỮ LIỆU CHUỖI THỜI GIAN

VÀ ỨNG DỤNG TRONG QUẢN TRỊ MẠNG MÁY TÍNH

Chuyên ngành: Khoa học máy tính

Trang 3

LỜI CAM ĐOAN

Tôi xin cam đoan rằng:

Số lượng và kết quả nghiên cứu trong luận văn này là hoàn toàn trung thực và chưa từng được sử dụng hoặc công bố trong bất cứ công trình nào khác

Mọi sự giúp đỡ cho việc thực hiện luận văn này đã được cảm ơn và các thông tin trích dẫn trong luận văn đều được ghi rõ nguồn gốc

Tác giả luận văn

Nguyễn Thị Mỹ Hạnh

Trang 4

LỜI CẢM ƠN

Lời đầu tiên học viên xin gửi lời cảm ơn trân thành tới các Thầy, Cô

giáo trường Đại học Công nghệ thông tin và Truyền thông, Đại học Thái Nguyên, các thầy cô đã tận tình dạy bảo, truyền đạt các kiến thức quý báu cho học viên trong suốt quá trình học tập

Xin trân trọng cảm ơn Khoa, Phòng, Ban và các cán bộ đã tạo điều kiện tốt nhất cho học viên học tập và hoàn thành đề tài tốt nghiệp của mình

Đặc biệt, học viên xin được gửi lời cảm ơn sâu sắc đến Thầy giáo hướng dẫn học viên PGS TS Nguyễn Văn Tam, Thầy đã tận tình chỉ bảo giúp

đỡ học viên trong suốt quá trình nghiên cứu để hoàn thành luận văn

Cuối cùng học viên xin gửi lời cảm ơn gia đình, bạn bè, đồng nghiệp đã giúp đỡ, động viên ủng hộ học viên rất nhiều trong toàn bộ quá trình

học tập cũng như nghiên cứu để hoàn thành luận văn này

Trân trọng cảm ơn!

Trang 5

MỤC LỤC

LỜI CAM ĐOAN ………… ……….i

LỜI CẢM ƠN ……….ii

MỤC LỤC …… ……… iii

DANH MỤC CHỮ VIẾT TẮT ……… …………v

DANH MỤC HÌNH VẼ ……… ……… vi

MỞ ĐẦU 1

1 Đặt vấn đề: 1

3 Ý nghĩa khoa học, thực tiễn của đề tài: 2

4 Phương pháp nghiên cứu: 2

5 Bố cục của luận văn: 2

CHƯƠNG I: MÔ HÌNH QUẢN LÝ LUỒNG DỮ LIỆU CHUỖI THỜI GIAN 4

1.1 Kiến trúc tổng quát của hệ thống quản lý luồng dữ liệu chuỗi thời gian 4

1.1.1 Giới thiệu chung 4

1.1.2 Khái niệm chuỗi thời gian 6

1.1.3 Kiến trúc tổng quát 6

1.2 Mô hình dữ liệu và truy vấn 7

1.2.1 Mô hình dữ liệu 7

1.2.2 Ngữ nghĩa truy vấn liên tục 9

1.3 Một số ứng dụng của hệ quản lý luồng dữ liệu 10

1.3.1 Ứng dụng trong mạng cảm biến (Sensor Networks) 10

1.3.2 Ứng dụng trong phân tích lưu lượng mạng 11

1.3.3 Ứng dụng trong phân tích nhật ký giao dịch 12

CHƯƠNG II : THUẬT TOÁN XOAY VÒNG VỚI CƠ SỞ DỮ LIỆU CHUỖI THỜI GIAN TRONG QUẢN TRỊ MẠNG 14

2.1 Thuật toán xoay vòng với cơ sở dữ liệu chuỗi thời gian 14

Trang 6

2.1.1 Nguyên lý của thuật toán xoay vòng RR( Round Robin) 14

2.1.2 Thuật toán xoay vòng với cơ sở dữ liệu chuỗi thời gian RRD 17

2.1.2.1 Nguyên lý của RRD 17

2.1.2.2 Dữ liệu trong RRD 18

2.2 RRD trong quản trị mạng[1] 23

2.2.1 RRD trong thu thập dữ liệu và hiển thị kết quả 24

2.2.2 RRD trong phát hiện bất thường 26

CHƯƠNG 3 : CHƯƠNG TRÌNH THỬ NGHIỆM 37

3.1 Bài toán thử nghiệm 37

3.2 Bộ công cụ phục vụ xây dựng cơ sở dữ liệu chuỗi thời gian RRDtool 38

3.2.1 Tập các hàm thư viện của RRDtool 38

3.2.2 Hoạt động của RRDtool 39

3.2.3 Giám sát dữ liệu bất thường 42

3.3 Kỹ thuật tích hợp RRDTool vào hệ quản trị mạng CACTI 45

3.4 Một số kết quả thử nghiệm 47

3.4.1 Mô hình thử nghiệm 47

3.4.2 Triển khai mô hình thử nghiệm 48

3.4.3 Kết quả thử nghiệm ……… ……… 61

3.4.4 Đánh giá ……… 61

KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 63

TÀI LIỆU THAM KHẢO 65

PHỤ LỤC 66

Trang 7

DANH MỤC CÁC KÝ HIỆU, CÁC CHỮ VIẾT TẮT

ATM Automated Teller Machine

CF Consolidation Function

CPU Central Processing Unit

IAP Internet Access Provider

IP Internet Protocol

ISP Internet Service Provider

PDP Primary Data Point

PHP Personal Hompe Page

RRA Round Robin Archives

RRD Round Robin Database

SNMP Simple Network Managerment Protocol

SQL Structured Query Language

TCP Tranfer Control Protocol

TSD Time Series Database

URL Uniform Resource Locator

XML Extensible Markup Language

Trang 8

DANH MỤC CÁC HÌNH VẼ

Hình 1.1 - Kiến trúc tổng thể của hệ quản lý luồng Dữ liệu 7

Hình 2.1 - Nguyên lý của cơ sở dữ liệu RRD 18

Hình 2.2 - Vấn đề tỷ lệ và thời gian 1 19

Hình 2.3 - Vấn đề tỷ lệ và thời gian 2 21

Hình 2.4 - Hợp nhất trong Cơ sở dữ liệu RRD 23

Hình 2.5 - Sơ đồ khối của hệ quản trị mạng 23

Hình 2.6 - Biểu diễn đồ thị trong RRD 25

Hình 3.1 - Lưu đồ chung Chương trình tích hợp RRDTool vào Cacti 47

Hình 3.2 - Chạy lệnh tích hợp RRDTool 48

Hình 3.3 - Mô hình thử nghiệm 49

Hình 3.4 - Màn hình đăng nhập hệ thống 52

Hình 3.5 - Giao diện chính của Cacti 52

Hình 3.6 - Cài đặt dịch vụ SNMP cho thiết bị mới 53

Hình 3.7 - Tìm file SNMP Services 54

Hình 3.8 - Đặt cấu hình SNMP Services 55

Hình 3.9 - Cài đặt thiết bị vào Cacti 55

Hình 3.10 - Danh sách các nội dung cần giám sát 56

Hình 3.11 - Trạng thái kết nối thiết bị trong Cacti 56

Hình 3.12 - Thể hiện việc lựa chọn thiết bị cần tạo đồ thị 57

Hình 3.13 - Danh sách các máy có trong cây đồ thị 58

Trang 9

Hình 3.14 - Biểu đồ tình trạng các thiết bị 59

Hình 3.15 - Import Templates mới 60

Hình 3.16 - Import Templates data trong cacti 60

Hình 3.17 - Thông tin quản lý các thiết bị trong hệ thống mạng 61

Hình 3.18 - Quản lý theo lịch thời gian 61

Hình 3.19 - Thông tin giới hạn của hệ thống 62

Trang 10

MỞ ĐẦU

1 Đặt vấn đề:

Vấn đề quản lý luồng dữ liệu chuỗi thời gian hiện nay đang được quan tâm rất nhiều, cũng như những ứng dụng của nó trong đời sống xã hội nói chung và ứng dụng trong quản trị mạng máy tính nói riêng Thuật toán xoay vòng với quản lý dữ liệu chuỗi thời gian RRD (Round Robin Database) là một giải pháp nhằm tối ưu hóa hệ thống, tránh tốn kém tài nguyên và giảm độ phức tạp Trong một cơ sở dữ liệu Round - Robin (RR) thường là dữ liệu chuỗi thời gian như: băng thông mạng, nhiệt độ, giá cổ phiếu … vv, rất nhiều các ứng dụng mới nổi gần đây yêu cầu hỗ trợ cho việc phân tích trực tuyến thay đổi nhanh chóng các dòng dữ liệu như: thống kê lưu lượng truy cập internet, đấu giá trên mạng [4], [6]

Trong Quản trị mạng, tần suất trích mẫu thu thập thông tin càng lớn thì việc chẩn đoán hoạt động của mạng càng chính xác (Ví dụ: chẩn đoán lỗi), nhưng việc xử lý và lưu trữ dữ liệu theo thời gian là cực lớn, các giải pháp về

cơ sở dữ liệu truyền thống không đáp ứng được, thuật toán RRD là giải pháp

hữu hiệu Do đó, học viên lựa chọn đề tài luận văn Thạc sỹ “ Thuật toán xoay vòng với quản lý dữ liệu chuỗi thời gian và ứng dụng trong quản trị mạng máy tính”

Trong đề tài này học viên sẽ thực hiện thu thập dữ liệu mạng để có thể biểu diễn dưới dạng đồ thị trạng thái hoạt động của các thiết bị cần giám sát,

sử dụng RRDtool để lưu trữ dữ liệu và hiển thị dữ liệu theo chuỗi thời gian

Để thực hiện được điều đó học viên sẽ tiến hành nghiên cứu về mô hình quản

lý luồng dữ liệu chuỗi thời gian, thuật toán xoay vòng với các dữ liệu chuỗi

Trang 11

thời gian RRD( Round Robin Database) trong quản trị mạng và thử nghiệm ứng dụng vào giám sát và quản trị mạng máy tính

2 Đối tượng và phạm vi nghiên cứu:

a Đối tượng nghiên cứu

Dữ liệu chuỗi thời gian

b Phạm vi nghiên cứu:

- Xếp lịch xoay vòng

- RRD trong quản trị mạng

3 Ý nghĩa khoa học, thực tiễn của đề tài:

- Ý nghĩa khoa học: Hiểu được Ứng dụng của Thuật toán xoay vòng với quản lý dữ liệu chuỗi thời gian vào trong quản trị mạng máy tính

- Ý nghĩa thực tiễn: Vận dụng các phương pháp nghiên cứu để giải quyết một bài toán về quản trị mạng, đó là thuật toán xoay vòng với quản lý

dữ liệu chuỗi thời gian trong quản trị mạng Kết quả này có thể hoàn thiện, triển khai và ứng dụng trong thực tiễn

4 Phương pháp nghiên cứu:

- Nghiên cứu các kết quả đã công bố trong lĩnh vực quản lý dữ liệu chuỗi thời gian và ứng dụng của quản lý dữ liệu chuỗi thời gian, thuật toán xoay vòng với cơ sở dữ liệu chuỗi thời gian RRD trong quản trị mạng

- Phân tích, tổng hợp, đánh giá các kết quả

- Phân tích lý thuyết và xây dựng chương trình để thử nghiệm bài toán

5 Bố cục của luận văn:

Luận văn được trình bày thành các chương như sau:

Trang 12

Chương 1: MÔ HÌNH QUẢN LÝ LUỒNG DỮ LIỆU CHUỖI THỜI

GIAN

Chương 2: THUẬT TOÁN XOAY VÒNG VỚI CƠ SỞ DỮ LIỆU

CHUỖI THỜI GIAN TRONG QUẢN TRỊ MẠNG

Chương 3: CHƯƠNG TRÌNH THỬ NGHIỆM

Trang 13

CHƯƠNG I

MÔ HÌNH QUẢN LÝ LUỒNG DỮ LIỆU CHUỖI THỜI GIAN

Bộ cơ sở dữ liệu lưu trữ truyền thống bao gồm các bản ghi tương đối tĩnh không có khái niệm được xác định trước thời gian, trừ khi thuộc tính dấu thời gian được bổ sung rõ ràng Trong khi mô hình này rất thuận lợi cho việc biểu diễn cơ sở dữ liệu thương mại hay thông tin cá nhân thì nhiều ứng dụng quan trọng hiện hành yêu cầu hỗ trợ cho việc phân tích trực tuyến sự thay đổi nhanh chóng của các luồng dữ liệu

Trên cơ sở phân tích thấy rõ các hạn chế của cơ sở dữ liệu truyền thống trong việc hỗ trợ quản lý trực tuyến các ứng dụng, nhiều nghiên cứu đã được tiến hành để bổ sung các công nghệ hiện có và xây dựng mới hệ thống quản lý

dữ liệu trực tuyến

1.1 Kiến trúc tổng quát của hệ thống quản lý luồng dữ liệu chuỗi thời gian

1.1.1 Giới thiệu chung

Cơ sở dữ liệu truyền thống đã được sử dụng trong các ứng dụng yêu cầu lưu trữ dữ liệu liên tục và truy vấn phức tạp Thông thường, một cơ

sở dữ liệu bao gồm một tập các đối tượng không sắp xếp theo thứ tự và tương đối tĩnh Việc chèn, cập nhật và xóa xảy ra ít thường xuyên hơn so với các truy vấn Truy vấn được thực hiện khi có yêu cầu và câu trả lời phản ánh tình trạng hiện tại của các cơ sở dữ liệu Tuy nhiên, trong thời gian gần đây, chúng ta đã chứng kiến sự nổi lên của các ứng dụng mà mô hình dữ liệu và

mô hình truy vấn này không phù hợp Thay vào đó, các sự kiện xảy ra và thông tin xuất hiện một cách tự nhiên trong các dạng thức một luồng các giá

Trang 14

trị dữ liệu; ví dụ bao gồm dữ liệu từ cảm biến [5], lưu lượng Internet [4], các

mã cổ phiếu, tài chính [5], đấu giá trực tuyến [6], nhật ký sử dụng Web và bản ghi các cuộc gọi điện thoại [1]

Một luồng dữ liệu là chuỗi các mục dữ liệu được sắp xếp theo thời gian thực, liên tục, có trình tự (ví dụ ngầm định theo thời gian xuất hiện hoặc được đánh bởi nhãn thời gian (timestamp) một cách rõ ràng Thật khó có thể kiểm soát thứ tự đến của các mục dữ liệu và cũng không khả thi để lưu trữ toàn bộ luồng dữ liệu Tương tự như vậy, các truy vấn luồng dữ liệu chạy liên tục trong một khoảng thời gian và từng bước sẽ trả về kết quả mới khi dữ liệu mới đến Với các đặc điểm của luồng dữ liệu và cách truy vấn liên tục đặt ra các yêu cầu sau đây cho hệ thống quản lý luồng dữ liệu:

 Các mô hình dữ liệu và ngữ nghĩa truy vấn phải cho phép hoạt động dựa trên trật tự và dựa trên thời gian (ví dụ như các truy vấn được thực trên một cửa sổ động, năm phút một)

 Do không có khả năng lưu trữ toàn bộ luồng dữ liệu đầy đủ nên có thể sử dụng các cấu trúc tóm lược, gần đúng Kết quả là, các truy vấn trên các bản tóm lược có thể không trả về dữ liệu chính xác

 Việc truy vấn dữ liệu trực tuyến có thể không thể sử dụng thao tác blocking

 Do hiệu suất và khả năng lưu trữ hạn chế, việc theo dõi lại toàn bộ luồng dữ liệu nguyên gốc là không khả thi Các thuật toán xử lý luồng dữ liệu chỉ sử dụng được luồng dữ liệu một lần

 Các ứng dụng giám sát luồng dữ liệu trong thời gian thực phải phản ứng nhanh với các giá trị dữ liệu bất thường

 Truy vấn chạy thời gian dài có thể gặp phải những thay đổi điều kiện của hệ thống

Trang 15

 Thực hiện chia sẻ nhiều truy vấn liên tục là cần thiết để đảm bảo khả năng mở rộng

1.1.2 Khái niệm chuỗi thời gian

Một chuỗi thời gian là một dãy các giá trị quan sát X : ={x1, x2, xn} được xếp thứ tự diễn biến thời gian với x1 là các giá trị quan sát tại thời điểm đầu tiên, x2 là quan sát tại thời điểm thứ 2 và xn là quan sát tại thời điểm thứ n

Ví dụ: Các báo cáo tài chính mà ta thấy hằng ngày trên báo chí, tivi hay Internet về các chỉ số chứng khoán, tỷ giá tiền tệ, chỉ số tăng cường hay chỉ số tiêu dùng đều là những thể hiện rất thực tế của chuỗi thời gian hay doanh số của công ty trong 20 năm gần đây, hoặc nhiệt độ ghi nhận tại một trạm quan trắc khí tượng, hoặc công suất điện năng tiêu thụ trong một nhà máy hoặc lưu lượng mạng đo được với chu kỳ 5 phút …đó là các ví dụ điển hình cho một chuỗi thời gian

Với chuỗi thời gian ta thường biểu thị trong một mặt phẳng với trục hoành biểu thị thời gian và trục tung biểu thị giá trị biến quan sát Phân tích chuỗi thời gian có mục đích nhận dạng và tập hợp lại các yếu tố, những biến đổi theo thời gian mà nó có ảnh hưởng đến giá trị của biến quan sát

1.1.3 Kiến trúc tổng quát

Kiến trúc tổng quát của hệ thống hệ quản lý luồng dữ liệu thể hiện trong hình 1.1

Trang 16

Hình 1.1 Kiến trúc tổng thể của hệ quản lý luồng dữ liệu

Modul theo dõi đầu vào dữ liệu sẽ điều chỉnh tốc độ thu thập dữ liệu cho phù hợp, có thể sẽ phải loại bỏ một số gói tin nếu hệ thống không thể tiếp nhận hết các gói tin đến Dữ liệu thường được lưu trữ trong ba phân vùng: Kho lưu trữ làm việc, kho lưu trữ bản tóm lược của luồng dữ liệu, kho lưu trữ tĩnh cho meta-data Các truy vấn chạy lâu phải được đăng ký tới hàng đợi truy vấn và đặt vào nhóm chia sẻ Bộ xử lý truy vấn Vì chỉ có thể truy vấn một lần vào trạng thái hiện tại của luồng dữ liệu Bộ xử lý truy vấn liên lạc với Bộ theo dõi đầu vào nhằm có thể tái tối ưu hóa các kế hoạch truy vấn đáp ứng với

sự thay đổi tốc độ đầu vào Kết quả truy vấn có đưa trực tiếp tới người sử dụng hoặc lưu tạm thời tại bộ đệm Sau đó người dùng có thể tùy chỉnh các truy vấn của họ dựa trên các kết quả mới nhất

1.2 Mô hình dữ liệu và truy vấn

1.2.1 Mô hình dữ liệu

Một luồng dữ liệu theo thời gian thực là một chuỗi các mục dữ liệu dữ liệu đến theo một trình tự và chỉ có thể được nhìn thấy một lần [3] Vì các

Trang 17

mục dữ liệu có thể đến theo chùm, một luồng dữ liệu có thể được mô hình hóa như một danh sách các phần tử

Mục dữ liệu của luồng dữ liệu riêng có thể biểu diễn dưới dạng các các bộ đối tượng quan hệ hoặc các thể hiện của đối tượng Trong mô hình dựa trên quan hệ, mục dữ liệu là các bộ chuyển tiếp được lưu trữ trong mối quan

hệ ảo qua nút từ xa Trong mô hình dựa trên đối tượng, các nguồn và các loại mục dữ liệu được mô hình hóa như các loại (phân cấp) dữ liệu với các phương pháp liên quan

Các mục dữ liệu của luồng dữ liệu có thể không đến theo trình tự và / hoặc dưới dạng tiền xử lý, do vậy có thể có các mô hình dữ liệu sau:

1 Ghi đệm không có thứ tự: Các mục dữ liệu từ các lĩnh vực khác

nhau đến không theo thứ tự đặc biệt và không có bất kỳ tiền xử lý nào

2 Ghi đệm có thứ tự: các mục dữ liệu từ các lĩnh vực khác nhau

không được tiền xử lý nhưng đến trong một trình tự đã biết

3 Tổng hợp không có thứ tự: các mục dữ liệu riêng từ cùng một

miền được tiền xử lý và chỉ có một mục dữ liệu đến đối với mỗi miền, không theo thứ tự cụ thể

4 Tổng hợp có thứ tự: các mục dữ liệu riêng từ cùng một miền được

tiền xử lý và chỉ có một mục dữ liệu đến đối với mỗi miền theo một trật tự cho trước

Trong nhiều trường hợp, chỉ quan tâm một đoạn trích từ luồng dữ liệu tại một thời điểm do vậy mô hình cửa sổ được đưa ra với ba lớp như sau:

 Hướng chuyển động của các điểm đầu cuối: Hai đầu cuối cố định

xác định một cửa sổ cố định Hai điểm đầu cuối có thể trượt(hoặc trượt tiến hoặc trượt lùi), định nghĩa một cửa sổ trượt Nếu một đầu cuối cố định và

Trang 18

một điểm cuối di chuyển (về phía trước hoặc phía sau) định nghĩa một cửa sổ giới hạn Như vậy có tổng cộng chín loại cửa sổ khác nhau

 Cửa sổ vật lý và logic: Cửa sổ vật lý là cửa sổ được định nghĩa dựa trên khoảng thời gian Cửa sổ logic được định nghĩa dựa trên bộ đếm

 Cập nhật khoảng: Việc tái đánh giá cập nhật cửa sổ được thực hiện mỗi khi có một bộ dữ liệu mới đến Đối với tiến trình xử lý theo nó có thể gây ra một "bước nhảy cửa sổ " Nếu khoảng thời cập nhật là lớn hơn so với kích thước cửa sổ, thì sẽ tạo ra một loạt cửa số không chồng lấn nhau

1.2.2 Ngữ nghĩa truy vấn liên tục

Bất kỳ truy vấn kiên trì, đơn điệu mà cập nhật được từng bước, có thể được thực hiện như một truy vấn liên tục trên một cơ sở dữ liệu truyền thống Trong một cơ sở dữ liệu chỉ được thêm vào cuối, tất cả các truy vấn nối tiếp là đơn điệu: Mỗi lần một bộ dữ liệu được thêm vào, hoặc là nó đáp ứng các truy vấn hoặc không và điều kiện thỏa mãn không thay đổi theo thời gian Ngược lại, thêm phủ định có thể vi phạm tính đơn điệu Tương tự như vậy, nếu các cơ sở dữ liệu không chỉ được thêm vào cuối, thì không có truy vấn đơn điệu, khi các bộ dữ liệu được cập nhật có thể ngừng đáp ứng một truy vấn nhất định

Ngữ nghĩa ít hạn chế các truy vấn liên tục, đơn điệu và không đơn điệu trên luồng dữ liệu đã đưa ra [6] Giả sử rằng thời gian được biểu diễn như là một tập hợp các số tự nhiên và rằng tất cả các truy vấn liên tục được

tái định giá tại mỗi nhịp (tick) đồng hồ Cho A (Q, t) là tập hợp câu trả lời của một truy vấn liên tục Q tại thời điểm t, τ là thời gian hiện tại, và 0 là thời điểm bắt đầu Tập trả lời cho một truy vấn liên tục, đơn điệu Q tại τ là:

Trang 19

Nghĩa là, chỉ cần tái đánh giá các truy vấn trên các mục dữ liệu mới đến và gắn thêm các bộ chất lượng vào kết quả Ngược lại, các truy vấn không đơn điệu có thể cần phải được tái tính từ đầu trong mọi tái đánh giá, theo ngữ nghĩa sau đây:

Ngôn ngữ truy vấn luồng dữ liệu

Ba mô hình truy vấn cho hệ thống quản lý luồng dữ liệu đã được đề xuất Hệ thống dựa trên quan hệ sử dụng ngôn ngữ SQL-like để truy vấn gần giống như truy vấn cơ sở dữ liệu quan hệ với sự cải tiến đưa thêm cơ chế cửa

sổ và trình tự Ngôn ngữ dựa trên đối tượng cũng giống như SQL, nhưng hỗ trợ cho luồng dữ liệu, định nghĩa thêm kiểu dữ liệu trừu tượng (ADT) và các phương pháp xử lý tín hiệu liên quan Hệ thống hướng thủ tục, xây dựng truy vấn bằng cách định nghĩa luồng dữ liệu các toán tử khác nhau

1.3 Một số ứng dụng của hệ quản lý luồng dữ liệu

1.3.1 Ứng dụng trong mạng cảm biến (Sensor Networks)

Mạng cảm biến có thể được sử dụng cho quản lý hệ thống địa lý, giám sát tắc nghẽn đường cao tốc, theo dõi chuyển động, giám sát dấu hiệu của sự sống và giám sát của các quá trình sản xuất Các ứng dụng này liên quan đến việc lọc thông tin phức tạp và kích hoạt báo động khi phát hiện các mẫu bất thường trong dữ liệu Trong các ứng dụng cần tập hợp và kết nối nhiều luồng dữ liệu thì cần thiết phải phân tích dữ liệu từ nhiều nguồn, còn nếu ứng dụng chỉ tập hợp trên một luồng dữ liệu duy nhất thì có thể chỉ cần phân tích dữ liệu từ một nguồn, ví dụ như phục vụ cho việc phát hiện và thay thế những bộ cảm biến gặp lỗi (do bị hư hỏng vật lý hoặc sự suy giảm của

Trang 20

nguồn nuôi) Việc khai phá dữ liệu của bộ cảm biến có thể yêu cầu truy cập vào dữ liệu lịch sử của bộ cảm biến Một số ví dụ về truy vấn tương đối điển hình trong mạng cảm biến như:

 Kích hoạt bộ nhảy (trigger) nếu có một vài cảm biến trong trong miền có báo cáo đo vượt quá ngưỡng cho phép

 Vẽ đường viền bản đồ nhiệt độ cho dự báo thời tiết:

Thực hiện kết nối luồng dữ liệu nhiệt độ từ các trạm theo dõi thời tiết Liên kết các kết quả vào bảng tĩnh chứa các kinh độ và vĩ độ của mỗi trạm, kết nối tất cả các điểm tạo bản tin dự báo thời tiết vùng miền

 Phân tích một luồng các thống kê sử dụng điện gần đây, báo cáo cho nhà máy điện để điều chỉnh công suất phát điện nếu cần thiết

1.3.2 Ứng dụng trong phân tích lưu lượng mạng

Hệ thống Ad hoc để phân tích lưu lượng Internet trong thời gian thực

đã được sử dụng, ví dụ [2] Tương tự như các mạng cảm biến, việc kết nối dữ liệu từ nhiều nguồn khác nhau như theo dõi, lọc gói tin và phát hiện các điều kiện bất thường (ví dụ như tắc nghẽn hoặc tấn công từ chối dịch vụ) là cần thiết Hệ thống phải hỗ trợ cho các truy vấn lịch sử và khai phá dữ liệu trực tuyến trên mạng Ví dụ so sánh dấu hiệu của lưu lượng mạng hiện tại với các mẫu lưu lượng được lưu trữ để phát hiện một cuộc tấn công từ chối dịch

vụ Một ví dụ khác như theo dõi URL của các yêu cầu Web gần đây để tìm ra khách hàng tiêu thụ băng thông nhiều nhất Sau đây là các truy vấn điển hình trong phân tích lưu lượng mạng:

 Ma trận lưu lượng: Xác định tổng lượng băng thông sử dụng bởi mỗi cặp nguồn - đích và nhóm theo địa chỉ IP, mặt nạ mạng con, và loại giao thức Lưu ý rằng lưu lượng IP được dồn kênh theo thống kê, do đó một luồng lưu lượng phải được tách kênh để tái tạo lại các phiên TCP/IP

Trang 21

 So sánh số lượng các cặp nguồn - đích trong luồng logic có chứa các bước thứ hai và thứ ba, tương ứng quá trình bắt tay ba bước TCP Nếu sự sai khác là quá lớn, là dấu hiệu của tấn công từ chối dịch vụ SYN Flood

1.3.3 Ứng dụng trong phân tích nhật ký giao dịch

Khai phá dữ liệu trực tuyến, sử dụng các bản ghi truy nhập web, bản ghi cuộc gọi điện thoại, và bản ghi các giao dịch Ngân hàng qua ATM cũng

là bài toán phù hợp với các mô hình luồng dữ liệu Mục đích của việc khai phá dữ liệu này là để tìm kiếm các mẫu hành vi quan tâm của khách hàng, xác định các hành vi nghi ngờ, từ đó có thể chỉ ra hành vi gian lận và dự báo giá trị dữ liệu cho tương lai Cũng tương tự như trong ứng dụng trực tuyến khác, điều này đòi hỏi phải kết nối nhiều luồng dữ liệu, thực hiện các phép lọc phức tạp và phân tích thống kê Sau đây là một số ví dụ:

 Tìm tất cả các trang web trên một máy chủ cụ thể đã được truy nhập trong mười lăm phút cuối với một tỷ lệ lớn hơn mức trung bình hàng ngày ít nhất là 40%

 Kiểm tra nhật ký của máy chủ Web trong thời gian thực và nếu máy chủ chính bị quá tải thì tái định tuyến người dùng đến các máy chủ dự phòng

 Xác định đường kính chuyển vùng (Roaming) của khách hàng sử dụng điện thoại di động: Khai phá nhật ký về điện thoại di động đối với mỗi khách hàng và xác định số lượng lớn nhất của các trạm gốc khác nhau mà khách hàng sử dụng trong một cuộc gọi điện thoại di động

Bên cạnh các ứng dụng mang tính kỹ thuật, hệ quản lý luồng dữ liệu còn có nhiều ứng dụng trong lĩnh vực tài chính ngân hàng, thị trường chứng khoán Tuy nhiên các vấn đề này nằm ngoài phạm vi nghiên cứu của luận văn

Trang 22

Chương 1 đã trình bày kiến trúc, mô hình dữ liệu, mô hình truy vấn

và một số lĩnh vực ứng dụng của hệ quản lý luồng dữ liệu chuỗi thời gian Một trong các ứng dụng nổi bật là sử dụng hệ thống này trong quá trình thu thập, lưu trữ tạm thời, truy vấn, xử lý phục vụ quản trị, theo dõi và phát hiện các hoạt động bất thường trên mạng Trong quản trị mạng, tần suất trích mẫu thu thập thông tin càng lớn thì việc chẩn đoán hoạt động của mạng càng chính xác (Ví dụ: chẩn đoán lỗi), nhưng việc xử lý và lưu trữ dữ liệu theo thời gian

là cực lớn, Thuật toán xoay vòng với cơ sở dữ liệu chuỗi thời gian RRD (Round Robin Database) là một giải pháp nhằm tối ưu hóa hệ thống, tránh tốn kém tài nguyên và giảm độ phức tạp của hệ thống Thuật toán RRD và ứng dụng trong quản trị mạng là nội dung của chương 2

Trang 23

CHƯƠNG II THUẬT TOÁN XOAY VÒNG VỚI CƠ SỞ DỮ LIỆU CHUỖI THỜI GIAN

TRONG QUẢN TRỊ MẠNG

2.1 Thuật toán xoay vòng với cơ sở dữ liệu chuỗi thời gian

Thuật toán xoay vòng với quản lý dữ liệu chuỗi thời gian cho phép lưu trữ và hiển thị dữ liệu chuỗi thời gian, thu thập thông tin từ mạng hay chuyển

đổi từ MySQL và lưu trữ các dữ liệu dưới dạng đã xử lý, giảm thiểu vận hành

I/ O để cập nhật thời gian thực và trình bày đồ thị hữu ích bằng cách xử lý dữ liệu độ phân giải ở các khoảng thời gian khác nhau

Thông thường cơ sở dữ liệu chuỗi thời gian RRD sử dụng bộ quét thiết

bị để lấy dữ liệu của các máy tính trên mạng như: tải trung bình, sử dụng CPU, tình trạng liên thông của mạng, bộ vi xử lý… Sau đó sẽ thực kết xuất và hiển thị kết quả dưới dạng đồ thị các thông số đó của các máy tính trên mạng.Như vậy, để thấy rõ các điểm giống nhau và sự khác biệt giữa thuật toán xoay vòng RR( Round Robin) truyền thống được sử dụng trong hệ điều hành máy tính và thuật toán thuật toán xoay vòng trong cơ sở dữ liệu chuỗi thời gian RRD ( Round Robin Database), trước tiên chúng ta nhắc lại nguyên

lý thuật toán RR và tiếp theo sẽ trình bày về thuật toán RRD

2.1.1 Nguyên lý của thuật toán xoay vòng RR( Round Robin)

Trong thuật toán này, hệ thống quy định một lượng tử thời gian (time quantum) khoảng từ 10-100 mili giây (ms)

Mỗi tiến trình trong hàng đợi lần lượt được phân phối một lượng tử thời gian để thực hiện Sau khoảng thời gian đó, nếu tiến trình chưa kết thúc hoặc không rơi vào trạng thái đợi thì nó được chuyển về cuối hàng đợi

Trang 24

Hàng đợi các tiến trình được tổ chức theo kiểu vòng tròn và các tiến trình luôn luôn đảm bảo được phục vụ Khi có tiến trình mới phát sinh, nó sẽ được đưa vào hàng đợi vòng tròn và được đặt ở vị trí phục vụ ngay Các tiến trình dù ngắn hay dài đều có độ ưu tiên phục vụ như nhau

Ví dụ minh hoạ: về thuật toán Round Robin

Tiến trình

Thời điểm vào hàng đợi

Thời gian xử lý (ms)

Thời gian chờ đợi trung bình sẽ là (0+6+3+5)/3 = 4.66 milisecondes

Nếu có n tiến trình trong hàng đợi sẵn sàng và sử dụng quantum q, thì mỗi tiến trình sẽ được cấp phát CPU 1/n trong từng khoảng thời gian q Mỗi

Trang 25

tiến trình sẽ không phải đợi quá (n-1)q đơn vị thời gian trước khi nhận được

CPU cho lượt kế tiếp

Nhận xét: Vấn đề đáng quan tâm đối với giải thuật RR là độ dài của quantum Nếu thời lượng quantum quá bé sẽ phát sinh quá nhiều sự chuyển đổi giữa các tiến trình và khiến cho việc sử dụng CPU kém hiệu quả Nhưng nếu sử dụng quantum quá lớn sẽ làm tăng thời gian hồi đáp và giảm khả năng tương tác của hệ thống

Trên thực tế, để đảm bảo độ ưu tiên cho các tiến trình dài, hệ thống sẽ phân chia các tiến trình thành m lớp Số lần đươc phục vụ và thời gian một

lần phục vụ tiến trình tại mỗi lớp khác nhau (giả sử ở lớp thứ i, tiến trình được phục vụ k i lần và mỗi lần với thời gian q i)

Nếu sau khoảng thời gian đã được phân phối mà tiến trình chưa kết

thúc hoặc không bị ngắt thì nó sẽ được chuyển sang lớp thứ i + 1 ( với k i+1

q i+1 lớn hơn ) Lượng tử thời gian sẽ tăng dần cho đến khi tiến trình rơi vào

lớp ngoài cùng (lớp m) Ở đó nó sẽ được phục vụ với lượng tử q m không đổi Như vậy thứ tự ưu tiên của các tiến trình sẽ tăng dần theo thời gian xếp hàng đợi

Ưu điểm của phương pháp phục vụ đồng mức theo lớp sẽ cho phép hệ thông ưu tiên những tiến trình ngắn (vì nó kết thúc sớm) nhưng nó không gây tổn hại lớn cho các tiến trình dài

Nhược điểm là do phải thường xuyên phân phối lại giờ CPU nên thời gian chờ đợi trung bình của Round Robin có thể lớn

Trang 26

2.1.2 Thuật toán xoay vòng với cơ sở dữ liệu chuỗi thời gian RRD ( Round Robin Database)

2.1.2.1 Nguyên lý của RRD

Nhu cầu xây dựng hệ thống quản trị mạng cho phép giám sát theo thời gian thực cũng như phân tích tốc độ mạng cao là cần thiết Để tăng độ chính xác của các phép đo lường, quản trị mạng thường làm tăng tần số lấy mẫu Hậu quả của xu hướng này là hệ thống giám sát sản xuất một số lượng

dữ liệu lớn cần được lưu trữ và phân tích trong thời gian rất ngắn Cơ sở dữ liệu quan hệ không thích hợp cho việc lưu trữ và xử lý dữ liệu đo lường phục

vụ quản trị mạng vì các lý do sau:

• Tại mỗi khoảng thời gian đo lường, các bảng sẽ cập nhập dữ liệu mới

và như vậy làm tăng số bản ghi Hậu quả là bảng dữ liệu cũng như các không gian thực trên đĩa tăng cùng với số phép đo

• Ngay sau khi chỉ số bảng trở nên đủ lớn sẽ cản chở việc lưu (cached) xuống RAM và việc lấy dữ liệu sẽ trở nên chậm chạp đáng kể, đăc biệt đối với các ứng dụng có dữ liệu ở phần đầu cơ sở dữ liệu

Để giải quyết những vấn đề này với cơ sở dữ liệu quan hệ, cơ sở dữ liệu chuỗi thời gian (Time series database, TSDs) đã được tạo ra Cơ sở dữ liệu xoay vòng (Round - Robin, Database, RRD) là một bổ sung tuyệt vời để

cơ sở dữ liệu quan hệ lưu trữ chuỗi thời gian Nó thực hiện một bộ đệm quay vòng cố định dựa trên tệp tin, nơi dữ liệu được lưu trữ theo dấu thời gian Khi

cơ sở dữ liệu được tạo ra, phải xác định thời gian tồn tại dữ liệu cũng như các tần số (tên bước của RRD) dữ liệu được lưu trữ Ví dụ, cứ mỗi 5 phút thực hiện phép đo và lưu giá trị đo lâu nhất 30 ngày Hình 2.1: mô tả nguyên lý giải thuật của một cơ sở dữ liệu RRD Vì tất cả các thông tin được quy định tại thời điểm tạo cơ sở dữ liệu, các file RRD không phát triển theo thời gian:

Trang 27

kích thước của chúng là tĩnh và bằng bộ đệm quay vòng Mỗi cơ sở dữ liệu RRD có thể lưu trữ nhiều chuỗi thời gian, không nhất thiết tất cả chia sẻ cùng thông số thời gian sống và tần số Thường cơ sở dữ liệu RRD có kích thước nhỏ (64 KB hoặc ít hơn) và được lưu trữ như các tập tin trên đĩa

Hình 2.1 Nguyên lý của cơ sở dữ liệu RRD (RRA)

2.1.2.2 Dữ liệu trong RRD

Cơ sở dữ liệu chuỗi thời gian RRD lưu trữ dạng “tỷ lệ” trong khoảng thời gian Những khoảng thời gian được xác định rõ ràng về ranh giới theo thời gian Tuy nhiên, dữ liệu đầu vào không phải là luôn luôn là một tỷ lệ và rất có thể sẽ không trong ranh giới đó Điều này có nghĩa là dữ liệu đầu vào cần phải được xử lý

Quá trình chuyển đổi dữ liệu chia làm ba giai đoạn:

 Chuyển đổi dữ liệu về dạng tỷ lệ

 Chuẩn hóa các khoảng thời gian

 Hợp nhất các khoảng thời gian vào một khoảng thời gian lớn hơn

Trang 28

Tất cả các giai đoạn đều áp dụng cho tất cả các dữ liệu đầu vào, không

có trường hợp ngoại lệ Dữ liệu đầu vào có bốn kiểu được sử dụng là: GAUGE, COUNTER, ABSOLUTE, DERIVE

Đối với từng kiểu dữ liệu đầu vào sẽ có quy tắc chuyển đổi khác nhau:

 DERIVE:

Kiểu dữ liệu này tương tự như COUNTER, tuy nhiên có thể tăng hoặc giảm Tỷ lệ có thể có giá trị dương hoặc âm

Trong cả bốn trường hợp, kết quả dữ liệu sau chuyển đổi đều là một tỷ

lệ Tỷ lệ này có hiệu lực giữa lần truy nhập trước và hiện tại Như vậy công cụ RRDtool không cần phải biết bất cứ điều gì về các dữ liệu đầu vào mà chỉ cần biết khi bắt đầu, kết thúc và tỷ lệ

Trang 29

Vấn đề tỷ lệ và thời gian

Hình 2.2 Vấn đề tỷ lệ và thời gian 1

Hãy quan sát ví dụ như hình 2.2 nếu máy tính chuyển dữ liệu tốc độ 60 byte/giây trong 1 giây, hay chuyển cùng một lượng dữ liệu với tốc độ 30 byte/giây trong 2 giây, hoặc 20 byte/giây trong 3 giây, hoặc 15 byte/giây trong 4 giây,

Chúng ta nhận thấy: tỷ lệ nhân với thời gian là một hằng số Nếu chúng

ta quan tâm số byte dữ liệu được truyền, trong hình trên, diện tích các miền là quan trọng, không cần quan tâm chiều rộng cũng như chiều cao của nó Chính vì vậy sau khi chuyên đổi về dạng tỷ lệ dữ liệu cần phải được chuẩn hóa

Giai đoạn 2: Chuẩn hóa khoảng thời gian

Các đầu vào bây giờ là một tỷ lệ nhưng nó không xác định rõ ranh giới

thời gian Chính vì vậy cần chuẩn hóa khoảng thời gian Giả sử chúng ta đọc

một bộ đếm mỗi phút Chúng ta biết nội dung bộ đếm tại một thời điểm cụ thể (MM: SS) Nhưng chúng ta không biết: số đếm tăng lên với tỷ lệ cao trong một khoảng thời gian ngắn (1 giây ở 60 byte/giây) hoặc trong một thời gian dài ở một tỷ lệ nhỏ (60 giây ở 1 byte/giây) Trên hình 2.2, các thời điểm (MM: SS) sẽ được ở đâu đó trong vùng trắng

Trang 30

Điều này có nghĩa rằng tỷ lệ chúng ta biết không phải là tỷ lệ thực! Trong ví dụ trên, chúng ta chỉ biết rằng máy tính chuyển 60 byte trong 60 giây, ở đâu đó giữa MM: SS và MM: SS tiếp theo Tỷ lệ tính toán được sẽ là

1 byte/giây trong mỗi khoảng thời gian 60 giây

Hình 2.3 cho thấy một số khoảng thời gian và mức đo Các mẫu được lấy tại giây thứ 30 của mỗi phút, mỗi miền có màu đại diện cho các lần đo lường khác nhau

Hình 2.3 Vấn đề tỷ lệ và thời gian 2

Phần dưới của hình 2.3 là kết quả dữ liệu sau khi chuẩn hóa hóa Mỗi tỷ

lệ đã chuẩn hóa có giá trị trong một khoảng thời gian nhất định Chúng ta gọi chung là điểm dữ liệu chính PDP (Primary Data Point) Mỗi PDP là có giá trị trong một bước

Giai đoạn 3: Hợp nhất các khoảng thời gian

Giả sử chúng ta có dữ liệu như trên hình 2.3 Chúng ta muốn xem mười ngày của dữ liệu trên một biểu đồ Nếu mỗi PDP là một phút, bạn cần

10 * 24 * 60 PDP (10 ngày 24 giờ 60 phút) 14400 PDP là rất nhiều, đặc biệt

là nếu màn hình ảnh nhỏ chỉ là 360 pixels Có một cách để hiển thị dữ liệu đó

là để gộp một số PDP với nhau và hiển thị chúng như một điểm ảnh Ví dụ gộp 40 PDP vào một thời gian, cho mỗi điểm ảnh, để có được tổng cộng mười

Trang 31

ngày Việc kết hợp 40 PDP vào một điểm gọi là hợp nhất (Consolidation) và

có thể được thực hiện bằng nhiều cách:

Lấy tỷ lệ chuẩn hóa cuối cùng

Các hàm hợp nhất CF (Consolidation Function ) này được sử dụng phụ thuộc vào mục tiêu khác nhau

Các dữ liệu thu thập của các hệ thống sử dụng cơ sở dữ liệu chuỗi thời gian được xử lý và lưu trữ trong các cơ sở dữ liệu RRD dưới dạng các tập tin

Do lượng dữ liệu thu thập được rất lớn và để theo dõi hoạt động trong một quá khứ dài, các hệ thống cũng sử dụng nguyên lý “Hợp nhất các khoảng thời gian” Từ các dữ liệu thu thập được trong RRD, hệ thông có thể thiết đặt để tính toán các giá trị AVERAGE, MIN, MAX, and LAST trong những khoảng thời gian nhất định và lưu vào cơ sở dữ liệu lưu trữ (Round Robin Archives, RRA)

Trong một hệ thống, có thể có nhiều cơ sở dữ liệu RRA, có thể thiết đặt

để hợp nhất khoảng thời gian với các hàm AVERAGE, MIN, MAX, and LAST của các thông số thu được cho từng cơ sở dữ liệu lưu trữ RRA Hình 2.4 Minh họa cơ chế tổ hợp dữ liệu này

Trang 32

Hình 2.4 Hợp nhất trong cơ sở dữ liệu RRD 2.2 RRD trong quản trị mạng[1]

RRD là từ viết tắt của Cơ sở dữ liệu Round Robin là một hệ thống quản

lý, lưu trữ dữ liệu và hiển thị dữ liệu theo chuỗi thời gian

Hình 2.5 cho thấy sơ đồ khối của một hệ thống quản trị mạng:

Hình 2.5 Sơ đồ khối của hệ quản trị mạng

Việc quản trị mạng được thực hiện thông qua trình duyệt Web Để cấu hình, bổ sung mẫu thiết bị cần quản trị, phát triển công cụ người quản trị chỉ cần đăng nhập vào các trang web Các dữ liệu quản trị hệ thống sẽ được lưu trữ trong các bảng dữ liệu MySQL Trên cùng một máy chủ, các modul quét các thiết bị để (poller) truy vấn, thu thập các thông số mạng của các thiết bị,

Trang 33

ví dụ bộ định tuyến, chuyển mạch, máy chủ, ứng dụng Kết quả thu thập từ những mục tiêu đang được lưu trữ trong các cơ sở dữ liệu chuỗi thời gian RRD Hệ quản trị mạng sử dụng những dữ liệu RRD để tổ hợp và biểu diễn kết quả dưới dạng đồ thị RRD cũng được sử dụng để phát hiện các lưu lượng bất thường trong mạng và qua đó đánh giá hoạt động hay phát hiện các tấn công mạng

2.2.1 RRD trong thu thập dữ liệu và hiển thị kết quả

Một hệ thống lưu trữ chuyên ngành được biết đến như một cơ sở dữ liệu Round Robin cho phép lưu trữ một lượng lớn thông tin chuỗi thời gian như nhiệt độ, băng thông mạng và giá cổ phiếu với một dung lượng đĩa không đổi Nó làm điều này bằng cách tận dụng nhu cầu thay đổi cho chính xác Như chúng ta sẽ thấy sau này, các "round - robin" một phần xuất phát từ cấu trúc

dữ liệu cơ bản được sử dụng để lưu trữ các điểm dữ liệu: danh sách tròn

Nhiệm vụ đầu tiên trong thu thập dữ liệu là để lấy dữ liệu và được thực hiện bằng cách sử dụng bộ quét thiết bị Tần số quét có thể được thực hiện từ lịch của hệ điều hành

Sau khi thu thập được dữ liệu, để có thể tạo ra những đồ thị về trạng thái hoạt động của các thiết bị cần giám sát sử dụng RRDTool (Round Robin Database Tool) để lưu trữ dữ liệu RRDTool là một hệ thống lưu trữ dữ liệu

và hiển thị dữ liệu theo chuỗi thời gian Nó lưu trữ các dữ liệu một cách rất nhỏ gọn mà độ lớn của tệp sẽ không thay đổi theo thời gian, dựa trên dữ liệu của RRDTool, RDDTool hỗ trợ trong hệ thống đồ họa, tạo ra các sơ đồ thể hiện dữ liệu mà nó thu thập được

Một trong những tính năng được đánh giá cao nhất của RRDTool là tích hợp chức năng đồ họa Điều này càng hữu ích khi kết hợp với máy chủ web

Trang 34

Như vậy, dữ liệu được thể hiện qua các thông số của hệ thống và khoảng thời gian dữ liệu được thu thập Hình ảnh của các dữ liệu này thường được minh họa thể hiện theo những cách rất khác nhau trên cơ sở đó người quản trị có thể đánh giá được ngưỡng của thiết bị

Trong hệ quản trị mạng, ngoài việc sử dụng cơ sở dữ liệu RRD để lưu trữ dữ liệu thu thập và tổ hợp theo chuỗi thời gian, các nhà công nghệ còn phát triển cơ sở dữ liệu RRD để biểu diễn dữ liệu dưới dạng đồ thị Hình 2.6 Minh họa nguyên lý hiển thị kết quả các thông số mạng từ RRD

Hình 2.6 Biểu diễn đồ thị trong RRD

Hệ thống giám sát mạng quy mô lớn yêu cầu lưu trữ và tổ hợp dữ liệu

đo lường hiệu quả cơ sở dữ liệu quan hệ và cơ sở dữ liệu xoay vòng RRD Có những hạn chế khi xử lý một lượng lớn số chuỗi thời gian Thời gian truy cập

dữ liệu làm tăng đáng kể khi tập số dữ liệu, số phép đo lường lớn Chính vì vậy hệ thống quản trị và theo dõi mạng buộc phải giảm số các thông số đo lường số liệu và tần suất lấy thông số để thời gian truy cập dữ liệu giới hạn

Trang 35

trong phạm vi chấp nhận được Có thể khai thác giải pháp nén cơ sở dữ liệu chuỗi thời gian và cải tiến RRD để có thể lưu trữ và tổ hợp dữ liệu trong thời gian thực với mạng quy mô lớn

Quản lý thời gian thực của một cơ sở hạ tầng mạng lưới dịch vụ tại các IAP cấp / ISP không phải là một công việc tầm thường[1] Đầu tiên, đó là

số lượng tuyệt đối của dữ liệu được tạo ra trên cơ sở một thời gian ngắn Các

cơ sở hạ tầng phục vụ mạng lưới hoạt động lớn gồm hàng chục thiết bị chuyển mạch và định tuyến, hàng trăm máy tính host, và hàng ngàn trường hợp ứng dụng daemon để hỗ trợ một số thuê bao của hơn 1 triệu người sử dụng Thứ hai, có rất nhiều loại trong các loại dữ liệu thu thập được Các dịch

vụ mạng doanh nghiệp theo dõi các bộ đếm SNMP trên các liên kết mạng, thống kê như tải của CPU và hoạt động của thiết bị I/O, và các bản ghi sự kiện cho daemon ứng dụng Mọi biến giám sát, có một đơn vị lưu trữ dữ liệu trên một cổng thiết bị chuyển mạch, tải CPU của một máy chủ, hoặc yêu cầu

xử lý bởi một chương trình chạy như một tiến trình nền, tạo ra một chuỗi thời gian Tất cả những chuỗi thời gian phản ánh một phần của hệ thống mạng dịch vụ tổng thể Do đó, thách thức đầu tiên là thu thập, lưu trữ và cung cấp thời gian truy cập dữ liệu rộng lớn và đa dạng Các phần mềm mã nguồn mở [7] thường gặp thử thách đầu tiên này Khi sử dụng trình duyệt web, kỹ thuật viên mạng có thể nhanh chóng xem một loạt biểu đồ thời gian cho một mục tiêu và biến của tần suất

Các kỹ thuật viên mạng có thể sẽ quan tâm đến hành vi khác thường; nghĩa là, những thay đổi trong hành vi ngắn hạn của một chuỗi thời gian (phút hoặc giờ) mà không phù hợp với lịch sử quá khứ Các kỹ thuật viên có thể sẽ không quan tâm tới xu hướng dài hạn (tuần hoặc tháng) bởi vì họ hy vọng

Trang 36

chuỗi thời gian phải được phát triển trong một môi trường năng động Hành vi khác thường có thể chỉ là một phần rất nhỏ trong hiệu suất, sự thất bại trong ứng dụng, hoặc hệ thống thời gian chết Trong một số trường hợp, hành vi khác thường có thể được dự đoán; một số hành vi lại không thể dự đoán được

Thách thức thứ hai của mạng lưới giám sát là việc tự động xác định hành vi khác thường ở giữa hàng ngàn chuỗi thời gian mạng dịch vụ Một khi hành vi đó được xác định, thì sẽ kích hoạt được cảnh báo để thu hút sự chú ý của kỹ thuật viên về các vấn đề tiềm năng Hiện có các công cụ phần mềm cung cấp một số chức năng này, nhưng các giải pháp này thường dựa trên các quy tắc đơn giản hoặc một mức nào đó (ví dụ, sử dụng bộ nhớ là dưới 80%) Những quy định đơn giản này và mức này là đủ cho nhiều ứng dụng, nhưng

họ không thể phát hiện những thay đổi tinh tế hơn trong hành vi và họ áp dụng một tiêu chí tĩnh để phát hiện hành vi khác thường hơn là một tiêu chí năng động

Khái niệm về hành vi khác thường

Giả sử một mô hình thống kê tồn tại mô tả hành vi của một chuỗi thời gian (hoặc ít nhất là mô tả những điểm cần chú ý) Với một mô hình như vậy, người ta có thể xác định hành vi khác thường là những hành vi không phù hợp với các mô hình (hoặc không được mô tả hiệu quả bởi các mô hình)

Tất nhiên, hành vi bất thường đối với một mô hình thống kê có thể hoặc không thể mang lại kết quả thực từ quyền lợi của các kỹ thuật viên Trong trường hợp phát hiện nhầm từ kết quả bình thường thành bất thường thì gọi là sai tuyệt đối (false positive) Rõ ràng, ý tưởng là để giảm thiểu tỷ lệ sự kiện bình thường sai khi xác định tất cả các sự kiện thực Tuy nhiên, ý tưởng này hiếm khi có thể đạt được Trong hầu hết các hệ thống phát hiện, có một

sự cân bằng giữa các sự lựa chọn (để tránh nhầm kết quả bình thường, cung

Trang 37

cấp tính đặc trưng và chính xác cao) và độ nhạy cảm (khả năng phát hiện kết quả bình thường, cũng như khả năng gợi lại) Trong khi điều quan trọng để duy trì nhận thức về những vấn đề này là các hệ thống đó sẽ trở nên ít quan trọng nếu ta coi mô hình thống kê cho hành vi bất thường như là một cơ chế sàng lọc chứ không phải là một sự thay thế cho sự phán đoán của các kỹ thuật viên

Chú ý: định nghĩa này áp dụng cho mỗi chuỗi thời gian độc lập Có thể có nhiều cách để đạt được mô hình thống kê các hành vi khác thường bằng cách tận dụng các mối quan hệ giữa các biến mạng lưới dịch vụ nhưng điều đó không được để cập trong bài viết này

Nhiều mạng lưới dịch vụ chuỗi thời gian cần phải có các quy tắc (hoặc đặc điểm) sau đây và những quy tắc này cũng rất cần cho một mô hình:

1 Một xu hướng theo thời gian (ví dụ, một sự gia tăng dần dần trong các yêu cầu ứng dụng daemon trong khoảng thời gian hai tháng do tăng tải thuê bao)

2 Một xu hướng mùa vụ hoặc theo chu kỳ (ví dụ, hàng ngày số bytes sẽ tăng theo giây, tăng nhiều vào những giờ sáng, đỉnh điểm vào buổi chiều và giảm muộn vào ban đêm)

3 Biến thiên theo mùa (ví dụ, yêu cầu ứng dụng dao động rất mạnh từng phút trong giờ cao điểm từ 4-8 giờ tối, nhưng lúc 1 giờ sáng yêu cầu ứng dụng hầu như không thay đổi)

4 Tiến hóa dần dần của những qui luật (1) đến (3) theo thời gian (ví dụ, chu kỳ hàng ngày thay đổi dần dần khi số lượng các giờ ban ngày buổi tối tăng từ tháng Một đến tháng Sáu)

Trang 38

Những quy định này có thể không đầy đủ nhưng nó là những quy định quan trọng nhất

Ngoài hàng loạt những qui luật thời gian cho mô hình thì thiết kế mô hình phải xem xét bối cảnh giám sát thời gian thực Các kỹ thuật viên cũng biết rất rõ là mô hình thống kê hết sức phức tạp và khó có thể tính toán khả thi trong bối cảnh thời gian thực

Phát hiện hành vi bất thường này được chia thành ba phần:

- Một thuật toán để dự đoán các giá trị của một chuỗi thời gian tương lai

- Một thước đo về độ lệch giữa các giá trị dự đoán và các giá trị quan sát

- Một cơ chế để quyết định liệu rằng và khi nào một giá trị quan sát hoặc chuỗi các giá trị quan sát là “bị lệch” so với giá trị dự đoán

Các mô hình được đề xuất là một phần mở rộng của Holt - Winters

Dự báo, trong đó hỗ trợ mô hình gia tăng cập nhật thông qua làm thông suốt Các phần sau đây thảo luận về các mô hình ở một số chi tiết và yêu cầu một

Phương pháp làm trơn theo lũy thừa

Phương pháp làm trơn theo lũy thừa là một thuật toán đơn giản để dự đoán giá trị tiếp theo trong một chuỗi thời gian, thuật toán này sẽ cho những

Trang 39

giá trị hiện tại và những dự đoán hiện tại Cho ŷ t + 1 biểu thị các giá trị dự đoán

cho thời điểm t + 1 , sau đó: ŷ t + 1 = αy t +( 1 – α) ŷ t

Dự đoán thực sự là trung bình về lượng tất cả các quan sát trong quá khứ trong chuỗi thời gian Những tiền đề của Phương pháp làm trơn theo lũy thừa là giá trị hiện tại cung cấp nhiều thông tin nhất cho dự đoán các giá trị tiếp theo, và rằng trọng lượng của sự quan sát cũ sẽ giảm theo cấp số nhân bởi

vì những quan sát này thiên về quá khứ Nó là một thuật toán gia tăng vì các

dự đoán tiếp theo thu được bằng cách cập nhật các dự báo hiện tại với các giá trị quan sát hiện tại

α là các tham số mô hình và 0 < α < 1 Nó quyết định tỷ lệ phân rã ( 1

- α) và trọng lượng các giá trị hiện tại được đưa ra trong quá trình cập nhật gia

tăng

Phương pháp dự đoán theo mô hình Holt - Winters

Phương pháp dự báo theo mô hình Holt - Winters là một thuật toán phức tạp hơn là phương pháp làm trơn theo lũy thừa Holt - Winters dựa trên tiền đề rằng các chuỗi thời gian quan sát có thể được chia thành ba phần: đường cơ sở, xu hướng tuyến tính, và hiệu ứng theo mùa Các thuật toán giả định mỗi thành phần này tiến hóa theo thời gian và điều này được thực hiện bằng cách áp dụng phương pháp làm trơn theo lũy thừa để từng bước cập nhật các thành phần

Trang 40

được xác định bởi các thông của mô hình (α, β, γ) Nhớ lại m là khoảng thời

gian của chu kỳ theo mùa; vì vậy các hệ số theo mùa tại thời điểm t tham khảo các hệ số tính toán cuối cùng cho cùng thời điểm trong chu kỳ theo mùa

Các ước tính mới của đường cơ sở là giá trị quan sát được điều chỉnh

bởi các ước tính tốt nhất có sẵn của hệ số theo mùa (c t - m) Làm cơ sở cập nhật vào tài khoản cho sự thay đổi do xu hướng tuyến tính, dự đoán xu hướng tuyến tính được thêm vào hệ số đường cơ sở Các ước tính mới của xu hướng tuyến tính chỉ đơn giản là sự khác biệt giữa các cơ sở mới và cũ (như khoảng thời gian giữa các quan sát cố định, nó không liên quan) Các ước tính mới của các thành phần theo mùa là sự khác biệt giữa giá trị quan sát và các cơ sở tương ứng

α, β và γ là các thông số thích nghi của thuật toán và 0 < α, β, γ < 1

Giá trị lớn hơn có nghĩa là các thuật toán thích nghi nhanh hơn và dự đoán phản ánh quan sát gần đây trong chuỗi thời gian; giá trị nhỏ hơn có nghĩa là các thuật toán thích nghi chậm hơn, đặt trọng lượng hơn về lịch sử quá khứ của chuỗi thời gian

Lưu ý rằng các công thức cập nhật bao hàm một sự hỗ trợ cần thiết để lưu trữ các giá trị hiện tại của đường cơ sở và xu hướng tuyến tính, và một giai đoạn duy nhất của hệ số theo mùa, như các giá trị lưu trữ được thay thế tại mỗi lần lặp

Ngày đăng: 16/04/2017, 17:26

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] Jake D. Brutlag . Aberrant Behavior Detection in Time Series for Network Monitoring, Proceedings of the 14th Systems Administration Conference, 2000 Sách, tạp chí
Tiêu đề: Aberrant Behavior Detection in Time Series for Network Monitoring
[2] A. C. Gilbert, Y. Kotidis, S. Muthukrishnan, M. J. Strauss. QuickSAND: Quick Summary and Analysis of Network Data. DIMACS Technical Report 2001 - 43, Dec. 2001. Available at http://citeseer.nj.nec.com/gilbert01quicksand.html Sách, tạp chí
Tiêu đề: Quick Summary and Analysis of Network Data
[3] A . LLUSÀ-SERRA T. ESCOBET-CANAL S. VILA-MARTA, A Model for a Multiresolution Time Series Database System, Universitat Politècnica de Catalunya, 2012 Sách, tạp chí
Tiêu đề: A Model for a Multiresolution Time Series Database System
[4] M. A. Hammad, M. J. Franklin, W. G. Aref, A. K. Elmagarmid. Scheduling for shared window joins over data streams. Submitted for publication, Feb. 2003 Sách, tạp chí
Tiêu đề: Scheduling for shared window joins over data streams
[5] I. Lazaridis, S. Mehrotra. Capturing Sensor-Generated Time Series with Quality Guarantees. To appear in Proc. 19th Int. Conf. on Data Engineering, 2003 Sách, tạp chí
Tiêu đề: Capturing Sensor-Generated Time Series with Quality Guarantees". To appear in "Proc. 19th Int. Conf. on Data Engineering
[6] R. Sadri, C. Zaniolo, A. M. Zarkesh, J. Adibi. Optimization of Sequence Queries in Database Systems. In Proc. ACM SIGACT-SIGMOD Symp. on Principles of Database Systems, 2001, pp. 71–81 Sách, tạp chí
Tiêu đề: Optimization of Sequence Queries in Database Systems". In "Proc. ACM SIGACT-SIGMOD Symp. on Principles of Database Systems

HÌNH ẢNH LIÊN QUAN

Hình 1.1. Kiến trúc tổng thể của hệ quản lý luồng dữ liệu - Thuật toán xoay vòng với quản lý dữ liệu chuỗi thời gian và ứng dụng trong quản trị mạng máy tính
Hình 1.1. Kiến trúc tổng thể của hệ quản lý luồng dữ liệu (Trang 16)
Hình 2.1. Nguyên lý của cơ sở dữ liệu RRD (RRA) - Thuật toán xoay vòng với quản lý dữ liệu chuỗi thời gian và ứng dụng trong quản trị mạng máy tính
Hình 2.1. Nguyên lý của cơ sở dữ liệu RRD (RRA) (Trang 27)
Hình 2.6. Biểu diễn đồ thị trong RRD - Thuật toán xoay vòng với quản lý dữ liệu chuỗi thời gian và ứng dụng trong quản trị mạng máy tính
Hình 2.6. Biểu diễn đồ thị trong RRD (Trang 34)
Hình 3.1. Lưu đồ chung chương trình tích hợp RRDTool - Thuật toán xoay vòng với quản lý dữ liệu chuỗi thời gian và ứng dụng trong quản trị mạng máy tính
Hình 3.1. Lưu đồ chung chương trình tích hợp RRDTool (Trang 55)
Hình 3.2. Chạy lệnh tích hợp RRDTool - Thuật toán xoay vòng với quản lý dữ liệu chuỗi thời gian và ứng dụng trong quản trị mạng máy tính
Hình 3.2. Chạy lệnh tích hợp RRDTool (Trang 56)
Hình 3.3. Mô hình thử nghiệm - Thuật toán xoay vòng với quản lý dữ liệu chuỗi thời gian và ứng dụng trong quản trị mạng máy tính
Hình 3.3. Mô hình thử nghiệm (Trang 57)
Hình 3.6. Cài đặt dịch vụ SNMP cho thiết bị mới - Thuật toán xoay vòng với quản lý dữ liệu chuỗi thời gian và ứng dụng trong quản trị mạng máy tính
Hình 3.6. Cài đặt dịch vụ SNMP cho thiết bị mới (Trang 61)
Hình 3.7. Tìm file SNMP Service - Thuật toán xoay vòng với quản lý dữ liệu chuỗi thời gian và ứng dụng trong quản trị mạng máy tính
Hình 3.7. Tìm file SNMP Service (Trang 62)
Hình 3.8. Đặt cấu hình SNMP Service - Thuật toán xoay vòng với quản lý dữ liệu chuỗi thời gian và ứng dụng trong quản trị mạng máy tính
Hình 3.8. Đặt cấu hình SNMP Service (Trang 62)
Hình 3.9. Cài đặt thiết bị vào cacti - Thuật toán xoay vòng với quản lý dữ liệu chuỗi thời gian và ứng dụng trong quản trị mạng máy tính
Hình 3.9. Cài đặt thiết bị vào cacti (Trang 63)
Hình 3.12. Thể hiện việc lựa chọn thiết bị cần tạo đồ thị - Thuật toán xoay vòng với quản lý dữ liệu chuỗi thời gian và ứng dụng trong quản trị mạng máy tính
Hình 3.12. Thể hiện việc lựa chọn thiết bị cần tạo đồ thị (Trang 65)
Hình 3.13. Danh sách các máy có trong cây đồ thị - Thuật toán xoay vòng với quản lý dữ liệu chuỗi thời gian và ứng dụng trong quản trị mạng máy tính
Hình 3.13. Danh sách các máy có trong cây đồ thị (Trang 66)
Hình 3.14. Biểu đồ tình trạng các thiết bị  Bước 4. Quản  lý cơ bản hệ thống - Thuật toán xoay vòng với quản lý dữ liệu chuỗi thời gian và ứng dụng trong quản trị mạng máy tính
Hình 3.14. Biểu đồ tình trạng các thiết bị Bước 4. Quản lý cơ bản hệ thống (Trang 67)
Hình 3.15. Import Templates mới - Thuật toán xoay vòng với quản lý dữ liệu chuỗi thời gian và ứng dụng trong quản trị mạng máy tính
Hình 3.15. Import Templates mới (Trang 67)
Hình 3.19. Thông tin giới hạn của hệ thống - Thuật toán xoay vòng với quản lý dữ liệu chuỗi thời gian và ứng dụng trong quản trị mạng máy tính
Hình 3.19. Thông tin giới hạn của hệ thống (Trang 69)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w