Giá trị Trap

Một phần của tài liệu (LUẬN VĂN THẠC SĨ) Nghiên cứu giải pháp quản trị hệ thống và ứng dụng trên công nghệ internet , intranet (Trang 43)

DatagramReceived = 30

Đối với PDU tuỳ từng lệnh mà có các trƣờng khác nhau. Và để tạo thành một gói tin SNMP, nhƣ đã trình bày ở trên, nó còn đƣợc gắn thêm trƣờng Version và Community.

Gói tin SNMP này sẽ đƣợc đóng gói thành gói tin UDP rồi thành Frame trƣớc khi truyền đi, nó sẽ có dạng nhƣ hình 2.11.

Kích cỡ gói tin tối đa phụ thuộc vào kích cỡ của gói tin UDP, còn kích cỡ gói tin UDP tối thiểu chứa gói tin SNMP sẽ phải là 484 octet ( 1 octet = 8 bit = 1 byte).

2.3.4. Nguyên lý trao đổi thông tin

Nhƣ đã nói, SNMP hoạt động dựa trên mô hình Manager/Agent, trong đó Manager chính là hệ thống quản trị NMS và Agent đại diện cho phía các thành phần bị quản trị. Giao thức SNMP làm nhiệm vụ trao đổi thông tin giữa Manager và Agent. Giao thức SNMP sử dụng UDP để truyền thông tin giữa các Manager và Agent. UDP là giao thức không hƣớng kết nối, tức là sẽ không có kết nối nào đƣợc thiết lập giữa Manager và Agent trƣớc khi chúng trao đổi dữ liệu cho nhau. Vấn đề này đã từng đƣợc coi là dấu hiệu không tin cậy khi truyền tin với giao thức UDP. Tuy nhiên, với các ứng dụng của SNMP điều này đã hoàn toàn đƣợc khắc phục. Khi Manager gửi một gói tin UDP đến Agent, nó sẽ đợi trả lời (thời gian đợi này tuỳ thuộc vào việc cấu hình). Nếu hết thời gian mà Manager vẫn không nhận đƣợc trả lời thì nó sẽ gửi lại gói tin đó (số lần gửi lại này cũng tuỳ thuộc vào việc cấu hình). Trƣờng hợp Agent lỗi, sau khi khôi phục nó sẽ tự động gửi lại tín hiệu

trap thông báo cho Manager. Tất nhiên cũng có thể có trƣờng hợp xấu nhất là khi gói tin mà NMS gửi không thể đến đƣợc Agent và trap mà Agent gửi

cũng không đến đƣợc NMS. Tuy nhiên, thực tiễn đã cho thấy là SNMP hoạt động hiệu quả và ảnh hƣởng không nhiều đến hiệu suất của mạng.

Trong mô hình truyền thông TCP/IP, mô hình hoạt động của SNMP đƣợc thể hiện nhƣ hình 2.12.

Trong đó:

Các cảnh báo (TRAP) gửi tới cổng 162 trên NMS.

Các yêu cầu (GET REQUEST, GETNEXT REQUEST, SET REQUEST) gửi từ NMS đến Agent trên cổng 161. Trả lời yêu cầu (GET RESPONSE) gửi từ Agent đến cổng

161 của Manager.

Khi Manager hoặc Agent muốn thực hiện một chức năng của SNMP thì nó sẽ thực hiện tuần tự nhƣ sau:

- Tầng ứng dụng: đây là tầng đầu tiên sẽ phải xác định cần phải làm gì, tức là tầng ứng dụng SNMP sẽ cho phép ngƣời dùng cuối thực hiện các dịch vụ mà nó cung cấp. Ví dụ nhƣ thao tác yêu cầu thông tin về trạng thái của một giao tiếp mạng trên một bộ định tuyến. - Tầng UDP: là tầng tiếp theo cho phép hai trạm làm việc có thể

truyền thông với nhau. Định dạng HEADER của gói tin UDP sẽ chứa số hiệu cổng dịch vụ đích mà gói tin sẽ đƣợc gửi đến đó.

SNMP Application

UDP

IP

Medium Access Control

Network Access Protocol

SNMP Application

UDP

IP

Medium Access Control

Manager Agent

- Tầng IP: truyền gói tin SNMP đến đích bằng việc gán địa chỉ IP đích.

- Tầng MAC: là tầng cuối cùng thực hiện truyền vật lý gói tin đến đích.

Và quá trình nhận gói tin sẽ đƣợc thực hiện ngƣợc lại, bắt đầu từ tầng MAC đến tầng ứng dụng.

Nhƣ đã nói trên, SNMP sử dụng cơ chế GET/SET để quản lý mạng. Manager sẽ nhận thông tin (GET) từ các phần tử trong mạng và tuỳ theo thông tin để điều khiển bằng cách điền thông tin (SET) vào các biến điều khiển trên các Agent. Khi cần thu thập thông tin, Manager sẽ gửi bản tin PDU dạng GET. Agent sẽ xử lý PDU và gửi trả lại những thông tin yêu cầu. Khi cần thay đổi giá trị những biến MIB, Manager gửi bản tin với PDU dạng SET với định danh của đối tƣợng và giá trị biến sẽ đƣợc thay đổi.

Nguyên lý trao đổi thông tin trong SNMP khá đơn giản: Agent sẽ lắng nghe tín hiệu trên cổng 161, số hiệu này do Agent đăng ký với hệ điều hành. Khi Manager khởi tạo việc truyền tin, ngoài việc nó sử dụng số hiệu cổng 161 đã đăng ký với hệ điều hành nó có thể đƣợc hệ điều hành cung cấp một số hiệu cổng dịch vụ động (khoảng từ 1024 - 65535). Do đó trả lời yêu cầu từ Agent sẽ đƣợc gửi tới số hiệu cổng động này trên Manager. Sau phiên giao dịch, số hiệu cổng động này sẽ đƣợc hệ điều hành giải phóng. Riêng tín hiệu trap do Agent phát đi và gửi tới Manager nên Manager đăng ký lắng nghe trên một cổng cố định số hiệu là 162. Tức là khi có sự cố Agent sẽ gửi cảnh báo trap từ cổng 161 đến cổng 162 của Manager.

2.3.5. Các phiên bản SNMP

SNMP đã phát triển tới phiên bản 3 nhƣng SNMPv1 và SNMPv2 đƣợc sử dụng phổ biến, trong đó SNMPv2 chiếm ƣu thế hơn và đƣợc cài đặt ở hầu hết trên các phần mềm quản trị mạng hiện nay. Để hiểu rõ hơn tại sao SNMPv2 lại đƣợc sử dụng phổ biến, trƣớc hết ta xem xét sơ lƣợc từng phiên bản.

- SNMPv1: là phiên bản đầu tiên của giao thức SNMP, nó đƣợc định nghĩa trong RFC 1157. Đây là 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. Hoạt động của SNMPv1 dựa trên ba tên định danh: read-only, read-writetrap. Các tên định danh này đƣợc coi nhƣ các mật khẩu (ở dạng xâu ký tự

rõ), chúng cho phép bất kỳ ứng dụng nào dựa trên SNMP cũng có thể truy nhập đƣợc các thông tin của đối tƣợng đƣợc quản lý. Các thao tác trao đổi thông tin dựa trên tập lệnh cơ bản.

- SNMPv2 hay SNMPv2c: là phiên bản thứ 2 của giao thức SNMP. Trong đó, SNMPv2c dựa trên các chuỗi “community”. Nó đƣợc định nghĩa trong RFC 1905, 1906, 1907 và đây chỉ là bản thử nghiệm của IETF. Mặc dù SNMPv2 là phiên bản thử nghiệm nhƣng nhiều nhà sản xuất đã đƣa nó vào thực nghiệm. SNMPv2 bắt nguồn từ hai phát kiến vào năm 1992: một là Secure SNMP và một là SMP (Simple Management Protocol). Secure SNMP có những đặc tính an toàn mà SNMPv1 không có, nhƣng nó lại sử dụng định dạng gói tin không tƣơng thích với SNMPv1. So với SNMPv1 thì SNMPv2 cung cấp nhiều cách thức linh hoạt hơn trong vấn đề quản trị (kích thƣớc dữ liệu truyền đi và môi trƣờng mà nó có thể vận hành).

- SNMPv3: là phiên bản thứ 3 của giao thức SNMP, là một phiên bản chuẩn của IETF. Nó đƣợc định nghĩa trong rất nhiều tài liệu RFC, nhƣ RFC 1905, 1906, 1907, 2571, 2572, 2573, 2574 và 2575. SNMPv3 hỗ trợ tất cả các thao tác và định nghĩa trong phiên bản SNMPv1 và SNMPv2. Trong phiên bản này, IETF đã đƣa vào khả năng hỗ trợ an ninh bảo mật bằng cách hỗ trợ các loại truyền thông riêng tƣ (mã hoá) và có xác nhận giữa các thực thể. SNMPv3 cũng giải quyết tiếp một số tồn tại kéo dài liên quan đến việc triển khai nâng cấp của SNMP để quản trị cấu hình, tính toán và quản trị lỗi. Tuy nhiên, SNMPv3 chƣa phải là chuẩn đầy đủ, do vậy chỉ có một vài nhà sản xuất có sản phẩm hỗ trợ SNMPv3.

SNMP tuy cung cấp nhiều tiện ích nhƣng cũng có những hạn chế đáng kể. Số lƣợng kết nối đồng thời tới Agent có thể không đƣợc kiểm soát. Cơ chế bảo mật của SNMPv1 không có độ an toàn cao còn SNMPv3 chƣa phải là chuẩn đầy đủ mà SNMPv2 giải quyết đƣợc các hạn chế mà SNMPv1 mắc phải đồng thời nó là một chuẩn đầy đủ. Chính vì vậy SNMPv2 đƣợc các nhà sản xuất thiết bị mạng sử dụng rộng rãi nhất.

- Trong một hệ thống, số Agent luôn nhiều hơn số NMS nên các hoạt động của Agent luôn cần hạn chế càng nhỏ càng tốt. Các hoạt động của Agent gây tốn tài nguyên của thành phần bị quản trị do đó chúng đƣợc chuyển lên phía NMS nếu có thể. SNMPv2 có mục đích tập trung công tác quản trị về phía Manager, giảm bớt các hoạt động của Agent.

- SNMPv2 thừa kế trên SSNMP (SecureSNMP). SSNMP là giao thức đặt ra để nâng cao độ an ninh của SNMP. Trong SNMPv2 việc mã hoá DES là tuỳ chọn thay vì bắt buộc nhƣ SSNMP. Tuỳ chọn DES giúp cho ngƣời dùng đƣợc thuận tiện khi yêu cầu an ninh không cao, có thể đẩy mạnh tốc độ quản trị, không lãng phí tài nguyên khi mã hoá các thông tin đơn giản. Bên cạnh đó, SSNMP bắt buộc các gói tin phải đến NMS với trình tự rõ ràng. SNMPv2 cho phép các gói tin đến theo trình tự tuỳ ý.

- Trong SNMPv1 tập lệnh thao tác đơn giản, truyền theo giao thức không định hƣớng nên sẽ dẫn tới truyền nhiều gói tin thừa, ảnh hƣởng đến hiệu năng hoạt động của mạng. Các thiết bị mạng càng nhiều, số lƣợng gói tin thừa càng lớn và hiệu năng càng bị ảnh hƣởng đáng kể. Kết quả tất yếu là thời gian hồi đáp lâu hơn và băng thông mạng giảm xuống. SNMPv2 cho phép nhiều lựa chọn gửi bản tin giúp cho Agent kết nối có hiệu quả với Manager, nhƣ là:

+ SNMPv2 đƣa ra cơ chế khoá truy cập Manager đang kết nối với Agent, các thiết bị khác không thể kết nối tới.

+ Các bƣớc truy nhập vào MIB đã đƣợc đơn giản hoá hơn so với SNMPv1. Tuy đơn giản hơn nhƣng các bƣớc thao tác này đã đƣợc coi là chuẩn hoá cho việc quản trị các bảng tìm đƣờng và các biến SNMP khác.

+ SNMPv2 cho phép NMS có thể đồng thời thu thập một loạt giá trị của các biến chỉ qua một bản tin GET. Lệnh GET-BULK giúp thực hiện việc này. Thực chất của GET-BULK là gửi liên tiếp nhiều lệnh GET-NEXT REQUEST giúp cho tăng tốc độ đáng kể so với SNMPv1. Bên cạnh đó, với những Agent không thể trả về chỉ 1 biến, lệnh GET-BULK cho phép thu thập thông tin hiệu quả hơn. So với SNMPv1, nếu một biến nào đó không thể trả lời, cả gói tin bị huỷ.

Nhƣng SNMPv2 cho phép bỏ qua biến đó, toàn bộ gói tin vẫn đƣợc xử lý nhƣ không có lỗi xảy ra. Agent sẽ thiết đặt thông báo trên biến bị lỗi.

+ Và điểm cải tiến lớn nhất của SNMPv2 là cho phép kết nối giữa các NMS với nhau. Khác với SNMP, giữa các NMS không hề có sự kết nối nào đáng kể, SNMPv2 có lệnh INFORM cho phép truyền tin giữa các NMS. Phần lớn các thành phần mạng chỉ cần có một Agent quản trị trên đó. Tuy nhiên, một số thành phần mạng đặc biệt lại có nhiều Agent quản trị. SNMPv2 cho phép tƣơng tác giữa các NMS cũng nhƣ từng thành phần bị quản trị. Việc tƣơng tác NMS-NMS cho phép có thể quản trị tới nhiều Agent trên cùng một IP và cho phép tạo sự quản trị phân cấp trong mạng. Việc phân cấp này đƣợc thực hiện bằng các lớp quản trị trung gian. Các NMS trung gian sẽ quản trị các thành phần trong mạng cục bộ và kết nối tới NMS trung tâm để truyền tin quản trị. Thông tin quản trị truyền đi trên mạng đƣờng trục (backbone) vì thế sẽ đƣợc giảm thiểu, không làm hạn chế băng thông. Khác với SNMP, SNMPv2 sử dụng giao thức TCP/IP hƣớng kết nối. Bộ đếm của SNMPv2 đƣợc tăng lên tới 64bit, đủ cho mọi nhu cầu trong tƣơng lai.

- SNMPv2 vẫn giữ đƣợc những tƣơng thích với các phiên bản khác.

2.4. Cơ sở dữ liệu thông tin quản trị

Một trong những thành phần quan trọng trong kiến trúc quản trị mạng dựa trên SNMP đó chính là Cơ sở dữ liệu thông tin quản trị MIB. MIB có mặt ở cả hai bên Manager và Agent. MIB chứa tất cả các thông tin về tài nguyên cần quản trị. Nói đến cơ sở dữ liệu ngƣời ta nghĩ ngay đến cấu trúc thông tin của nó đƣợc tổ chức nhƣ thế nào. Vì vậy sau đây sẽ xem xét chi tiết về cấu trúc thông tin quản trị cũng nhƣ cách thức tổ chức thông tin trong cơ sở dữ liệu và các phiên bản cơ sở dữ liệu nào đang đƣợc sử dụng.

2.4.1. Cấu trúc thông tin quản trị SMI

Trong mô hình Manager/Agent, việc lƣu trữ các thông tin về đối tƣợng quản trị sao cho có thể truy cập, thay đổi một cách dễ dàng. Mô hình sử dụng lƣu trữ thông tin trong giao thức SNMP tuân theo chuẩn SMI. Cấu trúc thông tin quản trị SMI xác định các kiểu dữ liệu có thể sử dụng đƣợc trong MIB, cách thức biểu diễn, sắp xếp và đặt tên cho các tài nguyên trong MIB.

Đồng thời nó cũng qui định cấu trúc của MIB và cách xác định biến cho MIB.

Đối với mỗi đối tƣợng chịu sự quản trị đều phải có tên, cú pháp mô tả và cách mã hoá. Đối tƣợng đƣợc định danh theo tên (OID) và tên này phải là duy nhất. Cấu trúc SMI sẽ nhận nhiệm vụ tổ chức thông tin, đánh tên thông tin, và mô tả các thông tin của đối tƣợng đó sao cho việc truy cập mức logic diễn ra đƣợc dễ dàng. Trong đó, cú pháp mô tả kiểu dữ liệu dƣới dạng số nguyên (interger), xâu (string), ... còn mã hoá mô tả phƣơng thức dữ liệu sẽ đƣợc mã hoá, truyền đi giữa các thiết bị.

Định nghĩa đối tượng quản trị

Đối tƣợng quản trị gồm ba phần nhƣ sau:

- Tên (Name) hay định danh đối tƣợng (OID): Định rõ một đối tƣợng duy nhất. Tên có thể ở dạng số cách nhau bởi dấu chấm thập phân hoặc dạng chữ có ý nghĩa nào đó về đối tƣợng có thể đọc đƣợc. Ví dụ nhƣ OID cho mgmt (management) là: 1.3.6.1.2 hoặc

iso.org.dod.internet.mgmt

- Kiểu dữ liệu và cú pháp (Type and Syntax): Một kiểu dữ liệu của đối tƣợng quản trị đƣợc định nghĩa bằng việc sử dụng một tập các kiểu của ngôn ngữ ASN.1. ASN.1 là một cách đặc tả dữ liệu để mô tả và truyền thông giữa Manager và Agent. ASN.1 sử dụng các ký hiệu mà không bị phụ thuộc vào môi trƣờng hệ điều hành nào, tức là máy tính chạy hệ điều hành Window NT cũng có thể liên lạc đƣợc với máy chạy trên Linux một cách dễ dàng.

- Mã hoá (Encoding): Việc mã hoá thông tin một đối tƣợng quản trị thành một chuỗi octet sử dụng các quy tắc mã hoá cơ bản BER. BER xây dựng cách mã hóa và giải mã để truyền các đối tƣợng qua các môi trƣờng truyền nhƣ Ethernet.

Cú pháp

Có hai loại cú pháp chuẩn đó là:

- Cú pháp trừu tƣợng (abstract syntax): định nghĩa các đặc tả cho dữ liệu ký hiệu.

- Cú pháp truyền (transfer syntax): định nghĩa việc mã hoá các thành phần trong cú pháp trừu tƣợng.

Trong đó, SMI dùng ASN.1 để định nghĩa cú pháp trừu tƣợng cho thông điệp mà ASN.1 thì định nghĩa các thành phần ngôn ngữ cơ sở và cung cấp các quy tắc cho việc kết nối các thành phần vào thông điệp. BER chính là công cụ cung cấp cú pháp truyền. BER đƣợc kết hợp với cú pháp trừu tƣợng và cung cấp khả năng truyền mức bit (bit-level) giữa các máy trong mạng. Do điều này nên SMI và SNMP dùng ASN.1 (ISO 8824-1) và BER (ISO 8825-1) để định nghĩa hàng loạt các vấn đề cơ sở quản trị mạng Internet.

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

Hiện tại SMI có hai phiên bản:

- SMIv1 (SMI version 1, RFC 1155): định nghĩa chính xác cách thức các đối tƣợng quản trị đƣợc đặt tên và đặc tả các dữ liệu kết nối với chúng.

- SMIv2 (SMI version 2, RFC 2578): hỗ trợ nâng cấp cho SNMPv2c. SMIv1 định nghĩa một vài loại dữ liệu quan trọng để quản trị các đối tƣợng mạng. Các loại dữ liệu đó đƣợc mô tả nhƣ trong bảng 4.

Kiểu dữ liệu Mô tả

INTEGER Là một kiểu nguyên 32 bit đƣợc dùng để đặc tả các kiểu đếm, nhƣ 1 là trạng thái up (của giao tiếp mạng trên bộ định tuyến), 2 là trạng thái down, 3 là trạng thái kiểm tra. Giá trị 0 không đƣợc dùng cho kiểu đếm.

OCTET STRING

Là một xâu có độ dài 0 hoặc nhiều bộ tám (là các byte) các

Một phần của tài liệu (LUẬN VĂN THẠC SĨ) Nghiên cứu giải pháp quản trị hệ thống và ứng dụng trên công nghệ internet , intranet (Trang 43)