blob: bbf3a5ed0d8d134f3786a4e728da5d4ef4676cb1 [file] [log] [blame]
Scott Bakerc9d3d842021-09-17 11:32:53 -07001// SPDX-FileCopyrightText: 2021 Open Networking Foundation
2//
3// SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
4
5module onf-aether-types {
6 namespace "http://opennetworking.org/aether/aether-types";
7 prefix at;
8
9 import ietf-inet-types { prefix inet; }
10
11 organization "Open Networking Foundation.";
12 contact "Scott Baker";
13 description "A set of base types for aether modeling.";
14
15 revision "2021-09-10" {
16 description "Aether Base Types";
17 reference "RFC 6087";
18 }
19
20 typedef bitrate {
21 type uint64 {
22 }
23 }
24
25 typedef mcc {
26 type string {
27 pattern '[0-9]{3}';
28 }
29 }
30
31 typedef mnc {
32 type string {
33 pattern '[0-9]{2,3}';
34 }
35 }
36
37 typedef tac {
38 type string {
39 length 4..8;
40 pattern '[0-9A-F\.]*';
41 }
42 }
43
44 typedef ent {
45 type uint32 {
46 range 0..999;
47 }
48 }
49
50 typedef dnn {
51 type string {
52 length 1..32;
53 }
54 }
55
56 typedef sst {
57 type uint8 {
58 range 1..255;
59 }
60 }
61
62 typedef sd {
63 type uint32 {
64 range 0..16777215;
65 }
66 }
67
68 typedef qci {
69 type uint8 {
70 range 1..32;
71 }
72 }
73
74 typedef arp {
75 type uint8 {
76 range 1..15;
77 }
78 }
79
80 typedef pelr {
81 type int8 {
82 range 0..10;
83 }
84 }
85
86 typedef pdb {
87 type uint16 {
88 range 0..1000;
89 }
Scott Baker36c96142021-10-19 14:13:30 -070090 }
91
92 typedef priority {
93 type uint8 {
94 // priorities 201-255 are reserved for system use
95 range 0..200;
96 }
97 }
Scott Bakerc9d3d842021-09-17 11:32:53 -070098
99 // "TCP" or "UDP"
100 typedef protocol {
101 type string {
102 length 3;
103 pattern "TCP|UDP";
104 }
105 default "TCP";
106 }
107
108 // "ENABLE" | "MAINTENTANCE" | "DISABLE"
109 typedef admin-status {
110 type string {
111 length 0..16;
112 pattern "ENABLE|MAINTENANCE|DISABLE";
113 }
114 default "ENABLE";
Scott Baker36c96142021-10-19 14:13:30 -0700115 }
116
117 typedef behavior {
118 type string {
119 length 0..20;
120 pattern "DENY-ALL|ALLOW-ALL|ALLOW-PUBLIC";
121 }
122 }
Scott Bakerc9d3d842021-09-17 11:32:53 -0700123
124 typedef mtu {
125 type inet:port-number;
126 default 1492;
127 }
128
129 typedef description {
130 type string {
131 length 1..1024;
132 }
133 }
134}