Hoạt động của SNMP Báo cáo bài tập lớn môn Mạng máy tính Viện điện tử viễn thông Đại học Bách Khoa Hà Nội
Trang 1Trường đại học bách khoa hà nộikhoa điện tử viễn thông
Hoạt động của snmp
Sinh viên thực hiện: Lê Ngọc Dưỡng
Đoàn Anh Tuấn
ỹ Cấu trúc của một message
ỹ Sự truyền phát và thu của một message
ỹ Các kiểu truy nhập thông tin quản lí của SNMP
ỹ Hoạt động của SNMP
ỹ Ưu, nhược điểm của SNMP
Trang 21 Giới thiệu chung về SNMP
p SNMP là viết tắt của cụm từ : simple network management protocol -giao thức quản lí mạng đơn giản
tầng ứng dụng trong mô hình tham chiếu OSI Nó
được thiết kế như là một phương tiện để trao đổi thông tin quản lí giữa các thiết bị mạng.
hoạt động của mạng, tìm và giải quyết các vấn đề về mạng và lập kế hoạch cho việc phát triển mạng
1 Giới thiệu chung về SNMP
Trang 31 Giới thiệu chung về SNMP
p Hiện nay có 2 phiên bản của SNMP cùng tồn tại là SNMP version 1(SNMP v1) và SNMP version 2 (SNMP v2) Hai phiênbản này có nhiều đặc điểm chung Tuy nhiên SNMP v2 cónhiều đặc điểm kĩ thuật nổi trội hơn so với SNMP v1 như : SNMP v2 có thêm nhiều giao thức hoạt động so với SNMP v1, tăng tính bảo mật
p Ngày nay, SNMP là giao thức phổ biến nhất trong quản límạng SNMP là một giao thức đơn giản và những đặc tính của
nó có đủ năng lực để xử lí những vấn đề phức tạp trong việcquản lí mạng
p Hiện nay có một phiên bản mới của SNMP đang được nghiêncứu và phát triển là SNMP version 3
2 Các thành phần cơ bản của SNMP
Hệ thống quản lí mạng bằng SNMP gồm 3 thành phần chính
ỹ Managed device-thiết bị quản lí: là một nút mạng Thu thập
và lưu trữ thông tin và làm cho các thông tin này sẵn sàngcho các NMS sử dụng.Đôi khi còn gọi là network element,
có thể là các router và các dịch vụ truy cập, switch vàbridge,hub, compuer host hay máy in…
ỹ Agent : Là một module phần mềm, nằm trong managed device Một agent chứa các thông tin quản lí cục bộ và sẽdịch các thông tin đó sang dạng thích hơp với SNMP
Trang 4p MIB có cấu trúc phân cấp
p MIB được truy cập bằng cách sử dụng một giao thức quản límạng như là SNMP
p MIB bao gồm các đối tượng được quản lí Mỗi đối tượng thuthập một vài thông tin như là số lượng gói đã nhận và giữthông tin đó như là giá trị để cung cấp cho hệ thống quản lí
p Mỗi đối tượng được xác định bởi một mã đối tượng:objectID.Một object ID xác định một đối tượng quản lí trong MIB
Trang 53.Cơ sở dữ liệu MIB
p Có 2 loại object
ỹ Scalar object : chỉ ra trường hợp đối tượng đơn
ỹ Tabular object: chỉ ra trường hợp nhiều đối tượng có quan hệvới nhau và được nhóm vào trong một bảng MIB
p Một thiết bị quản lí thường có nhiều đối tượng mô tả nó MộtSNMP con sẽ được cài đặt ở mỗi thiết bị quản lí và có tráchnhiệm cập nhập các biến đối tượng Và SNMP con này sẽ thựchiện nhiệm vụ giao tiếp với hệ thống
p Có nhiều nhóm đối tượng như hệ thống, giao diện, IP, TCP…
3.Cơ sở dữ liệu MIB
Trang 63.Cơ sở dữ liệu MIB
p MIB có cấu trúc cây Đỉnh của cây được định nghĩa bởi tổ chứcISO Những mức thấp hơn trong cây được định nghĩa bởi các tổchức khác
p Nhà cung cấp các dịch vụ mạng có thể định nghĩa các nhánhriêng , bao gồm các đối tượng được quản lí là các sản phẩmcủa chính họ Những MIB mà không có một tiêu chuẩn điểnhình nào được đặt vào vị trí nhánh được dùng để thực nghiệm
p Ví dụ về việc xác định một đối tượng trong MIB: Theo sơ đồMIB trên ta thấy đối tượng quản lí altput có thể được xác địnhbằng một trong hai cách:
ỹ Bằng tên:
iso.identifiedorganization.dod.internet.private.enterprise.cisco.temporary variable.AppleTalk.atlnput
ỹ Bằng cách mô tả tương đương: 1.3.6.1.4.1.9.3.3.1
4 Cấu trúc thông tin quản lí SMI
p SMI là viết tắt của Structure of Management Information
p SMI định nghĩa một cấu trúc của các đối tượng được quản lí SMI định nghĩa một đối tượng được quản lí cần có một tên, có cú pháp và được mã hóa.
ỹ Tên là object ID ( đã được nói ở trên )
ỹ Cú pháp (syntax): chỉ ra kiểu dữ liệu của đối tượng
ỹ Mã hóa (encoding): Mô tả cách thông tin được liên kết với một đối tượng quản lí được định dạng như một chuỗi các mục dữ liệu truyền trên mạng.
Trang 7ỹ Lệnh write Lệnh này được sử dụng bởi một NMS để điềukhiển các managed device NMS sẽ làm thay đổi các giá trịchứa trong các managed device
ỹ Lệnh trap Lệnh này được sử dụng bởi các managed device đểthông báo các sự kiện một cách không đồng bộ tới NMS Khichắc chắn có một loại sự kiện xảy ra, một managed device sẽgửi một trap tới NMS
ỹ Traversal operation: được sử dụng bởi NMS để xác định xembiến nào được ưu tiên và tập hợp thông tin theo thứ tự trongbảng các biến trong managed device (ví dụ bảng định tuyến IP)
6 Cấu trúc khung của một Message
p NMS tương tác với các agent qua giao thức request/response(hồi/đáp) thông qua một message.
p Một message có cấu trúc khung bao gồm hai phần: message header và PDU-protocol data unit(đơn vị dữ liệu)
Message
Trang 86 Cấu trúc khung của một Message
p Message header : Gồm hai trường thông tin
của một nhóm NMS Những NMS cùng một nhóm
được gọi là tồn tại trong cùng một miền quản trị
các đối tượng có liên quan trong việc thực hiện lệnh Trong một PDU có các trường thông tin
6 Cấu trúc khung của một Message
p SNMP v1 Get, GetNext, Response, và Set PDUs
Trang 96 Cấu trúc khung của một Message
ỹ PDU type : xác định kiểu của PDU được truyền đi
ỹ Request ID : Liên kết yêu cầu với các đáp ứng
ỹ Error status: Chỉ ra một lỗi và kiểu lỗi Chỉ có các hoạt động đáp ứng mới cài đặt trường này Các hoạt
động khác đặt trường này bằng 0
ỹ Error Index: Liên kết một lỗi với một trường hợp đối tượng riêng
SNMP-PDU Variable bindings thực hiện kết hợp một đối tượng riêng rẽ với giá trị của nó.
6 Cấu trúc khung của một Message
p SNMP v1 Trap PDU
Trang 106 Cấu trúc khung của một Message
ỹ Enterprise: Xác định kiểu của đối tượng được quản lí tạo ra tác vụ trap
ỹ Agent address: Cung cấp địa chỉ của đối tượng được quản lí tạo ra tác vụ trap
ỹ Generic trap type: Chỉ ra một trong các số kiểu trap
ỹ Specific trap code: Chỉ ra một trong các số của mã trap
ỹ Time stamp:
6 Cấu trúc khung của một Message
SNMP v2 Get, GetNext, Inform, Response, Set, và Trap PDUs
Trang 116 Cấu trúc khung của một Message
2 Gửi PDU đến dịch vụ xác nhận, cùng với các địa chỉ nguồn,
địa chỉ đích và một tên nhóm Dịch vụ xác nhận sẽ thực hiệnbất cứ một thông tin yêu cầu nào cho sự trao đổi này, đưa ramột mã xác nhận và trả lại kết quả
3 SNMP sau đó sẽ xây dựng một message với PDU được xâydựng như trên
Trang 12ỉ Nếu xác nhận sai, loại bỏ message, gửi một trap
ỉ Nếu thành công, dịch vụ xác nhận sẽ trả lại một PDU dướidạng một đối tượng ASN.1
4 Thực thể giao thức kiểm tra cú pháp cơ bản của PDU và sẽloại bỏ PDU nếu nó sai
9 Các kiểu truy nhập thông tin quản lí của SNMP
SNMP cung cấp 3 kiểu truy nhập thông tin quản lí:
Trang 13của SNMP
một yêu cầu đến một Agent
ỹ Sau quá trình xử lí thông tin từ yêu cầu, Agent sẽ gửi thông tin đáp ứng
một thông tin quản lí hay muốn thay đổi thông tin quản lí của một thiết bị được quản lí
9 Các kiểu truy nhập thông tin quản lí của SNMP
một request tới một thực thể SNMP hoạt động trong một NMS khác
ỹ Sau đó từ trạm được gửi sẽ gửi lại một response tới NMS kia
ỹ Kiểu truy nhập này được sử dụng để thực hiện trao
đổi thông tin quản lí giữa các máy trạm có quan hệ
Trang 14của SNMP
một message mà không cần yêu cầu (gọi là ‘Trap’ ) tới một NMS và không cần đáp ứng lại
NMS những sự kiện khác thường xảy ra trong trao
đổi thông tin quản lí giữa các NMS và các thiết bị mạng
10 Hoạt động của SNMP
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ả
thức SNMP gồm 5 tác vụ (với SNMP v1), 7 tác vụ (với SNMP v2) Mỗi tác vụ sẽ được mã hoá trong một
đơn vị dữ liệu PDU riêng biệt và được chuyển qua mạng bằng giao thức UDP Đó là các tác vụ:
Trang 1510 Hoạt động của SNMP
ỹ Get Bulk Request ( Chỉ có ở SNMP v2 )
Trang 1610 Hoạt động của SNMP
ý nghĩa và hoạt động của từng tác vụ:
1 Get Request
một hay nhiều trường hợp đối tượng từ một agent
toàn giống nhau, chỉ khác cách xử lí các đáp ứng
ỉ ở SNMP v1, nếu agent đáp lại là không thể cung cấp giá trị cho ít nhất một đối tượng trong danh sách yêu cầu, nó sẽ không cung cấp bất kì giá trị nào
10 Hoạt động của SNMP
ỉ Ngược lại, trong SNMP v2, một đáp ứng PDU được xác địnhbởi sự sử lí của mỗi biến trong danh sách các biến đi vào theonhững luật sau:
• Nếu một biến không có một object ID khớp với ID của bất kìmột biến nào của yêu cầu thì trường giá trị của nó đặt ‘no such’
• Nếu tên của biến không khớp với tên của bất kì biến nào củayêu cầu thì giá trị của nó đặt là ‘no such instance’
• Nếu không xảy ra hai trường hợp trên, trường giá trị của biếnyêu cầu được đặt giá trị của một biến trong agent
Trang 17ỹ Mục đích của lệnh này là tối thiểu hóa số giao thức trao đổi
để đòi hỏi một số lượng lớn các thông tin quản lí
Đ Nếu kích thước message vượt quá giới hạn của agent PDU, một response PDU được xây dựng với một error status quálớn,một error index bằng 0, và trường variable bindings rỗng
Đ Ngược lại, một response PDU được xây dựng bao gồm tất cả
Trang 1810 Hoạt động của SNMP
5 Trap
ỹ Sử dụng bởi một agent
ỹ Được truyền phát bởi một thực thể SNMP hoạt động bêntrong một agent khi một sự kiện không thuận lợi phát sinh
6 Response-PDU
ỹ Sử dụng bởi một agent
ỹ Sau khi agent nhận được các yêu cầu của các NMS, nó sẽ xâydựng một PDU và đáp ứng lại cho NMS Việc đáp ứng lại đó
được thực hiện qua tác vụ Response
10 Hoạt động của SNMP
7 Inform Request
SNMP v2 hoạt động trong một NMS tới một thực thể SNMP v2 cũng hoạt động trong NMS khác, để cung cấp thông tin quản lí cho một ứng dụng
Trang 1910 Hoạt động của SNMP
p Bảng 1: Tóm tăt các tác vụ trong giao thức snmp
Truyền thông tin quản lí khi gặp một sự cố Agent tới NMS
Trap
Thông báo thông tin quản lí từ một máy trạm tới máy trạm khác
NMS tới NMS khác
Inform
Đáp ứng lại các yêu cầu Agent tới NMS
NMS tới NMS Response
Đòi nhiều giá trị với số tối thiểu các giao thức NMS tới Agent
10 Hoạt động của SNMP
p Để minh họa cách thức SNMP làm việc như thế nào, chúng taxem ví dụ ở hình sau: Giả sử có một ứng dụng quản lí SNMP chạy trên máy host 1 yêu cầu số phiên kích hoạt từ một máySNMP agent là host 2
Trang 2010 Hoạt động của SNMP
1 Trình quản lí SNMP gửi yêu cầu qua cổng dịch vụ UDP 161
2 Một message chứa lệnh Get Request phát ra để phát hiện sốphiên kích hoạt với tên community name là Public
3 Máy host 2 nhận message và kiểm tra tên nhóm làm việcchung(community name).Nếu tên nhóm sai hoặc message bịhỏng thì yêu cầu từ phía máy host 1 bị huỷ.Ngược lại,kiểm tra địa chỉ IP để đảm bảo nó có quyền truy nhập message từmáy host 1
4 Sau đó một PDU với thông tin về phiên kích hoạt được tạo ra
và trả về cho máy trạm quản lí
11 Ưu, nhược điểm của SNMP
Trang 2111 Ưu, nhược điểm của SNMP
2 Nhược điểm
ỹ Sự truyền tải message thực hiện qua giao thức UDP, do đómột message từ NMS có thể không đến được agent và mộtmessage từ agent cũng có thể không đến được NMS,do đómáy NMS phải đặt thời gian timeout
ỹ Khả năng bảo mật thấp vì dữ liệu không mã hoá và không cóthiết lập cụ thể để ngưng bất kì truy nhập trái phép nào khitên community name và địa chỉ IP bị sử dụng để gửi yêu cầugiả mạo đến một agent
ỹ Quản lí mạng SNMP có mức khả chuyển thấp giữa các kiếntrúc khác nhau.Vì cấu trúc thông tin quản lí của SNMP chỉ cómột số giới hạn các kiểu dữ liệu
ỹ Sự không tương thích giữa hai phiên bản SNMP
12.Giải quyết vấn đề không tương thích giữa SNMP v1 và SNMP v2.
ỹ Dạng thông điệp gửi đi khác nhau
ỹ Sự tăng cường hai giao thức hoạt động của SNMP v2
và một chút khác biệt trong cách hoạt động của một
số giao thức.
p Các nhà quản lí mạng muốn sử dụng cả hai phiên bản của SNMP Do đó họ đã đưa ra hai chiến lược :
Trang 22giữa SNMP v1 và SNMP v2
1 Proxy agents
Proxy agent là một thiết bị có thể chạy những chương trình con cho một thiết bị và cung cấp những chức năng SNMP Một SNMP v2 agent có thể hoạt động như là một proxy agent
ỹ Một SNMP v2 NMS phát đi một lệnh gửi cho một SNMP v1 agent
ỹ NMS gửi thông điệp SNMP tới SNMP v2 proxy agent
ỹ proxy agent tiếp tục gửi các thông điệp Get, GetNext và Set
2 Bilingual Network-Management System
ỹ Hệ thống quản lí mạng theo mô hình Bilingual
ỹ Bilingual có thể hiểu là một một máy trạm có thể chứa đồngthời hai dạng phiên bản SNMP v1 và SNMP v2
ỹ Một trình ứng dụng quản lí trong bilingual NMS cần phảigiao tiếp với một agent
ỹ Sau đó NMS sẽ khảo sát thông tin lưu trữ trong một cơ sở dữliệu cục bộ để xác định xem phiên bản SNMP nào ở agent
được sử dụng Dựa trên thông tin đó, NMS sẽ đưa ra quyết
định sử dụng một phiên bản SNMP thích hợp