{ "description": "This type represents configuration parameters of a VNF instance and its VNFC instances.\n", "type": "object", "required": [ "vnfConfigurationData" ], "properties": { "vnfConfigurationData": { "description": "This type represents configuration parameters of a VNF instance.\n", "type": "object", "properties": { "extCpConfig": { "description": "This type represents configuration parameters of a CP instance.\n", "type": "object", "required": [ "cpId", "cpdId", "addresses" ], "properties": { "cpId": { "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", "type": "string" }, "cpdId": { "description": "An identifier that is unique within a VNF descriptor.\n", "type": "string" }, "addresses": { "description": "Network address and port assigned to the CP.\n", "type": "array", "items": { "description": "This type represents configuration parameters of a CP instance address. * NOTE 1: Either \"address\" or \"useDynamicAddress\" shall be present.\n * NOTE 2: At least one of \"macAddress\" and \"ipAddress\" shall be present.\n", "type": "object", "properties": { "address": { "description": "Network address that has been configured on the CP. See NOTE 1.\n", "type": "object", "properties": { "macAddress": { "description": "A MAC address. Representation: string that consists of groups of two hexadecimal digits, separated by hyphens or colons.\n", "type": "string", "format": "MAC" }, "ipAddress": { "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", "type": "string", "format": "IP" } } }, "useDynamicAddress": { "description": "Set to true if an address shall be assigned dynamically. Otherwise set to false. The default value shall be false. See NOTE 1.\n", "type": "boolean" }, "port": { "description": "The port assigned to the CP instance (e.g. IP port number, Ethernet port number, etc.).\n", "type": "integer" } } } } } }, "dhcpServer": { "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", "type": "string", "format": "IP" }, "vnfSpecificData": { "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 key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", "type": "object" } } }, "vnfcConfigurationData": { "description": "Configuration parameters of the VNFC instances.\n", "type": "array", "items": { "description": "This type represents configuration parameters of a VNFC instance.\n", "type": "object", "required": [ "vnfcInstanceId" ], "properties": { "vnfcInstanceId": { "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", "type": "string" }, "intCpConfig": { "description": "Configuration parameters for the internal CPs of the VNFC instance.\n", "type": "array", "items": { "description": "This type represents configuration parameters of a CP instance.\n", "type": "object", "required": [ "cpId", "cpdId", "addresses" ], "properties": { "cpId": { "description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n", "type": "string" }, "cpdId": { "description": "An identifier that is unique within a VNF descriptor.\n", "type": "string" }, "addresses": { "description": "Network address and port assigned to the CP.\n", "type": "array", "items": { "description": "This type represents configuration parameters of a CP instance address. * NOTE 1: Either \"address\" or \"useDynamicAddress\" shall be present.\n * NOTE 2: At least one of \"macAddress\" and \"ipAddress\" shall be present.\n", "type": "object", "properties": { "address": { "description": "Network address that has been configured on the CP. See NOTE 1.\n", "type": "object", "properties": { "macAddress": { "description": "A MAC address. Representation: string that consists of groups of two hexadecimal digits, separated by hyphens or colons.\n", "type": "string", "format": "MAC" }, "ipAddress": { "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", "type": "string", "format": "IP" } } }, "useDynamicAddress": { "description": "Set to true if an address shall be assigned dynamically. Otherwise set to false. The default value shall be false. See NOTE 1.\n", "type": "boolean" }, "port": { "description": "The port assigned to the CP instance (e.g. IP port number, Ethernet port number, etc.).\n", "type": "integer" } } } } } } }, "dhcpServer": { "description": "An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that consists of groups of zero to four hexadecimal digits, separated by colons.\n", "type": "string", "format": "IP" }, "vnfcSpecificData": { "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 key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n", "type": "object" } } } } } }