{{위키데이터 속성 추적}}
{{OSI스택}}
{{IP스택}}
'''간이 망 관리 프로토콜'''({{lang|en|Simple Network Management Protocol}}, '''SNMP''')은 [[인터넷 프로토콜|IP]] 네트워크상의 장치로부터 정보를 수집 및 관리하며, 또한 정보를 수정하여 장치의 동작을 변경하는 데에 사용되는 [[인터넷 프로토콜 스위트|인터넷 표준 프로토콜]]이다. SNMP를 지원하는 대표적인 장치에는 라우터, 스위치, 서버, 워크스테이션, 프린터, 모뎀 랙 등이 포함된다.<ref name="ESNMP">{{서적 인용 |저자=Douglas R. Mauro & Kevin J. Schmidt. |연도=2001 | 제목=Essential SNMP |판=1st |위치=Sebastopol, CA |출판사=O’Reilly & Associates}}</ref>

SNMP는 네트워크 모니터링의 목적으로 네트워크 관리에서 널리 사용된다. SNMP는 [[관리 정보 베이스]](Management Information Base) 상에 관리 중인 시스템의 상태와 설정을 변수의 형태로 관리할 수 있게 해준다. 이러한 변수들은 관리 프로그램에 의해 원격에서 질의될 수 있으며, 경우에 따라서는 원격에서 값을 설정할 수도 있다.

현재 사용되는 SNMP의 주요 버전은 세 가지로, SNMPv1이 가장 초기 버전이며 이후 개발된 SNMPv2와 SNMPv3는 성능 및 유연성, 보안성 면에서 향상된 버전이다.

SNMP는 [[국제 인터넷 표준화 기구]]에 의해 정의된 [[인터넷 프로토콜 스위트]]의 일부분이다. 인터넷 프로토콜 스위트는 응용 계층 프로토콜, 데이터베이스 명세, 데이터 객체 집합 등을 포함하는 네트워크 관리용 표준들로 구성되어 있다.<ref name="RFC 3411">RFC 3411&nbsp;— An Architecture for Describing Simple Network Management Protocol (SNMP) Management Frameworks</ref>

== 개요 및 기본 개념 ==
[[파일:SNMP communication principles diagram.PNG|섬네일|SNMP 통신의 원리|500px]]
SNMP는 일반적으로, 하나 이상의 관리 컴퓨터("매니저"라고 함)는 [[컴퓨터 네트워크]]에서 호스트나 장치들의 그룹을 관리하거나 감시하는 일을 맡는다. 관리를 받는 각각의 시스템은 에이전트라는 이름의 소프트웨어 구성 요소를 실행하여 SNMP를 통해 정보를 매니저로 전달한다.

SNMP 관리 네트워크는 3가지 구성 요소를 이룬다:
* 매니지드 디바이스
* [[소프트웨어 에이전트|에이전트]] - 매니지드 디바이스 위에 실행되는 소프트웨어
* 네트워크 관리국(Network management station, NMS) - 매니저 위에 실행되는 소프트웨어

매니지드 디바이스는 SNMP 인터페이스를 구현하는 네트워크 노드로서, 노드에 특화된 정보에 대한 읽기 전용 또는 읽기/쓰기 접근을 허용한다.

에이전트는 매니지드 디바이스에 상주하는 네트워크 관리 소프트웨어 모듈이다.

[[네트워크 관리국]](NMS)은 매니지드 디바이스를 감시하고 제어하는 애플리케이션들을 실행한다.

== 프로토콜 상세 구조 ==
{| class="wikitable"
|-
| IP 헤더
| UDP 헤더
| 버전
| 커뮤니티
| PDU 유형
| 요청 id
| 오류 상태
| 오류 색인
| 변수 바인딩
|}

== 각주 ==
{{각주}}

== 외부 링크 ==
* {{위키공용분류-줄}}
* [http://www.joinc.co.kr/modules/moniwiki/wiki.php/Site/SNMP SNMP 프로그래밍]
* {{언어링크|en}} [http://www.simpleweb.org SimpleWeb] {{웨이백|url=http://www.simpleweb.org/ |date=20210427032841 }}
* {{언어링크|en}} https://web.archive.org/web/20041211220101/http://www.henrys.de/daniel/download/SNMP.HTM
* {{언어링크|en}} [http://www.snmp.com/FAQs/snmp-faq-part1.txt SNMP FAQ part 1]
* {{언어링크|en}} [http://www.snmp.com/FAQs/snmp-faq-part2.txt SNMP FAQ part 2]
* {{언어링크|en}} [http://www.iana.org/assignments/enterprise-numbers Private Enterprise Numbers from IANA(Internet Assigned Numbers Authority)]

=== 구현 ===
* {{언어링크|en}} [http://www.net-snmp.org/ Net-SNMP: 오픈소스 SNMP 구현 ]
* {{언어링크|en}} [http://netsnmpj.sourceforge.net/ Netsnmpj: 자바로 만든 오픈 소스 SNMP 구현]
* {{언어링크|en}} [http://sourceforge.net/projects/opensnmp/ OpenSNMP: 다중 스레드 SNMPv3 엔진]
* {{언어링크|en}} [http://pysnmp.sf.net PySNMP: 순수 파이썬 모듈, BSD 라이선스]
* {{언어링크|en}} [https://web.archive.org/web/20060709184231/http://oasis.frogfoot.net/code/tinysnmp/ TinySNMP]
* {{언어링크|en}} [http://www.snmp4j.org SNMP4J : 자바로 만든 오픈소스 SNMP 구현 (Apache License)]

=== 관련 RFC 문서들 ===
아래의 RFC 문서들은 전부 영문임.

* RFC 1155 — Structure and Identification of Management Information for TCP/IP-based Internets
* RFC 1156 — Management Information Base for Network Management of TCP/IP-based internets
* RFC 1157 — A Simple Network Management Protocol (SNMP)
* RFC 1441 — Introduction to version 2 of the Internet-standard Network Management Framework
* RFC 1213 — Management Information Base for Network Management of TCP/IP-based internets: MIB-II
* RFC 3410 (Informational) — Introduction and Applicability Statements for Internet Standard Management Framework
* RFC 3411 (Standard 62) — An Architecture for Describing Simple Network Management Protocol (SNMP) Management Frameworks
* RFC 3412 (Standard 62) — Message Processing and Dispatching for the Simple Network Management Protocol (SNMP)
* RFC 3413 (Standard 62) — Simple Network Management Protocol (SNMP) Application
* RFC 3414 (Standard 62) — User-based Security Model (USM) for version 3 of the Simple Network Management Protocol (SNMPv3)
* RFC 3415 (Standard 62) — View-based Access Control Model (VACM) for the Simple Network Management Protocol (SNMP)
* RFC 3416 (Standard 62) — Version 2 of the Protocol Operations for the Simple Network Management Protocol (SNMP)
* RFC 3417 (Standard 62) — Transport Mappings for the Simple Network Management Protocol (SNMP)
** RFC 3418 (Standard 62) — Management Information Base (MIB) for the Simple Network Management Protocol (SNMP)
* RFC 3512 (Informational) — Configuring Networks and Devices with Simple Network Management Protocol (SNMP)
* RFC 3584 (Best Current Practice) — Coexistence between Version 1, Version 2, and Version 3 of the Internet-standard Network Management Framework

{{전거 통제}}

[[분류:응용 계층 프로토콜]]
[[분류:인터넷 표준]]
[[분류:인터넷 프로토콜]]
[[분류:네트워크 관리]]
[[분류:시스템 관리]]
[[분류:다중 에이전트 시스템]]