Presentation is loading. Please wait.

Presentation is loading. Please wait.

SNMP (Simple Network management protocol)

Similar presentations


Presentation on theme: "SNMP (Simple Network management protocol)"— Presentation transcript:

1 SNMP (Simple Network management protocol)

2 목차 개요 SNMP 출현배경 SNMP 기반의 TCP/IP 관리 프로토콜 SNMP Protocol
MIB(Management Information Base) WAN 환경에서 SNMP의 한계점 SNMPv1 과 SNMPv2의 차이점 SNMPv3

3 개요 NMS(Network Management System)에서 관리 프로토콜로 사용하는 프로토콜이다.
Cisco(Ciscoworks), HP(Openview), 3COM(Viwbuilder)등 SNMP는 구현이 쉽고 간편해서 오늘날 가장 일반적인 Network관리 프로토콜이 되었다. TCP/IP로 구성된 전산망에 있는 노드들을 관리하기 위해 간단하고 운영 가능한 구조와 시스템을 제공하는 단순 전산망 관리 프로토콜(SNMP:Simple Network Management Protocol)을 규정한다. - RFC 1157 NMS는 네트워크상의 전 장비들(브리지, 라우터, 허브등)의 중앙 감시 체제를 구축하여 Monitoring, Planning및 분석이 가능하며 관련 데이터를 보관하여 필요 즉시 활용 가능하게 하는 관리 시스템인데, TCP/IP인터넷 네트워크 관리에 사용되는 프로토콜이다.

4 SNMP 출현배경(1/2) ICMP 메시지의 한계 Agent의 충분한 정보를 얻기 위해
네트워크에 접속하는 호스트의 수가 증가하고 네트워크의 구성이 복잡해지면서 표준화된 새로운 프로토콜이 필요 관리 프로토콜이 나오기 이전에는 ICMP(internet message protocol)의 에코와 에코 응답메시지를 이용해서 네트워크 관리를 했다. 우리가 흔히 알고 있는 ping이 ICMP를 이용한 프로그램이다. 그러나 ping만을 이용해서 네트워크를 관리한다는 것은 한계가 있다. 예를 들어서 에코 응답메시지가 오지 않았다고 해서 agent가 다운됐다고 판단하는 것은 무리가 따르기 때문이다. 왜냐하면 해당 agent의 버퍼 영역이 일시적으로 부족하여 응답하지 못할 수도 있고, 네트워크의 일시적인 혼잡(Congestion)으로 인해 이런 경우가 발생할 수도 있다. 그 외에 agent에 대한 충분한 정보를 관리자가 얻을 수 없기 때문에 네트워크의 표준화를 요구하게 되었다.

5 SNMP 출현배경(2/2) SGMP(Simple Gateway Management Protocol)
HEMS(High-Level Entity Management System) 인터넷 최초의 관리 모델이 HMP(Host Monitoring Protocol) SNMP(Simple Network Management Protocol) SGMP의 향상 version, 단기 개발 CMOT(CMIP over TCP/IP) ISO가 네트워크 관리를 위해 표준화한 protocol. Service, database를 통합 Network구성이 복잡해지면서 새로운 표준화된 Protocol이 필요하게 되면서 88년 초부터 IAB(Internet Architecture Board)에서는 표준화 작업을 시작햇다. 연구가 진행됐던 HEMS(Highlevel Entity Management System), SGMP(Simple Gateway Monitoring), CMIP/CMIS(Common Management Information Protocol/Service)중에서 SGMP를 발전시킨 SNMP로 채택 SGMP (Simple Gateway Management Protocol) : Gateway를 모니터링하는 직접적인 방법 제공 •HEMS (High-Level Entity Management System) :인터넷 최초의 관리 모델인 HMP(Host Monitoring Protocol)의 일반화 version •SNMP (Simple Network Management Protocol) :SGMP의 향상 version, 단기 개발 •CMOT (CMIP over TCP/IP) :ISO가 네트웍관리를 위해 표준화한 protocol, service, database를 통합

6 SNMP기반의 TCP/IP 관리 모형(1/2)
주요 구성요소 Management Station NMS(Network Management System) server Managed Agent Management Station에 의해 관리되어 질 수 있는 장비 MIB(Management Information Base) 계층적 구조로 traffic 정보를 저장하고 검색할 수 있도록 하는 object 의 모임 SNMP(Simple Network Management Protocol) Management Station과 Agent의 traffic 정보를 검색하고 그 MIB설정을 바꿀 수 있는 표준 프로토콜 3-1. 관리국(Management Station) 관리국은 최소한 다음의 사항을 가지고 있어야 한다. Ⅰ. 데이터 분석, 에러복구 등의 관리 어플리케이션들의 집합 Ⅱ. 네트워크 관리자가 네트워크를 감시하고 조정할 수 있게 하는 인터페이스 Ⅲ. 네트워크 관리자의 요구 즉, 네트워크상의 대상 요소를 실제로 감시하고 조정할 수 있도록 바꾸어 줄 수 있는 기능 Ⅳ. 모든 네트워크상의 관리되어 질 수 있는 개체(Agent)들의 MIB으로부터 뽑아낸 데이터 베이스 정보 3-2.피관리 에이전트(Managed Agent) SNMP 에이전트라고도 부르며 호스트 컴퓨터나 브리지, 라우터, 허브와 같은 장비로 관리국에 의해서 관리되어 질 수 있는 장비 피관리 에이전트는 독자적으로 장비 자신의 트래픽을 모니터링하고 그 통계 정보를 자신의 MIB에 저장해두었다가 중앙의 관리국으로부터의 트래픽 정보 요구나 특정 동작 요청에 응답하고, 특정사건 발생시 agent에 에이전트의 중요 정보를 제공한다. 3-3.관리 정보 베이스(Management Information Base) 네트워크 상의 트래픽 관리 정보를 관리하는 방법은 오브젝트로 정보를 관리하는 것이다. 각 정보를 하나의 오브젝트로 하여 오브젝트들의 계층적 구조로 트래픽 정보를 저장하고 검색할수 있도록 하는데, 이런 오브젝트들의 모임 3-4.단순 네트워크 관리 프로토콜(SNMP) 관리국이 피관리 에이전트의 트래픽 정보를 검색하고 그 MIB 설정을 바꿀수 있는 표준 프로토콜이 네트워크 관리 프로토콜 이다. 그중 TCP/IP 네트워크의 관리용으로 쓰이는 프로토콜이 Simple Network Management Protocol (SNMP)이다. SNMP는 Network Management Station과 Agent라 불리는 Network 요소들 사이에 관리 정보(MIB)를 교환하는 간단한 요청/응답 기능을 하는 Protocol 이다.

7 SNMP기반의 TCP/IP 관리 모형(2/2)

8 SNMP Protocol(1/7) Snmp 연산자
get-request manager가 Agent에서 하나 또는 그 이상의 변수 값을 가져온다. get-next-request manager가 Agent에서 하나 또는 그 이상의 지정된 변수의 다음 변수를 가지고 온다. set-request manager가 변수의 값을 설정한다. get-response Agent가 manager에게 하나 또는 그 이상의 변수의 값을 응답으로 돌려준다. trap Agent 상에서 어떤 일이 발생했음을 manager에게 알린다. SNMP는 관리자와 agent간에 교환되는 5개 유형의 메시지에 대해서 정의하고 있는데… ●get-request operator : 매니저가 에이전트에서 하나 또는 그 이상의 변수의 값을 가지고 온다. ●get-next-request operator : 매니저가 에이전트에서 하나 또는 그 이상의 지정된 변수의 다음 변수를 가지고 온다. ●set-request operator : 매니저가 에이전트에 하나 또는 그 이상의 변수의 값을 설정한다. ●get-response operator : 에이전트가 매니저에게 하나 또는 그 이상의 변수의 값을 get-request, get-next request, set-request operator에 대한 응답으로 돌려 준다. ●trap operator : 에이전트가 매니저에게 에이전트 상에서 어떤 일이 발생했음을 알린다.

9 SNMP Protocol(2/7) snmp 연산자의 종류
관리자는 udp포트 161번으로 3개의 요소를 전송한다. Agent는 udp포트 162번으로 trap을 보낸다. 서로 다른 포트를 사용함으로써, 단일 시스템은 쉽게 관리자와 agnet를 수행 할 수 있다. snmp 연산자의 종류

10 SNMP Protocol(3/7) SNMP message format Version(0) – 버전 숫자에서 1을 뺀 값
Community – 관리자와 Agent간의 패스워드. 공통적인 값은 6 문자열 “public”이다. Request ID - SNMP가 비연결성인 UDP기반이므로 메시지가 중복되는 것을 막기 위한 sequence number. Get, get-next, set 연산자의 request ID는 관리자에 의해 설정되며, agent는 get-response 메시지에서 되돌려준다. Error status – agent가 에러를 가리키며 되돌아온 정수 값. agent가 noSuchName, badValue, readOnly에러에 대해서만 설정한다. Error index – 에러를 일으키는 변수를 가리키는 정수 옵셋. Name과 value list – get, get-next, set 요구에 포함된다. Get과 get-next 연산자는 값의 영역은 무시한다. SNMP message format

11 SNMP Protocol(4/7) SNMP message format

12 SNMP Protocol(5/7) PDU 유형 이름 1 2 3 4 Get-request Get-next-request
Get-request 1 Get-next-request 2 Get-response 3 Set-request 4 trap SNMP message의 PDU 유형

13 SNMP Protocol(6/7) SNMP error status

14 SNMP Protocol(7/7) Trap type(0~6) Generic-trap은 7가지 값들 중의 하나이다.
1. coldStart (0) : 송신하는 SNMP 개체는 에이전트의 구성이나 프로토콜 개체의 구현이 변경되어지는 경우에 스스로 재초기화할 수 있다. 전형적으로 이것은 충돌이나 주요 결함에 의한 예기치 않은 재시작이다. 2. warmStart (1) : 송신하는 SNMP 개체는 에이전트의 구성이나 프로토콜 개체의 구현이 변경되어지는 경우와 관 계 없이 스스로 재초기화 할 수 있다. 전형적으로 이것은 정해진 재시작이다. 3. linkDown (2) : 에이전트의 통신 링크 중 하나에 결함이 생겼음을 알린다. Variable binding의 처음은 참조하 고자 하는 인터페이스의 ifIndex의 이름과 값이다. 4. linkUp(3) : 에이전트의 통신 링크가 가동되었음을 알린다. Variable binding의 처음은 참조하고자 하는 인터 페이스의 ifIndex의 이름과 값이다. 5. authenticationFailure (4) : 송신하는 프로토콜 개체가 인증에 실패했다는 메시지를 받았음을 알린다. 6. egpNeighborLoss (5) : EGP 이웃이 사라졌거나 이웃 관계가 더 이상 존재하지 않을 때 이를 알린다. 7. enterpriseSpecific (6) : EnterpriseSpecific은 표준 Trap을 제외한 그밖의 상태를 알리고자하는데 사용된다. Trap type(0~6)

15 MIB(Management Information Base)(1/3)
객체들을 모아 놓은 집합체 관리자가 조회하거나 설정할 수 있는 정보 데이터 베이스로서 Agent 가 관리한다. System, interfaces, at(주소변환), ip, icmp, tcp, udp등의 그룹이 있다. MIB (Management Information Base) *Manager와 Agent사이에 특정한 정보를 주고 받는 것이 네트워크 관리의 기본이다. 관리 되어야 할 특정한 정보(Information), 자원(Resource)을 객체(Object)라 한다. 이런 객체들을 모아놓은 집합체를 MIB이라고 한다. MIB은 관리되는 네트워크 요소의 각 특성 객체들의 계층적이며 구조적인 집합을 의미한다. 1. MIB를 정의하고 구성하는 뼈대(Framework)인 *SMI는 RFC1155에 아래와 같은 사항을 정의하고 있다. (1) MIB의 각 객체(Object)들은 ISO와 ITU-T에 의해 표준화되고 개발된 언어인 *ASN.1(Abstract Syntax Notation One)을 사용해서 정의한다. (2) 정의할 모든 객체는 반드시 이름, Syntax, 부호화(Encoding)을 갖고 있어야 한다. Ⅰ. 이름 : 해당 객체를 식별하는 객체 식별자 예)Object Identifier Ⅱ. Syntax : 객체의 데이터 종류 예) Interger, Octect String… Ⅲ. *부호화 : 객체의 데이터가 어떤 Encoding방식으로 전송되는가? MIB의 구조는 계층적 트리구조의 형태를 이루고 있다. 특정 객체는 객체 식별자(Object Identifier = OID)에 의해서 구분된다. 실제로 OID는 우리가 일반적으로 사용하는 문자가 아니라 연속된 정수이다.* MIB tree는 root를 기준으로 동일한 범주에 속하는 객체들을 분류하는 식으로 OID가 정해지고 snmp는 최종 노드인 Object만을 읽고 쓸수가 있다.

16 MIB (Management Information Base)(2/3)
Object identifier 명령적 객체를 기술하는 데이터 타입 10진 소수점에 의해 분리되는 정수들의 나열 트리의 각 노드에 문자 이름이 주어진다. ex) iso.org.dod.internet.mgmt.mib 관리자와 Agent 사이에 교환되는 패킷에 있는 MIB변수 이름은 번호로 된 식별자이다. ex) Object identifier는 MIB에 있는 객체들을 기술하는 데이터 타입이다. 명령적이라는 것은 이러한 이름들이 무작위로 붙여지지 않고, 식별자 그룹에 책임을 갖는 조직체에 의해 할당된다는 것을 의미한다. Object identifier는 소수점으로 구분된 정수들의 sequence이다. 이러한 정수들은 DNS나 유닉스의 파일 시스템과 같이 트리 구조로 운영된다.

17 MIB (Management Information Base)(3/3)
dod(6) Enterprise(1) Proteon(1) Sicc(1652) IBM(2) 트리의 맨 위에는 이름이 없는 루트가 있고, 여기서부터 object identifier가 시작된다. (이것은 유닉스 파일 시스템에서 사용하는 트리 구조와 동일한 방향이다.) system.- MIB기반의 Object identifier

18 WAN환경에서 SNMP의 한계점 대역폭의 과다 소요로 많은 장비를 관리하기 어렵다.
많은 트래픽이 관리국으로 집중, 관리국의 성능을 고려해야 한다. SNMP Agent를 갖고 있는 네트워크 장비는 만일 그 장비가 본연의 임무를 수행하는 동안 Agent가 트래픽 정보를 분석하는 경우 그 자원의 왜곡이 있을 수 있으며, 충분한 성능을 확보하지 못할 때는 문제가 될 수 있다. 여러 Agent들의 데이터를 처리하여 통계 정보를 분석할 경우 해당 Agent들로부터 필요한 모든 정보를 관리국에서 수집해야 하므로 많은 트래픽이 관리국으로 집중

19 SNMPv2 SNMP의 약점을 보완하기 위함 Secure SNMP + SMP = SNMPv2(1993.3)
그러나 proposal에 중대한 security 오류가 발견되어 security부분을 삭제하고 발표 Community-based SNMPv2(1996.1) 전송계층에 UDP 뿐만 아니라 OSI Connectionless Network Services(CLNS) AppleTalk’s Datagram Delievery Protocol(DDP) Novell’s Internetwork Packet Exchange(IPX) 등도 구현할 수 있도록 한다. 원래는 security 부분을 첨가하려고 했으나, Proposal

20 SNMPv1과 v2의 차이점 Get-bulk-request Inform-request
Manager가 대량의 데이터를 효과적으로 검색하도록 하는 명령어 Inform-request Manager가 다른 manager에게 정보를 보내도록 하는 명령어 Manager-to manager communication SNMPv1과 SNMPv2의 차이점(1) ●get-bulk-request ●Manager가 대량의 데이터를 효과적으로 검색하도록 하는 명령어. 전체 패킷의 수를 감소하여 관리 시스템의 성능을 향상하였다. ●inform-request ●Manager가 다른 manager에게 정보를 보내도록 하는 명령어 ●manager-to-manager communication •관리 시스템은 관리 데이터를 상위 네트워크의 관리 시스템에게 보고할 수 있어 multiple enterprise network manager 구성이 가능 ●새로운 MIB 추가 •SNMPv2-M2M (Manager-to-Manager) ●Locking scheme ●관리 시스템이 피관리 노드의 구성을 변경 중일 경우 다른 관리 시스템이 간섭을 못하도록 하는 lock 기능으로, 한 개의 노드 또는 그룹을 대상으로 lock을 할 수 있다. ●Exception condition ●SNMP 노드는 자신이 지원하지 못하는 MIB 요구 전체를 무시하지만, SNMPv2는 “exception” flag 설정으로 지원 가능한 나머지 MIB에 응답을 할 수 있다. ●에러 코드의 추가

21 SNMP v3 SNMP v3 보안기능 제공 Authentication Encryption


Download ppt "SNMP (Simple Network management protocol)"

Similar presentations


Ads by Google