Tải bản đầy đủ (.doc) (7 trang)

Giao thức quản lý mạng SNMP và phát triển ứng dụ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 (162.62 KB, 7 trang )

Lĩnh vực Công nghệ thông tin
GIAO THứC QUảN Lý MạNG SNMP Và PHáT TRIểN ứNG DụNG
KS.Đinh Kim Cờng, KS. Nguyễn Hải Hà
Trung tâm Công nghê thông tin
1. Mở đầu
ới sự phát triển mạnh mẽ của máy trạm, máy chủ và mạng LAN đã làm thay đổi mạng
máy tính liên tục. Mặt khác do sự mua bán các hệ thống và thiết bị, phần mềm của các
nhà sản xuất khác nhau. Do vậy các nhà sản xuất thiết bị hoặc phần mềm phải cung cấp
phần mềm giao tiếp với thiết bị để có thể cấu hình và quản lý chúng. Và nh vậy, mỗi một nhà
sản xuất ít nhất là phải có một phần mềm quản lý riêng với nguyên tắc hoạt động riêng cho
sản phẩm của mình. Điều này gây ra nhiều bất tiện. Do vậy, ngời ta xây dựng các giao thức
quản lý thiết bị chung cho tất cả các nhà sản xuất. Trong các giao thức đó, thì giao thức đợc
biết đến nhiều nhất là giao thức SNMP (Simple Network Management Protocol). Các thiết
bị dù đơn giản hay phức tạp đều chứa phần mềm SNMP dùng để tham gia vào việc quản lý
mạng.
V
Hiện nay, các đơn vị nghiên cứu phát triển trong lĩnh vực viễn thông trong nớc nói
chung và CDiT nói riêng đã có nhiều sản phẩm đợc sử dụng trên mạng lới. Tuy nhiên việc
quản lý các sản phẩm này vẫn cha đợc thực hiện theo tiêu chuẩn quốc tế nh các sản phẩm
nhập hay chuyển giao từ nớc ngoài. Trên thế giới việc nghiên cứu và ứng dụng thủ tục SNMP
trong việc quản lý các hệ thống và thiết bị viễn thông đã làm từ lâu, và việc ứng dụng SNMP
vào quản lý là mặc định. Đứng trớc cơ hội hội nhập quốc tế, thì việc áp dụng một giao thức
tiêu chuẩn quốc tế vào quản lý sản phẩm là cần thiết vì nó thống nhất đợc giao diện quản lý
trên mạng, tạo điều kiện thuận lợi cho việc cung cấp giao diện quản lý chuẩn khi phát triển
các hệ thống và thiết bị viễn thông trong nớc.
Trong phạm vi của bài báo, tác giả trình bày về các phần cơ bản của giao thức SNMP và
một số kỹ thuật phát triển ứng dụng.
2. Giao thức SNMP
2.1. Giới thiệu về giao thức SNMP
Các thiết bị mạng chứa thông tin về bản thân chúng, các thông tin này có thể là các
tham số lựa chọn cấu hình thiết bị, trạng thái hoạt động hiện tại của thiết bị, các thông tin về


thống kê nh lu lợng vào ra của các gói thông tin hoặc các thông tin về lỗi của thiết bị.
Để có thể quản lý đợc hệ thống hoặc mạng thì cần phải có những thiết bị có khả năng biết đ-
ợc các thông tin của các thiết bị khác tồn tại xung quanh nó. Nh vậy, thực chất của việc quản
lý các thiết bị chính là việc quản lý các thông tin mà các thiết bị bị quản lý lu trữ. Tất cả các
thông tin này là trung tâm của giao thức SNMP.
Ta cần quản lý những thông tin gì? Các chuyên gia đã thiết kế ra một tập hợp các thông tin
chung mà tất cả các thiết bị thuộc các hãng khác nhau đều có, và chúng đợc tiêu chuẩn hoá
và các nhà sản xuất khác nhau đều cung cấp các thông tin này để quản lý thiết bị của họ. Còn
nếu nhà sản xuất muốn quản lý những đặc điểm đặc thù của sản phẩm của họ thì các chuyên
gia đã giành cho các nhà sản xuất một nhánh thông tin riêng, trong đó mỗi nhà sản xuất lại
có một nhánh riêng để phát triển.
Để quản lý thông tin thì mỗi thông tin phải có một tên riêng biệt và duy nhất. Cách đặt tên đó
nh thế nào? Khi đã có tên cho mỗi thông tin, thì làm thế nào để có thể lấy thông tin đó hoặc
thay đổi thông tin đó?
Học viện Công nghệ BCVT
Hội nghị Khoa học lần thứ 5
SNMP là một giao thức chỉ ra cách đặt tên biến và cách lấy thông tin, cách thay đổi thông tin
của thiết bị bị quản lý.
Hỡnh 1. Trao đổi bản tin SNMP giữa trạm quản lý và thiết bị bị quản lý.
2.2 Mô hình quản lý
Giao thức SNMP ban đầu đợc phát triển để quản lý mạng TCP/IP, do vậy các thông tin thờng
liên quan đến mạng TCP/IP nh các thông tin liên quan đến chuyển đổi địa chỉ IP và TCP/IP
ra địa chỉ vật lý, lu lợng IP datagram đến và đi, số các kết nối TCP,...Sau đây là mô hình quản
lý mạng TCP/IP.

Trạm quản lý mạng
(Network management station)
ứng dụng ứng dụng
Phần mềm quản lý
agent

- Đọc và thay đổi cấu hình
- Đọc và thay đổi trạng thái
- Đọc hiệu suất hoặc thông
tin về thống kê lỗi
- Đáp ứng các yêu cầu
- Báo các vấn đề nghiêm
trọng hoặc các sự kiện
quan trọng xảy ra
- Dữ liệu cấu hình
- Các tham số trạng thái
- Các thông số thống kê
Hỡnh 2. Mô hình quản lý internet.
Từ mô hình quản lý, ta thấy một hệ thống quản lý bao gồm ít nhất hai đối tợng, chủ thể quản
lý (trạm quản lý) và đối tợng quản lý (agent).
Phần mềm agent đợc cài đặt tại mỗi thiết bị. Agent nhận các bản tin yêu cầu từ trạm quản lý.
Các bản tin yêu cầu này là các bản tin yêu cầu lấy thông tin hoặc yêu cầu thay đổi thông tin
của các thiết bị. Các agent thực hiện các yêu cầu đó và gửi trả lại các đáp ứng chứa các thông
tin thích hợp mà trạm quản lý yêu cầu. Tuy nhiên agent không phải luôn luôn phải đợi các
yêu cầu gửi đến mới gửi thông tin về trạm quản lý, mà khi xảy ra một vấn đề nghiêm trọng
nào đó xảy ra trong thiết bị thì agent gửi một bản tin (đợc gọi là bản tin trap) tới một hoặc
nhiều trạm quản lý.
Trạm quản lý đợc cài đặt một phần mềm quản lý, gửi các yêu cầu tới các agent, thu các bản
tin đáp ứng và bản tin trap do agent gửi đến.
Học viện Công nghệ BCVT
Lĩnh vực Công nghệ thông tin
2.3 Giao thức SNMP
Để hiểu đợc giao thức SNMP, ta cần tìm hiểu các phần sau đây của giao thức.
- Kho thông tin quản lý MIBs.
- Cấu trúc và nhận dạng thông tin quản lý SMI.
- Các bản tin và hoạt động của giao thức SNMP.

- Ngoài ra phải tìm hiểu về ngôn ngữ ASN.1, luật mã hoá cơ bản BER (Base Encoding
Rules) (phần này tham khảo trong: "ASN.1 Complete" của Professor John Larmouth , có
thể download tại ).
a. Cấu trúc và nhận dạng thông tin quản lý SMI (Structure of Management Information).
Nh ta đã biết mỗi:
- Mối thiết bị chứa một cơ sở dữ liệu thông tin MIB (Management Information Base).
- SNMP định nghĩa một tập các bản tin đơn giản cho phép ta đọc/ghi cơ sở dữ liệu, nhận
các bản tin trap từ các agent.
Tuy nhiên:
- Định nghĩa và miêu tả các thông tin nh thế nào?
- Các thông tin khác nhau liên quan đến nhau nh thế nào?
- Làm thế nào để nhận dạng một biến mà ta muốn đọc/ghi?
- Các thông tin đợc biểu diễn nh thế nào?
Các câu hỏi này đợc trả lời trong SMI.
- Các thông tin trong MIB đợc định nghĩa và miêu tả bằng cách sử dụng một ngôn ngữ
định dạng kiểu dữ liệu ASN.1. Giống nh các ngôn ngữ khác nh C, Pascal..., ASN.1 cho
phép định nghĩa các cấu trúc dữ liệu cần thiết.
- Trong thông tin trong MIB, đợc tổ chức thành các đối tợng. Mỗi đối tợng gồm: tên của
đối tợng, các thuộc tính và các thao tác mà có thể đợc thực hiện trên đối tợng đó
(đọc/ghi).
- Các thuộc tính của đối tợng gồm có: kiểu dữ liệu, miêu tả thông tin đó là thông tin gì,
trạng thái thông tin (đã qua thời gian thử nghiệm hay cha?).
- Kiểu dữ liệu đợc sử dụng trong SNMP là các kiểu dữ liệu cơ bản của ngôn ngữ ASN.1
(Abstract Syntax Notaion 1) nh: OBJECT IDENTIFIER, INTEGER, OCTET STRING,
NULL. Tuy nhiên SMI lại sử dụng các kiểu dữ liệu cơ bản này để tạo nên các kiểu dữ
liệu mới phù hợp với SNMP.
- Thông tin quản lý mạng đợc hợp nhất thành một cây thông tin và đợc quản lý bởi ISO và
CCITT. Cấu trúc cây giúp ta thấy đợc mối quan hệ giữa các tham số với nhau. Điều này
cũng dễ dàng khi ta mở rộng cây thông tin khi cần thiết.
- Việc xác định tên các thông tin đợc rút ra từ cây thông tin. Mỗi nút trên cây thông tin đợc

gán một số nhận dạng và không trùng với các nút cùng cấp với nó. Tên của biến là một
chuỗi các số cùng với đờng dẫn từ gốc của cây th mục tới tham số đó (tên của đối tợng
còn đợc gọi là: OBJECT IDENTIFIER).
- Sử dụng luật mã hoá cơ bản BER để chuyển các giá trị của các tham số dới dạng ASN.1
sang dạng truyền dẫn cố định. Khi dữ liệu đợc truyền giữa các agent và manager, thì dữ
liệu đợc định dạng theo cùng một cách.Các agent và manager chuyển đổi dữ liệu giữa
dạng chuẩn này và dạng thích hợp với hệ thống của nó.
b. Kho thông tin quản lý MIB
Tất cả các thông tin về một thiết bị tạo thành một cơ sở dữ liệu, các thông tin này có thể là
thông tin về cấu hình, trạng thái, thông tin thống kê, thông tin về bộ đếm phần cứng, các
thông tin về tài nguyên hệ thống, thông tin về nhà sản xuất, phiên bản của hệ thống,...
Học viện Công nghệ BCVT
Hội nghị Khoa học lần thứ 5

root
ccitt
0
iso
1
joint-iso-ccitt
2
org
3
dod
6
internet
1
mib-2
1
enterprises

1

system
1
interface
2
at
3
ip
4
icmp
5
tcp
6
udp
7
egp
8
snmp
11
directory
1
mgmt
2
experimental
3
private
4
security
5

snmpV2
6
Hỡnh 3. Cây thông tin
Trong SNMP, đây là cơ sở dữ liệu logic của thông tin quản lý mạng và đợc gọi là MIB. Ta
không quan tâm nhiều đến dữ liệu chứa bên trong MIB cũng nh dạng vật lý của dữ liệu, mà ta
quan tâm chủ yếu đến khả năng truy cập dữ liệu. Chính điều này cũng đã góp phần làm nên
sự đơn giản trong giao thức SNMP. Nh trong phần trên đã nói, thông tin quản lý là trung tâm
của giao thức, vì vậy, khi thiết kế kho thông tin quản lý thì thiết kế càng đơn giản thì khả
năng truy cập thông tin càng tốt.
Câu hỏi đặt ra là những thông tin nào nên đợc lu trữ trong MIB? Làm thế nào chuẩn hoá các
thông tin mà không làm ảnh hởng đến việc thêm cũng nh mở rộng các thông tin cần thiết?
Các chuyên gia đã sử dụng phơng pháp tiến hoá để thiết kế kho thông tin MIB:
- Định nghĩa các nhóm gồm các thông tin hữu ích.
- Sau một thời gian thử nghiệm, tiến hành loại bỏ dần những tham số không hữu ích.
- Định nghĩa các thông tin chung mà nhiều nhà sản xuất đều sử dụng và tiến hành chuẩn
hoá chúng.
- Các nhà sản xuất có thể thêm phần mở rộng của mình cho phù hợp với đặc điểm của thiết
bị.
Để đạt đợc những yêu cầu trên thì phải căn cứ vào cấu trúc và nhận dạng thông tin quản lý để
định nghĩa module MIB.
Có thể sử dụng phần mềm MG-SOFT SNMP để soạn thảo module MIB và có thể biên dịch.
Ta có thể soạn thảo module MIB trên file text, sau đó sử dụng các công cụ của phần mềm
quản lý để tải các file MIB. Sau khi tải vào, ta sử dụng chức năng MIB Browser để hiển thị
cây thông tin ta vừa tải vào. Lúc này, nếu viết song phần mềm subagent tơng ứng cho MIB, ta
Học viện Công nghệ BCVT
Lĩnh vực Công nghệ thông tin
có thể sử dụng các lệnh get_request, get_next_request,... để lấy hoặc cập nhật dữ liệu dữ liệu.
Hình vẽ sau minh hoạ điều này.
Hỡnh 4. Cây thông tin và kết quả trả ra khi sử dụng lệnh get_request.
Tuy nhiên phần mềm này MG-SOFT SNMP phải có đăng ký bản quyền thì mới sử dụng đợc

đầy đủ các chức năng của nó.
c. Giao thức SNMP.
Giao thức SNMP xác định:
Loại bản tin mà có thể đợc gửi đi giữa một trạm quản lý (manager) và trạm bị quản lý
(agent). Các bản tin này đợc đóng gói trong đơn vị thông tin PDU.
Dạng của bản tin.
Các giao thức truyền thông đợc sử dụng để vận chuyển bản tin SNMP.
Các loại bản tin:
get request: Đợc sử dụng để lấy giá trị của một hoặc nhiều biến trong MIB.
get next request: Đợc sử dụng để lấy các giá trị liên tục nhau. Thờng đợc sử dụng để
lấy một bảng các giá trị. Sau khi lấy hàng đầu tiên bằng bản tin get request , thì get
next request đợc sử dụng để đọc các hàng còn lại.
set request: Đợc sử dụng để cập nhật một hoặc nhiều biến trong MIB.
get response: Đợc sử dụng để trả lời các bản tin get request, get next request
hoặc set request.
Trap: đợc sử dụng để hỗ trợ các sự kiện quan trọng xảy ra tại trạm bị quản lý, nh việc khởi
động lại của thiết bị hoặc đứt liên kết TCP với thiết bị.
Từ các bản tin trên ta giải thích đợc tại sao lại gọi SNMP là simple. Ta có thể đọc giá trị của
một biến thông qua bản tin get, có thể lấy các giá trị của các biến từ đầu cho đến cuối một
bảng trong MIB bằng bản tin get next, có thể thay đổi giá trị của tham số bằng bản tin set,
bản tin response dùng để gửi trả lại kết quả của các bản tin yêu cầu. Và thiết bị đợc quản lý
Học viện Công nghệ BCVT

×