Solving bucket-based large flow allocation problems

Slides:



Advertisements
Similar presentations
Iterative Rounding and Iterative Relaxation
Advertisements

Virtual Network Embedding with Coordinated Node and Link Mapping N. M. Mosharaf Kabir Chowdhury Muntasir Raihan Rahman and Raouf Boutaba University of.
The strength of routing Schemes. Main issues Eliminating the buzz: Are there real differences between forwarding schemes: OSPF vs. MPLS? Can we quantify.
Traffic Engineering with Forward Fault Correction (FFC)
Multicast in Wireless Mesh Network Xuan (William) Zhang Xun Shi.
Novembro 2003 Tabu search heuristic for partition coloring1/29 XXXV SBPO XXXV SBPO Natal, 4-7 de novembro de 2003 A Tabu Search Heuristic for Partition.
Interconnect throughput modeling. Important network performance metrics Throughput – Point to point (link bandwidth + end host software overheads) – Aggregate.
ElasticTree: Saving Energy in Data Center Networks Brandon Heller, Srini Seetharaman, Priya Mahadevan, Yiannis Yiakoumis, Puneed Sharma, Sujata Banerjee,
1 Advancing Supercomputer Performance Through Interconnection Topology Synthesis Yi Zhu, Michael Taylor, Scott B. Baden and Chung-Kuan Cheng Department.
1 EL736 Communications Networks II: Design and Algorithms Class8: Networks with Shortest-Path Routing Yong Liu 10/31/2007.
Implicit Hitting Set Problems Richard M. Karp Harvard University August 29, 2011.
F.F. Dragan (Kent State) A.B. Kahng (UCSD) I. Mandoiu (Georgia Tech/UCLA) S. Muddu (Silicon Graphics) A. Zelikovsky (Georgia State) Provably Good Global.
PROFITABLE CONNECTION ASSIGNMENT IN ALL OPTICAL WDM NETWORKS VISHAL ANAND LANDER (Lab. for Advanced Network Design, Evaluation and Research) In collaboration.
Jerry Chou and Bill Lin University of California, San Diego
Rethinking Internet Traffic Management: From Multiple Decompositions to a Practical Protocol Jiayue He Princeton University Joint work with Martin Suchara,
Distributed Combinatorial Optimization
S. Suri, M, Waldvogel, P. Warkhede CS University of Washington Profile-Based Routing: A New Framework for MPLS Traffic Engineering.
Multipath Routing Algorithms for Congestion Minimization Ron Banner and Ariel Orda Department of Electrical Engineering Technion- Israel Institute of Technology.
BUDAPEST UNIVERSITY OF TECHNOLOGY AND ECONOMICS DEPARTMENT OF TELECOMMUNICATIONS AND MEDIA INFORMATICS BUDAPEST UNIVERSITY OF TECHNOLOGY AND ECONOMICS.
Steady and Fair Rate Allocation for Rechargeable Sensors in Perpetual Sensor Networks Zizhan Zheng Authors: Kai-Wei Fan, Zizhan Zheng and Prasun Sinha.
L13. Shortest path routing D. Moltchanov, TUT, Spring 2008 D. Moltchanov, TUT, Spring 2014.
Lecture 15. IGP and MPLS D. Moltchanov, TUT, Spring 2008 D. Moltchanov, TUT, Spring 2015.
Profile-Based Topology Control and Routing of Bandwidth-Guaranteed Flows in Wireless Optical Backbone Networks A. Kashyap, M.K. Khandani, K. Lee, M. Shayman.
Guy Even & Moti Medina EE Tel-Aviv University Gregor Schaffrath & Stefan Schmid Deutsche Telekom Labs, TU Berlin.
Network Aware Resource Allocation in Distributed Clouds.
Topology aggregation and Multi-constraint QoS routing Presented by Almas Ansari.
1 Introduction to Approximation Algorithms. 2 NP-completeness Do your best then.
© 2009 IBM Corporation 1 Improving Consolidation of Virtual Machines with Risk-aware Bandwidth Oversubscription in Compute Clouds Amir Epstein Joint work.
Budapest University of Technology and Economics Department of Telecommunications and Media Informatics Optimized QoS Protection of Ethernet Trees Tibor.
New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,
Interconnect Performance Modeling. Performance modeling Given an interconnect topology, routing, and other parameters, predict the interconnect performance.
Resource Mapping and Scheduling for Heterogeneous Network Processor Systems Liang Yang, Tushar Gohad, Pavel Ghosh, Devesh Sinha, Arunabha Sen and Andrea.
Architectures and Algorithms for Future Wireless Local Area Networks  1 Chapter Architectures and Algorithms for Future Wireless Local Area.
1 Iterative Integer Programming Formulation for Robust Resource Allocation in Dynamic Real-Time Systems Sethavidh Gertphol and Viktor K. Prasanna University.
CS223 Advanced Data Structures and Algorithms 1 Maximum Flow Neil Tang 3/30/2010.
1 An Arc-Path Model for OSPF Weight Setting Problem Dr.Jeffery Kennington Anusha Madhavan.
Practical Message-passing Framework for Large-scale Combinatorial Optimization Inho Cho, Soya Park, Sejun Park, Dongsu Han, and Jinwoo Shin KAIST 2015.
1 Slides by Yong Liu 1, Deep Medhi 2, and Michał Pióro 3 1 Polytechnic University, New York, USA 2 University of Missouri-Kansas City, USA 3 Warsaw University.
1 Chapter 6 Reformulation-Linearization Technique and Applications.
1 Chapter 5 Branch-and-bound Framework and Its Applications.
Xin Li, Chen Qian University of Kentucky
Mathieu Leconte, Ioannis Steiakogiannakis, Georgios Paschos
OPERATING SYSTEMS CS 3502 Fall 2017
Data Driven Resource Allocation for Distributed Learning
Data Center Network Architectures
Constraint-Based Routing
Presented by Tae-Seok Kim
Hydra: Leveraging Functional Slicing for Efficient Distributed SDN Controllers Yiyang Chang, Ashkan Rezaei, Balajee Vamanan, Jahangir Hasan, Sanjay Rao.
ECE 544: Traffic engineering (supplement)
Algorithm Design Methods
What is VN Embedding? Given: Task :
A Study of Group-Tree Matching in Large Scale Group Communications
ElasticTree Michael Fruchtman.
An Equal-Opportunity-Loss MPLS-Based Network Design Model
ISP and Egress Path Selection for Multihomed Networks
Multi-Core Parallel Routing
Frank Yeong-Sung Lin (林永松) Information Management Department
CS223 Advanced Data Structures and Algorithms
1.3 Modeling with exponentially many constr.
ElasticTree: Saving Energy in Data Center Networks
L12. Network optimization
Networked Real-Time Systems: Routing and Scheduling
Algorithms for Budget-Constrained Survivable Topology Design
1.3 Modeling with exponentially many constr.
Algorithm Design Methods
Maximum Flow Neil Tang 4/8/2008
Fast Min-Register Retiming Through Binary Max-Flow
Algorithm Design Methods
Mathieu Leconte, Ioannis Steiakogiannakis, Georgios Paschos
Towards Predictable Datacenter Networks
Presentation transcript:

Solving bucket-based large flow allocation problems 2016-04-05 Paolo Medagliani paolo.medagliani@huawei.com

Outline Introduction to the problem Two algorithms Results Linear programming-based Greedy Results 2

French Mathematical and Algorithmic Sciences Lab Located in Boulogne Billancourt Started officially October 2014 57 researchers at PhD level + 11 PhDs Merouane Debbah (scientific director) Mid and Long Term research 2 departments: Communication Science Networking Science Focus: 4.5G, 5G, SDN, Big Data for telecom An active lab in a HUGE company (170k employees worldwide, +45% growth this year in Western Europe) 3

Our Vision, Projects and Expertise Solve global and online optimization problems into next-generation network controllers Topics Projects Routing and Admission control Rate control, network monitoring Network virtualization (embedding, placement…) SDN: Network optimization, Path computation, Monitoring, Learning Tools and Skills Optimization theory (combinatorial, stochastic), Online and approximation algorithms , Game and auction theory, Control theory, Dynamic Programming, Online algorithms, Machine learning 4

Why flow splitting? Flow splitting Use case Main problem Helps to balance traffic or to accept more traffic Increase scalability when traffic needs to be processed by middleboxes Use case Cloud or carrier provider hosting up to thousands of flow aggregates Multi-path routing requires a switch to split aggregated flows Main problem Find a feasible solution that maximizes the throughput and minimize cost. The problem is not linear, NP-hard and cannot be approximated to within constant factors unless P=NP. 5

MPLS-TE use case Split is considered only at the source S 1 f1= 0.5 f1 f1 D Flow f Flow f S 3 f2 f2 f2= 0.5 2 Split is considered only at the source S Simpler to manage Helps to handle Jitter in the flow aggregate A flow consists in a set of sub-paths from S to D Intermediate nodes treat f1 and f2 as two different flows Split could be uneven and unequal cost (vs. ECMP) 6

Extend ECMP by repeating entries Hash-based splitting Extend ECMP by repeating entries Typical size of TCAM memory is 3k entries[1] [1] K. Kannan, S. Banerjee, “Compact TCAM: Flow entry compaction in TCAM for power aware SDN”, Distributed Computing and Networking, 2013 7

Hash-based splitting The larger the number of buckets the better the flow distribution accurately models a fractional ideal The distribution of flow volume amongst the paths is constrained by the use of a limited number of TCAM entries Page 8 8

Flow splitting problem Problem: Find a feasible GLOBAL bucket configuration Input parameters: Network topology Current network state (residual capacity on each link) Demands to be allocated Constraints Max number of buckets at each node (TCAM size) Max number of paths for each demand Control: allocation of paths according to bucket structure Objective: max bandwidth acceptance and cost minimization SDN Controller s1 t1 s2 t2 Centralized control and management 9

MINLP formulation Large constant ratios nb buckets memory     Large constant ratios nb buckets memory MCF By setting buv = 1 for all uv 2 E, Nk p = dk = 1 for all k 2 K, and giving large enough bucket capacity at each node (e.g., K is sufficient), we see that the maximum edge-disjoint paths (EDP) problem reduces to MCFS. For both directed and undirected graphs, EDP is NP-hard to approximate to within constant factors x says if an edge is used (binary) y tells how much bandwidth is allocated to an edge z gives the number of buckets used (binary) 10

Results on execution time ILP with CPLEX after linearization Network with 6 nodes and 8 bidirectional links K=1 commodity Without flow splitting -> 0’1’’ With flow splitting -> 0’3’’ K=2 commodities Without flow splitting -> 1’40’’ With flow splitting -> 24’ I want speed and optimality… but HOW?? NO SCALABILITY 11

Outline Introduction to the problem Two algorithms Results Linear programming-based Greedy Results 12

How to solve the flow splitting problem? 2 complementary approaches A Linear programming-based heuristic Very close to optimality (based on Column Generation) Requires a succesive phase of rounding Can be accelerated by parallelizing some steps of the algorithm A greedy heuristic Very fast even for massive number of demands Based on sequential execution of shortest path algorithm Can embed the computation of reliable pair of paths respecting given weight constraints 13

LP-based algorithm Iterate Scale edge capacities by (1 - α) Artificially reduce link capacity to reserve space for rounding. Different values of α have to be used. Solve the relaxed multicommodity flow (i.e., using column generation) Remove path number and bucket constraints, relax integer variables and solve. Allocate a proportional fair amount of bucket budget to each demand at each source node Randomly round up the fractional solution Reduce the number of paths if above N Find a feasible configuration which minimizes the error Iterate if demands can still be allocated Scale LP solver Oracle Rounding LP Rounding Iterate 14

CG-based methauristic (1/5) Original network Residual capacity d2 d3 demands d1 dK 15

CG-based methauristic (2/5) Scaled network by a factor α Given c(e) the capacity of a link, c’(e)=c(e)*(1- α) Solve CG on this network Scaling network capacity allows to find feasible paths during rounding session d2 d3 demands d1 dK 16

CG-based methauristic (3/5) In red, the link occupation after the CG on scaled network d1 p1 p2 Solution for d1 as provided by CG p1=0.43 p2=0.57 d3 d2 Solution may not be feasible in terms of buckets => ROUNDING d1 Randomly move bw from one path to another d1, d2 d1 d3 d1 d2 d3 demands d1 dK 17

CG-based methauristic (4/5) ROUNDING carried out on original network d1 Randomly assign buckets to paths computed by LP Priority to paths with higher bw to be allocated Residual capacity p1 p2 Solution before rounding for d1 and after rounding p1=0.4 p2=0.6 Allocated demands No knowledge of the network => test of all bucket profiles The feasible configuration with the smallest error compared to LP is applied to the network New attempt on residual network d4 dK Residual demands 18

Greedy algorithm Iterate Allocate a proportional fair bucket budget to each demand at each source node Divide each flow into chunks knowing the bucket number Allocate as many chunks as possible on the shortest path between source and destination Once the path is saturated, update network utilization and compute a new shortest path to allocate residual bandwidth Repeat previous steps until either the whole demand is allocated or the demand is rejected Repeat path allocation different chunk sizes in order to find the best bucket configuration in term of routing cost Iterate if demands can still be allocated Oracle Greedy Best solution Iterate 19

Packing buckets into a path } 32 buckets 100 units flow Chunk size = 100/32 = 3.125 15 25 60 Bottleneck is 15… Q) How many chunks can we fit? 15/chunk size=15/(100/32)= 4.8, so we can fit 4 chunks of flow ----> assign 4 buckets 20

Packing buckets into a path } 32 buckets 100 units flow Chunk size = 100/32 = 3.125 15-(4*chunk size)=2.5 25-(4*chunk size)=12.5 60-(4*chunk size)=57.5 Chunk size=3.125 < 2.5…we can’t fit any more chunks in this link, may as well delete it We need to find other paths to service the remaining 32 – 4 = 28 chunks of flow, i.e., assign the remaining 28 buckets 21

Outline Introduction to the problem Two algorithms Results Linear programming-based Greedy Results 22

Simulation setup Fat Tree topology with 125 nodes 250 demands Average node degree of 4 Link capacity in [100M : 1G] Exponential distribution of edge costs TCAM Size in {20; 50; 100; 150; 200} 250 demands Random source destination pairs Max size in [1G] Zipf distribution (exponent 0.8) Matlab implementation 23

Accepted thoughput and running time 24

CDF of bucket distribution TCAM size: 20 buckets TCAM size: 200 buckets 25

Performance comparison – Scalability C++ implementation 500 nodes 4900 links 5000 to 13000 demands 10% of elephant flows Due to bottlenecks, performance loss compared to unconstrained LP Despite worse bw allocation performance, greedy approaches are really fast at computing a solution for large demand sets 26

Concluding remarks MINLP NP-hard even to approximate within any constant factor Flow splitting is a problem that is very hard (see impossible) to be optimally solved. Two approaches to solve the flow splitting with buckets problem LP-based rounding approach which is close to optimality but may be slow for large network instances Greedy approach which is very fast but inaccurate for large demand sets There is still room for improvement through algorithm faster LP resolution and parallel computing implementation Online version of the problem is interesting 27