1 / 48

S N M P

S N M P. 대신씨엔씨 주식회사. DAESIN C&C CO., LTD. NMS(Network Management System). (Simple Network Management System). 목차. NMS ( Network Management System ) SNMP ( Simple Network Management Protocol ) 출현배경 SNMP 기반의 TCP/IP 네트워크 관리모형 MIB ( Management Information Base ) SNMP 동작원리

travis
Download Presentation

S N M P

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. S N M P 대신씨엔씨 주식회사 DAESIN C&C CO., LTD. NMS(Network Management System) (Simple Network Management System)

  2. 목차 • NMS ( Network Management System ) • SNMP ( Simple Network Management Protocol ) 출현배경 • SNMP 기반의 TCP/IP 네트워크 관리모형 • MIB ( Management Information Base ) • SNMP 동작원리 • SNMP V1 vs SNMP V2

  3. 시작하면서…. 요즘 각 기업이 인터넷/인트라넷의 열풍속에서 많은 부분의 업무를 네트워크에 의존하고 있다. E-mail은 기본이고 그룹웨어 도입, 그리고 Client/Server에 의한 업무처리의 도입으로 Network의 중요성이 날로 높아지고 있다. 이로 인해서 Network의 대형화, 복잡화, Network를 이용한 업무의 증가 등으로 Network 관리에 대한 중요성이 부각되고 있다. Network 장애발생시 신속한 대처는 기본이고 발생 가능성을 사전에 제거하는 것이 중요하다.

  4. NMS ( Network Management System ) • NMS 란?  NMS는 네트워크상의 전 장비들의 중앙 감시 체제를 구축하여 Monitoring, Planning및 분석이 가능하며 관련 데이터를 보관하여 필요 즉시 활용 가능하게 하는 관리 시스템이다. -Cisco(Ciscoworks), HP(Openview), 3COM(Viewbuilder)등.. 1-1. NMS의 기본적 공통점 Ⅰ. 전 장비들의 중앙 감시 체제를 구축 (Monitoring, Planning, 분석) Ⅱ. SNMP Protocol을 관리 Protocol 로 사용 Ⅲ. Ethernet 및 FDDI 네트워크에 접속되어 있는 자원들을 관리 Ⅳ. GUI(Graphic User Interface)를 지향 Ⅴ. MIB-1, MIB-2 및 타 벤더의 특정 MIB을 지원 Ⅵ. 보안성이 우수하고 관리가 용이 해야함

  5. Functions Management Fault • 네트웍 이상 동작 발견시 : 원인파악 원인제거 향후대책 • 장애 발생과 동시에 주변 네트워크 영향 최소화 작업 Performance • 네트웍 자원에 대한 현재 혹은 과거의 상태, 그 활용도 및 부하를 검사 • 향후 발생가능한 문제점 검출 : 과다한 트래픽, 병목현상, 네트웍 응답시간 • 균형있고 안정적인 네트웍이 될 수 있도록 해 주는 기능 Configuration • Network 전체구성 파악 각각의 네트웍 장비를 비롯해 서버나 클라이언트 PC 등의 네트워크 구성 요소들 뿐만 아니라 프로토콜, 토폴로지와 같은 요소들에 대한 정보를GUI형태의 mapping을 통해 관리자 에게 전달하는 기능 Account • 네트워크 자원들을 사용하는 비용지불 : 이것(이를테면 공중 데이타망 포트)을 사용하는 그룹에 대하여 비용 계산을 한다. • Account별 사용 특성 파악 : 통계자료를 통해서 향후 계획 수립 Security •내부의 중요하고, 민감한 데이터에 대해 외부로 부터의 침입이나 무단 사용을 방지하기 위한 기능 NMS (계속) 1-2. NMS 시스템 기능

  6. SNMP (Simple Network Management System) 의 출현배경 2. 출현배경 TCP/IP환경의 초기 네트워크 관리는 주로 ICMP를 이용 종단간 장비간의 연결상태 등을 파악. 하지만, 네트워크에 접속하는 호스트수가 증가하고 네트워크의 구성이 복잡해지면서 새로운 표준화된 프로토콜이 필요하게 됨 이에 따라. 88년초 IAB(Internet Architecture Board)에서는 표준화 작업을 시작 이때까지 연구가 진행됐던 HEMS(Highlevel Entity Management System), SGMP(Simple Gateway Monitoring), CMIP/CMIS(Common Management Information Protocol/Service)중에서 SGMP를 발전시킨 SNMP로 채택 결국 IAB는 SNMP를 채택하면서 몇가지 결정을 내렸다. ① 기본적으로 관리 프로토콜로 SNMP를 채택 ② IAB와 업체들은 ISO CMIP/CMIS를 기반으로 한 망관리 시스템을 개발/발전시킨다. ③ SNMP와 관련된 작업은 IETF가 책임지고, 이전의 연구 작업결과를 적극 수용한다. (특히, HEMS를 위해서 정의된 MIB 를 받아들인다는 것도 포함한다.)*

  7. SNMP 기반의 TCP/IP네트워크 관리 모형 • TCP/IP 관리 구조는 네트워크 상에 관리 에이전트(SNMP agent)가 탑재되어 있고 • 중앙의 관리국(Management Station)이 이런 에이전트로부터 각 네트워크 장비의 • 관리 정보를 모니터링 함으로써 이루어진다. • 이때 각 관리 에이전트와 관리국간의 네트워크 관리 정보를 전송하기 위해 사용되는 • 네트워크 관리 프로토콜이 SNMP이다 • TCP/IP에서 사용되는 네트워크 관리 모형은 다음의 주요 요소가 있다. • ▶ 관리국(Management Station) • ▶ 관리 에이전트 (Managed Agent) • ▶ 관리 정보 베이스(MIB : Management Information Base) • ▶ 네트워크 관리 프로토콜(SNMP : Simple Network Management Protocol)

  8. <그림1-1. SNMP의 기본적인 관리구조> SNMP 기반의 TCP/IP네트워크 관리 모형(계속)

  9. SNMP 기반의 TCP/IP네트워크 관리 모형(계속) 3-1. 관리국(Management Station) 관리국이란 쉽게 말해서 우리가 일반적으로 NMS서버라 부르는 스테이션을 말한다. 관리국은 최소한 다음의 사항을 가지고 있어야 한다. Ⅰ. 데이터 분석, 에러복구 등의 관리 어플리케이션들의 집합 Ⅱ. 네트워크 관리자가 네트워크를 감시하고 조정할 수 있게 하는 인터페이스 Ⅲ. 네트워크 관리자의 요구 즉, 네트워크상의 대상 요소를 실제로 감시하고 조정할 수 있도록 바꾸어 줄 수 있는 기능 Ⅳ. 모든 네트워크상의 관리되어 질 수 있는 개체(Agent)들의 MIB으로부터 뽑아낸 데이터 베이스 정보 3-2.피관리 에이전트(Managed Agent) 일반적으로 SNMP 에이전트라고도 부르며 호스트 컴퓨터나 브리지, 라우터, 허브와 같은 장비로 관리국에 의해서 관리되어 질 수 있는 장비 피관리 에이전트는 독자적으로 장비 자신의 트래픽을 모니터링하고 그 통계 정보를 자신의 MIB에 저장해두었다가 중앙의 관리국으로부터의 트래픽 정보 요구나 특정 동작 요청에 응답하고, 특정사건 발생시 관리국에 에이전트의 중요 정보를 제공한다.

  10. SNMP 기반의 TCP/IP네트워크 관리 모형(계속) • 3-3.관리 정보 베이스(Management Information Base) • 네트워크 상의 트래픽 관리 정보를 관리하는 방법은 오브젝트로 정보를 관리하는 것이다. • 각 정보를 하나의 오브젝트로 하여 오브젝트들의 계층적 구조로 트래픽 정보를 저장하고 • 검색할수 있도록 하는데, 이런 오브젝트들의 모임을 Management Information Base (MIB)라 한다. • 3-4.단순 네트워크 관리 프로토콜(SNMP) • 관리국이 피관리 에이전트의 트래픽 정보를 검색하고 그 MIB 설정을 바꿀수 있는 표준 프로토콜이 네트워크 관리 프로토콜 이다. 그중 TCP/IP 네트워크의 관리용으로 • 쓰이는 프로토콜이 Simple Network Management Protocol (SNMP)이다. • SNMP는 Network Management Station과 Agent라 불리는 Network 요소들 사이에 관리 정보(MIB)를 • 교환하는 간단한 요청/응답 기능을 하는 Protocol 이다.

  11. SNMP 기반의 TCP/IP네트워크 관리 모형(계속) 3-5. SNMP관리 모형 *SNMP는 TCP/IP의 응용계층 프로토콜로 디자인되었고 전송 계층 프로토콜로는 UDP(User Datagram Protocol)를 사용한다. . SNMP가 비접속 프로토콜(Connectionless Protocol)인 UDP를 사용하고 있기 때문에 SNMP 스스로도 비접속 프로토콜이다. 또한 SNMP는 네트워크장비 즉, 라우터나 브리지,서버, 호스트등의 Agent에 직접 Query하는 트랜젝션 지향 프로토콜(Transaction-Oriented Protocol)이다. Management Station의 관리 어플리케이션은 SNMP Agent의 MIB에 대한 접근과 객체를 관리하고, 네트워크 관리자(User)에 대한 인터페이스(GUI)를 제공. 각각의 Agent는 반드시 SNMP, UDP, IP를 반드시 구현. 게다가 Agent Process는 SNMP메시지를 해석 자기 자신의 MIB을 조정한다.

  12. <그림 1.2 SNMP를 사용한 네트워크 관리모형> 관리 어플리케이션 Agent 자원 SNMP M/G SNMP Agent SNMP 기반의 TCP/IP네트워크 관리 모형(계속)

  13. SNMP 기반의 TCP/IP네트워크 관리 모형(계속) 3-6. SNMP의 기능 ① GET : SNMP Station이 Agent의 오브젝트 값을 검색할 수 있게 한다. ② SET : SNMP Station이 Agent의 오브젝트 값을 설정할 수 있게 한다. ③ TRAP : Agent가 SNMP Station에 중요한 사건을 알릴 수 있게 한다. SNMP Station의 관리 어플리케이션은 SNMP 관리자를 통해 3가지 형태의 SNMP메시지(GetRequest, GetNextRequest, SetRequest)를 생성하여 Agent로 전송. 그러면 Agent는 GetResponse 메시지로 SNMP Station에 응답을 하게된다. 또한 Agent는 자신의 MIB에 영향을 미치거나, 관리 자원에 발생할 수도 있는 사건(Event)을 알리기 위해 Trap 메시지를 만들어 SNMP Station에게 알린다.

  14. MIB (Management Information Base) • 4-1. MIB (Management Information Base) • *Manager와 Agent사이에 특정한 정보를 주고 받는 것이 네트워크 관리의 기본이다. 관리 되어야 할 특정한 정보(Information), 자원(Resource)을 객체(Object)라 한다. 이런 객체들을 모아놓은 집합체를 MIB이라고 한다. MIB은 관리되는 네트워크 요소의 각 특성 객체들의 계층적이며 구조적인 집합을 의미한다. 네트워크를 관리한다는 것은 관리대상인 장비(Workstation, printer,server,hub,router…)들이 제공하는 MIB중에서 특정값을 얻어와서 그 장비의 상태를 파악하거나, 그 값을 변경함을 의미

  15. MIB (계속) 4-2. 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. <그림 1.3 MIB의 구조> Sicc(1652) Proteon(1) IBM(2) MIB (계속) <그림 1.3>에서 Internet의 오브젝트 식별자는 다음과 같이 정의 된다. dod(6) Internet OBJECT IDENTIFIER = { iso(1) org(3) dod(6) 1} Enterprise(1)

  17. MIB (계속) 2. Internet 노드의 4개의 부분은 MIB의 확장의 기본이 된다 Ⅰ. Directory : 이 서브트리는 나중의 OSI Directory 를 위해 예약된다 Ⅱ. Mgmt : 이 서브트리는 IAB에서 정의한 오브젝트들 용으로 쓰인다. Ⅲ. Experimental : 이 서브트리는 Internet에서 실험적인 오브젝트를 나타낸다. Ⅳ.*Private : 이 서브트리는 주로 특정 벤더/개인의 오브젝트를 나타내기 위해 쓰인다. 3. MIB Object Groups  MIB는 장래의 응용성과 관리 기능의 단순화를 위해 관리 대상 객체를 관련된 그룹으로 모아놓은 것. (Ex. System Group(1), Interface Group(2), Address Translation Group(3)…….. )

  18. MIB (계속) 4-2. MIB-2  현재까지 MIB의 두 가지 버전이 개발되었는데 MIB-I과 MIB-II이다. MIB-II 는 몇 개의 오브젝트와 몇 개의 그룹을 더한 MIB-Ⅰ의 확장판이다. 1. 새로이 추가되는 오브젝트는 다음 3가지 방법중 한가지의 방법으로 MIB에 정의될 수 있다. Ⅰ. MIB-II 서브트리는 완전히 새로운 버전에 의해서 확장되거나 대치될 수 있다. Ⅱ. 실험적인 MIB은 특정 어플리케이션에 대해 구축될 수 있다. Ⅲ. 특정 벤더/개인에 의한 확장은 Private 서브트리에 추가될 수 있다.

  19. system.sysDescr.0 = "Cisco Internetwork Operating System Software ..IOS (tm) GS Software (RSP-J-M), Version 11.1(18)CA, EARLY DEPLOYMENT RELEASE SOFTWARE (fc1) ..Synced to mainline version: 11.1(18)..Copyright (c) 1986-1998 by cisco Systems , Inc...Compiled Thu 26-Mar-98 02:42" system.sysObjectID.0 = OID: enterprises.Cisco.1.46 system.sysUpTime.0 = Timeticks: (52207611) 6 days, 1:01:16 system.sysName.0 = "baram" system.sysServices.0 = 78 MIB (계속) 2. MIB-II 오브젝트는 11개의 MIB Object Group으로 나뉜다. I. System Group : 시스템 그룹은 Agent에 대한 일반 정보를 제공한다. 이 그룹의 오브젝트는 스스로 설명적인 성격이 있으며 각 오브젝트들의 실례는 다음과 같다.

  20. MIB (계속) II. Interface Group : 인터페이스 그룹은 네트워크 시스템의 인터페이스에서 발생할 수 있는 트래픽 사건의 통계와 조직 정보를 포함하여, 개체의 물리적 인터페이스와 관련된 순수한 정보를 가지고 있다. ifNumber.0 = 2 interfaces.ifTable.ifEntry.ifIndex.1 = 1 interfaces.ifTable.ifEntry.ifIndex.2 = 2 interfaces.ifTable.ifEntry.ifDescr.1 = "lo0" Hex: 6C 6F 30 interfaces.ifTable.ifEntry.ifType.1 = softwareLoopback(24) interfaces.ifTable.ifEntry.ifType.2 = other(1) interfaces.ifTable.ifEntry.ifMtu.1 = 8232 interfaces.ifTable.ifEntry.ifMtu.2 = 1500 interfaces.ifTable.ifEntry.ifSpeed.1 = Gauge: 10000000 interfaces.ifTable.ifEntry.ifSpeed.2 = Gauge: 9600 interfaces.ifTable.ifEntry.ifAdminStatus.1 = up(1) interfaces.ifTable.ifEntry.ifAdminStatus.2 = up(1) --------------- 중 략 ----------------- interfaces.ifTable.ifEntry.ifOperStatus.1 = up(1) interfaces.ifTable.ifEntry.ifOperStatus.2 = up(1) interfaces.ifTable.ifEntry.ifLastChange.1 = Timeticks: (0) 0:00:00 interfaces.ifTable.ifEntry.ifLastChange.2 = Timeticks: (0) 0:00:00 interfaces.ifTable.ifEntry.ifInOctets.1 = 0 interfaces.ifTable.ifEntry.ifInUcastPkts.1 = 1607053 interfaces.ifTable.ifEntry.ifInNUcastPkts.1 = 0 interfaces.ifTable.ifEntry.ifInNUcastPkts.2 = 0 interfaces.ifTable.ifEntry.ifInDiscards.1 = 0 interfaces.ifTable.ifEntry.ifInErrors.1 = 0 interfaces.ifTable.ifEntry.ifOutOctets.1 = 0 interfaces.ifTable.ifEntry.ifOutUcastPkts.1 = 1607053 interfaces.ifTable.ifEntry.ifOutDiscards.1 = 0 interfaces.ifTable.ifEntry.ifOutErrors.2 = 237732

  21. MIB (계속) at.atTable.atEntry.atIfIndex.1.1.150.183.10.1 = 1 at.atTable.atEntry.atIfIndex.1.1.150.183.10.20 = 1 at.atTable.atEntry.atIfIndex.1.1.150.183.10.40 = 1 at.atTable.atEntry.atIfIndex.1.1.150.183.10.44 = 1 at.atTable.atEntry.atPhysAddress.1.1.150.183.10.1 = Hex: 00 60 5C 53 A6 A1 at.atTable.atEntry.atPhysAddress.1.1.150.183.10.20 = Hex: 00 A0 24 9D B1 2A at.atTable.atEntry.atPhysAddress.1.1.150.183.10.40 = Hex: 08 00 20 81 50 AE at.atTable.atEntry.atPhysAddress.1.1.150.183.10.44 = Hex: 00 60 97 5F E6 A7 at.atTable.atEntry.atNetAddress.1.1.150.183.10.1 = IpAddress: 150.183.10.1 at.atTable.atEntry.atNetAddress.1.1.150.183.10.20 = IpAddress: 150.183.10.20 at.atTable.atEntry.atNetAddress.1.1.150.183.10.40 = IpAddress: 150.183.10.40 at.atTable.atEntry.atNetAddress.1.1.150.183.10.44 = IpAddress: 150.183.10.44 III . Address-Translation Group : 주소 변환 그룹은 IP Address와 MAC Address간의 매핑 표로 구성된다

  22. ip.ipForwarding.0 = not-forwarding(2) ip.ipDefaultTTL.0 = 255 ip.ipInReceives.0 = 30234322 ip.ipInHdrErrors.0 = 0 ip.ipInAddrErrors.0 = 0 ip.ipForwDatagrams.0 = 0 ip.ipInUnknownProtos.0 = 1444268 ip.ipInDiscards.0 = 60 ip.ipInDelivers.0 = 29876101 ip.ipOutRequests.0 = 29014570 ip.ipOutDiscards.0 = 0 ip.ipOutNoRoutes.0 = 0 ip.ipReasmTimeout.0 = 60 ip.ipReasmReqds.0 = 0 ip.ipReasmOKs.0 = 0 ip.ipReasmFails.0 = 0 ip.ipFragCreates.0 = 0 ip.ipAddrTable.ipAddrEntry.ipAdEntAddr.127.0.0.1 = IpAddress: 127.0.0.1 ip.ipAddrTable.ipAddrEntry.ipAdEntAddr.150.183.10.40 = IpAddress: 150.183.10.40 ip.ipAddrTable.ipAddrEntry.ipAdEntReasmMaxSize.150.183.10.40 = 65535 ---------------------- 중 략 --------------------------- ip.ipRouteTable.ipRouteEntry.ipRouteDest.0.0.0.0 = IpAddress: 0.0.0.0 ---------------------- 중 략 --------------------------- ip.ipNetToMediaTable.ipNetToMediaEntry.ipNetToMediaType.1.150.183.10.101 = dynamic(3) ip.ipNetToMediaTable.ipNetToMediaEntry.ipNetToMediaType.1.224.0.0.0 = dynamic(3) ip.ipRoutingDiscards.0 = 0 Ⅳ. IPGroup : IP 그룹은 노드에서 IP의 구현과 수행에 관련된 정보를 포함한다. MIB (계속)

  23. MIB (계속) Ⅴ. ICMP(Internet Control Meassge Protocol) : ICMP 그룹은 노드에서 ICMP의 구현과 동작에 관련된 정보.즉, ICMP 입출력 메시지중에서 Error, TimeExcds, Echos등의 정보 통계를 포함한다.이 그룹은 오로지 주고 받는 ICMP 메시지의 다양한 형태를 측정한다. Ⅵ. TCP ( Transmission Control Protocol ) : TCP그룹은 노드에서 TCP의 구현과 동작에 관련된 정보를 포함. 이 그룹의 유일한 표는 tcpConnTable 이며 TCP세션 정보가 계속 모니터링되어 저장된다.

  24. udp.udpInDatagrams.0 = 621140 udp.udpNoPorts.0 = 488043 udp.udpInErrors.0 = 0 udp.udpOutDatagrams.0 = 679578 udp.udpTable.udpEntry.udpLocalAddress.0.0.0.0.0 = IpAddress: 0.0.0.0 udp.udpTable.udpEntry.udpLocalAddress.0.0.0.0.7 = IpAddress: 0.0.0.0 [중략] udp.udpTable.udpEntry.udpLocalPort.0.0.0.0.32805 = 32805 udp.udpTable.udpEntry.udpLocalPort.0.0.0.0.32995 = 32995 Ⅶ. UDP ( User Datagram Protocol ) : UDP 그룹은 노드에서 UDP의 구현과 동작에 관련된 정보 포함 게다가 주고 받은 데이터그램과 관련된 정보 즉, 입력 데이터그램의 수(udpDatagrams), 입력 에러 데이터그램(udpError)등과 같은 객체들이 있다. MIB (계속)

  25. MIB (계속) Ⅷ. EGP (External Gateway Protocol ) : EGP 그룹은 노드에서 EGP의 구현과 동작에 관련된 정보를 포함한다. 추가로 주고 받은 EGP 메시지에 관한 정보도 포함한다. 이 그룹은 egpNeighTable을 포함하는데 이 표는 자기 측 개체에 알려진 이웃 게이트웨이에 대한 정보를 갖고 있다. 이 표는 이웃 게이트웨이의 IP 주소인 egpNeighAddr에 의해 구분된다. Ⅸ. Transmission Group : 전송 그룹은 시스템의 각 인터페이스에 대해 전송 매체에 있을 수 있는 세부 사항을 제공하는 오브젝트를 포함하려는 의도로 만들어졌다. 현재 그러한 오브젝트들은 MIB-II에 정의되지 않았다. 현재 RFC와 관련된 여러 정의서들이 전송 그룹으로 이동하고 있다. Ⅹ. SNMP Group : 이 SNMP그룹은 원격의 피관리 시스템(SNMP agent)으로의 접근을 위한 응용 프로토콜 그룹이다.

  26. SNMP 동작원리 5-1. SNMP가 지원하는 동작 1. SNMP가 지원하는 동작은 MIB 오브젝트 값의 변경과 검색이다. 다음과 같은 명령으로 특정동작을 지시한다. I . Get : Management Station이 Agent의 MIB 오즈젝트 값을 검색해 온다. II . Set : Management Station이 Agent의 Write 가능한 MIB 오브젝트 값을 설정한다. III . Trap : SNMP Agent가 Management Station에 자발적으로 특정 사건을 보고하는 오브젝트 값을 보낸다. 2. SNMP 프로토콜 세부 사항 ( SNMP 메시지 포맷 )  SNMP를 이용한 네트워크 관리에서 Management Station과 SNMP Agent간의 정보 교환은 SNMP 메시지의 형태로 교환된다. <그림1-4 SNMP 기본통신 >

  27. <그림 1.5 SNMP PDU Format > SNMP 동작원리 SNMP 메시지는 첫 번째 필드에 SNMP의 버전을 나타내는 버전 번호를 포함한다. 그리고 두 번째 필드는 community라는 필드인데 이 필드는 에이전트로의 접근을 허가하는 일종의 패스워드 역할을 수행한다. SNMP PDU에는 5가지 종류가 있다. SNMP PDU의 첫 번째 필드는 PDU type을 지시하며 이 필드를 통해 5가지 PDU 종류가 구분된다. [그림 1-5]는 SNMP PDU 포맷을 보여주며, 그림(a)는 SNMP Message를 포맷을 (b)의 PDU는 GetRequest PDU, GetNextRequest PDU, 그리고 SetRequest PDU를 나타내며 (c)는 GetResponse PDU를, (d)는 Trap PDU를 나타낸다. 각각의 다섯 PDU는 ASN.1 형태에 의해 개별적으로 정의된다. 그리고 각 PDU의 variablebindings 필드는 이름과 값의 형식들로 이루어진다. enterprise

  28. SNMP 동작원리 I . GetRequest-PDU : Management Station이 관리대상들의 리스트에 관한 속성값을 얻기위해 Agent에 요구. Agent는 그 요구에 대한 성공이나 실패를 나타내는 답을 보낸다. 즉.그 요구가 성공적 이라면 결과 메시지는 어떤 요구된 대상의 값을 포함하게 된다. II . GetNextRequest-PDU : GetRequest-PDU와 동작원리가 거의 동일한 교환형태를 지니며 같은 형식을 갖고있다. 유일한 차이점은 GetRequest-PDU는 주어진 오브젝트에 대한 값이 결과로 돌아오는 반면에 GetNextRequest-PDU는 주어진 오브젝트의 사전적 순서의 다음 오브젝트의 값이 돌아온다는 것이다. III. GetResponse-PDU : 이 PDU는 Management Station에 의해 요구된 MIB의 오브젝트의 속성값을 되돌려주기 위해 SNMP Agent에 의해 사용된다. Ⅳ. SetRequest-PDU : Agent의 특정 MIB 오브젝트 값을 읽기보다는 쓰기를 위한 동작이다.그러므로 Variable Binding의 의 목록에 오브젝트명(OID)과 값의 형식, 쓰고자 하는 값을 모두 넣어줘야 한다. Ⅴ. Trap-PDU : Trap은 Agent 자신에 의해서 발생한다. 즉, 특정 상황이 발생했음을 Management Station에게 알린다.

  29. SNMP 동작원리 Trap PDU 형식은 다른 PDU와는 상당히 다르다. 각 필드는 다음과 같다 PDU type : Trap PDU임을 알린다. enterprise : trap 을 생성하는 네트워크 관리 서브 시스템임을 인식한다. 이 값은 시스템 그룹의 sysObjectID로 부터 결정된다. agent-addr : trap을 생성하는 오브젝트의 IP 주소. generic-trap : 미리 정의된 trap 형식 중의 하나. specific-trap : 더 세분하게 trap의 본성을 나타내는 코드. time-stamp : Trap의 timestamp는 초기화 시간에서부터 trap이 발생한 시간까지를 기록한다. variable-binding : trap과 관련된 추가 정보. Trap은 송신자의 상태를 알리는데 도움이 될 수 있는 추가의 변수 리스트를 포함

  30. SNMP 동작원리 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을 제외한 그밖의 상태를 알리고자하는데 사용된다.

  31. SNMP 동작원리 다른 PDU와는 달리 Trap PDU는 다른 편으로부터 응답 메시지를 이끌어내지 않는다. <그림 1-6> 은 이러한 SNMP PDU의 송, 수신을 보여준다. <그림 1-6 PDU 통신방식>

  32. SNMPv1 VS SNMPv2 6-1. WAN환경에서 SNMP의 한계점 I . 대역폭의 과다 소요로 많은 장비를 관리하기 어렵다. II . SNMP를 지원하는 네트워크 장비간의 트래픽을 모니터링할 때 해당 노드의 인터페이스에서 발생하지 않은 트래픽에 대해서는 인식하지 못할 수 도 있다. III . 여러 Agent들의 데이터를 처리하여 통계 정보를 분석할 경우 해당 Agent들로부터 필요한 모든 정보를 관리국이 수집해야 하므로 많은 트래픽이 관리국으로 집중, 관리국의 성능을 고려해야 한다. Ⅳ. SNMP Agent를 갖고 있는 네트워크 장비는 만일 그 장비가 본연의 임무를 수행하는 동안 Agent가 트래픽 정보를 분석하는 경우 그 자원의 왜곡이 있을 수 있으며, 충분한 성능을 확보하지 못할 때는 문제가 될 수 있다.

  33. SNMPv1 VS SNMPv2 6-2. SNMPv1의 문제점 및 SNMPv2의등장 1)SNMPv1 의 문제점 I . 보안기능이 거의 없다. II . sysLocation 처럼 객체에 단 하나만의 값이 존재하는 경우는 문제가 없으나 RoutingTable처럼 많은 열(row)이 존재하는 경우에는 전체 테이블을 읽고 싶을 때 수많은 요청/응답을 반복해야 한다. III. 여러 관리자가 존재시에 관리자간의 통신기능이 정의 되어 있지 않다. 이러한 문제점을 수정하기 위해서 SNMPv2가 등장했다.

  34. SNMPv1 VS SNMPv2 2) SNMPv2 의 등장 I . 관리자와 관리자간의 통신을 위한 InformRequest-PDU가 정의되었고 이를 위한 Management To Management MIB를 정의. 관리자간의 통신이 가능해짐으로 분산관리의 도입이 가능해졌다. II . 커다란 테이블 객체들의 값을 손쉽게 읽어오기 위해서 GetBulkRequest-PDU를 도입했다. 이에 따라 한번의 요청으로 여러 테이블 값들을 읽어오는 것이 가능해졌고 불필요한 대역폭을 줄일수 있게되었다. III . 가장 큰 문제였던 보안 기능이 추가되었다. 전송되는 데이터 보안 기능을 위해서 DES(Data Encryption Standard) 알고리즘을 사용. 인증 절차에 대한 보안을 위해서 MD5(Message Digest 5)알고리즘을 사용. party mib을 이용해서 특정한 사용자에게만 특정 객체를 이용하거나 못하게하는 접근통제(Access Control)기능추가. Ⅳ. SNMPv1은 UDP를 기본으로 이용하는데 비해서 SNMPv2는 전송계층에 대해서 UDP 뿐만 아니라 OSI Connectionless Network Services(CLNS) AppleTalk’s Datagram Deivery Protocol(DDP) Novell’s Internetwork Packet Exchange(IPX) 등도 구현할 수 있도록 정의

  35. HP OpenView 예제

  36. HP OpenView 예제

  37. HP OpenView 예제

  38. HP OpenView 예제

  39. HP OpenView 예제

  40. HP OpenView 예제

  41. HP OpenView 예제

  42. HP OpenView 예제

  43. HP OpenView 예제

  44. HP OpenView 예제

  45. HP OpenView 예제

  46. HP OpenView 예제

  47. HP OpenView 예제

  48. HP OpenView 예제

More Related