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

Nghiên cứu giải pháp giám sát hoạt động của các máy tính trên 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 (1.86 MB, 76 trang )


Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

1

ĐẠI HỌC THÁI NGUYÊN
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG




NGUYỄN MINH HẢI




NGHIÊN CỨU GIẢI PHÁP GIÁM SÁT HOẠT ĐỘNG CỦA CÁC MÁY TÍNH
TRÊN MẠNG




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







Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên



2

Thái Nguyên 12/2013




Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

3

ĐẠI HỌC THÁI NGUYÊN
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG



NGUYỄN MINH HẢI



NGHIÊN CỨU GIẢI PHÁP GIÁM SÁT HOẠT ĐỘNG CỦA CÁC MÁY TÍNH
TRÊN MẠNG

Chuyên ngành: Khoa học máy tính
Mã số: 60.48.01

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




Ngƣời hƣớng dẫn: PGS.TS Nguyễn Văn Tam



Thái Nguyên 12/2013


Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

4

LỜI CAM ĐOAN

Với danh dự là một chuyên viên, tôi xin cam đoan những kết quả nghiên cứu
trong đề tài này là của riêng tôi.
Các kết quả và số liệu trong luận văn là trung thực và chƣa đƣợc ai công
bố trong bất kỳ một công trình khác. Trừ những phần tham khảo đã đƣợc ghi rõ
trong luận văn.
Nếu xảy ra bất kỳ trƣờng hợp nào liên quan đến bản quyền, tôi xin chịu
hoàn toàn trách nhiệm.
Tác giả


Nguyễn Minh Hải

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

5


LỜI CẢM ƠN

Lời đầu tiên tôi xin đƣợc bày tỏ lòng biết ơn và kính trọng tới Phó giáo sƣ
– Tiến sĩ Nguyễn Văn Tam – Viện Công nghệ thông tin, Thầy hƣớng dẫn khoa
học của tôi về những định hƣớng chủ đạo và những đóng góp quý báu của Thầy
trong suốt quá trình tôi làm luận văn thạc sĩ và viết luận văn.
Tôi muốn bày tỏ lòng biết ơn đến Ban giám hiệu trƣờng Đại học Công
nghệ thông tin và Truyền thông – Đại học Thái Nguyên về những giúp đỡ quý
báu, tạo điều kiện cho tôi hoàn thành luận văn đúng hạn.
Đặc biệt tôi muốn bày tỏ lòng biết ơn chân thành đến Ban giám đốc Bệnh
viện Điều dƣỡng và Phục hồi chức năng Tỉnh Phú Thọ đã hết lòng giúp đỡ tôi
trong việc khảo sát, thống kê, cung cấp những tài liệu liên quan trong quá trình
làm luận văn và viết luận văn.
Tôi cũng bày tỏ lòng biết ơn đến gia đình, anh em bạn bè, đồng nghiệp đã
thƣờng xuyên động viên và luôn dành cho tôi môi trƣờng làm việc tốt nhất.

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

6

MỤC LỤC
LỜI CAM ĐOAN:………………………………………………………………… I
LỜI CẢM ƠN:…………………………………………………………………… II
MỤC LỤC:…………………………………………………………………… ….III
DANH MỤC CÁC THUẬT NGỮ VIẾT TẮT:………………………………. IV
DANH MỤC CÁC HÌNH:………………………………………………………….V
DANH MỤC CÁC BẢNG:………………………………………………… VI
MỞ ĐẦU:…………………………………………………………………… 1
1. Lý do chọn đề tài:………………………………………………………….…1
2. Mục tiêu:…………………………………………………………………… 2

3. Đối tƣợng và phạm vi nghiên cứu:………………………………………… 2
4. Ý nghĩa khoa học và thực tiễn của đề tài:……………………………… … 2
5. Phƣơng pháp nghiên cứu:……………………………………………… ….3
6. Nội dung luận văn:………………………………………………………… 3
CHƢƠNG I: NGHIÊN CỨU VỀ KIẾN TRÚC QUẢN TRỊ MẠNG SNMP 4
1.1. Giao thức quản trị mạng SNMP:…………………………………………… 4
1.2. Hoạt động của SNMP:…………………………………………………….… 9
1.2.1. Get:……………………………………………………………………… 10
1.2.2.Get – next:………………………………………………………………… 10
1.2.3. Get – bulk:……………………………………………………………… …11
1.2.4. Set:……………………………………………………………………….… 12
1.2.5. Error Response của Get, get – next, get – bulk, set:…………………….… 13
1.2.6. SNMP Trap:…………………………………………………………….… 15
1.2.7. SNMP Notification:……………………………………………………… 17
1.2.8. SNMP inform:…………………………………………………………… 18
1.2.9. SNMP report:……………………………………………………………… 18
CHƢƠNG II:GẢI PHÁP QUẢN TRỊ VÀ GIÁM SÁT HOẠT ĐỘNG CỦA
CÁC MÁY TÍNH TRÊN MẠNG 19
2.1. Giám sát mạng và máy tính dựa trên SNMP với MIB mở rộng 19
2.1.1. Giới thiệu chuẩn giám sát từ xa RMON 19
2.1.2. Các thành phần của RMON 22

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

7

2.1.3. Điều khiển thiết bị RMON 23
2.1.4. RMONv1 và RMONv2 26
2.1.4.1 RMON v1 26
2.1.4.1 RMON v2 28

2.2. Giám sát mang máy tính dựa trên WMI 33
2.2.1. Giới thiệu 33
2.2.2. Công nghệ WMI 33
2.2.3. Kiến trúc WMI 35
2.3. Thiết kê tổng thể hệ thống quản trị mạng…………………………… 36
2.3.1 Sơ đồ chức năng và quy trình của hệ thống…………………… … 36
2.3.2 Giao diện Web quản trị …………………………………………….38
2.4. Giám sát máy tính dựa trên mã nguồn mở………………………… 39
2.4.1 Giám sát máy tính cài hệ điều hành Windows…………………… 40
2.4.2 Giám sát máy tính cài hệ điều hành Linux………………………… 41

CHƢƠNG 3: XÂY DỰNG HỆ THỐNG GIÁM SÁT MẠNG HOẠT ĐỘNG
CỦA MÁY TÍNH TH Ử NGHIỆM 42
3.1. Lựa chọn mô hình thử nghiệm bằng phần mềm giám sát Nagios core 42
3.1.1. Giới thiệu tổng quát hệ thống theo dõi mạng Nagios………… 42
3.1.2. Các chức năng cơ bản:…………………………………………………… 44
3.2. Xây dựng hệ thống dựa trên mã nguồn mở Nagios:……………………… 47
3.2.1. Mô hình triển khai:……………………………………………………… 47
3.2.1.1. Mục đích hệ thống thử nghiệm:……………………………………… 47
3.2.1.2. Yêu cầu hệ thống:………………………………………………… 47
3.2.1.3. Kịch bản thử nghiệm:…………………………………………………… 47
3.2.2. Cài đặt mô hình thử nghiệm:……………………………………………… 48
3.2.2.1. Mô hình thử nghiệm:………………………………………………… 48
3.2.2.2. Kết quả thử nghiệm:………………………………………… 49
a. Thống kê tình trạng hoạt động của một số host/dịch vụ:……………… 50
b.Giám sát thiết bị đầu cuối( máy tính cài hệ điều hành XP):…………… 51
c. Báo cáo dịch vụ host trong khoảng thời gian:…………………… 52

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên


8

KẾT LUẬN:………………………………………………………… 53
TÀI LIỆU THAM KHẢO:……………………………………… 54
PHỤ LỤC I: HƢỚNG DẪN CÀI ĐẠT NAGIOS TRÊN UBUNTU:…… 55
1.1.Gói yêu cầu:………………………………………………………… ….55
1.1.1. Download nagios từ server :……………………………………… …55
1.1.2. Tạo tài khoản:…………………………………………………………56
1.1.3. Download plugin của nagios:…………………………………………57
PHỤ LỤC II:CÀI ĐẶT VÀ CẤU HÌNH GIÁM SÁT MÁY THIẾT BỊ ĐẦU
CUỐI XP:…………… 58
2.1. Những cái đã có…………………………………… 58
2.1.1.Các yêu cầu cần có 58
2.1.2.Cài đặt Windows Aget 58
2.1.3.Cấu hình Nagios 60
2.1.4.Mật khẩu:…………………… ……………… 62









Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

9

DANH MỤC CÁC THUẬT NGỮ VIẾT TẮT


THUẬT NGỮ
VIẾT TẮT
MÔ TẢ Ý NGHĨA
TCP
Transmission Control Protocol
TCP/IP
Transmission Control Protocol/Internet Protocol
UDP
User Datagram Protocol
OSI
Open System Interconecction
SNMP
Simple Network Managermant Protocol
IETF
Internet Engineering Task Force
MIB
Managerment Information Base
PDU
Protocol Data Unit
NMS
Network Managerment System
BER
Basic Encoding Rules
CIM
Common Information Model
HMMS
HyperMedea
SGMP
Simple Gateway Management Protocol

RMON
Remote Network Monitoring
NMS
Network Management System
ASN.1
Abstract Syntax Notation 1
RFC
Requests for Comments
MO
Managed Object
SMI
Structure of Management Information
OID
Object identifier
ICMP
Internet Control Message Protocol






Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

10


DANH MỤC CÁC HÌNH
STT
TÊN HÌNH

TRANG
1
Hình 1.1 – Lƣu đồ giao thức SNMP
6
2
Hình 1.2 – Mối quan hệ giữa NMS và Agent
7
3
Hình 1.3 – Mô hình hoạt động của SNMP
9
4
Hình 1.4 – Hoạt động của lệnh “get” trong giao
thức SNMP
10
5
Hình 1.5 - Quá trình tìm kiếm trong cây
11
6
Hình 1.6 - Hoạt động của Set
13
7
Hình 1.7 - Mô hình gửi Trap từ Agent
15
8
Hình 1.8 - Vị trí RMON trong cây MIB-II
21
9
Hình 1.9 - Cấu hình RMON điển hình
22
10

Hình 2.1 -Ví dụ về mạng giám sát từ RMON
23
11
Hình 2.2 - Các nhóm RMONv1 và RMONv2
26
12
2.3 - Các nhóm của RMONv1
27
13
2.3.1- Sơ đồ quy trình thực hiện của hệ thống
37
14
2.3.2 - Sơ đồ quy trình thực hiện hệ thống
37
15
2.3.4 - Sơ đồ chức năng hệ thống
38
16
Hình 2.3.5 - Sơ đồ khối giao diện web quản trị
39
17
Hình 2.4 – Kiến trúc của WMI
35
18
Hình 2.5 - Mô hình và cơ chế làm việc của
NSClient ++
40
19
Hình 2.6 – Mô hình và cơ chế làm việc của RNPE
41

20
2.7 - Direct Checks
42
21
Hình 2.8 – Indirect Checks
42
22
Hình 3.1 – Ví dụ mô tả sự cố
45
23
Hình 3.2 – Mô hình thử nghiệm
48

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

11

24
Hình 3.4- Hoạt động của hệ thống giám sát ngày
17/9/2013
50
25
3.5 - Thông tin các dịch vụ trong hệ thống
51
26
Hình 3.6 – Hệ thống hiển thị máy tính đang bật
51
27
Hình 3.7 – Các đặc điểm đƣợc giám sát của máy chủ
51

28
Hình 3.8 – log thông báo
52



Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

12

DANH MỤC CÁC BẢNG
STT
TÊN BẢNG
TRANG
1
2.1 - Các thông báo lỗi trong SNMPv1
14
2
2.2 - Các lỗi trong SNMPv2
14-15
3
2.3 - Các kiểu Trap
16
4
Bảng 2.4 – Quy ƣớc EntryStatus
27
5
Bảng 2.5 - Các bảng và nhóm MIB RMON1
29
6

Bảng 2.6 - Các nhóm và bảng MIB RMONv2
29
























Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

13



MỞ ĐẦU
1. Lý do chọn đề tài
Ngày nay, với các nhu cầu ngày càng cao của con ngƣời, khoa học và công
nghệ ngày càng phát triển để đáp ứng các nhu cầu đó. Đi kèm với việc công
nghệ phát triển là sự mở rộng không ngừng về quy mô và chất lƣợng của cơ sở
vật chất, của hạ tầng mạng. Tất cả các tổ chức, các doanh nghiệp đều khác nhau,
nhƣng sự ảnh hƣởng của hệ thống mạng đối với hoạt động của doanh nghiệp hầu
nhƣ không thay đổi. Thực tế, khi doanh nghiệp phát triển, mạng lƣới phát triển
không chỉ về quy mô và tính phức tạp, mà còn trong ý nghĩa và giá trị. Hạ tầng
mạng còn đặc biệt quan trong khi mọi hoạt động của các tổ chức, doanh nghiệp
phụ thuộc hầu hết vào chúng.
Mạng lƣới giám sát đối với mạng của một doanh nghiệp hay một tổ chức là
một chức năng quan trọng có thể giúp tăng hiệu suất mạng, tăng năng suất lao
động và giảm chi phí cơ sở hạ tầng. Nó có thể tìm kiếm và giúp giải quyết các
sự cố của các thiết bị và hoạt động của ngƣời dùng.
Với một nguồn tài nguyên quan trọng thì việc đảm bảo cho nguồn tài
nguyên này có thể hoạt động liên tục là một vấn đề thiết yếu. Và đây cũng là
một thách thức bởi vì có rất nhiều mối nguy cơ tiềm tàng nhƣ hackers, tấn công
từ chối dịch vụ, virus, mất cắp thông tin đe dọa đến hệ thống của tổ chức hay
doanh nghiệp dẫn tới việc hệ thống ngƣng hoạt động, mất dữ liệu làm giảm độ
tin cậy cũng nhƣ lợi ích thu đƣợc từ hệ thống. Ngoài ra, các hệ thống mạng ngày
càng phát triển mạnh, với công nghệ mới, thiết bị mới, nên việc đảm bảo cho hệ
thống hoạt động một cách trôi chạy là vô cùng khó khăn và quan trọng.
Trong vai trò quản trị hệ thống hay là một chuyên gia bảo mật thông tin thì
công tác giám sát mạng luôn là một công việc cần thiết. Giám sát mạng cho biết
đƣợc tình trạng băng thông đƣợc sử dụng trên mạng, xác định đƣợc ngƣời dùng
nào đang chạy các ứng dụng chia sẻ file hay có virus/trojan nào đang âm thầm
hoạt động trên mạng hay không. Có khá nhiều công cụ có thể dùng cho quá trình


Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

14

giám sát mạng nhƣ ethereal, Sniffer Pro hay công cụ giám sát mạng của
Microsft Network Monitoring. Chính vì thế, vấn đề kiểm soát và giám sát mạng
đã đƣợc đặt ra nhƣ là một trong những nội dung quan trọng của mạng TCP/IP
hiện đại. Đề tài nghiên cứu giải pháp giám sát mạng máy tính nhằm đáp ứng các
yêu cầu quan trọng, đặc biệt đối với các mạng không đồng nhất : Đảm bảo mạng
không bị gián đoạn trong quá trình giám sát; Đảm bảo việc khai thác tài nguyên
có hiệu quả cho tất cả các ngƣời sử dụng; Đảm bảo an toàn, tin cậy và trung thực
của thông tin cung cấp.Chính vì vậy việc giám sát hệ thống là một công việc vô
cùng quan trọng và cấp thiết đối với mọi tổ chức, doanh nghiệp, cơ quan.
2.Mục tiêu thực hiện đề tài
Nghiên cứu các giải pháp thích hợp để giám sát hoạt động, dịch vụ trong
môi trƣờng mạng và tài nguyên của hệ thống. Thông qua đó có thể phát hiện các
nguy cơ, mối đe dọa đến hệ thống trong thời gian sớm nhất để có phƣơng án
khắc phục kịp thời, nhằm giảm thiểu ảnh hƣởng và tăng hiệu quả làm việc của
hệ thống mạng.
Đề tài sẽ tập trung vào tìm hiểu giao thức quản trị mạng SNMP và khả
năng giám sát mạng của giao thức SNMP, khả năng giám sát của hệ thống
Nagios. Nó đáp ứng đƣợc những gì cho công việc quản trị mạng. Cách thức nó
hoạt động nhƣ thế nào và triển khai thử nghiệm trên hệ thống máy ảo.
3. Đối tƣợng và phạm vi nghiên cứu đề tài
- Tìm hiểu giao thức quản lý mạng.
- Nghiên cứu các chƣơng trình giám sát hệ thống, dịch vụ, hiệu suất mạng
dựa trên mã nguồn mở.
- Tìm kiếm giải pháp giám sát mạng tối ƣu.
- Triển khai mô hình giám sát hệ thống mạng.
4. Ý nghĩa của đề tài

a. Ý nghĩa khoa học
- Là tài liệu tham khảo về lĩnh vực Giám sát mạng máy tính.

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

15

- Nắm vững nội dung nghiên cứu về tổng quan các kiến trúc của hệ thống
quản lý hiện tại của mạng.
- Cung cấp lý thuyết về giao thức giám sát (Giao thức SNMP).
- Giới thiệu chức năng quản lý mạng; tóm tắt các mạng lƣới giám sát yêu
cầu chức năng.
- Cung cấp lý thuyết về giám sát hệ thống.
- Chỉ ra tầm quan trọng của việc giám sát hệ thông.
b. Ý nghĩa thực tiễn của đề tài
- Quản lý các dịch vụ mạng, quản lý các máy trạm của khoa phòng trong
bệnh viện.
- Giám sát các dịch vụ phục vụ công tác của bệnh viện.
- Giám sát các thiết bị đầu cuối.
- Giám sát dịch vụ mạng, máy trạm phục vụ công tác điều hành hệ thống
của bệnh viện tiến tới phục vụ nâng cấp hệ thống mạng bệnh viện.
- Giám sát lƣu lƣợng mạng, giám sát máy in, giám sát router…
5. Phƣơng pháp nghiên cứu
- Thu thập, phân tích và tổng hợp các tài liệu, thông tin có liên quan
đến đề tài.
- Xây dựng hệ thống giám sát mạng thực nghiệm để minh chứng những
nghiên cứu về lý thuyết.
6. Nội dung của luận văn: Bố cục luận văn gồm 3 chƣơng
Chƣơng I: Quản trị và giám sát mạng dựa trên SNMP
1.1. Giao thức quản trị mạng SNMP

1.2. Hoạt động của SNMP
1.2.1. Get
1.2.2.Get – next
Chƣơng 2: Nghiên cứu giải pháp quản trị và giám sát các hoạt động của máy
tính trên mạng
2.1. Giám sát mạng và máy tính dựa trên SNMPvới MIB mở rộng

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

16

2.1.1. Giới thiệu chuẩn giám sát từ xa RMON
2.2. Giám sát mạng và máy tính dựa trên WMI
2.3. Thiết kê tổng thể hệ thống quản trị mạng
2.3.1 Sơ đồ chức năng và quy trình của hệ thống
2.3.2. Giao diện Web quản trị
2.4. Giám sát máy tính dựa trên mã nguồn mở
2.4.1 Giám sát máy tính cài hệ điều hành Windows
2.4.2 Giám sát máy tính cài hệ điều hành Linux/Unix
Chƣơng 3: Xây dựng hệ thống giám sát mạng hoạt động của máy tính thử
nghiệm
3.1. Phần mềm giám sát Nagios core
3.2. Xây dựng hệ thống dựa trên mã nguồn mở Nagios
3.2.2.1. Mô hình thử nghiệm
3.2.2.2. Kết quả thử nghiệm


CHƢƠNG I: QUẢN TRỊ MẠNG VÀ GIÁM SÁT MẠNG DỰA TRÊN
GIAO THỨC SNMP
1.1. Giao thức quản trị mạng SNMP

Simple Network Management Protocol (SNMP): là một giao thức cung
cấp phƣơng pháp để giám sát và điều khiển các thiết bị mạng và để quản lý các
cấu hình, thu thập thống kê, hiệu suất và bảo mật.
SNMP là giao thức đƣợcsử dụng rất phổ biến để giám sát và điều khiển
thiết bị mạng nhƣ switch, router, ridge Sử dụng trong các hệ quản trị nhƣ
Unix, Windows, Printers, Modem racks, power supplies và các thiết bị khác.
Với những văn phòng nhỏ chỉ có vài thiết bị mạng và đặt tập trung một nơi thì
có lẽ chúng ta không thấy đƣợc lợi ích của SNMP. Nhƣng với các hệ thống
mạng lớn, thiết bị phân tán nhiều nơi và bạn cần phải ngồi một chỗ mà có thể
quản lý tất cả thiết bị mới thấy đƣợc lợi ích của SNMP.

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

17

Tổ chức IETF (Internet Engineering Task Force) đánh giá cao vai trò của
SNMP trong quản trị mạng Internet. IETF đã đƣa ra một loạt các RFC (Requests
for Comments) mà ở đó các giao thức hầu hết dựa trên cơ sở IP.
Giao thức SNMP đƣợc thiết kế để cung cấp một phƣơng thức đơn giản để
quản lý tập trung mạng TCP/IP. Nếu bạn muốn quản lý các thiết bị từ 1 vị trí tập
trung, giao thức SNMP sẽ vận chuyển dữ liệu từ client (thiết bị mà bạn đang
giám sát) đến server nơi mà dữ liệu đƣợc lƣu trong log file nhằm phân tích dễ
dàng hơn. Các phần mềm ứng dụng dựa trên giao thức SNMP nhƣ: Tivoli của
IBM, MOM của Microsft và HP Openview vv…
Giao thức SNMP là giao thức đã đƣợc thị trƣờng chấp nhận trong thời
gian rất ngắn. Điều đó là sự chứng minh tốt nhất cho ƣu điểm của nó. Giao thức
quản lý mạng đơn giản SNMP giúp ngƣời quản trị xác định và sửa chữa các vấn
đề trong TCP/IP internet. Ngƣời quản lý thực thi SNMP client trên máy tính cục
bộ của họ, máy tính PC chẳng hạn và sử dụng client để liên lạc với một hoặc
nhiều SNMP server nào thực thi trên máy tính ở xa (thƣờng là các gateway).

SNMP sử dụng mô hình fetch-store, trong đó mỗi server duy trì một tập hợp các
biến khái niệm để chứa các số liệu thống kêđơn giản, nhƣ là đếm số packet
nhận đƣợc, cũng nhƣ các biến phức tạp tƣơng ứng với các cấu trúc dữ liệu
TCP/IP, nhƣ là RARP cache và các bảng định tuyến IP.
Giao thức SNMP nằm ở tầng ứng dụng nó làm dễ dàng việc trao đổi
thông tin giữa các thiết bị mạng. Nó hoạt động dựa trên tầng UDP của giao thức
IP. Về tập lệnh, giao thức SNMP chỉ có 5 lệnh cơ bản để trao đổi thông tin giữa
trạm quản lý và các agent là: Get-Request, Get-Next-Request, Set-Request, Get-
Response và Trap. Đây chính là một ƣu điểm của SNMP.

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

18


Hình 1.1 – Lƣu đồ giao thức SNMP
Trong SNMP có 3 vấn đề cần quan tâm: Manager, Agent và MIB
(Management Information Base). MIB là cơ sở dữ liệu dùng phục vụ cho
Manager và Agent.
+ Manager là một server có chạy các chƣơng trình có thể thực hiện một số
chức năng quản lý mạng. Manager có thể xem nhƣ là NMS (Network Manager
Stations). NMS có khả năng thăm dò và thu thập các cảnh báo từ các Agent
trong mạng. Thăm dò trong việc quản lý mạng là đặt ra các câu truy vấn đến các
Agent để có đƣợc một phần nào đó của thông tin. Các cảnh báo của Agent là
cách mà Agent báo với NMS khi có sự cố xảy ra. Cảnh bảo của Agent đƣợc gửi
một cách không đồng bộ, không nằm trong việc trả lời truy vấn của NMS. NMS
dựa trên các thông tin trả lời của Agent để có các phƣơng án giúp mạng hoạt
động hiệu quả hơn. Ví dụ khi đƣờng dây T1 kết nối tới Internet bị giảm băng
thông nghiêm trọng, router sẽ gửi một thông tin cảnh báo tới NMS. NMS sẽ có
một số hành động, ít nhất là lƣu lại giúp ta có thể biết việc gì đã xảy ra. Các

hành động này của NMS phải đƣợc cài đặt trƣớc.
+ Agent là một phần trong các chƣơng trình chạy trên các thiết bị mạng
cần quản lý. Nó có thể là một chƣơng trình độc lập nhƣ các deamon trong Unix,
hoặc đƣợc tích hợp vào hệ điều hành nhƣ IOS của Cisco trên router. Ngày nay,
đa số các thiết bị hoạt động tới lớp IP đƣợc cài đặt SMNP agent. Các nhà sản
xuất ngày càng muốn phát triển các Agent trong các sản phẩm của họ để công

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

19

việc của ngƣời quản lý hệ thống hay ngƣời quản trị mạng đơn giản hơn. Các
Agent cung cấp thông tin cho NMS bằng cách lƣu trữ các hoạt động khác nhau
của thiết bị. Một số thiết bị thƣờng gửi thông báo “tất cả đều bình thƣờng” khi
nó chuyển từ một trạng thái xấu sang một trạng thái tốt. Điều này giúp xác định
khi nào một tình trạng có vấn đề đƣợc giải quyết.
Mối quan hệ giữa NMS và Agent:

Hình 1.2 – Mối quan hệ giữa NMS và Agent
Không có sự hạn chế nào khi NMS gửi một câu truy vấn đồng thời đến
Agent một cảnh báo.
+ MIB có thể xem nhƣ là một cơ sở dữ liệu của các đối tƣợng quản lý mà
Agent lƣu trữ đƣợc. Bất kỳ thông tin nào mà NMS có thể truy cập đƣợc đều
đƣợc định nghĩa trong MIB. Một Agent có thể có nhiều MIB nhƣng tất cả các
Agent đều có một lọai MIB gọi là MIB-II, đƣợc định nghĩa trong RFC 1213.
MIB-I là bản gốc của MIB nhƣng ít dùng khi MIB-II đƣợc đƣa ra. Bất kỳ thiết
bị nào đƣợc hỗ trợ SNMP đều phải có hỗ trợ MIB-II. MIB-II định nghĩa các
tham số nhƣ tình trạng của giao diện (tốc độ của giao diện, MTU, các octet gửi,
các octet nhận. ) hoặc các tham số gắn liền với hệ thống (định vị hệ thống,
thông tin liên lạc với hệ thống, ). Mục đích chính của MIB-II là cung cấp các

thông tin quản lý theo TCP/IP. Có nhiều kiểu MIB giúp quản lý cho các mục
đích khác nhau:
• ATM MIB (RFC 2515)
• Frame Relay DTE Interface Type MIB (RFC 2115)
• BGP Version 4 MIB (RFC 1657)

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

20

• RDBMS MIB (RFC 1697)
• RADIUS Authentication Server MIB (RFC 2619)
• Mail Monitoring MIB (RFC 2249)
• DNS Server MIB (RFC 1611)
Nhƣng nhà sản xuất cũng nhƣ ngƣời dùng có thể định nghĩa các biến MIB
riêng cho họ trong từng tình huống quản lý của họ.
Quản lý Host Resource cũng là một phần quan trọng của quản lý mạng.
Trƣớc đây, sự khác nhau giữa quản lý hệ thống kiểu cũ và quản lý mạng không
đƣợc xác định, nhƣng hiện nay nó đã đƣợc phân biệt rõ ràng. RFC 2790 đƣa ra
Host Resource với định nghĩa tập hợp các đối tƣợng cần quản lý trong hệ thống
Unix và Window; Các đối tƣợng đó là: Dung lƣợng đĩa, số user của hệ thống, số
tiến trình đang chạy của hệ thống và các phần mềm đã cài vào hệ thống. Trong
một thế giới thƣơng mại điện tử, các dịch vụ nhƣ web ngày càng trở nên phổ
biến, nên việc đảm bảo cho các server hoạt động tốt là việc hết sức quan trọng.
+ RMON (Remote Monitoring) hay còn gọi là RMONv1 đƣợc định nghĩa
trong RFC 2819. RMONv1 cung cấp cho hệ thống quản trị mạng các thông tin
dạng packet về các thực thể trong LAN hay WAN. RMONv2 đƣợc xây dựng
trên RMONv1 do những nhà cung cấp mạng cung cấp thông tin ở lớp
Application. Thông tin có thể thu đƣợc bằng nhiều cách; Một trong các cách đó
là đặt một bộ phận thăm dò của RMON trên mỗi phân đoạn mạng muốn theo

dõi. RMON - MIB đƣợc thiết kế để các RMON có thể chạy khi không kết nối
logic giữa hệ thống quản trị mạng và Agent; Có thể lấy đƣợc thông tin mà không
cần chờ truy vấn của hệ thống quản trị mạng. Sau đó, khi hệ thống quản trị mạng
muốn truy vấn, RMON sẽ trả lời bằng các thông tin thu thập đƣợc. Một cách
khác là ta có thể đặt ngƣỡng cho một loại lỗi nào đó, và khi lỗi vƣợt quá ngƣỡng
đặt ra, RMON gửi một cảnh báo cho hệ thống quản trị mạng.
1.2. Hoạt động của SNMP
Protocol Data Unit (PDU) là định dạng thông điệp mà manager và agent
sử dụng để gửi và nhận thông tin. Có một định dạng chuẩn PDU cho các hoạt

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

21

động của SNMP sau: Get; Get-next; Get-bulk (SNMPv2 và SNMPv3); Set; Get-
response; Trap; Notification (SNMPv2 và SNMPv3); Inform (SNMPv2 và
SNMPv3); Report (SNMPv2 và SNMPv3)

1.3 - Mô hình hoạt động của SNMP
1.2.1. Get
“Get” đƣợc gửi từ NMS yêu cầu tới agent. Agent nhận yêu cầu và xử lý
với khả năng tốt nhất có thể. Nếu một thiết bị nào đó đang bận tải nặng, nhƣ
router, nó không có khả năng trả lời yêu cầu nên nó sẽ hủy lời yêu cầu này.
Nếu agent tập hợp đủ thông tin cần thiết cho lời yêu cầu, nó gửi lại cho
NMS một get-response”:

nh
1.4

Ho


Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

22

ạt động của lệnh “get” trong giao thức SNMP
Để agent hiểu đƣợc NMS cần tìm thông tin gì, nó dựa vào một mục trong
“get” là “variable binding” hay varbind. Varbind là một danh sách các đối
tƣợng của MIB mà NMS muốn lấy từ agent. Agent hiểu câu hỏi theo dạng:
OID=value để tìm thông tin trả lời. Câu hỏi truy vấn cho trƣờng hợp trong hình
vẽ trên:
$ snmpget cisco.ora.com public .1.3.6.1.2.1.1.6.0 system.sysLocation.0 = ""
Đây là một câu lệnh “snmpget” trên Unix.
“cisco.ora.com” là tên của thiết bị,
Các hàng trong bảng đƣợc đánh số từ số 1 trở đi. Câu lệnh “get” hữu ích
trong việc truy vấn một đối tƣợng riêng lẻ trong MIB. Khi muốn biết thông tin
về nhiều đối tƣợng thì “get” tốn khá nhiều thời gian. Câu lệnh “get-next” giải
quyết đƣợc vấn đề này.
1.2.2. Get – next
“Get-next” đƣa ra một dãy các lệnh để lấy thông tin từ một nhóm trong
MIB. Agent sẽ lần lƣợt trả lời tất cả các đối tƣợng có trong câu truy vấn của
“get-next” tƣơng tự nhƣ get”, cho đến khi nào hết các đối tƣợng trong dãy. Ví
dụ ta dùng lệnh “snmpwalk”. “snmpwalk’ tƣơng tự nhƣ “snmpget’ nhƣng không
chỉ tới một đối tƣợng mà chỉ tới một nhánh nào đó:
Compiled Mon 31-Mar-97 19:53 by ckralik"
system.sysObjectID.0 = OID: enterprises.9.1.19
system.sysUpTime.0 = Timeticks: (27210723) 3 days, 3:35:07.23
Ở đây ta muốn lấy thông tin của nhóm “system”, agent sẽ gửi trả toàn bộ
thông tin của “system” theo yêu cầu. Quá trình tìm nhóm “system” trong MIB
thực hiện theo cây từ gốc, đến một nút nếu có nhiều nhánh thì chọn

nhánh tìm theo chỉ số của nhánh từ nhỏ đến lớn:

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

23


Hình 1.5 – Quá trình tìm kiếm trong cây
1.2.3. Get - bulk
“get-bulk” đƣợc định nghĩa trong SNMPv2. Nó cho phép lấy thông tin
quản lý từ nhiều phần trong bảng. Dùng “get” có thể làm đƣợc điều này. Tuy
nhiên, kích thƣớc của câu hỏi có thể bị giới hạn bởi agent. Khi đó nếu nó không
thể trả lời toàn bộ yêu cầu, nó gửi trả một thông điệp lỗi mà không có dữ liệu.
Với trƣờng hợp dùng câu lệnh “get-bulk”, agent sẽ gửi càng nhiều trả lời nếu
nó có thể. Do đó, việc trả lời một phần của yêu cầu là có thể xảy ra. Hai trƣờng
cần khai báo trong “get-bulk” là: “nonrepeaters” và “max-repetitions”.
“nonrepeaters” báo cho agent biết N đối tƣợng đầu tiên có thể trả lời lại nhƣ
một câu lệnh “get” đơn. “mã-repeaters” báo cho agent biết cần cố gắng tăng lên
tối đa M yêu cầu ”get-next” cho các đối tƣợng còn lại: $snmpbulkget -v2c-B1 3
linux.ora.com public sysDescr ifInOctets ifOutOctets
system.sysDescr.0 = "Linux linux 2.2.5-15 #3 Thu May 27 19:33:18 EDT 1999
i686"
interfaces.ifTable.ifEntry.ifInOctets.1 = 70840
interfaces.ifTable.ifEntry.ifOutOctets.1 = 70840

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

24

Ở đây, ta hỏi về 3 varbind: sysDescr, ifInOctets, và ifOutOctets. Tổng số

varbind đƣợc tính theo công thức N + (M * R) N: nonrepeater, tức số các đối
tƣợng vô hƣớng M: max-repeatition R: số các đối tƣợng có hƣớng trong yêu cầu
chỉ có sysDescr là vô hƣớng và N = 1M có thể đặt cho là 3, tức là 3 trƣờng cho
mỗi ifInOctets và ifOutOctets. Có 2 đối tƣợng có hƣớng là fInOctets và
ifOutOctets ef R=2 Tổng số có 1+3*2 = 7 varbind Còn trƣờng “–v2c” là do
“get-bulk” là câu lệnh của SNMPv2 nên sử dụng “-v2c” để chỉ rằng sử dụng
PDU của SNMPv2. “-B 1 3” là để đặt tham số N và M cho lệnh.
1.2.4. Set
- “Set”: để thay đổi giá trị của một đối tƣợng hoặc thêm một hàng mới
vào bảng. Đối tƣợng này cần phải đƣợc định nghĩa trong MIB là “read-write”
hay “write-only”. NMS có thể dùng “set’ để đặt giá trị cho nhiều đối tƣợng cùng
một lúc:

Hình 1.6 – Hoạt động của Set
$ snmpget cisco.ora.com public system.sysLocation.0
system.sysLocation.0 = ""
$ snmpset cisco.ora.com private system.sysLocation.0 s "Atlanta, GA"
system.sysLocation.0 = "Atlanta, GA"
$ snmpget cisco.ora.com public system.sysLocation.0
system.sysLocation.0 = "Atlanta, GA"
Câu lệnh đầu là dùng “get” để lấy giá trị hiện tại của “system.sysLocation”.
Trong câu lệnh “snmpset” các trƣờng “cisco.ora.com” và
“system.sysLocation.0” có ý nghĩa giống với “get”. “private” để chỉ đối tƣợng
“read-write”, và đặt giá trị mới bằng: “s "Atlanta, GA"”. “s” tức là đặt giá trị

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

25

của “system.sysLocation.0” thành string, và giá trị mới là "Atlanta, GA" .

Varbind này đƣợc định nghĩa trong RFC 1213 là kiểu string tối đa 255 ký tự:
sysLocation OBJECT-TYPE YNTAX DisplayString (SIZE (0 255))
ACCESS read-write TATUS mandatory ESCRIPTION The physical location of
this node (e.g., 'telephone closet, 3rd floor')." ::= { system 6 } Có thể cài đặt
nhiều đối tƣợng cùng lúc, tuy nhiên nếu có một hành động bị lỗi, toàn bộ sẽ bị
hủy bỏ.
1.2.5. Error Response của get, get-next, get-bulk, set
Có nhiều loại lỗi báo lại từ agent:
SNMPv1 Error Message
Mô tả
noError(0)
Không có lỗi
tooBig(1)
Yêu cầu quá lớn để có thể dồn vào một câu trả
lời.
noSuchName(2)
OID yêu cầu không tìm thấy, tức không tồn tại ở
agent.
badValue(3)
Câu lệnh “set” dùng không đúng với các object
“read-write” hay “write-only.
readOnly(4)
Lỗi này ít dùng. Lỗi “noSuchName” tƣơng đƣơng
với lỗi này.
genErr(5)
Dùng cho tất cả các lỗi còn lại, không nằm trong
các lỗi trên
2-1: Các thông báo lỗi trong SNMPv1
Các loại lỗi của SNMPv1 mang tính chất chung nhất, không rõ ràng. Do
đó SNMPv2 đƣa ra thêm một số loại lỗi nhƣ sau:

SNMPv2 Error Message
Mô Tả
noAccess(6)

Lỗi khi lệnh “set” cố gắng xâm nhập vào một
biến cấm xâm nhập. Khi đó, biến đó có trƣờng
“ACCESS” là “not-accessible”
wrongType(7)

Lỗi xảy ra khi lệnh “set” đặt một kiểu dữ liệu
khác với kiểu định nghĩa sẵn của đối tƣợng. Ví
dụ khi “set” đặt giá trị kiểu string cho một đối
tƣợng kiểu số nguyên INTEGER
wrongLength(8)
Lỗi khi lệnh “set” đƣa vào một giá trị có chiều
dài lớn hơn chiều dài tối đa của đối tƣợng.
wrongEncoding(9)

Lỗi khi lệnh “set” sử dụng cách mã hóa khác
với cách đối tƣợng đã định nghĩa.
wrongValue(10)

Một biến đƣợc đặt một giá trị mà nó không
hiểu. Khi một biến theo kiểu liệt kê

×