Bump versions by x.y.(z+1)
[unimgr.git] / legato-api / src / main / yang / mef-types.yang
1 module mef-types {\r
2   namespace "http://metroethernetforum.org/ns/yang/mef-types";\r
3   prefix mef-types;\r
4   organization "Metro Ethernet Forum";\r
5   contact\r
6     "Web URL: http://metroethernetforum.org/\r
7      E-mail:  mibs@metroethernetforum.org\r
8      Postal:  Metro Ethernet Forum\r
9               6033 W. Century Boulevard, Suite 1107\r
10               Los Angeles, CA 90045\r
11               U.S.A.\r
12      Phone:   +1 310-642-2800\r
13      Fax:     +1 310-642-2808";\r
14   description\r
15     "This module defines the YANG Type Definitions and shared\r
16      (templated) groupings of data elementsused by MEF YANG Modules.\r
17       \r
18      Reference Overview:\r
19      A number of base documents have been used to create\r
20      the MEF Types YANG Module. The following are the\r
21      abbreviations for the baseline documents:\r
22      [RFC 6991] refers to IETF RFC 6991 'Common YANG Data Types',\r
23      2013-07-15 \r
24      [RFC 6643] refers to IETF RFC 6643 'Translation of Structure\r
25      of Management Information\r
26      Version 2 (SMIv2) MIB Modules to YANG Modules', 2011-11-25 \r
27      [802.1AB] refers to 'Station and Media Access Control\r
28      Connectivity Discovery', IEEE 802.1AB-2009, September 2009\r
29      [802.1q] refers to IEEE 802.1Q-2011 'IEEE Standard for Local\r
30      and metropolitan area networks --Media Access Control (MAC)\r
31      Bridges and Virtual Bridged Local Area Networks, August 2011\r
32      [802-2001] refers to 'IEEE Standard for Local and Metropolitan\r
33      Area Networks: Overview and Architecture', IEEE 802-2001,\r
34      February 2002\r
35      [MEF10.3] refers to MEF 10.3\r
36      'Ethernet Services Attributes Phase 3', October 2013\r
37      [MEF6.2] refers to MEF 6.2\r
38      'EVC Ethernet Services Defintions Phase 3', August 2014\r
39      [MEF40] refers to MEF 40\r
40      'UNI and EVC Definition of Managed Objects', April 2013\r
41      [MEF45] refers to MEF 45 'Multi-CEN L2CP', August 2014\r
42      [MEF7.2] refers to MEF 7.2\r
43      'Carrier Ethernet Management Information Model', April 2013\r
44      [MEF7.3] refers to MEF 7.3\r
45      'Carrier Ethernet Management Information Model',\r
46      Working Draft #1 2015\r
47      [RFC 2737] refers to IETF RFC 2737 'Entity MIB (Version 2)',\r
48      December 1999\r
49      [RFC 2863] refers to IETF RFC 2863 'The Interfaces Group MIB',\r
50      June 2000\r
51      [RFC 3419] refers to IETF RFC 3419\r
52      'Textual Conventions for Transport Addresses', December 2002\r
53      [Y.1731] refers to ITU-T Y.1731\r
54      'OAM functions and mechanisms for Ethernet based networks',\r
55      July 2011\r
56      [Q.840.1] refers to ITU-T Q.840.1\r
57      'Requirements and analysis for NMS-EMS management interface\r
58      of Ethernet over Transport and Metro Ethernet\r
59      Network(EoT/MEN)' March 2007";\r
60   revision 2015-05-26 {\r
61     description\r
62       "Formal Project Review Draft 1.";\r
63     reference "EVC Ethernet Services Definitions YANG Modules " +\r
64             "(MEF XX), TBD";\r
65   }\r
66   identity ieee-8023-interface-type {\r
67     description\r
68       "Base identity from which specific IEEE 802.3-2012 " +\r
69       "interface types are derived. This list was taken " +\r
70       "from Section 1.4 'Definitions'.";\r
71   }\r
72   identity ieee8023-10BASE2 {\r
73     base ieee-8023-interface-type;\r
74     description\r
75       "10BASE2";\r
76   }\r
77   identity ieee8023-10BASE5 {\r
78     base ieee-8023-interface-type;\r
79     description\r
80       "10BASE5";\r
81   }\r
82   identity ieee8023-10BASE-F {\r
83     base ieee-8023-interface-type;\r
84     description\r
85       "10BASEF";\r
86   }\r
87   identity ieee8023-10BASE-FB {\r
88     base ieee-8023-interface-type;\r
89     description\r
90       "10BASE-FB";\r
91   }\r
92   identity ieee8023-1000BASE-PX-D {\r
93     base ieee-8023-interface-type;\r
94     description\r
95       "1000BASE-PX-D";\r
96   }\r
97   identity ieee8023-1000BASE-PX-U {\r
98     base ieee-8023-interface-type;\r
99     description\r
100       "1000BASE-PX-U";\r
101   }\r
102   identity ieee8023-10BASE-FL {\r
103     base ieee-8023-interface-type;\r
104     description\r
105       "10BASE-FL";\r
106   }\r
107   identity ieee8023-10BASE-FP {\r
108     base ieee-8023-interface-type;\r
109     description\r
110       "10BASE-FP";\r
111   }\r
112   identity ieee8023-10BASE-T {\r
113     base ieee-8023-interface-type;\r
114     description\r
115       "10BASE-T";\r
116   }\r
117   identity ieee8023-10BASE-Te {\r
118     base ieee-8023-interface-type;\r
119     description\r
120       "10BASE-Te";\r
121   }\r
122   identity ieee8023-10BROAD36 {\r
123     base ieee-8023-interface-type;\r
124     description\r
125       "10BROAD36";\r
126   }\r
127   identity ieee8023-10PASS-TS {\r
128     base ieee-8023-interface-type;\r
129     description\r
130       "10PASS-TS";\r
131   }\r
132   identity ieee8023-100BASE-BX10 {\r
133     base ieee-8023-interface-type;\r
134     description\r
135       "100BASE-BX10";\r
136   }\r
137   identity ieee8023-100BASE-FX {\r
138     base ieee-8023-interface-type;\r
139     description\r
140       "100BASE-FX";\r
141   }\r
142   identity ieee8023-100BASE-LX10 {\r
143     base ieee-8023-interface-type;\r
144     description\r
145       "100BASE-LX10";\r
146   }\r
147   identity ieee8023-100BASE-T {\r
148     base ieee-8023-interface-type;\r
149     description\r
150       "100BASE-T";\r
151   }\r
152   identity ieee8023-100BASE-T2 {\r
153     base ieee-8023-interface-type;\r
154     description\r
155       "100BASE-T2";\r
156   }\r
157   identity ieee8023-100BASE-T4 {\r
158     base ieee-8023-interface-type;\r
159     description\r
160       "100BASE-T4";\r
161   }\r
162   identity ieee8023-100BASE-TX {\r
163     base ieee-8023-interface-type;\r
164     description\r
165       "100BASE-TX";\r
166   }\r
167   identity ieee8023-100BASE-X {\r
168     base ieee-8023-interface-type;\r
169     description\r
170       "100BASE-X";\r
171   }\r
172   identity ieee8023-1000BASE-BX10 {\r
173     base ieee-8023-interface-type;\r
174     description\r
175       "1000BASE-BX10";\r
176   }\r
177   identity ieee8023-1000BASE-CX {\r
178     base ieee-8023-interface-type;\r
179     description\r
180       "1000BASE-CX";\r
181   }\r
182   identity ieee8023-1000BASE-KX {\r
183     base ieee-8023-interface-type;\r
184     description\r
185       "1000BASE-KX";\r
186   }\r
187   identity ieee8023-1000BASE-LX {\r
188     base ieee-8023-interface-type;\r
189     description\r
190       "1000BASE-LX";\r
191   }\r
192   identity ieee8023-1000BASE-LX10 {\r
193     base ieee-8023-interface-type;\r
194     description\r
195       "1000BASE-LX10";\r
196   }\r
197   identity ieee8023-1000BASE-PX10 {\r
198     base ieee-8023-interface-type;\r
199     description\r
200       "1000BASE-PX10";\r
201   }\r
202   identity ieee8023-1000BASE-PX20 {\r
203     base ieee-8023-interface-type;\r
204     description\r
205       "1000BASE-PX20";\r
206   }\r
207   identity ieee8023-1000BASE-SX {\r
208     base ieee-8023-interface-type;\r
209     description\r
210       "1000BASE-SX";\r
211   }\r
212   identity ieee8023-1000BASE-T {\r
213     base ieee-8023-interface-type;\r
214     description\r
215       "1000BASE-T";\r
216   }\r
217   identity ieee8023-1000BASE-X {\r
218     base ieee-8023-interface-type;\r
219     description\r
220       "1000BASE-X";\r
221   }\r
222   identity ieee8023-10GBASE-CX4 {\r
223     base ieee-8023-interface-type;\r
224     description\r
225       "10GBASE-CX4";\r
226   }\r
227   identity ieee8023-10GBASE-E {\r
228     base ieee-8023-interface-type;\r
229     description\r
230       "10GBASE-E";\r
231   }\r
232   identity ieee8023-10GBASE-ER {\r
233     base ieee-8023-interface-type;\r
234     description\r
235       "10GBASE-ER";\r
236   }\r
237   identity ieee8023-10GBASE-EW {\r
238     base ieee-8023-interface-type;\r
239     description\r
240       "10GBASE-EW";\r
241   }\r
242   identity ieee8023-10GBASE-KR {\r
243     base ieee-8023-interface-type;\r
244     description\r
245       "10GBASE-KR";\r
246   }\r
247   identity ieee8023-10GBASE-KX4 {\r
248     base ieee-8023-interface-type;\r
249     description\r
250       "10GBASE-KX4";\r
251   }\r
252   identity ieee8023-10GBASE-L {\r
253     base ieee-8023-interface-type;\r
254     description\r
255       "10GBASE-L";\r
256   }\r
257   identity ieee8023-10GBASE-LR {\r
258     base ieee-8023-interface-type;\r
259     description\r
260       "10GBASE-LR";\r
261   }\r
262   identity ieee8023-10GBASE-LRM {\r
263     base ieee-8023-interface-type;\r
264     description\r
265       "10GBASE-LRM";\r
266   }\r
267   identity ieee8023-10GBASE-LW {\r
268     base ieee-8023-interface-type;\r
269     description\r
270       "10GBASE-LW";\r
271   }\r
272   identity ieee8023-10GBASE-LX4 {\r
273     base ieee-8023-interface-type;\r
274     description\r
275       "10GBASE-LX4";\r
276   }\r
277   identity ieee8023-10GBASE-PR {\r
278     base ieee-8023-interface-type;\r
279     description\r
280       "10GBASE-PR";\r
281   }\r
282   typedef identifier45 {\r
283     type string {\r
284       length "min..45";\r
285       pattern "[ -~]+";\r
286     }\r
287     description\r
288       "This type definition accepts any visible ASCII character " +\r
289       "plus the <space> character.The string must be an RFC 2579 " +\r
290       "Display String (RFC 854 ASCII 0.00-0.7f) but not contain " +\r
291       "the characters 0.00 through 0.1f. It does not accept " +\r
292       "the <delete> character (0.7f) despite the current MEF " +\r
293       "specification not disallowing it.";\r
294     reference "[MEF10.3] [R8], [R9]. [RFC2579]. [RFC854].";\r
295   }\r
296   typedef max-svc-frame-size-type {\r
297     type uint32 {\r
298       range "1522..16384";\r
299     }\r
300     units "bytes";\r
301     description\r
302       "Max Frame Size Type in bytes. Service Frames larger than " +\r
303       "this size will be discarded.";\r
304     reference "[MEF 10.3] Section 8.9 and Section 9.7.";\r
305   }\r
306   typedef retail-svc-id-type {\r
307     type uint32;\r
308     description\r
309       "General ID used by higher level applications that " +\r
310       "connect Subscribers information and SLA's with " +\r
311       "configured Ethernet Services.";\r
312     reference "[MEF10.3].";\r
313   }\r
314   typedef svc-provider-type {\r
315     type identifier45;\r
316     description\r
317       "Service Provider Type";\r
318     reference "[MEF10.3].";\r
319   }\r
320   typedef cen-type {\r
321     type identifier45;\r
322     description\r
323       "CEN Type";\r
324     reference "[MEF10.3].";\r
325   }\r
326   typedef subscriber-type {\r
327     type identifier45;\r
328     description\r
329       "Subscriber Type";\r
330     reference "[MEF10.3].";\r
331   }\r
332   typedef evc-id-type {\r
333     type identifier45;\r
334     description\r
335       "EVC ID Type";\r
336     reference "[MEF10.3].";\r
337   }\r
338   typedef simple-percent {\r
339     type decimal64 {\r
340       fraction-digits 2;\r
341       range "0.00 .. 100.00";\r
342     }\r
343     description "Percent.";\r
344   }\r
345   typedef vlan-id-type {\r
346     type uint32 {\r
347       range "1..4094";\r
348     }\r
349     description\r
350       "The VLAN-ID that uniquely identifies a VLAN.  This is the " +\r
351       "12-bit  VLAN-ID used in the VLAN Tag header. The range " +\r
352       "is defined by the REFERENCED specification. VLAN ID 0 is " +\r
353       "used for VLAN Unaware Mode.";\r
354     reference "IEEE Std 802.1Q 2003 Edition, Virtual Bridged " +\r
355             "Local Area Networks.";\r
356   }\r
357   typedef vlan-id-or-none-type {\r
358     type uint32 {\r
359       range "0..4094";\r
360     }\r
361     description\r
362       "The VLAN-ID that uniquely identifies a VLAN.  This is the " +\r
363       "12-bit VLAN-ID used in the VLAN Tag header. The range is " +\r
364       "defined by the REFERENCED specification. VLAN ID 0 is " +\r
365       "used for VLAN Unaware (ie. None) Mode";\r
366     reference "IEEE Std 802.1Q 2003 Edition, Virtual Bridged " +\r
367             "Local Area Networks.";\r
368   }\r
369   typedef vlan-id-or-all-type {\r
370     type uint32 {\r
371       range "1..4095";\r
372     }\r
373     description\r
374       "The VLAN-ID that uniquely identifies a VLAN.  This is the " +\r
375       "12-bit  VLAN-ID used in the VLAN Tag header. The range " +\r
376       "is defined by the REFERENCED specification. VLAN ID 4095 " +\r
377       "is used for VLAN Any Mode";\r
378     reference "IEEE Std 802.1Q 2003 Edition, Virtual Bridged " +\r
379             "Local Area Networks.";\r
380   }\r
381   typedef vlan-id-any-none-type {\r
382     type uint32 {\r
383       range "0..4095";\r
384     }\r
385     description\r
386       "The VLAN-ID that uniquely identifies a VLAN.  This is the " +\r
387       "12-bit VLAN-ID used in the VLAN Tag header. The range " +\r
388       "is defined by the REFERENCED specification. This " +\r
389       "typedef is for use with Operational Status information " +\r
390       "where VLAN ID 0 may be used for VLAN Unaware Mode and " +\r
391       "use of 4095 is Reserved / None.";\r
392     reference "IEEE Std 802.1Q 2003 Edition, Virtual Bridged " +\r
393             "Local Area Networks.";\r
394   }\r
395   typedef ieee-8021-priority {\r
396     type uint8 {\r
397       range "0..7";\r
398     }\r
399     description\r
400       "An 802.1Q user priority value.";\r
401     reference "IEEE 802.1Q";\r
402   }\r
403   typedef entity-admin-state-type {\r
404     type enumeration {\r
405       enum "unknown" {\r
406         description\r
407           "Unknown";\r
408       }\r
409       enum "locked" {\r
410         description\r
411           "Locked";\r
412       }\r
413       enum "shutting-down" {\r
414         description\r
415           "Shutting Down";\r
416       }\r
417       enum "unlocked" {\r
418         description\r
419           "Unlocked";\r
420       }\r
421     }\r
422     description\r
423       "Represents the various possible administrative states. " +\r
424       "A value of 'locked' means the resource is " +\r
425       "administratively prohibited from use.  A value of " +\r
426       "'shuttingDown' means that usage is administratively " +\r
427       "limited to current instances of use.A value of " +\r
428       "'unlocked' means the resource is not administratively " +\r
429       "prohibited from use.A value of 'unknown' means that " +\r
430       "this resource is unable to report administrative state.";\r
431     reference "ENTITY-STATE-TC-MIB";\r
432   }\r
433   typedef performance-metric-type {\r
434     type enumeration {\r
435       enum "one-way-frame-delay-performance" {\r
436         description\r
437           "One-way Frame Delay Performance.";\r
438       }\r
439       enum "one-way-frame-delay-range-performance" {\r
440         description\r
441           "One-way Frame Delay Range Performance.";\r
442       }\r
443       enum "one-way-mean-frame-delay-performance" {\r
444         description\r
445           "One-way Mean Frame Delay Performance.";\r
446       }\r
447       enum "one-way-inter-frame-delay-variation-performance" {\r
448         description\r
449           "One-way Inter-Frame Delay Variation Performance.";\r
450       }\r
451       enum "one-way-frame-loss-ratio-performance" {\r
452         description\r
453           "One-way Frame Loss Ratio Performance.";\r
454       }\r
455       enum "one-way-availability-performance" {\r
456         description\r
457           "One-way Availability Performance.";\r
458       }\r
459       enum "one-way-resiliency-performance-hli" {\r
460         description\r
461           "One-way Resiliency Performance expressed as High " +\r
462           "Loss Intervals.";\r
463       }\r
464       enum "one-way-resiliency-performance-chli" {\r
465         description\r
466           "One-way Resiliency Performance expressed as " +\r
467           "Consecutive High Loss Intervals.";\r
468       }\r
469       enum "one-way-group-availability-performance" {\r
470         description\r
471           "One-way Group Availability Performance.";\r
472       }\r
473       enum "one-way-multiple-evc-group-availability-performance" {\r
474         description\r
475           "One-way Multiple EVC Group Availability Performance.";\r
476       }\r
477     }\r
478     description\r
479       "Performance Metrics.";\r
480     reference "[MEF10.3] Section 8.8 and Section 11.";\r
481   }\r
482   typedef evc-type {\r
483     type enumeration {\r
484       enum "point-to-point" {\r
485         description\r
486           "Point to Point.";\r
487       }\r
488       enum "multipoint-to-multipoint" {\r
489         description\r
490           "Multipoint to Multipoint.";\r
491       }\r
492       enum "rooted-multipoint" {\r
493         description\r
494           "Rooted Multipoint.";\r
495       }\r
496     }\r
497     description\r
498       "EVC Type";\r
499     reference "[MEF10.3] Section 8.1.";\r
500   }\r
501   typedef evc-status-type {\r
502     type enumeration {\r
503       enum "new" {\r
504         description\r
505           "New.";\r
506       }\r
507       enum "active" {\r
508         description\r
509           "Active.";\r
510       }\r
511       enum "inactive" {\r
512         description\r
513           "Inactive (Not Active).";\r
514       }\r
515       enum "partially-active" {\r
516         description\r
517           "PartiallyActive.";\r
518       }\r
519     }\r
520     description\r
521       "EVC Status Type";\r
522     reference "[MEF16] Section 5.3.";\r
523   }\r
524   typedef evc-uni-role-type {\r
525     type enumeration {\r
526       enum "root" {\r
527         description\r
528           "Root Role for UNI. Valid setting for all service " +\r
529           "types. A UNI set to this value may send frames " +\r
530           "to UNIs configured as 'root' or 'leaf'.";\r
531       }\r
532       enum "leaf" {\r
533         description\r
534           "Leaf Role for UNI. Valid setting for Root-Multipoint " +\r
535           "EVCs only. A UNI set to this value may send frames " +\r
536           "to UNIs 'root'.";\r
537       }\r
538     }\r
539     description\r
540       "This object configures UNI type on an EVC.";\r
541     reference "[MEF10.3] Section 8.1.2.1.";\r
542   }\r
543   typedef data-svc-frame-delivery-type {\r
544     type enumeration {\r
545       enum "discard" {\r
546         description\r
547           "Service Frames are discarded.";\r
548       }\r
549       enum "unconditional" {\r
550         description\r
551           "Service Frames are unconditionally\r
552            delivered no matter the content of the\r
553            Service Frame. An example of this is\r
554            a Point-to-Point EVC";\r
555       }\r
556       enum "conditional" {\r
557         description\r
558           "Service Frame are conditionally\r
559            delivered to the destination UNI. The\r
560            condition is specified, for example via a\r
561            bandwidth profile or unicast MAC address\r
562            learning.";\r
563       }\r
564     }\r
565     description\r
566       "A MEF service can have one of three different " +\r
567       "delivery types.";\r
568   }\r
569   typedef uni-resiliency-type {\r
570     type enumeration {\r
571       enum "none" {\r
572         description\r
573           "No protection mechanism defined.";\r
574       }\r
575       enum "dual-link-aggregation" {\r
576         description\r
577           "Protection mechanism is Link Aggreg-\r
578            ation as specified in [802.3], with one link in\r
579            active mode and one link in standby mode.";\r
580       }\r
581       enum "other" {\r
582         description\r
583           "Protection method defined that is not\r
584            Link Aggregation active/standby mode.";\r
585       }\r
586     }\r
587     description\r
588       "This object type of resiliency mechanism for a " +\r
589       "specific UNI.";\r
590   }\r
591   typedef svc-frame-format-type {\r
592     type enumeration {\r
593       enum "no-tag" {\r
594         description\r
595           "No-tag indicates that all data on the interface is " +\r
596           "as untagged data.";\r
597       }\r
598       enum "ctag" {\r
599         description\r
600           "Ctag indicates that tagged data is associated with " +\r
601           "CE-VLAN ID or a C-TAG.";\r
602       }\r
603       enum "stag" {\r
604         description\r
605           "Stag indicates that tagged data is associated with " +\r
606           "a provider tag or S-TAG.";\r
607       }\r
608       enum "stag-ctag" {\r
609         description\r
610           "Stag-ctag indicates that service traffic identified " +\r
611           "with both an S-TAG (outer tag) and a C-TAG (inner tag).";\r
612       }\r
613     }\r
614     description\r
615       "The format must be that of a MAC Frame specified in " +\r
616       "IEEE Std 802.3-2012 Clause 3.";\r
617     reference "[MEF10.3] Section 9.6. [MEF15]. [MEF7.2]. " +\r
618             "[MEF7.3] Section 10.1.1. MEF-UNI-EVC-MIB.yang.";\r
619   }\r
620   typedef uni-mode-type {\r
621     type enumeration {\r
622       enum "uni" {\r
623         description\r
624           "UNI Mode.";\r
625       }\r
626       enum "vuni" {\r
627         description\r
628           "VUNI Mode.";\r
629       }\r
630     }\r
631     description\r
632       "This setting is used to configure a UNI as either a " +\r
633       "UNI or a VUNI";\r
634     reference "[MEF7.3] Section 10.2.2.";\r
635   }\r
636   typedef evc-cos-identifier-type {\r
637     type enumeration {\r
638       enum "evc" {\r
639         description\r
640           "The EVC ID, depends on the CE-VLAN ID / EVC Mapping " +\r
641           "at the UNI, will be used to map Service Frames to " +\r
642           "CoS Names/Labels.";\r
643         reference "MEF 10.3 Section 10.2.1.1 for " +\r
644                 "Data Service Frames.";\r
645       }\r
646       enum "pcp" {\r
647         description\r
648           "The Priority Code Point(PCP) value within the " +\r
649           "CE-VLAN Tag will be used to map Service Frames " +\r
650           "to CoS Names/Labels.";\r
651         reference "MEF 10.3 Section 10.2.1.2: Priority Code " +\r
652                 "Point (PCP) Field in the Customer VLAN Tag " +\r
653                 "in a Tagged Service Frame. ";\r
654       }\r
655       enum "dscp" {\r
656         description\r
657           "The Differentiated Services Code Point(DSCP) value " +\r
658           "from the IP Packet's IP Header Differentiated " +\r
659           "Services Group, associated with the Service Frame, " +\r
660           "will be used to map Service Frames to CoS Names/Labels.";\r
661         reference "MEF 10.3 Section 10.2.1.3: AKA Internet " +\r
662                 "Protocol. For a Data Service Frame carrying an " +\r
663                 "IPv4 or and IPv6 packet.";\r
664       }\r
665     }\r
666     description\r
667       "[MEF10.3] Section 10.2.1.";\r
668   }\r
669   typedef evc-eec-identifier-type {\r
670     type enumeration {\r
671       enum "pcp" {\r
672         description\r
673           "The Priority Code Point(PCP) value within the " +\r
674           "CE-VLAN Tag will be used to map Service Frames " +\r
675           "to CoS Names/Labels.";\r
676         reference "MEF 10.3 Section 10.2.1.2: Priority Code " +\r
677                 "Point (PCP) Field in the Customer VLAN Tag " +\r
678                 "in a Tagged Service Frame.";\r
679       }\r
680       enum "dscp" {\r
681         description\r
682           "The Differentiated Services Code Point(DSCP) value " +\r
683           "from the IP Packet's IP Header Differentiated " +\r
684           "Services Group, associated with the Service Frame, " +\r
685           "will be used to map Service Frames to CoS Names/Labels.";\r
686         reference "MEF 10.3 Section 10.2.1.3: AKA Internet " +\r
687                 "Protocol. For a Data Service Frame carrying " +\r
688                 "an IPv4 or and IPv6 packet.";\r
689       }\r
690     }\r
691     description\r
692       "[MEF10.3] Section 10.2.1.";\r
693   }\r
694   typedef cos-color-identifier-type {\r
695     type enumeration {\r
696       enum "evc" {\r
697         description\r
698           "The EVC ID, depends on the CE-VLAN ID / EVC Mapping " +\r
699           "at the UNI, will be used to map Service Frames to " +\r
700           "CoS Names/Labels.";\r
701         reference "MEF 10.3 Section 10.2.1.1 for Data " +\r
702                 "Service Frames.";\r
703       }\r
704       enum "pcp" {\r
705         description\r
706           "The Priority Code Point(PCP) value within the " +\r
707           "CE-VLAN Tag will be used to map Service Frames " +\r
708           "to CoS Names/Labels.";\r
709         reference "MEF 10.3 Section 10.2.1.2: Priority Code " +\r
710                 "Point (PCP) Field in the Customer VLAN Tag " +\r
711                 "in a Tagged Service Frame. ";\r
712       }\r
713       enum "dei" {\r
714         description\r
715           "Drop Eligible Indicator(DEI) field of the CE-VLAN Tag.";\r
716       }\r
717       enum "dscp" {\r
718         description\r
719           "The Differentiated Services Code Point(DSCP) value " +\r
720           "from the IP Packet's IP Header Differentiated " +\r
721           "Services Group, associated with the Service " +\r
722           "Frame, will be used to map Service Frames to " +\r
723           "CoS Names/Labels.";\r
724         reference "MEF 10.3 Section 10.2.1.3: AKA Internet " +\r
725                 "Protocol. For a Data Service Frame carrying " +\r
726                 "an IPv4 or and IPv6 packet.";\r
727       }\r
728     }\r
729     description\r
730       "CoS Color Identification Type.";\r
731     reference "[MEF23.1].";\r
732   }\r
733   typedef cos-color-type {\r
734     type enumeration {\r
735       enum "green" {\r
736         description\r
737           "Green.";\r
738       }\r
739       enum "yellow" {\r
740         description\r
741           "Yellow.";\r
742       }\r
743     }\r
744     description\r
745       "CoS Color.";\r
746     reference "[MEF23.1].";\r
747   }\r
748   typedef bwp-cir-type {\r
749     type uint32;\r
750     description\r
751       "Bandwidth Profile Committed Information Rate in " +\r
752       "Kilobits Per Second.";\r
753     reference "[MEF10.3] [R143], [R144].";\r
754   }\r
755   typedef bwp-cbs-type {\r
756     type uint32;\r
757     description\r
758       "Bandwidth Profile Committed Burst Size in Bytes.";\r
759     reference "[MEF10.3] [R145].";\r
760   }\r
761   typedef bwp-eir-type {\r
762     type uint32;\r
763     description\r
764       "Bandwidth Profile Excess Information Rate in " +\r
765       "Kilobits Per Second.";\r
766     reference "[MEF10.3] [R146], [R147].";\r
767   }\r
768   typedef bwp-ebs-type {\r
769     type uint32 {\r
770       range "0 .. 10000000";\r
771     }\r
772     description\r
773       "Excess Burst Size (EBS) in bytes: This parameter limits " +\r
774       "the maximum number of bytes available for a burst " +\r
775       "of Service Frames sent at the UNI line rate that " +\r
776       "will be declared Yellow by the Bandwidth Profile. " +\r
777       "If this value is 0, then no limit is assumed.";\r
778     reference "[MEF10.3] [R146], [R147].";\r
779   }\r
780   typedef elmi-polling-counter-type {\r
781     type uint16 {\r
782       range "1 .. max";\r
783     }\r
784     description\r
785       "ELMI Polling Counter.";\r
786     reference "[MEF16] Section 5.6.1.";\r
787   }\r
788   typedef elmi-status-error-threshold-type {\r
789     type uint8 {\r
790       range "2 .. 10";\r
791     }\r
792     description\r
793       "The count of consecutive ELMI status polling errors " +\r
794       "before raising an error.";\r
795     reference "[MEF16] Section 5.6.1.";\r
796   }\r
797   typedef elmi-polling-timer-type {\r
798     type uint8 {\r
799       range "5 .. 30";\r
800     }\r
801     description\r
802       "The type used for a timer started after tranmitting " +\r
803       "a Status Enquiry. If the timer expires, record " +\r
804       "the error if a STATUS message not received and " +\r
805       "resend Status Enquiry.";\r
806     reference "[MEF16] Section 5.6.1.";\r
807   }\r
808   typedef elmi-polling-verification-timer-type {\r
809     type uint8 {\r
810       range "5 .. 30";\r
811     }\r
812     description\r
813       "The type used for a timer started after tranmitting " +\r
814       "a Status Message. If a Status Enquiry is recieved before " +\r
815       "this timer expires, record the error.";\r
816     reference "[MEF16] Section 5.6.1.";\r
817   }\r
818   typedef bwp-color-mode-type {\r
819     type enumeration {\r
820       enum "color-blind" {\r
821         description\r
822           "Color Blind. Do not use CoS Color Configuration for " +\r
823           "this Bandwidth Profile.";\r
824       }\r
825       enum "color-aware" {\r
826         description\r
827           "Color Aware. Use CoS Color Configuration for this " +\r
828           "Bandwidth Profile.";\r
829       }\r
830     }\r
831     description\r
832       "This attribute describes the color mode (CM) to be " +\r
833       "applied as \"color-blind mode\" or \"color-aware mode\".";\r
834     reference "[MEF10.3] Section 10.3, [R151].";\r
835   }\r
836   typedef bwp-coupling-flag-type {\r
837     type enumeration {\r
838       enum "yellow-eir-only" {\r
839         description\r
840           "When CF is set to \"yellow-eir-only\", the volume of " +\r
841           "the yellow service frames admitted to the network " +\r
842           "cannot exceed EIR.";\r
843       }\r
844       enum "yellow-eir-plus-cir" {\r
845         description\r
846           "When CF is set to \"yellow-eir-plus-cir\", the " +\r
847           "volume of the yellow service frames admitted to " +\r
848           "the network is bounded by CIR + EIR depending on " +\r
849           "volume of the offered green Service Frames.";\r
850       }\r
851     }\r
852     description\r
853       "The Bandwidth Profile parameter that determines whether " +\r
854       "or not overflow tokens not used for Service Frames " +\r
855       "declared Green can be used as Yellow tokens.";\r
856     reference "[MEF10.3] Section 12.1. [MEF23.1] Section 8.1.";\r
857   }\r
858   typedef auto-negotiation-type {\r
859     type enumeration {\r
860       enum "on" {\r
861         description\r
862           "Phy Auto-negotiation Enabled.";\r
863       }\r
864       enum "off" {\r
865         description\r
866           "Phy Auto-negotiation Disabled.";\r
867       }\r
868     }\r
869     description\r
870       "Phy Auto-negotiation Enabled/Disabled.";\r
871     reference "[MEF20].";\r
872   }\r
873   typedef service-entity-type {\r
874     type enumeration {\r
875       enum "evc" {\r
876         description\r
877           "EVC.";\r
878       }\r
879       enum "tunnel-1" {\r
880         description\r
881           "Tunnel Type 1.";\r
882       }\r
883       enum "tunnel-2" {\r
884         description\r
885           "Tunnel Type 2.";\r
886       }\r
887       enum "ovc" {\r
888         description\r
889           "OVC.";\r
890       }\r
891     }\r
892     description\r
893       "MEF Service Entity Type.";\r
894     reference "[MEF12.2] Section 7.3, Table 3.";\r
895   }\r
896   typedef l2cp-handling-type {\r
897     type enumeration {\r
898       enum "discard" {\r
899         description\r
900           "Discard - An action taken at a L2CP Decision Point " +\r
901           "where a L2CP frame is neither delivered to a protocol " +\r
902           "entity, nor delivered to the External Interface " +\r
903           "where the L2CP Decision Point is located, nor " +\r
904           "propagated to L2CP Decision Points at other " +\r
905           "External Interfaces.";\r
906       }\r
907       enum "pass" {\r
908         description\r
909           "Pass(Tunnel) - An action taken at a L2CP Decision " +\r
910           "Point where a L2CP frame is either delivered to " +\r
911           "the External Interface where the L2CP Decision Point " +\r
912           "is located, or propagated to the L2CP Decision " +\r
913           "Points located at all other External Interfaces " +\r
914           "associated by the EVC or OVC.";\r
915       }\r
916       enum "peer" {\r
917         description\r
918           "Peer - An action taken at a L2CP Decision Point " +\r
919           "where a L2CP frame is delivered to a protocol " +\r
920           "entity determined by the Protocol Identifier " +\r
921           "in the L2CP Frame.";\r
922       }\r
923     }\r
924     description\r
925       "L2CP Service Frame handling option.";\r
926     reference "[MEF45] Table 8.";\r
927   }\r
928   typedef l2cp-address-set-type {\r
929     type enumeration {\r
930       enum "aware-cta" {\r
931         description\r
932           "C-VLAN Tag Aware (CTA), for VLAN-based services where" +\r
933           " the CE-VLAN ID is used to map a frame to a service.";\r
934       }\r
935       enum "blind-ctb" {\r
936         description\r
937           "C-VLAN Tag Blind (CTB), for Port-based services where " +\r
938           "the CE-VLAN ID is not used to map a frame to a service.";\r
939       }\r
940       enum "option2-blind-ctb2" {\r
941         description\r
942           "C-VLAN Tag Blind Option 2 (CTB-2), for point-to-point " +\r
943           "Port-based services that support the EPL Option 2 " +\r
944           "L2CP processing.";\r
945       }\r
946     }\r
947     description\r
948       "The L2CP Address Set Service Attribute specifies the " +\r
949       "subset of the Bridge Reserved Addresses that are " +\r
950       "filtered (i.e. L2CP Frames with this destination " +\r
951       "address are Peered or Discarded but not Passed) " +\r
952       "at a L2CP Decision Point.";\r
953     reference "[MEF10.3] Section 9.19. [MEF45] Section 8.1, " +\r
954             "[R2] through [R9]. [MEF6.2] Section 8.2.2, [R1]. " +\r
955             "[MEF45] Section 8.1.";\r
956   }\r
957   typedef l2cp-peering-protocol-type {\r
958     type enumeration {\r
959       enum "ethertype" {\r
960         description\r
961           "Ethertype.";\r
962       }\r
963       enum "llc" {\r
964         description\r
965           "LLC.";\r
966       }\r
967       enum "other" {\r
968         description\r
969           "Other: Not using LLC nor Ethertype to specify " +\r
970           "the Protocol ID.";\r
971       }\r
972     }\r
973     description\r
974       "The Peering Protocol Identifier is one of Ethertype, " +\r
975       "LLC, or Other.";\r
976     reference "[MEF45] Section 7.";\r
977   }\r
978   typedef ieee8021p-priority-type {\r
979     type uint8 {\r
980       range "0 .. 7";\r
981     }\r
982     description\r
983       "IEEE 802.1p VLAN Header Class of Service field. Used for " +\r
984       "Priority Code Point(PCP) configurations.";\r
985     reference "[MEF10.3] Section 10.2.1.";\r
986   }\r
987   typedef mef-service-type {\r
988     type enumeration {\r
989       enum "epl" {\r
990         description\r
991           "Ethernet Private Line Service (EPL) Point-to-Point " +\r
992           "EVC, all to one bundling";\r
993       }\r
994       enum "evpl" {\r
995         description\r
996           "Ethernet Virtual Private Line (EVPL) Point-to-Point " +\r
997           "EVC, bundling and/or multiplexing";\r
998       }\r
999       enum "eplan" {\r
1000         description\r
1001           "Ethernet Private LAN Service (EP-LAN) " +\r
1002           "Multipoint-to-Multipoint EVC, all to one bundling";\r
1003       }\r
1004       enum "evplan" {\r
1005         description\r
1006           "Ethernet Virtual Private LAN Service (EVP-LAN) " +\r
1007           "Multipoint-to-Multipoint EVC, bundling and/or " +\r
1008           "multiplexing";\r
1009       }\r
1010       enum "eptree" {\r
1011         description\r
1012           "Ethernet Private Tree Service (EP-Tree) " +\r
1013           "Rooted-Multipoint EVC, all to one bundling";\r
1014       }\r
1015       enum "evptree" {\r
1016         description\r
1017           "Ethernet Virtual Private Tree Service (EVP-Tree) " +\r
1018           "Rooted-Multipoint EVC, bundling and/or multiplexing";\r
1019       }\r
1020     }\r
1021     description\r
1022       "This object indicates the specific Ethernet service type.";\r
1023   }\r
1024   typedef ext-if-availability-type {\r
1025     type enumeration {\r
1026       enum "in-test" {\r
1027         description\r
1028           "In-test is equivalent to the IETF RFC 2883 " +\r
1029           "ifOperStatus 'testing' state.";\r
1030       }\r
1031       enum "failed" {\r
1032         description\r
1033           "Failed is to be interpretted along with " +\r
1034           "Operational State.";\r
1035       }\r
1036       enum "power-off" {\r
1037         description\r
1038           "Power-off indicates the phy is down.";\r
1039       }\r
1040       enum "degraded" {\r
1041         description\r
1042           "Degraded is to be interpretted along with " +\r
1043           "Operational State..";\r
1044       }\r
1045       enum "not-installed" {\r
1046         description\r
1047           "Not-installed is equivalent to the " +\r
1048           "IETF RFC 2883 ifOperStatus 'notPresent' state.";\r
1049       }\r
1050     }\r
1051     description\r
1052       "Availability of the Physical Interface. The " +\r
1053       "availability status type indicates that the Phy " +\r
1054       "is functioning properly.  May  be  mapped  to  " +\r
1055       "RFC  2863,  The Interfaces  Group  MIB  " +\r
1056       "IfOperstatus. Values for availability status " +\r
1057       "include: inTest, failed, powerOff, degraded, " +\r
1058       "notInstalled.";\r
1059     reference "[ITU-T X.731]. [MEF7.3] Section 10.1.1, " +\r
1060             "[MEF15], [MEF7.2] Appendix II.";\r
1061   }\r
1062   typedef virt-cx-availability-type {\r
1063     type enumeration {\r
1064         enum "in-test" {\r
1065             description\r
1066               "In-test is equivalent to the " +\r
1067               "IETF RFC 2883 ifOperStatus 'testing' state.";\r
1068           }\r
1069           enum "failed" {\r
1070             description\r
1071               "Failed is to be interpretted along " +\r
1072               "with Operational State.";\r
1073           }\r
1074           enum "degraded" {\r
1075             description\r
1076               "Degraded is to be interpretted along " +\r
1077               "with Operational State..";\r
1078           }\r
1079           enum "not-installed" {\r
1080             description\r
1081               "Not-installed is equivalent to the " +\r
1082               "IETF RFC 2883 ifOperStatus 'notPresent' state.";\r
1083           }\r
1084     }\r
1085     description\r
1086     "Availability of the Virtual Connection. The " +\r
1087     "availability status type indicates that the " +\r
1088     "Virtual Connection is functioning properly. " +\r
1089     "May be mapped to RFC 2863, The Interfaces Group MIB " +\r
1090     "IfOperstatus. Values for availability status include: inTest," +\r
1091     " failed, powerOff, degraded, notInstalled.";\r
1092     reference "[ITU-T X.731]. [MEF7.3] Section 10.1.1, " +\r
1093             "[MEF15], [MEF7.2] Appendix II.";\r
1094   }\r
1095   typedef svc-endpoint-availability-type {\r
1096     type enumeration {\r
1097         enum "in-test" {\r
1098             description\r
1099               "In-test is equivalent to the " +\r
1100               "IETF RFC 2883 ifOperStatus 'testing' state.";\r
1101           }\r
1102           enum "failed" {\r
1103             description\r
1104               "Failed is to be interpretted along " +\r
1105               "with Operational State.";\r
1106           }\r
1107           enum "degraded" {\r
1108             description\r
1109               "Degraded is to be interpretted along " +\r
1110               "with Operational State..";\r
1111           }\r
1112           enum "not-installed" {\r
1113             description\r
1114               "Not-installed is equivalent to the " +\r
1115               "IETF RFC 2883 ifOperStatus 'notPresent' state.";\r
1116           }\r
1117     }\r
1118     description\r
1119     "Availability of the Service Endpoint. The " +\r
1120     "availability status type indicates that the " +\r
1121     "Service Endpoint is functioning properly. " +\r
1122     "May be mapped to RFC 2863. The Interfaces Group MIB " +\r
1123     "IfOperstatus. Values for availability status include: " +\r
1124     "inTest, failed, powerOff, degraded, notInstalled.";\r
1125     reference "[ITU-T X.731]. [MEF7.3] Section 10.1.1, " +\r
1126             "[MEF15], [MEF7.2] Appendix II.";\r
1127   }\r
1128   typedef ext-if-physical-layer-type {\r
1129     type enumeration {\r
1130       enum "10M" {\r
1131         description\r
1132           "10M bits-per-second.";\r
1133       }\r
1134       enum "100M" {\r
1135         description\r
1136           "100M bits-per-second.";\r
1137       }\r
1138       enum "1G" {\r
1139         description\r
1140           "1G bits-per-second.";\r
1141       }\r
1142       enum "10G" {\r
1143         description\r
1144           "10G bits-per-second.";\r
1145       }\r
1146       enum "40G" {\r
1147         description\r
1148           "40G bits-per-second.";\r
1149       }\r
1150       enum "100G" {\r
1151         description\r
1152           "100G bits-per-second.";\r
1153       }\r
1154     }\r
1155     description\r
1156       "The maximum theoretical bandwidth for the phy.";\r
1157     reference "MEF 7.3 Section 10.1.1, MEF 6.2, MEF 10.3, MEF 26.1";\r
1158   }\r
1159   typedef device-role {\r
1160     type enumeration {\r
1161       enum "ce" {\r
1162         description "Customer Edge(CE) Access Device";\r
1163       }\r
1164       enum "pe" {\r
1165         description "Aggregation Router";\r
1166       }\r
1167       enum "p" {\r
1168         description "Core Router";\r
1169       }\r
1170      } \r
1171   } \r
1172 }