Automatic WIM selection for inter-datacenter networks
Proposers
- Lluís Gifre (CTTC)
- Gerardo García (Telefónica)
Description
When a multi-site NS needs to be created, no WIM is automatically selected by OSM. The user needs to specify the WIM account to be used for a NS VLD. In addition, the use of a WIM only works for dataplane networks where there is WAN port mapping between the VIM SDN infra and the WIM SDN infra.
In principle, OSM has enough information to derive the WIM to be used if not specified. It should be enough for OSM to know that two VNF will be deployed in different VIM and that there is a WIM interconnecting both VIM. Assuming that there is a WIM interconnecting VIM1 and VIM2, the following instantiation commands should work without the need of specifying more info:
- The user specifies that VNF1 lands in VIM1 and VNF2 lands in VIM2.
osm ns-create --ns_name multi-site-ns --nsd_name hackfest_multivdu-ns --vim_account vim1 --config '{vnf: [ {member-vnf-index: vnf1, vim_account: vim1}, {member-vnf-index: vnf2, vim_account: vim2} ]}
- The user specifies that VNF1 lands in VIM1 and VNF2 lands in VIM2. In addition, the user specifies a VIM network mapping in order to use pre-created VIM networks: for the NS VLD "datanet", the user wants to use "data72" network in VIM "vim1" and "data73" network in VIM "vim2", as follows:
osm ns-create --ns_name multi-site-ns --nsd_name hackfest_multivdu-ns --vim_account vim1 --config '{vnf:[{member-vnf-index: vnf1, vim_account: vim1},{member-vnf-index: vnf2, vim_account: vim2}],vld:[{name: mgmtnet, vim-network-name: {vim1: mgmt, vim2: mgmt}},{name: datanet, vim-network-name: {vim1: data72, vim2: data73}}]}'
- In addition to the second use case, the end user might want to indicate the specific WIM account to be used (in case there are multiple candidate WIMs interconnecting the VIM)
osm ns-create --ns_name multi-site-ns --nsd_name hackfest_multivdu-ns --vim_account vim1 --config '{vnf:[{member-vnf-index: vnf1, vim_account: vim1},{member-vnf-index: vnf2, vim_account: vim2}],vld:[{name: mgmtnet, vim-network-name: {vim1: mgmt, vim2: mgmt}},{name: datanet, wim_account: wim1, vim-network-name: {vim1: data72, vim2: data73}}]}'
- Finally, the use of a WIM could be disabled at instantiation if wim_account is set to False:
osm ns-create --ns_name multi-site-ns --nsd_name hackfest_multivdu-ns --vim_account vim1 --config '{vnf:[{member-vnf-index: vnf1, vim_account: vim1},{member-vnf-index: vnf2, vim_account: vim2}],vld:[{name: mgmtnet, vim-network-name: {vim1: mgmt, vim2: mgmt}},{name: datanet, wim_account: False, vim-network-name: {vim1: data72, vim2: data73}}]}'
This feature will cover the following:
- Automatic selection of WIM
- Update of the current workflows to meet the previous use cases
- Population of the missing granular tasks (WIM network creation, etc.) in OSM components
Demo or definition of done
A Robot tests will be created to test the instantiation of a NS with a VLD interconnecting VNF in different VIM with automatic selection of the WIM. The feature will be considered done when the Robot test passes.