Scott Baker | fdbad76 | 2022-01-03 16:00:45 -0800 | [diff] [blame] | 1 | // SPDX-FileCopyrightText: 2021 Open Networking Foundation |
| 2 | // |
Sean Condon | 160ec1d | 2022-02-08 12:58:25 +0000 | [diff] [blame] | 3 | // SPDX-License-Identifier: Apache-2.0 |
Scott Baker | fdbad76 | 2022-01-03 16:00:45 -0800 | [diff] [blame] | 4 | |
Sean Condon | 11d6f42 | 2022-01-14 13:02:03 +0000 | [diff] [blame] | 5 | submodule onf-application { |
| 6 | belongs-to onf-enterprise { prefix ent; } |
Scott Baker | fdbad76 | 2022-01-03 16:00:45 -0800 | [diff] [blame] | 7 | |
| 8 | import ietf-inet-types{ prefix ietf; } |
Scott Baker | fdbad76 | 2022-01-03 16:00:45 -0800 | [diff] [blame] | 9 | import onf-aether-types{ prefix at; } |
Sean Condon | 11d6f42 | 2022-01-14 13:02:03 +0000 | [diff] [blame] | 10 | |
| 11 | include onf-traffic-class; |
Scott Baker | fdbad76 | 2022-01-03 16:00:45 -0800 | [diff] [blame] | 12 | |
| 13 | organization "Open Networking Foundation."; |
| 14 | contact "Scott Baker"; |
| 15 | description |
| 16 | "An Aether Application is an application that devices may |
| 17 | connect to. Includes a set of endpoints where services are |
| 18 | provided."; |
| 19 | |
Sean Condon | 11d6f42 | 2022-01-14 13:02:03 +0000 | [diff] [blame] | 20 | revision "2022-01-14" { |
| 21 | description "Refactored as submodule"; |
| 22 | reference "RFC 6020"; |
| 23 | } |
| 24 | |
Scott Baker | fdbad76 | 2022-01-03 16:00:45 -0800 | [diff] [blame] | 25 | revision "2021-09-10" { |
| 26 | description "Aether Application."; |
| 27 | reference "RFC 6087"; |
| 28 | } |
| 29 | |
| 30 | typedef application-id { |
Scott Baker | 40a7956 | 2022-02-16 15:04:50 -0800 | [diff] [blame^] | 31 | type at:aether-identifier; |
Scott Baker | fdbad76 | 2022-01-03 16:00:45 -0800 | [diff] [blame] | 32 | description "The typedef for application-id"; |
| 33 | } |
| 34 | |
Sean Condon | 11d6f42 | 2022-01-14 13:02:03 +0000 | [diff] [blame] | 35 | grouping application { |
| 36 | description "The application grouping"; |
Scott Baker | fdbad76 | 2022-01-03 16:00:45 -0800 | [diff] [blame] | 37 | |
| 38 | list application { |
Sean Condon | 9f7966e | 2022-02-03 10:55:06 +0000 | [diff] [blame] | 39 | key "application-id"; |
Scott Baker | fdbad76 | 2022-01-03 16:00:45 -0800 | [diff] [blame] | 40 | description |
| 41 | "List of applications"; |
| 42 | |
Sean Condon | 9f7966e | 2022-02-03 10:55:06 +0000 | [diff] [blame] | 43 | leaf application-id { |
Scott Baker | fdbad76 | 2022-01-03 16:00:45 -0800 | [diff] [blame] | 44 | type application-id; |
| 45 | description "ID for this application."; |
| 46 | } |
| 47 | |
Sean Condon | 9f7966e | 2022-02-03 10:55:06 +0000 | [diff] [blame] | 48 | uses at:desc-display-name; |
Scott Baker | fdbad76 | 2022-01-03 16:00:45 -0800 | [diff] [blame] | 49 | |
| 50 | leaf address { |
Scott Baker | ee0a68f | 2022-02-07 16:35:43 -0800 | [diff] [blame] | 51 | type at:host-or-network; |
Scott Baker | fdbad76 | 2022-01-03 16:00:45 -0800 | [diff] [blame] | 52 | mandatory true; |
| 53 | description |
| 54 | "Address of this application. Either a hostname, an IP, or a subnet."; |
| 55 | } |
| 56 | |
| 57 | list endpoint { |
| 58 | key "endpoint-id"; |
| 59 | leaf endpoint-id { |
Scott Baker | 40a7956 | 2022-02-16 15:04:50 -0800 | [diff] [blame^] | 60 | type at:aether-identifier; |
Scott Baker | fdbad76 | 2022-01-03 16:00:45 -0800 | [diff] [blame] | 61 | description |
| 62 | "Id of this endpoint"; |
| 63 | } |
Sean Condon | 9f7966e | 2022-02-03 10:55:06 +0000 | [diff] [blame] | 64 | |
| 65 | uses at:desc-display-name; |
| 66 | |
Scott Baker | fdbad76 | 2022-01-03 16:00:45 -0800 | [diff] [blame] | 67 | leaf port-start { |
| 68 | type ietf:port-number; |
| 69 | description |
| 70 | "First port in range"; |
| 71 | } |
| 72 | leaf port-end { |
| 73 | type ietf:port-number; |
| 74 | description |
| 75 | "Last port in range"; |
| 76 | } |
| 77 | leaf protocol { |
| 78 | type at:protocol; |
| 79 | description |
| 80 | "Protocol of this endpoint"; |
| 81 | } |
| 82 | container mbr { |
| 83 | description "Maximum bitrate"; |
| 84 | leaf uplink { |
| 85 | type at:bitrate; |
| 86 | units bps; |
| 87 | description "Per-Device per-Application MBR uplink data rate in bps"; |
| 88 | } |
| 89 | |
| 90 | leaf downlink { |
| 91 | type at:bitrate; |
| 92 | units bps; |
| 93 | description "Per-Device per application MBR downlink data rate in bps"; |
| 94 | } |
| 95 | } |
| 96 | leaf traffic-class { |
| 97 | type leafref { |
Sean Condon | 9f7966e | 2022-02-03 10:55:06 +0000 | [diff] [blame] | 98 | path "../../../traffic-class/traffic-class-id"; |
Scott Baker | fdbad76 | 2022-01-03 16:00:45 -0800 | [diff] [blame] | 99 | } |
| 100 | description |
| 101 | "Link to traffic class"; |
| 102 | } |
Sean Condon | 9f7966e | 2022-02-03 10:55:06 +0000 | [diff] [blame] | 103 | |
Scott Baker | fdbad76 | 2022-01-03 16:00:45 -0800 | [diff] [blame] | 104 | description "list for endpoint"; |
| 105 | } |
Scott Baker | fdbad76 | 2022-01-03 16:00:45 -0800 | [diff] [blame] | 106 | } |
| 107 | } |
| 108 | } |