From b6c4948fd994223cff257cbdae7146da1339b58d Mon Sep 17 00:00:00 2001 From: Alina Quereilhac Date: Mon, 15 Dec 2014 12:49:53 +0100 Subject: [PATCH] Changed the endpoint_ip and endpoint_prefix attributes of TAP/TUN endpoints for ip and prefix --- examples/openvswitch/ovs_ping_2switches.py | 10 ++--- .../openvswitch/ovs_ping_3switches_line.py | 12 +++--- .../openvswitch/ovs_ping_3switches_loop.py | 12 +++--- ...TapTunnel_performance_test_triangleTopo.py | 30 ++++++------- src/nepi/resources/linux/tap.py | 33 ++++++++------- .../planetlab/openvswitch/ovsport.py | 6 +-- src/nepi/resources/planetlab/tap.py | 32 +++++++------- src/nepi/resources/planetlab/vroute.py | 4 +- test/resources/linux/gretunnel.py | 16 +++---- ...s_ns3_linux.py => cross_ns3_linux_ping.py} | 13 ++++-- test/resources/linux/ns3/ns3dceapplication.py | 2 +- test/resources/linux/tap.py | 21 ++++++---- test/resources/linux/tun.py | 21 ++++++---- test/resources/linux/udptunnel.py | 24 +++++------ test/resources/planetlab/gretunnel.py | 42 ++++++++----------- test/resources/planetlab/tap.py | 8 ++-- test/resources/planetlab/tun.py | 8 ++-- test/resources/planetlab/udptunnel.py | 20 ++++----- 18 files changed, 162 insertions(+), 152 deletions(-) rename test/resources/linux/ns3/{cross_ns3_linux.py => cross_ns3_linux_ping.py} (95%) diff --git a/examples/openvswitch/ovs_ping_2switches.py b/examples/openvswitch/ovs_ping_2switches.py index f48210f2..799917f9 100644 --- a/examples/openvswitch/ovs_ping_2switches.py +++ b/examples/openvswitch/ovs_ping_2switches.py @@ -62,10 +62,10 @@ def add_port(ec, port_name, network, ovs): ec.register_connection(port, ovs) return port -def add_tap(ec, endpoint_ip, endpoint_prefix, pointopoint, node): +def add_tap(ec, ip, prefix, pointopoint, node): tap = ec.register_resource("planetlab::Tap") - ec.set(tap, "endpoint_ip", endpoint_ip) - ec.set(tap, "endpoint_prefix", endpoint_prefix) + ec.set(tap, "ip", ip) + ec.set(tap, "prefix", prefix) ec.set(tap, "pointopoint", pointopoint) ec.set(tap, "up", True) ec.register_connection(tap, node) @@ -120,8 +120,8 @@ h1_node = add_node(ec, host1, slicename, pl_user, pl_password) h2_node = add_node(ec, host2, slicename, pl_user, pl_password) # Add tap devices -tap1 = add_tap(ec, "192.168.3.3", 24, "192.168.3.1", h1_node) -tap2 = add_tap(ec, "192.168.3.4", 24, "192.168.3.2", h2_node) +tap1 = add_tap(ec, "192.168.3.3", "24", "192.168.3.1", h1_node) +tap2 = add_tap(ec, "192.168.3.4", "24", "192.168.3.2", h2_node) # Connect the nodes tunnel1 = add_tunnel(ec, port1, tap1) diff --git a/examples/openvswitch/ovs_ping_3switches_line.py b/examples/openvswitch/ovs_ping_3switches_line.py index 4182d81f..d686ef32 100644 --- a/examples/openvswitch/ovs_ping_3switches_line.py +++ b/examples/openvswitch/ovs_ping_3switches_line.py @@ -60,10 +60,10 @@ def add_port(ec, port_name, network, ovs): ec.register_connection(port, ovs) return port -def add_tap(ec, endpoint_ip, endpoint_prefix, pointopoint, node): +def add_tap(ec, ip, prefix, pointopoint, node): tap = ec.register_resource("planetlab::Tap") - ec.set(tap, "endpoint_ip", endpoint_ip) - ec.set(tap, "endpoint_prefix", endpoint_prefix) + ec.set(tap, "ip", ip) + ec.set(tap, "prefix", prefix) ec.set(tap, "pointopoint", pointopoint) ec.set(tap, "up", True) ec.register_connection(tap, node) @@ -126,9 +126,9 @@ h2_node = add_node(ec, host2, slicename, pl_user, pl_password) h3_node = add_node(ec, host3, slicename, pl_user, pl_password) # Add tap devices -tap1 = add_tap(ec, "192.168.3.1", 24, "192.168.3.2", h1_node) -tap2 = add_tap(ec, "192.168.3.3", 24, "192.168.3.4", h2_node) -tap3 = add_tap(ec, "192.168.3.5", 24, "192.168.3.6", h3_node) +tap1 = add_tap(ec, "192.168.3.1", "24", "192.168.3.2", h1_node) +tap2 = add_tap(ec, "192.168.3.3", "24", "192.168.3.4", h2_node) +tap3 = add_tap(ec, "192.168.3.5", "24", "192.168.3.6", h3_node) # Connect the nodes tunnel1 = add_tunnel(ec, port1, tap1) diff --git a/examples/openvswitch/ovs_ping_3switches_loop.py b/examples/openvswitch/ovs_ping_3switches_loop.py index 3052b78a..72a6fad0 100644 --- a/examples/openvswitch/ovs_ping_3switches_loop.py +++ b/examples/openvswitch/ovs_ping_3switches_loop.py @@ -70,10 +70,10 @@ def add_port(ec, port_name, network, ovs): ec.register_connection(port, ovs) return port -def add_tap(ec, endpoint_ip, endpoint_prefix, pointopoint, node): +def add_tap(ec, ip, prefix, pointopoint, node): tap = ec.register_resource("planetlab::Tap") - ec.set(tap, "endpoint_ip", endpoint_ip) - ec.set(tap, "endpoint_prefix", endpoint_prefix) + ec.set(tap, "ip", ip) + ec.set(tap, "prefix", prefix) ec.set(tap, "pointopoint", pointopoint) ec.set(tap, "up", True) ec.register_connection(tap, node) @@ -139,9 +139,9 @@ h2_node = add_node(ec, host2, slicename, pl_user, pl_password) h3_node = add_node(ec, host3, slicename, pl_user, pl_password) # Add tap devices -tap1 = add_tap(ec, "192.168.3.1", 24, "192.168.3.2", h1_node) -tap2 = add_tap(ec, "192.168.3.3", 24, "192.168.3.4", h2_node) -tap3 = add_tap(ec, "192.168.3.5", 24, "192.168.3.6", h3_node) +tap1 = add_tap(ec, "192.168.3.1", "24", "192.168.3.2", h1_node) +tap2 = add_tap(ec, "192.168.3.3", "24", "192.168.3.4", h2_node) +tap3 = add_tap(ec, "192.168.3.5", "24", "192.168.3.6", h3_node) # Connect the nodes tunnel1 = add_tunnel(ec, port1, tap1) diff --git a/examples/openvswitch/ping_over_udpTapTunnel_performance_test_triangleTopo.py b/examples/openvswitch/ping_over_udpTapTunnel_performance_test_triangleTopo.py index 51aa60db..50328226 100644 --- a/examples/openvswitch/ping_over_udpTapTunnel_performance_test_triangleTopo.py +++ b/examples/openvswitch/ping_over_udpTapTunnel_performance_test_triangleTopo.py @@ -50,10 +50,10 @@ def add_node(ec, host, user): ec.set(node, "cleanProcesses", True) return node -def add_tap(ec, endpoint_ip, endpoint_prefix, pointopoint, node): +def add_tap(ec, ip, prefix, pointopoint, node): tap = ec.register_resource("planetlab::Tap") - ec.set(tap, "endpoint_ip", endpoint_ip) - ec.set(tap, "endpoint_prefix", endpoint_prefix) + ec.set(tap, "ip", ip) + ec.set(tap, "prefix", prefix) ec.set(tap, "pointopoint", pointopoint) ec.set(tap, "up", True) ec.register_connection(tap, node) @@ -94,28 +94,28 @@ ec = ExperimentController(exp_id = "test-tap-tunnel") ## Create The topology ## host1 = add_node(ec, hostname_host1, user) -tap1 = add_tap(ec, "192.168.3.1", 24, "192.168.3.2", host1) +tap1 = add_tap(ec, "192.168.3.1", "24", "192.168.3.2", host1) switch1 = add_node(ec, hostname_switch1, user) -tap2 = add_tap(ec, "192.168.3.2", 24, "192.168.3.1", switch1) -tap102 = add_tap(ec, "192.168.3.102", 29, "192.168.3.104", switch1) -tap152 = add_tap(ec, "192.168.3.152", 29, "192.168.3.156", switch1) +tap2 = add_tap(ec, "192.168.3.2", "24", "192.168.3.1", switch1) +tap102 = add_tap(ec, "192.168.3.102", "29", "192.168.3.104", switch1) +tap152 = add_tap(ec, "192.168.3.152", "29", "192.168.3.156", switch1) host2 = add_node(ec, hostname_host2, user) -tap13 = add_tap(ec, "192.168.3.13", 24, "192.168.3.14", host2) +tap13 = add_tap(ec, "192.168.3.13", "24", "192.168.3.14", host2) switch2 = add_node(ec, hostname_switch2, user) -tap14 = add_tap(ec, "192.168.3.14", 24, "192.168.3.13", switch2) -tap104 = add_tap(ec, "192.168.3.104", 29, "192.168.3.102", switch2) -tap204 = add_tap(ec, "192.168.3.204", 29, "192.168.3.206", switch2) +tap14 = add_tap(ec, "192.168.3.14", "24", "192.168.3.13", switch2) +tap104 = add_tap(ec, "192.168.3.104", "29", "192.168.3.102", switch2) +tap204 = add_tap(ec, "192.168.3.204", "29", "192.168.3.206", switch2) host3 = add_node(ec, hostname_host3, user) -tap25 = add_tap(ec, "192.168.3.25", 24, "192.168.3.26", host3) +tap25 = add_tap(ec, "192.168.3.25", "24", "192.168.3.26", host3) switch3 = add_node(ec, hostname_switch3, user) -tap26 = add_tap(ec, "192.168.3.26", 24, "192.168.3.25", switch3) -tap156 = add_tap(ec, "192.168.3.156", 29, "192.168.3.152", switch3) -tap206 = add_tap(ec, "192.168.3.206", 29, "192.168.3.204", switch3) +tap26 = add_tap(ec, "192.168.3.26", "24", "192.168.3.25", switch3) +tap156 = add_tap(ec, "192.168.3.156", "29", "192.168.3.152", switch3) +tap206 = add_tap(ec, "192.168.3.206", "29", "192.168.3.204", switch3) ## Create the UDP Tunnel ## udptun1 = add_udptun(ec, tap1, tap2) diff --git a/src/nepi/resources/linux/tap.py b/src/nepi/resources/linux/tap.py index 636e4710..685db9ee 100644 --- a/src/nepi/resources/linux/tap.py +++ b/src/nepi/resources/linux/tap.py @@ -39,14 +39,13 @@ class LinuxTap(LinuxApplication): @classmethod def _register_attributes(cls): - endpoint_ip = Attribute("endpoint_ip", "IPv4 Address", + ip = Attribute("ip", "IPv4 Address", flags = Flags.Design) mac = Attribute("mac", "MAC Address", flags = Flags.Design) - endpoint_prefix = Attribute("endpoint_prefix", "IPv4 network prefix", - type = Types.Integer, + prefix = Attribute("prefix", "IPv4 network prefix", flags = Flags.Design) mtu = Attribute("mtu", "Maximum transmition unit for device", @@ -85,9 +84,9 @@ class LinuxTap(LinuxApplication): "Bash script to be executed before releasing the resource", flags = Flags.Design) - cls._register_attribute(endpoint_ip) + cls._register_attribute(ip) cls._register_attribute(mac) - cls._register_attribute(endpoint_prefix) + cls._register_attribute(prefix) cls._register_attribute(mtu) cls._register_attribute(devname) cls._register_attribute(up) @@ -334,14 +333,15 @@ class LinuxTap(LinuxApplication): def _udp_connect_command(self, remote_endpoint, connection_run_home, cipher, cipher_key, bwlimit, txqueuelen): - # Set the remote endpoint - self.set("pointopoint", remote_endpoint.get("endpoint_ip")) + # Set the remote endpoint to the IP of the device + self.set("pointopoint", remote_endpoint.get("ip")) # Planetlab TAPs always use PI headers from nepi.resources.planetlab.tap import PlanetlabTap if self.is_rm_instance(PlanetlabTap.get_rtype()): self.set("pi", True) + # Public IP of the remote NODE to stablish tunnel remote_ip = remote_endpoint.node.get("ip") local_port_file = os.path.join(self.run_home, @@ -390,8 +390,9 @@ class LinuxTap(LinuxApplication): return command def _gre_connect_command(self, remote_endpoint, connection_run_home): - # Set the remote endpoint - self.set("pointopoint", remote_endpoint.get("endpoint_ip")) + # Set the remote endpoint to (private) device IP + self.set("pointopoint", remote_endpoint.get("ip")) + ## public node IP self.set("greRemote", remote_endpoint.node.get("ip")) # Generate GRE connect command @@ -478,9 +479,9 @@ class LinuxTap(LinuxApplication): self.vif_prefix, "pi" if self.get("pi") else "")) start_command.append("sudo -S ip link set %s up" % self.get("deviceName")) - start_command.append("sudo -S ip addr add %s/%d dev %s" % ( - self.get("endpoint_ip"), - self.get("endpoint_prefix"), + start_command.append("sudo -S ip addr add %s/%s dev %s" % ( + self.get("ip"), + self.get("prefix"), self.get("deviceName"), )) @@ -512,11 +513,11 @@ class LinuxTap(LinuxApplication): self.node.get("ip"), self.get("greKey") )) - command.append("sudo -S ip addr add %s/%d peer %s/%d dev %s" % ( - self.get("endpoint_ip"), - self.get("endpoint_prefix"), + command.append("sudo -S ip addr add %s/%s peer %s/%s dev %s" % ( + self.get("ip"), + self.get("prefix"), self.get("pointopoint"), - self.get("endpoint_prefix"), + self.get("prefix"), self.get("deviceName"), )) command.append("sudo -S ip link set %s up " % self.get("deviceName")) diff --git a/src/nepi/resources/planetlab/openvswitch/ovsport.py b/src/nepi/resources/planetlab/openvswitch/ovsport.py index 9bdc4153..db2609fc 100644 --- a/src/nepi/resources/planetlab/openvswitch/ovsport.py +++ b/src/nepi/resources/planetlab/openvswitch/ovsport.py @@ -53,7 +53,7 @@ class OVSPort(LinuxApplication): """ port_name = Attribute("port_name", "Name of the port", flags = Flags.Design) - endpoint_ip = Attribute("endpoint_ip", "IP of the endpoint. This is the attribute " + ip = Attribute("ip", "IP of the endpoint. This is the attribute " "you should use to establish a tunnel or a remote " "connection between endpoint", flags = Flags.Design) @@ -61,7 +61,7 @@ class OVSPort(LinuxApplication): flags = Flags.Design) cls._register_attribute(port_name) - cls._register_attribute(endpoint_ip) + cls._register_attribute(ip) cls._register_attribute(network) def __init__(self, ec, guid): @@ -278,7 +278,7 @@ class OVSPort(LinuxApplication): self.create_port() end_ip = self.ovsswitch.get('virtual_ip_pref').split('/') - self.set("endpoint_ip", end_ip[0]) + self.set("ip", end_ip[0]) #Check the status of the OVS Switch self.ovsswitch.ovs_status() diff --git a/src/nepi/resources/planetlab/tap.py b/src/nepi/resources/planetlab/tap.py index e59e94a5..2f2975ac 100644 --- a/src/nepi/resources/planetlab/tap.py +++ b/src/nepi/resources/planetlab/tap.py @@ -36,7 +36,7 @@ class PlanetlabTap(LinuxApplication): @classmethod def _register_attributes(cls): - endpoint_ip = Attribute("endpoint_ip", "IP of the endpoint. This is the attribute " + ip = Attribute("ip", "IP of the endpoint. This is the attribute " "you should use to establish a tunnel or a remote " "connection between endpoint", flags = Flags.Design) @@ -44,8 +44,7 @@ class PlanetlabTap(LinuxApplication): mac = Attribute("mac", "MAC Address", flags = Flags.Design) - endpoint_prefix = Attribute("endpoint_prefix", "IPv4 network prefix of the endpoint", - type = Types.Integer, + prefix = Attribute("prefix", "IPv4 network prefix of the endpoint", flags = Flags.Design) mtu = Attribute("mtu", "Maximum transmition unit for device", @@ -84,9 +83,9 @@ class PlanetlabTap(LinuxApplication): "Bash script to be executed before releasing the resource", flags = Flags.Design) - cls._register_attribute(endpoint_ip) + cls._register_attribute(ip) cls._register_attribute(mac) - cls._register_attribute(endpoint_prefix) + cls._register_attribute(prefix) cls._register_attribute(mtu) cls._register_attribute(devname) cls._register_attribute(up) @@ -342,14 +341,12 @@ class PlanetlabTap(LinuxApplication): return True - def initiate_udp_connection(self, remote_endpoint, connection_app_home, connection_run_home, cipher, cipher_key, bwlimit, txqueuelen): port = self.udp_connect(remote_endpoint, connection_app_home, connection_run_home, cipher, cipher_key, bwlimit, txqueuelen) return port - def udp_connect(self, remote_endpoint, connection_app_home, connection_run_home, cipher, cipher_key, bwlimit, txqueuelen): udp_connect_command = self._udp_connect_command( @@ -393,9 +390,10 @@ class PlanetlabTap(LinuxApplication): def _udp_connect_command(self, remote_endpoint, connection_run_home, cipher, cipher_key, bwlimit, txqueuelen): - # Set the remote endpoint - self.set("pointopoint", remote_endpoint.get("endpoint_ip")) + # Set the remote endpoint, (private) IP of the device + self.set("pointopoint", remote_endpoint.get("ip")) + # Public IP of the node remote_ip = remote_endpoint.node.get("ip") local_port_file = os.path.join(self.run_home, @@ -500,11 +498,10 @@ class PlanetlabTap(LinuxApplication): return result - - def _gre_connect_command(self, remote_endpoint, connection_run_home): - # Set the remote endpoint - self.set("pointopoint", remote_endpoint.get("endpoint_ip")) + # Set the remote endpoint, (private) IP of the device + self.set("pointopoint", remote_endpoint.get("ip")) + # Public IP of the node self.set("greRemote", remote_endpoint.node.get("ip")) # Generate GRE connect command @@ -526,7 +523,6 @@ class PlanetlabTap(LinuxApplication): return command - @property def _start_command(self): if self.gre_enabled: @@ -535,8 +531,8 @@ class PlanetlabTap(LinuxApplication): command = ["sudo -S python ${SRC}/pl-vif-create.py"] command.append("-t %s" % self.vif_type) - command.append("-a %s" % self.get("endpoint_ip")) - command.append("-n %d" % self.get("endpoint_prefix")) + command.append("-a %s" % self.get("ip")) + command.append("-n %s" % self.get("prefix")) command.append("-f %s " % self.vif_name_file) command.append("-S %s " % self.sock_name) @@ -578,8 +574,8 @@ class PlanetlabTap(LinuxApplication): command.append("-u %s" % self.node.get("username")) command.append("-N %s" % device_name) command.append("-t %s" % self.vif_type) - command.append("-a %s" % self.get("endpoint_ip")) - command.append("-n %d" % self.get("endpoint_prefix")) + command.append("-a %s" % self.get("ip")) + command.append("-n %s" % self.get("prefix")) if self.get("snat") == True: command.append("-s") diff --git a/src/nepi/resources/planetlab/vroute.py b/src/nepi/resources/planetlab/vroute.py index 3c10d78d..b2568b3d 100644 --- a/src/nepi/resources/planetlab/vroute.py +++ b/src/nepi/resources/planetlab/vroute.py @@ -147,7 +147,7 @@ class PlanetlabVroute(LinuxApplication): command = ["sudo -S python ${SRC}/pl-vroute.py"] command.append("-a %s" % self.get("action")) command.append("-n %s" % self.get("network")) - command.append("-p %d" % self.tap.get("endpoint_prefix")) + command.append("-p %s" % self.tap.get("prefix")) command.append("-g %s" % self.tap.get("pointopoint")) command.append("-f %s" % self.tap.get("deviceName")) return " ".join(command) @@ -157,7 +157,7 @@ class PlanetlabVroute(LinuxApplication): command = ["sudo -S python ${SRC}/pl-vroute.py"] command.append("-a %s" % "del") command.append("-n %s" % self.get("network")) - command.append("-p %d" % self.tap.get("endpoint_prefix")) + command.append("-p %s" % self.tap.get("prefix")) command.append("-g %s" % self.tap.get("pointopoint")) command.append("-f %s" % self.tap.get("deviceName")) return " ".join(command) diff --git a/test/resources/linux/gretunnel.py b/test/resources/linux/gretunnel.py index 0d55fc7e..a4f7d019 100755 --- a/test/resources/linux/gretunnel.py +++ b/test/resources/linux/gretunnel.py @@ -51,8 +51,8 @@ class LinuxGRETunnelTestCase(unittest.TestCase): ec.set(node1, "cleanProcesses", True) tap1 = ec.register_resource("linux::Tap") - ec.set(tap1, "endpoint_ip", "%s.1" % self.netblock) - ec.set(tap1, "endpoint_prefix", 32) + ec.set(tap1, "ip", "%s.1" % self.netblock) + ec.set(tap1, "prefix", "32") ec.register_connection(tap1, node1) node2 = ec.register_resource("linux::Node") @@ -63,8 +63,8 @@ class LinuxGRETunnelTestCase(unittest.TestCase): ec.set(node2, "cleanProcesses", True) tap2 = ec.register_resource("linux::Tap") - ec.set(tap2, "endpoint_ip", "%s.2" % self.netblock) - ec.set(tap2, "endpoint_prefix", 32) + ec.set(tap2, "ip", "%s.2" % self.netblock) + ec.set(tap2, "prefix", "32") ec.register_connection(tap2, node2) gretun = ec.register_resource("linux::GRETunnel") @@ -106,8 +106,8 @@ class LinuxGRETunnelTestCase(unittest.TestCase): ec.set(node1, "cleanProcesses", True) tun1 = ec.register_resource("linux::Tun") - ec.set(tun1, "endpoint_ip", "%s.1" % self.netblock) - ec.set(tun1, "endpoint_prefix", 32) + ec.set(tun1, "ip", "%s.1" % self.netblock) + ec.set(tun1, "prefix", "32") ec.register_connection(tun1, node1) node2 = ec.register_resource("linux::Node") @@ -118,8 +118,8 @@ class LinuxGRETunnelTestCase(unittest.TestCase): ec.set(node2, "cleanProcesses", True) tun2 = ec.register_resource("linux::Tun") - ec.set(tun2, "endpoint_ip", "%s.2" % self.netblock) - ec.set(tun2, "endpoint_prefix", 32) + ec.set(tun2, "ip", "%s.2" % self.netblock) + ec.set(tun2, "prefix", "32") ec.register_connection(tun2, node2) udptun = ec.register_resource("linux::GRETunnel") diff --git a/test/resources/linux/ns3/cross_ns3_linux.py b/test/resources/linux/ns3/cross_ns3_linux_ping.py similarity index 95% rename from test/resources/linux/ns3/cross_ns3_linux.py rename to test/resources/linux/ns3/cross_ns3_linux_ping.py index e7fc1966..9c84930c 100755 --- a/test/resources/linux/ns3/cross_ns3_linux.py +++ b/test/resources/linux/ns3/cross_ns3_linux_ping.py @@ -54,6 +54,14 @@ def add_fd_device(ec, node, ip, prefix): return dev +def add_tap_device(ec, node, ip, prefix): + dev = ec.register_resource("linux::Tap") + ec.set(dev, "ip", ip) + ec.set(dev, "prefix", prefix) + ec.register_connection(node, dev) + + return dev + def add_point2point_device(ec, node, ip, prefix): dev = ec.register_resource("ns3::PointToPointNetDevice") ec.set(dev, "ip", ip) @@ -118,10 +126,7 @@ class LinuxNS3FdNetDeviceTest(unittest.TestCase): ec.enable_trace(fddev, "promiscPcap") ec.enable_trace(fddev, "ascii") - tap = ec.register_resource("linux::Tap") - ec.set(tap, "endpoint_ip", "10.0.1.1") - ec.set(tap, "endpoint_prefix", 30) - ec.register_connection(tap, node) + tap = add_tap_device(ec, node, "10.0.1.1", "30") crosslink = ec.register_resource("linux::ns3::TapFdLink") ec.register_connection(crosslink, tap) diff --git a/test/resources/linux/ns3/ns3dceapplication.py b/test/resources/linux/ns3/ns3dceapplication.py index c24d07df..f6ff304d 100755 --- a/test/resources/linux/ns3/ns3dceapplication.py +++ b/test/resources/linux/ns3/ns3dceapplication.py @@ -153,7 +153,7 @@ class LinuxNS3DceApplicationTest(unittest.TestCase): ec.set(node, "identity", identity) ec.set(node, "cleanProcesses", True) - #ec.set(node, "cleanHome", True) + #ec.set(node, "cleanExperiment", True) simu = ec.register_resource("linux::ns3::Simulation") ec.set(simu, "verbose", True) diff --git a/test/resources/linux/tap.py b/test/resources/linux/tap.py index 109fbb66..7f5c07ab 100755 --- a/test/resources/linux/tap.py +++ b/test/resources/linux/tap.py @@ -34,20 +34,23 @@ class LinuxTapTestCase(unittest.TestCase): self.netblock = "192.168.1" @skipIfNotAlive - def t_tap_create(self, host, user, identity): + def t_tap_create(self, host, user=None, identity=None): - ec = ExperimentController(exp_id = "test-tap-create") + ec = ExperimentController(exp_id="test-tap-create") node = ec.register_resource("linux::Node") ec.set(node, "hostname", host) - ec.set(node, "username", user) - ec.set(node, "identity", identity) + + if host != "localhost": + ec.set(node, "username", user) + ec.set(node, "identity", identity) + ec.set(node, "cleanExperiment", True) ec.set(node, "cleanProcesses", True) tap = ec.register_resource("linux::Tap") - ec.set(tap, "endpoint_ip", "%s.1" % self.netblock) - ec.set(tap, "endpoint_prefix", 24) + ec.set(tap, "ip", "%s.1" % self.netblock) + ec.set(tap, "prefix", "24") ec.register_connection(tap, node) app = ec.register_resource("linux::Application") @@ -59,7 +62,7 @@ class LinuxTapTestCase(unittest.TestCase): ec.wait_finished(app) - ping = ec.trace(app, 'stdout') + ping = ec.trace(app, "stdout") expected = """3 packets transmitted, 3 received, 0% packet loss""" self.assertTrue(ping.find(expected) > -1) @@ -71,6 +74,10 @@ class LinuxTapTestCase(unittest.TestCase): def test_tap_create(self): self.t_tap_create(self.host, self.user, self.identity) + def test_tap_create_local(self): + self.t_tap_create("localhost") + + if __name__ == '__main__': unittest.main() diff --git a/test/resources/linux/tun.py b/test/resources/linux/tun.py index c9402bdf..8164db35 100755 --- a/test/resources/linux/tun.py +++ b/test/resources/linux/tun.py @@ -34,20 +34,23 @@ class LinuxTunTestCase(unittest.TestCase): self.netblock = "192.168.1" @skipIfNotAlive - def t_tun_create(self, host, user, identity): + def t_tun_create(self, host, user=None, identity=None): - ec = ExperimentController(exp_id = "test-tun-create") + ec = ExperimentController(exp_id="test-tun-create") node = ec.register_resource("linux::Node") ec.set(node, "hostname", host) - ec.set(node, "username", user) - ec.set(node, "identity", identity) + + if host != "localhost": + ec.set(node, "username", user) + ec.set(node, "identity", identity) + ec.set(node, "cleanExperiment", True) ec.set(node, "cleanProcesses", True) tun = ec.register_resource("linux::Tun") - ec.set(tun, "endpoint_ip", "%s.1" % self.netblock) - ec.set(tun, "endpoint_prefix", 24) + ec.set(tun, "ip", "%s.1" % self.netblock) + ec.set(tun, "prefix", "24") ec.register_connection(tun, node) app = ec.register_resource("linux::Application") @@ -59,7 +62,7 @@ class LinuxTunTestCase(unittest.TestCase): ec.wait_finished(app) - ping = ec.trace(app, 'stdout') + ping = ec.trace(app, "stdout") expected = """3 packets transmitted, 3 received, 0% packet loss""" self.assertTrue(ping.find(expected) > -1) @@ -71,6 +74,10 @@ class LinuxTunTestCase(unittest.TestCase): def test_tun_create(self): self.t_tun_create(self.host, self.user, self.identity) + def test_tun_create_local(self): + self.t_tun_create("localhost") + + if __name__ == '__main__': unittest.main() diff --git a/test/resources/linux/udptunnel.py b/test/resources/linux/udptunnel.py index a3089d88..59c53de5 100755 --- a/test/resources/linux/udptunnel.py +++ b/test/resources/linux/udptunnel.py @@ -39,7 +39,7 @@ class LinuxUdpTunnelTestCase(unittest.TestCase): def t_tap_udp_tunnel(self, user1, host1, identity1, user2, host2, identity2): - ec = ExperimentController(exp_id = "test-tap-udp-tunnel") + ec = ExperimentController(exp_id="test-tap-udp-tunnel") node1 = ec.register_resource("linux::Node") ec.set(node1, "hostname", host1) @@ -49,8 +49,8 @@ class LinuxUdpTunnelTestCase(unittest.TestCase): ec.set(node1, "cleanProcesses", True) tap1 = ec.register_resource("linux::Tap") - ec.set(tap1, "endpoint_ip", "%s.1" % self.netblock) - ec.set(tap1, "endpoint_prefix", 32) + ec.set(tap1, "ip", "%s.1" % self.netblock) + ec.set(tap1, "prefix", "32") ec.register_connection(tap1, node1) node2 = ec.register_resource("linux::Node") @@ -61,8 +61,8 @@ class LinuxUdpTunnelTestCase(unittest.TestCase): ec.set(node2, "cleanProcesses", True) tap2 = ec.register_resource("linux::Tap") - ec.set(tap2, "endpoint_ip", "%s.2" % self.netblock) - ec.set(tap2, "endpoint_prefix", 32) + ec.set(tap2, "ip", "%s.2" % self.netblock) + ec.set(tap2, "prefix", "32") ec.register_connection(tap2, node2) udptun = ec.register_resource("linux::UdpTunnel") @@ -78,7 +78,7 @@ class LinuxUdpTunnelTestCase(unittest.TestCase): ec.wait_finished(app) - ping = ec.trace(app, 'stdout') + ping = ec.trace(app, "stdout") expected = """3 packets transmitted, 3 received, 0% packet loss""" self.assertTrue(ping.find(expected) > -1) @@ -93,7 +93,7 @@ class LinuxUdpTunnelTestCase(unittest.TestCase): @skipIfAnyNotAliveWithIdentity def t_tun_udp_tunnel(self, user1, host1, identity1, user2, host2, identity2): - ec = ExperimentController(exp_id = "test-tun-udp-tunnel") + ec = ExperimentController(exp_id="test-tun-udp-tunnel") node1 = ec.register_resource("linux::Node") ec.set(node1, "hostname", host1) @@ -103,8 +103,8 @@ class LinuxUdpTunnelTestCase(unittest.TestCase): ec.set(node1, "cleanProcesses", True) tun1 = ec.register_resource("linux::Tun") - ec.set(tun1, "endpoint_ip", "%s.1" % self.netblock) - ec.set(tun1, "endpoint_prefix", 32) + ec.set(tun1, "ip", "%s.1" % self.netblock) + ec.set(tun1, "prefix", "32") ec.register_connection(tun1, node1) node2 = ec.register_resource("linux::Node") @@ -115,8 +115,8 @@ class LinuxUdpTunnelTestCase(unittest.TestCase): ec.set(node2, "cleanProcesses", True) tun2 = ec.register_resource("linux::Tun") - ec.set(tun2, "endpoint_ip", "%s.2" % self.netblock) - ec.set(tun2, "endpoint_prefix", 32) + ec.set(tun2, "ip", "%s.2" % self.netblock) + ec.set(tun2, "prefix", "32") ec.register_connection(tun2, node2) udptun = ec.register_resource("linux::UdpTunnel") @@ -132,7 +132,7 @@ class LinuxUdpTunnelTestCase(unittest.TestCase): ec.wait_finished(app) - ping = ec.trace(app, 'stdout') + ping = ec.trace(app, "stdout") expected = """3 packets transmitted, 3 received, 0% packet loss""" self.assertTrue(ping.find(expected) > -1) diff --git a/test/resources/planetlab/gretunnel.py b/test/resources/planetlab/gretunnel.py index 460261f0..74197f1b 100755 --- a/test/resources/planetlab/gretunnel.py +++ b/test/resources/planetlab/gretunnel.py @@ -43,32 +43,30 @@ class PlanetLabGRETunnelTestCase(unittest.TestCase): def t_tap_gre_tunnel(self, user1, host1, identity1, user2, host2, identity2): - ec = ExperimentController(exp_id = "test-tap-gre-tunnel") + ec = ExperimentController(exp_id="test-tap-gre-tunnel") node1 = ec.register_resource("planetlab::Node") ec.set(node1, "hostname", host1) ec.set(node1, "username", user1) ec.set(node1, "identity", identity1) - #ec.set(node1, "cleanHome", True) ec.set(node1, "cleanExperiment", True) ec.set(node1, "cleanProcesses", True) tap1 = ec.register_resource("planetlab::Tap") - ec.set(tap1, "endpoint_ip", "%s.1" % self.netblock) - ec.set(tap1, "endpoint_prefix", 24) + ec.set(tap1, "ip", "%s.1" % self.netblock) + ec.set(tap1, "prefix", "24") ec.register_connection(tap1, node1) node2 = ec.register_resource("planetlab::Node") ec.set(node2, "hostname", host2) ec.set(node2, "username", user2) ec.set(node2, "identity", identity2) - #ec.set(node2, "cleanHome", True) ec.set(node2, "cleanExperiment", True) ec.set(node2, "cleanProcesses", True) tap2 = ec.register_resource("planetlab::Tap") - ec.set(tap2, "endpoint_ip", "%s.2" % self.netblock) - ec.set(tap2, "endpoint_prefix", 24) + ec.set(tap2, "ip", "%s.2" % self.netblock) + ec.set(tap2, "prefix", "24") ec.register_connection(tap2, node2) gretun = ec.register_resource("linux::GRETunnel") @@ -84,7 +82,7 @@ class PlanetLabGRETunnelTestCase(unittest.TestCase): ec.wait_finished(app) - ping = ec.trace(app, 'stdout') + ping = ec.trace(app, "stdout") expected = """3 packets transmitted, 3 received, 0% packet loss""" self.assertTrue(ping.find(expected) > -1) @@ -100,32 +98,30 @@ class PlanetLabGRETunnelTestCase(unittest.TestCase): def t_tun_gre_tunnel(self, user1, host1, identity1, user2, host2, identity2): - ec = ExperimentController(exp_id = "test-tun-gre-tunnel") + ec = ExperimentController(exp_id="test-tun-gre-tunnel") node1 = ec.register_resource("planetlab::Node") ec.set(node1, "hostname", host1) ec.set(node1, "username", user1) ec.set(node1, "identity", identity1) - #ec.set(node1, "cleanHome", True) ec.set(node1, "cleanExperiment", True) ec.set(node1, "cleanProcesses", True) tun1 = ec.register_resource("planetlab::Tun") - ec.set(tun1, "endpoint_ip", "%s.1" % self.netblock) - ec.set(tun1, "endpoint_prefix", 24) + ec.set(tun1, "ip", "%s.1" % self.netblock) + ec.set(tun1, "prefix", "24") ec.register_connection(tun1, node1) node2 = ec.register_resource("planetlab::Node") ec.set(node2, "hostname", host2) ec.set(node2, "username", user2) ec.set(node2, "identity", identity2) - #ec.set(node2, "cleanHome", True) ec.set(node2, "cleanExperiment", True) ec.set(node2, "cleanProcesses", True) tun2 = ec.register_resource("planetlab::Tun") - ec.set(tun2, "endpoint_ip", "%s.2" % self.netblock) - ec.set(tun2, "endpoint_prefix", 24) + ec.set(tun2, "ip", "%s.2" % self.netblock) + ec.set(tun2, "prefix", "24") ec.register_connection(tun2, node2) udptun = ec.register_resource("linux::GRETunnel") @@ -141,7 +137,7 @@ class PlanetLabGRETunnelTestCase(unittest.TestCase): ec.wait_finished(app) - ping = ec.trace(app, 'stdout') + ping = ec.trace(app, "stdout") expected = """3 packets transmitted, 3 received, 0% packet loss""" self.assertTrue(ping.find(expected) > -1) @@ -157,32 +153,30 @@ class PlanetLabGRETunnelTestCase(unittest.TestCase): def t_tun_hybrid_gre_tunnel(self, user1, host1, identity1, user2, host2, identity2): - ec = ExperimentController(exp_id = "test-tap-hybrid-gre-tunnel") + ec = ExperimentController(exp_id="test-tap-hybrid-gre-tunnel") node1 = ec.register_resource("planetlab::Node") ec.set(node1, "hostname", host1) ec.set(node1, "username", user1) ec.set(node1, "identity", identity1) - #ec.set(node1, "cleanHome", True) ec.set(node1, "cleanExperiment", True) ec.set(node1, "cleanProcesses", True) tun1 = ec.register_resource("planetlab::Tun") - ec.set(tun1, "endpoint_ip", "%s.1" % self.netblock) - ec.set(tun1, "endpoint_prefix", 24) + ec.set(tun1, "ip", "%s.1" % self.netblock) + ec.set(tun1, "prefix", "24") ec.register_connection(tun1, node1) node2 = ec.register_resource("linux::Node") ec.set(node2, "hostname", host2) ec.set(node2, "username", user2) ec.set(node2, "identity", identity2) - #ec.set(node2, "cleanHome", True) ec.set(node2, "cleanExperiment", True) ec.set(node2, "cleanProcesses", True) tun2 = ec.register_resource("linux::Tun") - ec.set(tun2, "endpoint_ip", "%s.2" % self.netblock) - ec.set(tun2, "endpoint_prefix", 24) + ec.set(tun2, "ip", "%s.2" % self.netblock) + ec.set(tun2, "prefix", "24") ec.register_connection(tun2, node2) gretun = ec.register_resource("linux::GRETunnel") @@ -200,7 +194,7 @@ class PlanetLabGRETunnelTestCase(unittest.TestCase): ec.wait_finished(app) - ping = ec.trace(app, 'stdout') + ping = ec.trace(app, "stdout") expected = """3 packets transmitted, 3 received, 0% packet loss""" self.assertTrue(ping.find(expected) > -1) diff --git a/test/resources/planetlab/tap.py b/test/resources/planetlab/tap.py index 5b63fab5..d52de039 100755 --- a/test/resources/planetlab/tap.py +++ b/test/resources/planetlab/tap.py @@ -40,7 +40,7 @@ class PlanetlabTapTestCase(unittest.TestCase): @skipIfNotAlive def t_tap_create(self, host, user, identity): - ec = ExperimentController(exp_id = "test-tap-create") + ec = ExperimentController(exp_id="test-tap-create") node = ec.register_resource("planetlab::Node") ec.set(node, "hostname", host) @@ -50,8 +50,8 @@ class PlanetlabTapTestCase(unittest.TestCase): ec.set(node, "cleanProcesses", True) tap = ec.register_resource("planetlab::Tap") - ec.set(tap, "endpoint_ip", "%s.1" % self.netblock) - ec.set(tap, "endpoint_prefix", 24) + ec.set(tap, "ip", "%s.1" % self.netblock) + ec.set(tap, "prefix", "24") ec.register_connection(tap, node) app = ec.register_resource("linux::Application") @@ -63,7 +63,7 @@ class PlanetlabTapTestCase(unittest.TestCase): ec.wait_finished(app) - ping = ec.trace(app, 'stdout') + ping = ec.trace(app, "stdout") expected = """3 packets transmitted, 3 received, 0% packet loss""" self.assertTrue(ping.find(expected) > -1) diff --git a/test/resources/planetlab/tun.py b/test/resources/planetlab/tun.py index 6c727f1c..01259713 100755 --- a/test/resources/planetlab/tun.py +++ b/test/resources/planetlab/tun.py @@ -40,7 +40,7 @@ class PlanetlabTunTestCase(unittest.TestCase): @skipIfNotAlive def t_tun_create(self, host, user, identity): - ec = ExperimentController(exp_id = "test-un-create") + ec = ExperimentController(exp_id="test-un-create") node = ec.register_resource("planetlab::Node") ec.set(node, "hostname", host) @@ -50,8 +50,8 @@ class PlanetlabTunTestCase(unittest.TestCase): ec.set(node, "cleanProcesses", True) tun = ec.register_resource("planetlab::Tun") - ec.set(tun, "endpoint_ip", "%s.1" % self.netblock) - ec.set(tun, "endpoint_prefix", 24) + ec.set(tun, "ip", "%s.1" % self.netblock) + ec.set(tun, "prefix", "24") ec.register_connection(tun, node) app = ec.register_resource("linux::Application") @@ -63,7 +63,7 @@ class PlanetlabTunTestCase(unittest.TestCase): ec.wait_finished(app) - ping = ec.trace(app, 'stdout') + ping = ec.trace(app, "stdout") expected = """3 packets transmitted, 3 received, 0% packet loss""" self.assertTrue(ping.find(expected) > -1) diff --git a/test/resources/planetlab/udptunnel.py b/test/resources/planetlab/udptunnel.py index bd87a756..167052b9 100755 --- a/test/resources/planetlab/udptunnel.py +++ b/test/resources/planetlab/udptunnel.py @@ -43,7 +43,7 @@ class PlanetlabUdpTunnelTestCase(unittest.TestCase): def t_tap_udp_tunnel(self, user1, host1, identity1, user2, host2, identity2): - ec = ExperimentController(exp_id = "test-tap-udp-tunnel") + ec = ExperimentController(exp_id="test-tap-udp-tunnel") node1 = ec.register_resource("planetlab::Node") ec.set(node1, "hostname", host1) @@ -53,8 +53,8 @@ class PlanetlabUdpTunnelTestCase(unittest.TestCase): ec.set(node1, "cleanProcesses", True) tap1 = ec.register_resource("planetlab::Tap") - ec.set(tap1, "endpoint_ip", "%s.1" % self.netblock) - ec.set(tap1, "endpoint_prefix", 24) + ec.set(tap1, "ip", "%s.1" % self.netblock) + ec.set(tap1, "prefix", "24") ec.register_connection(tap1, node1) node2 = ec.register_resource("planetlab::Node") @@ -65,8 +65,8 @@ class PlanetlabUdpTunnelTestCase(unittest.TestCase): ec.set(node2, "cleanProcesses", True) tap2 = ec.register_resource("planetlab::Tap") - ec.set(tap2, "endpoint_ip", "%s.2" % self.netblock) - ec.set(tap2, "endpoint_prefix", 24) + ec.set(tap2, "ip", "%s.2" % self.netblock) + ec.set(tap2, "prefix", "24") ec.register_connection(tap2, node2) udptun = ec.register_resource("linux::UdpTunnel") @@ -97,7 +97,7 @@ class PlanetlabUdpTunnelTestCase(unittest.TestCase): @skipIfAnyNotAliveWithIdentity def t_tun_udp_tunnel(self, user1, host1, identity1, user2, host2, identity2): - ec = ExperimentController(exp_id = "test-tun-udp-tunnel") + ec = ExperimentController(exp_id="test-tun-udp-tunnel") node1 = ec.register_resource("planetlab::Node") ec.set(node1, "hostname", host1) @@ -107,8 +107,8 @@ class PlanetlabUdpTunnelTestCase(unittest.TestCase): ec.set(node1, "cleanProcesses", True) tun1 = ec.register_resource("planetlab::Tun") - ec.set(tun1, "endpoint_ip", "%s.1" % self.netblock) - ec.set(tun1, "endpoint_prefix", 24) + ec.set(tun1, "ip", "%s.1" % self.netblock) + ec.set(tun1, "prefix", "24") ec.register_connection(tun1, node1) node2 = ec.register_resource("planetlab::Node") @@ -119,8 +119,8 @@ class PlanetlabUdpTunnelTestCase(unittest.TestCase): ec.set(node2, "cleanProcesses", True) tun2 = ec.register_resource("planetlab::Tun") - ec.set(tun2, "endpoint_ip", "%s.2" % self.netblock) - ec.set(tun2, "endpoint_prefix", 24) + ec.set(tun2, "ip", "%s.2" % self.netblock) + ec.set(tun2, "prefix", "24") ec.register_connection(tun2, node2) udptun = ec.register_resource("linux::UdpTunnel") -- 2.43.0