4 Catalogue
Table of Contents
- 4.1 Compute flavours.
- 4.1.1 Predefined Compute flavours.
- 4.2 Network Interface Specifications.
- 4.3 Storage Extensions.
- 4.3.1 Available storage extensions.
- 4.4 Instance types.
- 4.4.1 B Instances (Basic).
- 4.4.2 N Instances (Network Intensive).
- 4.4.3 C Instances (Compute Intensive).
- 4.4.4 Network Interface Options.
- 4.5 Instance capabilities and metrics.
- 4.5.1 Instance capabilities.
- 4.5.2 Instance metrics.
- 4.6 One stop shop.
- 4.6.1 Naming convention.
Infrastructure exposes sets of capabilities, metrics, compute flavours, interface options, storage extensions, and acceleration capabilities to VNFs. Those sets are offered to VNFs in form of instance types with their corresponding options and extensions.
The idea of the infrastructure instances catalogue is to have a predefined set of instance types with a predefined set of compute flavours (sometimes referred to as T-shirt sizes) which VNF vendors use to build their VNFs. Each VNF uses one or more of those compute flavours (with one or more of offered instance types) to build its overall functionality as illustrated in Figure 4-1.
Figure 4-1: VNFs built against standard instance types and compute flavours.
4.1 Compute flavours
Flavours represent the compute, memory, storage capacity, and management network resource templates that are used to create the VMs on the compute hosts. Each VM instance is given a flavour (resource template), which determines the instance’s core, memory and storage characteristics.
Flavours can also specify secondary ephemeral storage, swap disk, etc. A compute flavour geometry consists of the following elements:
Element | Description |
---|---|
Name | A descriptive name |
Virtual compute resources (aka vCPUs) | Number of virtual compute resources (vCPUs) presented to the instance. |
Memory MB | Instance memory in megabytes. |
Ephemeral/Local Disk | Specifies the size of an ephemeral data disk that exists only for the life of the instance. Default value is 0. The ephemeral disk may be partitioned into boot (base image) and swap space disks. |
Is Public | Boolean value, whether flavor is available to all users or private to the project it was created in. Defaults to True. |
Table 4-1: Flavour Geometry Specification.
4.1.1 Predefined Compute flavours
The intent of the following flavours list is to be comprehensive and yet effective to cover both IT and NFV workloads. The compute flavours are specified relative to the standardised “large” flavour. The standard “large” flavour configuration consists of 4 vCPUs, 8 GB of RAM and 80 GB of local disk, and the resulting instance will have a management interface of 1 Gbps. The “medium” flavour is half the size of a large and small is half the size of medium. The tiny flavour is a special sized flavour.
Note: Customised (Parameterized) flavours can be used in concession by operators and , if needed, are created using TOSCA, HEAT templates and/or VIM APIs.
.conf | vCPU ("c") | RAM ("r") | Local Disk ("d") | Managmenet Interface |
---|---|---|---|---|
.tiny | 1 | 512 MB | 1 GB | 1 Gbps |
.small | 1 | 2 GB | 20 GB | 1 Gbps |
.medium | 2 | 4 GB | 40 GB | 1 Gbps |
.large | 4 | 8 GB | 80 GB | 1 Gbps |
.2xlarge* | 8 | 16 GB | 160 GB | 1 Gbps |
.4xlarge* | 16 | 32 GB | 320 GB | 1 Gbps |
Table 4-2: Predefined Compute flavours.
*These compute flavours are intended to be used for transitional purposes and VNF vendors are expected to consume smaller flavours and adopt micro server’s designs for their VNFs
4.2 Network Interface Specifications
The network interface specifications extend the flavour customization to specify the network interface “n” followed by the interface bandwidth (in Gbps) and an alphabetic character defining the number of interfaces with that bandwidth; multiple network interface bandwidths, where network interfaces of different bandwidths exist, can be specified by repeating the “n” option.
<network interface bandwidth option> :: <”n”><number (bandwidth in Gbps)>< # of interfaces of that bandwidth>
<number of interfaces> :: <”” | “D” | “T” | “Q” | “P” | “H”>
where “” represents 1x, “D” 2x, “T” 3x, “Q” 4x, “p” 5x and “H” 6x interfaces of the given bandwidth.
Virtual network interface option | Description (Bandwidth in Gbps) |
---|---|
n1, n10, n1T, n1Q, n1P, n1H | 1x 1, 2x 1, 3x 1, 4x 1, 5x 1, 6x 1 Gbps |
n10, n10D, n10T, n10Q, n10P, n10H | 1x 10, 2x 10, 3x 10, 4x 10, 5x 10, 6x 10 Gbps |
n25, n25D, n25T, n25Q, n25P, n25H | 1x 25, 2x 25, 3x 25, 4x 25, 5x 25, 6x 25 Gbps |
n50, n50D, n50T, n50Q, n50P, n50H | 1x 50, 2x 50, 36x 50, 4x 50, 5x 50, 6x 50 Gbps |
n100, n100D, n100T, n100Q, n100P, n100H | 1x 100, 2x 100, 3x 100, 4x 100, 5x 100, 6x 100 Gbps |
Table 4-3: Virtual Network Interface Specification Examples.
4.3 Storage Extensions
Multiple non-ephemeral storage volumes can be attached to virtual computes for persistent data storage. Each of those volumes can be configured with the required performance category.
.conf | Read IO/s | Write IO/s Read | Throughput (MB/s) | Write Throughput (MB/s) |
---|---|---|---|---|
.bronze | Up to 3K | Up to 15K | Up to 180 | Up to 120 |
.silver | Up to 60K | Up to 30K | Up to 1200 | Up to 400 |
.gold | Up to 680K | Up to 360K | Up to 2650 | Up to 1400 |
Table 4-4: Storage Performance Profiles.
4.3.1 Available storage extensions
These are non-ephemeral storage extensions that can be provided to VNFs for persistent data storage. More than one storage extension can be provided to a single VNF-C.
.conf | capacity | Read IOPS | Write IOPS | Read Throughput (MB/s) | Write Throughput (MB/s) |
---|---|---|---|---|---|
.bronze1 | 100GB | Up to 3K | Up to 15K | Up to 180 | Up to 120 |
.bronze2 | 200GB | Up to 3K | Up to 15K | Up to 180 | Up to 120 |
.bronze3 | 300GB | Up to 3K | Up to 15K | Up to 180 | Up to 120 |
.silver1 | 100GB | Up to 60K | Up to 30K | Up to 1200 | Up to 400 |
.silver2 | 200GB | Up to 60K | Up to 30K | Up to 1200 | Up to 400 |
.silver3 | 300GB | Up to 60K | Up to 30K | Up to 1200 | Up to 400 |
.gold1 | 100GB | Up to 680K | Up to 360K | Up to 2650 | Up to 1400 |
.gold2 | 200GB | Up to 680K | Up to 360K | Up to 2650 | Up to 1400 |
.gold3 | 300GB | Up to 680K | Up to 360K | Up to 2650 | Up to 1400 |
Table 4-5: Storage extensions for compute flavours.
4.4 Instance types
4.4.1 B Instances (Basic)
This instance type is intended to be used for both IT workloads as well as NFV workloads. It has limited IO capabilities (up to 10Gbps Network interface) with a wide range of compute flavours. This instance type is intended to be available in any data centre within any Operator’s network.
4.4.2 N Instances (Network Intensive)
This instance type is intended to be used for those applications that has high network throughput requirements (up to 50Gbps). This instance type is more intended for VNFs and is expected to be available in regional (distributed) data centres and more towards the access networks.
4.4.2.1 Network Acceleration Extensions
N instance types can come with Network Acceleration extensions to assist VNFs offloading some of their network intensive operations to hardware. The list below is preliminary and is expected to grow as more network acceleration resources are developed and standardized.
Interface types are aligned with ETSI NFV IFA 002 [4].
.conf | Interface type | Description |
---|---|---|
.il-ipsec | virtio-ipsec* | In-line IPSec acceleration |
.la-crypto | virtio-crypto | Look-Aside encryption/decryption engine |
Table 4-7: Acceleration extensions for N instance type.
*Need to work with relevant open source communities to create missing interfaces.
4.4.3 C Instances (Compute Intensive)
This instance type is intended to be used for those applications that has high compute requirements and can take advantage of acceleration technologies such as GPU, FPGA, etc. This instance type is intended to be available in local data centers and more towards the Edge of the network.
4.4.3.1 Compute acceleration extensions
C instance types can come with compute acceleration extensions to assist VNFs/VAs offloading some of their compute intensive operations to hardware. The list below is preliminary and is expected to grow as more compute acceleration resources are developed and standardized.
.conf | Interface type | Description |
---|---|---|
.la-trans | virtio-trans* | Look-Aside Transcoding acceleration |
.la-programmable | virtio-programmable | Look-Aside programmable acceleration |
Table 4-8: Acceleration extensions for C instance type.
*Need to work with relevant open source communities to create missing interfaces.
4.4.4 Network Interface Options
Table 4-6 below shows the various network interfaces options (from Table 4-3) are available for which profile type (Up to 6 interfaces are possible).
Virtual interface option* | Basic Type | Network Intensive Type | Compute Intensive Type |
---|---|---|---|
n1, n10, n1T, n1Q, n1P, n1H | Y | N | N |
n10, n10D, n10T, n10Q, n10P, n10H | Y | Y | Y |
n25, n25D, n25T, n25Q, n25P, n25H | N | Y | Y |
n50, n50D, n50T, n50Q, n50P, n50H | N | Y | Y |
n100, n100D, n100T, n100Q, n100P, n100H | N | Y | N |
Table 4-6: Virtual NIC interfaces options
*These options are intended to be used for transitional purposes. VNFs are expected to use minimum number of interfaces and adopt micro-servers design principles.
4.5 Instance capabilities and metrics.
4.5.1 Instance capabilities.
Ref | B Instance | N Instance | C Instance | Notes |
---|---|---|---|---|
e.nfvi.res.cap.001 |
As per selected \ |
As per selected \ |
As per selected \ |
Exposed resource capabilities as per Table 3-5. |
e.nfvi.res.cap.002 |
As per selected \ |
As per selected \ |
As per selected \ |
|
e.nfvi.res.cap.003 |
As per selected \ |
As per selected \ |
As per selected \ |
|
e.nfvi.res.cap.004 |
As per selected | As per selected | As per selected | |
e.nfvi.res.cap.005 |
As per selected |
As per selected |
As per selected |
|
e.nfvi.per.cap.001 |
No | Yes | Yes | Exposed performance capabilities as per Table 3-6. |
e.nfvi.per.cap.002 |
No | Yes | No | |
e.nfvi.per.cap.003 |
No | Yes (if offered) | No | |
e.nfvi.per.cap.004 |
No | Yes (if offered) | No | |
e.nfvi.per.cap.005 |
No | No | Yes (if offered) | |
e.nfvi.per.cap.006 |
No | No | Yes (if offered) | |
e.nfvi.mon.cap.001 |
No | Yes | No | Exposed monitoring capabilities as per Table 3-7. |
i.nfvi.sla.cap.001 |
1:4 | 1:1 | 1:1 | Internal SLA capabilities as per Table 3-10. |
i.nfvi.sla.cap.002 |
No | Yes | Yes | |
i.nfvi.per.cap.001 |
No | Yes | No | Internal performance capabilities as per Table 3-11. |
i.nfvi.mon.cap.001 |
Yes | Yes | Yes | Internal monitoring capabilities as per Table 3-12. |
i.nfvi.mon.cap.002 |
Yes | Yes | Yes | |
i.nfvi.mon.cap.003 |
Yes | Yes | Yes | |
i.nfvi.mon.cap.004 |
Yes | Yes | Yes | |
i.nfvi.mon.cap.005 |
Yes | No | Yes | |
i.nfvi.mon.cap.006 |
Yes | No | Yes | |
i.nfvi.mon.cap.007 |
Yes | No | Yes | |
i.nfvi.sec.cap.001 |
Yes | Yes | Yes | Internal security capabilities as per Table 3-13. |
i.nfvi.sec.cap.002 |
No | No | No | |
i.nfvi.sec.cap.003 |
Yes | Yes | Yes | |
i.nfvi.sec.cap.004 |
Yes | Yes | Yes |
Table 3-6: Mapping of NFVI capabilities to instance types.
4.5.2 Instance metrics.
Comment: To be worked on.
4.6 One stop shop
4.6.1 Naming convention
An entry in the infrastructure profile catalogue can be referenced using the following naming convention.
B/N/C <I opt> . <flavour> . <S ext> . <A ext>
Whereas:
- B/N/C: specifies the instance type (Basic, Network Intensive, and Compute Intensive)
- \: specifies the interface option of the instant.
- \: specifies an optional storage extension.
- \: specifies an optional acceleration extension for either N or H instance types.
Figure 4-2: Infrastructure Instances catalogue.