Versions Compared

Key

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


View file
nameTraffic Distribution Workflow Dublin Requirements.pptx
height250

...

Elite soft json viewer
width600
height700
{
   	 "requestInfo": {
		        "transactionId": "xxx-xxx-xxxx",
		
        "requestId": "yyy-yyy-yyyy",
		
        "callbackUrl": "https://wiki.onap.org:5000/callbackUrl/",
		
        "sourceId": "SO",
		
        "requestType": "create",
		
        "numSolutions": "N",
		
        "optimizers": ["placement"],
		
        "timeout": 600
	    },
	    "placementInfo": {
		        "requestParameters": {
			            "sourceVnfId": "GUID"
		
        },
		
        "subscriberInfo": {
			
            "globalSubscriberId": "xxx-xx-xxx",
			
            "subscriberName": "subscriber_x"
		        },
		        "placementDemands": [{
				                "resourceModuleName": "vFWSNK",
				
                "serviceResourceId": "vFW-xx",
				
                "tenantId": "vFW-yy",
				
                "resourceModelInfo": {
					"modelInvariantId": "                    "modelInvariantId": "vFW-modelInvariantId",
					
                    "modelVersionId": "vFW-versionId",
					
                    "modelName": "vFW-model",
					"modelType": "resource",
					                   "modelType": "resource",
                    "modelVersion": "1.0",
					
                    "modelCustomizationName": "vFW-customeModelName"
				},
				                },
                "requiredCandidates": [{
						
                        "identifierType": "vfModuleId",
						"cloudOwner": "",
						"identifiers": ["requiredvFWVfModuleId-GUID"]
					}
				],
				"excludedCandidates": [{
						"identifierType": "vfModuleId",
						                        "cloudOwner": "",
						"identifiers": ["excludedvFWVfModuleId-GUID"] 					}
				],
				"placementDemands": [{
						"resourceModuleName": "vPGN",
						"serviceResourceId": "vPGN-xx",
						"tenantId": "vPGN-yy",
						"resourceModelInfo": {
							"modelInvariantId": "vPGN-modelInvariantId",
							"modelVersionId": "vPGN-versionId",
							"modelName": "vPGN-model",
							"modelType": "resource",
							"modelVersion": "1.0",
							"modelCustomizationName": "vPGN-customeModelName"
						},
						"requiredCandidates": [{
								                      "identifiers": ["requiredvFWVfModuleId-GUID"]
                    }
                ],
                "excludedCandidates": [{
                        "identifierType": "vfModuleId",
                        "cloudOwner": "",
                        "identifiers": ["excludedvFWVfModuleId-GUID"]
                    }
                ]
            },
            {
                "resourceModuleName": "vPGN",
                "serviceResourceId": "vPGN-xx",
                "tenantId": "vPGN-yy",
                "resourceModelInfo": {
                    "modelInvariantId": "vPGN-modelInvariantId",
                    "modelVersionId": "vPGN-versionId",
                    "modelName": "vPGN-model",
                    "modelType": "resource",
                    "modelVersion": "1.0",
                    "modelCustomizationName": "vPGN-customeModelName"
                },
                "requiredCandidates": [{
                        "identifierType": "vfModuleId",
                        "cloudOwner": "",
                        "identifiers": ["requiredvPGNVfModuleId-GUID"]
                    }
                ],
                "excludedCandidates": [{
                        "identifierType": "vfModuleId",
								"cloudOwner": "",
								
                        "cloudOwner": "",
                        "identifiers": ["requiredvPGNVfModuleIdexcludedvPGNVfModuleId-GUID"]
							}
						],
						"excludedCandidates": [{
								"identifierType": "vfModuleId",
								"cloudOwner": "",
								"identifiers": ["excludedvPGNVfModuleId-GUID"]
							}
						]
					}
				]
			}
		]
	}
}


                    }
                ]
            }
        ]
    }
}

OOF - SO: 


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": "515e7c01-de6f-4cd5-8e2a-e11565ca6709",//vnf-id or pnf-id -> A&AI generic-vnf or pnf
				"nfName": "Ete_vPKG_7fa9e563-bf0f-4b4c-966c-0f2179105c1c",//vnf-name or pnf-name  -> A&AI generic-vnf or pnf
				"ipv4OamAddress": "10.12.0.6",  // -> A&AI generic-vnf or pnf
				"ipv6OamAddress": "",  // -> A&AI generic-vnf or pnf
				//"pnfIpv4Address": "10.100.1.30",// -> A&AI pnf
				//"pnfIpv4Address": "",// -> A&AI  pnf
				"vnfType": "demoVFWCL/3c04ffd1-3ff5-4a14-8c59 0", // -> A&AI generic-vnf 
				"vfModuleId": "f6c6c2bf-4765-4fb1-875d-b1ee40d5282b", // -> A&AI generic-vnf/vf-module
				"vfModuleName": "vpkg-dt-module-1", // -> A&AI generic-vnf/vf-module 
				"vServers": [ // -> A&AI cloud-inf/v-server
					{
						"vServerId": "65ebad74-801b-4546-820b-2d84c1460a82", // -> A&AI cloud-inf/v-server
						"vServerName": "vpkg-dt-1", // -> A&AI cloud-inf/v-server
						"lInterfaces": [ // -> A&AI cloud-inf/v-server l-interface
							{
								"interfaceName": "eth1", // -> A&AI cloud-inf/v-server l-interface
								"macAddr": "37-78-15-9A-28-4B", // -> A&AI cloud-inf/v-server l-interface
								"networkName": "unprotected", // -> A&AI cloud-inf/v-server l-interface
								"ipv4Addresses": ["192.168.20.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": "c360cd53-0ba8-4986-8f80-cf1257cf603b",
					"nfName": "Ete_vFWSNK_7fa9e563-bf0f-4b4c-966c-0f2179105c1c",
					"vnfType": "demoVFWCL/e8dd5878-bd48-4f3f-948f 0",
                    "vfModuleId": "f6c6c2bf-4765-4fb1-875d-b1ee40d5282b",
					"vfModuleName": "vfw-dt-module-1",
                    "vServers": [
                        {
                            "vServerId": "37f5c62d-2d6c-4bd4-b421-26331c6c6423 ",
                            "vServerName": "vfw-dt-1",
                            "lInterfaces": [
                                {
                                    "interfaceName": "eth1",
									"macAddr": "B7-B9-4F-AD-DD-05",
									"networkName": "unprotected",
                                    "ipv4Addresses": ["192.168.10.100"],
									"ipv6Addresses": [],
									"vlans": []
                                },
                                {
                                    "interfaceName": "eth2",
									"macAddr": "FD-98-19-11-C7-88",
									"networkName": "protected",									
                                    "ipv4Addresses": ["192.168.20.200"],
									"ipv6Addresses": [],
									"vlans": []
                                }
                            ]
                        },
                        {
                            "vServerId": "362d35e1-bb7e-4108-9d61-1bd6f9ab7c62",
                            "vServerName": "vsink-dt-1",
                            "lInterfaces": [
                                {
                                    "interfaceName": "eth1",
									"macAddr": "1C-A7-34-17-D1-44",
									"networkName": "protected",											
                                    "ipv4Addresses": ["192.168.20.201"],
									"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
}

...

The following REST calls to retrieve topology and VNF candidates from AAI: