blob: 367220372e4fa1725a1a2372ec343a60c1bca9f9 [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
Scott Baker75ff25b2021-10-27 18:46:23 -070025 typedef burst {
26 type uint32 {
27 }
28 default 625000;
29 }
30
Scott Bakerc9d3d842021-09-17 11:32:53 -070031 typedef mcc {
32 type string {
33 pattern '[0-9]{3}';
34 }
35 }
36
37 typedef mnc {
38 type string {
39 pattern '[0-9]{2,3}';
40 }
41 }
42
43 typedef tac {
44 type string {
45 length 4..8;
46 pattern '[0-9A-F\.]*';
47 }
48 }
49
50 typedef ent {
51 type uint32 {
52 range 0..999;
53 }
54 }
55
56 typedef dnn {
57 type string {
58 length 1..32;
59 }
60 }
61
62 typedef sst {
63 type uint8 {
64 range 1..255;
65 }
66 }
67
68 typedef sd {
69 type uint32 {
70 range 0..16777215;
71 }
72 }
73
74 typedef qci {
75 type uint8 {
76 range 1..32;
77 }
78 }
79
80 typedef arp {
81 type uint8 {
82 range 1..15;
83 }
84 }
85
86 typedef pelr {
87 type int8 {
88 range 0..10;
89 }
90 }
91
92 typedef pdb {
93 type uint16 {
94 range 0..1000;
95 }
Scott Baker36c96142021-10-19 14:13:30 -070096 }
97
98 typedef priority {
99 type uint8 {
100 // priorities 201-255 are reserved for system use
101 range 0..200;
102 }
103 }
Scott Bakerc9d3d842021-09-17 11:32:53 -0700104
105 // "TCP" or "UDP"
106 typedef protocol {
107 type string {
108 length 3;
109 pattern "TCP|UDP";
110 }
111 default "TCP";
112 }
113
114 // "ENABLE" | "MAINTENTANCE" | "DISABLE"
115 typedef admin-status {
116 type string {
117 length 0..16;
118 pattern "ENABLE|MAINTENANCE|DISABLE";
119 }
120 default "ENABLE";
Scott Baker36c96142021-10-19 14:13:30 -0700121 }
122
123 typedef behavior {
124 type string {
125 length 0..20;
126 pattern "DENY-ALL|ALLOW-ALL|ALLOW-PUBLIC";
127 }
128 }
Scott Bakerc9d3d842021-09-17 11:32:53 -0700129
130 typedef mtu {
131 type inet:port-number;
132 default 1492;
133 }
134
135 typedef description {
136 type string {
137 length 1..1024;
138 }
139 }
140}