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

Phân tích đánh giá một số công cụ giám sát mạng và thử nghiệm với bộ công cụ CACTI

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 (2.66 MB, 69 trang )

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
---------------------------------------

Vũ Kim Cương

PHÂN TÍCH ĐÁNH GIÁ MỘT SỐ CÔNG CỤ GIÁM
SÁT MẠNG VÀ THỬ NGHIỆM VỚI BỘ CÔNG CỤ
CACTI

LUẬN VĂN THẠC SĨ KỸ THUẬT

HÀ NỘI – 2014


HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
---------------------------------------

Vũ Kim Cương

PHÂN TÍCH ĐÁNH GIÁ MỘT SỐ CÔNG CỤ GIÁM
SÁT MẠNG VÀ THỬ NGHIỆM VỚI BỘ CÔNG CỤ
CACTI
Chuyên ngành : Hệ thống thông tin
Mã số: 60.48.01.04

LUẬN VĂN THẠC SĨ KỸ THUẬT
NGƯỜI HƯỚNG DẪN KHOA HỌC
PGS.TSKH. HOÀNG ĐĂNG HẢI

HÀ NỘI - 2014



LỜI CAM ĐOAN
Tôi cam đoan đây là công trình nghiên cứu của riêng tôi.
Các số liệu, kết quả nêu trong luận văn là trung thực và chưa từng được ai công
bố trong bất kỳ công trình nào khác.

Hà Nội, ngày
tháng năm 2014
Tác giả luận văn

Vũ Kim Cương


LỜI CẢM ƠN
Em xin được bày tỏ lòng cảm ơn sâu sắc đến thầy giáo PGS.TSKH.Hoàng Đăng
Hải, Trung tâm Ứng cứu khẩn cấp máy tính Việt Nam (VNCERT) đã hướng dẫn tận
tình, động viên và tạo điều kiện thuận lợi trong suốt quá trình làm khóa luận.
Em xin chân thành cảm ơn các thầy, cô khoa Quốc tế và Đào tạo Sau đại học
cùng toàn thể các thầy giáo, cô giáo tham gia giảng dạy đã tạo điều kiện, truyền đạt
những kiến thức nền tảng mang tính định hướng rất có ích trong quá trình làm khóa
luận.

Tác giả luận văn

Vũ Kim Cương


5

MỤC LỤC


DANH MỤC CÁC THUẬT NGỮ, CHỮ VIẾT TẮT
Viết tắt
APM
CORBA
FTP
HTTP
ICMP
IPAM
LAN
MIB
NMC

Tiếng Anh
Monitor Application Performance
Common Object Request Broker Architecture
File Transfer Protocol
HyperText Transfer Protocol
Internet Control Message Protocol
IP Address Management
Local Area Network
Management Information Base
Network change and Configuration Management

NMS
OID
SNMP
VPN
WAN


Network Monitoring System
Object Identify
Simple Network Management Protocol
Virtual Private Network
Wide Area Network

Tiếng Việt
Giám sát hiệu suất ứng dụng
Kiến trúc môi giới các đối tượng
Giao thức truyền tập tin
Giao thức truyền tải siêu văn bản
Giao thức điều khiển thông điệp Internet
Quản lý địa chỉ IP
Mạng cục bộ
Cơ sở thông tin quản lý
Quản lý sự thay đổi của mạng và cấu hình
mạng
Hệ giám sát mạng
Định danh đối tượng
Giao thức quản lý mạng đơn giản
Mạng riêng ảo
Mạng diện rộng

DANH SÁCH HÌNH VẼ
Hình 1.1
Hình 1.2

Hình minh họa cơ chế Poll
Hình minh họa cơ chế Alert


5
6


6

Hình 1.3
Hình 1.4
Hình 1.5
Hình 1.6
Hình 1.7
Hình 1.8
Hình 2.1
Hình 2.2
Hình 2.3
Hình 2.4
Hình 2.5
Hình 2.6
Hình 2.7
Hình 2.8
Hình 2.9
Hình 2.10
Hình 2.11
Hình 3.1
Hình 3.2
Hình 3.3
Hình 3.4
Hình 3.5
Hình 3.6
Hình 3.7

Hình 3.8
Hình 3.9
Hình 3.10
Hình 3.11
Hình 3.12
Hình 3.13
Hình 3.14
Hình 3.15

Trạm quản lý mạng (Network management station)
Giám sát lưu lượng của một router
Hình minh họa quá trình lấy SysName
Minh họa MIB tree
Hình minh họa các phương thức của SNMPv1
Cấu trúc bản tin SNMP
Kiến trúc của Cacti
Hoạt động của Cacti
Biểu đồ trong Cacti
Weather map trong Cacti
Giám sát trạng thái thiết bị trong Cacti
Kiến trúc của OpManager
Giám sát cổng của Router
Xây dựng quy trình IT
Trung tâm dữ liệu 3D
Kiến trúc của Whatsup Gold
Màn hình điều khiển của Whatsup Gold
Mô hình mạng tại tòa nhà VPI
Giao diện đăng nhập login
Giao diện chính của Cacti
Giao diện thiết lập thiết bị mới

Lựa chọn kiểu dữ liệu để giám sát
Tạo biểu đồ cho thiết bị
Biểu đồ và cây biểu đồ
Tạo ngưỡng cảnh báo
Theo dõi tình trạng tin cảnh báo
Theo dõi tình trạng các thiết bị
Tạo bản đồ trạng thái để theo dõi
Hệ thống đang ở trạng thái bình thường
Cảnh báo bà biểu đồ cảnh báo của WebServer
Biểu đồ và cảnh báo của WebServer khi đang bị tấn công
Sau khi tấn công DdoS vào WebServer

13
14
16
17
23
26
28
29
30
32
33
34
35
38
39
40
42
48

50
50
51
51
52
53
53
54
54
55
56
56
57
58


7


MỞ ĐẦU
Hiện nay, Internet đã trở thành một phần không thể thiếu trong đời sống của con
người. Internet giúp quá trình trao đổi thông tin, truyền thông nhanh chóng. Tuy nhiên,
nguy cơ mất an toàn gián đoạn trong truyền thông gây nên hậu quả to lớn về kinh tế
chính trị. Tháng 06-2007, sự cố gián đoạn an ninh mạng tại Kiên Giang gây thiệt hại
gần 6 triệu USD, ảnh hướng tới thông tin liên lạc các dịch vụ viễn thông tại Việt Nam.
Ngày 17-08-2013, sự cố sập mạng trong 5 phút của Google đã làm tổng lưu lượng truy
cập Internet toàn cầu giảm đến 40%, tuy chỉ xảy ra trong vòng 5 phút, nhưng thiệt hại
của Google lên đến nửa triệu USD (10,5 tỷ đồng). Những vụ tấn công từ chối dịch vụ
cũng là nguyên nhân chính làm sập hệ thống máy chủ, theo báo cáo điều tra của bộ
phận nghiên cứu từ Tổ chức Quốc tế các ủy ban chứng khoán và Liên đoàn Quốc tế các

văn phòng giao dịch chứng khoán công bố vào tháng 7, gần 50% hệ thống giao dịch
chứng khoán ghi nhận các đợt tấn công, hầu hết là tấn công từ chối dịch vụ làm nghẽn
hệ thống với lưu lượng dữ liệu rất lớn. Tại Việt Nam, nhiều sự cố an ninh mạng trong
thời gian vừa qua đã làm thiệt hại rất lớn cho các tổ chức, doanh nghiệp, và mức độ
nghiêm trọng và quy mô của chúng không ngừng tăng lên.
Việc theo dõi, giám sát mạng, đưa ra cảnh báo, phục vụ công tác xử lý sự cố,
đảm bảo tính sẵn sàng của mạng là việc cần thiết, giúp cho quá trình lưu thông tin tức
được liên tục và thông suốt. Góp phần giúp cho các tổ chức giảm được các chi phí khi
có rủi ro xảy ra. Hiện nay hầu hết các tổ chức doanh nghiệp vẫn giám sát hệ thống
mạng theo phương pháp thủ công, không nắm rõ được vấn đề ngay khi sự cố xảy ra .
Việc nghiên cứu một số công cụ giám sát mạng là hết sức cần thiết để tận dụng tối ưu
tài nguyên mạng, cũng như đảm bảo độ tin cậy và tính sẵn sàng của hệ thống mạng.


Xuất phát từ nhu cầu thực tế trên, luận văn đặt vấn đề nghiên cứu về vấn đề
giám sát mạng, phân tích đánh giá một số bộ công cụ giám sát mạng điển hình và xây
dựng thử nghiệm một hệ thống giám sát mạng với bộ công cụ Cacti.
Mục đích nghiên cứu:
Phân tích và đánh giá một số bộ công cụ giám sát mạng điển hình, Trên cơ sở đó
thự hiện xây dựng triển khai và mô phỏng thử nghiệm với một bộ công cụ điển hình là
Cacti.
Đối tượng và phạm vi nghiên cứu:
Đối tượng nghiên cứu: một số hình thức: Công cụ giám sát mạng. Giao thức
SNMP
Phạm vi nghiên cứu: phân tích giao thức SNMP. Khảo sát một số công cụ điển
hình đang có, phân tích, so sánh và đánh giá.
Phương pháp nghiên cứu:
Về mặt lý thuyết: Tìm hiểu, phân tích giao thức SNMP. Tìm hiểu một số bộ
công cụ giám sát mạng.
Về thực tế: Tham khảo ý kiến chuyên gia và thu thập thông tin trên Internet.

Về công cụ sử dụng: Khai thác, sử dụng bộ công cụ Cacti.
Nội dung chính của luận văn được bố cục thành 3 chương như sau:
Chương 1: Tổng quan về vấn đề giám sát mạng
Chương 2: Phân tích đánh giá một số bộ công cụ giám sát mạng điển hình
Chương 3: Xây dựng hệ thống giám sát mạng với bộ công cụ Cacti


Chương 1 – TỔNG QUAN VỀ VẤN ĐỀ GIÁM SÁT MẠNG
1.1.

Giám sát mạng và nhu cầu giám sát mạng
Hệ giám sát (Network Monitoring System) là sử dụng một hệ thống theo dõi

thường xuyên một mạng máy tính về trạng thái của các thành phần trong mạng và
thông báo cho người quản lý trong trường hợp có sự cố hoặc cảnh báo sự cố.[6]
Giám sát mạng cho mạng của một doanh nghiệp là một chức năng quan trọng, nó
có thể tiết kiệm chi phí thông qua việc làm tăng hiệu quả của mạng lưới, năng suất
nhân viên và cơ sở hạ tầng. Một hệ giám sát mạng có thể giám sát nhiều vấn đề. Có thể
giám sát và giải quyết các sự cố của hệ thống, hoạt động truyền tải dữ liệu của người
dùng, nguyên nhân do quá tải, nguyên nhân sập mạng, kết nối mạng bị trễ hoặc quản lý
các thiết bị.[3]
Giám sát mạng có thể đạt được bằng cách sử dụng công cụ khác nhau hoặc kết hợp
giữa thiết bị phần cứng và giải pháp phần mềm. Hầu hết bất kì loại mạng nào cũng có
thể được giám sát. Không quan trọng là kết nối dây hay không dây, một mạng Lan
doanh nghiệp, VPN hoặc dịch vụ cung cấp WAN. Người quản lý có thể giám sát trên
các hệ điều hành khác nhau với vô số chức năng, từ hệ điều hành của điện thoại thông
minh, tới các máy chủ, bộ định tuyến và thiết bị chuyển mạch. Hệ giám sát có thể giúp
người quản lý xác định các hoạt động cụ thể và số liệu hiệu suất, đưa ra kết quả cho
phép doanh nghiệp giải quyết các yêu cầu khác nhau, đưa ra các mối đe dọa an ninh
nội bộ và cung cấp nhiều hiển thị hoạt động hơn. Việc quyết định dùng công cụ nào để

giám sát mạng rất quan trọng. Người quản lý phải nắm rõ cấu trúc sơ đồ mạng của
công ty, đó là sơ đồ chính xác để có thể thiết lập cấu hình giám sát, giúp nhanh chóng
giải quyết khi có sự cố phát sinh.


Nhiều nhà quản lý cho rằng, nếu hệ thống cứ thế chạy và không thay đổi các thông
số đã cấu hình, tại sao lại phải quan tâm đến việc phải giám sát mạng. Lý do để khẳng
định việc giám sát mạng là nhằm duy trì độ tin cậy và tính sẵn sàng của mạng lưới,
tăng hiệu suất của mạng lưới.

Mục tiêu của việc giám sát mạng

1.2.

Hệ giám sát mạng thường để kiểm tra băng thông sử dụng, kiểm tra hiệu suất của
thiết bị, trạng thái của chúng. Hệ giám sát sẽ giúp định hướng trong môi trường phức
tạp, đưa ra các báo cáo, người quản lý có thể sử dụng các báo cáo này để:






Xác nhận việc tuân thủ quy định và chính sách
Tiết kiệm chi phí tiềm lực bằng cách tìm nguồn dữ liệu dư thừa
Xác định liên kết mạng diện rộng yếu và thắt cổ chai
Xác định đọ trễ mạng hoặc việc chuyển tải dữ liệu bị trễ
Xác định sự bất thường trong mạng nội bộ.

Mỗi báo cáo của hệ giám sát có thể giúp nhà quản lý trả lời những câu hỏi khó

khăn như:


Giúp nhà thiết kế làm đơn giản hóa và đồng nhất hệ thống với chi phí thấp, giúp







đưa ra quyết định thay thế các phân đoạn mạng với chi phí chấp nhận được.
Hệ điều hành và các ứng dụng chạy trên server có cần thiết hay không?
Mỗi máy trạm do ai sử dụng và lưu lượng băng thông của chúng?
Làm thế nào để tăng hiệu suất của máy chủ?
Thành phần nào trong mạng có dấu hiệu lỗi hoặc đang bị lỗi?
Hệ thống có đang tận dụng triệt để tài nguyên?

Giám sát mạng cẩn thận cho phép nhà quản lý tất cả các thông tin họ cần để chứng
minh việc nâng cấp mạng và mở rộng mạng là cần thiết để hỗ trợ doanh nghiệp thành
công trong tương lai. Hệ giám sát mạng làm việc hiệu quả sẽ thông báo cho nhà quản
lý biết thiết bị, dịch vụ hoặc ứng dụng được phép đang hoạt động ở mức độ nào.
1.3.

Các phương thức giám sát mạng


Như đã nói ở trên mục tiêu của giám sát mạng là kiểm tra và giám sát hiệu năng
thực tế của hệ thống. Giám sát mạng có hai phương thức chính, các công cụ và giao
thức giám sát đều được xây dựng trên hai phương thức này. Đó là Poll và Alert, việc

hiểu rõ hoạt động của Poll & Alert và ưu nhược điểm của chúng sẽ giúp ta dễ dàng tìm
hiểu nguyên tắc hoạt động của các giap thức hay công cụ giám sát khác.
1.3.1. Phương thức Poll

Nguyên tắc hoạt động: Máy chủ giám sát sẽ thường xuyên hỏi thông tin của
thiết bị cần giám sát. Nếu máy chủ giám sát không hỏi thì thiết bị không trả lời, nếu
máy chủ giám sát hỏi thì thiết bị phải trả lời. Bằng cách hỏi thường xuyên, máy chủ
giám sát sẽ luôn cập nhất được thông tin mới nhất từ thiết bị.[1]

Hình 1.1. Hình minh họa cơ chế Poll [1]

Việc thu thập thông tin có thể được thực hiện bởi việc gửi các bản tin thăm dò
định kỳ. tuy nhiên do dữ liệu giám sát có thể có giá trị trung bình trong khoảng thời
gian dài và không thể hiện được sự thay đổi trong hệ thống nên các chu kỳ giám sát
ngắn thường được dùng nhiều hơn vì các phép đo đem lại kết quả tốt hơn mặc dù việc
gửi các bản tin theo chu kỳ ngắn có thể sẽ làm tăng lưu lượng trên mạng.
1.3.2. Phương thức Alert


Nguyên tắc hoạt động: mỗi khi trong thiết bị xảy ra một sự kiện nào đó thì thiết
bị sẽ tự động gửi thông báo cho máy chủ giám sát, các tin này gọi là Alert. Máy chủ
giám sát không hỏi thông tin định kỳ từ thiết bị.[1]

Hình 1.2 Hình minh họa cơ chế Alert [1]

Device chỉ gửi những thông báo mang tính sự kiện chứ không gửi những thông
tin thường xuyên thay đổi, nó cũng sẽ không gửi Alert nếu chẳng có sự kiện nào xày ra.
Chẳng hạn, nếu một cổng down hoặc up thì Device sẽ gửi thông báo, còn tổng số byte
được truyền qua port đó sẽ không được Device gửi đi vì đó là thông tin thường xuyên
thay đổi. Muốn lấy những thông tin thường xuyên thay đổi thì Manager phải chủ động

gửi tin hỏi Device, tức là phải sử dụng phương thức Poll.
1.3.3. So sánh hai phương thức Poll và Alert

Hai phương thức Poll và Alert là hoàn toàn khác nhau về cơ chế. Một ứng dụng
giám sát có thể sử dụng Poll hoặc Alert hoặc cả hai, tùy vào yêu cầu cụ thể trong thực
tế.
Ta sẽ so sánh sự khác nhau giữa hai phương thức theo bảng sau:
POLL

ALERT

Có thể chủ động lấy những thông tin Tất cả những event xảy ra đều


POLL

ALERT

cần thiết từ các đối tượng mình quan được gửi về Manager phải có cơ
tâm, không cần lấy những thông tin chế lọc những event cần thiết,
không cần thiết từ những nguồn hoặc Device phải thiết lập được
không quan tâm.

cơ chế chỉ gửi những event cần
thiết lập

Có thể lập bảng trạng thái tất cả các Nếu không có event gì xảy ra thì
thông tin của Device sau khi poll qua Manager không biết được trạng
một lượt các thông tin đó. VD: thái của Device. VD: Device có
Device có một port down, Manager sẽ một port down và Manager được

biết được port đang down sau khi poll khởi động sau đó, thì Manager sẽ
qua một lượt tất cả các port.

không thể biết được port đang
down.

Trong trường hợp đường truyền giữa Khi đường truyền gián đoạn và
Manager và Device xảy ra gián đoạn Device có sự thay đổi thì nó vẫn
và Device có sự thay đổi, thì Manager gửi Alert cho Manager, nhưng
sẽ không thể cập nhật. Tuy nhiên khi Alert này sẽ không thể đến được
đường truyền thông suốt trở lại thì Manager. Sau đó mặc dù đường
Manager sẽ cập nhật được thông tin truyền có thông suốt trở lại thì
mới nhất do nó luôn luôn poll định Manager vẫn không thể biết được
kỳ.

những gì đã xảy ra.

Chỉ cần cài đặt Manager để trỏ đến tất Phải cài đặt tại từng Device để
cả các Device. Có thể dễ dàng thay trỏ đến Manager. Khi thay đổi
đổi một Manager khác.

Manager thì phải cài đặt lại trên
tất cả Device để trỏ về Manager
mới.


POLL

ALERT


Nếu tần suất poll thấp, thời gian chờ Ngay khi có sự kiện xảy ra thì
giữa 2 chu kì poll dài sẽ làm Manager Device sẽ gửi Alert đến Manager,
chậm cập nhật các thay đổi của do đó Manager
Device. Nghĩa là nếu thông tin
Device đã thay đổi nhưng vẫn chưa
đến lượt poll kế tiếp thì Manager vẫn
chưa đến lượt poll kế tiếp thì
Manager vẫn giữ thông tin cũ.
Có thể bỏ sót các sự kiện: khi Device Manager sẽ được thông báo mỗi
có thay đổi, sau đó thay đổi trở lại khi có sự kiện xảy ra ở Device,
như ban đầu trước khi đến poll kế tiếp do đó Manager không bỏ sót bất
thì Manager sẽ không phát hiện được. kỳ sự kiện nào.
Nếu chu kỳ Poll ngắn sẽ gây tốn băng Không có chu kỳ gửi tin nên
thông, nếu chu kỳ dài thì thông tin không tốn nhiều băng thông như
giám sát sẽ không chính xác.

1.4.

cơ chế Poll.

Cơ chế giám sát mạng
Cơ chế giám sát mạng bao gồm cả các giao thức giám sát, quản lý mạng, các

giao thức giám sát mạng cung cấp các cơ chế thu thập, thay đổi và truyền các dữ liệu
quản lý mạng qua mạng.
Các cơ chế giám sát nhằm để xác định các đặc tính của thiết bị mạng, tiến trình
giám sát bao gồm thu thập và lưu trữ các tập tin dữ liệu đó. Dữ liệu thường được thu


thập qua phương thức Poll hoặc tiến trình giám sát gồm các giao thức quản lý, giám sát

mạng.
Sau quá trình thu thập thông tin giám sát, hệ thống sẽ loại bỏ bớt các thông tin
dữ liệu không cần thiết đối với từng nhiệm vụ quản lý. Sự thể hiện các thông tin quản
lý cho phép người quản lý nắm bắt hiệu quả nhất các tính năng và đặc tính mạng cần
quản lý. Một số kĩ thuật biểu diễn dữ liệu thường được thể hiện dưới dạng ký tự, đồ thị
hoặc lưu đồ (tĩnh hoặc động).
Tại thời điểm xử lý thông tin dữ liệu, rất nhiều các thông tin chưa kịp xử lý
được lưu trữ tại các vùng nhớ lưu trữ khác nhau. Các cơ chế dự phòng và cập nhật lưu
trữ luôn được xác định trước trong các cơ chế giám sát mạng nhằm tránh tối đa tổn thất
dữ liệu.
Các phân tích dữ liệu theo thời gian thực luôn yêu cầu thời gian gửi các bản tin
Poll theo chu kỳ ngắn. Đây là sự đánh đổi giữa các thông tin chính xác và lưu lượng,
tài nguyên mạng (hiệu năng của máy chủ giám sát, băng thông mạng) cần thiết để hỗ
trợ phân tích dữ liệu giám sát.
Khi cấu hình một hệ giám sát chính là cài đặt các tham số trong một thiết bị
mạng để theo dõi và giám sát các phần tử. Các cơ chế được cấu hình bao gồm truy
nhập trực tiếp tới các thiết bị, truy nhập từ xa và lấy các tập tin cấu hình từ các thiết bị
đó. Dữ liệu cấu hình được thông qua các cách sau:
-

Các câu lệnh SET của giao thức SNMP
Truy nhập qua telnet và giao diện dòng lệnh
Truy nhập qua HTTP
Truy nhập qua kiến trúc CORBA
Sử dụng FTP/TFTP để lấy file cấu hình

1.5.
Giao thức giám sát mạng SNMP
1.5.1. Tổng quan



SNMP là “giao thức quản lý mạng đơn giản”, dịch từ cụm từ “Simple Network
Management Protocol”.[1]
Giao thức là một tập hợp các thủ tục mà các bên tham gia cần tuân theo để có thể
giao tiếp được với nhau. Trong lĩnh vực thông tin, một giao thức quy định cấu trúc,
định dạng (format) của dòng dữ liệu trao đổi với nhau và quy định trình tự, thủ tục để
trao đổi dòng dữ liệu đó. Nếu một bên tham gia gửi dữ liệu không đúng định dạng
hoặc không theo trình tự thì các bên khác sẽ không hiểu hoặc từ chối trao đổi thông
tin. SNMP là một giao thức, do đó nó có những quy định riêng mà các thành phần
trong mạng phải tuân theo.[2]
Một thiết bị hiểu được và hoạt động tuân theo giao thức SNMP được gọi là
“có hỗ trợ SNMP”(SNMP supported) hoặc “tương thích SNMP” (SNMP compartible).
SNMP dùng để quản lý, nghĩa là có thể theo dõi, có thể lấy thông tin, có thể
được thông báo, và có thể tác động để hệ thống hoạt động như ý muốn. VD một số khả
năng của phần mềm SNMP:
o

Theo dõi tốc độ đường truyền của một router, biết được tổng số byte
đã truyền/nhận.

o

Lấy thông tin máy chủ đang có bao nhiêu ổ cứng, mỗi ổ cứng còn
trống bao nhiêu.

o

Tự động nhận cảnh báo khi switch có một port bị down.

o


Điều khiển tắt (shutdown) các port trên switch.

SNMP dùng để quản lý mạng, nghĩa là nó được thiết kế để chạy trên nền
TCP/IP và quản lý các thiết bị có nối mạng TCP/IP. Các thiết bị mạng không nhất
thiết phải là máy tính mà có thể là switch, router, firewall, adsl gateway, và cả một
số phần mềm cho phép quản trị bằng SNMP. Giả sử có một cái máy giặt có thể nối
mạng IP và nó hỗ trợ SNMP thì có thể quản lý nó từ xa bằng SNMP.


SNMP là giao thức đơn giản, do nó được thiết kế đơn giản trong cấu trúc bản
tin và thủ tục hoạt động, và còn đơn giản trong bảo mật (ngoại trừ SNMP version 3).
Sử dụng phần mềm SNMP, người quản trị mạng có thể quản lý, giám sát tập trung từ
xa toàn mạng của mình.
1.5.1.1.

Ưu điểm trong thiết kế SNMP

SNMP được thiết kế để đơn giản hóa quá trình quản lý các thành phần trong
mạng. Nhờ đó các phần mềm SNMP có thể được phát triển nhanh và tốn ít chi phí.
SNMP được thiết kế để có thể mở rộng các chức năng quản lý, giám sát. Không
có giới hạn rằng SNMP có thể quản lý được cái gì. Khi có một thiết bị mới với các
thuộc tính, tính năng mới thì người ta có thể thiết kế “custom” SNMP để phục vụ cho
riêng mình.
SNMP được thiết kế để có thể hoạt động độc lập với các kiến trúc và cơ chế của
các thiết bị hỗ trợ SNMP. Các thiết bị khác nhau có hoạt động khác nhau nhưng đáp
ứng SNMP là giống nhau. VD bạn có thể dùng 1 phần mềm để theo dõi dung lượng ổ
cứng còn trống của các máy chủ chạy HĐH Windows và Linux; trong khi nếu không
dùng SNMP mà làm trực tiếp trên các HĐH này thì bạn phải thực hiện theo các
cách khác nhau.


1.5.1.2.

Các phiên bản của SNMP

SNMP có 4 phiên bản: SNMPv1, SNMPv2c, SNMPv2u và SNMPv3. Các phiên
bản này khác nhau một chút ở định dạng bản tin và phương thức hoạt động. Hiện tại
SNMPv1 là phổ biến nhất do có nhiều thiết bị tương thích nhất và có nhiều phần mềm
hỗ trợ nhất. Trong khi đó chỉ có một số thiết bị và phần mềm hỗ trợ SNMPv3.
-

SNMP version 1: chuẩn của giao thức SNMP được định nghĩa trong RFC 1157 và là
một chuẩn đầy đủ của IETF. Vấn đề bảo mật của SNMPv1 dựa trên nguyên tắc cộng


đồng, không có nhiều password, chuỗi văn bản thuần và cho phép bất kỳ một ứng dụng
nào đó dựa trên SNMP có thể hiểu các chuỗi này để có thể truy cập vào các thiết bị
quản lý. Có 3 tiêu chuẩn trong: read-only, read-write và trap.
-

SNMP version 2: phiên bản này dựa trên các chuỗi “community”. Do đó phiên bản này
được gọi là SNMPv2c, được định nghĩa trong RFC 1905, 1906, 1907 và đây chỉ là bản
thử nghiệm của IETF. Mặc dù chỉ là thử nghiệm nhưng nhiều nhà sản xuất đã đưa nó
vào thực nghiệm.

-

SNMP version 3: là phiên bản tiếp theo được IETF đưa ra bản đầy đủ (phiên bản gần
đây của SNMP), đóng vai trò an ninh cao trong quản trị mạng và đóng vai trò mạnh
trong vấn đề thẩm quyền, quản lý kênh truyền riêng giữa các thực thể. Nó được khuyến

nghị làm bản chuẩn, được định nghĩa trong RFC 1905, RFC 1906, RFC 1907, RFC
2271 RFC 2571, RFC 2572, RFC 2573, RFC 2574 và RFC 2575. Nó hỗ trợ các loại
truyền thông riêng tư và có xác nhận giữa các thực thể.
1.5.2. Kiến trúc của SNMP
1.5.2.1.
Các thành phần trong SNMP

Kiến trúc của SNMP bao gồm 2 thành phần: các trạm quản lý mạng và các
phần tử mạng .[4]
Trạm quản lý mạng thường là một máy tính chạy phần mềm quản lý SNMP
dùng để giám sát và điều khiển tập trung các phần tử mạng.[4]

Hình 1.3 Trạm quản lý mạng [4]

,


Phần tử mạng là các thiết bị, máy tính, hoặc phần mềm tương thích SNMP
và được quản lý bởi trạm quản lý mạng. Như vậy phẩn tử bao gồm thiết bị, máy trạm
và ứng dụng.
Một trạm quản lý có thể quản lý nhiều phần tử, một phần tử cũng có thể được
quản lý bởi nhiều trạm. Vậy nếu một phần tử được quản lý bởi 2 trạm thì điều gì sẽ
xảy ra? Nếu trạm lấy thông tin từ phần tử thì cả 2 trạm sẽ có thông tin giống nhau.
Nếu 2 trạm tác động đến cùng một phần tử thì phần tử sẽ đáp ứng cả 2 tác động theo
thứ tự cái nào đến trước.
Ngoài ra còn có khái niệm SNMP agent. SNMP agent là một tiến trình chạy
trên phần từ mạng, có nhiệm vụ cung cấp thông tin của phần tử cho trạm, nhờ đó
trạm có thể quản lý được phần tử [2]. Chính xác hơn là ứng dụng chạy trên trạm và
agent chạy trên phần tử mới là 2 tiến trình SNMP trực tiếp liên hệ với nhau. Các ví dụ
minh họa sau đây sẽ làm rõ hơn các khái niệm này:

-

Để dùng một máy chủ quản lý các máy con chạy HĐH Windows thông qua
SNMP thì phải: cài đặt một phần mềm quản lý SNMP trên máy chủ, bật dịch
vụ SNMP trên máy con.
Để dùng một máy chủ giám sát lưu lượng của một router thì phải: cài phần
mềm quản lý SNMP trên máy chủ, bật tính năng SNMP trên router.

Hình 1.4 Giám sát lưu lượng của một router [1]
1.5.2.2.

Object ID

Một thiết bị hỗ trợ SNMP có thể cung cấp nhiều thông tin khác nhau, mỗi thông
tin đó gọi là một object. Ví dụ:


- Máy tính có thể cung cấp các thông tin: tổng số ổ cứng, tổng số port nối mạng,
tổng số byte đã truyền/nhận, tên máy tính, tên các tiến trình đang chạy, ….
- Router có thể cung cấp các thông tin: tổng số card, tổng số port, tổng số byte đã
truyền/nhận, tên router, tình trạng các port của router, ….
Mỗi object có một tên gọi và
một mã số để nhận dạng object đó, mã số gọi là Object ID (OID). VD:
- Tên thiết bị được gọi là sysName, OID là 1.3.6.1.2.1.1.5.[5]
- Tổng số port giao tiếp (interface) được gọi là ifNumber, OID là 1.3.6.1.2.1.2.1.
- Địa chỉ Mac Address của một port được gọi là ifPhysAddress, OID là
1.3.6.1.2.1.2.2.1.6.
- Số byte đã nhận trên một port được gọi là ifInOctets, OID là 1.3.6.1.2.1.2.2.1.10.
Từng chữ số trong OID sẽ được giải thích trong phần sau. Một object chỉ có một
OID, chẳng hạn tên của thiết bị là một object. Tuy nhiên nếu một thiết bị lại có

nhiều tên thì làm thế nào để phân biệt? Lúc này người ta dùng thêm 1 chỉ số gọi là
“scalar instance index”

(cũng có thể gọi là “sub-id”) đặt ngay sau OID. Ví dụ:

- Tên thiết bị được gọi là sysName, OID là 1.3.6.1.2.1.1.5; nếu thiết bị có 2 tên thì
chúng sẽ được gọi là sysName.0 & sysName.1 và có OID lần lượt là 1.3.6.1.2.1.1.5.0
& 1.3.6.1.2.1.1.5.1.
- Địa chỉ Mac address được gọi là ifPhysAddress, OID là 1.3.6.1.2.1.2.2.1.6; nếu
thiết bị có 2 mac address

thì

chúng

ifPhysAddress.1 và có OID lần lượt là

sẽ

được gọi là ifPhysAddress.0 &

1.3.6.1.2.1.2.2.1.6.0 & 1.3.6.1.2.1.2.2.1.6.1.


- Tổng số port được gọi là ifNumber, giá trị này chỉ có 1 (duy nhất) nên OID của
nó không có phân cấp con và vẫn là 1.3.6.1.2.1.2.1.
Ở hầu hết các thiết bị, các object có thể có nhiều giá trị thì thường được viết
dưới dạng có sub-id. VD một thiết bị dù chỉ có 1 tên thì nó vẫn phải có OID là
sysName.0 hay 1.3.6.1.2.1.1.5.0. Cần nhớ quy tắc này để ứng dụng trong lập trình
phần mềm SNMP manager.

Sub-id không nhất thiết phải liên tục hay bắt đầu từ 0. VD một thiết bị có 2 mac
address thì có thể chúng được gọi là ifPhysAddress.23 và ifPhysAddress.125645.
OID của các object phổ biến có thể được chuẩn hóa, OID của các object do bạn
tạo ra thì bạn phải tự mô tả chúng. Để lấy một thông tin có OID đã chuẩn hóa thì
SNMP application phải gửi một bản tin SNMP có chứa OID của object đó cho SNMP
agent, SNMP agent khi nhận được thì nó phải trả lời bằng thông tin ứng với OID đó.
VD: Muốn lấy tên của một PC chạy Windows, tên của một PC chạy Linux hoặc
tên của một router thì ứng dụng SNMP chỉ cần gửi bản tin có chứa OID là
1.3.6.1.2.1.1.5.0. Khi SNMP agent chạy trên PC Windows, PC Linux hay router
nhận được bản tin có chứa OID 1.3.6.1.2.1.1.5.0, agent lập tức hiểu rằng đây là bản tin
hỏi sysName.0, và agent sẽ trả lời bằng tên của hệ thống. Nếu SNMP agent nhận
được một OID mà nó không hiểu (không hỗ trợ) thì nó sẽ không trả lời.


Hình 1.5 Hình minh họa quá trình lấy SysName [5]

Một trong các ưu điểm của SNMP là nó được thiết kế để chạy độc lập với các
thiết bị khác nhau. Chính nhờ việc chuẩn hóa OID mà ta có thể dùng một SNMP
application để lấy thông tin các loại device của các hãng khác nhau.
1.5.2.3.

Object Access
Mỗi object có quyền truy cập là READ_ONLY hoặc READ_WRITE. Mọi

object đều có thể đọc được nhưng

chỉ những object có quyền READ_WRITE mới

có thể thay đổi được giá trị. VD: Tên của một thiết bị


(sysName) là

READ_WRITE, ta có thể thay đổi tên của thiết bị thông qua giao thức SNMP. Tổng
số port của thiết bị (ifNumber) là READ_ONLY, dĩ nhiên ta không thể thay đổi số port
của nó.
1.5.2.4.

Cơ sở thông tin quản lý (MIB)


MIB (Management Information Base) là một cấu trúc dữ liệu gồm các đối tượng
được quản lý (managed object), được dùng cho việc quản lý các thiết bị chạy trên nền
TCP/IP. MIB là kiến trúc chung mà các giao thức quản lý trên TCP/IP nên tuân theo,
trong đó có SNMP. MIB được thể hiện thành 1 file (MIB file), và có thể biểu diễn
thành 1 cây (MIB tree). MIB có thể được chuẩn hóa hoặc tự tạo.

Hình 1.6 Minh họa MIB tree [4]

Một node trong cây là một object, có thể được gọi bằng tên hoặc id.


Ví dụ: Node iso.org.dod.internet.mgmt.mib-2.system có OID là 1.3.6.1.2.1.1,
chứa tất cả các object lien quan đến thông tin của một hệ thống như tên của thiết bị
(iso.org.dod.internet.mgmt.mib-2.system.sysNam hay .3.6.1.2.1.1.5).
Các OID của các hãng tự thiết kế nằm dưới i so.org.dod.internet.private.
enterprise.
Ví dụ: Cisco nằm dưới iso.org.dod.internet.private.enterprise.cisco hay
1.3.6.1.4.1.9, Microsoft nằm dưới iso.org.dod.internet.private.enterprise.microsoft hay
1.3.6.1.4.1.311. Số 9 (Cisco) hay 311 (Microsoft) là số dành riêng cho các công ty do
IANA cấp. Nếu Cisco hay Microsoft chế tạo ra một thiết bị nào đó, thì thiết bị này có

thể hỗ trợ các MIB chuẩn đã được định nghĩa sẵn (như mib-2) hay hỗ trợ MIB được
thiết kế riêng. Các MIB được công ty nào thiết kế riêng thì phải nằm bên dưới OID
của công ty đó.
Các objectID trong MIB được sắp xếp thứ tự nhưng không phải là liên tục,
khi biết một OID thì không chắc chắn có thể xác định được OID tiếp theo trong
MIB. VD trong chuẩn mib-2 (

MIB-2 được mô tả trong “RFC1213 - Management

Information Base for Network Management of TCP/IP-based internets: MIB-II”)
object ifSpecific

thì

và object atIfIndex nằm kề nhau nhưng OID lần lượt là

1.3.6.1.2.1.2.2.1.22 và 1.3.6.1.2.1.3.1.1.1.
Muốn hiểu được một OID nào đó thì bạn cần có file MIB mô tả OID đó. Một
MIB file không nhất thiết phải chứa toàn bộ cây ở trên mà có thể chỉ chứa mô tả cho
một nhánh con. Bất cứ nhánh con nào và tất cả lá của nó đều có thể gọi là một mib.
Một manager có thể quản lý được một device chỉ khi ứng dụng SNMP manager
và ứng dụng SNMP agent cùng hỗ trợ một MIB. Các ứng dụng này cũng có thể hỗ trợ
cùng lúc nhiều MIB.


×