RFC 3430 (rfc3430) - Page 2 of 10
Simple Network Management Protocol Over Transmission Control Protocol Transport Mapping
Alternative Format: Original Text Document
RFC 3430 SNMP over TCP Transport Mapping December 2002
1. Introduction
This memo defines a transport mapping for using the Simple Network
Management Protocol (SNMP) [1] over TCP [2]. The transport mapping
can be used with any version of SNMP. This document extends the
transport mappings defined in STD 62, RFC 3417 [3].
The SNMP over TCP transport mapping is an optional transport mapping.
SNMP protocol engines that implement the SNMP over TCP transport
mapping MUST also implement the SNMP over UDP transport mapping as
defined in STD 62, RFC 3417 [3].
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in BCP 14, RFC 2119 [4].
2. SNMP over TCP
SNMP over TCP is an optional transport mapping. It is primarily
defined to support more efficient bulk transfer mechanisms within the
SNMP framework [5].
The originator of a request-response transaction chooses the
transport protocol for the entire transaction. The transport
protocol MUST NOT change during a transaction.
In general, originators of request/response transactions are free to
use the transport they assume is the best in a given situation.
However, since TCP has a larger footprint on resource usage than UDP,
engines using SNMP over TCP may choose to switch back to UDP by
refusing new TCP connections whenever necessary (e.g. too many open
TCP connections).
When selecting the transport, it is useful to consider how SNMP
interacts with TCP acknowledgments and timers. In particular,
infrequent SNMP interactions over TCP may lead to additional IP
packets carrying acknowledgments for SNMP responses if there is no
chance to piggyback them. Furthermore, it is recommended to
configure SNMP retransmission timers to fire later when using SNMP
over TCP to avoid application specific timeouts before the TCP timers
have expired.
2.1 Serialization
Each instance of a message is serialized into a single BER-encoded
message, using the algorithm specified in Section 8 of STD 62, RFC
3417 [3]. The BER-encoded message is then sent over a TCP
Schoenwaelder Experimental