Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

OOF returns to SO structure with Anchor point and related with them destination points. Each candidate is vFModule with extra information required or for filtering or for traffic configuration. For each destination point there is only one anchor point - both have to be located in the same cloud region. OOF firstly selects destinationPoints base on vFModule model name and by belonging to the same virtual service instance.  Then such candidates are filtered on required or excluded candidate basis. Anchor candidates are filtered by the same criteria with such difference that for whole group of destination points that come from the same cloud region only one anchor point is selected - the response should refelct this relation and proposed response is a structure where under each anchor point candidate there are all selected destinations from the same region.

Level of lInterfaces, lagInterfaces and pInterfaces () as well as pnf support can be a stretch goal for Dublin release. Obligatory is VNF support with lInterfaces information under vServers what is required for vFW-DT Traffic Distribution use case. information under vServers what is required for vFW-DT Traffic Distribution use case. 

Below is the example for the data snapshot that can be found in vFW-DT-AAI.7z. The format of the response is a compilation of data from different data structures - it is explained in the comments for each parameter. For better understanding most of identifiers are kept in the body, however in the final response format they would be removed to keep only data meaningful from configuration point of view.

Code Block
languagejs
titleOOF -> SO
linenumberstrue
{
    "trafficDistributionDecisions": [
        {
			"anchorPoint": {
				"nfType": "vnf", //[pnf, vnf] - depends on the API used to tretrieve object -> A&AI generic-vnf or pnf
				"nfId": "ffe99e79-5860-44d7-a56a-a5d21cfbdc21",//vnf-id or pnf-id -> A&AI generic-vnf or pnf
				"nfName": "vfw-dt-pkg-0",//vnf-name or pnf-name  -> A&AI generic-vnf or pnf
				"ipv4OamAddress": "oam_network_WVly",  // -> A&AI generic-vnf or pnf
				"ipv6OamAddress": "",  // -> A&AI generic-vnf or pnf
				//"pnfIpv4Address": "",// -> A&AI pnf
				//"pnfIpv6Address": "",// -> A&AI  pnf
				"vnfType": "vfw-dt-service/vFW-PKG-DT-VF 0", // -> A&AI generic-vnf 
				"vfModuleId": "a114e77b-709f-4a5f-a802-6f66bc620848", // -> A&AI generic-vnf/vf-module
				"vfModuleName": "vpkg-dt-module-1", // -> A&AI generic-vnf/vf-module 
				"vfModuleModelInvariantId": "344e26f1-ff29-4570-98fd-2f607b79e609", // -> A&AI generic-vnf/vf-module
				"vfModuleModelVersion": "a8ad1d21-5e9d-4a91-b155-19c5ce5fbe17", // -> A&AI generic-vnf/vf-module
				"vfModuleModelName": "VfwPkgDtVf..base_vpkg..module-0", // -> A&AI sdc model/vf-module
				"vServers": [ // -> A&AI cloud-inf/v-server
					{{
						"vServerId": "7f237078-c830-4d98-b8e9-0efc8ca36427", // -> A&AI cloud-inf/v-server
						"vServerIdvServerName": "7f237078-c830-4d98-b8e9-0efc8ca36427vpg-vf", // -> A&AI cloud-inf/v-server
						"vServerNamecloudRegionId": "vpg-vfRegionOne", // -> A&AI cloud-inf/v-server
						"lInterfaces": [ // -> A&AI cloud-inf/v-server l-interface
							{
								"interfaceName": "vpkg-dt-module-1-vpg_private_2_port-xan5gtbmgd74", // -> A&AI cloud-inf/v-server l-interface
								"macAddr": "fa:16:3e:53:a5:b2", // -> A&AI cloud-inf/v-server l-interface
								"networkId": "828b9558-b107-4b5e-8272-20744dac6885", // -> A&AI cloud-inf/v-server l-interface
								"ipv4Addresses": ["10.100.100.2"], // -> A&AI cloud-inf/v-server l-interface
								"networkName": "onap_oam_ext", //A&AI network
								"ipv6Addresses": [], // -> A&AI cloud-inf/v-server l-interface
								"vlans": [] // -> A&AI cloud-inf/v-server l-interface/vlan
							},
							{
								"interfaceName": "vpkg-dt-module-1-vpg_private_1_port-w6av354etjpj", // -> A&AI cloud-inf/v-server l-interface
								"macAddr": "fa:16:3e:dc:60:d3", // -> A&AI cloud-inf/v-server l-interface
								"networkId": "848e3e94-d6f8-46b1-bf72-c8477f9a42cb", // -> A&AI cloud-inf/v-server l-interface
								"networkName": "oam_network_WVly",
								"ipv4Addresses": ["10.0.110.2"], // -> A&AI cloud-inf/v-server l-interface
								"ipv6Addresses": [], // -> A&AI cloud-inf/v-server l-interface
								"vlans": [] // -> A&AI cloud-inf/v-server l-interface/vlan
							},
							{
								"interfaceName": "vpkg-dt-module-1-vpg_private_0_port-fvlhoybxja7p", // -> A&AI cloud-inf/v-server l-interface
								"macAddr": "fa:16:3e:96:59:0f", // -> A&AI cloud-inf/v-server l-interface
								"networkId": "676a05c4-65ab-46c7-86a8-6d748e9089c1", // -> A&AI cloud-inf/v-server l-interface
								"networkName": "unprotected_net_dt",
								"ipv4Addresses": ["192.168.10.200"], // -> A&AI cloud-inf/v-server l-interface
								"ipv6Addresses": [], // -> A&AI cloud-inf/v-server l-interface
								"vlans": [] // -> A&AI cloud-inf/v-server l-interface/vlan
							}
						]
					}
				],
				"lInterfaces" : [], //-> A&AI generic-vnf/l-interface
				"lagInterfaces": [], //-> A&AI generic-vnf or pnf/l-interface
				"pInterfaces": [] //-> A&AI pnf/l-interface
			},
            "distributionPolicy": "equal", //-> OOF algorithm TBD in El Alto
            "destinationPoints": [
                {//format is the same like for anchorPoint
					"nfType": "vnf",
                    "nfId": "7dad5e9c-7639-454f-8568-e68b52149127",
					"nfName": "vfw-dt-snk-1",
					"vnfType": "vfw-dt-service/vFW-SNK-DT-VF 1",
                    "vfModuleId": "63ee489f-8e02-4b7b-a49a-8587445c1b1a",
					"vfModuleName": "vfw-dt-module-2",
					"vfModuleModelInvariantId": "b50a101d-dbe3-41b1-a04b-3c44b0ec9d94", // -> A&AI generic-vnf/vf-module
					"vfModuleModelVersion": "d23ad900-9920-49da-94e3-78c76cbdf331", // -> A&AI generic-vnf/vf-module
					"vfModuleModelName": "VfwSnkDtVf..base_vfw..module-0", // -> A&AI sdc model/vf-module
                    "vServers": [
                        {
                            "vServerId": "b1b43d9b-dd47-42b2-979a-9c6ce9ac431e",
                            "vServerName": "vfw-vfw-2-dt",
							"cloudRegionId": "RegionOne", // -> A&AI cloud-inf/v-server
                            "lInterfaces": [
                                {
                                    "interfaceName": "vfw-dt-module-2-vfw_private_0_port-gn4ev6oxvvj6",
									"macAddr": "fa:16:3e:ec:39:c3",
									"networkId": "676a05c4-65ab-46c7-86a8-6d748e9089c1",
									"networkName": "unprotected_net_dt",
                                    "ipv4Addresses": ["192.168.10.110"],
									"ipv6Addresses": [],
									"vlans": []
                                },
                                {
                                    "interfaceName": "vfw-dt-module-2-vfw_private_3_port-cozwyppibrh2",
									"macAddr": "fa:16:3e:a1:18:84",
									"networkId": "828b9558-b107-4b5e-8272-20744dac6885",									
									"networkName": "onap_oam_ext",
                                    "ipv4Addresses": ["10.100.100.4"],
									"ipv6Addresses": [],
									"vlans": []
                                },
                                {
                                    "interfaceName": "vfw-dt-module-2-vfw_private_1_port-cu5rvzfeqsaq",
									"macAddr": "fa:16:3e:97:09:70",
									"networkId": "0fe48f60-1738-4fd3-941f-63a2c958b9ec",	
									"networkName": "protected_net_dt",									
                                    "ipv4Addresses": ["192.168.20.110"],
									"ipv6Addresses": [],
									"vlans": []
                                },
                                {
                                    "interfaceName": "vfw-dt-module-2-vfw_private_2_port-v4lpjnglwdbp",
									"macAddr": "fa:16:3e:25:a5:9d",
									"networkId": "848e3e94-d6f8-46b1-bf72-c8477f9a42cb",	
									"networkName": "oam_network_WVly",								
                                    "ipv4Addresses": ["10.0.110.4"],
									"ipv6Addresses": [],
									"vlans": []
                                }
                            ]
                        },
                        {
                            "vServerId": "9a3c21ba-4bcd-42bc-a4da-882d9c2183d0",
                            "vServerName": "vfw-vsn-2-dt",
							"cloudRegionId": "RegionOne", // -> A&AI cloud-inf/v-server
                            "lInterfaces": [
                                {
                                    "interfaceName": "vfw-dt-module-2-vsn_private_0_port-ctmh5td6ybkf",
									"macAddr": "fa:16:3e:76:31:07",
									"networkId": "0fe48f60-1738-4fd3-941f-63a2c958b9ec",	
									"networkName": "protected_net_dt",										
                                    "ipv4Addresses": ["192.168.20.240"],
									"ipv6Addresses": [],
									"vlans": []
                                },
                                {
                                    "interfaceName": "vfw-dt-module-2-vsn_private_1_port-nkosg44b6zn6",
									"macAddr": "fa:16:3e:67:b5:db",
									"networkId": "848e3e94-d6f8-46b1-bf72-c8477f9a42cb",	
									"networkName": "oam_network_WVly",										
                                    "ipv4Addresses": ["10.0.110.5"],
									"ipv6Addresses": [],
									"vlans": []
                                },
                                {
                                    "interfaceName": "vfw-dt-module-2-vsn_private_2_port-7svzynbtnh66",
									"macAddr": "fa:16:3e:10:20:82",
									"networkId": "0fe48f60-1738-4fd3-941f-63a2c958b9ec",
									"networkName": "onap_oam_ext",
                                    "ipv4Addresses": ["10.100.100.5"],
									"ipv6Addresses": [],
									"vlans": []
                                }
                            ]
                        }
                    ],
					"lInterfaces" : [],
					"lagInterfaces": [],
					"pInterfaces": []
                }
            ]
        }
    ]
}

//vlan
{
	"interfaceName": "", //-> A&AI vlan
	"vlanIdInner": "", //-> A&AI vlan
	"vlanIdOuter": "", //-> A&AI vlan
	"vpnKey": "", //-> A&AI vlan
	"ipv4Addresses": [],
	"ipv6Addresses": [],
}

//p-interface
{
	"interfaceName": "", //-> A&AI p-interface
	"type": "", //-> A&AI p-interface
	"role": "", //-> A&AI p-interface
	"macAddr": "1C-A7-34-17-D1-44", //-> A&AI p-interface
	"lInterfaces" : [] //-> A&AI p-interface/l-interfaces
}

//lag-interface
{
	"interfaceName": "", //-> A&AI lag-interface
	"role": "", //-> A&AI lag-interface
	"lInterfaces" : [] //-> A&AI l-interface
}

...