• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1UDP-MIB DEFINITIONS ::= BEGIN
2
3IMPORTS
4    MODULE-IDENTITY, OBJECT-TYPE, Integer32, Counter32, Counter64,
5    Unsigned32, IpAddress, mib-2       FROM SNMPv2-SMI
6    MODULE-COMPLIANCE, OBJECT-GROUP    FROM SNMPv2-CONF
7    InetAddress, InetAddressType,
8    InetPortNumber                     FROM INET-ADDRESS-MIB;
9
10udpMIB MODULE-IDENTITY
11    LAST-UPDATED "200505200000Z"  -- May 20, 2005
12    ORGANIZATION
13           "IETF IPv6 Working Group
14            http://www.ietf.org/html.charters/ipv6-charter.html"
15    CONTACT-INFO
16           "Bill Fenner (editor)
17
18            AT&T Labs -- Research
19            75 Willow Rd.
20            Menlo Park, CA 94025
21
22            Phone: +1 650 330-7893
23            Email: <fenner@research.att.com>
24
25            John Flick (editor)
26
27            Hewlett-Packard Company
28            8000 Foothills Blvd. M/S 5557
29            Roseville, CA 95747
30
31            Phone: +1 916 785 4018
32            Email: <john.flick@hp.com>
33
34            Send comments to <ipv6@ietf.org>"
35
36
37
38    DESCRIPTION
39           "The MIB module for managing UDP implementations.
40            Copyright (C) The Internet Society (2005).  This
41            version of this MIB module is part of RFC 4113;
42            see the RFC itself for full legal notices."
43    REVISION      "200505200000Z"  -- May 20, 2005
44    DESCRIPTION
45           "IP version neutral revision, incorporating the
46            following revisions:
47
48            - Added udpHCInDatagrams and udpHCOutDatagrams in order
49              to provide high-capacity counters for fast networks.
50            - Added text to the descriptions of all counter objects
51              to indicate how discontinuities are detected.
52            - Deprecated the IPv4-specific udpTable and replaced it
53              with the version neutral udpEndpointTable.  This
54              table includes support for connected UDP endpoints
55              and support for identification of the operating
56              system process associated with a UDP endpoint.
57            - Deprecated the udpGroup and replaced it with object
58              groups representing the current set of objects.
59            - Deprecated udpMIBCompliance and replaced it with
60              udpMIBCompliance2, which includes the compliance
61              information for the new object groups.
62
63            This version published as RFC 4113."
64    REVISION      "199411010000Z"    -- November 1, 1994
65    DESCRIPTION
66           "Initial SMIv2 version, published as RFC 2013."
67    REVISION      "199103310000Z"    -- March 31, 1991
68    DESCRIPTION
69           "The initial revision of this MIB module was part of
70            MIB-II, published as RFC 1213."
71    ::= { mib-2 50 }
72
73-- the UDP group
74
75udp      OBJECT IDENTIFIER ::= { mib-2 7 }
76
77udpInDatagrams OBJECT-TYPE
78    SYNTAX     Counter32
79    MAX-ACCESS read-only
80    STATUS     current
81    DESCRIPTION
82           "The total number of UDP datagrams delivered to UDP
83            users.
84
85
86
87
88
89            Discontinuities in the value of this counter can occur
90            at re-initialization of the management system, and at
91            other times as indicated by discontinuities in the
92            value of sysUpTime."
93    ::= { udp 1 }
94
95udpNoPorts OBJECT-TYPE
96    SYNTAX     Counter32
97    MAX-ACCESS read-only
98    STATUS     current
99    DESCRIPTION
100           "The total number of received UDP datagrams for which
101            there was no application at the destination port.
102
103            Discontinuities in the value of this counter can occur
104            at re-initialization of the management system, and at
105            other times as indicated by discontinuities in the
106            value of sysUpTime."
107    ::= { udp 2 }
108
109udpInErrors OBJECT-TYPE
110    SYNTAX     Counter32
111    MAX-ACCESS read-only
112    STATUS     current
113    DESCRIPTION
114           "The number of received UDP datagrams that could not be
115            delivered for reasons other than the lack of an
116            application at the destination port.
117
118            Discontinuities in the value of this counter can occur
119            at re-initialization of the management system, and at
120            other times as indicated by discontinuities in the
121            value of sysUpTime."
122    ::= { udp 3 }
123
124udpOutDatagrams OBJECT-TYPE
125    SYNTAX     Counter32
126    MAX-ACCESS read-only
127    STATUS     current
128    DESCRIPTION
129           "The total number of UDP datagrams sent from this
130            entity.
131
132            Discontinuities in the value of this counter can occur
133            at re-initialization of the management system, and at
134            other times as indicated by discontinuities in the
135            value of sysUpTime."
136    ::= { udp 4 }
137
138
139
140udpHCInDatagrams OBJECT-TYPE
141    SYNTAX     Counter64
142    MAX-ACCESS read-only
143    STATUS     current
144    DESCRIPTION
145           "The total number of UDP datagrams delivered to UDP
146            users, for devices that can receive more than 1
147            million UDP datagrams per second.
148
149            Discontinuities in the value of this counter can occur
150            at re-initialization of the management system, and at
151            other times as indicated by discontinuities in the
152            value of sysUpTime."
153    ::= { udp 8 }
154
155udpHCOutDatagrams OBJECT-TYPE
156    SYNTAX     Counter64
157    MAX-ACCESS read-only
158    STATUS     current
159    DESCRIPTION
160           "The total number of UDP datagrams sent from this
161            entity, for devices that can transmit more than 1
162            million UDP datagrams per second.
163
164            Discontinuities in the value of this counter can occur
165            at re-initialization of the management system, and at
166            other times as indicated by discontinuities in the
167            value of sysUpTime."
168    ::= { udp 9 }
169
170--
171-- { udp 6 } was defined as the ipv6UdpTable in RFC2454's
172-- IPV6-UDP-MIB.  This RFC obsoletes RFC 2454, so { udp 6 } is
173-- obsoleted.
174--
175
176-- The UDP "Endpoint" table.
177
178udpEndpointTable OBJECT-TYPE
179    SYNTAX     SEQUENCE OF UdpEndpointEntry
180    MAX-ACCESS not-accessible
181    STATUS     current
182    DESCRIPTION
183           "A table containing information about this entity's UDP
184            endpoints on which a local application is currently
185            accepting or sending datagrams.
186
187
188
189
190
191            The address type in this table represents the address
192            type used for the communication, irrespective of the
193            higher-layer abstraction.  For example, an application
194            using IPv6 'sockets' to communicate via IPv4 between
195            ::ffff:10.0.0.1 and ::ffff:10.0.0.2 would use
196            InetAddressType ipv4(1).
197
198            Unlike the udpTable in RFC 2013, this table also allows
199            the representation of an application that completely
200            specifies both local and remote addresses and ports.  A
201            listening application is represented in three possible
202            ways:
203
204            1) An application that is willing to accept both IPv4
205               and IPv6 datagrams is represented by a
206               udpEndpointLocalAddressType of unknown(0) and a
207               udpEndpointLocalAddress of ''h (a zero-length
208               octet-string).
209
210            2) An application that is willing to accept only IPv4
211               or only IPv6 datagrams is represented by a
212               udpEndpointLocalAddressType of the appropriate
213               address type and a udpEndpointLocalAddress of
214               '0.0.0.0' or '::' respectively.
215
216            3) An application that is listening for datagrams only
217               for a specific IP address but from any remote
218               system is represented by a
219               udpEndpointLocalAddressType of the appropriate
220               address type, with udpEndpointLocalAddress
221               specifying the local address.
222
223            In all cases where the remote is a wildcard, the
224            udpEndpointRemoteAddressType is unknown(0), the
225            udpEndpointRemoteAddress is ''h (a zero-length
226            octet-string), and the udpEndpointRemotePort is 0.
227
228            If the operating system is demultiplexing UDP packets
229            by remote address and port, or if the application has
230            'connected' the socket specifying a default remote
231            address and port, the udpEndpointRemote* values should
232            be used to reflect this."
233    ::= { udp 7 }
234
235udpEndpointEntry OBJECT-TYPE
236    SYNTAX     UdpEndpointEntry
237    MAX-ACCESS not-accessible
238    STATUS     current
239
240
241
242    DESCRIPTION
243           "Information about a particular current UDP endpoint.
244
245            Implementers need to be aware that if the total number
246            of elements (octets or sub-identifiers) in
247            udpEndpointLocalAddress and udpEndpointRemoteAddress
248            exceeds 111, then OIDs of column instances in this table
249            will have more than 128 sub-identifiers and cannot be
250            accessed using SNMPv1, SNMPv2c, or SNMPv3."
251    INDEX   { udpEndpointLocalAddressType,
252              udpEndpointLocalAddress,
253              udpEndpointLocalPort,
254              udpEndpointRemoteAddressType,
255              udpEndpointRemoteAddress,
256              udpEndpointRemotePort,
257              udpEndpointInstance }
258    ::= { udpEndpointTable 1 }
259
260UdpEndpointEntry ::= SEQUENCE {
261        udpEndpointLocalAddressType   InetAddressType,
262        udpEndpointLocalAddress       InetAddress,
263        udpEndpointLocalPort          InetPortNumber,
264        udpEndpointRemoteAddressType  InetAddressType,
265        udpEndpointRemoteAddress      InetAddress,
266        udpEndpointRemotePort         InetPortNumber,
267        udpEndpointInstance           Unsigned32,
268        udpEndpointProcess            Unsigned32
269    }
270
271udpEndpointLocalAddressType OBJECT-TYPE
272    SYNTAX     InetAddressType
273    MAX-ACCESS not-accessible
274    STATUS     current
275    DESCRIPTION
276           "The address type of udpEndpointLocalAddress.  Only
277            IPv4, IPv4z, IPv6, and IPv6z addresses are expected, or
278            unknown(0) if datagrams for all local IP addresses are
279            accepted."
280    ::= { udpEndpointEntry 1 }
281
282udpEndpointLocalAddress OBJECT-TYPE
283    SYNTAX     InetAddress
284    MAX-ACCESS not-accessible
285    STATUS     current
286    DESCRIPTION
287           "The local IP address for this UDP endpoint.
288
289            The value of this object can be represented in three
290
291
292
293            possible ways, depending on the characteristics of the
294            listening application:
295
296            1. For an application that is willing to accept both
297               IPv4 and IPv6 datagrams, the value of this object
298               must be ''h (a zero-length octet-string), with
299               the value of the corresponding instance of the
300               udpEndpointLocalAddressType object being unknown(0).
301
302            2. For an application that is willing to accept only IPv4
303               or only IPv6 datagrams, the value of this object
304               must be '0.0.0.0' or '::', respectively, while the
305               corresponding instance of the
306               udpEndpointLocalAddressType object represents the
307               appropriate address type.
308
309            3. For an application that is listening for data
310               destined only to a specific IP address, the value
311               of this object is the specific IP address for which
312               this node is receiving packets, with the
313               corresponding instance of the
314               udpEndpointLocalAddressType object representing the
315               appropriate address type.
316
317            As this object is used in the index for the
318            udpEndpointTable, implementors of this table should be
319            careful not to create entries that would result in OIDs
320            with more than 128 subidentifiers; else the information
321            cannot be accessed using SNMPv1, SNMPv2c, or SNMPv3."
322    ::= { udpEndpointEntry 2 }
323
324udpEndpointLocalPort OBJECT-TYPE
325    SYNTAX     InetPortNumber
326    MAX-ACCESS not-accessible
327    STATUS     current
328    DESCRIPTION
329           "The local port number for this UDP endpoint."
330    ::= { udpEndpointEntry 3 }
331
332udpEndpointRemoteAddressType OBJECT-TYPE
333    SYNTAX     InetAddressType
334    MAX-ACCESS not-accessible
335    STATUS     current
336    DESCRIPTION
337           "The address type of udpEndpointRemoteAddress.  Only
338            IPv4, IPv4z, IPv6, and IPv6z addresses are expected, or
339            unknown(0) if datagrams for all remote IP addresses are
340            accepted.  Also, note that some combinations of
341
342
343
344            udpEndpointLocalAdressType and
345            udpEndpointRemoteAddressType are not supported.  In
346            particular, if the value of this object is not
347            unknown(0), it is expected to always refer to the
348            same IP version as udpEndpointLocalAddressType."
349    ::= { udpEndpointEntry 4 }
350
351udpEndpointRemoteAddress OBJECT-TYPE
352    SYNTAX     InetAddress
353    MAX-ACCESS not-accessible
354    STATUS     current
355    DESCRIPTION
356           "The remote IP address for this UDP endpoint.  If
357            datagrams from any remote system are to be accepted,
358            this value is ''h (a zero-length octet-string).
359            Otherwise, it has the type described by
360            udpEndpointRemoteAddressType and is the address of the
361            remote system from which datagrams are to be accepted
362            (or to which all datagrams will be sent).
363
364            As this object is used in the index for the
365            udpEndpointTable, implementors of this table should be
366            careful not to create entries that would result in OIDs
367            with more than 128 subidentifiers; else the information
368            cannot be accessed using SNMPv1, SNMPv2c, or SNMPv3."
369    ::= { udpEndpointEntry 5 }
370
371udpEndpointRemotePort OBJECT-TYPE
372    SYNTAX     InetPortNumber
373    MAX-ACCESS not-accessible
374    STATUS     current
375    DESCRIPTION
376           "The remote port number for this UDP endpoint.  If
377            datagrams from any remote system are to be accepted,
378            this value is zero."
379    ::= { udpEndpointEntry 6 }
380
381udpEndpointInstance OBJECT-TYPE
382    SYNTAX     Unsigned32 (1..'ffffffff'h)
383    MAX-ACCESS not-accessible
384    STATUS     current
385    DESCRIPTION
386           "The instance of this tuple.  This object is used to
387            distinguish among multiple processes 'connected' to
388            the same UDP endpoint.  For example, on a system
389            implementing the BSD sockets interface, this would be
390            used to support the SO_REUSEADDR and SO_REUSEPORT
391            socket options."
392
393
394
395    ::= { udpEndpointEntry 7 }
396
397udpEndpointProcess OBJECT-TYPE
398    SYNTAX     Unsigned32
399    MAX-ACCESS read-only
400    STATUS     current
401    DESCRIPTION
402           "The system's process ID for the process associated with
403            this endpoint, or zero if there is no such process.
404            This value is expected to be the same as
405            HOST-RESOURCES-MIB::hrSWRunIndex or SYSAPPL-MIB::
406            sysApplElmtRunIndex for some row in the appropriate
407            tables."
408    ::= { udpEndpointEntry 8 }
409
410-- The deprecated UDP Listener table
411
412-- The deprecated UDP listener table only contains information
413-- about this entity's IPv4 UDP end-points on which a local
414-- application is currently accepting datagrams.  It does not
415-- provide more detailed connection information, or information
416-- about IPv6 endpoints.
417
418udpTable OBJECT-TYPE
419    SYNTAX     SEQUENCE OF UdpEntry
420    MAX-ACCESS not-accessible
421    STATUS     deprecated
422    DESCRIPTION
423           "A table containing IPv4-specific UDP listener
424            information.  It contains information about all local
425            IPv4 UDP end-points on which an application is
426            currently accepting datagrams.  This table has been
427            deprecated in favor of the version neutral
428            udpEndpointTable."
429    ::= { udp 5 }
430
431udpEntry OBJECT-TYPE
432    SYNTAX     UdpEntry
433    MAX-ACCESS not-accessible
434    STATUS     deprecated
435    DESCRIPTION
436           "Information about a particular current UDP listener."
437    INDEX   { udpLocalAddress, udpLocalPort }
438    ::= { udpTable 1 }
439
440UdpEntry ::= SEQUENCE {
441    udpLocalAddress   IpAddress,
442    udpLocalPort      Integer32
443
444
445
446}
447
448udpLocalAddress OBJECT-TYPE
449    SYNTAX     IpAddress
450    MAX-ACCESS read-only
451    STATUS     deprecated
452    DESCRIPTION
453           "The local IP address for this UDP listener.  In the
454            case of a UDP listener that is willing to accept
455            datagrams for any IP interface associated with the
456            node, the value 0.0.0.0 is used."
457    ::= { udpEntry 1 }
458
459udpLocalPort OBJECT-TYPE
460    SYNTAX     Integer32 (0..65535)
461    MAX-ACCESS read-only
462    STATUS     deprecated
463    DESCRIPTION
464           "The local port number for this UDP listener."
465    ::= { udpEntry 2 }
466
467-- conformance information
468
469udpMIBConformance OBJECT IDENTIFIER ::= { udpMIB 2 }
470udpMIBCompliances OBJECT IDENTIFIER ::= { udpMIBConformance 1 }
471udpMIBGroups      OBJECT IDENTIFIER ::= { udpMIBConformance 2 }
472
473-- compliance statements
474
475udpMIBCompliance2 MODULE-COMPLIANCE
476    STATUS     current
477    DESCRIPTION
478           "The compliance statement for systems that implement
479            UDP.
480
481            There are a number of INDEX objects that cannot be
482            represented in the form of OBJECT clauses in SMIv2, but
483            for which we have the following compliance
484            requirements, expressed in OBJECT clause form in this
485            description clause:
486
487            -- OBJECT      udpEndpointLocalAddressType
488            -- SYNTAX      InetAddressType { unknown(0), ipv4(1),
489            --                               ipv6(2), ipv4z(3),
490            --                               ipv6z(4) }
491            -- DESCRIPTION
492            --     Support for dns(5) is not required.
493            -- OBJECT      udpEndpointLocalAddress
494
495
496
497            -- SYNTAX      InetAddress (SIZE(0|4|8|16|20))
498            -- DESCRIPTION
499            --     Support is only required for zero-length
500            --     octet-strings, and for scoped and unscoped
501            --     IPv4 and IPv6 addresses.
502            -- OBJECT      udpEndpointRemoteAddressType
503            -- SYNTAX      InetAddressType { unknown(0), ipv4(1),
504            --                               ipv6(2), ipv4z(3),
505            --                               ipv6z(4) }
506            -- DESCRIPTION
507            --     Support for dns(5) is not required.
508            -- OBJECT      udpEndpointRemoteAddress
509            -- SYNTAX      InetAddress (SIZE(0|4|8|16|20))
510            -- DESCRIPTION
511            --     Support is only required for zero-length
512            --     octet-strings, and for scoped and unscoped
513            --     IPv4 and IPv6 addresses.
514           "
515    MODULE  -- this module
516         MANDATORY-GROUPS { udpBaseGroup, udpEndpointGroup }
517         GROUP       udpHCGroup
518         DESCRIPTION
519                "This group is mandatory for systems that
520                 are capable of receiving or transmitting more than
521                 1 million UDP datagrams per second.  1 million
522                 datagrams per second will cause a Counter32 to
523                 wrap in just over an hour."
524    ::= { udpMIBCompliances 2 }
525
526udpMIBCompliance MODULE-COMPLIANCE
527    STATUS     deprecated
528    DESCRIPTION
529           "The compliance statement for IPv4-only systems that
530            implement UDP.  For IP version independence, this
531            compliance statement is deprecated in favor of
532            udpMIBCompliance2.  However, agents are still
533            encouraged to implement these objects in order to
534            interoperate with the deployed base of managers."
535    MODULE  -- this module
536        MANDATORY-GROUPS { udpGroup }
537    ::= { udpMIBCompliances 1 }
538
539-- units of conformance
540
541udpGroup OBJECT-GROUP
542    OBJECTS   { udpInDatagrams, udpNoPorts,
543                udpInErrors, udpOutDatagrams,
544                udpLocalAddress, udpLocalPort }
545
546
547
548    STATUS     deprecated
549    DESCRIPTION
550           "The deprecated group of objects providing for
551            management of UDP over IPv4."
552    ::= { udpMIBGroups 1 }
553
554udpBaseGroup OBJECT-GROUP
555    OBJECTS   { udpInDatagrams, udpNoPorts, udpInErrors,
556                udpOutDatagrams }
557    STATUS     current
558    DESCRIPTION
559           "The group of objects providing for counters of UDP
560            statistics."
561    ::= { udpMIBGroups 2 }
562
563udpHCGroup OBJECT-GROUP
564    OBJECTS   { udpHCInDatagrams, udpHCOutDatagrams }
565    STATUS     current
566    DESCRIPTION
567           "The group of objects providing for counters of high
568            speed UDP implementations."
569    ::= { udpMIBGroups 3 }
570
571udpEndpointGroup OBJECT-GROUP
572    OBJECTS    { udpEndpointProcess }
573    STATUS     current
574    DESCRIPTION
575           "The group of objects providing for the IP version
576            independent management of UDP 'endpoints'."
577    ::= { udpMIBGroups 4 }
578
579END
580