Changes for SOL009/NFVManoConfigurationAndInformationManagement-API/schemas/ManoEntity.schema.json: 272 added lines, 40 removed lines.
Original line number
Diff line number
Diff line
{
"description":"This type represents an NFV-MANO functional entity. * NOTE 1:\tIt shall be present when \"type\" attribute is \"NFVO\", and it shall be absent in any other case. * NOTE 2:\tIt shall be present when \"type\" attribute is \"VNFM\", and it shall be absent in any other case. * NOTE 3:\tIt shall be present when \"type\" attribute is \"VIM\", and it shall be absent in any other case. * NOTE 4:\tThe information about the NFV-MANO services offered by a specific type of NFV-MANO functional\n entity is specified by the manoServices attribute.\n* NOTE 5:\tIt is optional for the API producer to support the \"manoEntityComponents\" attribute. * NOTE 6:\tIt shall be present when \"type\" attribute is \"WIM\", and it shall be absent in any other case. * NOTE 7:\tIt shall be present when \"type\" attribute is \"CISM\", and it shall be absent in any other case. \n",
"description":"This type represents an NFV-MANO functional entity. * NOTE 1:\tIt shall be present when \"type\" attribute is \"NFVO\", and it shall be absent in any other case. * NOTE 2:\tIt shall be present when \"type\" attribute is \"VNFM\", and it shall be absent in any other case. * NOTE 3:\tIt shall be present when \"type\" attribute is \"VIM\", and it shall be absent in any other case. * NOTE 4:\tThe information about the NFV-MANO services offered by a specific type of NFV-MANO functional\n entity is specified by the manoServices attribute.\n* NOTE 5:\tIt is optional for the API producer to support the \"manoEntityComponents\" attribute. * NOTE 6:\tIt shall be present when \"type\" attribute is \"WIM\", and it shall be absent in any other case. * NOTE 7:\tIt shall be present when \"type\" attribute is \"CISM\", and it shall be absent in any other case. * NOTE 8:\tIt shall be present when \"type\" attribute is \"CIR\", and it shall be absent in any other case. * NOTE 9:\tIt shall be present when \"type\" attribute is \"CCM\", and it shall be absent in any other case. \n",
"description":"An identifier with the intention of being globally unique.\n",
"type":"string"
},
"type":{
"description":"The enumeration ManoEntityEnumType defines the permitted values to represent NFV-MANO functional entities. It shall comply with the provisions :\n - NFVO\tThe NFV-MANO functional entity is an NFVO.\n - VNFM\tThe NFV-MANO functional entity is a VNFM.\n - VIM\tThe NFV-MANO functional entity is a VIM.\n - WIM The NFV-MANO functional entity is a WIM.\n - CISM The NFV-MANO functional entity is a CISM. \n",
"description":"The enumeration ManoEntityEnumType defines the permitted values to represent NFV-MANO functional entities. It shall comply with the provisions :\n - NFVO\tThe NFV-MANO functional entity is an NFVO.\n - VNFM\tThe NFV-MANO functional entity is a VNFM.\n - VIM\t The NFV-MANO functional entity is a VIM.\n - WIM The NFV-MANO functional entity is a WIM.\n - CISM The NFV-MANO functional entity is a CISM. \n - CIR The NFV-MANO functional entity is a CIR.\n - CCM The NFV-MANO functional entity is a CCM.\n",
"type":"string",
"enum":["NFVO","VNFM","VIM","WIM","CISM"]
"enum":[
"NFVO",
"VNFM",
"VIM",
"WIM",
"CISM",
"CIR",
"CCM"
]
},
"name":{
"description":"Human-readable name of the NFV-MANO functional entity.\nThis attribute can be modified with the PATCH method.\n",
@@ -38,7 +56,9 @@
"items":{
"description":"This type represents information of a deployed component realizing part of an NFV-MANO functional entity. It is optional for the API producer to support this type.\n",
"type":"object",
"required":["id"],
"required":[
"id"
],
"properties":{
"id":{
"description":"An identifier that is unique for the respective type within a NFV-MANO functional entity, but that need not be globally unique. Representation: string of variable length..\n",
@@ -61,7 +81,13 @@
"items":{
"description":"This type represents information about an NFV-MANO service provided by the NFV-MANO functional entity. * NOTE:\tA cardinality greater than one supports having different interface versions or api Endpoints\n to be used for accessing the same instance of an NFV-MANO service.\n",
"description":"An identifier that is unique for the respective type within a NFV-MANO functional entity, but that need not be globally unique. Representation: string of variable length..\n",
@@ -94,7 +120,9 @@
"items":{
"description":"This type represents a link to a resource using an absolute URI.\n",
"type":"object",
"required":["href"],
"required":[
"href"
],
"properties":{
"href":{
"description":"String formatted according to IETF RFC 3986.\n",
@@ -105,7 +133,9 @@
"minItems":1
}
},
"required":["manoServiceInterfaces"]
"required":[
"manoServiceInterfaces"
]
}
}
}
@@ -114,31 +144,51 @@
"description":"ManoConfigurableParams\n"
},
"manoApplicationState":{
"description":"Information and current values of the NFV-MANO functional entity’s application state.\n",
"description":"Information and current values of the NFV-MANO functional entity’s application state.\n",
"description":"The enumeration OperationalStateEnumType defines values representing the operational state of an NFV-MANO functional application type of managed entity. The OperationalStateEnumType shall comply with the provisions:\n - STARTED\tThe managed entity is operational.\n - STOPPED\tThe managed entity is not operational.\n - STOPPING\tThe managed entity is in the transition to stop.\n - STARTING\tThe managed entity is in the transition to start and become operational.\n - RESTARTING\tThe managed entity is in the transition to stop and start again.\n",
"description":"The enumeration AdministrativeStateEnumType defines values representing the administrative state of a managed entity. The AdministrativeStateEnumType shall comply with the provisions:\n - LOCKED\tThe managed entity is administratively prohibited to be used.\n - UNLOCKED\tThe managed entity is administratively allowed to be used.\n - LOCKING\tThe managed entity is in the transition to be locked.\n",
"type":"string",
"enum":["LOCKED","UNLOCKED","LOCKING"]
"enum":[
"LOCKED",
"UNLOCKED",
"LOCKING"
]
},
"usageState":{
"description":"The enumeration UsageStateEnumType defines values representing the usage state of a managed entity. The UsageStateEnumType shall comply with the provisions:\n - IN_USE\tThe managed entity is currently being used.\n - NOT_IN_USE\tThe managed entity is currently not being used.\n",
"type":"string",
"enum":["IN_USE","NOT_IN_USE"]
"enum":[
"IN_USE",
"NOT_IN_USE"
]
}
}
},
"nfvoSpecificInfo":{
"description":"This type represents information attributes specific to an NFVO entity, and that can be relevant to more than one NFV-MANO service offered by an NFVO entity. * NOTE 1:\tThe information to be provided in this attribute shall relate to the specification and version\n of the specification. For instance, \"ETSI GS NFV-SOL 001 (V2.5.1)\".\n NOTE 2:\tIf this attribute is not present, the value of this parameter is undefined.\n",
"description":"Maximum number of NSDs that can be on-boarded on the NFVO. See note 2.\n",
@@ -155,14 +205,20 @@
"vnfdFormat":{
"description":"Name of the VNFD format.\nPermitted values:\n - TOSCA: The VNFD follows TOSCA definition, according to ETSI\n GS NFV-SOL 001 standard.\n - YANG: The VNFD follows YANG definition according to ETSI\n GS NFV-SOL 006 standard.\n",
"type":"string",
"enum":["TOSCA","YANG"]
"enum":[
"TOSCA",
"YANG"
]
},
"standardVersion":{
"description":"A version.\n",
"type":"string"
}
},
"required":["vnfdFormat","standardVersion"]
"required":[
"vnfdFormat",
"standardVersion"
]
},
"supportedNsdFormats":{
"description":"Supported NSD data formats.\n",
@@ -171,26 +227,40 @@
"nsdFormat":{
"description":"Name of the NSD format.\nPermitted values:\n - TOSCA: The VNFD follows TOSCA definition, according to ETSI\n GS NFV-SOL 001 standard.\n - YANG: The VNFD follows YANG definition according to ETSI\n GS NFV-SOL 006 standard.\n",
"type":"string",
"enum":["TOSCA","YANG"]
"enum":[
"TOSCA",
"YANG"
]
},
"standardVersion":{
"description":"A version.\n",
"type":"string"
}
},
"required":["nsdFormat","standardVersion"]
"required":[
"nsdFormat",
"standardVersion"
]
}
}
},
"vnfmSpecificInfo":{
"description":"This type represents information attributes specific to a VNFM entity, and that can be relevant to more than one NFV-MANO service offered by a VNFM entity. * NOTE:\tThe information to be provided in this attribute shall relate to the specification and version\n of the specification. For instance, \"ETSI GS NFV-SOL 001 (V2.5.1)\".\n",
"description":"The supported resource management modes of the VNFM.\nPermitted values:\n - DIRECT: The VNFM supports direct mode only.\n - INDIRECT: The VNFM supports indirect mode only.\n - BOTH: The VNFM supports both direct and indirect mode.\n",
"type":"string",
"enum":["DIRECT","INDIRECT","BOTH"]
"enum":[
"DIRECT",
"INDIRECT",
"BOTH"
]
},
"managedVnfInstanceInfos":{
"description":"The kinds of VNF instances that can be managed, e.g. to determine the compatibility of a VNF with certain VNFM according to the vnfmInfo attribute in the VNFD (see table 7.1.2.2-1 in ETSI GS NFV-IFA 011).\n",
@@ -209,14 +279,20 @@
"vnfdFormat":{
"description":"Name of the VNFD format.\nPermitted values:\n - TOSCA: The VNFD follows TOSCA definition, according to ETSI\n GS NFV-SOL 001 standard.\n - YANG: The VNFD follows YANG definition according to ETSI\n GS NFV-SOL 006 standard.\n",
"type":"string",
"enum":["TOSCA","YANG"]
"enum":[
"TOSCA",
"YANG"
]
},
"standardVersion":{
"description":"A version.\n",
"type":"string"
}
},
"required":["vnfdFormat","standardVersion"]
"required":[
"vnfdFormat",
"standardVersion"
]
},
"minItems":1
}
@@ -225,7 +301,12 @@
"vimSpecificInfo":{
"description":"This type represents information attributes specific to a VIM entity, and that can be relevant to more than one NFV MANO service offered by a VIM entity. It shall comply with the provisions defined in table 5.6.3.6-1. The present document version does not specify the support for \"maximum number of virtualised resources (attribute \"maxVirtualResourceNum\")\" as specified in clause 7.2.9.2 of ETSI GS NFV IFA 031 [1].\nNOTE:\tRecommendations on appropriate algorithms and key lengths are given e.g., in NIST Special Publication 800-57 Part 3 Revision 1 [i.26] or in documents related to local legislation.\n",
"description":"List of supported image container formats. Container format indicates whether a software image is in a file that also contains metadata about the actual software. Valid values are all values for \"container_format\" as defined in ETSI GS NFV-SOL 001 [16] and all values for \"container-format\" as defined in ETSI GS NFV-SOL 006 [i.17].\n",
@@ -244,7 +325,9 @@
"imageSignatureVerification":{
"description":"Information about the supported mechanisms, algorithms, and protocols for verifying the signature of software images.\n",
"type":"object",
"required":["signatureVerificationAlgorithms"],
"required":[
"signatureVerificationAlgorithms"
],
"properties":{
"additionalVerificationCapabilities":{
"description":"This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of keyvalue pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 8259. In the following example, a list of key-value pairs with four keys (\"aString\", \"aNumber\", \"anArray\" and \"anObject\") is provided to illustrate that the values associated with different keys can be of different type.\n",
@@ -255,14 +338,17 @@
"type":"array",
"items":{
"type":"object",
"required":["algorithm","keyLengths"],
"required":[
"algorithm",
"keyLengths"
],
"properties":{
"algorithm":{
"description":"The name of the algorithm. Permitted values are: \"RSA\", \"DSA\", \"ECDSA\".\n",
"type":"string"
},
"keyLengths":{
"description":"List of supported key lengths of the algorithm. The key length indicates the number of bits, such as “256”, “512”, etc. See note.\n",
"description":"List of supported key lengths of the algorithm. The key length indicates the number of bits, such as “256”, “512”, etc. See note.\n",
"type":"array",
"items":{
"type":"string"
@@ -282,14 +368,17 @@
"type":"array",
"items":{
"type":"object",
"required":["algorithm","keyLengths"],
"required":[
"algorithm",
"keyLengths"
],
"properties":{
"algorithm":{
"description":"The name of the algorithm. Permitted values are: “SHA2“,“SHA3“.\n",
"description":"The name of the algorithm. Permitted values are: “SHA2“,“SHA3“.\n",
"type":"string"
},
"keyLengths":{
"description":"List of supported key lengths of the algorithm. The key length indicates the number of bits, such as “256”, “512”, etc. See note.\n",
"description":"List of supported key lengths of the algorithm. The key length indicates the number of bits, such as “256”, “512”, etc. See note.\n",
"type":"array",
"items":{
"type":"string"
@@ -303,12 +392,18 @@
"wimSpecificInfo":{
"description":"This type represents information attributes specific to a WIM entity, and that can be relevant to more than one NFV MANO service offered by a WIM entity.\n",
"description":"Maximum number of MSCS that the WIM can manage.\n",
"type":"object",
"required":["numMscs"],
"required":[
"numMscs"
],
"properties":{
"numMscs":{
"description":"Maximum number of MSCS.\n",
@@ -323,7 +418,9 @@
"maxMsncNum":{
"description":"Maximum number of MSNC that the WIM can manage\n",
"type":"object",
"required":["numMsnc"],
"required":[
"numMsnc"
],
"properties":{
"numMsnc":{
"description":"Maximum number of MSNC..\n",
@@ -336,26 +433,153 @@
}
},
"mscsLayerProtocolSupport":{
"description":"List of protocols of particular layers used to realize an MSCS that are supported by the WIM.\nPermitted values: - EVPN_BGP_MPLS: L2 MSCS realized by BGP MPLS-based Ethernet VPN (EVPN) as specified in IETF RFC 7432.\n - EVPN_VPWS: L2 MSCS realized by EVPN Virtual Private Wire Service (VPWS) as specified in IETF RFC 8214.\n - VPLS_BGP: L2 MSCS realized by Virtual Private LAN Service (VPLS) using BGP as specified\n in IETF RFC 4761 and IETF RFC.\n - VPLS_LDP_L2TP: L2 MSCS realized by VPLS using Label Distribution Protocol (LDP) Layer 2\n Tunnelling Protocol (L2TP) as specified in IETF RFC 4762 and IETF RFC 6074.\n - VPWS_LDP_L2TP: L2 MSCS realized by VPWS using LDP L2TP as specified in IETF RFC 6074.\n - BGP_IP_VPN: L3 MSCS realized by BGP/MPLS based IP VPN as specified in IETF RFC 4364.\n",
"description":"List of protocols of particular layers used to realize an MSCS that are supported by the WIM.\nPermitted values:\n - EVPN_BGP_MPLS: L2 MSCS realized by BGP MPLS-based Ethernet VPN (EVPN) as specified in IETF RFC 7432.\n - EVPN_VPWS: L2 MSCS realized by EVPN Virtual Private Wire Service (VPWS) as specified in IETF RFC 8214.\n - VPLS_BGP: L2 MSCS realized by Virtual Private LAN Service (VPLS) using BGP as specified\n in IETF RFC 4761 and IETF RFC.\n - VPLS_LDP_L2TP: L2 MSCS realized by VPLS using Label Distribution Protocol (LDP) Layer 2\n Tunnelling Protocol (L2TP) as specified in IETF RFC 4762 and IETF RFC 6074.\n - VPWS_LDP_L2TP: L2 MSCS realized by VPWS using LDP L2TP as specified in IETF RFC 6074.\n - BGP_IP_VPN: L3 MSCS realized by BGP/MPLS based IP VPN as specified in IETF RFC 4364.\n",
"description":"This type represents information attributes specific to a CISM entity, and that can be relevant to more than one NFV-MANO service offered by a CISM entity. It shall comply with the provisions defined in table 5.6.3.14-1. NOTE:\tNo attributes are specified in the present document version. The definition of attributes is left for future specification. \n",
"type":"object",
"properties":{
"none":{
"type":"object"
}
}
},
"cirSpecificInfo":{
"description":"This type represents information attributes specific to a CIR entity, and that can be relevant to more than one NFV- MANO service offered by a CIR entity. It shall comply with the provisions defined in table 5.6.3.15-1. NOTE: Recommendations on appropriate algorithms and key lengths are given e.g. in NIST Special Publication 800-57 \n Part 3 Revision 1 or in documents related to local legislation.\n",
"type":"object",
"required":[
"osContainerImageFormats",
"imageSignatureVerification",
"imageDigestAlgorithms"
],
"properties":{
"osContainerImageFormats":{
"description":"List of supported OS container image formats. Valid values are all values for \"container_format\" as defined in ETSI GS NFV-SOL 001 and all values for \"container-format\" as defined in ETSI GS NFV-SOL 006.\n",
"type":"array",
"minItems":1,
"items":{
"type":"string"
}
},
"imageSignatureVerification":{
"description":"Information about the supported mechanisms, algorithms, and protocols for verifying the of software images.\n",
"type":"object",
"required":[
"signatureVerificationAlgorithms"
],
"properties":{
"signatureVerificationAlgorithms":{
"description":"List of algorithms for verifying the signature of software images that are supported by the CIR.\n",
"type":"array",
"items":{
"description":"List of algorithms for verifying the signature of software images that are supported by the CIR.\n",
"type":"object",
"required":[
"algorithm",
"keyLengths"
],
"properties":{
"algorithm":{
"description":"The name of the algorithm. Permitted values are: \"RSA\", \"DSA\", \"ECDSA\".\n",
"type":"string"
},
"keyLengths":{
"description":"List of supported key lengths of the algorithm. The key length indicates the number of bits, such as \"256\", \"512\", etc. See note\n",
"type":"array",
"minItems":1,
"items":{
"type":"string"
}
},
"additionalAlgParams":{
"description":"This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of keyvalue pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 8259. In the following example, a list of key-value pairs with four keys (\"aString\", \"aNumber\", \"anArray\" and \"anObject\") is provided to illustrate that the values associated with different keys can be of different type.\n",
"type":"object"
}
}
}
}
}
},
"imageDigestAlgorithms":{
"type":"array",
"items":{
"description":"List of supported digest algorithms that can be used for digital signatures.\n",
"type":"object",
"required":[
"algorithm",
"keyLengths"
],
"properties":{
"algorithm":{
"description":"The name of the algorithm. Permitted values are: \"SHA2\", \"SHA3\".\n",
"type":"string",
"enum":[
"SHA2",
"SHA3"
]
},
"keyLengths":{
"description":"List of supported key lengths of the algorithm. The key length indicates the number of bits, such as \"256\", \"512\", etc. See note.\n",
"type":"array",
"items":{
"type":"string"
}
}
}
}
}
}
},
"ccmSpecificInfo":{
"description":"The supported cluster resource management modes. Available modes include: virtual and bare-metal resources, and for both types, on-demand (i.e., CCM requests to corresponding infrastructure managers to build necessary pools of resources) or pooled (i.e., CCM manages resources from pre-allocated resource pools). Multiple values can be specified. See note. Permitted values: - VIRTUAL-ON-DEMAND: virtual resourceson demand. - VIRTUAL-POOLED: virtual resources from a pre-allocated resource pool. - BARE-METAL-ON-DEMAND: bare-metal resources on demand. - BARE-METAL-POOLED: bare-metal resources from a pre-allocated resource pool.\nNOTE: Hybrid CIS clusters include both physical and virtual CIS cluster nodes and can be supported by a\n combination of relevant \"clusterResourceMgmtModes\".\n",
"type":"object",
"required":[
"clusterResourceMgmtModes"
],
"properties":{
"clusterResourceMgmtModes":{
"type":"array",
"minItems":1,
"items":{
"type":"string",
"enum":[
"VIRTUAL-ON-DEMAND",
"VIRTUAL-POOLED",
"BARE-METAL-ON-DEMAND",
"BARE-METAL-POOLED"
]
}
}
}
},
"_links":{
"description":"Links to resources related to this resource.\n",
Changes for SOL009/NFVManoConfigurationAndInformationManagement-API/schemas/ManoServiceInterface.schema.json: 2 added lines, 1 removed line.
Original line number
Diff line number
Diff line
@@ -133,12 +133,13 @@
],
"properties":{
"authType":{
"description":"Type of API request authorization to be used by the API producer.\nThe support of authorization methods for the API producer is specified in clause 8.3.6 of ETSI GS NFV-SOL 013.\nPermitted values:\n - TLS_TUNNEL: Using TLS tunnel, as defined by TLS 1.2 in IETF RFC 5246.\n - OAUTH2: Using access token, as defined by the OAuth 2.0 specification\n in IETF RFC 6749.\n",
"description":"Type of API request authorization to be used by the API producer.\nThe support of authorization methods for the API producer is specified in clause 8.3.6 of ETSI GS NFV-SOL 013.\nPermitted values:\n - TLS_TUNNEL: Using TLS tunnel, as defined by TLS 1.2 in IETF RFC 5246.\n - TLS_TUNNEL_13: Using TLS tunnel, as defined by TLS 1.3 in IETF RFC 8446.\n - OAUTH2: Using access token, as defined by the OAuth 2.0 specification\n in IETF RFC 6749.\n",
Changes for SOL009/NFVManoConfigurationAndInformationManagement-API/schemas/ManoServiceInterfaceModifications.schema.json: 2 added lines, 1 removed line.
Original line number
Diff line number
Diff line
@@ -23,12 +23,13 @@
],
"properties":{
"authType":{
"description":"Type of API request authorization to be used by the API producer.\nThe support of authorization methods for the API producer is specified in clause 8.3.6 of ETSI GS NFV-SOL 013.\nPermitted values:\n - TLS_TUNNEL: Using TLS tunnel, as defined by TLS 1.2 in IETF RFC 5246.\n - OAUTH2: Using access token, as defined by the OAuth 2.0 specification\n in IETF RFC 6749.\n",
"description":"Type of API request authorization to be used by the API producer.\nThe support of authorization methods for the API producer is specified in clause 8.3.6 of ETSI GS NFV-SOL 013.\nPermitted values:\n - TLS_TUNNEL: Using TLS tunnel, as defined by TLS 1.2 in IETF RFC 5246.\n - TLS_TUNNEL_13: Using TLS tunnel, as defined by TLS 1.3 in IETF RFC 8446.\n - OAUTH2: Using access token, as defined by the OAuth 2.0 specification\n in IETF RFC 6749.\n",
Changes for SOL009/NFVManoConfigurationAndInformationManagement-API/schemas/ManoServiceInterfaces.schema.json: 2 added lines, 1 removed line.
Original line number
Diff line number
Diff line
@@ -135,12 +135,13 @@
],
"properties":{
"authType":{
"description":"Type of API request authorization to be used by the API producer.\nThe support of authorization methods for the API producer is specified in clause 8.3.6 of ETSI GS NFV-SOL 013.\nPermitted values:\n - TLS_TUNNEL: Using TLS tunnel, as defined by TLS 1.2 in IETF RFC 5246.\n - OAUTH2: Using access token, as defined by the OAuth 2.0 specification\n in IETF RFC 6749.\n",
"description":"Type of API request authorization to be used by the API producer.\nThe support of authorization methods for the API producer is specified in clause 8.3.6 of ETSI GS NFV-SOL 013.\nPermitted values:\n - TLS_TUNNEL: Using TLS tunnel, as defined by TLS 1.2 in IETF RFC 5246.\n - TLS_TUNNEL_13: Using TLS tunnel, as defined by TLS 1.3 in IETF RFC 8446.\n - OAUTH2: Using access token, as defined by the OAuth 2.0 specification\n in IETF RFC 6749.\n",