Upload
anissa-york
View
218
Download
0
Tags:
Embed Size (px)
Citation preview
1
P-Cycles
2
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
3
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
4
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.
5
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
6
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
7
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
8
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
Sk
kk sc
SknsPj
jjkk
,
SinxwPj
jjii
,
SksPjn kj 00
9
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
10
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
Skkjk
Siji
c
xjAE
,
,
)(
Skkjk
Siiji
c
wxjDWE
,
, ),min()(
11
An Iterative Design Algorithm
1. Enumerate all cycles up to a circumference limit; initialize wi to the total working capacities on span i
2. For every cycle j, compute DWE(j)
3. Find the p-cycle with the highest DWE score and place the p-cycle into the design
4. 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
5. Repeat 2-4 until wi = 0 for all i
12
Preselection of Candidate p-Cycles
1. Enumerate all elementary cycles of the network graph
2. 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
13
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
14
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
15
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
16
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
17
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
18
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.
19
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
20
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
21
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
22
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.