1 .. This work is licensed under a Creative Commons Attribution 4.0 International License.
2 .. http://creativecommons.org/licenses/by/4.0
4 ============================================
5 High level architecture and general features
6 ============================================
11 .. figure:: images/figure1.png
15 Resource Reservation Architecture
17 :numref:`figure1` shows the high level architecture for the resource reservation
18 use cases. Reserved resources are guaranteed for a given user/client for the
19 period expressed by start and end time. User/client represents the requestor
20 and the consequent consumer of the reserved resources and correspond to the
21 NFVO or VNFM in ETSI NFV terminology.
23 Note: in this document only reservation requests from NFVO are considered.
28 This section provides a list of features that need to be developed in the
31 * Resource capacity management
33 * Discovery of available resource capacity in resource providers
34 * Monitoring of available resource capacity in resource providers
35 * Update available resource capacity as a result of new or expired
36 reservations, addition/removal of resources. Note: this is a VIM internal
37 function, not an operation in the VIM northbound interface.
39 * Resource reservation
41 * Set start time and end time for allocation
42 * Increase/decrease reserved resource's capacity
43 * Update resource reservations, e.g. add/remove reserved resources
44 * Terminate an allocated resource due to the end time of a reservation
46 * VIM northbound interfaces
48 * Receive/Reply resource reservation requests
49 * Receive/Reply resource capacity management requests
50 * Receive/Reply resource allocation requests for reserved resources when
52 * Subscribe/Notify resource reservation event
54 * Notify reservation error or process completion prior to reservation
56 * Notify remaining time until termination of a resource due to the end
58 * Notify termination of a resource due to the end time of a reservation
60 * Receive/Reply queries on available resource capacity
61 * Subscribe/Notify changes in available resource capacity
63 High level northbound interface specification
64 =============================================
66 Resource Capacity Management
67 ----------------------------
69 .. figure:: images/figure2.png
73 Resource capacity management message flow: notification of capacity change
75 :numref:`figure2` shows a high level flow for a use case of resource capacity
76 management. In this example, the VIM notifies the NFVO of capacity change after
77 having received an event regarding a change in capacity (e.g. a fault
78 notification) from the NFVI. The NFVO can also retrieve detailed capacity
79 information using the Query Capacity Request interface operation.
81 .. figure:: images/figure3.png
85 Resource capacity management message flow: query of capacity density
87 :numref:`figure3` shows a high level flow for another use case of resource
88 capacity management. In this example, the NFVO queries the VIM about the actual
89 capacity to instantiate a certain resource according to a certain template, for
90 example a VM according to a certain flavor. In this case the VIM responds with
91 the number of VMs that could be instantiated according to that flavor with the
92 currently available capacity.
97 .. figure:: images/figure4.png
101 Resource reservation flow
103 :numref:`figure4` shows a high level flow for a use case of resource
104 reservation. The main steps are:
106 * The NFVO sends a resource reservation request to the VIM using the Create
107 Resource Reservation Request interface operation.
108 * The NFVO gets a reservation identifier reservation associated with this
109 request in the reply message
110 * Using the reservation identifier reservation, the NFVO can
111 query/update/terminate a resource reservation using the corresponding
113 * The NFVO is notified that the resource reservation is terminated due to the
114 end time of the reservation
120 Resource Capacity Management
121 ----------------------------
123 Notify Capacity Change Event
124 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
126 The notification change message shall include the following information elements:
128 ============================ ========== =====================================
129 Name Type Description
130 ============================ ========== =====================================
131 Notification Identifier Identifier issued by the VIM for the
132 capacity change event notification
133 Zone Identifier Identifier of the zone where capacity
135 Used/Reserved/Total Capacity List Used, reserved and total capacity
136 information regarding the resource
137 items subscribed for notification for
138 which capacity change event occurred
139 ============================ ========== =====================================
141 Query Resource Capacity Request
142 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
144 The capacity management query request message shall include the following
145 information elements:
147 ========== ========== ======================================================
148 Name Type Description
149 ========== ========== ======================================================
150 Zone Identifier Identifier of the zone where capacity is requested
151 Attributes List Attributes of resource items to be notified regarding
152 capacity change events
153 Resources List Identifiers of existing resource items to be queried
154 regarding capacity info (such as images, flavors,
155 virtual containers, networks, physical machines, etc.)
156 ========== ========== ======================================================
158 The capacity management query request message may also include the following
161 ====== ========== ==========================================================
162 Name Type Description
163 ====== ========== ==========================================================
164 Flavor Identifier Identifier that is passed in the request to obtain
165 information of the number of virtual resources that can be
166 instantiated according to this flavor with the available
168 ====== ========== ==========================================================
170 Query Resource Capacity Reply
171 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
173 The capacity management query reply message shall include the following
174 information elements:
176 ============================ ========== =====================================
177 Name Type Description
178 ============================ ========== =====================================
179 Zone Identifier Identifier of the zone where capacity
181 Used/Reserved/Total Capacity List Used, reserved and total capacity
182 information regarding each of the
183 resource items requested to check for
185 ============================ ========== =====================================
187 The detailed specification of the northbound interface for Capacity Management
188 in provided in section 5.1.1.
193 Create Resource Reservation Request
194 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
196 The create resource reservation request message shall include the following
197 information elements:
199 ========== ========== =========================================================
200 Name Type Description
201 ========== ========== =========================================================
202 Start Timestamp Start time for consumption of the reserved resources
203 End Timestamp End time for consumption of the reserved resources
204 Expiry Timestamp If not all reserved resources are allocated between start
205 time and expiry, the VIM shall release the corresponding
207 Amount Number Amount of the resources per resource item type (i.e.
208 compute/network/storage) that need to be reserved
209 Zone Identifier The zone where the resources need(s) to be reserved
210 Attributes List Attributes of the resources to be reserved such as DPDK
211 support, hypervisor, network link bandwidth, affinity
213 Resources List Identifiers of existing resource items to be reserved
214 (such as images, flavors, virtual containers, networks,
215 physical machines, etc.)
216 ========== ========== =========================================================
218 .. [#expiry] Expiry is a period around start time within which, the allocation
219 process must take place. If allocation process does not start
220 within the expiry period, the reservation becomes invalid and VIM
221 should release the resources
223 Create Resource Reservation Reply
224 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
226 The create resource reservation reply message shall include the following
227 information elements:
229 =========== ========== =======================================================
230 Name Type Description
231 =========== ========== =======================================================
232 Reservation Identifier Identification of the reservation instance. It can be
233 used by a consumer to modify the reservation later, and
234 to request the allocation of the reserved resources.
235 Message Text Output message that provides additional information
236 about the create resource reservation request (e.g. may
237 be a simple ACK if the request is being background
238 processed by the VIM)
239 =========== ========== =======================================================
241 Notify Reservation Event
242 ^^^^^^^^^^^^^^^^^^^^^^^^
244 The notification reservation event message shall include the following
245 information elements:
247 ============ ========== =====================================================
248 Name Type Description
249 ============ ========== =====================================================
250 Reservation Identifier Identification of the reservation instance triggering
252 Notification Identifier Identification of the resource event notification
254 Message Text Message describing the event
255 ============ ========== =====================================================
257 The detailed specification of the northbound interface for Resource Reservation
258 is provided in section 5.1.2.