420 likes | 546 Views
Resource Allocation in Communication Networks Using Abstraction and Constraint Satisfaction. C. Frei, B. Faltings and M. Hamdi ABB, EPFL and HK U. of Science and Tech. IEEE JSAC , Feb. 2005. Outline (1/2). Introduction Resource Allocation in Network (RAIN) Problem Model
E N D
Resource Allocation in Communication Networks Using Abstraction and Constraint Satisfaction C. Frei, B. Faltings and M. Hamdi ABB, EPFL and HK U. of Science and Tech. IEEE JSAC, Feb. 2005
Outline (1/2) • Introduction • Resource Allocation in Network (RAIN) • Problem Model • Constraint Satisfaction Problem (CSP) • Problem Solving in CSP • Blocking Island (BI) Paradigm • BI Clustering Scheme • Problem Model
Outline (2/2) • CSP Problem Solving in BI • Empirical Results
Introduction • The goal of QoS Routing: • To achieve global efficiency in network resource utilization. • To satisfy the QoS requirements of each admitted connection. • QoS Path Placement with Single constraint is a NP-complete Problem. (Ex: BW) • QoS Path Placement with Multiple constraints is a NP-Hard Problem. (Ex: E2E delay + loss rate)
Resource Allocation in Network Simple Analysis • A complete network has N nodes. • The length of route is bounded by N-1 • A route’s length j has j-1 intermediate nodes between Source and Destination. • The number of routes of length j is(N-2)! / (N-j-1)! (選中間node)
RAIN (cont.) • The total number of routes between any pair of nodes is • A complete graph with 10 nodes, there are 69281 routes between any pair of nodes.
Uninformed Search b – max branching factor of search tree. d – depth of the tree. m – max depth of tree. (bound) l – limited depth
Complete Algorithm • Completeness: The algorithm guaranteed to find a solution. • Shortest Path method is a incomplete algorithm. • There is a need for heuristics to guide the search, in order to solve most problem in a reasonable amount of time.
Constraint Satisfaction Problem • Define: A triple (X, D, C), where X ={x1, x2, …,xn} is a set of variables, D = {D1, D2, …, Dn} is a set of finite domains associated with the variables, C = {C1, C2, …, Cn} is a set of constraint. The domain of a variable is the set of all values that can be assigned to that variable.
CSP (cont.) • Example: Map Coloring
Problem Solving in CSP • Backtracking (BT) • Variable and value ordering • Minimum Remaining Values heuristic (MRV) • Degree heuristic • Least-constraining-value • Forward Checking (FC) • Backjumping (BJ)
BT and BJ • BT is used for a DFS that choose values for one variable at a time and backtracks when a variable has no legal values left to assign. • BJ is the method backtracks to the most recent variable in the conflict set. • The conflict set is a set of variables that caused the failure.
BT / BJ Example WA NT Q 若下一個選擇assign NSW, 可任意{R,G}, 之後再assign SA. 此時jump回Q, 重新assign SA : no solution
Variable and Value Ordering • Variable: 決定選擇那一個變數開始assign • Value: 決定選擇那一個值開始assign • Minimum Remaining Values heuristic (MRV) • Choosing the variable with the fewest “legal” values
Variable and value ordering (cont.) • Degree heuristic • To reduce the branching factor on future choices by selecting the variable that is involved in the largest number of constraints on other unassigned variables • Least-constraining-value • It prefers the value that rules out the fewest choices for the neighboring variables in the constraint graph.
Forward Checking • Whenever a variable X is assigned, the forward checking process looks at each unassigned variable Y that is connected to X by a constraint and deletes from Y’s domain any value that is inconsistent with the value chosen for X.
Blocking Island (BI) Paradigm BIH = BI hierarchy BIG = BI Graph
Blocking Island (BI) • A β-blocking island (β-BI) for a node x is the set of all nodes of the network that can be reached from x using links with at least βavailable resources, including x.
BI (cont.) • The BIs partition the network into equivalence classes of nodes. • The BIs are unique and identify global bottlenecks. • The splitting and merging BIs.
BIH (cont.) • β-BI can be obtained by simple greedy algorithm, with a linear complexity of O(m), where m is the number of links. • BIH is obtained by recursive calls to BIG computation algorithm. The time complexity is bounded in O(bm), where b is the number of possible bandwidth requirement.
Routing Problem Model • A single demand du=(c, e, 16K). • Lowest level (LL) heuristic • Not route to other clusters • Lr: c -> b -> d -> e • In the Lower BI, there are less critical links clustered in it.
Routing Problem Model (cont.) • Route selection in BI • Minimal splitting (MS) • Cause the fewest splitting of BIs I the BIH. • More splittings, more critical links • Shortest-widest path (WP) • Not good ……
CSP Problem Solving in BI • FC • Value Ordering • LL heuristic • Variable Ordering • Dynamic Variable Ordering Highest Level (DVO-H) • Dynamic Variable Ordering Numver Level (DVO-N) • Min-Conflict • Reroute conflict path with BJ
DVO • DOV-H • First choose the demand whose lowest common father of its endpoint is the highest n the BIH. ( highest BIH means low in resource requirement and more routes [constraints]) • DOV-N • First choose the demand for which the difference in number of levels (in the BIH) between the lowest common father of its endpoint and resources requirements is lowest.
Empirical Results • Compared Algorithms • Shortest Path Algorithm (SP) • Shortest Path with Backtracking (BT-SP) • BI with LL heuristic and DVO-HL (BI-LL-HL) • BI with LL heuristic and DVO-NL (BI-LL-NL) • BI-LL-HL with Backjumping (BI-BJ-LL-HL) • BI-BJ-LL-NL
Empirical Results (cont.) • Tightness is defined as the ratio of resources required for the best possible allocation (in terms of used bandwidth) divided by the total amount of resources available in the network.
Empirical Results A • Simulation-A Environment (feasible) • Find a feasible solution • 23,000 runs. • Each run has a random topology of 20 nodes, 38 links and 80 demands. • Each demand characterized by two endpoints and a bandwidth constraint. • A solution must allocate all demands within the bandwidth constraint.
Results A-1 Run Time < 1s
Empirical Results B • Simulation-B Environment (feasible) • Find a feasible solution • 6000 runs. • Each run has a random topology of 38 nodes, 107 links and 1200 demands. • Each demand characterized by two endpoints and a bandwidth constraint. • A solution must allocate all demands within the bandwidth constraint.
Results B-1 NL可將Traffic鎖在cluster內
Empirical Results C • Simulation-C Environment (feasible) • Find a feasible solution • 50 nodes, 171 links and 3000 demands. • BI-BJ-LL-NL solved it in 4.5 min • BT-SP was not able to solve it with in 12 hour. • 1600倍
Empirical Results C • Simulation-C1 Environment (infeasible) • Find a feasible solution • 300 runs. • FUDI topology. (Europe Topology: 12 nodes, 14 links, BW 6~34Mb/s) • Demand of each run: 20~24 • BW of Demand: uniformly distributed in 5~10Mb/s
Empirical Results C (cont.) • Simulation-C2 Environment (infeasible) • Find a feasible solution • 300 runs. • FUDI topology. (Europe Topology: 12 nodes, 14 links, BW 6~34MB) • Demand of each run: 78 ~ 164 • BW of Demand: uniformly distributed in 0.05, 0.1, 0.2, 0.3, …, 0.9, 1.0
Conclusion • Using BI abstractions coupled with CSP can solve the network bandwidth allocation problem in reasonable time with a complete search algorithm. • This method gives better solutions than Shortest Path routing algorithms.