Photon Netw Commun (2007) 14:123–133 DOI 10.1007/s11107-007-0059-0 Comparison of p-cycles and p-trees in a unified mathematical framework Aden Grue · Wayne D. Grover Received: 28 February 2007 / Accepted: 2 May 2007 / Published online: 17 August 2007 © Springer Science+Business Media, LLC 2007 Abstract As high-speed networks grow in capacity, network protection becomes increasingly important. Recently, following interest in p-cycle protection, the related concept of p-trees has also been studied. In one line of work, a so-called “hierarchical tree” approach is studied and compared to p-cycles on some points. Some of the qualitative conclusions drawn, however, apply only to p-cycle designs consisting of a single Hamiltonian p-cycle. There are other confounding factors in the comparison between the two, such as the fact that, while the tree-based approach is not 100% restorable, p-cycles are. The tree and p-cycle networks are also designed by highly dissimilar methods. In addition, the claims regarding hierarchical trees seem to contradict earlier work, which found pre-planned trees to be significantly less capacity-efficient than p-cycles. These contradictory findings need to be resolved; a correct understanding of how these two architectures rank in terms of capacity efficiency is a basic issue of network science in this field. We therefore revisit the question in a definitive and novel way in which a unified optimal design framework compares minimum capacity, 100% restorable p-tree and p-cycle network designs. Results confirm the significantly higher capacity efficiency of p-cycles. Supporting discussion provides intuitive appreciation of why this is so, and the unified design framework contributes a further theoretical appreciation of how pre-planned trees and pre-connected cycles are related. In a novel further experiment we use the common A. Grue (B) · W. D. Grover TRLabs, 7th Floor, 9107-116St, Edmonton, AB, Canada T6G 2V4 e-mail: agrue@trlabs.ca A. Grue · W. D. Grover Dept. of Electrical and Computer Engineering, University of Alberta, Edmonton, Alberta, Canada W. D. Grover e-mail: grover@trlabs.ca optimal design model to study p-cycle/ p-tree hybrid designs. This experiment answers the question “To what extent can a selection of trees compliment a cycle-based design, or viceversa?” The results demonstrate the intrinsic merit of cycles over trees for pre-planned protection. Keywords p-Cycle · p-Tree · p-Segment · p-Path · Hierarchical tree · Restorable network · Integer linear programming Introduction As the capacity of communication networks increases, protection of the network resources becomes increasingly important. One promising strategy for protecting networks via rerouting of connections around single failed network spans is the p-cycle approach. First proposed in [1], p-cycles are formed out of spare capacity that is pre-cross-connected into cycles and used to re-route working flow in the event of span failures. The most significant property of p-cycles is that they yield the high capacity efficiency of mesh networks, while retaining ring-like protection switching speeds and the planning simplicity of fully pre-planned, predictable protection reactions. A comprehensive background on p-cycles can be found in [1] or Chapter 10 of [2]. Figure 1a shows a single p-cycle (which may be one of several in a complete network design), and Figs. 1b and c give examples of the p-cycle’s restoration action for an on-cycle span and a straddling span failure, respectively. For later reference we note that for every span on the cycle, the cycle offers a single surviving re-route path to the failure, and two such re-routing paths for each span that “straddles” the cycle (as in Fig. 1c). 123 124 Photon Netw Commun (2007) 14:123–133 Fig. 1 (a) A unit-capacity p-cycle, (b) its single-channel protecting reaction to an on-cycle span failure, and (c), its dual-channel protecting reaction to a straddling span failure In this work we will be reviewing and defining a corresponding approach to pre-planned protection using trees instead of cycles, and then comparing their spare capacity requirements for 100% restorability to that of cycle-based designs. In this regard, it is worth recounting that p-cycles emerged originally out of a study of how many different types of pre-connected spare capacity “patterns” could be shared efficiently over multiple distinct failure scenarios to form highly failure-ready survivable networks [3]. Failure-ready in this sense meant mainly that—other than the cross-connections at the end-nodes of failures, used to switch affected working traffic into the protection paths—the protection paths themselves would be either maximally or fully pre-crossconnected before failure, in a state as needed by the failure. It turns out this is possible by design to fully achieve this condition using only p-cycles. But in the original studies that lead to that finding, cycles, linear segments, trees, and even completely arbitrary patterns, were all considered admissible to the design problem under a genetic algorithm that aimed to evolve a set of pre-configured patterns with minimal spare capacity for 100% restorability. It was surprising at first that the most efficient solutions from the GA were based almost entirely on cycles. The same finding was sustained in comparison of an all-cycles based design obtained by integer liner programming (ILP) in comparison to an all-tree based survivable network, developed using adaptations of spanning tree algorithms. The surprising efficiency of p-cycles was rendered intuitively understandable by the central role of the availability of two protection paths for straddling span failure scenarios [1]. It is relevant that, as far back as [3], it was appreciated that what is significant about cycles as protection structures, compared to any acyclic structure such as a path segment or a tree, is that an acyclic building block element can protect at most one working channel (per unit of its own capacity). The instant that the pre-connected path segment is extended to close on itself, forming a cycle, this ratio jumps to two. This is an inherent, discontinuous jump in efficiency that exists between cyclic structures and acyclic structures, such as trees. We feel that any new findings that show tree-based protection to be equal to or greater than p-cycles in capacity efficiency should be investigated to determine the cause of the apparent contradiction between such findings and the original work performed in [3]. 123 Given the impact that p-cycles have had in recent years, there has been renewed interest in the overall idea of preconnected protection ( p-) structures in general. Next to cycles, tree-oriented techniques are probably the most obvious and interesting counterpart to consider. Tree-based algorithms for non-survivable networking and for applications like broadcasting and computer networking have been well developed in past decades. The heritage of past tree-based graph algorithms and the recent interest in protection, and the emergence of p-cycles all have lead to a new interest in considering tree-based protection. The increased interest in tree-based approaches makes the comparison against p-cycles of heightened interest and relevance. This leads to our focus here, which is on the capacity efficiency of p-cycle designs versus tree-based designs. Other, more qualitative characteristics such as perceived flexibility, speed, scalability, and so on will be commented on but are not the main emphasis. To be meaningful, two ground rules must apply to the comparison: (1) both types of design must be 100% restorable to any single span failure and (2) for fair comparison, both types of network should be based on optimal methods for the corresponding design problem. If (1) did not pertain, the comparison of protection capacity is not “apples-to-apples.” And (2) is required so that any heuristic, empirical, or algorithmic bias or approximation cannot be attributed to one or the other set of designs as confounding our ability to gain reliable findings and insights in the comparison. Literature The original work done in [3] on pre-connected patterns considered pre-connected tree structures for the purpose of span protection, and was discussed in passing above. While useful to discover the high merit of p-cycles at the time, the genetic algorithm method was suboptimal, and did not provide a rigorous comparison of optimal pure tree-based solutions against corresponding pure optimal p-cycle designs. Other areas in which one finds consideration of tree-based protection include “shared backup trees” [4–6] and redundant or “red/blue” trees [7–9]. Shared backup trees are rooted tree structures that protect unidirectional working paths that terminate at their roots, while redundant trees are designed such Photon Netw Commun (2007) 14:123–133 125 Fig. 2 (a) a chain of three nodes, (b) the impossibility of finding a spanning h-tree for 100% restorability in such a network, and (c) an unrestorable failure due to the improper choice of h-tree and root node the failure of any single span in the network leaves the end nodes of every working path connected to each other through at least one of the trees. None of these works, however, offers comparison of trees to p-cycles for span restorable mesh network design, which is the present aim. This brings us to the aforementioned line of work on “hierarchical trees” [10–12] (there is also a related Ph.D. thesis [13] under revisions at the time of this draft), which motivated the present effort. In this series of publications a number of surprising assertions are made as to how tree and cycle-based protection schemes compare. Particularly, found in [11] are statements that give a mistaken impression that p-cycle networking is always based on the use of a single Hamiltonian cycle, statements that non-shortest path restoration re-routing wastes protection capacity, and statements in regard to spare capacity efficiency that “the performance of our tree algorithm… does come very close to cycle-based schemes”. The last claim particularly is generally contrary to what was found in [3], and therefore merits further investigation. Furthermore, this also brings to light the fact that, to date, there has not been any formal, systematic comparison study of p-cycles and trees in terms of spare capacity efficiency. Part of the current confusion arises from different notions of what tree-based pre-configured survivability actually means. We are of the opinion that it should be axiomatic that any pre-configured scheme should be able to support 100% restorability against any single span failure by design, as was assumed in [3]. It would then be the spare capacity of such designs that one would consider in comparison to other schemes. In addition, using tree-based structures implies that any failure scenario derives its survivability from immediately available fully pre-configured protection paths found within these structures. But neither of these are properties of the hierarchical tree approach of [10–12]. First of all, it cannot assure 100% restorability by design on an arbitrary bi-connected network. There are two possible causes for this. First, spans more than one hop from each end of a chain of degree two nodes remain un-restorable because no single hop off-tree routing exists which would restore the failure, and secondly, the methods for root node choice and spanning-tree formation from [10–12] have no ability to assure by design, that there will not be on-tree spans which also turn out to be un-restorable because the only off-tree links available from the “downstream” node of the failed link return to the tree on the same side of the failed link. These two cases are illustrated in Fig. 2.1 Figure 2a shows an instance in which the network contains a chain of three degree-2 nodes. Figure 2b illustrates an attempt to find a spanning h-tree for this network. Obviously, the illustrated tree is not a spanning tree at all, because it does not reach node X. But if we were to extend the tree from span A to node X, span A would become unrestorable, as there would be no off-tree hop available from either of its nodes to reach the other side of the tree. A similar argument applies to extending the tree from span B. Therefore no h-tree can reach node X in the middle of the degree-2 node chain, and a spanning tree to provide 100% restorability cannot be found. Figure 2c illustrates the second situation, in which the downstream node of the h-tree in the illustrated failure situation cannot find a single hop off-tree routing to the opposite section of the tree (i.e. nodes X or Y) as needed to effect restoration. The only adjacent nodes are on the same side of the span failure as the downstream node itself. Nothing in the algorithms given for h-tree in any of the papers on the topic [10–12] includes a way to construct the spanning h-tree so that instances of Fig. 2c are avoided by design. In both situations, the hierarchical tree scheme will be unable to restore against the given failures. In addition, the above-mentioned need to resort to offtree routing methods for the failure of on-tree spans introduces two separate classes of restoration in the h-tree scheme: one for off-tree spans and one for on-tree spans. This helps explain the apparent contradiction between the conclusions 1 Note that in both situations, the problem is not that there is no off-tree route at all over which the illustrated failures could be restored. In all cases the graph remains a bi-connected graph containing one failure, so there is always at least one surviving route through the graph between the failure end-nodes, which can be found be a generalized re-routing procedure if a more generalized approach than the hierarchical tree was used. Rather, the un-restorability arises from the strict adherence under the “h-tree” scheme that generalized off-tree routing is not used. Under the h-tree scheme, restoration for on-tree failures occurs always over a path that begins with a single off-tree span that is adjacent to the end of the failure span that is farthest away from (downstream of) the root node of the h-tree. This rigid on-tree failure restoration approach results in the two classes of problems listed. 123 126 drawn in [11] and previous knowledge about the spare capacity efficiency of tree-based protection; the h-tree scheme is in fact not fully tree-based for a significant proportion of network failures. In fact, it may be viewed as just a special case of the more general span-restorable mesh scheme, except that the restoration routes for some spans are constrained to lie on the pre-planned tree. In contrast, in p-cycle network designs, every span is similarly protected by fully pre-formed paths through a p-cycle. In efficient p-cycle network design, multiple cycles are used and each is an inherently local structure, the size of which individually has no connection to the overall network size. Thus, it is problematic to compare h-tree protection to p-cycles. A meaningful comparison of trees to p-cycles would involve a concept of tree-based protection which provides the same key properties as the p-cycle designs, i.e., (1) capability to be designed for 100% restorability (on any biconnected graph), and (2) supporting fully structure-based restoration for all spans (not a mixture of partly tree-based restoration supplemented with an off-tree routing algorithm). Figure 3 illustrates the resulting concept of complementary tree-based protection design, which is comparable to p-cycles in these two main regards. It is this conception of what tree-based survivability design embodies that will be studied here in comparison to p-cycles. We call this approach “ p-trees”. In other literature on tree-based survivability design, a paper by Tang and Ruan [14] recently picked up on the single spanning tree approach from [10–12] and modified the on-tree protection scheme such that 100% restorability could at least be attained in all cases. The authors first prove that there will always exist a restoration route for an on-tree span Photon Netw Commun (2007) 14:123–133 that contains at most one off-tree span. The reason that the original h-tree scheme fails in some cases, however, is that it requires that this off-tree span be adjacent to the downstream node of the failed span. When this is not the case, the restoration route is not found. Tang and Ruan simply relax the scheme slightly such that the restoration route can be found even when this single off-tree span is not adjacent to the failure. In [14] the authors also provide the first example, in the literature that we know of, of an ILP model that could be used to solve the hierarchical tree protection problem. However, they do not make it their goal to compare trees to p-cycle designs. And the fact remains that the h-tree concept, even when treated by ILP methods, remains not fully tree-based; it is a hybridization of tree-based protection with off-tree dynamic routing concepts. Experimental method In this section we explain how the capacity-comparison of p-trees and p-cycles can be approached through the use of a single unified ILP design model in which cycles and trees are just different classes of pre-configured patterns that one may elect to use to achieve the survivable design. This not only gives a single overarching theoretical framework which unifies p-trees and p-cycles under the higher classification of pre-configured pattern protection schemes, but it also provides an unassailably fair “apples and apples” basis for quantitative comparison of p-tree and p-cycle network designs. Design assembly under a common framework Fig. 3 A set of p-trees that provides full restoration using only treebased protection 123 The central realization is that, viewed in a certain optimization framework, the p-cycle design problem is not different than the p-tree problem. p-Trees and p-cycles are both span protecting technologies based on the idea of pre-defined structures formed in the protection layer. This allows their optimal design problems to be expressed as a common ILP problem that is simply provided with different families of candidate protection structures for its solution. An important implication is that, if the set of candidate structures provided is the set of all distinct trees on the network graph, then all possible schemes for tree-based network design will be inherently considered, as the ILP tree solutions will be known-optimal solutions, the best possible that can exist by any algorithm. This is also practically valuable because it means that to compare p-trees and p-cycles (at the fundamental level intended here) we are not obliged to find and implement every possible known algorithm for the tree-based approach. The best performance of any possible tree algorithm will be reflected in the results. The same argument Photon Netw Commun (2007) 14:123–133 127 Fig. 4 A p-tree (a), its reactions to two protectable span failures (b) and (c), and an on-tree failure (d) that cannot be protected by the tree itself, and must be protected by another complementary tree applies to the p-cycle case if it is populated with the set of all distinct (simple) cycles of the graph. Thus, p-trees are to be formulated under the same general paradigm of pre-configured structures of spare capacity used by p-cycles. To do this we have to characterize trees as protection structures in a manner analogous to how we characterize candidate cycles in the p-cycle design problem. This involves determining the parameters that describe the layout of each tree on the graph and that encode the amount of protection any candidate tree provides to any prospective failure. Let us illustrate by considering a specific candidate tree in Fig. 4. In Fig. 4b the tree provides protection for one working channel on the failed span shown (per unit capacity of the tree itself). A tree is, however, fundamentally unable to provide protection to spans that are on the tree itself, because no surviving path through the structure itself remains when a tree is cut; protection of these spans must be performed by other, complementary trees in the design. In other words, the only types of failures that trees can protect against are analogous to the “straddling” span failures in p-cycles, i.e., spans that are not part of the tree but have both end-nodes on the same tree. Even then, however, trees can only provide one protection path for a failed “straddling” span, as opposed to the two provided a p-cycle. Also note that when a tree is used to restore a failed span, some parts of the tree will remain unused (dashed lines in Fig. 4b, c) and have to be “pruned off” in real-time, allowing formation on the desired single path through the tree. This implies that p-trees inherently not as amenable to strict prefailure pre-cross-connection of protection paths in the same sense as p-cycles are. Sets: S is the set of spans in the network, and is usually indexed by i for a failure span, and j for surviving spans. K is the set of candidate structures in the graph eligible for formation of protection structures, and is usually indexed by k. In the traditional p-cycle model this is a set of candidate cycles (usually all cycles in the graph if possible). The common ILP model The set of constraint inequalities (1) ensures that there will be enough structures to protect all of the working capacity on each span in the network. The set of constraint equations (2) ensures that there will then be enough spare capacity on each span to support the allocation of the structures set by n k . The ILP model that has traditionally been used to solve the p-cycle design problem can be adapted to serve also for p-tree network design as follows. Input parameters: wi is the number of working channels (or capacity units) on span i that require protection. xik ∈ {0, 1, 2} encodes the number of protection relationships provided to span i by a unit-sized copy of structure k. δ kj ∈ {0, 1} encodes the spans on protection structure k itself. C j is the cost of a unit of capacity (i.e., a single channel) placed on span j. Decision variables: s j ≥ 0 is the integer number of spare channels assigned to span j in the design. n k ≥ 0 is the integer number of unit-capacity copies of structure k in the design. Objective function: Cj · sj Minimize j∈S Constraints: wi ≤ xik · n k ∀i ∈ S (1) δ kj · n k ∀ j ∈ S (2) k∈P sj = k∈P 123 128 Photon Netw Commun (2007) 14:123–133 Table 1 Meanings of the model parameters specific to the tree and cycle contexts For a candidate tree For a candidate cycle k Index of the candidate tree Index of the candidate cycle xik 1 if span i has its end nodes on the tree but is not on the tree itself, 0 otherwise 2 if span i straddles cycle k, 1 if span i is on cycle k, 0 otherwise δ kj 1 if span i is on tree k, 0 otherwise 1 if span i is on cycle k, 0 otherwise nk The number of unit copies of this p-tree in the solution The number of unit copies of this p-cycle in the solution The objective function minimizes the total amount of spare capacity in the network. As stated above, the model employs generalized descriptions of the candidate “protection structures” through parameters k, xik , δ kj , and n k . For our purposes, these structures will be either trees or cycles. Table 1 elaborates on the meaning of each of these parameters in the tree and cycle contexts. Note that the basic ILP model is capable of even greater generality than we will use it for here. Nothing in the ILP is itself specific to cycles or trees. If the parameters xik and δ kj are computed accordingly, they can represent any preconnected protection structures. For our purposes, though, when the set K is populated with candidate tree structures, the model will provide a lowest cost set of p-trees to protect the network from all single span failures. Similarly, K is populated with candidate cycles for the pure p-cycle design case. But note also that the model has the ability to consider both p-cycles and p-trees at the same time to allow study of a hybrid of the p-cycle and p-tree architectures. This is possible by populating K with both candidate cycles and candidate trees simultaneously. The solver is indifferent to the distinctions we make between “protection architectures” and will simply use the best span-protecting structures out of the set it is given to protect the network. Figure 5 thus outlines how the unified ILP model is to be used in this study. The hybrid experiment will be especially interesting because it will answer the question: “What if the unbiased optimizer were allowed to decide for itself, on a structure by structure basis, what specific trees and what specific cycles it wanted to use together to achieve an even more comprehensively optimized overall design?” Will a globally optimum design that is free to use any possible choices of tree or cycle consist of a significant hybridization of trees and cycles? Or will the solver chose all trees, or all cycles, based on superior ability to reduce the objective function? And will the spare capacity decrease significantly below that achievable by the best pure architecture alone? Practical considerations In reality, the size of the sets of all candidate trees may be so large that we cannot represent the entire set in all our experi- 123 Candidate trees Candidate cycles All trees + all cycles Common ILP design model Optimal p-tree designs Optimal p-cycle designs Optimal treecycle ìh ybrid” designs Fig. 5 Block diagram of the single-model/multiple architecture design concept ments. The candidate cycle sets are always smaller however, and amenable to complete representation in practically-sized problems. Although theoretically the numbers of cycles and trees both increase exponentially with the size of a network, for practical network sizes (up to perhaps 50 nodes at the very most), the number of distinct simple cycles to serve as p-cycle candidates is quite manageable. The set of all trees, however, increases in size much faster, becoming impractical in some of our test cases for present-day ILP software and computer hardware. As a result, we are restricted to either solving optimal designs for small networks, or making compromises for network designs using larger topologies by applying reasonable criteria by which to exclude trees from the candidate set to limit its size to a manageable level. The results that follow are based on both strategies. For the “small” networks results are truly optimal for tree, cycles, and hybrids. Where noted, results on larger topologies are based on a restricted set of trees used in the candidate set. Specifically, this involved limiting both the size of the trees (i.e. the number of spans they contain), and their maximum nodal degree (i.e., the largest number of spans that branch out from any node in the tree). Details are given for each test case. Photon Netw Commun (2007) 14:123–133 129 Test cases Results and discussion Our “small” network designs consist of p-cycle, p-tree and hybrid designs for 10 different test networks that together comprise a network family. A network family is generated by starting with a “master network” with a network graph of degree 4, and removing one randomly chosen span at a time, while retaining bi-connectivity (necessary to ensure the possibility of 100% single span failure restorability), until no more spans can be removed in this way. Each of the intermediate networks created this way has a different average nodal degree but serves the same node and demand set, facilitating comparison based on the effect of varying network connectivity while keeping other factors constant. The master network used to create this family contained 10 nodes and 20 spans. The family itself consists of 10 networks with 11–20 spans (nodal degree of 2.2–4). All results on networks from this family are based on the mathematically complete sets of candidate cycles and trees. A further set of 35 larger test networks was drawn from two more network families, one with 15 nodes and one with 20 nodes. The 15-node family contains 15 test networks with 16–30 spans (nodal degree of 2.13–4) and the 20-node family contains 20 networks with 21–40 spans (nodal degree of 2.1–4). For these test cases, the set of candidate structures consisted of all trees on the graph containing seven or fewer spans, with a maximum nodal degree of 3. This means that, even though the ILP problem instances where trees were considered were allowed to run to completion, they are not strictly optimal designs. However, these results are still useful in the sense that they provide an indication of the comparative usefulness of p-cycles and p-trees in design problems of realistic size. All of the networks in a single network family share the same demand pattern between their nodes, because although the number of spans varies between the networks, the number and placement of the nodes does not change. Three demand patterns were used, one for each family. The demand patterns were created by allocating a random integer demand value, chosen uniformly on the interval from 1 to 10 inclusive, to each node pair. The degree 4 master networks used to generate each network family are shown in Fig. 6. Spare capacity costs Figure 7 gives the spare capacity cost of the three different types of designs (pure tree, pure p-cycle, and hybrid) over all test cases. Logically, because the hybrid designs are able to make use of all the cycles and trees available to the pure p-cycle and p-tree design problems, the spare capacity costs of a hybrid design should never be greater than either of the pure architecture designs for the same test case. In fact, it turns out that the cost difference between the hybrid designs and the pure p-cycle designs is so small that the curves for hybrids and pure p-cycle design never graphically distinguish themselves on the chart. (This is why Fig. 7 appears to have only six lines, although nine are expected: three design tests for each of the three test network families). We will return to discuss this finding further. The main finding portrayed in Fig. 7 is that the spare capacity requirements of the p-tree designs are usually at least double that of the p-cycle designs. In case it is thought that this could be a result of limiting the candidate tree sizes in the 15- and 20-node families, we can consult the 10 node designs, where the strictly complete set of all possible trees is represented in the problem. Even in those cases, the best of the designs (which occurs for the 18-span network) still uses 164% as much spare capacity as the corresponding p-cycle design. The curves for the p-tree designs in the 15- and 20-node network families in Fig. 7 end (viewing in a right to left sense) before those for the p-cycle curves on the same networks. The reason gives an additional insight about the nature of the optimal tree network design problem. In the sparser topology members of these families, it turns out to be infeasible to achieve 100% restorability using trees of only seven spans or fewer. One could try to repeat these results with a higher allowance for tree size, but the number of candidate trees grows so rapidly that this becomes technically very difficult. Furthermore, it is not in any case required to see the trend and the relative ranking of p-tree and p-cycle spare capacity requirements that appears in the results that are available. Fig. 6 10-node (a), 15-node (b), and 20-node (c) master networks 123 130 Photon Netw Commun (2007) 14:123–133 Fig. 7 Comparison of p-cycle, p-tree, and hybrid designs (hybrid costs are indistinguishable from p-cycle costs at the resolution shown) 10 node, p-Tree 15 node, p-Tree 20 node, p-Tree 10 node, p-Cycle (and Hybrid) 15 node, p-Cycle (and Hybrid) 20 node, p-Cycle (and Hybrid) 900000 Spare Capacity Cost 800000 700000 600000 500000 400000 300000 200000 100000 0 2 2.5 3 3.5 4 Network Nodal Degree Returning to the hybrid design tests, what of the finding that the hybrid designs with complete tree and cycle sets wound up having spare capacity costs which are almost indistinguishable from the p-cycle designs? First of all, it confirms the near optimality of pure p-cycle design in this broader space of alternatives. It also suggests that, when absolutely free to choose any mixture of structural building blocks, the unbiased optimal solver chooses to use cycles, not trees, and not even substantial hybrids of trees with pcycles. But were any trees employed at all in the hybrids? In fact some small spare capacity savings (not graphically distinguishable in Fig. 7) did arise in some cases with the hybrid designs. Figure 8 shows a blown up view of the actual differences in spare capacity costs attributable to adding the set of trees to the design problem. The largest differences in spare capacity between a pure p-cycle design and its corresponding design hybridized with p-trees is 5.8%, in the test network with 10 nodes and 14 spans in its topology. The average improvement for the 10-node family is 1.9%, and rarely exceeds 1% in the other families. In many cases absolutely no improvement is found at all. The fact that improvements exist at all, however, might be evidence of there being at least some merit to adding trees in some cases to p-cycle designs. The nature of these hybrid designs is discussed further shortly. Having noted how much more numerous the set of all trees is than the set of all cycles, we decided to also quantify this aspect of the p-cycle/ p-tree design comparison. Figure 9 presents the size of both these sets in each of the test cases. Note that the 10-node designs use approximately the same number of tree candidates as the 15-node designs, because the 10-node designs use all trees while the tree set for the 15-node designs is limited. The plot shows that the set of trees is usually larger than the set of cycles by up to two orders of magnitude. But even with access to this drastically increased set of protection choices, the best possible improvements we can obtain are on the order of only a few percent. 123 Analysis of the hybrid designs Although there was never a practically significant overall reduction in spare capacity by admitting trees to the design problem, we were curious to understand what situations lead to an improvement at all via hybridization with tree structures. We therefore checked each case in detail. It turns out that in most cases, where a unit capacity tree or trees were selected into the hybrid design, they were non-branching segments, not trees at all in the usual sense of the word. Segments are, however, technically structures that are included in the set of “all trees.” In the context of the hybrid design problems, the ILP solver can be seen as an impartial arbiter, deciding between p-cycles and p-trees for inclusion in the network design solely according to which structures contribute best towards minimizing the total spare capacity. Therefore, these p-tree segments can be considered to be, in a sense, the best representatives of the more general set of trees. Surprisingly, even in the cases where trees only provide a fraction of a percent improvement, they can sometimes make up a significant fraction of the total number of unit-capacity structures present. For example, the 20- and 36-span hybrid design is only 0.29% less costly than the corresponding pure p-cycle design, but contains a total of 73 capacitated “trees” (all segments) and 127 capacitated cycles. These 73 trees are all unit copies of the single segment pattern illustrated in Fig. 10. As mentioned, this structure is from the tree set, but it does not exhibit any branching. In fact, out of all of the “ p-trees” that were found to be used in the hybrid designs, 86% of them (357 out of 415) are actually purely linear segments. In fact these structures are already know under another name as p-segments or “ p-paths” [15]. The segments that provide this slight enhancement to predominantly p-cycle designs can be thought of as cycles for which including the last remaining working channels to close the cycle cannot be justified. In other words a p-segment is like a p-cycle but one for which, upon checking, it is found that one or more spare channels of the p-cycle can be removed, because the Photon Netw Commun (2007) 14:123–133 7 10 node family 15 node family 20 node family 6 Hybrid Cost Reduction (%) Fig. 8 Cost differences between p-cycle designs and their corresponding hybrid p-cycle/ p-tree designs 131 5 4 3 2 1 0 2 3 Network Nodal Degree 3.5 4 1000000 Number of Candidate Structures Fig. 9 Number of candidate trees and cycles in the test networks 2.5 10 node Trees 15 node Trees 20 node Trees 100000 10 node Cycles 15 node Cycles 20 node Cycles 10000 1000 100 10 1 2 Fig. 10 (a) A “ p-segment” from the 20-node, 36-span test network hybrid design, and (b) a true degree-3 tree from the 15-node, 27-span network extra protection relationships provided by closing the cycle are not needed. This effect can also be thought of as a way of fine-tuning the amount of spare capacity in a p-cycle design to only a very specific demand pattern. As soon as any ongoing growth in the demand occurs, p-segments will almost instantly be preferred to have been fully closed p-cycles from the start to accommodate the new working capacity. In the remaining cases (about 15% by comparing quantities of unit capacity structures and 29% by counting only 2.5 3 Network Nodal Degree 3.5 4 distinct structures), the trees employed in the hybrids were small degree-3 structures, such as the one pictured in Fig. 10b. The details of the topology in Fig. 10a show how a 7-hop segment can strictly require less spare capacity than an 8-hop cycle in these specific circumstances. The failure of the protected (dashed) span in the figure leaves the two end-nodes separated by quite a distance in the remaining topology. Evidently, any structure that protects this span must be quite long; at least as long as the shortest possible protection path that remains between them, which consists of 7 hops. Therefore the p-segment that protects them is the shortest possible structure that is able to do so. This is characteristic of most of the p-segments found in the designs. Of course, if the segment were closed by adding the one remaining span, the resulting 8-hop p-cycle could also protect that span, but in this particular situation the extra protection relationships that this would provide to other spans are not required. So under strictly optimal design, the cycle is not “closed” and manifests itself as a p-segment, not a p-cycle. Comparison to ILP-computed hierarchical trees As mentioned previously, prior work in [14] used an ILP model to compute optimal designs using a slight modification of the 123 132 Table 2 Comparison of results from [14] with p-cycle, p-tree, and hybrid results produced by our model Photon Netw Commun (2007) 14:123–133 Network Spare capacity (working capacity is identical in all cases) ILP h-trees [14] p-cycle design p-tree design Hybrid design NET1 96 56 102 56 NET2 424 279 559 270 NET3 178 106 180 105 hierarchical tree scheme [10–12]. They give spare capacity costs for such designs on three test networks. The network topologies and demand patterns are given in [14]. For completeness, we present here in Table 2 spare capacity results for p-cycle, p-tree, and hybrid designs, obtained using our ILP model, for these same networks. Working capacity values are the same as those given in [14], as the same shortest path working capacity routing method was used. Note that the p-tree and hybrid designs for NET1 and NET3 were given all network trees as candidates, while the designs for NET2 were limited to using trees with maximum size of 7 and maximum degree 3, because of the size of the network. negligible spare capacity cost improvements (less than 1% on average). In most cases pure p-cycle designs resulted, even though orders of magnitude more tree candidates were present. In a few cases, degenerate degree-2 “trees” (segments in actuality) were recruited into the p-cycle designs for small reductions in spare channel counts, but this is an already known effect, which we explain with the conceptualization of p-segments as an incremental, special case fine-tuning of p-cycle designs. Finally, in some rare and detailed circumstances, small but true trees (degree 3 or more) were found in the hybrid designs. References Concluding discussion Through the investigations presented here, we conclude that the use of pre-planned trees to protect networks against span failures is not capacity efficient in general, as compared to p-cycles. The difference is usually a factor of two or more in total spare capacity requirements. The claims to the contrary in some recent work on “hierarchical tree” protection are partly explainable by the fact that proposed “hierarchical tree” scheme is not 100% restorable by design, and does not use fully tree-based protection. Furthermore, it did not make the comparison of p-trees to p-cycles in the directly comparable quantitative manner used here. The work also makes some other contributions to survivable networking science: we have also shown that a unified mathematical framework exists for design of any span-protecting network using trees, cycles or any other predefined and enumerated sets of protection structures. Using this model, we produced p-tree and p-cycle network designs on identical topologies and demand patterns, leading to the conclusion above about relative spare capacity requirements. In a novel further experiment with the unified model, we were able to let a completely impartial optimizer decide as to the relative merit of trees or cycles as pre-configured protection structures. In these hybrid design experiments, all cycles and trees were presented as candidate structures. Overwhelmingly the solver adopted and employed cycles as its preferred building blocks. Even including a set of trees many times larger than the set of candidate cycles yielded zero or 123 [1] Grover, W. D., & Stamatelakis, D. (2000). Bridging the ringmesh dichotomy with p-cycles. Proceedings of IEEE/VDE design of reliable communication networks (DRCN 2000) (pp. 92–104). Munich, Germany, April 2000. [2] Grover, W. (2003). Mesh-based survivable networks: Options and strategies for optical, MPLS, SONET and ATM Networking, Prentice-Hall PTR. [3] Stamatelakis, D. (1997). Theory and algorithms for preconfiguration of spare capacity in mesh restorable networks, M. Sc. Thesis. University of Alberta, Spring 1997. [4] Lan, T., Steenhaut, K., & Nowe, A. (2002). Shared backup tree protection in MPλS networks. Proceedings of 8th international conference on communication systems 2002 (Vol. 2, pp. 1237– 1241). Brussels, Belgium, November 2002. [5] Groebbens, A., Colle, D., Maesschalck, S. D., Lievens, I., Pickavet, M., & Demeester, P. (2003). Efficient protection in MPλS networks using backup trees: Part one–concepts and heuristics. Photonic Network Communications, 6(3), 191–206. [6] Groebbens, A., Colle, D., Maesschalck, S. D., Lievens, I., Pickavet, M., Demeester, P. (2003). Efficient protection in MPλS networks using backup trees: Part two–simulations. Photonic Network Communications, 6(3), 207–222. [7] Médard, M., Finn, S. G., & Barry, R. A. (1999). Redundant trees for preplanned recovery in arbitrary vertex-redundant or edgeredundant graphs. IEEE/ACM Transactions on Network, 7(5), 641–652. [8] Xue, G., Chen, L., & Thulasiraman, K. (2002). Delay reduction in redundant trees for pre-planned protection against single link/node failure in 2-connected graphs. Proceedings of GLOBECOM 2002 IEEE Global Telecommunications Conference, 21(1), 2698–2702. [9] Xue, G., Chen, L., & Thulasiraman, K. (2003). Quality of service and quality of protection issues in preplanned recovery schemes using redundant trees. IEEE Journal on Selected Areas in Communications, 21, 1332–1345. [10] Shah-Heydari, S., & Yang, O. (2001). A tree-based algorithm for protection/restoration in optical mesh networks. Proceedings Photon Netw Commun (2007) 14:123–133 [11] [12] [13] [14] [15] of Canadian conference on electrical and computer engineering CCECE’2001 (pp. 1169–1173). Toronto, Canada, May 2001. Shah-Heydari, S., & Yang, O. (2004). Hierarchical protection tree scheme for failure recovery in mesh networks. Photonic Network Communications, 7(2), 145–159. Yang, O., & Zhang, Y. (2002). A distributed tree algorithms for WDM network protection/restoration. Proceedings of high speed networks and multimedia communications 5th IEEE international conference (pp. 289–294). Jeju Island, Korea, July 2002. Shah-Heydari, S. (2007). Self-repairing hierarchical tree-based Link restoration scheme for mesh networks, Ph.D. Thesis. University of Ottawa, Spring 2007. Tang, F., & Ruan, L. (2005). A protection tree scheme for first-failure protection and second-failure restoration in optical networks. Proceedings of international conference on computer network and mobile computing 2005 (pp. 620–631). Zhangjiajie, China, August 2005. Schupke, D. (2004). Cycle-based protection for optical transport networks, Ph.D. Dissertation. Technical University of Munich, Fall 2004. Aden Grue received his B.Sc. Degree, with honours, in Computer Engineering from the University of Alberta in April 2004. He is currently pursuing a Ph. D. degree in the Department of Electrical and Computer Engineering at the same institution, in affiliation and with support from TRLabs. In November of 2006 he also assumed a position on TRLabs staff as a Research Engineer. His main research interests include network design, restorable networks, and precross-connected network protection architectures, including p-cycles, p-trees, PXTs, and FIPP p-cycles. 133 Wayne D. Grover received the B.Eng. degree from Carleton University, Canada, the M.Sc. degree from the University of Essex, U.K., and the Ph.D. degree from the University of Alberta, Canada, all in electrical engineering. He had 10 years of experience as scientific staff and manager at BNR (now Nortel Networks) working on fiber optics, switching systems, digital radio, and other areas before joining TRLabs as its founding Technical VP in 1986. He now functions as Chief Scientist—Network Systems, TRLabs, and as Professor, Electrical and Computer Engineering, at the University of Alberta. He has 32 patented inventions, and amid his nearly 200 peerreviewed publications are “highly cited” papers in clock distribution, error-correction coding for fiber optics, digital subscriber loops, and transport network design and survivability, including recent origination of the p-cycles concept and the “protected working capacity envelope” (PWCE) concept for dynamic survivable service provisioning. He is a recipient of the IEEE Baker Prize Paper Award and IEEE Fellow cited for work on survivable and self-organizing networks. Among other awards are the IEEE Canada Outstanding Engineer Award, the Alberta Science and Technology Leadership Award, and the prestigious NSERC Steacie Fellowship. He has received TRLabs Technology Commercialization Awards for the licensing of restoration and networkdesign-related technologies. He is also author of Mesh-based Survivable Networks, Prentice-Hall PTR, 2004 and a co-author of Next Generation Transport Networks, Springer Science, 2005. Current research interests focus on optical network design optimization, new survivability architectures including p-cycles, and new approaches to operation and ongoing re-optimization of dynamic transport networks. www.ece. ualberta.ca/∼grover/ 123