Song song với việc thuận tiện trong chia sẻ thông tin cũng làcác nguy cơ trong mạng máy tính : người dùng bên trong không được phép, hayngười dùng bên ngoài có thể truy cập, lấy đi các t
Trang 1TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN
THÔNG
NGUYỄN MINH HIẾU
PHÁT TRIỂN, MỞ RỘNG HỆ THỐNG QUẢN TRỊ MẠNG DỰA TRÊN MÃ NGUỒN MỞ VỚI KIẾN
TRÚC PLUGIN
Chuyên ngành: Khoa học máy tính
Mã số: 60 48 01
TÓM TẮT LUẬN VĂN THẠC SĨKHOA HỌC MÁY TÍNH
Thái Nguyên: 2013
Trang 2Tôi xin cam đoan, toàn bộ nội dung liên quan tới đề tài được trình bày trongluận văn là bản thân tôi tự tìm hiểu và nghiên cứu, dưới sự hướng dẫn khoa học củathầy giáo PGS TS Nguyễn Văn Tam.
Các tài liệu, số liệu tham khảo được trích dẫn đầy đủ nguồn gốc Tôi xin chịutrách nhiệm trước pháp luật lời cam đoan của mình
Thái Nguyên, ngày 13 tháng 4 năm 2014
Học viên thực hiện
Nguyễn Minh Hiếu
Trang 3LỜI CẢM ƠN
Tôi xin gửi lời cảm ơn tới trường ĐH Công nghệ thông tin và truyền thông –
ĐH Thái Nguyên, nơi các thầy cô đó tận tình truyền đạt các kiến thức quý báu chotôi trong suốt quá trình học tập Xin cảm ơn Ban chủ nhiệm khoa và các cán bộ đãtạo điều kiện tốt nhất cho chúng tôi học tập và hoàn thành đề tài tốt nghiệpcủa
mình
Đặc biệt, tôi xin gửi tới PGS TS Nguyễn Văn Tam, người đó tận tình chỉbảo tôi trong suốt quá trình thực hiện đề tài, lời cảm ơn và biết ơn sâu sắc nhất.Bên cạnh những kiến thức khoa học, thầy đó giúp tôi nhận ra những bài học vềcách học tập, làm việc và những kinh nghiệm quý báu
Tôi xin bày tỏ lòng biết ơn tới gia đình, bạn bè, đồng nghiệp và những ngườithân đó động viên khích lệ tinh thần và giúp đỡ để tôi hoàn thành luận văn này
Trang 4MỤC LỤC
LỜI CAM ĐOAN .i
LỜI CẢM ƠN iv
DANH MỤC CÁC KÝ HIỆU, CÁC CHỮ VIẾT TẮT iv Chương I : Kiến trúc quản trị mạng SNMP 1
1.1 Kiến trúc quản trị mạng 1
1.1.1 Quản trị mạng cơ bản 1
1.1.2 Kiến trúc quản trị mạng 2
1.1.3 Quản trị mạng tiêu chuẩn ISO 3
1.2 Kiến trúc SNMP 5
1.2.1 Giao thức SNMP 5
1.2.2 Các phiên bản của SNMP 6
1.2.3 Các thành phần của SNMP 6
1.2.4 Phương thức hoạt động của SNMP 8
1.3 Một số hệ thống quản trị mạng với SNMP 16
1.3.1 Quản trị mạng với SNMP trong hệ điều hành Microsoft, Linux 16
1.3.2 Quản trị mạng với SNMP trên môi trường Java 19
1.3.3 Cơ chế quản lý mạng tập trung theo mô hình DEN 21
1.4 Kết luận chương 23
Chương II : Kiến trúc Plugin trong hệ quản trị mạng Cacti 24
2.1 Kiến trúc của hệ quản trị mạng Cacti 24
2.1.1 Giới thiệu về hệ quản trị mạng Cacti 24
Trang 52.1.3 Hoạt động của Cacti 28
2.2 Kiến trúc Cacti Plugin 32
2.2.1 Tổng quan Plugin 33
2.2.2 Plugin Architecture trong hệ quản trị Cacti 36
2.2.3 Cacti Plugin 39
2.2.4 Khởi tạo Plugin 42
2.2.5 Một số Cacti Plugin thông dụng 45
2.3 Kết luận chương 47
Chương III : Triển khai hệ quản trị Cacti với kiến trúc Plugin trong thực tế 48
3.1 Các vấn đề về hệ thống mạng hiện tại 48
3.1.1 Tình hình hiện tại 48
3.1.2 Mô hình mạng hiện tại 48
3.1.3 Tình hình quản lý, giám sát hệ thống mạng 49
3.1.4 Nhu cầu và giải pháp 52
3.2 Thiết kế hệ thống quản trị mạng 53
3.2.1 Quy trình thực hiện của hệ thống 53
3.2.2 Sơ đồ chức năng của hệ thống 53
3.2.3 Giao diện web quản trị 54
3.2.4 Module quản lý thông tin trên thiết bị 55
3.2.5 Tiến hành ứng dụng và cài đặt 56
3.3 Kết quả và hướng phát triển 61
3.3.1 Kết quả 61
3.3.2 Hướng phát triển trong tương lai 64
3.4 Kết luận chương 65
KẾT LUẬN 66
Trang 7Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên ht t p : / / w w w.lr c -tnu e d u.vn/
DANH MỤC CÁC KÝ HIỆU, CÁC CHỮ VIẾT TẮTMIB Management Information Base
SNMP Simple Network Management Protocol
ISO International Organization for Standardization
IETF Internet Engineering Task Force
NMS Network Manager Stations
RRD Round Robin Database RRA
Round Robin Archives
Trang 81 Lý do chọn đề tài
Máy tính ra đời đánh dấu một bước lớn trong kỷ nguyên thông tin Với máytính các công việc lưu trữ, xử lý, trao đổi thông tin trở nên tiện dụng và đơn giảnhơn rất nhiều Ta có thể thấy máy tính xuất hiện ở hầu hết các lĩnh vực trongcuộc sống : văn hóa, y tế, tài chính, thể thao, giải trí Mỗi máy tính có khả nănglưu trữ, xử lý khác nhau với nhiều thông tin khác nhau và khi hai hay nhiều máytính kết nối lại theo một tiêu chuẩn nào đó cho ta một mạng máy tính để chia sẻ,trao đổi thông tin một cách tiện lợi Internet, được sử dụng hàng ngày, và bất kỳ
ai sử dụng nó đều thấy được tác dụng to lớn như thế nào, chính là mạng của cácmạng, là một hệ thống thông tin toàn cầu có thể truy cập bằng máy tính Hệthống này truyền thông tin theo phương pháp chuyển mạch gói ( packetswitching) dựa theo giao thức liên kết đã được chuẩn hóa (IP protocol) Hệthống này bao gồm hàng ngàn các mạng máy tính nhỏ hơn của người dùng cánhân, các doanh nghiệp, các trường đại học, các tổ chức và chính phủ các nướctrên toàn thế giới Song song với việc thuận tiện trong chia sẻ thông tin cũng làcác nguy cơ trong mạng máy tính : người dùng bên trong không được phép, hayngười dùng bên ngoài có thể truy cập, lấy đi các thông tin quan trọng haychỉnh sửa xóa bỏ những thông tin như thế, hay những nguy cơ về tấn côngmạng với các hình thức tấn công khác nhau gây ra gián đoạn trong việc trao đổithông tin, quá tải cho hệ thống máy chủ, từ chối truy cập Có nhiều phươngpháp để ngăn chặn, giảm thiểu các nguy cơ ấy và sử dụng một hệ thống quản trịmạng tốt với yếu tố bảo mật cao là một phương pháp tốt được khuyên dùng
Hệ quản trị Cacti là một hệ quản trị mã nguồn mở đang được chú ý và rấtmạnh trong việc giám sát các tài nguyên mạng, đảm bảo việc sử dụng tài nguyên,
Trang 9Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên ht t p : / / w w w.lr c -tnu e d u.vn/
khai thác có hiệu quả cho tất cả người sử dụng, đảm bảo an toàn, tin cậy thôngtin Cacti có rất nhiều ứng dụng và vẫn đang tiếp tục phát triển như các hệthống mã nguồn mở khác Đề tài tập trung nghiên cứu,
Trang 10tìm hiểu và xây dựng một phần mở rộng trong Cacti (PLUGIN) hay có thể nói là:
“Phát triển, mở rộng Hệ thống quản trị mạng dựa trên mã nguồn mở với kiếntrúc PLUGIN”
2 Đối tượng và phạm vi nghiên cứu
- Tổng quan về mạng, hệ thống quản trị mạng
- Hệ thống quản trị mạng thử nghiệm với mã nguồn mở, thử nghiệm triển khai, mở rộng hệ thống với kiến trúc PLUGIN
3 Hướng nghiên cứu của đề tài
- Làm rõ về mạng máy tính, hệ thống quản trị mạng, kiến trúc PLUGIN
- Nghiên cứu các vấn đề liên quan để triển khai
4 Những nội dung nghiên cứu chính
Chương I : Kiến trúc quản trị mạng SNMP1.1 Kiến trúc quản trị mạng
1.1.1 Quản trị mạng cơ bản1.1.2 Kiến trúc quản trị mạng1.1.3 Quản trị mạng tiêu chuẩn ISO1.2 Kiến trúc SNMP
1.2.1 Giao thức SNMP1.2.2 Các phiên bản của SNMP1.2.3 Các thành phần của SNMP1.2.4 Phương thức hoạt động của SNMP1.3 Một số hệ thống quản trị mạng với SNMP
Trang 11Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên ht t p : / / w w w.lr c -tnu e d u.vn/
1.3.1 Quản trị mạng với SNMP trong hệ điều hành Microsoft, Linux
Trang 121.3.2 Quản trị mạng với SNMP trên môi trường Java1.3.3 Cơ chế quản lý mạng tập trung theo mô hình DEN
Chương II : Kiến trúc Plugin trong hệ quản trị mạng Cacti2.1 Kiến trúc của hệ quản trị mạng Cacti
2.1.1 Giới thiệu về hệ quản trị mạng Cacti2.1.2 Kiến trúc Cacti
2.1.3 Hoạt động của Cacti2.2 Kiến trúc Cacti Plugin2.2.1 Tổng quan Plugin2.2.2 Plugin Architecture trong hệ quản trị Cacti2.2.3 Cacti Plugin
2.2.4 Một số Cacti Plugin thông dụng
Chương III : Triển khai hệ quản trị Cacti với kiến trúc Plugin trong thực tế
3.1 Các vấn đề về hệ thống mạng hiện tại3.1.1 Tình hình hiện tại
3.1.2 Mô hình mạng hiện tại3.1.3 Tình hình quản lý, giám sát hệ thống mạng3.1.4 Nhu cầu và giải pháp
3.2 Thiết kế hệ thống quản trị mạng3.2.1 Quy trình thực hiện của hệ thống3.2.2 Sơ đồ chức năng của hệ thống3.2.3 Giao diện web quản trị
Trang 13Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên ht t p : / / w w w.lr c -tnu e d u.vn/
3.2.4 Module quản lý thông tin trên thiết bị
Trang 143.2.5 Tiến hành ứng dụng và cài đặt3.3 Kết quả và hướng phát triển3.3.1 Kết quả
3.3.2 Hướng phát triển trong tương lai
5 Phương pháp nghiên cứu
- Thu thập, phân tích, tổng hợp các tài liệu có liên quan đến đề tài
- Xây dựng bài toán thực nghiệm để minh chứng những nghiên cứu về
lý thuyết
6 Ý nghĩa Khoa học của đề tài
- Là tài liệu tham khảo trong lĩnh vực quản trị mạng với nội dung nghiêncứu và triển khai hệ thống quản trị mạng dựa trên mã nguồn mở, mởrộng với kiến trúc PLUGIN
- Nội dung nghiên cứu về tổng quan kiến trúc quản trị mạng, giao thứcquản trị mạng SNMP, kiến trúc hệ thống mã nguồn mở CACTI, kiến trúcPLUGIN
- Xây dựng, thiết kế, thử nghiệm và ứng dụng quản trị mạng trong côngviệc của mình và triển khai ( Tại công ty liên doanh làng quốc tế HướngDương – TP Hải Phòng )
Trang 15Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên ht t p : / / w w w.lr c -tnu e d u.vn/
Chương I : Kiến trúc quản trị mạng SNMP
Trong tài liệu của Cisco, quản trị mạng được hiểu là các hoạt động giám sát một mạng đơn lẻ với các giao thức, các công cụ phân tích mạng Ngoài ra, khái niệm quản trị mạng còn liên quan tới các hoạt động quản trị cơ sở dữ liệu phân tán, khả năng tự động tương tác với thiết bị mạng, hay tạo ra các khung nhìn đồ họa về cấu trúc, lưu lượng mạng theo thời gian thực
Nói chung, quản trị mạng được hiểu là công việc mà người quản trị sử dụngcác công cụ, ứng dụng và thiết bị cho việc giám sát và duy trì mạng
1.1.1.2 Vài nét về lịch sử quản trị mạng
Đầu những năm 1980, có những bước tiến lớn trong việc triển khai mạng Công nghệ mạng được áp dụng, kết quả nhận được tăng lên rất nhiều thông qua
Trang 16một
Trang 17Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên ht t p : / / w w w.lr c -tnu e d u.vn/
cách nhanh chóng và các công nghệ mới liên tục được nghiên cứu, ứng dụng Giữa những năm 1980, việc triển khai mạng gặp nhiều khó khăn do có nhiều côngnghệ mạng khác nhau và đôi khi không tương thích
Các vấn đề liên quan đến việc mở rộng mạng lúc này gây ảnh hưởng đến cả hoạt động mạng hàng ngày và chiến lược phát triển mạng Mỗi công nghệ mạng mới đòi hỏi phải thiết lập riêng của các chuyên gia Và trong đầu những năm 1980,các yêu cầu quản lý nhân sự : một cá nhân quản lý hệ thống mạng lớn, không thống nhất đã gây ra rắc rối lớn cho nhiều tổ chức Vì thế phát sinh một nhu cầu cấp thiết để quản lý mạng tự động tích hợp trên môi trường đa mạng
Trang 18Hình 1.1 : Mô hình kiến trúc mạng điển hình duy trì nhiều quan hệ.
Các thành phần của kiến trúc quản lý mạng bao gồm : manager, các agent,giao thức quản trị mạng (Network management protocol), Cơ sở thông tin quản
lý (MIB – Management Information Base) hay cơ sở dữ liệu quản lý
(Management Database), các proxy
Manager (có thể là trạm cuối, thiết bị quản lý, hệ thống máy tính, hệ thống định tuyến ) có chứa thực thể quản lý (Management entity) được lập trình sẵn
để phản ứng bằng cách thực hiện một hoặc một nhóm các hành động Manager đóng vai trò điều khiển nút mạng, chịu trách nhiệm duy trì khung nhìn về nút mạng quản lý, thu thập thông tin từ các thành phần mạng và xử lý thông tin nếu cần thiết
Agent trong các thiết bị quản lý phản hồi tất cả các hoạt động thăm dò Các Agent là các mô-đun phần mềm làm các công việc : biên dịch thông tin về thiết bị quản lý, sau đó lưu trữ trong cơ sở dữ liệu và cuối cùng là cung cấp thôngcho các thực thể quản lý trong hệ thống quản trị mạng qua giao thức quản trị mạng Có 2 giao thức quản trị mạng phổ biến là SNMP (Simple Network
Management Protocol ) và CMIP (Common Management Information Protocol)
MIB là cơ sở thông tin quản lý được lưu trữ lại trong các thiết bị mạng Proxy (Đơn vị quản lý ủy quyền) là các thực thể cung cấp thông tin quản lýthay mặt cho các thực thể khác
1.1.3 Quản trị mạng tiêu chuẩn ISO
Theo ISO có thể phân nhóm quản trị mạng dựa trên các chức năng
chính Các chức năng chính là quản lý lỗi, cấu hình, tính toán, thực thi, bảo mật
Trang 19Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên ht t p : / / w w w.lr c -tnu e d u.vn/
(FCAPS - Fault, Configuration, Accounting, Performance and Security)
Trang 201.1.3.1 Quản lý lỗi
Quản lý lỗi nhằm phát hiện, chẩn đoán, và thông báo các thiết bị trong tình trạng lỗi để sửa chữa, thay thế để giữ mạng hoạt động hiệu quả Quản lý lỗibao gồm các chức năng như báo động, giám sát, xác định khu vực xảy ra lỗi,
quản lý việc kiểm tra, sửa chữa các lỗi và hỗ trợ quản lý
1.1.3.2 Quản lý cấu hình
Mục tiêu của quản lý cấu hình là để giám sát mạng và thông tin cấu hình hệ thống để theo dõi, điều khiển các hoạt động mạng với các phiên bản phần cứng, phần mềm khác nhau Mỗi thiết bị mạng có nhiều thông tin phiên bản liên kết với
nó Dữ liệu về cấu hình được lưu trữ ở trong cơ sở dữ liệu nhỏ và dễ dàng truy cập Khi gặp vấn đề, đây là đầu mối để tìm ra cách giải quyết
1.1.3.3 Quản lý tính toán:
Quản lý tính toán là để đo các thông số sử dụng mạng để có thể được điều chỉnh một cách thích hợp Mục đích là để giảm thiểu các vấn đề mạng và tối đa hóa sự công bằng của truy cập mạng trên tất cả các người sử dụng Cùng với quản
lý hoạt động, quản lý kế toán đo lường mức độ sử dụng của tất cả các tài nguyênmạng quan trọng Phân tích kết quả sẽ cho cái nhìn sâu vào mô hình sử dụng và chỉ tiêu sử dụng có thể được thiết lập
1.1.3.4 Quản lý thực thi
Quản lý thực thi là hoạt động quản lý mạng cấp cao, là hoạt động giám sát,kiểm soát và tối ưu hóa mạng lưới tổng thể, hiệu suất Quản lý thực thi bao gồm
Trang 21Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên ht t p : / / w w w.lr c -tnu e d u.vn/
các chức năng như thu thập thông tin thống kê, duy trì và kiểm tra các bản ghi của
Trang 22hệ thống và thay đổi chế độ hoạt động của hệ thống với mục đích thực hiện các hoạt động quản lý hiệu quả.
1.1.3.5 Quản lý bảo mật
Quản lý bảo mật là để kiểm soát quyền truy cập vào tài nguyên mạng để mạng không thể bị phá hoại (cố ý hoặc vô ý) và các thông tin nhạy cảm không thểđược truy cập bởi những người không có quyền thích hợp Quản lý bảo mật nhằm ngăn chặn sự xâm nhập, phát hiện xâm nhập, để hỗ trợ việc phục hồi và hạn chế hậu quả của sự xâm nhập một cách hiệu quả
1.2Kiến trúc SNMP
1.2.1 Giao thức SNMP
SNMP (Simple Network Management Protocol) là một trong hai giao thức quản trị mạng phổ biến SMTP cung cấp phương pháp để giám sát và điều khiểncá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ảomật Giao thức này xuất hiện rất nhiều trong các thiết bị mạng như switch,
router, bridge hay các hệ quản trị Window Server 2003, Cacti, Nagios
Với mô hình mạng nhỏ, ít thiết bị và tập trung ở một nơi, hiệu quả củaSNMP không được rõ ràng lắm nhưng khi sử dụng trong hệ thống lớn, thiết bị phân tán và thay đổi công việc quản trị tập trung ở một nơi mà có thể quản lý tất
cả mới thấy được lợi ích của SNMP
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 Và giao thức SNMP
Trang 23Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên ht t p : / / w w w.lr c -tnu e d u.vn/
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
Trang 241.2.2 Các phiên bản của SNMP
Có 3 phiên bản khác nhau của SNMP, được ký hiệu là SNMPv1, SNMPv2
và SNMPv3 Trình tự của các phiên bản được dựa trên sự phát triển liên tục của thiết kế SNMP với các chức năng bổ sung
SNMPv1 được đặc trưng với thiết kế gọn nhẹ của nó và nó được chứng minh là phù hợp với quản lý mạng lưới cỡ nhỏ và không thể mở rộng mạng lớn hơn
SNMPv2 là thế hệ thứ 2 được phát triển, khắc phục những thiếu sót của SNMPv1 bằng cách mở rộng các chức năng mới trên nền tảng TCP/IP SNMPv2 làm cho SNMP trở thành một giao thức quản lý mạnh mẽ bằng cách cung cấp hiệu quả tốt hơn, kiểm soát lỗi và thông tin liên lạc quản lý-quản lý
SNMPv3 là phiên bản tập trung vào việc bảo mật, không có khả năng mởrộng
1.2.3 Các thành phần của SNMP
Trong SNMP có 3 thành phầ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
Trang 25Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên ht t p : / / w w w.lr c -tnu e d u.vn/
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ácthô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
Trang 26nhấ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 NMSphả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 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
Trang 27Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên ht t p : / / w w w.lr c -tnu e d u.vn/
đị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
Trang 28củ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ủagiao 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)
• 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 MIBriêng cho họ trong từng tình huống quản lý của họ
1.2.4 Phương thức 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 động của SNMP sau:
Get
Get-next
Trang 29Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên ht t p : / / w w w.lr c -tnu e d u.vn/
Get-bulk (SNMPv2 và SNMPv3)
Set
Trang 31Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên ht t p : / / w w w.lr c -tnu e d u.vn/
Trang 321.4: Hoạt động của lệnh “get” trong giao thức SNMP
Hình
Get – ne xt
“Get-next” đưa ra một dãy các lệnh để lấy thông tin từ một nhóm
trongMIB 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
Get - bu lk
“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 Tuynhiê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
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ùngmột lúc:
Trang 33Erro r Res po ns e c ủ a g et, get -ne xt, get -bu lk, s et
Có nhiều loại lỗi báo lại từ agent:
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
1.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ả
Trang 34wrongLength(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ê “enumeration” được đặt một giá trị không theo kiểu liệt kê.
cứ câu lệnh “set” nào.
InconsistentValue(12) Một biến MIB ở trạng thái không nhất quán và nó
không chấp nhận bất cứ câu lệnh “Set” nào resourceUnavailable(13)
Không có tài nguyên hệ thống để thực hiện lệnh
“set”
commitFailed(14) Đại diện cho tất cả các lỗi khi lệnh “set” thất bạiundoFailed(15) Một lệnh “set” không thành công và agent không
Trang 35Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên ht t p : / / w w w.lr c -tnu e d u.vn/
thể phục hồi lại trạng thái trước khi lệnh “set” bắt đầu thất bại.
authorizationError(16) Một lệnh SNMP không được xác thực, khi một
người nào đó đưa ra mật mã không đúng.
notWritable(17) Một biến không chấp nhận lệnh “set”.
inconsistentName(18)
Cố gắng đặt một giá trị, nhưng việc cố gắng thất bại vì biến đó đang ở tình trạng không nhất quán.
1.2: Các lỗi trong SNMPv2 SNMP T ra p
Trap là cảnh báo của agent tự động gửi cho NMS để NMS biết có tình trạngxấu ở agent
Khi nhận được một ”trap” từ agent, NMS không trả lời lại bằng ”ACK” Do
đó agent không thể nào biết được là lời cảnh báo của nó có tới được NMS hay không Khi nhận được một ”trap” từ agent, nó tìm xem ”trap number” để hiểu ý nghĩa của ”trap” đó
1.6: Mô hình gửi Trap từ Agent
Bản tin Trap được agent tự động gửi cho manager mỗi khi có sự kiện xảy
ra bên trong agent, các sự kiện này không phải là các hoạt động thường xuyên của agent mà là các sự kiện mang tính biến cố Ví dụ: Khi có một port down, khi có
Trang 36một người dùng login không thành công, hoặc khi thiết bị khởi động lại, agent
sẽ gửi trap cho manager
Tuy nhiên không phải mọi biến cố đều được agent gửi trap, cũng không phải mọi agent đều gửi trap khi xảy ra cùng một biến cố Việc agent gửi hay khônggửi trap cho biến cố nào là do hăng sản xuất device/agent quy định
Phương thức trap là độc lập với các phương thức request/response SNMP request/response dùng để quản lượn SNMP trap dùng để cảnh báo Nguồn gửi trap gọi là Trap Sender và nơi nhận trap gọi là Trap Receiver Một trap sender có thể được cấu hình để gửi trap đến nhiều trap receiver cùng lúc
Có 2 loại trap : trap phổ biến (generic trap) và trap đặc thù (specific trap) Generic trap được quy định trong các chuẩn SNMP, specific trap do người dùng
tự định nghĩa (người dùng ở đây là hăng sản xuất SNMP device) Loại trap là một
số nguyên chứa trong bản tin trap, dựa vào đó mà phía nhận trap biết bản tin trap có nghĩa gì
Theo SNMPv1, generic trap có 7 loại sau : coldStart(0), warmStart(1),
linkDown(2), linkUp(3), authenticationFailure(4), egpNeighborloss(5),
enterpriseSpecific(6) Giá trị trong ngoặc là mã số của các loại trap Ý nghĩa của các bản tin generic-trap như sau:
Trang 37Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên ht t p : / / w w w.lr c -tnu e d u.vn/
Trang 38warmStart (1) Thông báo agent vừa khởi tạo lại, không có biến nào bị
1.3: Các kiểu Trap SNMP Not ifica tio n
SNMP Notification để chuẩn hóa định dạng PDU “trap” của SNMPv1 do PDU của “get” và “set” khác nhau, SNMPv2 đưa ra NOTIFICATION-TYPE” Định dạng PDU của “NOTIFICATION-TYPE” là để nhận ra “get” và “set”
“NOTIFICATION-TYPE” được định nghĩa trong RFC 2863
SNM P info rm
SNMP inform: SNMPv2 cung cấp cơ chế truyền thông giữa những NMS vớinhau, gọi là SNMP inform Khi một NMS gửi một SNMP inform cho một NMSkhác, NMS nhận được sẽ gửi trả một ACK xác nhận sự kiện Việc này giống với cơchế của “get” và “set”
SNMP r e p o r t
Trang 39Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên ht t p : / / w w w.lr c -tnu e d u.vn/
SNMP report: được định nghĩa trong bản nháp của SNMPv2 nhưng khôngđược phát triển.Sau đó được đưa vào SNMPv3 và hy vọng dùng để truyền thônggiữa các hệ thống SNMP với nhau
1.3Một số hệ thống quản trị mạng với SNMP
1.3.1 Quản trị mạng với SNMP trong hệ điều hành Microsoft, Linux
Các mô hình quản lý mạng truyền thống chạy trên hệ điều hành của
Microsoft đa số sử dụng giao thức SNMP, trong đó chia làm 4 thành phần:
- Nút được quản lý (managed node)
- Trạm quản ký (management station)
- Thông tin quản lý (management information)
- Giao thức quản ký (management protocol)
Nút được quản lý có thể là máy tính, bộ định tuyến, bộ chuyển mạch, cầu nối, máy in hoặc các thiết bị mạng khác có khả năng liên lạc với bên ngoài mạng.Mỗi nút chạy phần mềm quản lý gọi là SNMP agent Mỗi agent duy trì một cơ sở
dữ liệu cục bộ các biến mô tả trạng thái, lịch sử và tác vụ ảnh hưởng lên nó
Hình 1.7: Quản lý mạng Microsoft sử dụng SNMP
Trang 40Trạm quản lý chứa một hoặc nhiều tiến trình liên lạc với agent trên
mạng, phát những câu lệnh và nhận kết quả Hình 1.7 trình bày mô hình quản
lý mạng Microsoft thông qua giao thức SNMP
Trong hình 1.7 , cơ sở dữ liệu MIB (Management Information Base) tập hợptất cả các đối tượng trong một mạng, nó định ra những biến mà các phần tử
mạng cần duy trì
Trạm quản lý (management station) tương tác với agent qua giao
thứcSNMP Giao thức SNMP gồm 5 tác vụ và mỗi tác vụ được mã hóa trong một đơn
vị dữ liệu PDU (Protocol Data Unit) riêng biệt và được chuyển qua mạng bằng giao thức UDP (User Datagram Protocol) Đó là các tác vụ:
• Get-request: lấy giá trị của một hoặc nhiều biến.
• Get-next-request: lấy giá trị của biến kế tiếp.
• Set-request: đặt giá trị của một hoặc nhiều biến.
• Get-response: trả về giá trị của một hoặc nhiều biến sau khi phát lệnh get-request
hoặc get-next-request, hoặc set-request
• Trap: gửi cảnh báo cho máy trạm quản lý khi có biến cố xảy ra trên máy agent.
Hình 1.8: Các tác vụ SNMP
Hình 1.8 minh họa 5 tác vụ liên lạc giữa máy trạm quản lý và máy agent,
trong đó SNMP sử dụng port 161 cho các lệnh get-request, get-next-request,