420 likes | 549 Views
Bandwidth Allocation Planning in Communication Networks. Christian Frei & Boi Faltings Globecom 1999 Ashok Janardhanan. Outline. RAIN Problem Definition as a CSP Need for abstractions Blocking Islands paradigm Mechanism for building them Properties Search Forward checking
E N D
Bandwidth Allocation Planning in Communication Networks Christian Frei & Boi FaltingsGlobecom 1999 Ashok Janardhanan
Outline • RAIN Problem • Definition as a CSP • Need for abstractions • Blocking Islands paradigm • Mechanism for building them • Properties • Search • Forward checking • Value, variable ordering heuristics • Conflict identification & resolution • Evaluation by experiments • Conclusion & future works
Routing in networks • Static traffic Demands are known in advance • Dynamic: Cater to demands as and when they arrive
Context • Paper considers problem of • allocating a set of demands • between pairs of nodes • in an offline manner • for static traffic • within the resource capacities of the network
Routing • From routing point of view what is the key resource to manage in networks? • Bandwidth
Resource Allocation in Networks (RAIN) Given: • a network composed of • nodes and • bi-directional links of given bandwidth • a set of communication demands between pairs of nodes Find: • one and only one route for each demand • that satisfies bandwidth requirements of the demands within the capacities of the links
Routing • Most commonly used routing algorithm • Shortest path routing • Good for a single demand • [Wang & Crowcroft 96] showed it can lead to • sub optimal routing or • congested networks
Solution • Allow other routes than shortest path • Problem: there exists an exponential number of acceptable paths • Greedy algorithm yields incompleteness • Solution: Backtrack to previous allocation in order to squeeze in new demands
Algorithms to solve RAIN • Incomplete: • explores only partially the search space (i.e., subset of possible routes) • E.g. shortest path • Fast, but not guaranteed to find a solution when there is one
Algorithms to solve RAIN • Complete: • performs exhaustive search and always finds a solution when one exists • exponential number of possible routes for each demand huge search space exponentialworst-case behavior • To cope with complexity, guide search with heuristics
RAIN as a CSP • So you have • routes (with capacity) • communication requests (of given bandwidth) • how would you model it as a CSP?
Model RAIN as CSP • Variables demands • Domain: set of possible routes between endpoints • Constraints demand must not exceed any link capacity along route (min link capacity) • Solution select one route for each demand
Problem • Domains (i.e., the set of possible routes) have exponential size • Authors’ contribution: restrict domain using abstractions propose Blocking Island paradigm
What is abstraction is a mapping of • a problem representation • into a simpler one that satisfies some desirable properties in order to reduce complexity of reasoning. [Giunchiglia & Walsh 91]
Motivating example • Blackboard
Blocking island paradigm blocking island for a node x • is a set of all nodes of the network • that can be reached from x • using links with at least available resources
Properties of -BIs • -BI is built according to communication requirements
New terms • -BI: blocking island for demand • -BIG: blocking island graph • BIH: blocking island hierarchy • Abstraction tree • Critical link: max capacity link between 2 BIs at the same level
Routing from BIH perspective • Why shortest path doesn’t work? • Considering route c e • Uses resources on two critical links in terms of bandwidth • Route c, b, d, e uses only links clustered at the lowest level
Routing heuristics • Lowest Level (LL) • choose the route in the lowest BI • Minimal Splitting (MS) • attempts to minimize splitting a route across branches in BIH Implementation: • compute routes using LL • then order them according to MS
Lowest level (LL) • Route a demand along links clustered in the lowest BI, between the endpoints of the demand • Rationale: • the lower the BI in BIH, • the less critical are the links clustered in the BI • ‘Overall load-balancing’
Minimal splitting heuristic • Select route that causes the fewest splitting of the BIs in the BIH • Rationale: • The more the splitting • The more links become critical increases allocation failures
Solving the RAIN problem • Equivalent to solving the CSP • BIs are an abstraction that allow us • to restrict the domain of variables to routes within a BI • thus reducing the size of the CSP • and the complexity of solving it
Solving the RAIN problem • When the endpoints of a demand are clustered in the same -BI at least one route satisfying the demand • A route is a path in the abstraction tree • There is a route satisfying a demand path that does not traverse BIs of a higher level than its resource requirement
Search Mapping of routes into BIH is used to formulate • a new forward checking criterion • dynamic value ordering • shortest path heuristic • lowest level heuristic (some kind of min-conflict) • dynamic variable ordering heuristic • DVO-HL • DVO-NL
Forward checking (FC) When endpoints of demand are in the same BI, • then a route exists (can be computed easily) • assign the route to demand (i.e., instantiate variable) • update BIH • check for future variables (demands) whether or not their endpoints remain in same BIs • they do? this is FC • they don’t? choose another possible route
Dynamic value ordering we have seen it… • shortest path heuristic • lowest level heuristic (some kind of min-conflict)
Dynamic variable ordering DVO-HL (highest level) • lowest common father of demand’s endpoints is the highest in the BIH (low in resources) DVO-NL (number of levels) • difference in levels between the common father of its endpoints and its resource requirements is lowest
Conflict identification and resolution • Suppose we already have allocated some demands in the network • Suppose the next demand is Dn = (c, h, 64) • Since c, h not in same BI it is impossible to satisfy Dn without rerouting previously allocated demands
Two cases • Maybe the problem to allocate is unsolvable • Rerouting earlier demands may resolve the problem
Solving feasible RAIN Tightness: ratio of • resources required for the best possible allocation (in terms of bandwidth) over • the the total amount of resources available in the network
Experiments • 22,000 solvable instances of RAIN • Each problem has • a randomly generated network topology of • 20 nodes and • 38 links • a random set of 80 demands, each demand characterized by • two endpoints and • a bandwidth • Criteria: time, routes, #backtracks
Six strategies • Basic shortest-path (basic SP) • Backtrack shortest-path (BT-SP) • Blocking island with LL & HL (BI-LL-HL) • Blocking island with LL & NL (BI-LL-NL) • Blocking island with BJ, LL & HL (BI-BJ-LL-HL) • Blocking island with BJ, LL & NL (BI-BJ-LL-NL)
Tested strategies • Basic SP: search using shortest path • BT-SP: incorporates BT undo bad allocations • BI-LL-HL: uses LL for route generations and DVO-HL for dynamic demand selection • BI-LL-NLL: uses DVO-NL for choosing the next demand to allocate • BI-BJ-LL-NL: uses LL and NL (to break ties) • BI-BJ-NL-LL: uses NL and LL (to break ties)
Results • BJ-based strategies slightly better performance over pure BT-ones • NL outperforms HL: • better at choosing most difficult demand to assign • achieves a greater pruning effect • Maintenance of the BIH is significant in easy problems
Summary & conclusion • Current strategies used in networks lead to sub-optimal routing • BIs coupled with CSP search • complete algorithm for solving RAIN • reasonable amount of time in many instances and • yields better solutions • Advantages of BI paradigm • quickly identifies infeasible problems and • constitutes powerful aid to the network operator
Summary & conclusion • The BI paradigm proves to be • efficient in identifying infeasible problems quickly • constitutes as a powerful aid to the network operator