1 /* 2 * Definitions for MIBs 3 * 4 * Author: Hideaki YOSHIFUJI <yoshfuji@linux-ipv6.org> 5 */ 6 7 #ifndef _LINUX_SNMP_H 8 #define _LINUX_SNMP_H 9 10 /* ipstats mib definitions */ 11 /* 12 * RFC 1213: MIB-II 13 * RFC 2011 (updates 1213): SNMPv2-MIB-IP 14 * RFC 2863: Interfaces Group MIB 15 * RFC 2465: IPv6 MIB: General Group 16 * draft-ietf-ipv6-rfc2011-update-10.txt: MIB for IP: IP Statistics Tables 17 */ 18 enum 19 { 20 IPSTATS_MIB_NUM = 0, 21 /* frequently written fields in fast path, kept in same cache line */ 22 IPSTATS_MIB_INPKTS, /* InReceives */ 23 IPSTATS_MIB_INOCTETS, /* InOctets */ 24 IPSTATS_MIB_INDELIVERS, /* InDelivers */ 25 IPSTATS_MIB_OUTFORWDATAGRAMS, /* OutForwDatagrams */ 26 IPSTATS_MIB_OUTPKTS, /* OutRequests */ 27 IPSTATS_MIB_OUTOCTETS, /* OutOctets */ 28 /* other fields */ 29 IPSTATS_MIB_INHDRERRORS, /* InHdrErrors */ 30 IPSTATS_MIB_INTOOBIGERRORS, /* InTooBigErrors */ 31 IPSTATS_MIB_INNOROUTES, /* InNoRoutes */ 32 IPSTATS_MIB_INADDRERRORS, /* InAddrErrors */ 33 IPSTATS_MIB_INUNKNOWNPROTOS, /* InUnknownProtos */ 34 IPSTATS_MIB_INTRUNCATEDPKTS, /* InTruncatedPkts */ 35 IPSTATS_MIB_INDISCARDS, /* InDiscards */ 36 IPSTATS_MIB_OUTDISCARDS, /* OutDiscards */ 37 IPSTATS_MIB_OUTNOROUTES, /* OutNoRoutes */ 38 IPSTATS_MIB_REASMTIMEOUT, /* ReasmTimeout */ 39 IPSTATS_MIB_REASMREQDS, /* ReasmReqds */ 40 IPSTATS_MIB_REASMOKS, /* ReasmOKs */ 41 IPSTATS_MIB_REASMFAILS, /* ReasmFails */ 42 IPSTATS_MIB_FRAGOKS, /* FragOKs */ 43 IPSTATS_MIB_FRAGFAILS, /* FragFails */ 44 IPSTATS_MIB_FRAGCREATES, /* FragCreates */ 45 IPSTATS_MIB_INMCASTPKTS, /* InMcastPkts */ 46 IPSTATS_MIB_OUTMCASTPKTS, /* OutMcastPkts */ 47 IPSTATS_MIB_INBCASTPKTS, /* InBcastPkts */ 48 IPSTATS_MIB_OUTBCASTPKTS, /* OutBcastPkts */ 49 IPSTATS_MIB_INMCASTOCTETS, /* InMcastOctets */ 50 IPSTATS_MIB_OUTMCASTOCTETS, /* OutMcastOctets */ 51 IPSTATS_MIB_INBCASTOCTETS, /* InBcastOctets */ 52 IPSTATS_MIB_OUTBCASTOCTETS, /* OutBcastOctets */ 53 IPSTATS_MIB_CSUMERRORS, /* InCsumErrors */ 54 IPSTATS_MIB_NOECTPKTS, /* InNoECTPkts */ 55 IPSTATS_MIB_ECT1PKTS, /* InECT1Pkts */ 56 IPSTATS_MIB_ECT0PKTS, /* InECT0Pkts */ 57 IPSTATS_MIB_CEPKTS, /* InCEPkts */ 58 __IPSTATS_MIB_MAX 59 }; 60 61 /* icmp mib definitions */ 62 /* 63 * RFC 1213: MIB-II ICMP Group 64 * RFC 2011 (updates 1213): SNMPv2 MIB for IP: ICMP group 65 */ 66 enum 67 { 68 ICMP_MIB_NUM = 0, 69 ICMP_MIB_INMSGS, /* InMsgs */ 70 ICMP_MIB_INERRORS, /* InErrors */ 71 ICMP_MIB_INDESTUNREACHS, /* InDestUnreachs */ 72 ICMP_MIB_INTIMEEXCDS, /* InTimeExcds */ 73 ICMP_MIB_INPARMPROBS, /* InParmProbs */ 74 ICMP_MIB_INSRCQUENCHS, /* InSrcQuenchs */ 75 ICMP_MIB_INREDIRECTS, /* InRedirects */ 76 ICMP_MIB_INECHOS, /* InEchos */ 77 ICMP_MIB_INECHOREPS, /* InEchoReps */ 78 ICMP_MIB_INTIMESTAMPS, /* InTimestamps */ 79 ICMP_MIB_INTIMESTAMPREPS, /* InTimestampReps */ 80 ICMP_MIB_INADDRMASKS, /* InAddrMasks */ 81 ICMP_MIB_INADDRMASKREPS, /* InAddrMaskReps */ 82 ICMP_MIB_OUTMSGS, /* OutMsgs */ 83 ICMP_MIB_OUTERRORS, /* OutErrors */ 84 ICMP_MIB_OUTDESTUNREACHS, /* OutDestUnreachs */ 85 ICMP_MIB_OUTTIMEEXCDS, /* OutTimeExcds */ 86 ICMP_MIB_OUTPARMPROBS, /* OutParmProbs */ 87 ICMP_MIB_OUTSRCQUENCHS, /* OutSrcQuenchs */ 88 ICMP_MIB_OUTREDIRECTS, /* OutRedirects */ 89 ICMP_MIB_OUTECHOS, /* OutEchos */ 90 ICMP_MIB_OUTECHOREPS, /* OutEchoReps */ 91 ICMP_MIB_OUTTIMESTAMPS, /* OutTimestamps */ 92 ICMP_MIB_OUTTIMESTAMPREPS, /* OutTimestampReps */ 93 ICMP_MIB_OUTADDRMASKS, /* OutAddrMasks */ 94 ICMP_MIB_OUTADDRMASKREPS, /* OutAddrMaskReps */ 95 ICMP_MIB_CSUMERRORS, /* InCsumErrors */ 96 __ICMP_MIB_MAX 97 }; 98 99 #define __ICMPMSG_MIB_MAX 512 /* Out+In for all 8-bit ICMP types */ 100 101 /* icmp6 mib definitions */ 102 /* 103 * RFC 2466: ICMPv6-MIB 104 */ 105 enum 106 { 107 ICMP6_MIB_NUM = 0, 108 ICMP6_MIB_INMSGS, /* InMsgs */ 109 ICMP6_MIB_INERRORS, /* InErrors */ 110 ICMP6_MIB_OUTMSGS, /* OutMsgs */ 111 ICMP6_MIB_OUTERRORS, /* OutErrors */ 112 ICMP6_MIB_CSUMERRORS, /* InCsumErrors */ 113 __ICMP6_MIB_MAX 114 }; 115 116 #define __ICMP6MSG_MIB_MAX 512 /* Out+In for all 8-bit ICMPv6 types */ 117 118 /* tcp mib definitions */ 119 /* 120 * RFC 1213: MIB-II TCP group 121 * RFC 2012 (updates 1213): SNMPv2-MIB-TCP 122 */ 123 enum 124 { 125 TCP_MIB_NUM = 0, 126 TCP_MIB_RTOALGORITHM, /* RtoAlgorithm */ 127 TCP_MIB_RTOMIN, /* RtoMin */ 128 TCP_MIB_RTOMAX, /* RtoMax */ 129 TCP_MIB_MAXCONN, /* MaxConn */ 130 TCP_MIB_ACTIVEOPENS, /* ActiveOpens */ 131 TCP_MIB_PASSIVEOPENS, /* PassiveOpens */ 132 TCP_MIB_ATTEMPTFAILS, /* AttemptFails */ 133 TCP_MIB_ESTABRESETS, /* EstabResets */ 134 TCP_MIB_CURRESTAB, /* CurrEstab */ 135 TCP_MIB_INSEGS, /* InSegs */ 136 TCP_MIB_OUTSEGS, /* OutSegs */ 137 TCP_MIB_RETRANSSEGS, /* RetransSegs */ 138 TCP_MIB_INERRS, /* InErrs */ 139 TCP_MIB_OUTRSTS, /* OutRsts */ 140 TCP_MIB_CSUMERRORS, /* InCsumErrors */ 141 __TCP_MIB_MAX 142 }; 143 144 /* udp mib definitions */ 145 /* 146 * RFC 1213: MIB-II UDP group 147 * RFC 2013 (updates 1213): SNMPv2-MIB-UDP 148 */ 149 enum 150 { 151 UDP_MIB_NUM = 0, 152 UDP_MIB_INDATAGRAMS, /* InDatagrams */ 153 UDP_MIB_NOPORTS, /* NoPorts */ 154 UDP_MIB_INERRORS, /* InErrors */ 155 UDP_MIB_OUTDATAGRAMS, /* OutDatagrams */ 156 UDP_MIB_RCVBUFERRORS, /* RcvbufErrors */ 157 UDP_MIB_SNDBUFERRORS, /* SndbufErrors */ 158 UDP_MIB_CSUMERRORS, /* InCsumErrors */ 159 __UDP_MIB_MAX 160 }; 161 162 /* linux mib definitions */ 163 enum 164 { 165 LINUX_MIB_NUM = 0, 166 LINUX_MIB_SYNCOOKIESSENT, /* SyncookiesSent */ 167 LINUX_MIB_SYNCOOKIESRECV, /* SyncookiesRecv */ 168 LINUX_MIB_SYNCOOKIESFAILED, /* SyncookiesFailed */ 169 LINUX_MIB_EMBRYONICRSTS, /* EmbryonicRsts */ 170 LINUX_MIB_PRUNECALLED, /* PruneCalled */ 171 LINUX_MIB_RCVPRUNED, /* RcvPruned */ 172 LINUX_MIB_OFOPRUNED, /* OfoPruned */ 173 LINUX_MIB_OUTOFWINDOWICMPS, /* OutOfWindowIcmps */ 174 LINUX_MIB_LOCKDROPPEDICMPS, /* LockDroppedIcmps */ 175 LINUX_MIB_ARPFILTER, /* ArpFilter */ 176 LINUX_MIB_TIMEWAITED, /* TimeWaited */ 177 LINUX_MIB_TIMEWAITRECYCLED, /* TimeWaitRecycled */ 178 LINUX_MIB_TIMEWAITKILLED, /* TimeWaitKilled */ 179 LINUX_MIB_PAWSPASSIVEREJECTED, /* PAWSPassiveRejected */ 180 LINUX_MIB_PAWSACTIVEREJECTED, /* PAWSActiveRejected */ 181 LINUX_MIB_PAWSESTABREJECTED, /* PAWSEstabRejected */ 182 LINUX_MIB_DELAYEDACKS, /* DelayedACKs */ 183 LINUX_MIB_DELAYEDACKLOCKED, /* DelayedACKLocked */ 184 LINUX_MIB_DELAYEDACKLOST, /* DelayedACKLost */ 185 LINUX_MIB_LISTENOVERFLOWS, /* ListenOverflows */ 186 LINUX_MIB_LISTENDROPS, /* ListenDrops */ 187 LINUX_MIB_TCPPREQUEUED, /* TCPPrequeued */ 188 LINUX_MIB_TCPDIRECTCOPYFROMBACKLOG, /* TCPDirectCopyFromBacklog */ 189 LINUX_MIB_TCPDIRECTCOPYFROMPREQUEUE, /* TCPDirectCopyFromPrequeue */ 190 LINUX_MIB_TCPPREQUEUEDROPPED, /* TCPPrequeueDropped */ 191 LINUX_MIB_TCPHPHITS, /* TCPHPHits */ 192 LINUX_MIB_TCPHPHITSTOUSER, /* TCPHPHitsToUser */ 193 LINUX_MIB_TCPPUREACKS, /* TCPPureAcks */ 194 LINUX_MIB_TCPHPACKS, /* TCPHPAcks */ 195 LINUX_MIB_TCPRENORECOVERY, /* TCPRenoRecovery */ 196 LINUX_MIB_TCPSACKRECOVERY, /* TCPSackRecovery */ 197 LINUX_MIB_TCPSACKRENEGING, /* TCPSACKReneging */ 198 LINUX_MIB_TCPFACKREORDER, /* TCPFACKReorder */ 199 LINUX_MIB_TCPSACKREORDER, /* TCPSACKReorder */ 200 LINUX_MIB_TCPRENOREORDER, /* TCPRenoReorder */ 201 LINUX_MIB_TCPTSREORDER, /* TCPTSReorder */ 202 LINUX_MIB_TCPFULLUNDO, /* TCPFullUndo */ 203 LINUX_MIB_TCPPARTIALUNDO, /* TCPPartialUndo */ 204 LINUX_MIB_TCPDSACKUNDO, /* TCPDSACKUndo */ 205 LINUX_MIB_TCPLOSSUNDO, /* TCPLossUndo */ 206 LINUX_MIB_TCPLOSTRETRANSMIT, /* TCPLostRetransmit */ 207 LINUX_MIB_TCPRENOFAILURES, /* TCPRenoFailures */ 208 LINUX_MIB_TCPSACKFAILURES, /* TCPSackFailures */ 209 LINUX_MIB_TCPLOSSFAILURES, /* TCPLossFailures */ 210 LINUX_MIB_TCPFASTRETRANS, /* TCPFastRetrans */ 211 LINUX_MIB_TCPFORWARDRETRANS, /* TCPForwardRetrans */ 212 LINUX_MIB_TCPSLOWSTARTRETRANS, /* TCPSlowStartRetrans */ 213 LINUX_MIB_TCPTIMEOUTS, /* TCPTimeouts */ 214 LINUX_MIB_TCPLOSSPROBES, /* TCPLossProbes */ 215 LINUX_MIB_TCPLOSSPROBERECOVERY, /* TCPLossProbeRecovery */ 216 LINUX_MIB_TCPRENORECOVERYFAIL, /* TCPRenoRecoveryFail */ 217 LINUX_MIB_TCPSACKRECOVERYFAIL, /* TCPSackRecoveryFail */ 218 LINUX_MIB_TCPSCHEDULERFAILED, /* TCPSchedulerFailed */ 219 LINUX_MIB_TCPRCVCOLLAPSED, /* TCPRcvCollapsed */ 220 LINUX_MIB_TCPDSACKOLDSENT, /* TCPDSACKOldSent */ 221 LINUX_MIB_TCPDSACKOFOSENT, /* TCPDSACKOfoSent */ 222 LINUX_MIB_TCPDSACKRECV, /* TCPDSACKRecv */ 223 LINUX_MIB_TCPDSACKOFORECV, /* TCPDSACKOfoRecv */ 224 LINUX_MIB_TCPABORTONDATA, /* TCPAbortOnData */ 225 LINUX_MIB_TCPABORTONCLOSE, /* TCPAbortOnClose */ 226 LINUX_MIB_TCPABORTONMEMORY, /* TCPAbortOnMemory */ 227 LINUX_MIB_TCPABORTONTIMEOUT, /* TCPAbortOnTimeout */ 228 LINUX_MIB_TCPABORTONLINGER, /* TCPAbortOnLinger */ 229 LINUX_MIB_TCPABORTFAILED, /* TCPAbortFailed */ 230 LINUX_MIB_TCPMEMORYPRESSURES, /* TCPMemoryPressures */ 231 LINUX_MIB_TCPSACKDISCARD, /* TCPSACKDiscard */ 232 LINUX_MIB_TCPDSACKIGNOREDOLD, /* TCPSACKIgnoredOld */ 233 LINUX_MIB_TCPDSACKIGNOREDNOUNDO, /* TCPSACKIgnoredNoUndo */ 234 LINUX_MIB_TCPSPURIOUSRTOS, /* TCPSpuriousRTOs */ 235 LINUX_MIB_TCPMD5NOTFOUND, /* TCPMD5NotFound */ 236 LINUX_MIB_TCPMD5UNEXPECTED, /* TCPMD5Unexpected */ 237 LINUX_MIB_SACKSHIFTED, 238 LINUX_MIB_SACKMERGED, 239 LINUX_MIB_SACKSHIFTFALLBACK, 240 LINUX_MIB_TCPBACKLOGDROP, 241 LINUX_MIB_TCPMINTTLDROP, /* RFC 5082 */ 242 LINUX_MIB_TCPDEFERACCEPTDROP, 243 LINUX_MIB_IPRPFILTER, /* IP Reverse Path Filter (rp_filter) */ 244 LINUX_MIB_TCPTIMEWAITOVERFLOW, /* TCPTimeWaitOverflow */ 245 LINUX_MIB_TCPREQQFULLDOCOOKIES, /* TCPReqQFullDoCookies */ 246 LINUX_MIB_TCPREQQFULLDROP, /* TCPReqQFullDrop */ 247 LINUX_MIB_TCPRETRANSFAIL, /* TCPRetransFail */ 248 LINUX_MIB_TCPRCVCOALESCE, /* TCPRcvCoalesce */ 249 LINUX_MIB_TCPOFOQUEUE, /* TCPOFOQueue */ 250 LINUX_MIB_TCPOFODROP, /* TCPOFODrop */ 251 LINUX_MIB_TCPOFOMERGE, /* TCPOFOMerge */ 252 LINUX_MIB_TCPCHALLENGEACK, /* TCPChallengeACK */ 253 LINUX_MIB_TCPSYNCHALLENGE, /* TCPSYNChallenge */ 254 LINUX_MIB_TCPFASTOPENACTIVE, /* TCPFastOpenActive */ 255 LINUX_MIB_TCPFASTOPENPASSIVE, /* TCPFastOpenPassive*/ 256 LINUX_MIB_TCPFASTOPENPASSIVEFAIL, /* TCPFastOpenPassiveFail */ 257 LINUX_MIB_TCPFASTOPENLISTENOVERFLOW, /* TCPFastOpenListenOverflow */ 258 LINUX_MIB_TCPFASTOPENCOOKIEREQD, /* TCPFastOpenCookieReqd */ 259 LINUX_MIB_TCPSPURIOUS_RTX_HOSTQUEUES, /* TCPSpuriousRtxHostQueues */ 260 LINUX_MIB_BUSYPOLLRXPACKETS, /* BusyPollRxPackets */ 261 __LINUX_MIB_MAX 262 }; 263 264 /* linux Xfrm mib definitions */ 265 enum 266 { 267 LINUX_MIB_XFRMNUM = 0, 268 LINUX_MIB_XFRMINERROR, /* XfrmInError */ 269 LINUX_MIB_XFRMINBUFFERERROR, /* XfrmInBufferError */ 270 LINUX_MIB_XFRMINHDRERROR, /* XfrmInHdrError */ 271 LINUX_MIB_XFRMINNOSTATES, /* XfrmInNoStates */ 272 LINUX_MIB_XFRMINSTATEPROTOERROR, /* XfrmInStateProtoError */ 273 LINUX_MIB_XFRMINSTATEMODEERROR, /* XfrmInStateModeError */ 274 LINUX_MIB_XFRMINSTATESEQERROR, /* XfrmInStateSeqError */ 275 LINUX_MIB_XFRMINSTATEEXPIRED, /* XfrmInStateExpired */ 276 LINUX_MIB_XFRMINSTATEMISMATCH, /* XfrmInStateMismatch */ 277 LINUX_MIB_XFRMINSTATEINVALID, /* XfrmInStateInvalid */ 278 LINUX_MIB_XFRMINTMPLMISMATCH, /* XfrmInTmplMismatch */ 279 LINUX_MIB_XFRMINNOPOLS, /* XfrmInNoPols */ 280 LINUX_MIB_XFRMINPOLBLOCK, /* XfrmInPolBlock */ 281 LINUX_MIB_XFRMINPOLERROR, /* XfrmInPolError */ 282 LINUX_MIB_XFRMOUTERROR, /* XfrmOutError */ 283 LINUX_MIB_XFRMOUTBUNDLEGENERROR, /* XfrmOutBundleGenError */ 284 LINUX_MIB_XFRMOUTBUNDLECHECKERROR, /* XfrmOutBundleCheckError */ 285 LINUX_MIB_XFRMOUTNOSTATES, /* XfrmOutNoStates */ 286 LINUX_MIB_XFRMOUTSTATEPROTOERROR, /* XfrmOutStateProtoError */ 287 LINUX_MIB_XFRMOUTSTATEMODEERROR, /* XfrmOutStateModeError */ 288 LINUX_MIB_XFRMOUTSTATESEQERROR, /* XfrmOutStateSeqError */ 289 LINUX_MIB_XFRMOUTSTATEEXPIRED, /* XfrmOutStateExpired */ 290 LINUX_MIB_XFRMOUTPOLBLOCK, /* XfrmOutPolBlock */ 291 LINUX_MIB_XFRMOUTPOLDEAD, /* XfrmOutPolDead */ 292 LINUX_MIB_XFRMOUTPOLERROR, /* XfrmOutPolError */ 293 LINUX_MIB_XFRMFWDHDRERROR, /* XfrmFwdHdrError*/ 294 LINUX_MIB_XFRMOUTSTATEINVALID, /* XfrmOutStateInvalid */ 295 LINUX_MIB_XFRMACQUIREERROR, /* XfrmAcquireError */ 296 __LINUX_MIB_XFRMMAX 297 }; 298 299 #endif /* _LINUX_SNMP_H */ 300