Scott Baker | d3a7ec5 | 2021-11-08 22:59:07 -0800 | [diff] [blame] | 1 | .. |
| 2 | SPDX-FileCopyrightText: © 2020 Open Networking Foundation <support@opennetworking.org> |
| 3 | SPDX-License-Identifier: Apache-2.0 |
| 4 | |
Scott Baker | 3c7cfea | 2022-03-09 16:22:42 -0800 | [diff] [blame^] | 5 | Application Management |
| 6 | ====================== |
Scott Baker | d3a7ec5 | 2021-11-08 22:59:07 -0800 | [diff] [blame] | 7 | |
Scott Baker | 3c7cfea | 2022-03-09 16:22:42 -0800 | [diff] [blame^] | 8 | Aether allows configuration of the application endpoints that a |
Scott Baker | d3a7ec5 | 2021-11-08 22:59:07 -0800 | [diff] [blame] | 9 | device is allowed to connect to. Configuration is possible of not only whether an |
| 10 | application endpoint is reachable or not, but also what maximum bitrate and traffic |
| 11 | class should be associated with that endpoint. |
| 12 | |
Scott Baker | c074756 | 2022-03-09 13:48:29 -0800 | [diff] [blame] | 13 | A Slice may have a total of five user-defined application endpoints associated with it. Logically |
Scott Baker | d3a7ec5 | 2021-11-08 22:59:07 -0800 | [diff] [blame] | 14 | this could be one application with five endpoints, five applications with one endpoint |
| 15 | each, or any other combination that is less than or equal to five endpoints total. |
| 16 | |
| 17 | In addition to |
| 18 | these five user configurable endpoints, the default behavior can be set to either |
| 19 | ALLOW-ALL, DENY-ALL, or ALLOW-PUBLIC. ALLOW-PUBLIC is a special rule that denies traffic |
| 20 | to private IPv4 networks (as per RFC1918) and then allows everything else. |
| 21 | |
Scott Baker | 3c7cfea | 2022-03-09 16:22:42 -0800 | [diff] [blame^] | 22 | Creating Applications |
| 23 | --------------------- |
Scott Baker | d3a7ec5 | 2021-11-08 22:59:07 -0800 | [diff] [blame] | 24 | |
Scott Baker | 3c7cfea | 2022-03-09 16:22:42 -0800 | [diff] [blame^] | 25 | Begin by creating Applications. Start by going to the application page, and |
| 26 | clicking the add button. |
| 27 | |
| 28 | |app-list| |
| 29 | |
| 30 | This will open a page where application details may be specified: |
| 31 | |
| 32 | |app-add| |
| 33 | |
| 34 | Each application has an address field which may be |
Scott Baker | d3a7ec5 | 2021-11-08 22:59:07 -0800 | [diff] [blame] | 35 | set to an IPv4 address or an IPv4 subnet, which may in turn match several IPv4 |
Scott Baker | 3c7cfea | 2022-03-09 16:22:42 -0800 | [diff] [blame^] | 36 | addresses. Once the address is set, move on to creating endpoints. Press the plus |
| 37 | button to add an endpoint. |
| 38 | |
| 39 | |app-add-endpoint| |
Scott Baker | d3a7ec5 | 2021-11-08 22:59:07 -0800 | [diff] [blame] | 40 | |
| 41 | Each endpoint is a port range, specified by its start and end port. A range of |
| 42 | exactly one port is also acceptable. The protocol may be set to either TCP or UDP. Each |
| 43 | endpoint may also have associated with it a maximum bitrate and a traffic-class. The |
| 44 | maximum bitrate is per-device to the application; it is not the sum of all devices to the |
| 45 | application. |
| 46 | |
Scott Baker | 3c7cfea | 2022-03-09 16:22:42 -0800 | [diff] [blame^] | 47 | Once all endpoints have been added, they will be summarized on the application page. Update |
| 48 | and commit the changes. |
| 49 | |
| 50 | |app-add-update| |
| 51 | |
Scott Baker | c074756 | 2022-03-09 13:48:29 -0800 | [diff] [blame] | 52 | Adding Applications to Slices |
| 53 | ----------------------------- |
Scott Baker | d3a7ec5 | 2021-11-08 22:59:07 -0800 | [diff] [blame] | 54 | |
Scott Baker | c074756 | 2022-03-09 13:48:29 -0800 | [diff] [blame] | 55 | Each Slice has an application filter, which is a list of applications. Each entry |
Scott Baker | d3a7ec5 | 2021-11-08 22:59:07 -0800 | [diff] [blame] | 56 | in this list has a priority and an allow|deny setting. Keep in mind that the total |
Scott Baker | c074756 | 2022-03-09 13:48:29 -0800 | [diff] [blame] | 57 | number of endpoints for all applications attached to the Slice must be less than or |
Scott Baker | 3c7cfea | 2022-03-09 16:22:42 -0800 | [diff] [blame^] | 58 | equal to five. Start by opening up the slice and clicking the plus button next to the |
| 59 | Filter list. |
| 60 | |
| 61 | |app-filter-slice-edit-filter-plus| |
| 62 | |
| 63 | Choose an application and select a priority for it. |
| 64 | |
| 65 | |slice-filter-popup| |
Scott Baker | d3a7ec5 | 2021-11-08 22:59:07 -0800 | [diff] [blame] | 66 | |
Scott Baker | c074756 | 2022-03-09 13:48:29 -0800 | [diff] [blame] | 67 | Also configurable for the Slice is the default-behavior, which will automatically |
Scott Baker | d3a7ec5 | 2021-11-08 22:59:07 -0800 | [diff] [blame] | 68 | be evaluated at the lowest priority, only taking effect if no other rule matches. |
| 69 | The default behavior does not count against the 5-endpoint limit. |
| 70 | |
| 71 | How Application Filtering is Evaluated |
| 72 | -------------------------------------- |
| 73 | |
| 74 | Application filtering is evaluated from highest priority (0) to the lowest |
| 75 | priority (250). The first rule to match will have its action applied. Subsequent |
| 76 | rules after a match are not evaluated. |
| 77 | |
| 78 | For example, assume the following filter is configured: |
| 79 | |
| 80 | * Priority=0, Address=10.0.0.1, Protocol=TCP, Port=8000, Action=Allow |
| 81 | * Priority=1, Address=10.0.0.0/24, Action=Deny |
| 82 | * Default_Behavior = Allow All |
| 83 | |
| 84 | The above rule would allow traffic to 10.0.0.1 on TCP port 8000, but deny |
| 85 | traffic to all other hosts on the IPv4 subnet 10.0.0.0/24. Ports other than |
| 86 | 8000 on 10.0.0.1 would be denied, as would protocols other than TCP. Traffic to |
| 87 | subnets other than 10.0.0.0/24 would be allowed. |
Scott Baker | 3c7cfea | 2022-03-09 16:22:42 -0800 | [diff] [blame^] | 88 | |
| 89 | .. |app-list| image:: images/aether-roc-gui-application-list.png |
| 90 | :alt: List of applications |
| 91 | :width: 1000 |
| 92 | |
| 93 | .. |app-add| image:: images/aether-roc-gui-application-add.png |
| 94 | :alt: Add an application |
| 95 | :width: 800 |
| 96 | |
| 97 | .. |app-add-endpoint| image:: images/aether-roc-gui-application-add-endpoint.png |
| 98 | :alt: Add an application endpoint |
| 99 | :width: 600 |
| 100 | |
| 101 | .. |app-add-update| image:: images/aether-roc-gui-application-add-update.png |
| 102 | :alt: Ready to update and commit the application |
| 103 | :width: 800 |
| 104 | |
| 105 | .. |app-filter-slice-edit-filter-plus| image:: images/aether-roc-gui-slice-edit-filter-plus.png |
| 106 | :alt: Slice edit page, ready to add a filter |
| 107 | :width: 800 |
| 108 | |
| 109 | .. |slice-filter-popup| image:: images/aether-roc-gui-slice-filter-popup.png |
| 110 | :alt: Popup to add or edit an application filter |
| 111 | :width: 600 |
| 112 | |
| 113 | |
| 114 | |