Esempio n. 1
0
 def test_to_ns2_directed(self):
     t = fnss.DirectedTopology()
     t.add_path([1, 2, 3, 4])
     fnss.set_capacities_constant(t, 10, 'Gbps')
     fnss.set_delays_constant(t, 2, 'us')
     fnss.set_buffer_sizes_constant(t, 20, 'packets')
     fnss.to_ns2(t, path.join(TMP_DIR, 'ns2-dir.tcl'), stacks=False)
Esempio n. 2
0
 def test_to_omnetpp_directed(self):
     t = fnss.DirectedTopology()
     t.add_path([1, 2, 3, 4])
     fnss.set_capacities_constant(t, 10, 'Gbps')
     fnss.set_delays_constant(t, 2, 'us')
     fnss.set_buffer_sizes_constant(t, 20, 'packets')
     fnss.to_omnetpp(t, path.join(TMP_DIR, 'omnetpp-dir.ned'))
Esempio n. 3
0
 def test_buffer_sizes_bw_delay_prod_no_return_path(self):
     topo = fnss.DirectedTopology()
     topo.add_edge(1, 2, weight=1)
     topo.add_edge(1, 3, weight=1)
     topo.add_edge(3, 2, weight=1)
     fnss.set_capacities_constant(topo, 10)
     fnss.set_delays_constant(topo, 2)
     self.assertRaises(ValueError, fnss.set_buffer_sizes_bw_delay_prod, topo)
Esempio n. 4
0
 def test_fan_in_out_capacities_directed(self):
     dir_topology = fnss.DirectedTopology()
     dir_topology.add_edge(0, 1)
     dir_topology.add_edge(1, 0)
     dir_topology.add_edge(1, 2)
     dir_topology.add_edge(3, 2)
     fnss.set_capacities_constant(dir_topology, 10, 'Mbps')
     in_cap, out_cap = fnss.fan_in_out_capacities(dir_topology)
     self.assertEqual({0: 10, 1: 10, 2: 20, 3: 0}, in_cap)
     self.assertEqual({0: 10, 1: 20, 2: 0, 3: 10}, out_cap)
Esempio n. 5
0
 def test_od_pairs_from_topology_directed(self):
     dir_topology = fnss.DirectedTopology()
     dir_topology.add_edge(0, 1)
     dir_topology.add_edge(1, 0)
     dir_topology.add_edge(1, 2)
     dir_topology.add_edge(3, 2)
     dir_topology.add_edge(8, 9)
     expected_od_pairs = [(0, 1), (0, 2), (1, 0), (1, 2), (3, 2), (8, 9)]
     od_pairs = fnss.od_pairs_from_topology(dir_topology)
     self.assertEqual(len(expected_od_pairs), len(od_pairs))
     for od in expected_od_pairs:
         self.assertTrue(od in od_pairs)
Esempio n. 6
0
 def test_validate_traffic_matrix(self):
     topology = fnss.DirectedTopology()
     topology.add_path([1, 2, 3])
     topology.add_path([3, 2, 1])
     topology.add_edge(3, 4)
     fnss.set_capacities_constant(topology, 1, 'Mbps')
     flows_valid_load = {1: {3: 0.4}, 2: {4: 0.3}}
     flows_invalid_load = {1: {3: 0.4}, 2: {4: 0.7}}
     flows_invalid_routes = {4: {1: 0.4}}
     flows_invalid_pairs = {5: {2: 0.1}}
     self.assertTrue(
         fnss.validate_traffic_matrix(topology,
                                      fnss.TrafficMatrix(
                                          'Mbps', flows_valid_load),
                                      validate_load=False))
     self.assertTrue(
         fnss.validate_traffic_matrix(topology,
                                      fnss.TrafficMatrix(
                                          'Mbps', flows_valid_load),
                                      validate_load=True))
     self.assertTrue(
         fnss.validate_traffic_matrix(topology,
                                      fnss.TrafficMatrix(
                                          'Mbps', flows_invalid_load),
                                      validate_load=False))
     self.assertFalse(
         fnss.validate_traffic_matrix(topology,
                                      fnss.TrafficMatrix(
                                          'Mbps', flows_invalid_load),
                                      validate_load=True))
     self.assertFalse(
         fnss.validate_traffic_matrix(topology,
                                      fnss.TrafficMatrix(
                                          'Mbps', flows_invalid_routes),
                                      validate_load=False))
     self.assertFalse(
         fnss.validate_traffic_matrix(topology,
                                      fnss.TrafficMatrix(
                                          'Mbps', flows_invalid_routes),
                                      validate_load=True))
     self.assertFalse(
         fnss.validate_traffic_matrix(topology,
                                      fnss.TrafficMatrix(
                                          'Mbps', flows_invalid_pairs),
                                      validate_load=False))
     self.assertFalse(
         fnss.validate_traffic_matrix(topology,
                                      fnss.TrafficMatrix(
                                          'Mbps', flows_invalid_pairs),
                                      validate_load=True))
Esempio n. 7
0
 def test_directed_topology_class(self):
     topology = fnss.DirectedTopology()
     topology.add_edge(1, 2)
     topology.add_edge(2, 1)
     self.assertEqual(2, topology.number_of_edges())