LỜI NÓI ĐẦU
Trong giai đoạn hiện nay Công nghệ thông tin đang trên đà phát triển nhanh và
mạnh mẽ theo từng ngày từng giờ. Việc ứng dụng Công nghệ thông tin vào thực tiễn, nhất
là trong công tác quản lý là hết sức cần thiết và đặc biệt quan trọng.
Nước ta cùng với sự phát triển của nền kinh tế - xã hội, Interner đang ngày càng
được ứng dụng rộng rãi trong các cơ quan. Để theo dõi giám sát các hoạt động, các trạng
thái của các nút mạng và thông báo khi có sự cố mạng xảy ra.
Từ lý do đó nên em đó chọn đề tài “Giao thức SNMP và ứng dụng giao thức trong
việc quản lý mạng từ xa”. Trong quá trình thực hiện đề tài, em đã tìm hiểu về giao thức
SNMP và dùng phần mềm Solar Wind để giám sát hệ thống mạng.
Nội dung báo cáo gồm các chương:
-
CHƯƠNG I:QUẢN TRỊ MẠNG THEO GIAO THỨC SNMP1
-
CHƯƠNG II :QUẢN TRỊ MẠNG THEO GIAO THỨC SNMPV2 và SNMPV3
-
CHƯƠNG III: ỨNG DỤNG SNMP TRONG QUẢN LÝ MẠNG TỪ XA BẰNG
PHẦN MỀM SOLAR WIND
1
MỤC LỤC
CHƯƠNG I . QUẢN TRỊ MẠNG THEO GIAO THỨC SNMP1........................................ 4
I.1 Quá trình phát triển và các khái niệm quản trị mạng SNMP...................................... 4
I.1.1Quá trình phát triển của SNMP:............................................................................... 4
I.1.2 Các khái niệm cơ bản :............................................................................................. 5
I.2 Thông tin quản trị SNMP:............................................................................................. 9
I.2.1 ASN.1 (ký hiệu cú pháp trừu tượng) ........................................................................ 9
I.2.2 Cấu trúc thông tin quản trị (SMI)......................................................................... 13
I.2.3 Các cơ sở thông tin quản trị tiêu chuẩn (MIB) ...................................................... 16
I.3 Giao thức quản trị mạng đơn giản (SNMP).................................................................. 20
I.3.1 Các toán tử và nguyên lý: ...................................................................................... 20
I.3.2 Mô tả giao thức...................................................................................................... 22
I.3.3 Sơ đồ giao vận. ....................................................................................................... 27
I.4 Những hạn chế của SNMPv1........................................................................................ 28
I.5 Tổng kết......................................................................................................................... 29
Chương II . QUẢN TRỊ MẠNG THEO GIAO THỨC SNMPV2 và SNMPV3 ................ 30
II.1 Giới thiệu về SNMPv2: ................................................................................................ 30
II.1.1 Sự phát triển của SNMPv2: ................................................................................. 30
II.1.2 Những điểm nổi bật của SNMPv2: ....................................................................... 30
II.2 Cấu trúc thông tin quản trị:......................................................................................... 31
II.2.1 Các bảng SNMPv2................................................................................................ 32
II.2.2 Các định nghĩa thông báo..................................................................................... 33
II.2.3 Các khối thông tin................................................................................................. 33
II.4 Vấn đề an toàn trong SNMPv2. .................................................................................. 33
II.4.1 Giới thiệu về giao thức an toàn trong SNMPv2: .................................................. 33
II.4.2 Đối tác SNMPv2 (SNMPv2 Party): ..................................................................... 35
II.4.3 Giao thức xác nhận từ vựng:................................................................................ 36
II.4.3.Nhận một thông báo:............................................................................................. 36
II.4.4 Tạo một thông báo:............................................................................................... 37
II.4.5 Phân phối đồng hồ và mã bí mật: ........................................................................ 38
II.5 Những cải tiến của SNMPv3. ....................................................................................... 41
II.6 Cấu trúc của SNMPv3.................................................................................................. 42
II.6.1 Bộ điều vận: .......................................................................................................... 42
II.6.2 Hệ thống con xử lý thông báo: ............................................................................. 43
II.6.3 Các hệ thống con an toàn .................................................................................... 43
II.6.4 Hệ thống con điều khiển truy cập:....................................................................... 44
II.7 Tổng kết ....................................................................................................................... 45
CHƯƠNG III: ỨNG DỤNG SNMP TRONG QUẢN LÝ MẠNG TỪ XA BẰNG
PHẦN MỀM SOLAR WIND.................................................................................................. 47
III.1 Giới thiệu về Solar Wind. ........................................................................................... 47
III.1.1. Discovery: ............................................................................................................ 47
III.1.2. Cisco Tools: ......................................................................................................... 47
III.1.3. Ping Tools:........................................................................................................... 48
III.1.4. Address Mgmt:.................................................................................................... 48
III.1.5. E-Mail Management: .......................................................................................... 48
III.1.6. Monitoring: ......................................................................................................... 49
2
III.1.7. Perf Mgmt: .......................................................................................................... 49
III.1.8. MIB Browser:...................................................................................................... 49
III.1.9. Security: .............................................................................................................. 49
III.1.10. SNMP Traps:..................................................................................................... 50
III.1.11. Miscellaneous: ................................................................................................... 50
III.2. Khảo sát mạng của ngân hàng................................................................................... 50
III.2.1 Mô hình mạng ...................................................................................................... 50
III.2.2 Quy trình theo dõi mạng...................................................................................... 51
3
CHƯƠNG I . QUẢN TRỊ MẠNG THEO GIAO THỨC SNMP1
I.1 Quá trình phát triển và các khái niệm quản trị mạng SNMP
I.1.1Quá trình phát triển của SNMP:
Sự phát triển của SNMP theo một lịch sử gắn liền với sự phát triển của giao thức
TCP/IP mà nó là một thành phần. TCP/IP được đưa vào năm 1969 khi Bộ Quốc phòng
Mỹ phát triển một trong những mạng chuyển mạch gói đầu tiên, ARPANET. Mục đích
của ARPANET là nghiên cứu các kỹ thuật liên quan đến việc chia sẻ các tài nguyên máy
tính và áp dụng các kỹ thuật này vào mạng dữ liệu giúp ích cho những yêu cầu hàng ngày
của Bộ Quốc phòng Mỹ.
Vấn đề này nảy sinh khi các máy chủ và các thiết bị đầu cuối (do nhiều nhà cung cấp
khác nhau) trong mạng tăng lên đặc biệt là phần mềm cần được phát triển để hỗ trợ cho
việc truyền file trong máy chủ đầu cuối. Vấn đề này càng lớn khi ARPANET phát triển
thành Internet, một tập hợp các mạng cục bộ và diện rộng. TCP/IP đã đáp ứng được các
yêu cầu của Bộ Quốc phòng Mỹ và cũng được phát triển sử dụng cho các ứng dụng phi
quân sự. Giữa những năm 1980, TCP/IP bắt đầu phát triển nhanh chóng và trở thành một
kiến trúc truyền thống tiêu chuẩn.
Đầu năm 1988, ban quản lý kiến trúc Internet đã thông qua việc phát triển SNMP. Các
nhà thiết kế SNMP không bị bắt buộc tương thích với OSI, SNMP sớm trở nên rộng lớn
trên các thiết bị máy tính và thành công trong Internet. SNMP đã nhanh chóng trở thành
giao thức quản trị tiêu chuẩn được nhiều người lựa chọn và thông dụng. Các nhà sản xuất
thiết bị máy chủ , máy trạm, bộ nối, bộ định tuyến, hub đều đưa ra SNMP cơ bản.
Một phần quan trọng không thể thiếu trong bước đầu là sự phát triển của khả năng
kiểm soát từ xa cho SNMP. Tính năng kiểm soát từ xa (Remote Monitoring - -RMON)
định nghĩa thêm vào SNMP MIB cũng như chức năng mà khai thác RMON MIB. RMON
tạo cho người quản trị mạng khả năng kiểm soát toàn bộ mạng con, hơn là các thiết bị đơn
lẻ trong mạng con.
4
I.1.2 Các khái niệm cơ bản :
I.1.2.1 Mô hình SNMP:
Mô hình được sử dụng để quản trị các mạng TCP/IP gồm các thành phần chính sau :
Management Agent (Agent quản trị) : thường là các thành phần như máy chủ, bộ
nối , bộ định tuyến và hub được gắn các Agent SNMP để có thể quản lý từ một trạm
quản trị . Agent đáp ứng các yêu cầu thông tin và các hoạt động từ trạm quản trị và có
thể cung cấp các thông tin quan trọng mà không được yêu cầu cho trạm quản trị.
Management Station (trạm quản trị): Cho phép người quản trị kiểm soát và quản
lý một mạng từ một workstation hoặc một vài workstation.
Một trạm quản trị ít nhất có :
Một bộ các ứng dụng quản trị để phân tích dữ liệu, khôi phục sự cố...
Một giao diện để người quản trị mạng có thể giám sát và điều khiển mạng.
Khả năng thể hiện các yêu cầu của người quản trị mạng trong việc kiểm soát
thực tế và điều khiển các phần tử từ xa trong mạng.
Một cơ sở dữ liệu của thông tin lấy từ các MIB của tất cả các thành phần được
quản trị trong mạng.
Chỉ có hai mục cuối là đối tượng của tiêu chuẩn hoá SNMP.
Networks Management Protocol (Giao thức quản trị mạng ): dùng để liên kết
trạm quản trị và các Agent. Giao thức được sử dụng để quản trị các mạng TCP/IP là
SNMP bao gồm các tính năng chính sau :
Get: cho phép trạm quản trị thu nhận giá trị của các đối tượng tại Agent.
Set: cho phép trạm quản trị thiết lập giá trị của các đối tượng tại Agent.
Trap: cho phép một Agent thông báo cho trạm quản trị các sự kiện quan
trọng.
I.1.2.2 Kiến trúc giao thức quản trị mạng SNMP:
SNMP được thiết kế là một giao thức mức ứng dụng là một phần của bộ giao thức TCP/IP.
Nó được cài đặt trên User Datagram Protocol (UDP). Hình 6 đưa ra cấu trúc điển hình của
các giao thức đối với SNMP.
Với một trạm quản trị độc lập, một tiến trình quản trị điều khiển truy nhập tới MIB
trung tâm tại trạm quản trị và cung cấp một giao tiếp với người quản trị mạng. Tiến trình
5
thực hiện quản trị mạng cách sử dụng SNMP, thực hiện bên trên UDP, IP và các giao thức
phụ thuộc mạng tích hợp (Ethenet, FDDI và X25). Mỗi Agent cũng thực hiện SNMP,
UDP và IP. Thêm vào đó, một quá trình Agent biên dịch các thông báo SNMP.
Máy chủ
Tiến trình quản trị
Người
quản
trị
SNMP
Tiến trình Agent
Tiến trình người
dùng
SNMP
FTB, v.v..
UDP
TCP
UDP
IP
MIB trung tâm
Các giao thức phụ
IP
thuộc mạng
Các giao thức phụ thuộc mạng
Liên
kết
mạng
Bộ định tuyến
Tiến trình Agent
Tiến trình người
dùng
SNMP
FTB, v.v..
Tiến trình quản trị
SNMP
UDP
IP
UDP
TCP
Các giao thức phụ
thuộc mạng
IP
Các giao thức phụ thuộc mạng
Hình 6. Kiến trúc của hệ thống sử dụng SNMP
6
Từ một trạm quản trị, ba dạng thông báo được đưa ra thay mặt cho một ứng dụng quản
trị :GetRequest, GetnextRequest,và SetRequest .Tất cả các thông báo này
được Agent đáp lại theo dạng thông báo GetResponse và được chuyển lên ứng dụng quản
trị. Ngoài ra , một Agent có thể gửi một thông báo Trap tương ứng một sự kiện tác động
đến MIB và nằm dưới các nguồn tài nguyên được quản trị.
I.1.2.3 Kiểm soát theo Trap(Trap-directed polling)
Nếu một trạm quản trị, quản trị số lượng lớn các Agent, và nếu mỗi Agent duy trì một
số lượng lớn các đối tượng, thì sẽ không thực tế khi các trạm quản trị kiểm soát theo kiểu
“bỏ phiếu” tất cả các Agent với các đối tượng dữ liệu có thể đọc. Do vậy, SNMB và MIB
liên quan được thiết kế sử dụng một kỹ thuật được gọi là kiểm soát theo Trap.
Tại thời điểm ban đầu, và tại các khoảng thời gian theo chu kỳ như một lần trong ngày,
trạm quản trị kiểm soát theo kiểu “bỏ phiếu” tất cả các Agent để biết vài thông tin mấu
chốt như các đặc tính giao tiếp; một vài thống kê về tính năng giới hạn như là số lượng
trung bình các gói tin gửi và nhận trên mỗi giao tiếp trong một khoảng thời gian. Khi các
giới hạn này được xác lập, trạm quản trị ngừng kiểm soát theo kiểu “bỏ phiếu” và mỗi
Agent có trách nhiệm thông báo cho trạm quản trị về các sự kiện không bình thường. Các
sự kiện này được truyền trong thông báo SNMP và được gọi là Trap. Khi trạm quản trị
được thông báo do điều kiện bất thường, nó sẽ thực hiện một vài hành động như: kiểm tra
trực tiếp Agent vừa thông báo hoặc các Agent lân cận để phát hiện lỗi. Kỹ thuật kiểm soát
Agent sẽ tiết kiệm năng lực mạng và thời gian xử lý Agent .
7
I.1.2.4 Uỷ quyền (Proxy):
Trạm quản trị
Agen uỷ quyền
Thiết bị được uỷ quyền
Chức năng ánh xạ
Tiến trình quản
trị
Tiến trình
Agent
SNMP
SNMP
UDP
UDP
IP
IP
Các giao thức
phụ thuộc mạng
Các giao thức
phụ thuộc
mạng
Tiến hành quản trị
Cấu trúc giao
thức được
thiết bị uỷ
quyền sử
dụng
Các giao thức được
thiết bị uỷ quyền sử
dụng
Các giao thức phụ
thuộc mạng
Các giao thức
phụ thuộc
mạng
Hình 7. Kiến trúc của Agent uỷ quyền
Việc sử dụng SNMP đòi hỏi các Agent, cũng như các trạm quản trị, cần phải hỗ trợ một
giao thức chung phù hợp như là UDP và IP. Điều này hạn chế trực tiếp đến việc quản trị
các thiết bị như modem hoặc bộ nối mà không hỗ trợ giao thức TCP/IP phù hợp. Hơn nữa.
có thể có nhiều hệ thống nhỏ (các máy tính cá nhân, workstation, các bộ điều khiển có thể
lập trình ) phải thực hiện TCP/IP để hỗ trợ các ứng dụng của nó nhưng không muốn phải
thêm gánh nặng của SNMP và việc duy trì MIB. Để các thiết bị như vậy không phải thực
hiện SNMP, người ta đã đưa ra khái niệm uỷ quyền.
Hình 7 thể hiện dạng cấu trúc giao thức của một Agent SNMP hoạt động như một
thống kê uỷ quyền cho một hoặc nhiều các thiết bị khác, có nghĩa là một SNMP Agent
hoạt động thay mặt cho các thiết bị được uỷ quyền. Mọi yêu cầu và trả lời giữa một trạm
quản trị và một thiết bị uỷ quyền đều được chuyển thông qua Agent của nó. Agent chuyển
đổi các yêu cầu và trả lời hoặc Trap thành dạng giao thức quản trị phù hợp.
8
I.2 Thông tin quản trị SNMP:
Giống như bất kỳ một hệ quản trị mạng nào, nền tảng của hệ quản trị mạng là phải dựa
trên TCP/IP là một cơ sở dữ liệu bao gồm những thông tin về các phần tử được quản trị.
Trong cả hai môi trường TCP/IP và OSI, cơ sở dữ liệu được xem như là một cơ sở thông
tin quản trị (MIB). Mỗi tài nguyên được quản trị được biểu diễn bởi một đối tượng. MIB
là một tập hợp các cấu trúc của các đối tượng này. Với SNMP, MIB về bản chất là một
cấu trúc cơ sở dữ liệu dưới dạng cây. Mỗi hệ thống (workstation, sever, route, bridge,
v.v..) trong một mạng hoặc liên mạng duy trì một MIB phản ánh các tài nguyên được
quản trị tại hệ thống đó. Một phần tử quản trị mạng có thể kiểm soát các tài nguyên của hệ
thống đó bằng các giá trị của cácđối tượng trong MIB và điều khiển các tài nguyên của hệ
thống đó bằng cách sửa đổi các giá trị này.
Để MIB đáp ứng được các yêu cầu của một hệ quản trị mạng, nó cần đạt được các mục
tiêu sau :
1. Đối tượng hoặc các đối tượng sử dụng để biểu diễn cho một tài nguyên riêng cần
phải như nhau với mỗi hệ thống. Được giải quyết bằng cách định nghĩa các đối
tượng và cấu trúc của các đối tượng đó trong MIB.
2. Cần sử dụng một sơ đồ chung cho việc miêu tả để hỗ trợ khả năng hoạt động liên kết.
Được giải quyết bằng cách định nghĩa cấu trúc thông tin quản trị (Structure of
Management Information – SMI).
I.2.1 ASN.1 (ký hiệu cú pháp trừu tượng)
Ký hiệu cú pháp trừư tượng một (Abstract Syntax Notation One – ASN.1) là một
ngôn ngữ hình thức, rất quan trọng do nhiều nguyên nhân: nó có thể được sử dụng để
định nghĩa các cú pháp trừu tượng cho dữ liệu ứng dụng; nó cũng được dùng để định
nghĩa cấu trúc của ứng dụng và đưa ra các đơn vị dữ liệu giao thức (Protocol Data Unit
– PDU); và dùng để định nghĩa cơ sở thông tin quản trị cho cả hệ quản trị mạng SNMP
lẫn OSI.
Cốt lõi của mô hình SNMP là tập các đối tượng quản trị bởi các Agent và được đọc
ghi bởi các trạm quản trị. Để thực hiện việc trao đổi thông tin giữa các thành phần trong
các hệ thống ứng dụng khác nhau do nhiều nhà cung cấp, cần phải có phương pháp tiêu
9
chuẩn để chuyển đổi, mã hoá các thông tin cho việc truyền tải qua mạng. Do đó cần
phải có ngôn ngữ định nghĩa tiêu chuẩn và quy tắc mã hoá.
Bản chất cú pháp trừu tượng ASN.1 là ngôn ngữ khai báo dữ liệu nguyên thuỷ. Cho
phép người sử dụng định nghĩa các đối tượng nguyên thuỷ và sau đó kết hợp chúng
thành các đối tượng phức tạp hơn.
Các quy ước:
Các giá trị, dạnh và cấu trúc ASN.1 được biểu diễn dưới dạng ký hiệu tương tự như
một ngôn ngữ lập trình. Các quy ước phải được tuân thủ:
Bố cục không quan trọng: một đoạn nhiều khoảng trắng hay nhiều dòng
trống có thể xem như một khoảng trắng đơn.
Các ghi chú được giới hạn bởi các cặp dấu gạch nối (--) tại chỗ bắt đầu
và kết thúc ghi chú.
Các định danh ( tên các giá trị và trường ), các dạng tham chiếu (tên của
các dạng) và tên module bao gồm các ký tự hoa, thường, các số và các
dấu nối.
Một định danh phải bắt đầu bằng chữ thường.
Một dang tham chiếu hoặc tên module bắt đầu bằng chữ hoa.
Một dạng lập sẵn gồm các ký tự hoa. Một dạng lập sẵn là một dạng được
dùng chung được một thông báo chuẩn đưa ra.
Định nghĩa modul:
ASN.1 là một ngôn ngữ dùng để định nghĩa các cấu trúc dữ liệu. Một định nghĩa cấu
trúc là theo một dạng modul được đặt tên và tên của modul có thể được sử dụng để tham
chiếu đến cấu trúc. Các modul có dạng cơ bản :
<modulereference>DEFINITION : :
BEGIN
EXPORT
IMPORT
Danh s¸ch g¸n
END
Modulereference là tên modul.
10
=
Việc gán giá trị và loại có dạng:
<name> : :
=
<description>
Các dạng dữ liệu trừu tượng:
ASN.1 là một ký hiệu cho các dạng dữ liệu trừu tượng và các giá trị của chúng. Một
dạng được coi như là một tập hợp các giá trị. Số lượng các giá trị mà một dạng có thể lấy
được là vô hạn.
Một kiểu ASN.1 được định nghĩa :
NameofType
: : =
TYPE
Một giá trị được định nghĩa:
NameofValueNameofType
: : =
VALUE
Trước hết là tên biến, tên kiểu, sau đó là giá trị ấn định.
Ta có thể chia các dạng theo bốn nhóm:
Các dạng đơn giản (Simple): là các dạng hạt nhân không có thành phần, được định
-
nghĩa bởi mô tả trực tiếp một tập các giá trị của nó, tất cả các dạng khác được xây
dựng từ dạng đơn giản này.
-
Các dạng có cấu trúc (Structured): một dạng có cấu trúc có các thành phần ASN.1
đưa ra bốn dạng có cấu trúc để xây dựng các dạng dữ liệu phức tạp là : SEQUENCE,
SEQUENCE OF, SET, SET OF.
-
Các dạng thẻ (tagged): dạng này nhận giá trị từ các dạng khác trong ASN.1 có một
thẻ liên kết. Đây là một dạng được định nghĩa bằng cách tham chiếu một dạng đơn đã
có với một thẻ tạo nên một dạng mới có cùng cấu trúc với một dạng đã có nhưng
khác biệt với nó.
-
Các dạng khác (other): nhóm này bao gồm các dạng CHOICE và ANY, là dạng dữ
liệu không có thẻ. Dạng CHOICE là một danh sách các dạng đã biết và chỉ một trong
số đó có thể được sử dụng để đưa ra giá trị. Dạng ANY là một dạng bất kỳ từ một
dạng bất kỳ.
Với mọi dạng dữ liệu ASN.1 ngoại trừ CHOICE và ANY đều có thể có thẻ liên kết.
Thẻ bao gồm một tên lớp và số thứ tự thẻ là một số nguyên không âm. Có bốn lớp thẻ:
-
Thẻ thông thường (universal) : sử dụng chung , các dạng độc lập với ứng dụng và
cấu trúc kỹ thuật.
11
-
Thẻ ứng dụng rộng rãi (application – Wide): liên quan đến một ứng dụng nhất định;
chúng được định nghĩa theo các tiêu chuẩn khác.
-
Thẻ ngữ cảnh đặc trưng (contex – Specific): liên quan đến một ứng dụng nhất định
nhưng có khả năng áp dụng trong một ngữ cảnh nhất định.
-
Thẻ riêng (private): dạng được định nghĩa bởi người dùng và không theo bất kỳ
một tiêu chuẩn nào.
Các dạng con:
Các dạng con nhận được từ dạng chủ bằng cách tách một tập các giá trị được định
nghĩa trong một dạng chủ. Một dạng con tự nó có thể là một dạng chủ cho phép tách tiếp
các dạng con khác. Có 6 dạng ký hiệu để thiết kế giá trị của một dạng con:
- Giá trị đơn: là một danh sách khai báo tất cả các giá trị mà dạng con có thể nhận.
- Dạng con bao gồm: sử dụng để định dạng các tập con mới từ các tập con đã có.
- Dải giá trị: chỉ được áp dụng cho dạng INTERGER hoặc REAL. Nó được mô tả
bằng cách đưa ra các giá trị đầu cuối của dải.
- Cho phép chữ cái (permited Alphabet): chỉ áp dụng cho các dạng chuỗi ký tự.
- Giới hạn kích thước (Size Constraint): giới hạn số lượng các mục trong một dạng.
Nó chỉ được áp dụng cho các dạng chuỗi và các dạng Sequence – of và
Set – of.
- Kiểu phụ nội bộ (Innet Subtyping): có thể được áp dụng cho các dạng
Sequence, Sequence – of và set – of.
Các định nghĩa Macro :
Cú pháp Macro cho phép người dùng mở rộng cấu trúc ASN.1 để định nghĩa các
dạng mới và các giá trị của chúng. Một Macro định nghĩa theo dạng sau :
<macro name>MACRO:: =
BEGIN
TYPE NONATION::= <new–type–syntax>
<supporting-productinon>
END
Cấu trúc mã hoá:
Các luật mã hoá cơ bản (Basic Encoding Rules – BER) định nghĩa một hay nhiều
cách để mã hoá bất kỳ giá trị ASN.1 nào như một cấu trúc octet dựa trên cơ sở sử dụng
12
cấu trúc type – length – value (VLE). Tức là bất kỳ một ASN.1 nào cũng có thể được mã
hoá như là một bộ ba các thành phần sau :
- Kiểu ( type): thể hiện kiểu ASN.1 cũng như lớp của dạng đó.
- Độ dài(length): thể hiện độ dài giá trị thực được đưa ra.
- Giá trị (Value): đưa ra giá trị của dạng ASN.1 như là một chuỗi octet.
I.2.2 Cấu trúc thông tin quản trị (SMI).
Cấu trúc thông tin quản trị (SMI) định nghĩa một cơ cấu tổ chức chung trong đó
một MIB có thể được định nghĩa và tạo ra. SMI nhận dạng các kiểu dữ liệu trong MIB và
chỉ rõ các tài nguyên trong MIB được miêu tả và đặt tên như thế nào. SMI duy trì tính đơn
giản và khả năng mở rộng trong MIB. Vì thế MIB chỉ lưu những loại dữ liệu đơn giản:
các vô hướng và các mảng hai chiều các vô hướng. SNMP chỉ có thể truy lục các vô
hướng, gồm các thực thể trong bảng. SMI không cung cấp cách tạo ra các cấu trúc dữ liệu
phức tạp. Các MIB sẽ chứa các loại dữ liệu do nhà cung cấp tạo ra.
Để cung cấp các phương pháp tiêu chuẩn biểu diễn thông tin quản trị, SMI cần làm
các việc:
1. Cung cấp kỹ thuật tiêu chuẩn để định nghĩa cấu trúc MIB đặc biệt.
2. Cung cấp kỹ thuật tiêu chuẩn để định nghĩa các đối tượng đơn lẻ, bao gồm cú
pháp và giá trị mỗi đối tượng.
3. Cung cấp kỹ thuật tiêu chuẩn để mã hoá các giá trị đối tượng.
I.2.2.1 Cấu trúc MIB
Các đối tượng quản trị trong môi trường SNMP được sắp xếp cấu trúc cây. Các đối
tượng lá của cây là đối tượng quản trị thực, mỗi cái trong đó biểu thị cho tài nguyên, sự
hoạt động hoặc các thông tin được quản lý .
Mỗi một đối tượng liên kết trong MIB là một nhận diện của kiểu ASN.1
OBJECTIDENTYPER. Việc nhận dạng phục vụ cho việc đặt tên của đối tượng và cũng
phục vụ cho việc nhận diện cấu trúc của các dạng đối tượng. Nhận diện đối tượng là một
nhận diện duy nhất đối với một loại đối tượng cụ thể. Giá trị của nó bao gồm một dãy các
số nguyên. Tập hợp các đối tượng đã định nghĩa có cấu trúc hình cây là đối tượng dựa vào
chuẩn ASN.1. Hiện tại, hai version của MIB đã được phát triển là MIB-I và MIB-II, trong
đó, MIB-II là sự mở rộng của MIB-I.
13
I.2.2.2 Cú pháp đối tượng:
Mọi đối tượng trong SNMP được định ngiã theo cách thông thường, định nghĩa mô
tả dạng dữ liệu của đối tượng, dải giá trị và dạng mà nó chấp nhận, và quan hệ của nó đến
các đối tượng khác trong MIB. Ký pháp ASN.1 được sử dụng để định nghĩa mỗi đối
tượng đơn lẻ và và cũng để định nghĩa toàn bộ cấu trúc của MIB.
Các kiểu phổ biến:
Trong lớp UNIVERSAL, chỉ có các loại dữ liệu sau được phép sử dụng để định
nghĩa các đối tượng MIB:
-
Interger (UNIVERSAL 2)
-
Octerstring (UNIVERSAL 4)
-
Null (UNIVERSAL 5)
-
Object identifier (UNIVERSAL 6)
-
Sequence, sequence-of (UNIVERSAL 16)
Bốn loại đầu tiên là các khối cơ bản cho các loại khác của đối tượng. Chú ý là
không có loại enumerated.Vì vậy khi một dãy các số nguyên được định nghĩa, nó cần
phải thực hiện với các loại nguyên. Có hai quy ước được kết hợp với sử dụng các dãy số:
-
Giá trị 0 có thể không sử dụng, điều này cho phép bắt các lỗi mã hoá chung.
-
Chỉ sử dụng các giá trị đếm được nguyên. Có thể dùng một giá trị đếm được
đặt tên là other, dùng cho các trường hợp không thể đưa vào các nhãn đếm
được khác.
Nhận diện đối tượng là nhận diện duy nhất của đối tượng, gồm dãy các số nguyên,
đọc thứ tự từ trái sang phải, định nghĩa vị trí của đối tượng trong MIB.
Các kiểu ứng dụng rộng rãi:
Lớp APPLICATION của ASN.1 gồm các kiểu dữ liệu liên quan đến một ứng
dụng cụ thể. Mỗi ứng dụng, gồm cả SNMP, phải định nghĩa các kiểu dữ liệu
APPLICATION của riêng mình. Các kiểu dữ liệu sau phải được định nghĩa.
-
Networksaddress: kiểu này được định nghĩa sử dụng cấu trúc CHOICE cho
phép chọn một dạng địa chỉ từ một trong một số họ giao thức. Hiện nay chỉ định
nghĩa địa chỉ Ipaddress.
-
IpAddress: là địa chỉ 32-bit sử dụng dạng mô tả trong IP.
14
-
Counter: là số nguyên không âm chỉ được tăng không giảm, giá trị lớn nhất là
232 – 1(4.294.967.295). Khi counter đạt giá trị lớn nhất, nó quay lại tăng từ 0.
-
Gauge: là một số nguyên không âm có thể tăng hoặc giảm, giá trị lớn nhất là 232 1. Khi đạt giá trị lớn nhất thì nó dừng lại và khởi tạo lại.
-
Timesticks: là số nguyên không âm đếm số phần trăm của giây từ một vài gốc
kỷ nguyên. Khi một đối tượng được định nghĩa trong MIB sử dụng dạng này, định
nghĩa của dạng đối tượng nhận dạng kỷ nguyên nó tham chiếu.
-
Opaque: kiểu này hỗ trợ khả năng chuyển dữ liệu tuỳ ý. Dữ liệu được mã hoá
thành OCTET STRING để chuyển.
Định nghĩa đối tượng:
Một MIB bao gồm một tập các đối tượng. Mỗi đối tượng có một kiểu và một giá
trị. Kiểu đối tượng (object type) định nghĩa loại đăc biệt của đối tượng quản trị. Một phiên
bản đối tượng (object instance) là một phiên bản riêng của kiểu đối tượng được hạn chế
bởi một giá trị cụ thể. ASN.1 bao gồm một số các kiểu phổ biến được định nghĩa trước
đây và một ngữ pháp để định nghĩa các kiểu mới được lấy từ các kiểu đã có.
Sự lựa chọn cách định nghĩa thích hợp nhất, và đã được sử dụng trong SNMP, là
sử dụng một macro để định nghĩa một tập các kiểu liên quan được sử dụng để định nghĩa
các đối tượng quản trị.Ta có các định nghĩa như sau:
-
Macro defition (định nghĩa marco): định nghĩa các phiên bản marco hợp pháp; mô
tả cú pháp của một tập các loại liên quan.
-
Macro instance (phiên bản macro): một phiên bản được tạo ra từ một định nghĩa
macro cụ thể bằng cách cung cấp các đối số cho các tham số trong định nghĩa
macro; mô tả một dạng cụ thể.
-
Macro instance value (giá trị phiên bản macro): đại diện cho một phần tử cụ thể
bằng một giá trị cụ thể.
Định nghĩa các bảng:
SMI hỗ trợ một dạng cấu trúc dữ liệu: bảng hai chiều đơn giản, với các thực thể là
các giá trị vô hướng. Để định nghĩa các bảng ta sử dụng loại sequence và sequenceof của ASN.1 và indexPart của macro OBJECT-TYPE.
15
Xét kiểu đối tượng tcpconnTable có nhận diện đối tượng là 1.3.1.2.1.6.13.Đối
tượng này bao gồm các thông tin về các kết nối TCP đang duy trì tương ứng với các thực
thể bị quản trị.Với mỗi kết nối như thế, các thông tin sau được lưu trữ vào bảng.
-
state:trạng thái kết nối của TCP (giá trị chỉ mục này có thể là một trong 11
trạng thái TCP đã định nghĩa theo chuẩn phản ánh kết nối, giá trị được thiết lập và
thay đổi bởi phần tử TCP. Hơn nữa , chỉ mục có thể mang giá trị deleteTCP- đây là
giá trị thiết lập bởi trạm quản trị. Khi giá trị này được lập, phần tử huỷ bỏ khối điều
khiển giao vận do cậy huỷ bỏ kết nối, điều này tương tự như một giao vận chuyển
về trạng thái CLOSE).
-
Local address: địa chỉ IP của một đầu cuối của kết nối.
-
Local port: cổng TCP của một đầu cuối của kết nối.
-
Remote address: địa chỉ IP của một đầu cuối kia của kết nối
-
Remote port: cổng TCP của một đầu cuối kia của kết nối.
Chỉ có 5 mục này là có thể nhìn thấy trong bảng tcpConnTable. Điều này minh
hoạ rằng SNMP quản trị mạng là đơn giản: chỉ có một tập con hữu hạn của thông tin trên
một phần tử được quản lý được chứa trong đối tượng được quản lý tương ứng.
I.2.2.3 Mã hoá
Các đối tượng trong MIB được mã hoá sử dụng các luật mã hoá cơ bản (Basic
Encoding Rules – BER) được kết hợp với ASN.1. Tuy không phải là dạng mã hoá ngắn
gọn và hiệu quả nhất song BER là một sơ đồ mã hoá tiêu chuẩn được sử dụng rộng rãi.
I.2.3 Các cơ sở thông tin quản trị tiêu chuẩn (MIB)
I.2.3.1 Sự phát triển của MIB-I, MIB-II (groups)
MIB-II là phiên bản thứ hai của MIB-I (theo RFC1156). MIB-II là siêu tập của
MIB, có một vài đối tượng và nhóm bổ sung. Để gộp một đối tượng vào phiên bản mới,
người thiết kế sử dụng theo tiêu chuẩn sau:
1. Một đối tượng phải là cần thiết cho quản lý lỗi hoặc cấu hình.
2. Hạn chế các đối tượng điều khiển yếu (yếu có nghĩa là sự xáo trộn giữa chúng
có thể gây ra sự thiệt hại). Tiêu chí này phản ánh thực tế là các giao thức quản
trị hiện tại chưa an toàn thích đáng để thực hiện việc điều khiển mạnh hơn.
3. Yêu cầu phải có hiệu quả và sử dụng thiết thực.
16
4. Khi xây dựng MIB-I số lượng các đối tượng đựơc hạn chế khoảng 100 để cho
các nhà sản xuất cung cấp phần mềm của họ. Trong MIB-II, giới hạn này bị
loại bỏ.
5. Không được gộp các đối tượng có thể nhận từ các đối tượng khác trong MIB để
tránh dư thừa biến .
6. Loại bỏ các đối tượng thực hiện đặc biệt.
I.2.3.2
Các nhóm con trong MIB-II:
Vì MIB-II chỉ chứa các đối tượng mà người thiết kế xem như và cần thiết nên
không có đối tượng nào là tuỳ ý. Nhóm MIB-II được chia thành các nhóm theo bảng 2.
Nhóm hệ thống (system): nhóm này cung cấp các thông tin chung về hệ thống
được quản trị. Cho phép người quản trị biết chính xác thiết bị nào được gọi, thông tin về
phần cứng, phần mềm và vị trí của nó.
Nhóm giao tiếp (interfaces): bao gồm những thông tin chung về giao tiếp vật lý
của phần tử: thông tin cấu hình, thống kê các sự kiện xảy ra tại mỗi giao tiếp, trạng thái
giao tiếp và thống kê các kiểu lỗi.
Nhóm biến đổi địa chỉ (address translation): bao gồm một bảng đơn.
Mỗi hàng trong bảng tương ứng với một trong những giao tiếp vật lý của hệ thống.
Mỗi hàng cung cấp một ánh xạ từ địa chỉ vật lý. Địa chỉ mạng là địa chỉ IP cho hệ thống
tại giao tiếp đó. Địa chỉ vật lý phụ thuộc vào bản chất của mạng con .
Nhóm này bị thay thế trong MIB-II, chỉ được đưa vào để tương thích với nut MIBI. Trong MIB-II thông tin biến đổi địa chỉ được cung cấp trong mỗi giao thức mạng. Có
hai lý do để thay đổi:
Cần hỗ trợ các node đa giao thức. Khi một nút hỗ trợ nhiều giao thức mức mạng thì
nhiều địa chỉ mạng sẽ liên kế với mỗi giao tiếp vật lý.
Cần cho ánh xạ hai chiều: bảng địa chỉ trong nhóm biến đổi địa chỉ được định nghĩa
chỉ cho phép ánh xạ từ địa chỉ mạng tới địa chỉ vật lý. Một vài giao thức định tuyến
hệ thống yêu cầu ánh xạ từ địa chỉ vật lý đến địa chỉ mạng.
17
Nhóm
Số lớp
Mô tả
đối tượng
System
7
Interface
23
AT
3
IP
42
ICMP
26
TCP
19
UDP
6
EGP
20
Transmission
0
SNMP
29
Các thông tin chung về hệ thống
Thông tin về một trong các giao tiếp từ hệ thống đến một
mạng con
Mô tả bảng địa chỉ giao vận để ánh xạ địa chỉ internet vào
mạng con.
Thông tin liên quan đến việc thực hiện và các kinh nghiệm về
IP trên hệ thống.
Thông tin liên quan đến việc thực hiện và các kinh nghiệm về
ICMP trên hệ thống.
Thông tin liên quan đến việc thực hiện và các kinh nghiệm về
TCP trên hệ thống.
Thông tin liên quan đến việc thực hiện và các kinh nghiệm về
UDP trên hệ thống.
Thông tin liên quan đến việc thực hiện và các kinh nghiệm về
EGP trên hệ thống.
Thông tin về các sơ đồ giao vận và các giao thức truy cập tại
mỗi giao diện hệ thống.
Thông tin liên quan đến việc thực hiện và các kinh nghiệm về
SNMP trên hệ thống.
Bảng 2: Các nhóm con trong MIB-II
Nhóm IP: bao gồm những thông tin liên quan đến việc điều hành và thực hiện của
IP tại một node. Vì IP được thực hiện cả trên hệ thống đầu cuối (host) và các hệ thống
trung gian (bộ định tuyến) nên không phải tất cả các đối tượng trong nhóm này là thích
hợp với bất kỳ một hệ thống nào được đưa ra. Những đối tượng đưa ra không phù hợp có
giá trị nill. Nhóm IP chứa một vài bộ đếm cơ bản về lưu lượng truyền thông vào/ra của
lớp IP.
18
Nhóm ICMP (Internet Control Message Protocol – giao thức kiểm soát thông báo
Internet): ICMP là một phần tích hợp của bộ giao thức SNMP, nó có yêu cầu phải kết hợp
với IP.ICMP có ý nghĩa trong việc chuyển các thông báo từ các bộ định tuyến và các máy
chủ khác tới một máy chủ. Thực chất, nó cung cấp các thông tin phản hồi về các vấn đề
trong môi trường truyền thông. Nhóm này bao gồm những thông tin liên quan đến việc
thực hiện và điều hành ICMP tại một nút. Nhóm này chỉ bao gồm các bộ đếm những dạng
khác nhau của thông báo ICMP được gửi đi và nhận về.
Nhóm TCP:bao gồm những thông tin liên quan đến việc thực hiện và điều hành
của TCP tại một nút và chỉ có một bảng tcpConnTable.Nó cho phép một ứng dụng
quản trị kiểm tra một vài giá trị cấu hình TCP, như giới hạn tối đa các kết nối xảy ra đồng
thời mà hệ thống có thể điều khiển.
Nhóm UDP: gồm những thông tin liên quan đến việc thực hiện và điều hành của
UDP tại một nut và thông tin về các gói gửi và nhận, nhóm UDP bao gồm các bảng
udpTable.
Trong bảng này bao gồm các điểm cuối UDP của phần tử trên đó một ứng dụng cục bộ
chấp nhận các gói dữ liệu. Với mỗi người dùng UDP, các bảng bao gồm địa chỉ IP và các
cổng UDP với mỗi người dùng.
Nhóm EGP (External Gateway Protocol – giao thức cổng bên ngoài): bao gồm
những thông tin liên quan đến việc thực hiện và điều hành của EGP tại mỗi nút và bảng
egpNeighAddr là địa chỉ IP của một cổng lân cận. Nó cho phép một router trao đổi với
một router khác ở bên ngoài hệ thống của chúng.
Nhóm transmission (giao vận): nhóm này bao gồm các đối tượng cung cấp chi tiết
về truyền thông trung bình cho mỗi giao tiếp trong hệ thống. Nhóm giao vận gồm những
thông tin chung mà cung cấp cho tất cả các giao tiếp, những giao tiếp đặc biệt này chứa
các thông tin liên quan dến các loại cụ thể của mạng con.
Nhóm SNMP: là một nhóm chứa các đối tượng về SNMP. Nhóm SNMP được
định nghĩa như là một phần của MIB-II chứa các thông tin liên quan đến việc thực hiện và
hoạt động của SNMP. Một vài đối tượng được định nghĩa có giá trị là 0 trong đó các thực
hiện SNMP chỉ hỗ trợ các hàm SNMP tại trạm quản trị hoặc tại Agent. Hầu hết các đối
19
tượng là các bộ đếm chỉ đọc ngoại trừ snmpEnableAuthenTraps có thể gán bởi một
trạm quản trị.
I.3 Giao thức quản trị mạng đơn giản (SNMP)
I.3.1 Các toán tử và nguyên lý:
Các toán tử:
SNMP chỉ hỗ trợ các toán tử là sửa đổi và duyệt các biến. Đặc biệt, ba toán tử sau
có thể được thực hiện trên các đối tượng vô hướng:
-
Get: một trạm quản trị nhận một giá trị của đối tượng vô hướng từ một trạm bị quản
trị.
-
Set : một trạm quản trị cập nhập một giá trị của đối tượng vô hướng cho một trạm bị
quản trị.
-
Trap: một trạm quản trị gửi một giá trị của đối tượng vô hướng không được yêu cầu
tới một trạm quản trị.
Các toán tử này không có khả năng thay đổi cấu trúc của một MIB bằng cách thêm
hoặc bớt các phiên bản đối tượng (thêm hoặc bớt một dòng trong bảng) nhưng có khả
năng đưa ra các lệnh để thực hiện các hoạt động. Ngoài ra chúng chỉ cung cấp các khả
năng truy cập vào các đối tượng “lá” trong cây nhận dạng đối tượng. Các giới hạn này
làm đơn giản việc thực hiện của SNMP song cũng giới hạn khả năng của hệ thống quản
trị mạng.
Truyền thông và tên truyền thông:
Quản trị mạng có thể xem như là một ứng dụng phân tán, nó yêu cầu sự tương tác
của một số phần tử ứng dụng mà được một giao thức ứng dụng hỗ trợ. Trong SNMP, các
phần tử ứng dụng là các ứng dụng trạm quản trị và các ứng dụng khác mà sử dụng giao
thức được hỗ trợ SNMP. Ta có thể coi SNMP là một liên hệ giữa một Agent SNMP và
một tập các quản trị SNMP được định nghĩa cục bộ tại trạm bị quản trị do vậy có thể có
nhiều Agent cùng sử dụng một tên. Nên trạm quản trị phải duy trì dấu vết của tên truyền
thông hoặc tên liên quan với mỗi Agent mà nó muốn truy cập. Mỗi trạm quản trị điều
khiển một MIB cục bộ của mình và phải có khả năng điều khiển việc sử dụng MIB đó của
một số các trạm điều khiển. Có ba hướng cho việc điều khiển này:
20
- Dịch vụ xác nhận: trạm bị quản trị muốn giới hạn việc truy cập vào MIB với các trạm
quản trị cho phép. Trong SNMP, nó khẳng định rằng thông báo là từ nơi nó được
yêu cầu. Mọi thông báo từ một trạm quản trị đến một Agent bao gồm cả tên truyền
thông. Tên này được khoá mã và thông báo được coi là xác nhận khi người gửi biết
khoá mã.
- Chính sách truy cập: trạm bị quản trị có thể đưa ra quyền truy cập khác nhau cho các
trạm quản trị khác nhau. Bằng cách định nghĩa một truyền thông, một Agent giới
hạn việc truy cập vào MIB của nó với một tập các trạm quản trị. Bằng cách dùng
nhiều đường truyền thông, một Agent có thể cung cấp nhiều dạng truy cập MIB cho
trạm quản trị khác nhau.
- Dịch vụ uỷ quyền: một trạm quản trị có thể hoạt động như một uỷ quyền cho các trạm
bị quản trị khác. Điều này có thể yêu cầu dịch vụ xác nhận hoặc chính sách truy cập
cho các trạm bị quản trị khác trong hệ thống uỷ quyền.
Phiên bản nhận dạng:
Mọi đối tượng trong MIB có một nhận dạng kèm theo, được định nghĩa bởi vị trí
của đối tượng đó trong cấu trúc hình cây của MIB. Khi thực hiện một truy cập vào một
MIB, qua SNMP, nó là một phiên bản cụ thể của một đối tượng mà nó muốn.
- Các đối tượng cột (colummar Object): với các đối tượng xuất hiện dưới dạng bảng, ta
xem như là các đối tượng cột. Các đối tượng cột một mình nó không đủ để nhận dạng
đối tượng nên cần có một phiên bản của mỗi đối tượng và một tập các giá trị của các
đối tượng INDEX sẽ mô tả một đối tượng vô hướng nhất định trong một hàng nhất
định trong bảng.
- Các đối tượng hàng (row Objects): Vì đây không phải là các đối tượng “lá” nên
không có nhận dạng phiên bản và SNMP không truy cập được. Trong định nghĩa MIB
về các đối tượng này, đặc tính ACCESS của chúng được gán là “non-accessible”.
- Các đối tượng vô hướng (scalar Objects): để phân biệt sự khác nhau giữa dạng đối
tượng và phiên bản đối tượng, SNMP quy định nhận dạng phiên bản của đối tượng vô
hướng theo bảng gồm nhận dạng của nó kết hợp với 0.
21
Trật tự theo thứ tự:
Một nhận dạng đối tượng là một chuỗi các số nguyên thể hiện trật tự hoặc cấu trúc
nhánh cây của các đối tượng trong MIB, vì vậy chúng thể hiện một trật tự theo thứ tự.
Một trật tự của các nhận dạng đối tượng và phiên bản đối tượng là rất quan trọng vì trạm
quản trị mạng có thể không biết chính xác cách sắp xếp của MIB mà một Agent đưa cho
nó mà cần một cách để tìm kiếm và truy cập các đối tượng mà không cần chỉ rõ tên đối
tượng.
I.3.2 Mô tả giao thức
I.3.2.1 Các dạng SNMP:
Trong SNMP, thông tin trao đổi giữa một trạm quản trị và một Agent theo dạng
thông báo SNMP. Mỗi thông báo bao gồm số hiệu phiên bản thể hiện phiên bản SNMP,
một tên truyền thông và một trong năm dạng đơn vị dữ liệu giao thức (PDU) là SNMP
message,
GetrequestPDU,GetResponsePDU,Trap-
PDU,variablebindings và định nghĩa các trường theo bảng 3.
Truyền một Message SNMP:
Để truyền một trong năm dạng PDU cho một phần tử SNMP khác, phần tử SNMP
phải thực hiện các hoạt động sau:
- Sử dụng ASN.1 để tạo ra PDU.
- PDU này được chuyển sang dịch vụ xác nhận cùng với các địa chỉ nguồn và đích của
truyền thông và tên một truyền thông. Dịch vụ xác nhận thực hiện những biến đổi
theo yêu cầu sau đó mã hoá hoặc thêm mã xác nhận và trả lại kết quả.
- Phần tử giao thức tạo ra một thông báo, thêm vào trường số hiệu phiên bản, tên
truyền thông vào kết quả của bước trên.
- Đối tượng ASN.1 mới này sau đó được mã hoá sử dụng BER và gửi đến dịch vụ
giao vận.
Nhận một Message SNMP:
Khi nhận một thông báo từ một phần tử SNMP khác, một phần tử SNMP phải
thực hiện các hoạt động sau:
- Kiểm tra cú pháp cơ bản của thông báo và loại bỏ thôngbáo nếu cú pháp sai
- Kiểm tra số hiệu phiên bản và loại bỏ thông báo nếu không tương hợp.
22
- Phần tử giao thức chuyển tên người sử dụng, phần PDU của thông báo và các địa chỉ
nguồn và đích của thông báo tới dịch vụ xác nhận.
Nễu xác nhận bị sai, dịch vụ xác nhận thông báo cho phần tử giao thức SNMP- nơi
tạo ra Trap, và loại bỏ thông báo.
Nếu xác nhận hoàn thành, dịch vụ xác nhận một PDU theo dạng của một đối tượng
ASN.1.
- Phần tử giao thức kiểm tra cú pháp cơ bản của thông báo và loại bỏ thôngbáo nếu cú
pháp sai. Ngựơc lại, dung truyền thông theo tên, chính sách truy cập SNMP tương
ứng sẽ được chọn và PDU được xử lý tiếp theo.
Trong SNMP, chỉ có các đối tượng “lá” trong cây nhận dạng đối tượng- các đối
tượng vô hướng –là có thể truy cập. Tuy nhiên SNMP có khả năng nhóm các toán tử cùng
dạng (get,set,trap) và một thông báo, do vậy nếu một trạm quản trị muúon nhận các giá trị
của tất cả các đối tượng trong một nhóm nhất định tại một Agent nhất định, nó có thể
dùng một thông báo đơn, yêu cầu tất cả các giá trị và nhận lại một đáp ứng đơn các liệt kê
tất cả các giá trị. Kỹ thuật này có thể làm giảm rất nhiều tải trọng truyền thông của quản
trị mạng. Để thực hiện điều đó, các PDU của SNMP đều có trường variable-bindings.
Trường này bao gồm một thứ tự các tham chiếu đến các phiên bản đối tượng cùng với giá
trị của các đối tượng đó.
Trường
Mô tả
Version
Phiên bản SNMP
Một cặp của một SNMP Agent với một vài tập tuỳ ý các thành
Community
phần ứng dụng SNMP (tên của truyền thông có nhiệm vụ như
mã khoá để xác nhận thông báo SNMP).
Được dùng để phân biệt các yêu cầu còn lại bằng cách gán mỗi
Request-id
yêu cầu một nhận dạng nhất định.
Được sử dụng để thể hiện rằng một ngoại lệ xuất hiện khi xử lý
Error-status
một yêu cầu. Có các giá trị noerror(0), toobig(1),
noSuchname(2), badvalue(3), readonly(4), genErr(5).
23
Khi error-status khác 0, có thể đưa ra thông tin thêm bằng cách
thể hiện biến nào trong danh sách gây ra ngoại lệ (một biến là
Error-index
một phiên bản của đối tượng bị quản trị).
Variablebindings
Một danh sách các tên biến và các giá trị đáp ứng.
Enterprise
Dạng của đối tượng sinh ra Trap dựa trên cơ sở sysobjectID.
Agent-addr
Địa chỉ của đối tượng sinh ra Trap.
Dạng Trap chung; có giá trị là coldStart(0), warmStart(1),
linkDown(2), linkup(3), authentication- Failure(4),
Generic-Trap
egpNeighborLoss(5), enterprice-Specific(6).
Mã Trap nhất định.
Specific-Trap
Khoảng thời gian từ kúc khởi tạo (khởi tạo lại ) lần cuối của
Time-Stamp
phần tử mạng đến lúc tạo ra Trap; chứa giá trị của sysTime.
Bảng 3: Các trường của thông báo SNMP.
I.3.2.2 GetRequest PDU:
Một phần tử SNMP đưa ra GetRequest PDU thay mặt cho một ứng dụng trạm
quản trị. Phần tử bao gồm các trường hợp sau trong PDU:
-Dạng PDU: thể hiện một GetRequest PDU.
-
Request-id: phần tửgửi gán các số như vậy để người dùng mỗi yêu cầu gửi đi
đến cùng một Agent là xác định duy nhất. Nó cho phép ứng dụng SNMP liên kết các
đáp ứng truyền đến với yêu cầu còn lại, và cũng cho phép một phần SNMP loại bỏ các
PDU kép được sinh ra do dịch vụ giao vận không tin cậy.
-
Variablebindings (các liên kết biến): liệt kê các phiên bản đối tượng có giá
trị được yêu cầu.
Phần
tử
SNMP
nhận
đáp
ứng
một
GetRequestPDU
bằng
một
GetResponsePDU có chứa cùng một request-id. Toán tử GetRequest có tính
hạt nhân: hoặc lấy được tất cả các giá trị hoặc không lấy bất cứ giá trị nào. Nếu phần tử
đáp ứng có khả năng cung cấp tất cả các giá trị của các biến được liệt kê trong danh sách
biến liên kết, thì GetResponsePDU bao gồm trường các liên kết biến với giá trị được
24
cấp cho mỗi biến. Nếu ít nhất một biến không thể cấp giá trị thì sẽ không có giá trị nào
được trả về. Các điều khiển sau có thể xảy ra:
-
Một đối tượng được đặt tên trong danh sách biến có thể không phù hợp với bất kỳ
nhận dạng đối tượng nào trong MIB tương ứng, hoặc trên đối tượng là một dạng gộp
mà không có giá trị phiên bản tương ứng. Trong trường hợp khác, phần tử đáp ứng
trả về một GetResponsePDU có một error-status là noSuchName và một giá trị
trong trường error-index là thứ tự của đối tượng bị lỗi trong trường liên kết biến.
-
Phần tử đáp ứng có khả năng cấp các giá trị cho tất cả các biến trong danh sách
nhưng kích thước của GetResponsePDU có thể vượt quá một giới hạn cục bộ.
Trong trường hợp này, phần tử đáp ứng trả về một GetResponsePDU có errorstatus là toobig.
-
Phần tử đáp ứng có thể không có khả năng cung cấp một giá trị cho ít nhất một trong
các đối tượng vì một vài nguyên nhân. Khi đó phần tử đáp ứng trả về một
GetRequestPDU với một lỗi error-status là getErr và một giá trị trong
trường error-index là thứ tự của đối tượng vị lỗi trong trường liên kết biến.
I.3.2.3 GetNextRequestPDU:
GetNextRequestPDU hầu như giống với GetRequestPDU cả về hình thức
PDU lẫn dạng. Chỉ khác nhau như sau: trong GetRequestPDU,mỗi biến trong danh
sách biến liên kết tham chiếu đến một phiên bản đối tượng cần trả giá trị còn trong
GetNextRequestPDU,với một biến, việc đáp ứng sẽ trả về một giá trị của một phiên
bản đối tượng mà là tiếp theo trong trật tự thứ tự (chú ý rằng đây là phiên bản đối tượng
tiếp theo chứ không phải đối tượng tiếp theo). Điều này cho phép một trạm quản trị mạng
khảo sát cấu trúc của một MIB theo cách động là một cơ chế có hiệu quả trong việc tìm
kiếm trong một bảng mà có tất cả các mục là không biết.
-Gọi một giá trị đối tượng đơn: Khi một trạm quản trị mạng muốn nhận các giá trị của
tất cả các đối tượng từ một Agent, nó có thể gửi một GetRequestPDU với một danh
sách biến liên kết. Tuy nhiên nếu có bất cứ một đối tượng nào trong danh sách đó không
thể trả về một GetResponsePDU
được trả về với một thống kê lỗi là
noSuchname.Như vậy để chắc chắn nhận được tất cả cá giá trị có thể với
GetRequestPDU,trạm quản trị mạng phải gửi lần lượt các GetRequestPDU cho
25