Presentation is loading. Please wait.

Presentation is loading. Please wait.

Chapter 21 Simple Network Management Protocol (SNMP)

Similar presentations


Presentation on theme: "Chapter 21 Simple Network Management Protocol (SNMP)"— Presentation transcript:

1 Chapter 21 Simple Network Management Protocol (SNMP)
Mi-Jung Choi Dept. of Computer Science and Engineering

2 Overview 21.1 CONCEPT 21.2 SMI 21.3 MIB 21.4 SNMP 21.5 EXAMPLE
UDP PORTS

3 21.1 CONCEPT

4 21.1 CONCEPT Managers and Agent 관리자 (manager) 에이전트 (agent)
SNMP 클라이언트 프로그램을 수행하는 호스트 데이터베이스에서 값들을 읽어옴 라우터로 하여금 특정한 동작을 행하도록 함 (예, 재시동) 에이전트 (agent) SNMP 서버 프로그램을 수행하는 라우터(또는 호스트) 데이터베이스에 성능 정보를 유지 관리 과정에 기여

5 21.1 CONCEPT Managers and Agent 관리 SNMP를 사용한 관리
관리자와 에이전트간의 간단한 대화에 의해 수행 SNMP를 사용한 관리 관리자는 에이전트의 행동을 반영하는 정보를 요구하여 에이전트를 검사한다 관리자는 에이전트 데이터베이스에 있는 값을 리셋하여 에이전트가 작업을 수행하도록 한다 에이전트는 비정상적인 상황을 관리자에게 경고하여 관리 과정에 기여한다

6 21.1 CONCEPT Components of network management on the Internet

7 21.2 SMI SMI (Structure of Management Information) SNMP를 위한 지침 기능
객체에 이름을 붙인다 객체에 저장된 데이터의 종류를 결정한다 네트워크 상의 전송을 위해 데이터를 어떻게 인코딩 할지를 보여준다

8 21.2 SMI SMI Object attributes

9 21.2 SMI Name 트리 구조에 기초한 계층적 식별자인 객체 식별자를 사용 정수-점 표현 : SNMP에 의해 사용
예) 이름-점 표현 : 사람이 사용 예) iso.org.dod.internet.mgmt.mib SNMP에서 사용되는 객체는 mib 객체 밑에 위치 → 식별자는 항상 로 시작

10 21.2 SMI

11 21.2 SMI Type 저장되는 데이터 유형 SMI는 ASN.1의 부분집합이면서 포함 집합

12 21.2 SMI Simple Type 4 bytes TimeTicks Gauge Counter IPAddress
A counting value that records time in 1/100 sec-onds 4 bytes TimeTicks Same as Counter, but when it reaches its maximum value, it does nto wrap; it remains there until it is reset Gauge An integer whose value and be incremented form zero to 4, 294, 967, 295; when it reaches its maximum value it wraps back to zero Counter An IP address made of four integers IPAddress An object identifier represented in ASCII digits Variable ObjectIdentifier Zero or more ASCII characters String A cardinal number between 0 and 232-1 Integer Description Size Type

13 21.2 SMI Structured Type Sequence Sequence of
반드시 같은 데이터 종류일 필요는 없는, 단순 데이터 유형들의 결합 예) 프로그래밍 언어에서의 구조체나 레코드의 개념 Sequence of 모두 같은 유형인 단순 데이터 유형들의 결합 모두 같은 유형인 sequence 데이터 유형들의 결합 예) 프로그래밍 언어에서의 배열의 개념

14 21.2 SMI

15 21.2 SMI Encoding Method BER (Basic Encoding Rules) 표준 사용하여 전송되는 데이터를 인코딩

16 21.2 SMI Encoding Method Tag : 데이터 유형을 정의하는 한 바이트 필드
Class : 데이터의 범위를 정의 Format : 단순(0)/구조적(1) 데이터 유형 지정 Number : 단순/구조적 데이터를 서브 그룹들로 나눈다

17 21.2 SMI 43 00011 01 TimeTicks 42 00010 Gauge 41 00001 Counter 40 00000 IPAddress 30 10000 1 00 Sequence sequence of 06 00110 ObjectIdentifier 04 00100 String 02 Integer Tag(Hex) Tag(Binary) Number Format Class Data

18 21.2 SMI Encoding Method Length : 데이터의 길이를 규정 Value : 데이터의 값을 부호화
한 바이트 : 최상위 비트 0 한 바이트 이상 : 첫번째 바이트의 최상위 비트 1 Value : 데이터의 값을 부호화

19 21.2 SMI Example 1 Integer 14 정의

20 21.2 SMI Example 2 String HI 정의

21 21.2 SMI Example 3 객체 식별자 (iso.org.dod.internet) 정의

22 21.2 SMI Example 4 IP 주소 정의

23 21.3 MIB MIB (Management Information Base)
8개의 서로 다른 그룹으로 분류 각 그룹은 값 그리고/또는 테이블을 규정

24 21.3 MIB

25 21.3 MIB Accessing MIB Variables Udp 그룹의 예 : 단순변수 4개, 레코드 열 1개

26 21.3 MIB Simple Variable 그룹 식별자 + 변수의 식별자 : 변수 정의
udpInDatagrams ====> udpNoPorts ====> udpInErrors ====> udpOutDatagrams ====> 실제 값/내용 : 인스턴스 접미사(0) 사용 udpInDatagrams.0 ====> udpNoPorsts.0 ====> udpInErrors.0 ====> udpOutDatagrams.0 ====>

27 21.3 MIB Tables 테이블 식별자를 사용 Udp 그룹 : 1개의 테이블
udpTable ====> 테이블의 엔트리(sequence) 정의 udpEntry ====> 엔트리에 있는 각 항목의 정의 udpLocalAddress ====> udpLocalPort ====> 테이블의 특정 인스턴스를 읽기 위해 색인 추가 udpLocalAddress ====>

28 21.3 MIB Udp 변수와 테이블

29 21.3 MIB Udp Table에 대한 색인

30 21.3 MIB Lexicographic Ordering 객체 식별자는 사전적 순서로 되어 있다
열-행 규칙에 따라 배열 → 열 순으로 접근 관리자가 변수들의 조합을 첫번째 변수를 정의한 후 차례대로 읽는 것이 가능

31 21.3 MIB Lexicographic Ordering

32 21.4 SNMP SNMP(Simple Network Management Protocol)
네트워크 관리에 SMI와 MIB를 모두 사용 관리자가 에이전트에서 정의된 객체의 값을 읽는다 관리자가 에이전트에서 정의된 객체에 값을 저장 에이전트가 비정상적 상황에 대한 경고 메시지를 관리자에게 보낸다

33 21.4 SNMP Messages

34 21.4 SNMP GetRequest GetNextRequest GetResponse
변수의 값을 읽기 위하여 관리자(클라이언트)가 에이전트(서버)로 보내는 메시지 GetNextRequest 변수의 값을 읽기 위하여 관리자가 에이전트로 보내는 메시지 읽혀진 값 : 메시지에 정의된 ObjectID 바로 다음 객체의 값 GetResponse GetRequest와 GetNextRequest에 대한 응답으로 에이전트가 관리자에게 보내는 메시지

35 21.4 SNMP SetRequest Trap 관리자가 변수에 값을 설정하기 위해 전송하는 메시지
에이전트가 사건을 관리자에게 보고하기 위해 전송되는 메시지 예) 에이전트의 재시동 시간 보고

36 21.4 SNMP Format

37 21.4 SNMP Version Community Request ID Error status 버전 번호 정의
실제로는 버전 번호 – 1값 Community 비밀번호를 정의 비밀번호가 없으면 public Request ID 순서 번호 요청과 응답을 일치시키는 데 사용 Error status 에이전트에 의해 보고되는 오류의 종류 응답 메시지에서만 사용

38 21.4 SNMP Error Index 오류 종류 관리자에게 오류를 일으킨 변수를 알려주는 옵셋 Other errors
genErr 5 The value cannot be modified readOnly 4 The Value to be stored is invalid badValue 3 Variable does not exist noSuchName 2 Response too big to fit in one message tooBig 1 No error noError Meaning Name Status

39 21.4 SNMP VarBindList Enterprise Agent Address Trap type
관리자가 읽거나 설정하기를 원하는 값을 갖는 변수들의 조합 Trap 메시지에서 특정 메시지에 관련된 변수와 값 Enterprise Trap을 발생시키는 소프트웨어 패키지의 ObjectId 정의 Agent Address Trap을 생성하는 에이전트의 IP 주소 정의 Trap type Trap 종류 정의

40 21.4 SNMP 트랩 종류 Invalid community detected authenticationFailure 4
Other messages enterpriseSpecific 6 An EGP router has gone to down state egpNeighborLoss 5 An interface has come up linkUp 3 An interface has gone down linkDown 2 Agent has been rebooted warmStart 1 Agent has been booted coldStart Meaning Name Status

41 21.4 SNMP Specific code Time stamp
Trap 종류의 값이 6일때, 제작회사에 의해 사용되는 특정한 코드를 정의 Time stamp Trap을 야기한 사건 이후 경과된 시간

42 21.4 SNMP 인코딩 BER 표준을 사용 SNMP 메시지에 대한 코드 A4 10100100 00100 1 10 Trap
00011 SetRequest A2 00010 GetResponse A1 00001 GetNextRequest A0 0000 GetRequest Whole Tag (Hex) (Binary) Number Format Class Data

43 21.4 SNMP

44 21.4 SNMP Version Community PDU(Protocol Data Unit)
트리플렛(태그, 길이, 값)으로 인코딩 Community PDU(Protocol Data Unit) PDU의 종류, 길이, PDU 데이터에 대한 코드 포함 요청 식별자(태그, 길이, 값의 트리플렛), 오류 상태, 오류 식별자, VarBindList로 PDU 데이터 생성

45 21.5 EXAMPLE Example 1 관리자 국이 라우터가 수신한 UDP 데이터그램의 수를 읽기 위해 GetRequest 메시지를 사용 에이전트는 GetResponse 메시지로 응답 상응하는 MIB 변수 = 객체 식별자 인 udpInDatagrams

46 GetRequest Encoding fot Example 1
30 2A Sequence of length 2A16 Integer of length 0116, version=0 C String of length 0616, “public” A0 1D GetRequest of length 1D16 Integer of length 0416, Request ID= Integer of length 0116, Error Status=0016 Integer of length 0116, Error Index=0016 03 0F Sequence of length 0F16 30 0D Sequence of length 0D16 ObjectId of length 0916, udpInDatagram Null entity of length 0016 GetRequest Encoding fot Example 1

47 21.5 EXAMPLE

48 GetResponse Encoding fot Example 1
30 2E Sequence of length 2E16 Integer of length 0116, version=0 C String of length 0616, “public” A GetResponse of length 1D16 Integer of length 0416, Request ID= Integer of length 0116, Error Status=0016 Integer of length 0116, Error Index=0016 Sequence of length 1316 Sequence of length 1116 ObjectId of length 0916, udpInDatagram Counter of length 04 with the value 12 11 GetResponse Encoding fot Example 1

49 21.6 UDP PORTS SNMP의 UDP 서비스 사용 잘 알려진 포트 161(에이전트)과 162(관리자) 사용
클라이언트와 서버 모두 잘 알려진 포트를 사용 클라이언트와 서버 모두 무한히 수행

50 21.6 UDP PORTS


Download ppt "Chapter 21 Simple Network Management Protocol (SNMP)"

Similar presentations


Ads by Google