summaryrefslogtreecommitdiff
path: root/MIBS/accedian/ACD-POLICY-MIB
blob: 06be18a13a7e71dd57ba2b665f33aad86a5e23d3 (plain)
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
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
--
-- Accedian Enterprise Specific MIB
--
-- Copyright (c) 2005-2011, Accedian Networks, Inc.
-- All rights reserved.
--
-- The contents of this document are subject to change without notice.
--


ACD-POLICY-MIB DEFINITIONS ::= BEGIN

IMPORTS
    MODULE-IDENTITY, OBJECT-TYPE,
    Unsigned32, Counter32, Counter64
        FROM SNMPv2-SMI
    DisplayString, TruthValue, DateAndTime
        FROM SNMPv2-TC
    MODULE-COMPLIANCE, OBJECT-GROUP
        FROM SNMPv2-CONF

    acdMibs
        FROM ACCEDIAN-SMI;

acdPolicy MODULE-IDENTITY

    LAST-UPDATED "201110100100Z"
    ORGANIZATION "Accedian Networks, Inc."
    CONTACT-INFO
            "Accedian Technical Assistance Center
             Accedian Networks, Inc.
             4878 Levy, suite 202
             Saint-Laurent, Quebec Canada H4R 2P1
             E-mail: support@accedian.com"
    DESCRIPTION
            "The Policies database for this Accedian Networks device."

    REVISION "201110100100Z"        -- 10 October 2011
    DESCRIPTION
            "Add acdPolicyTableLastChangeTid."

    REVISION "201102280100Z"        -- 28 Feb 2011
    DESCRIPTION
            "Add acdPolicyListTable and acdPolicyPortTable tables."

    REVISION "201011100100Z"        -- 10 November 2010
    DESCRIPTION
            "Add compliance section."

    REVISION "200806150100Z"        -- 15 June 2008
    DESCRIPTION
            "Add new service mapping values."

    REVISION "200805010100Z"        -- 1 May 2008
    DESCRIPTION
            "Add service mapping support."

    REVISION "200802060100Z"        -- 6 Feb 2008
    DESCRIPTION
            "Add support for history table."

    REVISION "200705150100Z"        -- 15 may 2007
    DESCRIPTION
            "Add bad packets counters."

    REVISION "200703280100Z"        -- 28 March 2007
    DESCRIPTION
            "Add Regulator functionalities."

    REVISION "200608060100Z"        -- 6 August 2006
    DESCRIPTION
            "Initial version of MIB module ACD-POLICY-MIB."

    ::= { acdMibs 3 }

acdPolicyNotifications   OBJECT IDENTIFIER ::= { acdPolicy 4 }
acdPolicyMIBObjects      OBJECT IDENTIFIER ::= { acdPolicy 5 }
acdPolicyConformance     OBJECT IDENTIFIER ::= { acdPolicy 6 }

acdPolicyList            OBJECT IDENTIFIER ::= { acdPolicyMIBObjects 1 }
acdPolicyPort            OBJECT IDENTIFIER ::= { acdPolicyMIBObjects 2 }
acdPolicyTableTid        OBJECT IDENTIFIER ::= { acdPolicyMIBObjects 3 }

---------------------------------------------------------------------------
 -- The Policies table
 -- This table contains all Policies.
---------------------------------------------------------------------------

acdPolicyTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF AcdPolicyEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "Table of all Policies"
    ::= { acdPolicy 1 }

acdPolicyEntry OBJECT-TYPE
    SYNTAX      AcdPolicyEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "A Policy is a Filter applied to a specific MAC to block, permit or
             only count a specific traffic."
    INDEX   { acdPolicyID }
    ::=  { acdPolicyTable 1 }


AcdPolicyEntry ::= SEQUENCE {
    acdPolicyID                         Unsigned32,
    acdPolicyListID                     Unsigned32,
    acdPolicyEntryID                    Unsigned32,
    acdPolicyEnable                     TruthValue,
    acdPolicyFilterType                 INTEGER,
    acdPolicyFilterIndex                Unsigned32,
    acdPolicyDropEnable                 TruthValue,
    acdPolicyMonitorEnable              TruthValue,
    acdPolicyMonitorIndex               INTEGER,
    acdPolicyRegulatorEnable            TruthValue,
    acdPolicyRegulatorIndex             Unsigned32,
    acdPolicyRegulatorMarking           INTEGER,
    acdPolicyAction                     INTEGER,
    acdPolicyEvcMappingEncaps           INTEGER,
    acdPolicyEvcMappingEtype            INTEGER,
    acdPolicyEvcMappingVlanId           Unsigned32,
    acdPolicyCosMappingPcpAction        INTEGER,
    acdPolicyCosMappingChoice1En        TruthValue,
    acdPolicyCosMappingChoice1Type      INTEGER,
    acdPolicyCosMappingChoice1Profile   Unsigned32,
    acdPolicyCosMappingChoice1RegSet    Unsigned32,
    acdPolicyCosMappingChoice2En        TruthValue,
    acdPolicyCosMappingChoice2Type      INTEGER,
    acdPolicyCosMappingChoice2Profile   Unsigned32,
    acdPolicyCosMappingChoice2RegSet    Unsigned32,
    acdPolicyDefaultMappingGreenCfi     Unsigned32,
    acdPolicyDefaultMappingGreenPrior   Unsigned32,
    acdPolicyDefaultMappingYellowCfi    Unsigned32,
    acdPolicyDefaultMappingYellowPrior  Unsigned32,
    acdPolicyOutgoingPort               OBJECT IDENTIFIER
}

acdPolicyID  OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Unique value for each policy entry. Its value ranges from 1 to
        MAXINT (4 bytes). "
   ::= { acdPolicyEntry 1 }

acdPolicyListID OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object identifies in wich List the entry is."
   ::= { acdPolicyEntry 2 }

acdPolicyEntryID OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object identifies the order in the List."
   ::= { acdPolicyEntry 3 }

acdPolicyEnable OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "Enable or disable the Policy in the packet processing Engine."
    ::= { acdPolicyEntry 4 }

acdPolicyFilterType OBJECT-TYPE
    SYNTAX      INTEGER {
                    layer2filter(0),
                    ipv4filter(1),
                    ipv6filter(2),
                    vlist(3)
    }
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "This indicates which filter type is programmed in this entry. With 
         the filter index we can retrieve the specific filter in the filter
         database."
    ::= { acdPolicyEntry 5 }

acdPolicyFilterIndex OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "This indicates which filter index is programmed in this entry. With 
         the filter type we can retrieve the specific filter in the filter
         database."
    ::= { acdPolicyEntry 6 }

acdPolicyDropEnable OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-write
    STATUS      deprecated
    DESCRIPTION
        "********* THIS OBJECT IS DEPRECATED **********

         This object has been deprecated in favour of acdPolicyAction.

         This indicates if this policy is programmed to drop or let the traffic 
         pass the processing engine."
    ::= { acdPolicyEntry 7 }

acdPolicyMonitorEnable OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "This indicates if this policy is programmed to send the traffic to
         one of the monitoring port."
    ::= { acdPolicyEntry 8 }

acdPolicyMonitorIndex OBJECT-TYPE
    SYNTAX      INTEGER {
                    monitor1(1),
                    monitor2(2)
    }
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "This indicates which monitor port is programmed to send the traffic
         matching this policy entry."
    ::= { acdPolicyEntry 9 }

acdPolicyRegulatorEnable OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "This indicates if this policy use or not a bandwidth regulator."
    ::= { acdPolicyEntry 10 }

acdPolicyRegulatorIndex OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "This indicates which bandwidth regulator index is programmed in 
         this policy entry."
    ::= { acdPolicyEntry 11 }

acdPolicyRegulatorMarking OBJECT-TYPE
    SYNTAX      INTEGER {
                    green(1),
                    yellow(2),
                    red(3)
    }
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "This indicates the pre-marking color associated with this policy."
    ::= { acdPolicyEntry 12 }

acdPolicyAction OBJECT-TYPE
    SYNTAX      INTEGER {
                    drop(1),
                    permit(2),
                    mgmtOAM(3),
                    mgmtOAMandDrop(4),
                    mgmtOAMandForward(5)
    }
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "Action that will be applied to traffic that matches the filter."
    ::= { acdPolicyEntry 13 }

acdPolicyEvcMappingEncaps OBJECT-TYPE
    SYNTAX      INTEGER {
                    none(1),
                    push(2),
                    pop(3),
                    replace(4),
                    popAndReplace(5),
                    pushAndPreserve(6)
    }
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "Action that will be applied to traffic that matches the filter."
    ::= { acdPolicyEntry 14 }

acdPolicyEvcMappingEtype OBJECT-TYPE
    SYNTAX      INTEGER {
                    cvlan(1),
                    svlan(2)
    }
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The ethertype of the VLAN to be added if the encapsulation is set to 
         push. Possible values are customer VLAN (cvlan) and service VLAN
         (svlan)."
    ::= { acdPolicyEntry 15 }

acdPolicyEvcMappingVlanId OBJECT-TYPE
    SYNTAX      Unsigned32  (0..4095)
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The VLAN ID to be added if the encapsulation is set to push. Its
         value ranges from 0 to 4095."
    ::= { acdPolicyEntry 16 }

acdPolicyCosMappingPcpAction OBJECT-TYPE
    SYNTAX      INTEGER {
                    preserve(1),
                    direct(2),
                    map(3)
    }
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "This section selects the PCP (Priority Code Points) action to perform.
         Possible values are:

             Preserve: Keep the PCP bits if the packet is already tagged
             Direct: Add the default PCP value
             Map: Use a CoS profile for PCP selection

         For each PCP action there is one or two traffic mapping choices and
         the default PCP bits to use if the packet does not match the first
         and the second choices."
    ::= { acdPolicyEntry 17 }

acdPolicyCosMappingChoice1En OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "This indicates if this choice is used."
    ::= { acdPolicyEntry 18 }

acdPolicyCosMappingChoice1Type OBJECT-TYPE
    SYNTAX      INTEGER {
                    pcpVlan(1),
                    pcpVlanInVlan(2),
                    pre(3),
                    dscp(4)
    }
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The traffic mapping is accomplished using the selected field in the
         incoming traffic. This field can be p-bits in 802.1Q, 802.1Q-in-Q tags
         IP precedence bits in IPv4 TOS byte or DSCP bits in IPv4 DSCP byte."
    ::= { acdPolicyEntry 19 }

acdPolicyCosMappingChoice1Profile OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "CoS profile used to map the input traffic to an L2 class of service."
    ::= { acdPolicyEntry 20 }

acdPolicyCosMappingChoice1RegSet OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "Bandwidth regulator apply to regulate traffic."
    ::= { acdPolicyEntry 21 }

acdPolicyCosMappingChoice2En OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "This indicates if this choice is used."
    ::= { acdPolicyEntry 22 }

acdPolicyCosMappingChoice2Type OBJECT-TYPE
    SYNTAX      INTEGER {
                    pcpVlan(1),
                    pcpVlanInVlan(2),
                    pre(3),
                    dscp(4)
    }
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The traffic mapping is accomplished using the selected field in the
         incoming traffic. This field can be p-bits in 802.1Q, 802.1Q-in-Q tags
         IP precedence bits in IPv4 TOS byte or DSCP bits in IPv4 DSCP byte."
    ::= { acdPolicyEntry 23 }

acdPolicyCosMappingChoice2Profile OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "CoS profile used to map the input traffic to an L2 class of service."
    ::= { acdPolicyEntry 24 }

acdPolicyCosMappingChoice2RegSet OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "Bandwidth regulator apply to regulate traffic."
    ::= { acdPolicyEntry 25 }

acdPolicyDefaultMappingGreenCfi OBJECT-TYPE
    SYNTAX      Unsigned32 (0..1)
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The default CFI value to be applied if the Encapsulation is Push.
         This would only be applied if the traffic does not match the first
         and second choices and if the result color is green."
    ::= { acdPolicyEntry 26 }

acdPolicyDefaultMappingGreenPrior OBJECT-TYPE
    SYNTAX      Unsigned32 (0..7)
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The default PCP values to be applied if the Encapsulation is Push.
         This would only be applied if the traffic does not match the first
         and second choices and if the result color is green."
    ::= { acdPolicyEntry 27 }

acdPolicyDefaultMappingYellowCfi OBJECT-TYPE
    SYNTAX      Unsigned32 (0..1)
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The default CFI value to be applied if the Encapsulation is Push.
         This would only be applied if the traffic does not match the first
         and second choices and if the result color is green."
    ::= { acdPolicyEntry 28 }

acdPolicyDefaultMappingYellowPrior OBJECT-TYPE
    SYNTAX      Unsigned32 (0..7)
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The default PCP values to be applied if the Encapsulation is Push.
         This would only be applied if the traffic does not match the first
         and second choices and if the result color is green."
    ::= { acdPolicyEntry 29 }

acdPolicyOutgoingPort  OBJECT-TYPE
    SYNTAX      OBJECT IDENTIFIER
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
            "The OID value used to identify the outgoing port for this policy.
             In order to identify a particular port, this object shall
             identify the instance of the acdPortConfigIndex object, defined
             in ACD-PORT-MIB, for the desired port. For example, if an entry
             is set to port 4, this object would be set to acdPortConfigIndex.4
             and by querying the acdPortConfigName.4 the user can retrieve the
             name of this port."
    ::= { acdPolicyEntry 30 }

-----------------------------------------------------------------------
 -- The Policies Counters table
 -- This table contains all counters associated with each policy.
---------------------------------------------------------------------------

acdPolicyStatsTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF AcdPolicyStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "Table of all counters associated with each policy."
    ::= { acdPolicy 2 }

acdPolicyStatsEntry OBJECT-TYPE
    SYNTAX      AcdPolicyStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "An Entry consists in a bytes and a packets counters."
    INDEX   { acdPolicyStatsID }
    ::=  { acdPolicyStatsTable 1 }


AcdPolicyStatsEntry ::= SEQUENCE {
    acdPolicyStatsID                Unsigned32,
    acdPolicyStatsListID            Unsigned32,
    acdPolicyStatsEntryID           Unsigned32,
    acdPolicyStatsInPkts            Counter32,
    acdPolicyStatsInOverflowPkts    Counter32,
    acdPolicyStatsInHCPkts          Counter64,
    acdPolicyStatsInOctets          Counter32,
    acdPolicyStatsInOverflowOctets  Counter32,
    acdPolicyStatsInHCOctets        Counter64,
    acdPolicyStatsInPktsErr         Counter32,
    acdPolicyStatsInOverflowPktsErr Counter32,
    acdPolicyStatsInHCPktsErr       Counter64
}

acdPolicyStatsID  OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Unique value for each policy counter. Its value ranges from 1 to
        MAXINT (4 bytes). "
   ::= { acdPolicyStatsEntry 1 }

acdPolicyStatsListID  OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object identifies in wich List the entry is."
   ::= { acdPolicyStatsEntry 2 }

acdPolicyStatsEntryID  OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object identifies the order in the List."
   ::= { acdPolicyStatsEntry 3 }

acdPolicyStatsInPkts OBJECT-TYPE
    SYNTAX      Counter32
    UNITS       "Packets"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of packets received on this MAC and matching this
         policy. This is a 32 bits counter. Combined with 
         acdPolicyStatsInOverflowPkts, it provides the equivalent of the 64 
         bits counter acdPolicyStatsInHCPkts."
    ::= { acdPolicyStatsEntry 4 }

acdPolicyStatsInOverflowPkts OBJECT-TYPE
    SYNTAX      Counter32
    UNITS       "Packets"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of times the associated acdPolicyStatsInPkts counter
         has overflowed. This is a 32 bits counter. Combined with 
         acdPolicyStatsInPkts, it provides the equivalent of the 64 bits 
         counter acdPolicyStatsInHCPkts."
    ::= { acdPolicyStatsEntry 5 }

acdPolicyStatsInHCPkts OBJECT-TYPE
    SYNTAX      Counter64
    UNITS       "Packets"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of packets received on this MAC and matching this
         policy."
    ::= { acdPolicyStatsEntry 6 }

acdPolicyStatsInOctets OBJECT-TYPE
    SYNTAX      Counter32
    UNITS       "Octets"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of Octets received on this MAC and matching this
         policy. This is a 32 bits counter. Combined with 
         acdPolicyStatsInOverflowOctets, it provides the equivalent of the 
         64 bits counter acdPolicyStatsInHCOctets."
    ::= { acdPolicyStatsEntry 7 }

acdPolicyStatsInOverflowOctets OBJECT-TYPE
    SYNTAX      Counter32
    UNITS       "Octets"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of times the associated acdPolicyStatsInOctets counter
         has overflowed. This is a 32 bits counter. Combined with 
         acdPolicyStatsInOctets, it provides the equivalent of the 64 bits 
         counter acdPolicyStatsInHCOctets."
    ::= { acdPolicyStatsEntry 8 }

acdPolicyStatsInHCOctets OBJECT-TYPE
    SYNTAX      Counter64
    UNITS       "Octets"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of Octets received on this MAC and matching this
         policy."
    ::= { acdPolicyStatsEntry 9 }

acdPolicyStatsInPktsErr OBJECT-TYPE
    SYNTAX      Counter32
    UNITS       "Packets"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of errored packets received on this MAC and matching this
         policy. This is a 32 bits counter. Combined with 
         acdPolicyStatsInOverflowPktsErr, it provides the equivalent of the 64 
         bits counter acdPolicyStatsInHCPktsErr."
    ::= { acdPolicyStatsEntry 10 }

acdPolicyStatsInOverflowPktsErr OBJECT-TYPE
    SYNTAX      Counter32
    UNITS       "Packets"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of times the associated acdPolicyStatsInPktsErr counter
         has overflowed. This is a 32 bits counter. Combined with 
         acdPolicyStatsInPktsErr, it provides the equivalent of the 64 bits 
         counter acdPolicyStatsInHCPktsErr."
    ::= { acdPolicyStatsEntry 11 }

acdPolicyStatsInHCPktsErr OBJECT-TYPE
    SYNTAX      Counter64
    UNITS       "Packets"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of errored packets received on this MAC and matching this
         policy."
    ::= { acdPolicyStatsEntry 12 }


---------------------------------------------------------------------------
 -- The Policies History group

 -- The Policies History group records periodic statistical samples
 -- from a Policy and stores them for later retrieval.

---------------------------------------------------------------------------

acdPolicyHistStatsTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF AcdPolicyHistStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "Table of all counters associated with each policy."
    ::= { acdPolicy 3 }

acdPolicyHistStatsEntry OBJECT-TYPE
    SYNTAX      AcdPolicyHistStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "An Entry consists in a bytes and a packets counters."
    INDEX   { acdPolicyHistStatsID, acdPolicyHistStatsSampleIndex }
    ::=  { acdPolicyHistStatsTable 1 }


AcdPolicyHistStatsEntry ::= SEQUENCE {
    acdPolicyHistStatsID                Unsigned32,
    acdPolicyHistStatsListID            Unsigned32,
    acdPolicyHistStatsEntryID           Unsigned32,
    acdPolicyHistStatsSampleIndex       Unsigned32,
    acdPolicyHistStatsStatus            INTEGER,
    acdPolicyHistStatsDuration          Unsigned32,
    acdPolicyHistStatsIntervalEnd       DateAndTime,
    acdPolicyHistStatsInPkts            Counter32,
    acdPolicyHistStatsInOverflowPkts    Counter32,
    acdPolicyHistStatsInHCPkts          Counter64,
    acdPolicyHistStatsInOctets          Counter32,
    acdPolicyHistStatsInOverflowOctets  Counter32,
    acdPolicyHistStatsInHCOctets        Counter64,
    acdPolicyHistStatsInPktsErr         Counter32,
    acdPolicyHistStatsInOverflowPktsErr Counter32,
    acdPolicyHistStatsInHCPktsErr       Counter64

}

acdPolicyHistStatsID  OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Unique value for each policy counter. Its value ranges from 1 to
        MAXINT (4 bytes). "
   ::= { acdPolicyHistStatsEntry 1 }

acdPolicyHistStatsListID  OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object identifies in wich List the entry is."
   ::= { acdPolicyHistStatsEntry 2 }

acdPolicyHistStatsEntryID  OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object identifies the order in the List."
   ::= { acdPolicyHistStatsEntry 3 }

acdPolicyHistStatsSampleIndex  OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "An index that uniquely identifies the particular sample this entry
         represents among all samples associated with the same policy
         instance. This index starts at 1 and increases by one as each new
         sample."
    ::= { acdPolicyHistStatsEntry 4 }

acdPolicyHistStatsStatus OBJECT-TYPE
    SYNTAX      INTEGER {
                    valid(1),
                    invalid(2)
    }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The status of this acdPolicyHistStats entry."
    ::= { acdPolicyHistStatsEntry 5 }

acdPolicyHistStatsDuration  OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The interval in seconds over which the data is sampled for this entry."
    ::= { acdPolicyHistStatsEntry 6 }

acdPolicyHistStatsIntervalEnd OBJECT-TYPE
    SYNTAX      DateAndTime
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
       "This is the time of the end of this entry."
    ::= { acdPolicyHistStatsEntry 7 }

acdPolicyHistStatsInPkts OBJECT-TYPE
    SYNTAX      Counter32
    UNITS       "Packets"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of packets received on this MAC and matching this
         policy during this sampling interval. This is a 32 bits counter.
         Combined with acdPolicyHistStatsInOverflowPkts, it provides the
         equivalent of the 64 bits counter acdPolicyHistStatsInHCPkts."
    ::= { acdPolicyHistStatsEntry 8 }

acdPolicyHistStatsInOverflowPkts OBJECT-TYPE
    SYNTAX      Counter32
    UNITS       "Packets"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of times the associated acdPolicyStatsInPkts counter
         has overflowed during this sampling interval. This is a 32 bits counter.
         Combined with acdPolicyHistStatsInPkts, it provides the equivalent of
         the 64 bits counter acdPolicyHistStatsInHCPkts."
    ::= { acdPolicyHistStatsEntry 9 }

acdPolicyHistStatsInHCPkts OBJECT-TYPE
    SYNTAX      Counter64
    UNITS       "Packets"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of packets received on this MAC and matching this
         policy during this sampling interval."
    ::= { acdPolicyHistStatsEntry 10 }

acdPolicyHistStatsInOctets OBJECT-TYPE
    SYNTAX      Counter32
    UNITS       "Octets"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of Octets received on this MAC and matching this
         policy during this sampling interval. This is a 32 bits counter.
         Combined with acdPolicyHistStatsInOverflowOctets, it provides the
         equivalent of the 64 bits counter acdPolicyHistStatsInHCOctets."
    ::= { acdPolicyHistStatsEntry 11 }

acdPolicyHistStatsInOverflowOctets OBJECT-TYPE
    SYNTAX      Counter32
    UNITS       "Octets"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of times the associated acdPolicyHistStatsInOctets counter
         has overflowed during this sampling interval. This is a 32 bits counter.
         Combined with acdPolicyHistStatsInOctets, it provides the equivalent
         of the 64 bits counter acdPolicyHistStatsInHCOctets."
    ::= { acdPolicyHistStatsEntry 12 }

acdPolicyHistStatsInHCOctets OBJECT-TYPE
    SYNTAX      Counter64
    UNITS       "Octets"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of Octets received on this MAC and matching this
         policy during this sampling interval."
    ::= { acdPolicyHistStatsEntry 13 }

acdPolicyHistStatsInPktsErr OBJECT-TYPE
    SYNTAX      Counter32
    UNITS       "Packets"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of errored packets received on this MAC and matching
         this policy during this sampling interval. This is a 32 bits counter.
         Combined with acdPolicyHistStatsInOverflowPktsErr, it provides the
         equivalent of the 64 bits counter acdPolicyHistStatsInHCPktsErr."
    ::= { acdPolicyHistStatsEntry 14 }

acdPolicyHistStatsInOverflowPktsErr OBJECT-TYPE
    SYNTAX      Counter32
    UNITS       "Packets"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of times the associated acdPolicyStatsInPktsErr counter
         has overflowed during this sampling interval. This is a 32 bits counter.
         Combined with acdPolicyHistStatsInPktsErr, it provides the equivalent
         of the 64 bits counter acdPolicyHistStatsInHCPktsErr."
    ::= { acdPolicyHistStatsEntry 15 }

acdPolicyHistStatsInHCPktsErr OBJECT-TYPE
    SYNTAX      Counter64
    UNITS       "Packets"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of errored packets received on this MAC and matching
         this policy during this sampling interval."
    ::= { acdPolicyHistStatsEntry 16 }


---------------------------------------------------------------------------
 -- The Policy lists table
 -- This table contains all Policy list for this unit.
---------------------------------------------------------------------------

acdPolicyListTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF AcdPolicyListEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "Table of all Policy list contains in this unit."
    ::= { acdPolicyList 1 }

acdPolicyListEntry OBJECT-TYPE
    SYNTAX      AcdPolicyListEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "Each entry in this table describe a policy list contains in this unit."
    INDEX   { acdPolicyListEntryID }
    ::=  { acdPolicyListTable 1 }


AcdPolicyListEntry ::= SEQUENCE {
    acdPolicyListEntryID            Unsigned32,
    acdPolicyListName               DisplayString,
    acdPolicyListNbrEntries         Unsigned32
}


acdPolicyListEntryID OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Unique value for each list. This value is the same than acdPolicyListID
        for each entry in acdPolicyTable."
   ::= { acdPolicyListEntry 1 }

                                    
acdPolicyListName OBJECT-TYPE
    SYNTAX      DisplayString (SIZE (1..31))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This is a string to identify the policy list."
    ::= { acdPolicyListEntry 2 }

acdPolicyListNbrEntries  OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of entries currently in this list."
    ::= { acdPolicyListEntry 3 }


---------------------------------------------------------------------------
 -- The Policy port table
 -- This table contains the one to one relation between port and policy list.
---------------------------------------------------------------------------

acdPolicyPortTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF AcdPolicyPortEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "Table of all Port and the correspondant policy list."
    ::= { acdPolicyPort 1 }

acdPolicyPortEntry OBJECT-TYPE
    SYNTAX      AcdPolicyPortEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "A Policy port entry is the mapping between this port and a policy list."
    INDEX   { acdPolicyPortEntryID }
    ::=  { acdPolicyPortTable 1 }


AcdPolicyPortEntry ::= SEQUENCE {
    acdPolicyPortEntryID            Unsigned32,
    acdPolicyPortListID             Unsigned32
}
                   
acdPolicyPortEntryID  OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Unique value for each port. This value is the same than acdPortConfigIndex
        used in ACD-PORT-MIB."
   ::= { acdPolicyPortEntry 1 }

acdPolicyPortListID OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Numerical value coresponding to acdPolicyListEntryID."
    ::= { acdPolicyPortEntry 2 }

---------------------------------------------------------------------------
 -- Transaction ID Information
---------------------------------------------------------------------------

acdPolicyTableLastChangeTid OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
       "This is the transaction ID of the last change of the acdPolicyTable
        table.  If this value is different since the last read this is indicate 
        a table change."
    ::= { acdPolicyTableTid 1 }

---------------------------------------------------------------------------
 -- ACD-POLICY-MIB Module - Conformance Information
---------------------------------------------------------------------------

acdPolicyCompliances  OBJECT IDENTIFIER ::= { acdPolicyConformance 1 }
acdPolicyGroups       OBJECT IDENTIFIER ::= { acdPolicyConformance 2 }

---------------------------------------------------------------------------
 -- Units of conformance
---------------------------------------------------------------------------

acdPolicyGroup OBJECT-GROUP
    OBJECTS {
        acdPolicyListID,
        acdPolicyEntryID,
        acdPolicyEnable,
        acdPolicyFilterType,
        acdPolicyFilterIndex,
        acdPolicyMonitorEnable,
        acdPolicyMonitorIndex,
        acdPolicyRegulatorEnable,
        acdPolicyRegulatorIndex,
        acdPolicyRegulatorMarking,
        acdPolicyAction,
        acdPolicyEvcMappingEncaps,
        acdPolicyEvcMappingEtype,
        acdPolicyEvcMappingVlanId,
        acdPolicyCosMappingPcpAction,
        acdPolicyCosMappingChoice1En,
        acdPolicyCosMappingChoice1Type,
        acdPolicyCosMappingChoice1Profile,
        acdPolicyCosMappingChoice1RegSet,
        acdPolicyCosMappingChoice2En,
        acdPolicyCosMappingChoice2Type,
        acdPolicyCosMappingChoice2Profile,
        acdPolicyCosMappingChoice2RegSet,
        acdPolicyDefaultMappingGreenCfi,
        acdPolicyDefaultMappingGreenPrior,
        acdPolicyDefaultMappingYellowCfi,
        acdPolicyDefaultMappingYellowPrior,
        acdPolicyOutgoingPort
    }
    STATUS      current
    DESCRIPTION
       "Objects for the policy configuration Group."
    ::= { acdPolicyGroups 1 }

acdPolicyStatsGroup OBJECT-GROUP
    OBJECTS {
        acdPolicyStatsListID,
        acdPolicyStatsEntryID,
        acdPolicyStatsInPkts,
        acdPolicyStatsInOverflowPkts,
        acdPolicyStatsInHCPkts,
        acdPolicyStatsInOctets,
        acdPolicyStatsInOverflowOctets,
        acdPolicyStatsInHCOctets,
        acdPolicyStatsInPktsErr,
        acdPolicyStatsInOverflowPktsErr,
        acdPolicyStatsInHCPktsErr
    }
    STATUS      current
    DESCRIPTION
       "Objects for the policy statistics Group."
    ::= { acdPolicyGroups 2 }

acdPolicyHistStatsGroup OBJECT-GROUP
    OBJECTS {
        acdPolicyHistStatsListID,
        acdPolicyHistStatsEntryID,
        acdPolicyHistStatsStatus,
        acdPolicyHistStatsDuration,
        acdPolicyHistStatsIntervalEnd,
        acdPolicyHistStatsInPkts,
        acdPolicyHistStatsInOverflowPkts,
        acdPolicyHistStatsInHCPkts,
        acdPolicyHistStatsInOctets,
        acdPolicyHistStatsInOverflowOctets,
        acdPolicyHistStatsInHCOctets,
        acdPolicyHistStatsInPktsErr,
        acdPolicyHistStatsInOverflowPktsErr,
        acdPolicyHistStatsInHCPktsErr
    }
    STATUS      current
    DESCRIPTION
       "Objects for the policy historical tatistics Group."
    ::= { acdPolicyGroups 3 }

acdPolicyDeprecatedGroup OBJECT-GROUP
    OBJECTS {
        acdPolicyDropEnable
    }
    STATUS      deprecated
    DESCRIPTION
       "Objects for the policy deprecated Group."
    ::= { acdPolicyGroups 4}

acdPolicyListGroup OBJECT-GROUP
    OBJECTS {
        acdPolicyListName,
        acdPolicyListNbrEntries
    }
    STATUS      current
    DESCRIPTION
       "Objects for the policy list information Group."
    ::= { acdPolicyGroups 5 }

acdPolicyPortGroup OBJECT-GROUP
    OBJECTS {
        acdPolicyPortListID
    }
    STATUS      current
    DESCRIPTION
       "Objects for the policy port mapping Group."
    ::= { acdPolicyGroups 6 }

acdPolicyTidGroup OBJECT-GROUP
    OBJECTS {
        acdPolicyTableLastChangeTid
    }
    STATUS      current
    DESCRIPTION
       "List of scalars to monitior changes in tables."
    ::= { acdPolicyGroups 7 }

acdPolicyCompliance MODULE-COMPLIANCE
    STATUS      current
    DESCRIPTION
       "The compliance statement for support of the ACD-POLICY-MIB module."
    MODULE
        MANDATORY-GROUPS {
            acdPolicyGroup,
            acdPolicyStatsGroup,
            acdPolicyHistStatsGroup,
            acdPolicyListGroup,
            acdPolicyPortGroup,
            acdPolicyTidGroup
         }

    ::= { acdPolicyCompliances 1 }


END