Solving the Multi-Commodity Flow Problem using a Multi-Objective Genetic Algorithm Noel Farrugia, Johann A. Briffa, Victor Buttigieg Department of Communications and Computer Engineering University Of Malta
Introduction • Compared to 2015, generated Internet traffic will triple by 2020. • Single path routing algorithms, such as Open Shortest Path First (OSPF), are unable handle this traffic efficiently. • Developed a Multi-Objective Genetic Algorithm (MOGA) that solves the Multi-Commodity Flow Problem. • The developed MOGA increases the total network flow by 6% compared to an OSPF-like setup without using multipath. 1
The Multi-Commodity Flow Problem • The MCFP deals with routing a set of flows/commodities from a source to a destination over a network, without exceeding any link capacity. • In this work we deal with a variant of the MCFP, the Multi-Commodity Maximum-Flow Minimum-Cost (MCMFMC). • The MCMFMC maximises the total network flow passing through the network at the lowest possible cost. • The cost of a link is equivalent to its delay value. 2
Linear Programming – Limitations • Optimal solution for MCMFMC problem can be found using Linear Programming (LP). • LP cannot be used for multi-objective problems. • LP handles objectives sequentially. • Flow maximisation always takes priority over cost minimisation. • May lead to a routing solution that splits a flow over multiple paths. • Transmission Control Protocol (TCP) - the most commonly used transport protocol - suffers severe performance degradation when a flow is split over multiple paths. 3
Multi-Objective Genetic Algorithm – MOGA • To overcome the limitations of LP, a MOGA has been developed. • The MOGA generates valid routing solutions for a given flow set with constraints similar to the MCFP. • The quality of a routing solution is assessed using three objectives: • Total Network Flow. • Proportion of Flows with Minimum Delay. • Flow Splits. 4
MOGA – Objectives – Total Network Flow • Fundamental routing algorithm aim is total network flow maximisation. • The total network data rate impacts: • The network efficiency. • The flow satisfaction rate. 5
MOGA – Objectives – Proportion of Flows with Minimum Delay • Routing algorithm must favour transmission on paths with lower delays. • The objective reflects the proportion of data transmitted on the low delay paths compared to the rest. • The more data allocated to the lower cost paths, the higher the metric value will be. 6
MOGA – Objectives – Flow Splits Minimisation of the number of flow splits is beneficial because it: • Reduces the negative impact multipath has on TCP. • Reduces the number of entries stored in the routers’ network table. 7
MOGA – Chromosome Representation • Each flow is allowed to transmit on a fixed set of paths. • The paths are found using the K-Shortest Path (KSP) Algorithm. • Chromosome is defined as the sequence C = ( G 1 , G 2 , ..., G n ) . • G i = ( g i, 1 , g i, 2 , ..., g i,k i ) is the sequence of genes related to flow f i . • Each element g i,j ∈ R ≥ 0 represents the data rate flow f i can transmit on path p i,j . 8
MOGA – Chromosome Representation – Example Flow 1 Path 1: 5 Mbps 0 2 6 8 30/1 5Mbps/1ms 30/1 Flow 1 Path 2: 5 Mbps 30/5 30/5 4 5 10/1 30/1 30/1 Flow 2 Path 1: 5 Mbps 1 3 7 9 30/1 30/5 30/1 Flow 2 Path 2: 15 Mbps Flow 1 transmitting @10 Mbps Flow 2 transmitting @20 Mbps C = ((5 , 5) , (5 , 15)) 9
MOGA – Crossover • Generates new routing solutions by combining two chromosomes together. • A mixing ratio z ∈ U (0 , 1) is chosen for every crossover. • Each gene sequence is swapped with probability z . C a C b ( G a 1 , G a 2 , G a 3 ) ( G b 1 , G b 2 , G b 3 ) ((2 , 10) , (1 , 5) , (2 , 3)) ((1 , 3) , (7 , 1) , (3 , 2)) ? ((2 , 10) , (7 , 1) , (2 , 3)) (1 , 3) , (1 , 5) , (3 , 2)) Crossover Example 10
MOGA – Mutation • Works on a single chromosome. • Modifies the data rate assignment of a fraction µ of the flows. • Three mutation operators are used: • Flow Maximisation. • Cost Minimisation. • Path usage minimisation. 11
Results – Setup • The MOGA uses the NSGA-II algorithm and is developed using the DEAP framework. • Network simulations are carried out using ns3.26. • The KSP algorithm is set with k = 5 . • The following flow network loads are used: Data Rate (Mbps) Network Load Mean Std. Deviation Low 5 0.25 High 25 2.5 The Medium load setup has an equal number of flows having a Low and High load profile. 12
Results – Setup G´ The 2017 EANT network topology is used with the following modifications: • Red Links: 30Mbps. • Light Blue: 60Mbps. • Dark Blue: 120Mbps. • The link delay attribute is proportional to the geographical distance between the cities. 2017 G´ EANT Network Topology 13
Results – Comparison with Previous Work The presented MOGA (MOGA-II) is compared with: • Our previous MOGA (MOGA-I). • Multi-Commodity Max-Flow Min-Cost (KSP-LP) with k = 5 . • Multi-Commodity Max-Flow Min-Cost with k = 1 to represent OSPF (KSP-LP-1). 14
Results – Maximum Allocated Total Network Flow 3000 2500 Total Network Flow (Mbps) 2000 1500 1000 MOGA-I Low MOGA-II Medium 500 KSP-LP High KSP-LP-1 Requested 0 50 100 150 200 250 300 Number of Flows 15
Results – Projection of Pareto Front MOGA-I 2400 MOGA-II KSP-LP KSP-LP-1 2300 Total Network Flow (Mbps) 2200 2100 2000 1900 1800 0 10 20 30 40 Flow Splits ◦ Solution with the maximum Total Network Flow at zero Flow Splits. 16
Results – Projection of Pareto Front 2400 2300 Total Network Flow (Mbps) 2200 2100 2000 MOGA-I 1900 MOGA-II KSP-LP 1800 KSP-LP-1 80 90 100 110 120 130 140 150 Proportion of Flows with Minimum Delay ◦ Solution with the maximum Total Network Flow at zero Flow Splits. 17
Results – Network Simulation – Throughput 1.0 MOGA-I (1623.9 Mbps) MOGA-II (1969.3 Mbps) KSP-LP (1803.5 Mbps) KSP-LP-1 (1826.7 Mbps) 0.8 0.6 Probability 0.4 0.2 0.0 35 30 25 20 15 10 5 0 Flow Throughput (Mbps) 18
Results – Network Simulation – Delay 1.0 MOGA-I MOGA-II KSP-LP 0.8 KSP-LP-1 0.6 Probability 0.4 0.2 0.0 0 20 40 60 80 100 Delay (ms) 19
Conclusion • Present a MOGA used to find a routing solution capable of increasing network efficiency. • Improves on our previous work by presenting new orthogonal objectives that better represent the solutions we are after. • The presented MOGA performs: • 6% better than an OSPF-like setup when using TCP in terms of Total Network Flow. • 25% better than our previous algorithm in terms of Total Network Flow. 20
Recommend
More recommend