rfc-4780

Management Information Base for the Session Initiation Protocol (SIP)

K. Lingle, J-F. Mule, J. Maeng, D. Walker
date2007-04 streamIETF arearai wgsip statusPROPOSED STANDARD pages83 canonicalhttps://www.rfc-editor.org/rfc/rfc4780 doi10.17487/RFC4780
This memo defines a portion of the Management Information Base (MIB) for use with network management protocols in the Internet community. In particular, it describes a set of managed objects that are used to manage Session Initiation Protocol (SIP) entities, which include User Agents, and Proxy, Redirect and Registrar servers. [STANDARDS-TRACK]

Extracted elements (29)

design-rationale §5.2

The NETWORK-SERVICES-MIB framework (RFC 2788) was adopted to meet the requirement that a single system with a single SNMP agent can support multiple instances of various SIP MIB modules. Each SIP entity instance gets its own applIndex row, with recommended naming conventions such as 'sip_proxy1' or 'sip_registrar2' to ensure uniqueness.

sip, snmp

design-rationale §7.2

The sipCommonStatusCodeNotifTable is defined as a separate augmenting table rather than adding notification control columns directly to sipCommonStatusCodeTable in order to keep status code notification control objects logically separate from the actual status code statistics counters.

sip, snmp

design-rationale §6

The SipTCMethodName textual convention uses a variable-length OCTET STRING (1..100) rather than an enumeration so that the MIB can accommodate new IANA-registered SIP methods and experimental extension methods without requiring a module update. Extension methods must ensure no name collision with IANA-assigned values.

sip, snmp, registry

interoperability-note §5.2

For a combined Proxy+Registrar+Redirect server managed as a single aggregate entity, a recommended naming order for applName is: Proxy listed first, Redirect second if present, Registrar always last (e.g., 'sip_proxy_redirect_registrar2'). This facilitates consistent agent behavior and management application expectations.

sip, snmp

interoperability-note §5.2

The 'testing' operational status value in sipCommonCfgServiceOperStatus has no direct equivalent in the NETWORK-SERVICES-MIB applOperStatus; it maps to 'up' for the applOperStatus. Similarly, 'unknown' has no corresponding applOperStatus value, requiring retention of the last known applOperStatus value.

sip, snmp

normative-requirement §5.2 MUST

A device implementing the SIP MIB MUST support the NETWORK-SERVICES-MIB and, at a minimum, MUST support the index and name objects (applIndex and applName) in the application table (applTable) to allow each instance of a SIP entity to be managed as a separate network service application.

sip, snmp

normative-requirement §5 MUST

An SNMP agent MUST implement the SIP-TC-MIB module plus the SIP-COMMON-MIB module and one of the SIP entity-type-specific MIB modules (SIP-SERVER-MIB or SIP-UA-MIB) as applicable for each instance of a SIP entity being managed. If a device has more than one SIP entity or multiple instances of the same entity type, it MUST implement multiple SIP modules.

sip, snmp

normative-requirement §7.1 MUST

Any object using the SipTCMethodName textual convention that supports experimental extension methods MAY return/accept method identifier values other than those sanctioned by IANA, but that system MUST ensure no collisions with officially assigned method names.

sip, snmp, registry

normative-requirement §7.2 MUST

Entries created in sipCommonStatusCodeTable MUST NOT persist across reboots; this table is the mechanism by which specific SIP status codes are monitored on a per-method basis.

sip, snmp

normative-requirement §5.2 SHOULD

If the sipOperStatus is 'unknown', there is no corresponding value of applOperStatus; therefore, the last known value of applOperStatus SHOULD be maintained until sipOperStatus transitions to a value that can be mapped appropriately.

sip, snmp

normative-requirement §7.2 SHOULD

Support for sipCommonCfgServiceNotifEnable notifications is OPTIONAL; either none or all notification values MUST be supported. If notifications are supported, the default value SHOULD have sipCommonServiceColdStart and sipCommonServiceWarmStart enabled and sipCommonServiceStatusChanged disabled, and the value SHOULD persist across reboots.

sip, snmp

normative-requirement §7.2 MUST

The list of methods advertised by a SIP entity in the Allow header (RFC 3261 Section 20.5) MUST be consistent with the methods reflected in the sipCommonMethodSupportedTable.

sip, snmp

normative-requirement §7.2 MUST

The sipCommonStatusCodeNotifSend object MUST be set to 'true' for the emit mode specified in sipCommonStatusCodeNotifEmitMode to have any effect; it is RECOMMENDED that the desired emit mode be established before enabling notifications to avoid unintended behavior.

sip, snmp

normative-requirement §5.2 MUST

The value of applUptime MUST be identical to the value of sipCommonCfgServiceStartTime, and the value of applLastChange MUST be identical to the value of sipCommonCfgServiceLastChange defined in the SIP-COMMON-MIB module.

sip, snmp

normative-requirement §7.2 MUST

Timer D's default value MUST be equal to or greater than 32000 milliseconds for UDP transport, and its value MUST be 0 for TCP/SCTP transport, governing the time a server transaction can remain in the 'Completed' state.

sip, snmp

normative-requirement §7.2 MUST

Timer G's default value MUST be T1 for UDP transport, and its value MUST be 0 for reliable transport like TCP/SCTP; it controls the initial retransmit interval for final responses to INVITE requests.

sip, snmp

normative-requirement §7.2 MUST

When Timer J fires, the server MUST transition to the 'Terminated' state; Timer J reflects the maximum time a SIP server will wait to receive retransmissions of non-INVITE requests after entering the 'Completed' state.

sip, snmp

normative-requirement §7.2 MUST

When Timer K fires, the client MUST transition to the 'Terminated' state; its default value MUST be T4 for UDP transport and MUST be 0 for reliable transports like TCP/SCTP.

sip, snmp

protocol-element §5

Four MIB modules are defined: SIP-TC-MIB (textual conventions), SIP-COMMON-MIB (objects common to all SIP entities), SIP-UA-MIB (user agent-specific objects), and SIP-SERVER-MIB (proxy, redirect, and registrar server objects). All are indexed via applIndex from the NETWORK-SERVICES-MIB.

sip, snmp

protocol-element §7.2

sipCommonCfgServiceOperStatus defines seven operational states for a SIP entity: unknown(1), up(2), down(3), congested(4), restarting(5), quiescing(6), and testing(7). The 'testing' state maps to 'up' in the NETWORK-SERVICES-MIB applOperStatus.

sip, snmp

protocol-element §7.2

sipCommonCfgTimerTable contains 14 configurable timer objects (A through K, T1, T2, T4) applicable to SIP user agents and stateful proxy servers. Timer T1 is the RTT estimate (default 500ms), T2 the maximum retransmit interval (default 4000ms), and T4 the maximum message network duration (default 5000ms).

sip, snmp

protocol-element §7.2

sipCommonStatsRetryTable tracks retransmission statistics per SIP method, providing counters for total request retries (sipCommonStatsRetries), final response retransmissions (sipCommonStatsRetryFinalResponses), and non-final response retransmissions (sipCommonStatsRetryNonFinalResponses).

sip, snmp

protocol-element §7.2

sipCommonStatusCodeNotifTable augments sipCommonStatusCodeTable and provides four notification control objects: sipCommonStatusCodeNotifSend (enable/disable), sipCommonStatusCodeNotifEmitMode (normal/oneShot/triggered), sipCommonStatusCodeNotifThresh (default 500), and sipCommonStatusCodeNotifInterval (default 60 seconds).

sip, snmp

protocol-element §7.2

sipCommonSummaryStatsTable provides six aggregate counters per SIP entity: InRequests, OutRequests, InResponses, OutResponses, TotalTransactions (not applicable to stateless proxies), and DisconTime for detecting counter discontinuities.

sip, snmp

protocol-element §7.1

SipTCEntityRole is a bit-map textual convention with five bits: other(0), userAgent(1), proxyServer(2), redirectServer(3), registrarServer(4). A single entity row may have multiple bits set to represent combined roles.

sip, snmp

protocol-element §7.1

SipTCTransportProtocol is a bit-map textual convention with six bits: other(0), udp(1), tcp(2), sctp(3), tlsTcp(4), tlsSctp(5). It is used to indicate the transport protocols supported or active for a SIP entity.

sip, snmp, tls, sctp

registry §8

This document requests IANA assignment of four MIB modules under mib-2: SIP-TC-MIB at mib-2 148, SIP-COMMON-MIB at mib-2 149, with SIP-UA-MIB and SIP-SERVER-MIB also assigned under mib-2. The document uses the existing IANA SIP Methods and Response Codes sub-registries at iana.org/assignments/sip-parameters.

sip, snmp, registry

security-consideration §9

Several MIB objects have MAX-ACCESS read-write or read-create, including sipCommonCfgServiceNotifEnable, sipCommonStatusCodeRowStatus, and status code notification controls. Unauthorized modification of these objects could disrupt SIP management operations or flood the network with notifications; SNMP security mechanisms (SNMPv3 USM) should be used to restrict write access.

sip, snmp, security

security-consideration §9

The SIP MIB exposes configuration and statistics of SIP entities including organization names, transport protocols, port numbers, and registered user URIs (in sipServerRegUserTable). This information could be exploited by attackers for reconnaissance; network operators should restrict read access using SNMPv3 with authentication and privacy.

sip, snmp, security, privacy