AETHER-2874 Bootstrap Aether-2.x models

Change-Id: Ia987596109584df696aaa57703f9148075569422
diff --git a/config-models/aether-2.0.x/files/yang/onf-aether-types.yang b/config-models/aether-2.0.x/files/yang/onf-aether-types.yang
new file mode 100755
index 0000000..679648e
--- /dev/null
+++ b/config-models/aether-2.0.x/files/yang/onf-aether-types.yang
@@ -0,0 +1,159 @@
+// SPDX-FileCopyrightText: 2021 Open Networking Foundation
+//
+// SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+
+module onf-aether-types {
+  namespace "http://opennetworking.org/aether/aether-types";
+  prefix at;
+
+  import ietf-inet-types { prefix inet; }
+
+  organization "Open Networking Foundation.";
+  contact "Scott Baker";
+  description "A set of base types for aether modeling.";
+
+  revision "2021-09-10" {
+    description "Aether Base Types";
+    reference "RFC 6087";
+  }
+
+  typedef bitrate {
+      type uint64 {
+      }
+    description "The typedef for bitrate";
+  }
+
+  typedef burst {
+      type uint32 {
+      }
+      default 625000;
+    description "The typedef for burst";
+  }
+
+  typedef mcc {
+      type string {
+        pattern '[0-9]{3}';
+      }
+    description "The typedef for mcc";
+  }
+
+  typedef mnc {
+      type string {
+        pattern '[0-9]{2,3}';
+      }
+    description "The typedef for mnc";
+  }
+
+  typedef tac {
+      type string {
+        length 4..8;
+        pattern '[0-9A-F\.]*';
+      }
+    description "The typedef for tac";
+  }
+
+  typedef ent {
+      type uint32 {
+        range 0..999;
+      }
+    description "The typedef for ent";
+  }
+
+  typedef dnn {
+      type string {
+        length 1..32;
+      }
+    description "The typedef for dnn";
+  }
+
+  typedef sst {
+      type uint8 {
+        range 1..255;
+      }
+    description "The typedef for sst";
+  }
+
+  typedef sd {
+      type uint32 {
+        range 0..16777215;
+      }
+    description "The typedef for sd";
+  }
+
+  typedef qci {
+      type uint8 {
+        range 1..32;
+      }
+    description "The typedef for qci";
+  }
+
+  typedef arp {
+      type uint8 {
+        range 1..15;
+      }
+    description "The typedef for arp";
+  }
+
+  typedef pelr {
+      type int8 {
+        range 0..10;
+      }
+    description "The typedef for pelr";
+  }
+
+  typedef pdb {
+      type uint16 {
+        range 0..1000;
+      }
+    description "The typedef for pdb";
+  }
+
+  typedef priority {
+    type uint8 {
+      // priorities 201-255 are reserved for system use
+      range 0..200;
+    }
+    description "The typedef for priority";
+  }
+
+  // "TCP" or "UDP"
+  typedef protocol {
+      type string {
+        length 3;
+        pattern "TCP|UDP";
+      }
+      default "TCP";
+    description "The typedef for protocol";
+  }
+
+  // "ENABLE" | "MAINTENTANCE" | "DISABLE"
+  typedef admin-status {
+      type string {
+        length 0..16;
+        pattern "ENABLE|MAINTENANCE|DISABLE";
+      }
+      default "ENABLE";
+    description "The typedef for admin-status";
+  }
+
+  typedef behavior {
+      type string {
+        length 0..20;
+        pattern "DENY-ALL|ALLOW-ALL|ALLOW-PUBLIC";
+      }
+    description "The typedef for behavior";
+  }
+
+  typedef mtu {
+      type inet:port-number;
+      default 1492;
+    description "The typedef for mtu";
+  }
+
+  typedef description {
+    type string {
+      length 1..1024;
+    }
+    description "The typedef for description";
+  }
+}