220 likes | 426 Views
P-Cycles. What’s a p-Cycle?. A preconfigured cycle formed out of the spare capacities in the network A p-cycle uses one unit of spare capacity on each span Protect both on-cycle spans and straddling spans On-cycle span: a span on the cycle
E N D
What’s a p-Cycle? • A preconfigured cycle formed out of the spare capacities in the network • A p-cycle uses one unit of spare capacity on each span • Protect both on-cycle spans and straddling spans • On-cycle span: a span on the cycle • Straddling span: a span with two end nodes on cycle but itself not on cycle • A p-cycle can protect one unit of working capacity on each on-cycle span and two units of working capacity on each straddling span
Redundancy of p-Cycles • Redundancy = # spare capacity units used / # working capacity units that can be protected = l /(2*s+l) • s: # straddling spans • l: # on-cycle spans • A Hamiltonian p-Cycle can protect every span in the network • Redundancy = N/(N+2(S-N))=1/d-1, where S is the number of spans in the network and d is the average node degree
Advantages of p-Cycles • Real-time switching simplicity and speed of rings • Mesh-like efficiency: very close to span restorable mesh networks • P-cycle networks can support dynamic service provisioning under the protected working capacity envelope concept [1] [1] W.D. Grover, "The Protected Working Capacity Envelope Concept: An Alternative Paradigm for Automated Service Provisioning," IEEE Communications Magazine, January 2004, pp. 62-69.
Protected Working Capacity Envelope Concept • A given distribution of spare channels determines a corresponding maximum number of protected working channels (Wi) on each span • As long as a new service path is routed over spans with Si < Wi , the service path is inherently protected • Si : total number of channels used by existing service paths on span i • Greatly simplify dynamic provisioning of protected services
Optimal Capacity Design of p-Cycle Networks • Given the working capacities on each span, determine a set of p-cycles that minimizes the total spare capacity required for 100% restorability • Solution approach • Generate a set P that contains all elementary cycles of the network graph • Solve an ILP with p-cycles chosen from P
An ILP for Optimal Capacity Design Inputs to the ILP: • S: set of spans in the network • P: set of elementary cycles of the graph • k,j: 1 if cycle j includes span k, 0 otherwise • wi: number of working channels on span i • ck: cost or length of span k • xi,j: number of useful paths cycle j can provide for restoration of span i. xi,j=0 if one or both end nodes of span i are not on cycle j xi,j=1 if span i is on cycle j xi,j=2 if span i straddles cycle j
An ILP for Optimal Capacity Design Variables to be solved by ILP: • si: number of spare channels on span i • nj: number of unit-capacity copies of cycle j Minimize Subject to
Heuristic Approaches to p-Cycle Design • An Iterative Design Algorithm • Provide a reduced number of p-cycle candidates to ILP • Preselection of candidate p-cycles • Algorithmic approaches for generating candidate p-cycles
An Iterative Design Algorithm • A priori efficiency of p-cycle j AE(j): • AE is a measure of the potential efficiency of a p-cycle • Demand weighted efficiency of p-cycle j DWE(j): • wi: the uncovered amount of working capacity • DWE measures the actual efficiency of a p-cycle
An Iterative Design Algorithm • Enumerate all cycles up to a circumference limit; initialize wi to the total working capacities on span i • For every cycle j, compute DWE(j) • Find the p-cycle with the highest DWE score and place the p-cycle into the design • Update the uncovered wi values: p = winning cycle For all on-cycle span of p: wi = wi –1 For all straddling span of p: wi = wi –2 • Repeat 2-4 until wi = 0 for all i
Preselection of Candidate p-Cycles • Enumerate all elementary cycles of the network graph • Choose the K best cycles ranked by AE score and provide them to the ILP • Drawback: enumerating all cycles is time consuming • Number of elementary cycles grows exponentially with the network size
Algorithmic Approaches for Generating Candidate Cycles • Goal: find a set of p-cycles that protect every span in the network without enumerating all cycles • Four algorithms • SSA • SP-Add • Expand • Grow
Straddling Span Algorithm (SSA) • For each span in the network, create a cycle such that the span straddles the cycle • Three cases of a span A-B • Case a: both A and B are degree 3 or higher; two node-disjoint paths exist between A and B • Case b: both A and B are degree 3 or higher; there are no two node-disjoint paths between A and B • Case c: at least one of A and B is of degree 2
SSA • For each span in the network: • Find the shortest path between its end nodes and the next shortest node-disjoint path if the latter exists • Case a: form a p-cycle on the two node-disjoint paths • Case b: form a p-cycle on the span plus the one path between the two end nodes • Case c: no action • If a span of case c is unprotected, add a p-cycle of type b • # created p-cycles # spans in the network
Advanced p-Cycle Operations • Cycles produced by SSA are generally inefficient Want transform the cycles created by SSA into a set of higher efficiency cycles • Key idea: convert an on-cycle span into a straddling span • SP-Add, Expand, Grow
SP-Add • Start with the set A of cycles created by SSA • For each cycle p in A • For each on-cycle span of p, a new cycle is constructed by replacing the span with the shortest path between the span’s end nodes that is node-disjoint from the original cycle, if such a path exists • # cycles created m2, m is the number of spans in the network
Performance of SP-Add J. Doucette, D. He, W. D. Grover, O. Yang, “Algorithmic approaches for efficient enumeration of candidate p-cycles and capacitated p-cycle network design,” Proc. Fourth International Workshop on the Design of Reliable Communication Networks (DRCN 2003), Banff, Alberta, Canada, 19-22 Oct. 2003, pp. 212-220.
Expand Operation • Similar to SP-Add except that • After processing a span of the cycle, carry the new cycle along when checking the next span on the original cycle • Each time when expanding the cycle by adding a route to it, ensure that the route is not only disjoint from the original cycle, but also disjoint from every previously added routes • Can keep or discard the intermediate cycles
Grow Operation • Start with the set A of cycles produced by SSA • Use the SP-Add algorithm on A to produce cycle set B • For each cycle in B • Visit the first span in the cycle and find the shortest route between its end nodes that is node-disjoint from the cycle • If such a route doesn’t exist, move on to the next span and try again
Grow Operation • If such a route exists • Replace the span with the route to create a new cycle • Visit the first span of the new cycle and start over, continue until no further route additions can be made • Each intermediate cycle found along the way is retained, including cycles in A and B • Idea: produce a wide range of cycles • Grow generates no more than m2n cycles, where m/n is the number of spans/nodes in the network
Performance of Expand and Grow J. Doucette, D. He, W. D. Grover, O. Yang, "Algorithmic Approaches for Efficient Enumeration of Candidate p-Cycles and Capacitated p-Cycle Network Design," Proceedings of the Fourth Intl Workshop on the Design of Reliable Communication Networks, Banff, October 2003, pp 212-220.