Release 0 Data Model Details
Overview
OSM supports descriptors for Virtual Network Functions and Network Services. The data models for these descriptors are aligned with ETSI MANO [1].
Virtual Network Function Descriptor [VNFD] defines the resources required for realizing the VNF. The descriptor includes various components that are part of the VNF. In addition, it also defines the VNF level configuration information.
Network Service Descriptor [NSD] defines a set of interconnected VNFs to realize a network service spanning multiple VNFs. In addition, NSD also defines the NS level configuration information.
Network Service Descriptor
The NSD connects VNFs using the Virtual Links (VLs) as shown in the following diagram:
The VNFs attach to the VLs using the Connection Points (CPs). So the NSD captures the list of VNFs and the VLs that connect the VNFs. The following diagram illustrates the high level objects in an NSD:
NS Connection Points: List for network service (NS) connection points. Each NS has one or more external connection points used to link the NS to other NS or to external networks. Each NS exposes these connection points to the orchestrator. The orchestrator can construct network service chains by connecting the connection points between different NS.
Constituent VNFs: List of Virtual Network Function Descriptors (VNFDs) that are part of this network service.
VNF Dependencies: List of VNF dependencies. This specifies the order in which the VNFs inside the NS should be started.
Virtual Links: List of Virtual Link Descriptors (VLD). The VLD describes how VNFs in the NSD are connected.
NS Configuration Primitives: Network service level configuration primitives.
Input Parameters:List of xpath to parameters inside the NSD that can be customized during instantiation.
Virtual Network Function Descriptor (VNFD)
The VNFD connects Virtual Deployment Units (VDUs) using the internal Virtual Links (VLs). Each VDU represents a VM/Container. The following diagram illustrates the internal structure of VNFD:
The VDUs attach to the internal VLs using the internal Connection Points (CPs). So the VNFD captures the list of VDUs and the internal VLs that connect the VDUs. Note that for a VNF containing a single VDU, there may not be any internal VLs. The following diagram illustrates the high level objects in an VNFD:
An example IMS VNF is here.
Data Modeling Language and Format
The VNF and NS descriptors are modeled using YANG. The input format for descriptor is YAML. The descriptors are validated against the YANG schema when the VNF/NS packages are on-boarded. For details about the YANG schema and descriptors refer to the "Detailed Documents/Information" section below.
Packages
The NSD and VNFD are on-boarded using NS and VNF packages respectively. At the time of instantiation additional artifacts such as images, icons, scripts, and charms are needed in addition to the descriptors. To provide a simple and one click on-boarding experience the packages encapsulate all necessary artifacts in addition to the descriptors. The packages are distributed in the tar.gz format.
NS Package
The NS package may contain the following files and directories:
| - nsd.yaml (NS descriptor in YAML format)
| - README (Information regarding the NS)
| - checksum.txt (Contains checksum for each file in package)
| - scripts\ (Directory containing the scripts NS lifecycle events and primitives)
| - icons\ (Directory containing icons and logs for the network wervice)
| - ns-config\ (Directory contains files with NS level default values and initial configuration)
| - vnf-config\ (Directory contains files with VNF level default values and initial configuration)
NOTE: Files/directories in bold are mandatory.
VNF Package
The VNF package may contain the following files and directories:
| - vnfd.yaml (VNF descriptor file in YAML format)
| - README (Contains README about this VNF package)
| - checksum.txt (Contains checksum for each file in the package)
| - images\ (Directory containing all the VM images for this VNF)
| - scripts\ (Directory containing custom scripts for lifecycle events and configuration primitives)
| - icons\ (Directory containing the icons)
| - charms\ (Directory containing the configuration charms/plugins)
NOTE: Files/directories in bold are mandatory.
Detailed Documents/Information
Data Model Document: Media:OSM_Release0_Data_Models.pdf
UML representation of Network Service Descriptor: Media:Nsd.png
UML representation of VNF Descriptor Media:Vnfd.png