"""
from core.traffic_controller_rfc2544 import TrafficControllerRFC2544
+from core.vswitch_controller_clean import VswitchControllerClean
from core.vswitch_controller_p2p import VswitchControllerP2P
from core.vswitch_controller_pvp import VswitchControllerPVP
from core.vswitch_controller_pvvp import VswitchControllerPVVP
return TrafficControllerRFC2544(trafficgen_class)
-def create_vswitch(deployment_scenario, vswitch_class, traffic):
+def create_vswitch(deployment_scenario, vswitch_class, traffic,
+ tunnel_operation=None):
"""Return a new IVSwitchController for the deployment_scenario.
The returned controller is configured with the given vSwitch class.
:param deployment_scenario: The deployment scenario name
:param vswitch_class: Reference to vSwitch class to be used.
:param traffic: Dictionary with traffic specific details
+ :param tunnel_operation encapsulation/decapsulation or None
:return: IVSwitchController for the deployment_scenario
"""
deployment_scenario = deployment_scenario.lower()
elif deployment_scenario.find("pvvp") >= 0:
return VswitchControllerPVVP(vswitch_class, traffic)
elif deployment_scenario.find("op2p") >= 0:
- return VswitchControllerOP2P(vswitch_class, traffic)
+ return VswitchControllerOP2P(vswitch_class, traffic, tunnel_operation)
+ elif deployment_scenario.find("clean") >= 0:
+ return VswitchControllerClean(vswitch_class, traffic)
+
def create_vnf(deployment_scenario, vnf_class):
"""Return a new VnfController for the deployment_scenario.
elif loadgen_type.find("stress") >= 0:
return Stress(loadgen_cfg)
-def create_pktfwd(pktfwd_class):
+def create_pktfwd(deployment, pktfwd_class):
"""Return a new packet forwarder controller
The returned controller is configured with the given
packet forwarder class.
:param pktfwd_class: Reference to packet forwarder class to be used.
+ :param deployment: The deployment scenario name
:return: packet forwarder controller
"""
- return PktFwdController(pktfwd_class)
+ return PktFwdController(deployment, pktfwd_class)