-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathCISCO-CEF-MIB
2965 lines (2592 loc) · 103 KB
/
CISCO-CEF-MIB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
-- *------------------------------------------------------------------
-- * CISCO-CEF-MIB.my: Cisco CEF MIB.
-- *
-- * Jan 2006, Rohit Mendiratta
-- *
-- * This MIB module is used to manage CISCO Express Forwarding
-- * (CEF).
-- *
-- * Copyright (c) 2006 by Cisco Systems, Inc.
-- * All rights reserved.
-- *
-- *------------------------------------------------------------------
CISCO-CEF-MIB DEFINITIONS ::= BEGIN
IMPORTS
MODULE-IDENTITY,
OBJECT-TYPE,
NOTIFICATION-TYPE,
Counter64,
Counter32,
Integer32,
Gauge32,
Unsigned32
FROM SNMPv2-SMI
MODULE-COMPLIANCE,
OBJECT-GROUP,
NOTIFICATION-GROUP
FROM SNMPv2-CONF
TimeStamp,
RowStatus,
TruthValue,
TestAndIncr
FROM SNMPv2-TC
CounterBasedGauge64
FROM HCNUM-TC
ifIndex,
InterfaceIndexOrZero
FROM IF-MIB
entPhysicalIndex,
PhysicalIndex
FROM ENTITY-MIB
InetAddressType,
InetAddress,
InetAddressPrefixLength
FROM INET-ADDRESS-MIB
SnmpAdminString
FROM SNMP-FRAMEWORK-MIB
MplsVpnId
FROM MPLS-VPN-MIB
EntPhysicalIndexOrZero
FROM CISCO-TC
CefIpVersion,
CefAdjLinkType,
CefAdjacencySource,
CefPathType,
CefPrefixSearchState,
CefForwardingElementSpecialType,
CefMplsLabelList,
CefAdminStatus,
CefOperStatus,
CefFailureReason,
CefCCType,
CefCCAction,
CefCCStatus
FROM CISCO-CEF-TC
ciscoMgmt
FROM CISCO-SMI;
ciscoCefMIB MODULE-IDENTITY
LAST-UPDATED "200601300000Z"
ORGANIZATION "Cisco System, Inc."
CONTACT-INFO
"Postal: Cisco Systems, Inc.
170 West Tasman Drive
San Jose, CA 95134-1706
USA
Tel: +1 800 553-NETS
E-mail: [email protected]"
DESCRIPTION
"Cisco Express Forwarding (CEF) describes a high speed
switching mechanism that a router uses to forward packets
from the inbound to the outbound interface.
CEF uses two sets of data structures
or tables, which it stores in router memory:
Forwarding information base (FIB) - Describes a database
of information used to make forwarding decisions. It is
conceptually similar to a routing table or route-cache,
although its implementation is different.
Adjacency - Two nodes in the network are said to be
adjacent if they can reach each other via a single hop
across a link layer.
CEF path is a valid route to reach to a destination
IP prefix. Multiple paths may exist out of a router to the
same destination prefix. CEF Load balancing capability
share the traffic to the destination IP prefix over all
the active paths.
After obtaining the prefix in the CEF table with the
longest match, output forwarding follows the chain of
forwarding elements.
Forwarding element (FE) may process the packet, forward
the packet, drop or punt the packet or it may also
pass the packet to the next forwarding element in the
chain for further processing.
Forwarding Elements are of various types
but this MIB only represents the forwarding elements of
adjacency and label types. Hence a forwarding element
chain will be represented as a list of labels and
adjacency. The adjacency may point to a forwarding element
list again, if it is not the last forwarding element in this
chain.
For the simplest IP forwarding case, the prefix entry will
point at an adjacency forwarding element.
The IP adjacency processing function will apply the output
features, add the encapsulation (performing any required
fixups), and may send the packet out.
If loadbalancing is configured, the prefix entry will point
to lists of forwarding elements. One of these lists will be
selected to forward the packet.
Each forwarding element list dictates which of a set of
possible packet transformations to apply on the way to
the same neighbour.
The following diagram represents relationship
between three of the core tables in this MIB module.
cefPrefixTable cefFESelectionTable
+---------------+ points +--------------+
| | | | a set +----> | | | | |
|---------------| of FE | |--------------|
| | | | Selection | | | | | |
|---------------| Entries | |--------------|
| | | |------------+ | |<----+
|---------------| |--------------| |
| | +--------------| | | | | |
+---------------+ | +--------------+ |
| |
points to an |
adjacency entry |
| |
| cefAdjTable |
| +---------------+ may point |
+->| | | | to a set |
|---------------| of FE |
| | | | Selection |
|---------------| Entries |
| | | |----------------+
|---------------|
| |
+---------------+
Some of the Cisco series routers (e.g. 7500 & 12000)
support distributed CEF (dCEF), in which the line cards
(LCs) make the packet forwarding decisions using locally
stored copies of the same Forwarding information base (FIB)
and adjacency tables as the Routing Processor (RP).
Inter-Process Communication (IPC) is the protocol used
by routers that support distributed packet forwarding.
CEF updates are encoded as external Data Representation
(XDR) information elements inside IPC messages.
This MIB reflects the distributed nature of CEF, e.g. CEF
has different instances running on the RP and the line cards.
There may be instances of inconsistency between the
CEF forwarding databases(i.e between CEF forwarding
database on line cards and the CEF forwarding database
on the RP). CEF consistency checkers (CC) detects
this inconsistency.
When two databases are compared by a consistency checker,
a set of records from the first (master) database is
looked up in the second (slave).
There are two types of consistency checkers,
active and passive. Active consistency checkers
are invoked in response to some stimulus, i.e.
when a packet cannot be forwarded because the
prefix is not in the forwarding table or
in response to a Management Station request.
Passive consistency checkers operate in the background,
scanning portions of the databases on a periodic basis.
The full-scan checkers are active consistency checkers
which are invoked in response to a Management Station
Request.
If 64-bit counter objects in this MIB are supported,
then their associated 32-bit counter objects
must also be supported. The 32-bit counters will
report the low 32-bits of the associated 64-bit
counter count (e.g., cefPrefixPkts will report the
least significant 32 bits of cefPrefixHCPkts).
The same rule should be applied for the 64-bit gauge
objects and their assocaited 32-bit gauge objects.
If 64-bit counters in this MIB are not supported,
then an agent MUST NOT instantiate the corresponding
objects with an incorrect value; rather, it MUST
respond with the appropriate error/exception
condition (e.g., noSuchInstance or noSuchName).
Counters related to CEF accounting (e.g.,
cefPrefixPkts) MUST NOT be instantiated if the
corresponding accounting method has been disabled.
This MIB allows configuration and monitoring of CEF
related objects."
REVISION "200601300000Z"
DESCRIPTION
"Initial version of this MIB module."
::= { ciscoMgmt 492 }
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
-- CISCO CEF MIB Object Groups
--
-- This MIB module contains the following groups:
-- CEF FIB Group
-- CEF Adjacency Group
-- CEF Forwarding Element Group
-- CEF Cfg Group
-- CEF Interface Group
-- CEF Peer Group
-- CEF Consistency Checker (CC) group
-- CEF Stats Group
-- CEF Notification Control Group.
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
ciscoCefMIBNotifs OBJECT IDENTIFIER ::= {ciscoCefMIB 0}
ciscoCefMIBObjects OBJECT IDENTIFIER ::= {ciscoCefMIB 1}
ciscoCefMIBConform OBJECT IDENTIFIER ::= {ciscoCefMIB 2}
cefFIB OBJECT IDENTIFIER ::= { ciscoCefMIBObjects 1 }
cefAdj OBJECT IDENTIFIER ::= { ciscoCefMIBObjects 2 }
cefFE OBJECT IDENTIFIER ::= { ciscoCefMIBObjects 3 }
cefGlobal OBJECT IDENTIFIER ::= { ciscoCefMIBObjects 4 }
cefInterface OBJECT IDENTIFIER ::= { ciscoCefMIBObjects 5 }
cefPeer OBJECT IDENTIFIER ::= { ciscoCefMIBObjects 6 }
cefCC OBJECT IDENTIFIER ::= { ciscoCefMIBObjects 7 }
cefStats OBJECT IDENTIFIER ::= { ciscoCefMIBObjects 8 }
cefNotifCntl OBJECT IDENTIFIER ::= { ciscoCefMIBObjects 9 }
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
-- The CEF FIB Summary
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
cefFIBSummary OBJECT IDENTIFIER
::= { cefFIB 1 }
cefFIBSummaryTable OBJECT-TYPE
SYNTAX SEQUENCE OF CefFIBSummaryEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This table contains the summary information
for the cefPrefixTable."
::= { cefFIBSummary 1 }
cefFIBSummaryEntry OBJECT-TYPE
SYNTAX CefFIBSummaryEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"If CEF is enabled on the Managed device,
each entry contains the FIB summary related
attributes for the managed entity.
A row may exist for each IP version type
(v4 and v6) depending upon the IP version
supported on the device.
entPhysicalIndex is also an index for this
table which represents entities of
'module' entPhysicalClass which are capable
of running CEF."
INDEX { entPhysicalIndex, cefFIBIpVersion }
::= { cefFIBSummaryTable 1}
CefFIBSummaryEntry ::= SEQUENCE {
cefFIBIpVersion CefIpVersion,
cefFIBSummaryFwdPrefixes Unsigned32
}
cefFIBIpVersion OBJECT-TYPE
SYNTAX CefIpVersion
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The version of IP forwarding."
::= { cefFIBSummaryEntry 1 }
cefFIBSummaryFwdPrefixes OBJECT-TYPE
SYNTAX Unsigned32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Total number of forwarding Prefixes
in FIB for the IP version specified
by cefFIBIpVersion object."
::= { cefFIBSummaryEntry 2 }
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
-- The CEF Forwarding Table
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
cefPrefixTable OBJECT-TYPE
SYNTAX SEQUENCE OF CefPrefixEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A list of CEF forwarding prefixes."
::= { cefFIB 2 }
cefPrefixEntry OBJECT-TYPE
SYNTAX CefPrefixEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"If CEF is enabled on the Managed device,
each entry contains the forwarding
prefix attributes.
CEF prefix based non-recursive stats are maintained
in internal and external buckets (depending upon the
value of cefIntNonrecursiveAccouting object in the
CefIntEntry).
entPhysicalIndex is also an index for this
table which represents entities of
'module' entPhysicalClass which are capable
of running CEF."
INDEX { entPhysicalIndex,
cefPrefixType,
cefPrefixAddr,
cefPrefixLen
}
::= { cefPrefixTable 1}
CefPrefixEntry ::= SEQUENCE {
cefPrefixType InetAddressType,
cefPrefixAddr InetAddress,
cefPrefixLen InetAddressPrefixLength,
cefPrefixForwardingInfo SnmpAdminString,
cefPrefixPkts Counter32,
cefPrefixHCPkts Counter64,
cefPrefixBytes Counter32,
cefPrefixHCBytes Counter64,
cefPrefixInternalNRPkts Counter32,
cefPrefixInternalNRHCPkts Counter64,
cefPrefixInternalNRBytes Counter32,
cefPrefixInternalNRHCBytes Counter64,
cefPrefixExternalNRPkts Counter32,
cefPrefixExternalNRHCPkts Counter64,
cefPrefixExternalNRBytes Counter32,
cefPrefixExternalNRHCBytes Counter64
}
cefPrefixType OBJECT-TYPE
SYNTAX InetAddressType
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The Network Prefix Type.
This object specifies the address type
used for cefPrefixAddr.
Prefix entries are only valid for the address
type of ipv4(1) and ipv6(2)."
::= { cefPrefixEntry 1 }
cefPrefixAddr OBJECT-TYPE
SYNTAX InetAddress
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The Network Prefix Address.
The type of this address is determined by
the value of the cefPrefixType object.
This object is a Prefix Address containing the
prefix with length specified by cefPrefixLen.
Any bits beyond the length specified by
cefPrefixLen are zeroed."
::= { cefPrefixEntry 2 }
cefPrefixLen OBJECT-TYPE
SYNTAX InetAddressPrefixLength
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Length in bits of the FIB Address prefix."
::= { cefPrefixEntry 3 }
cefPrefixForwardingInfo OBJECT-TYPE
SYNTAX SnmpAdminString
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This object indicates the associated forwarding element
selection entries in cefFESelectionTable.
The value of this object is index value (cefFESelectionName)
of cefFESelectionTable."
::= { cefPrefixEntry 4 }
cefPrefixPkts OBJECT-TYPE
SYNTAX Counter32
UNITS "packets"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"If CEF accounting is set to enable per prefix
accounting (value of cefCfgAccountingMap object in
the cefCfgEntry is set to enable 'perPrefix'
accounting), then this object represents the
number of packets switched to this prefix."
::= { cefPrefixEntry 5 }
cefPrefixHCPkts OBJECT-TYPE
SYNTAX Counter64
UNITS "packets"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"If CEF accounting is set to enable per prefix
accounting (value of cefCfgAccountingMap object in
the cefCfgEntry is set to enable 'perPrefix'
accounting), then this object represents the
number of packets switched to this prefix.
This object is a 64-bit version of
cefPrefixPkts."
::= { cefPrefixEntry 6 }
cefPrefixBytes OBJECT-TYPE
SYNTAX Counter32
UNITS "bytes"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"If CEF accounting is set to enable per prefix
accounting (value of cefCfgAccountingMap object in
the cefCfgEntry is set to enable 'perPrefix'
accounting), then this object represents the
number of bytes switched to this prefix."
::= { cefPrefixEntry 7 }
cefPrefixHCBytes OBJECT-TYPE
SYNTAX Counter64
UNITS "bytes"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"If CEF accounting is set to enable per prefix
accounting (value of cefCfgAccountingMap object in
the cefCfgEntry is set to enable 'perPrefix'
accounting), then this object represents the
number of bytes switched to this prefix.
This object is a 64-bit version of
cefPrefixBytes."
::= { cefPrefixEntry 8 }
cefPrefixInternalNRPkts OBJECT-TYPE
SYNTAX Counter32
UNITS "packets"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"If CEF accounting is set to enable non-recursive
accounting (value of cefCfgAccountingMap object in
the cefCfgEntry is set to enable 'nonRecursive'
accounting), then this object represents the number
of non-recursive packets in the internal bucket
switched using this prefix."
::= { cefPrefixEntry 9 }
cefPrefixInternalNRHCPkts OBJECT-TYPE
SYNTAX Counter64
UNITS "packets"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"If CEF accounting is set to enable non-recursive
accounting (value of cefCfgAccountingMap object in
the cefCfgEntry is set to enable 'nonRecursive'
accounting), then this object represents the number
of non-recursive packets in the internal bucket
switched using this prefix.
This object is a 64-bit version of
cefPrefixInternalNRPkts."
::= { cefPrefixEntry 10 }
cefPrefixInternalNRBytes OBJECT-TYPE
SYNTAX Counter32
UNITS "bytes"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"If CEF accounting is set to enable nonRecursive
accounting (value of cefCfgAccountingMap object in
the cefCfgEntry is set to enable 'nonRecursive'
accounting), then this object represents
the number of non-recursive bytes in the internal
bucket switched using this prefix."
::= { cefPrefixEntry 11 }
cefPrefixInternalNRHCBytes OBJECT-TYPE
SYNTAX Counter64
UNITS "bytes"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"If CEF accounting is set to enable nonRecursive
accounting (value of cefCfgAccountingMap object in
the cefCfgEntry is set to enable 'nonRecursive'
accounting), then this object represents
the number of non-recursive bytes in the internal
bucket switched using this prefix.
This object is a 64-bit version of
cefPrefixInternalNRBytes."
::= { cefPrefixEntry 12 }
cefPrefixExternalNRPkts OBJECT-TYPE
SYNTAX Counter32
UNITS "packets"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"If CEF accounting is set to enable non-recursive
accounting (value of cefCfgAccountingMap object in
the cefCfgEntry is set to enable 'nonRecursive'
accounting), then this object represents the number
of non-recursive packets in the external bucket
switched using this prefix."
::= { cefPrefixEntry 13 }
cefPrefixExternalNRHCPkts OBJECT-TYPE
SYNTAX Counter64
UNITS "packets"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"If CEF accounting is set to enable non-recursive
accounting (value of cefCfgAccountingMap object in
the cefCfgEntry is set to enable 'nonRecursive'
accounting), then this object represents the number
of non-recursive packets in the external bucket
switched using this prefix.
This object is a 64-bit version of
cefPrefixExternalNRPkts."
::= { cefPrefixEntry 14 }
cefPrefixExternalNRBytes OBJECT-TYPE
SYNTAX Counter32
UNITS "bytes"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"If CEF accounting is set to enable nonRecursive
accounting (value of cefCfgAccountingMap object in
the cefCfgEntry is set to enable 'nonRecursive'
accounting), then this object represents
the number of non-recursive bytes in the external
bucket switched using this prefix."
::= { cefPrefixEntry 15 }
cefPrefixExternalNRHCBytes OBJECT-TYPE
SYNTAX Counter64
UNITS "bytes"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"If CEF accounting is set to enable nonRecursive
accounting (value of cefCfgAccountingMap object in
the cefCfgEntry is set to enable 'nonRecursive'
accounting), then this object represents
the number of non-recursive bytes in the external
bucket switched using this prefix.
This object is a 64-bit version of
cefPrefixExternalNRBytes."
::= { cefPrefixEntry 16 }
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
-- The CEF Longest Match Prefix Table
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
cefLMPrefixSpinLock OBJECT-TYPE
SYNTAX TestAndIncr
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"An advisory lock used to allow cooperating SNMP
Command Generator applications to coordinate their
use of the Set operation in creating Longest
Match Prefix Entries in cefLMPrefixTable.
When creating a new longest prefix match entry,
the value of cefLMPrefixSpinLock should be retrieved.
The destination address should be determined to be
unique by the SNMP Command Generator application by
consulting the cefLMPrefixTable. Finally, the longest
prefix entry may be created (Set), including the
advisory lock.
If another SNMP Command Generator application has
altered the longest prefix entry in the meantime,
then the spin lock's value will have changed,
and so this creation will fail because it will specify
the wrong value for the spin lock.
Since this is an advisory lock, the use of this lock
is not enforced, but not using this lock may lead
to conflict with the another SNMP command responder
application which may also be acting on the
cefLMPrefixTable."
::= { cefFIB 3 }
cefLMPrefixTable OBJECT-TYPE
SYNTAX SEQUENCE OF CefLMPrefixEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A table of Longest Match Prefix Query requests.
Generator application should utilize the
cefLMPrefixSpinLock to try to avoid collisions.
See DESCRIPTION clause of cefLMPrefixSpinLock."
::= { cefFIB 4 }
cefLMPrefixEntry OBJECT-TYPE
SYNTAX CefLMPrefixEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"If CEF is enabled on the managed device, then each
entry represents a longest Match Prefix request.
A management station wishing to get the longest
Match prefix for a given destination address
should create the associate instance of the
row status. The row status should be set to
active(1) to initiate the request. Note that
this entire procedure may be initiated via a
single set request which specifies a row status
of createAndGo(4).
Once the request completes, the management station
should retrieve the values of the objects of
interest, and should then delete the entry. In order
to prevent old entries from clogging the table,
entries will be aged out, but an entry will never be
deleted within 5 minutes of completion.
Entries are lost after an agent restart.
I.e. to find out the longest prefix match for
destination address of A.B.C.D on entity whose
entityPhysicalIndex is 1, the Management station
will create an entry in cefLMPrefixTable with
cefLMPrefixRowStatus.1(entPhysicalIndex).1(ipv4).A.B.C.D
set to createAndGo(4). Management Station may query the
value of objects cefLMPrefix and cefLMPrefixLen
to find out the corresponding prefix entry from the
cefPrefixTable once the value of cefLMPrefixState
is set to matchFound(2).
entPhysicalIndex is also an index for this
table which represents entities of
'module' entPhysicalClass which are capable
of running CEF.
"
INDEX { entPhysicalIndex,
cefLMPrefixDestAddrType,
cefLMPrefixDestAddr }
::= { cefLMPrefixTable 1}
CefLMPrefixEntry ::= SEQUENCE {
cefLMPrefixDestAddrType InetAddressType,
cefLMPrefixDestAddr InetAddress,
cefLMPrefixState CefPrefixSearchState,
cefLMPrefixAddr InetAddress,
cefLMPrefixLen InetAddressPrefixLength,
cefLMPrefixRowStatus RowStatus
}
cefLMPrefixDestAddrType OBJECT-TYPE
SYNTAX InetAddressType
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The Destination Address Type.
This object specifies the address type
used for cefLMPrefixDestAddr.
Longest Match Prefix entries are only valid
for the address type of ipv4(1) and ipv6(2)."
::= { cefLMPrefixEntry 1 }
cefLMPrefixDestAddr OBJECT-TYPE
SYNTAX InetAddress
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The Destination Address.
The type of this address is determined by
the value of the cefLMPrefixDestAddrType object."
::= { cefLMPrefixEntry 2 }
cefLMPrefixState OBJECT-TYPE
SYNTAX CefPrefixSearchState
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Indicates the state of this prefix search request."
::= { cefLMPrefixEntry 3 }
cefLMPrefixAddr OBJECT-TYPE
SYNTAX InetAddress
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The Network Prefix Address. Index to the cefPrefixTable.
The type of this address is determined by
the value of the cefLMPrefixDestAddrType object."
::= { cefLMPrefixEntry 4 }
cefLMPrefixLen OBJECT-TYPE
SYNTAX InetAddressPrefixLength
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The Network Prefix Length. Index to the cefPrefixTable."
::= { cefLMPrefixEntry 5 }
cefLMPrefixRowStatus OBJECT-TYPE
SYNTAX RowStatus
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The status of this table entry. Once the entry
status is set to active(1), the associated entry
cannot be modified until the request completes
(cefLMPrefixState transitions to matchFound(2)
or noMatchFound(3)).
Once the longest match request has been created
(i.e. the cefLMPrefixRowStatus has been made active),
the entry cannot be modified - the only operation
possible after this is to delete the row."
::= { cefLMPrefixEntry 6 }
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
-- The CEF Path Table
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
cefPathTable OBJECT-TYPE
SYNTAX SEQUENCE OF CefPathEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"CEF prefix path is a valid route to reach to a
destination IP prefix. Multiple paths may exist
out of a router to the same destination prefix.
This table specify lists of CEF paths."
::= { cefFIB 5 }
cefPathEntry OBJECT-TYPE
SYNTAX CefPathEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"If CEF is enabled on the Managed device,
each entry contain a CEF prefix path.
entPhysicalIndex is also an index for this
table which represents entities of
'module' entPhysicalClass which are capable
of running CEF."
INDEX { entPhysicalIndex,
cefPrefixType,
cefPrefixAddr,
cefPrefixLen,
cefPathId
}
::= { cefPathTable 1 }
CefPathEntry ::= SEQUENCE {
cefPathId Integer32,
cefPathType CefPathType,
cefPathInterface InterfaceIndexOrZero,
cefPathNextHopAddr InetAddress,
cefPathRecurseVrfName MplsVpnId
}
cefPathId OBJECT-TYPE
SYNTAX Integer32 (1..2147483647)
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The locally arbitrary, but unique identifier associated
with this prefix path entry."
::= { cefPathEntry 1 }
cefPathType OBJECT-TYPE
SYNTAX CefPathType
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Type for this CEF Path."
::= { cefPathEntry 2 }
cefPathInterface OBJECT-TYPE
SYNTAX InterfaceIndexOrZero
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Interface associated with this CEF path.
A value of zero for this object will indicate
that no interface is associated with this path
entry."
::= { cefPathEntry 3 }
cefPathNextHopAddr OBJECT-TYPE
SYNTAX InetAddress
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Next hop address associated with this CEF path.
The value of this object is only relevant
for attached next hop and recursive next hop
path types (when the object cefPathType is
set to attachedNexthop(4) or recursiveNexthop(5)).
and will be set to zero for other path types.
The type of this address is determined by
the value of the cefPrefixType object."
::= { cefPathEntry 4 }
cefPathRecurseVrfName OBJECT-TYPE
SYNTAX MplsVpnId
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The recursive vrf name associated with this path.
The value of this object is only relevant
for recursive next hop path types (when the
object cefPathType is set to recursiveNexthop(5)),
and '0x00' will be returned for other path types."
::= { cefPathEntry 5 }
-- End of cefPathTable
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
-- The CEF Adjacency Summary
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
cefAdjSummary OBJECT IDENTIFIER
::= { cefAdj 1 }
cefAdjSummaryTable OBJECT-TYPE
SYNTAX SEQUENCE OF CefAdjSummaryEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This table contains the summary information
for the cefAdjTable."
::= { cefAdjSummary 1 }
cefAdjSummaryEntry OBJECT-TYPE
SYNTAX CefAdjSummaryEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"If CEF is enabled on the Managed device,
each entry contains the CEF Adjacency
summary related attributes for the
Managed entity. A row exists for
each adjacency link type.
entPhysicalIndex is also an index for this
table which represents entities of
'module' entPhysicalClass which are capable
of running CEF."
INDEX { entPhysicalIndex, cefAdjSummaryLinkType}
::= { cefAdjSummaryTable 1}
CefAdjSummaryEntry ::= SEQUENCE {
cefAdjSummaryLinkType CefAdjLinkType,
cefAdjSummaryComplete Unsigned32,
cefAdjSummaryIncomplete Unsigned32,
cefAdjSummaryFixup Unsigned32,
cefAdjSummaryRedirect Unsigned32
}
cefAdjSummaryLinkType OBJECT-TYPE
SYNTAX CefAdjLinkType
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The link type of the adjacency."
::= { cefAdjSummaryEntry 1 }
cefAdjSummaryComplete OBJECT-TYPE
SYNTAX Unsigned32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The total number of complete adjacencies.
The total number of adjacencies which can be used
to switch traffic to a neighbour."
::= { cefAdjSummaryEntry 2 }
cefAdjSummaryIncomplete OBJECT-TYPE
SYNTAX Unsigned32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The total number of incomplete adjacencies.
The total number of adjacencies which cannot be
used to switch traffic in their current state."
::= { cefAdjSummaryEntry 3 }
cefAdjSummaryFixup OBJECT-TYPE
SYNTAX Unsigned32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The total number of adjacencies for which
the Layer 2 encapsulation string (header) may be
updated (fixed up) at packet switch time."
::= { cefAdjSummaryEntry 4 }
cefAdjSummaryRedirect OBJECT-TYPE
SYNTAX Unsigned32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The total number of adjacencies for which
ip redirect (or icmp redirection) is enabled.
The value of this object is only relevant for
ipv4 and ipv6 link type (when the index object
cefAdjSummaryLinkType value is ipv4(1) or ipv6(2))
and will be set to zero for other link types.
"
REFERENCE
"1. Internet Architecture Extensions for Shared Media,
RFC 1620, May 1994."
::= { cefAdjSummaryEntry 5 }
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
-- The CEF Adjacency Table
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++
cefAdjTable OBJECT-TYPE
SYNTAX SEQUENCE OF CefAdjEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A list of CEF adjacencies."
::= { cefAdj 2 }
cefAdjEntry OBJECT-TYPE
SYNTAX CefAdjEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"If CEF is enabled on the Managed device,
each entry contains the adjacency
attributes. Adjacency entries may exist
for all the interfaces on which packets
can be switched out of the device.
The interface is instantiated by ifIndex.
Therefore, the interface index must have been
assigned, according to the applicable procedures,
before it can be meaningfully used.
Generally, this means that the interface must exist.