1
1
# Planes
2
2
3
- Resources and methods on an API can be divided into the _ plane _ that they
4
- reside or perform operations upon. For the context of APIs, the following
5
- planes are defined :
3
+ Systems such as software-defined networks and public clouds have distinct sets
4
+ of APIs which are crucial for accomplishing a full user journey. For example,
5
+ in networking, a user must :
6
6
7
- - Management plane: a uniform, resource-oriented API that primarily configures
8
- and allows retrieval of resources.
9
- - Data plane: a heterogenous API (ideally resource-oriented) that reads and
10
- write user data. Often connects to entities provisioned by the management
11
- plane, such as virtual machines.
7
+ 1 . Configure the network to determine how data will flow (e.g. defining network
8
+ interfaces, gateways)
9
+ 2 . Send data through the network.
10
+
11
+ The API and operations for these steps can be divided into layers known as
12
+ _ planes_ , indicating the role that the API plays in data.
12
13
13
- The term "plane" was originally used in networking architecture. Although
14
- system and network architecture often defines additional planes (e.g. control
15
- plane or power planes), as the AEPs are focused on the interface, they are not
16
- defined in this AEP.
14
+ The AEPs define the following planes:
15
+
16
+ - Management plane: contains AEP-compliant, resource-oriented APIs that
17
+ primarily configure and allow retrieval of resources. APIs in the management
18
+ plane generally do no accept nor interact with user data directly.
19
+ - Data plane: a heterogenous API (ideally resource-oriented) that reads and
20
+ writes user data. Often connects to entities provisioned by the management
21
+ plane plane, such as virtual machines.
17
22
18
23
## Guidance
19
24
20
25
### Management Plane
21
26
22
27
Management resources and methods exist primarily to provision, configure, and
23
- audit the resources that the data plane interfaces with .
28
+ audit the resources that the data plane APIs operates on .
24
29
25
- As an example, the following are considered management resources for a cloud
30
+ For example, the following are considered management resources for a cloud
26
31
provider:
27
32
28
33
- virtual machines
@@ -41,9 +46,9 @@ Examples of data plane methods include:
41
46
- pushing to or pulling from a message queue
42
47
- uploading blobs to or downloading blobs from a blob store instance
43
48
44
- Data plane APIs ** may** be heterogenous across a larger API surface, due to
45
- requirements including high throughput, low latency, or the need to adhere to
46
- an existing interface specification (e.g. ANSI SQL).
49
+ Data plane APIs ** may** not comply to AEPs due to requirements including high
50
+ throughput, low latency, or the need to adhere to an existing interface
51
+ specification (e.g. ANSI SQL).
47
52
48
53
- For convenience, resources and methods that operate on the data plane ** may**
49
54
expose themselves via resource-oriented management APIs. If so, those
0 commit comments