WO1998030040A2 - Method and apparatus for creating preferred routes for network restoration - Google Patents

Method and apparatus for creating preferred routes for network restoration Download PDF

Info

Publication number
WO1998030040A2
WO1998030040A2 PCT/US1997/023884 US9723884W WO9830040A2 WO 1998030040 A2 WO1998030040 A2 WO 1998030040A2 US 9723884 W US9723884 W US 9723884W WO 9830040 A2 WO9830040 A2 WO 9830040A2
Authority
WO
WIPO (PCT)
Prior art keywords
routes
route
network
node
nodes
Prior art date
Application number
PCT/US1997/023884
Other languages
French (fr)
Other versions
WO1998030040A3 (en
Inventor
William D. Croslin
Original Assignee
Mci Communications Corporation
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mci Communications Corporation filed Critical Mci Communications Corporation
Priority to AU56206/98A priority Critical patent/AU5620698A/en
Publication of WO1998030040A2 publication Critical patent/WO1998030040A2/en
Publication of WO1998030040A3 publication Critical patent/WO1998030040A3/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q3/00Selecting arrangements
    • H04Q3/0016Arrangements providing connection between exchanges
    • H04Q3/0062Provisions for network management
    • H04Q3/0075Fault management techniques
    • H04Q3/0079Fault management techniques involving restoration of networks, e.g. disaster recovery, self-healing networks

Definitions

  • the present invention relates to analyzing communication systems, including analyzing systems for restoration after a network suffers from an unplanned outage or break in a signal path.
  • fiber optic cables have increased bandwidth over known twisted pair or copper wire cables
  • fiber optic cables are used increasingly for connecting network stations and other network elements.
  • a greater number of stations or network elements can be connected over a fewer number of fiber optic cables, as opposed to prior cables.
  • telecommunications carriers simulate possible failures, determine restoral routes and develop a "pre-plan" by collecting large amounts of data reflecting the logical topology of the network, and then analyze this data.
  • the collected data is often retrieved from network engineering databases which reflect the logical construction of the network, such as indicating the connections and paths of all network traffic trunks.
  • An engineer or network analyst analyzes the collected data, compares the collected data to the geographic or physical layout location of the network, and then generates the pre-plans therefrom.
  • Telecommunications carriers typically simulate different failure scenarios in advance of any network outages. Based on the scenarios, the telecommunications carriers establish the pre-plans that can be used at various stations of the network to establish restoral routes to recover from the network outage. Since the number of possible failures in a network necessarily increases as the size of the network increases, a large number of pre-plans are required. Furthermore, since technological improvements allow network topologies to change relatively quickly and easily, and as a network grows, such networks are not static. As a result, pre-fabricated restoral plans or pre-plans must be continually reevaluated, and new pre-plans created.
  • Dynamic restoration methods formulate a restoral route dynamically, during the restoration process and when a failure is detected, so that the method employs the most accurate and recent network data available.
  • dynamic restoration methods require extensive and time- consuming analysis during the restoration process.
  • a restoral route must be quickly created. Not only must various restoral routes be located, but an optimal restoral route must be identified in terms of its cost to the network. Determining a low cost, and thus optimal, restoral route during a failure requires extensive analysis of the entire network topology data. As a result, when a network failure occurs, the processing time required for dynamic restoration methods cause the restoration process to take longer than is typically desired by most telecommunications carriers.
  • the present invention enhances network restoration processes by providing an automated method of creating preferred restoral routes for network restoration.
  • a method and apparatus under the present invention first analyzes topology data for the network. Under an exemplary embodiment, a maximum threshold of inter-node connections is then specified and all routes under the threshold are identified. A cost or other factors are preferably assigned to each individual link, and a total cost is determined for each route. The routes are preferably ranked according to their costs. Thereafter, a preferential route table is constructed for each node in the network which identifies every other node to which it is coupled. The resulting preferred route tables can be employed by various applications, such as in dynamic restoration systems to dynamically build a restoral route on a node-to-node basis following an outage in the network.
  • the present invention embodies a method for analyzing a network.
  • the network has a plurality of nodes interconnected by links.
  • the method includes the steps of: (a) identifying sets of routes within the network, wherein each route extends between two or more nodes along one or more links and wherein each set of routes includes one or more routes that extend from a starting end node to a selected end node selected from the plurality of nodes in the network; and (b) creating an organized set of data for at least some of the starting nodes in the plurality of nodes, wherein the organized set of data represent a first link in each set of routes from each of the starting nodes to an adjacent node.
  • Figure 1 is a block diagram of a portion of a network, including a network control center.
  • Figure 2 is a block diagram of an alternative portion of the network.
  • Figure 3 is an exemplary flowchart diagram of a method for creating preferred restoral routes under the present invention.
  • Figure 4 is an exemplary flow diagram of a subroutine performed by the method of Figure 3.
  • Figure 5 is an exemplary flowchart diagram of an alternative method for creating preferred restoral routes under the present invention.
  • Figure 6 is an exemplary flowchart diagram of a subroutine performed by the method of Figure 5.
  • a telecommunications network and in particular, a method and apparatus for analyzing the network, is described in detail herein.
  • numerous specific details are set forth such as network configurations, ordering and execution of steps under an analysis routine, etc., in order to provide a thorough understanding of the present invention.
  • One skilled in the relevant art will readily recognize that the present invention can be practiced without use of the specific details described herein, or with other data formats, specific steps in a routine, etc.
  • Well-known structures and steps are not shown or described in detail in order to avoid obscuring the present invention.
  • a telecommunications network 10 includes interconnected network stations or nodes AAA, BBB, CCC. DDD, EEE, and FFF, designated as stations 12-17, respectively.
  • each node can include digital cross connect (DXC) systems, multiplexing equipment, line termination equipment, and/or fiber transmission systems.
  • DXC system is a complex digital switch capable of automatically switching trunks based on external commands.
  • a "trunk.” as generally used herein, is a logical channel of communications capacity that traverses one or more nodes and one or more links between nodes (e.g., DS-0, DS-1, DS-3, etc.).
  • Line termination equipment and fiber transmission systems typically include light-to-electricity transducers and/or multiplexers, as is known in the art.
  • communications traffic is routed between the network nodes 12-17 along trunks, and between these and other network nodes of the larger network 10 of which the portion shown in Figure 1 forms a part thereof.
  • Each node typically has a unique address or other designator in the network 10.
  • each node 12-17 is connected by control circuits 19-24, respectively, to a network management or control center 30.
  • the control circuits 19-24 may each be an X.25 circuit, which is a known circuit for carrying control communications between the associated node and the network control center 30.
  • the network control center 30 includes a computer 32 and a terminal 34 for interacting with the computer 32 which provides an interface for human interaction.
  • the network control center 30 also includes a storage facility or device 36 for storing network and circuit routing data, topology data, pre-plans, etc. Several of such network control centers 30 can be distributed throughout the network 10.
  • the network control system 30 determines the location of the outage. Under the centralized restoration system of Figure 1, the network control system 30 performs failure locating routines, such as routines described in detail in the inventor's copending U.S. patent application entitled “Method and Apparatus for Centralized Network Restoration,” filed concurrently herewith.
  • the computer 32 in a centralized restoration system retrieves from the storage facility 36 information about the impacted circuits including the paths that they follow and the equipment they pass through at different nodes along the paths. Based on this data, the network control system 30 can dynamically restore telecommunications traffic on the network despite the outage.
  • the network control center 30 implements the alternative routes in the network 10 by establishing new connections via commands transmitted through the control circuits 19-24, or alternatively, depending upon the equipment employed at the nodes 12-17, by other means of transmission to effect or direct manual actions to be taken at the nodes. For example, spare high bandwidth DS-3 trunks typically exist throughout the network 10, which can be employed to restore an outage in the network.
  • the network 10 is most effectively restored when the nodes 12-17 employ DXC systems that can automatically switch from one trunk to another based on commands from the network control center 30. Referring to Figure 2, an exemplary network portion 80 of the network
  • a “link.” as generally used herein, is a physical connection between two nodes, representing any type and any capacity of communications between the nodes.
  • a single link usually consists of multiple trunks, and a single trunk consists of one or more links that span multiple nodes. In general most high capacity networks contain far more trunks than links.
  • the network portion 80 of Figure 2 is employed below as an example of a network portion analyzed by the present invention.
  • the nodes A-H represent "restoration" nodes of the telecommunications network 10. While the network 10 typically includes various nodes, such as nodes having multiplexing equipment (e.g. , "Ml 3 nodes"), digital repeater nodes, switch nodes, etc., only certain nodes in the network are employed for network restoration. For example, nodes having DXC systems are especially useful for network restoration. Thus, nodes having DXC systems in the exemplary embodiment are restoration nodes. Other nodes that are not useful for restoration, such as nodes containing only digital repeater equipment, are "intervening nodes," and are not shown in Figure 2.
  • Each node A-H is coupled to the links shown in Figure 2 by way of ports at the nodes.
  • ports 110, 111 and 112 of node A couple to nodes F, B and E through links 120, 121, 122, all respectively.
  • ports 1 13, 1 14 and 1 15 of node E couple to nodes G, D and A through links 123, 124 and 122, all respectively.
  • a routine 200 performed by the computer 32 in the network control center 30 identifies node interconnections to thereby derive a data table that represents the links of preferred restoral routes of the network 10 based on physical topology data.
  • the table can then be used for multiple applications, such as for dynamically building restoral routes by selecting individual links of preferred routes on a node-to-node basis.
  • a dynamic restoral method allows a restoration system to maintain the speed of pre-fabricated restoral plans (pre-plans), while maintaining the accuracy of up-to-date information employed by dynamic restoration methods.
  • the tables produced therefrom can be rapidly employed by a dynamic restoration system because the time-consuming task of analyzing the network has previously been performed before the failure occurred.
  • the present invention identifies every possible restoral route in the network, within specified limitations, between each pair of nodes in the network 10.
  • the routine 200 determines the cost of each route and ranks each route between each node pair based on the cost.
  • the routine 200 then builds tables for each node that identified the preferred restoral routes, ranked by cost, to every other node. As a result, for each node, there is a table for every other node in the network that identifies restoral routes to those nodes. However, rather than specifying the entire route, the tables specify the port at a given node that transmits to the next or adjacent node of the preferred restoral route. This allows a restoral route to be built dynamically on a node-by-node basis, thereby optimizing each link as the route is built.
  • the routine 200 can be performed on a single computer of virtually any type, preferably a computer which forms part of a network restoration system, such as the computer 32.
  • the routine 200 when employed with a dynamic restoration system, is preferably performed prior to a network failure, and on a periodic basis.
  • the tables produced therefrom are based on the then current physical network topology, which changes infrequently, typically less than daily.
  • the routine 200 is performed daily, it virtually ensures that the preferred restoral routes and tables created therefrom accurately reflect the network topology when a failure occurs.
  • Such extensive analysis of the network topology performed before an outage occurs minimizes the time required during the dynamic restoration process.
  • the computer 32 retrieves restoration node topology data, such as the physical topology data for the network 10 for DXC level nodes.
  • the physical network topology defines the network in terms of its interconnected nodes, as described herein.
  • the physical topology data is preferably automatically generated prior to performing the routine 200, such as under the inventor's copending U.S. patent application entitled “Method and Apparatus for Deriving and Representing Physical Network Topology,” filed November 26, 1996 (Assignee's docket number COS-96-022).
  • the computer 32 need only employ physical topology data that identifies restoration nodes in the network and restoral routes, in addition to primary traffic routes, extending between the nodes.
  • a partial list of links, based on node connections includes:
  • a "route,” as generally used herein, is a path of communications, consisting of one or more links, between a pair of end nodes with zero or more nodes therebetween. Each pair of nodes in the network is a pair of end nodes, although some pairs of nodes may not have any possible route therebetween.
  • a partial list of routes for the network portion 80 therefore includes: A-B-C-D-E
  • the computer 32 receives the physical topology data from the storage facility 36. Thereafter, under steps 204-216, the computer 32 analyzes or processes each individual trunk in the network 10 until all nodes have been analyzed.
  • a network analyst or engineer specifies a maximum number of inter-node connections or "hops" that can be taken by a route to be considered a practical restoration route.
  • a hop traverses a node, and is equivalent to a number of links. For example, a route that traverses nodes A-F-G-E includes three links therebetween, and thus takes three hops. The maximum number of hops selected by the network analyst helps eliminate restoral routes that are too costly.
  • the computer 32 identifies all physical routes between every node pair in the network 10 that are within the threshold specified under step 204.
  • the computer 32 can employ alternative or additional rules when identifying physical routes. For example, the computer 32 can eliminate any routes that include retracing a link or "backhaul."
  • An example of a backhaul is a route that traverses nodes A-B-F-B- C.
  • the backhaul from node F to node B can be possible because of multiple trunks on the link between nodes B and F, so that a route extends from node B to node F on one trunk, and then back to node B on another trunk. However, it is typically neither desirable nor useful for a restoral route to have backhaul. Additionally, or alternatively, the computer 32 can select only certain routes that form all or part of selected network configurations, such as routes having pass-through nodes, stranded network non-rings or rings, etc. A method of determining such network configurations is described in the inventor's U.S.
  • the computer 32 in step 206 processes the topology data retrieved in step 202 to identify every possible route among restoration nodes within the maximum hop threshold and/or other rules. For example, with the maximum hop threshold established at 4 and omitting backhaul, the computer 32 in step 206 identifies all routes between end nodes A and E as follows:
  • step 206 the computer 32 also determines all routes between every other node pair in the network.
  • the computer 32 determines and applies a cost to each individual link in the network.
  • the particular definition and determination of costs can vary in a given network, and should meet the needs of the restoration system. Examples of common factors used to determine costs include: capacity of a link, distance traversed by a link, equipment used at nodes or along the link, priority of traffic supported by the link, types of traffic supported by the link, and a number and type of intervening nodes along a link or route. Other factors, of course, can be employed. By employing all of these factors, the computer 32 associates a cost with each link in the network 10.
  • each link can support several trunks, where each trunk uses an individual port at each node.
  • a DXC level network such as a DXC 3/3 level network where DS-3 trunks entering and exiting the node are switched by the DXC system.
  • Multiple DS-3 trunks can traverse a single link, thereby causing the link to use multiple ports at each node.
  • each port can be associated with a different cost, even though the ports are associated with a single node and a single link. Consequently, computer 32 in step 208 applies a separate cost to each port.
  • the link 121 between nodes A and B supports 10 DS-3 trunks on a single optical fiber transmission system, then there will be 10 ports on each of the nodes A and B.
  • the link 121 is demultiplexed and input to 10 separate ports.
  • Each of such 10 DS-3 trunks can have equivalent priority and designation, and therefore have the same cost.
  • some of the 10 trunks on the link 121 can have a different priority or designation than the other trunks. Therefore, their costs will differ.
  • the computer 32 in step 208 assigns a separate cost to each of the 10 trunks in the link 121, as well as the other links in the network 10.
  • the computer 32 applies a total cost to each route identified in step 206.
  • the computer 32 sums the costs of each individual link traversed by the given route.
  • the cost of the route is therefore simply the sum of the costs of its constituent links. If multiple costs are associated with a link, due to multiple ports on that link as noted above, then multiple routes with its own costs are defined. For example, the route A-E-G-E will be identified or listed twice, and have two costs associated with the same route, if multiple costs are associated with links in this route.
  • the computer 32 ranks all of the identified routes in order of ascending costs. Therefore, the least costly route is ranked first, while the most costly route is ranked last. Other methods of ranking the routes can be performed.
  • the computer 32 builds a set of tables for each node in the network 10. Each node will thus have a table for every other node in the network. For example, the computer 32 under the subroutine 214 builds a set of tables for the node A that consists of a table for node B, a table for node C, and so on, through to a table for node H. Each table is a "preferred route table" that identifies the routes, in order of preference (ascending costs), from a given node (a first end node) to another end node. Each table preferably specifies only the port that supports each route to that end node. For example, if the given node currently analyzed is node A, and first and second preferred routes between the node A and the end node E are:
  • node A's table for routes to node E will specify first the port at node A that supports the link to node F for the first route (i.e., port 110), and second, the port that supports the link 122 to node E (i.e., port 112).
  • the process of building such preferred route tables is described below with respect to Figure 4.
  • Preferred routes differ from “absolute routes.”
  • An absolute route includes a complete node-to-node listing for the restoral route.
  • Preferred or preferential routes compress restoral route definitions to simply a port which directs a given node to an adjacent node on a restoral route.
  • the adjacent node may include a different preferred routing to the same end node.
  • dynamic restoration methods can optimize decisions at each node for a restoral route.
  • step 216 the routine 200 ends after the computer 32 has built all preferred route tables for each node, and stored such tables in the storage facility 36.
  • the storage facility 36 contains a set of tables for each node in the network 10.
  • Each set of tables identifies the preferred routes from a given end node to every other end node, with one table for each other end node. Therefore, considering only the network portion 80, the node A would include seven tables for routes to each of nodes B-H. The preferred route to each of such end nodes is identified by only the port at the given node to which the table belongs.
  • step 302 the computer 32 selects the first route from the list created under step 206 and ranked in step 212.
  • step 304 the computer 32 identifies the end node pairs for the selected route. For example, if the first route selected in step
  • the end node pair identified in step 304 is A/E.
  • step 306 the computer 32 processes through the entire list of routes and identifies all routes for the end node pair identified in step 304.
  • all routes for the end node pair A/E for the network portion 80 are included in Table 3, reprinted below:
  • the computer 32 in step 306 flags each identified route as processed. As a result, each of such routes identified under step 306 is not processed again under a further iteration of the subroutine 214.
  • step 308 the computer 32 ranks the routes identified under step 306 according to their associated costs. Such a ranking of the routes will typically be in the same order in which all the routes were ranked under step 212.
  • step 310 the computer 32 builds a table for the first end node in the preferred routes to the second end node that was identified in step 306.
  • the table specifies the ports that begin each route from the given node which begins the route.
  • the table for preferred routes from the node A to the node E will be as follows.
  • each port is only listed once in Table 4. Even though node A's link to node B begins the first three preferred routes in Table 3, port 1 1 1 is only listed once in the above table. As a result, if the link 121 to node B fails, then node A will use the next port in Table 4 (i.e., port 110), to establish a link with the node F under the fourth preferred route of Table 3. If multiple ports support a single link, then the computer 32 under step
  • step 310 lists each of these ports in order of preference. For example, if the link 121 between nodes A and B consists of three DS-3 level trunks, then each of these trunks is supported on node A by ports 220, 221 and 222 (not shown). As a result, the computer 32 in step 310 ranks these ports by ascending cost in step 208 as follows:
  • step 310 the computer 32 builds the table for node A as follows: 1. Port 222
  • step 312 the computer 32 constructs a table for the second end node to reflect the preferred routes to the first end node.
  • the table corresponds to node E for the routes to node A.
  • the preferred routes are identical, and in the same order, as those established under step 308.
  • the table specifies the ports at the second node that begin each of these routes.
  • the table for the ports that begin each route from node E to node A will be as follows:
  • port 1 14 begins each of the first through third preferred routes under Table 3 from node E to node A, if node D fails, then none of the first through third preferred routes will be used.
  • step 314 the computer 32 determines if any additional routes remain in the network 10. Such routes will be unflagged and not have been analyzed under the routine 200. If additional unflagged routes exist, then the computer 32 again performs the steps 302-314 until all routes in the network 10 have been processed. Thereafter, each node in the network 10 will have a table of preferred routes, listed by port, for every other node in the network.
  • an alternative embodiment of the routine 200 is shown as a routine 200'. The alternative embodiment is similar to the previously described routine 200, and all steps are similarly numbered when of similar operation. Only significant differences in operation are discussed in detail.
  • step 207 the computer 32 maps all routes identified under step 206 to end node pairs.
  • each of the routes identified under step 206 are listed by their end node pairs, rather than ranking the routes in terms of their costs as performed under step 212.
  • step 212 of the routine 200 is not performed under the alternative routine 200'.
  • the computer 32 under a subroutine 215 builds preferred route tables based on the listed node pairs determined under step 207.
  • the remaining steps of 202, 204, 206. 208, 210 and 216 under the alternative routine 200' are substantially similar to the steps described above.
  • the subroutine 215 is an alternative embodiment to the subroutine 214 of Figure 4.
  • the subroutine 215 builds preferred route tables from a route list in which each route is listed as a pair of end nodes, rather than by cost, as noted above.
  • the computer 32 still applies a cost to each of the routes under step 210.
  • step 502 the computer 32 selects the first node pair determined under step 207 of the routine 200'.
  • step 504 all routes for the selected node pair are identified and flagged as processed. As a result, the computer 32 under the subroutine 215 will not process those routes twice. Since all routes for a given node pair are already grouped under the routine 200', the computer 32 can readily perform step 504.
  • step 506 the computer 32 ranks the routes for the selected node pair by cost. Thereafter, under steps 508, 510 and 512. the computer 32 performs substantially the same operations as performed under steps 310, 312 and 314. respectively, for the subroutine 214.
  • the resulting route tables constructed by the computer 32 under the routines 200 and 200' specify, in preferred descending order based on ports, the preferred routes from one node to every other node in the network.
  • Each node in the network 10 will have one table for every other node in the network.
  • a "table" corresponds to any organized set of data.
  • the computer 32 can store the data (ports and their ranking for each node) in an appropriate database for use by other routines as described herein.
  • the tables reflect the preferred restoral routes of the network 10.
  • the resulting data can then be output and used in a variety of applications, such as applications that analyze the network 10 and require data reflecting preferred routes through the network.
  • applications that analyze the network 10 and require data reflecting preferred routes through the network.
  • the resulting data can be used to efficiently and quickly establish restoral routes within the network 10 following a failure, such as by employing the inventor's above-noted copending U.S. patent application.
  • Such U.S. patent application describes centralized network restoration.
  • the preferred node tables derived under the present invention can be employed with normalizing the network following a restoration, such as is described in the inventor's copending U.S. patent application entitled "Method and Apparatus for Automated Node-Based Normalization After Restoration," filed concurrently herewith.
  • the preferred route tables can be stored at the nodes themselves in appropriate storage facilities.
  • the DXC systems at the nodes in the network portion 80 of Figure 2 preferably include data storage and data processing equipment. Therefore, the data tables for node A can be stored in the data storage facility at node A. and so forth, for the remaining nodes in the network 10.
  • a distributed dynamic restoration method can be more readily performed such as that described in the co-inventor's copending U.S. patent application entitled "Method and Apparatus for Distributed Network Restoration Using Preferred Routes,” filed concurrently herewith.
  • a combined centralized and distributed restoration method can employ the resulting preferred route tables produced under the present invention, such as the inventor's copending U.S. patent application entitled "Method and Apparatus for Integrating a Centralized and Distributed Network Restoration System," filed concurrently herewith.
  • the granularity of the analysis performed under the routines 200 and 200' by the computer 32 can vary.
  • the present invention has generally been described above as analyzing only links with high bandwidth DS-3 trunks between DXC nodes.
  • the granularity of the analysis performed under the routines 200 and 200' can be increased so as to analyze lower bandwidth links, having, e.g., DS-1 trunks, to thereby recognize additional inter-node connections.
  • the physical topology of the network 10 changes infrequently, possibly once a year, as new links are established in the network.
  • Logical topology changes more frequently, such as the rerouting of a traffic trunk, but such rerouting generally does not impact the physical topology. Therefore, the computer 32 preferably performs the routine 200 or 200' regularly, such as on a daily basis. As a result, the chance of erroneously deriving preferred route tables from the physical topology of the network 10 is very small, despite frequent rerouting of traffic trunks, etc.
  • the present invention analyzes network topology data prior to a failure occurring within the network 10, and provides the results of such analysis in the form of preferred restoral route tables.
  • the system thereby has the accuracy of typical dynamic restoration processes with the speed of pre-fabricated restoration plans.
  • the present invention provides this benefit by creating restoral routes in order of preference, in which preference is generally determined by the cost of each route, but can include other factors.
  • the restoral routes are then represented in preferred route tables as single links from each node, based on ports at that node, so that the dynamic restoration system can dynamically build a restoral route using predetermined preferred links. While prior dynamic restoration systems require that the network topology data be analyzed at the time of restoration, and during a failure, the present invention allows the dynamic restoration system to build a restoral route by simply selecting a series of preferred links.
  • the present invention can receive network topology data based on communication links and nodes of any type and capacity from which the present invention generates preferred routing tables.
  • link is defined above as routing telecommunications traffic
  • the present invention can analyze any communication channel or path between two nodes and 0 or more intervening nodes and employ any topology data representing such channels or paths, as will be understood by those skilled in the relevant art.
  • node applies to any point receiving or transmitting signals, not necessarily a DXC system or other telecommunications equipment coupled between two trunks.

Abstract

A method and apparatus for analyzing a telecommunications network and providing data based on such analysis first retrieves topology data for the network. A maximum threshold of inter-node connections is specified and all routes under the threshold are identified. A cost is assigned to each individual link, and a total cost is determined for each route. The routes are then ranked according to their costs. Thereafter, a preferential route table is constructed for each node in the network which identifies every other node to which it is coupled. As a result, the resulting preferential route tables can be employed by dynamic restoration systems to dynamically build a restoral route following an outage in the network on a node-to-node basis.

Description

METHOD AND APPARATUS FOR CREATING PREFERRED ROUTES FOR NETWORK RESTORATION
TECHNICAL FIELD
The present invention relates to analyzing communication systems, including analyzing systems for restoration after a network suffers from an unplanned outage or break in a signal path.
BACKGROUND OF THE INVENTION
In the telecommunications field, particularly in long distance networks, long distance network providers continually strive to increase the traffic carrying capability of their transmission medium. For example, since fiber optic cables have increased bandwidth over known twisted pair or copper wire cables, fiber optic cables are used increasingly for connecting network stations and other network elements. As a result, a greater number of stations or network elements can be connected over a fewer number of fiber optic cables, as opposed to prior cables.
Unfortunately, if one or more of the fiber optic cables fail, massive disruption of services to a large number of network customers and users can result. Network service providers or telecommunications carriers therefore strive to quickly and economically restore traffic effected by these disruptions or "outages.'" Restoring network outages generally requires four steps: (1) detecting the network failure, (2) isolating the location of the failure in the network, (3) determining a traffic restoral route, and (4) implementing the restoral route. Network restoration must be executed quickly to ensure minimal interruption of network traffic. Therefore, nearly all telecommunications carriers wish to restore traffic within a few seconds or less. The telecommunications carriers typically restore the highest priority network elements first, and as many of such elements as possible within a short period of time.
Currently, telecommunications carriers simulate possible failures, determine restoral routes and develop a "pre-plan" by collecting large amounts of data reflecting the logical topology of the network, and then analyze this data. The collected data is often retrieved from network engineering databases which reflect the logical construction of the network, such as indicating the connections and paths of all network traffic trunks. An engineer or network analyst analyzes the collected data, compares the collected data to the geographic or physical layout location of the network, and then generates the pre-plans therefrom.
Telecommunications carriers typically simulate different failure scenarios in advance of any network outages. Based on the scenarios, the telecommunications carriers establish the pre-plans that can be used at various stations of the network to establish restoral routes to recover from the network outage. Since the number of possible failures in a network necessarily increases as the size of the network increases, a large number of pre-plans are required. Furthermore, since technological improvements allow network topologies to change relatively quickly and easily, and as a network grows, such networks are not static. As a result, pre-fabricated restoral plans or pre-plans must be continually reevaluated, and new pre-plans created.
To overcome the lack of updated data in pre-plan restoration methods, dynamic restoration methods have been developed. Dynamic restoration methods formulate a restoral route dynamically, during the restoration process and when a failure is detected, so that the method employs the most accurate and recent network data available. However, dynamic restoration methods require extensive and time- consuming analysis during the restoration process. Once a failure is located and isolated in the network, a restoral route must be quickly created. Not only must various restoral routes be located, but an optimal restoral route must be identified in terms of its cost to the network. Determining a low cost, and thus optimal, restoral route during a failure requires extensive analysis of the entire network topology data. As a result, when a network failure occurs, the processing time required for dynamic restoration methods cause the restoration process to take longer than is typically desired by most telecommunications carriers. SUMMARY OF THE INVENTION
The present invention enhances network restoration processes by providing an automated method of creating preferred restoral routes for network restoration. A method and apparatus under the present invention first analyzes topology data for the network. Under an exemplary embodiment, a maximum threshold of inter-node connections is then specified and all routes under the threshold are identified. A cost or other factors are preferably assigned to each individual link, and a total cost is determined for each route. The routes are preferably ranked according to their costs. Thereafter, a preferential route table is constructed for each node in the network which identifies every other node to which it is coupled. The resulting preferred route tables can be employed by various applications, such as in dynamic restoration systems to dynamically build a restoral route on a node-to-node basis following an outage in the network.
The present invention embodies a method for analyzing a network. The network has a plurality of nodes interconnected by links. The method includes the steps of: (a) identifying sets of routes within the network, wherein each route extends between two or more nodes along one or more links and wherein each set of routes includes one or more routes that extend from a starting end node to a selected end node selected from the plurality of nodes in the network; and (b) creating an organized set of data for at least some of the starting nodes in the plurality of nodes, wherein the organized set of data represent a first link in each set of routes from each of the starting nodes to an adjacent node.
BRIEF DESCRIPTION OF THE DRAWINGS Figure 1 is a block diagram of a portion of a network, including a network control center.
Figure 2 is a block diagram of an alternative portion of the network.
Figure 3 is an exemplary flowchart diagram of a method for creating preferred restoral routes under the present invention. Figure 4 is an exemplary flow diagram of a subroutine performed by the method of Figure 3.
Figure 5 is an exemplary flowchart diagram of an alternative method for creating preferred restoral routes under the present invention. Figure 6 is an exemplary flowchart diagram of a subroutine performed by the method of Figure 5.
DETAILED DESCRIPTION OF THE INVENTION
A telecommunications network, and in particular, a method and apparatus for analyzing the network, is described in detail herein. In the following description, numerous specific details are set forth such as network configurations, ordering and execution of steps under an analysis routine, etc., in order to provide a thorough understanding of the present invention. One skilled in the relevant art, however, will readily recognize that the present invention can be practiced without use of the specific details described herein, or with other data formats, specific steps in a routine, etc. Well-known structures and steps are not shown or described in detail in order to avoid obscuring the present invention.
Referring to Figure 1, a simplified telecommunication system is shown to help understand the present invention. As shown in Figure 1 , a telecommunications network 10 includes interconnected network stations or nodes AAA, BBB, CCC. DDD, EEE, and FFF, designated as stations 12-17, respectively. A "node" as used generally herein, refers to a site of a physical link in a network, representing a terminal or system which may serve any of a number of functions. For example, each node can include digital cross connect (DXC) systems, multiplexing equipment, line termination equipment, and/or fiber transmission systems. A DXC system is a complex digital switch capable of automatically switching trunks based on external commands. A "trunk." as generally used herein, is a logical channel of communications capacity that traverses one or more nodes and one or more links between nodes (e.g., DS-0, DS-1, DS-3, etc.). Line termination equipment and fiber transmission systems typically include light-to-electricity transducers and/or multiplexers, as is known in the art. Under normal conditions, communications traffic is routed between the network nodes 12-17 along trunks, and between these and other network nodes of the larger network 10 of which the portion shown in Figure 1 forms a part thereof. Each node typically has a unique address or other designator in the network 10. In addition, each node 12-17 is connected by control circuits 19-24, respectively, to a network management or control center 30. The control circuits 19-24 may each be an X.25 circuit, which is a known circuit for carrying control communications between the associated node and the network control center 30.
The network control center 30 includes a computer 32 and a terminal 34 for interacting with the computer 32 which provides an interface for human interaction. The network control center 30 also includes a storage facility or device 36 for storing network and circuit routing data, topology data, pre-plans, etc. Several of such network control centers 30 can be distributed throughout the network 10.
When an outage or disruption of telecommunications traffic occurs, such as a failure 40, the nodes 12-17 that couple to trunks or circuits impacted by the disruption recognize the disruption. In response to the recognized disruption, two or more of the nodes 12-17 generate alarms that are sent over the control circuits 19-24 to the network control system 30. From these alarms, the network control system 30 determines the location of the outage. Under the centralized restoration system of Figure 1, the network control system 30 performs failure locating routines, such as routines described in detail in the inventor's copending U.S. patent application entitled "Method and Apparatus for Centralized Network Restoration," filed concurrently herewith.
Under appropriate routines, such as those in the above copending application, the computer 32 in a centralized restoration system retrieves from the storage facility 36 information about the impacted circuits including the paths that they follow and the equipment they pass through at different nodes along the paths. Based on this data, the network control system 30 can dynamically restore telecommunications traffic on the network despite the outage. The network control center 30 implements the alternative routes in the network 10 by establishing new connections via commands transmitted through the control circuits 19-24, or alternatively, depending upon the equipment employed at the nodes 12-17, by other means of transmission to effect or direct manual actions to be taken at the nodes. For example, spare high bandwidth DS-3 trunks typically exist throughout the network 10, which can be employed to restore an outage in the network. The network 10 is most effectively restored when the nodes 12-17 employ DXC systems that can automatically switch from one trunk to another based on commands from the network control center 30. Referring to Figure 2, an exemplary network portion 80 of the network
10 is shown as having nodes designated as nodes A, B, C, D, E, F. G, and H. The nodes A-H are coupled by links as shown in Figure 2. A "link." as generally used herein, is a physical connection between two nodes, representing any type and any capacity of communications between the nodes. A single link usually consists of multiple trunks, and a single trunk consists of one or more links that span multiple nodes. In general most high capacity networks contain far more trunks than links.
The network portion 80 of Figure 2 is employed below as an example of a network portion analyzed by the present invention. The nodes A-H represent "restoration" nodes of the telecommunications network 10. While the network 10 typically includes various nodes, such as nodes having multiplexing equipment (e.g. , "Ml 3 nodes"), digital repeater nodes, switch nodes, etc., only certain nodes in the network are employed for network restoration. For example, nodes having DXC systems are especially useful for network restoration. Thus, nodes having DXC systems in the exemplary embodiment are restoration nodes. Other nodes that are not useful for restoration, such as nodes containing only digital repeater equipment, are "intervening nodes," and are not shown in Figure 2.
Each node A-H is coupled to the links shown in Figure 2 by way of ports at the nodes. For example, ports 110, 111 and 112 of node A couple to nodes F, B and E through links 120, 121, 122, all respectively. Similarly, ports 1 13, 1 14 and 1 15 of node E couple to nodes G, D and A through links 123, 124 and 122, all respectively. Referring to Figure 3, a routine 200 performed by the computer 32 in the network control center 30 identifies node interconnections to thereby derive a data table that represents the links of preferred restoral routes of the network 10 based on physical topology data. The table can then be used for multiple applications, such as for dynamically building restoral routes by selecting individual links of preferred routes on a node-to-node basis. Such a dynamic restoral method allows a restoration system to maintain the speed of pre-fabricated restoral plans (pre-plans), while maintaining the accuracy of up-to-date information employed by dynamic restoration methods. The tables produced therefrom can be rapidly employed by a dynamic restoration system because the time-consuming task of analyzing the network has previously been performed before the failure occurred.
As described in more detail below, the present invention identifies every possible restoral route in the network, within specified limitations, between each pair of nodes in the network 10. The routine 200 determines the cost of each route and ranks each route between each node pair based on the cost. The routine 200 then builds tables for each node that identified the preferred restoral routes, ranked by cost, to every other node. As a result, for each node, there is a table for every other node in the network that identifies restoral routes to those nodes. However, rather than specifying the entire route, the tables specify the port at a given node that transmits to the next or adjacent node of the preferred restoral route. This allows a restoral route to be built dynamically on a node-by-node basis, thereby optimizing each link as the route is built.
The routine 200 can be performed on a single computer of virtually any type, preferably a computer which forms part of a network restoration system, such as the computer 32. The routine 200, when employed with a dynamic restoration system, is preferably performed prior to a network failure, and on a periodic basis. The tables produced therefrom are based on the then current physical network topology, which changes infrequently, typically less than daily. Thus, if the routine 200 is performed daily, it virtually ensures that the preferred restoral routes and tables created therefrom accurately reflect the network topology when a failure occurs. Such extensive analysis of the network topology performed before an outage occurs minimizes the time required during the dynamic restoration process.
Beginning in step 202, the computer 32 retrieves restoration node topology data, such as the physical topology data for the network 10 for DXC level nodes. The physical network topology defines the network in terms of its interconnected nodes, as described herein. The physical topology data is preferably automatically generated prior to performing the routine 200, such as under the inventor's copending U.S. patent application entitled "Method and Apparatus for Deriving and Representing Physical Network Topology," filed November 26, 1996 (Assignee's docket number COS-96-022). The computer 32 need only employ physical topology data that identifies restoration nodes in the network and restoral routes, in addition to primary traffic routes, extending between the nodes. For the exemplary network portion 80 of Figure 2, a partial list of links, based on node connections, includes:
A-B
A-F
A-E
B-F
B-C
B-H, etc.
Table 1 - Node Connections (links)
A "route," as generally used herein, is a path of communications, consisting of one or more links, between a pair of end nodes with zero or more nodes therebetween. Each pair of nodes in the network is a pair of end nodes, although some pairs of nodes may not have any possible route therebetween. A partial list of routes for the network portion 80, therefore includes: A-B-C-D-E
A-F
A-F-G-E
A-E, etc.,
B-A
B-F. etc.
Table 2 - Routes
The computer 32, for example, receives the physical topology data from the storage facility 36. Thereafter, under steps 204-216, the computer 32 analyzes or processes each individual trunk in the network 10 until all nodes have been analyzed. In step 204, a network analyst or engineer specifies a maximum number of inter-node connections or "hops" that can be taken by a route to be considered a practical restoration route. A hop traverses a node, and is equivalent to a number of links. For example, a route that traverses nodes A-F-G-E includes three links therebetween, and thus takes three hops. The maximum number of hops selected by the network analyst helps eliminate restoral routes that are too costly. For example, a route that requires an excessive number of hops will almost always be too costly to use for a restoral route. By specifying a maximum threshold or number of hops, subsequent processing under the routine 200 is reduced. In step 206, the computer 32 identifies all physical routes between every node pair in the network 10 that are within the threshold specified under step 204. The computer 32 can employ alternative or additional rules when identifying physical routes. For example, the computer 32 can eliminate any routes that include retracing a link or "backhaul." An example of a backhaul is a route that traverses nodes A-B-F-B- C. The backhaul from node F to node B can be possible because of multiple trunks on the link between nodes B and F, so that a route extends from node B to node F on one trunk, and then back to node B on another trunk. However, it is typically neither desirable nor useful for a restoral route to have backhaul. Additionally, or alternatively, the computer 32 can select only certain routes that form all or part of selected network configurations, such as routes having pass-through nodes, stranded network non-rings or rings, etc. A method of determining such network configurations is described in the inventor's U.S. patent application entitled "Method and Apparatus for Determining Maximum Network Failure Spans for Restoration," filed November 26, 1996 (Assignee's docket number COS-96-023). Furthermore, the computer 32 can employ an alternative or additional rule that identifies only physically or geographically diverse routes in the network 10. A method for determining physically diverse routes is described in the inventor's U.S. patent application entitled "Method and Apparatus for Identifying Restoral Routes in a Network," filed November 26, 1996 (Assignee's docket number COS-96-025).
The computer 32 in step 206 processes the topology data retrieved in step 202 to identify every possible route among restoration nodes within the maximum hop threshold and/or other rules. For example, with the maximum hop threshold established at 4 and omitting backhaul, the computer 32 in step 206 identifies all routes between end nodes A and E as follows:
A-B-C-D-E
A-B-F-G-E
A-B-H-D-E
A-F-G-E, and
A-E.
Table 3 - Routes Between Nodes A and E
Under step 206, the computer 32 also determines all routes between every other node pair in the network.
In step 208, the computer 32 determines and applies a cost to each individual link in the network. The particular definition and determination of costs can vary in a given network, and should meet the needs of the restoration system. Examples of common factors used to determine costs include: capacity of a link, distance traversed by a link, equipment used at nodes or along the link, priority of traffic supported by the link, types of traffic supported by the link, and a number and type of intervening nodes along a link or route. Other factors, of course, can be employed. By employing all of these factors, the computer 32 associates a cost with each link in the network 10.
As noted above, each link can support several trunks, where each trunk uses an individual port at each node. Such a configuration is common in a DXC level network, such as a DXC 3/3 level network where DS-3 trunks entering and exiting the node are switched by the DXC system. Multiple DS-3 trunks can traverse a single link, thereby causing the link to use multiple ports at each node. As a result, each port can be associated with a different cost, even though the ports are associated with a single node and a single link. Consequently, computer 32 in step 208 applies a separate cost to each port.
For example, if the link 121 between nodes A and B supports 10 DS-3 trunks on a single optical fiber transmission system, then there will be 10 ports on each of the nodes A and B. The link 121 is demultiplexed and input to 10 separate ports. Each of such 10 DS-3 trunks can have equivalent priority and designation, and therefore have the same cost. However, some of the 10 trunks on the link 121 can have a different priority or designation than the other trunks. Therefore, their costs will differ. As a result, the computer 32 in step 208 assigns a separate cost to each of the 10 trunks in the link 121, as well as the other links in the network 10.
In step 210, the computer 32 applies a total cost to each route identified in step 206. The computer 32 sums the costs of each individual link traversed by the given route. The cost of the route is therefore simply the sum of the costs of its constituent links. If multiple costs are associated with a link, due to multiple ports on that link as noted above, then multiple routes with its own costs are defined. For example, the route A-E-G-E will be identified or listed twice, and have two costs associated with the same route, if multiple costs are associated with links in this route. In step 212, the computer 32 ranks all of the identified routes in order of ascending costs. Therefore, the least costly route is ranked first, while the most costly route is ranked last. Other methods of ranking the routes can be performed.
Under a subroutine 214, the computer 32 builds a set of tables for each node in the network 10. Each node will thus have a table for every other node in the network. For example, the computer 32 under the subroutine 214 builds a set of tables for the node A that consists of a table for node B, a table for node C, and so on, through to a table for node H. Each table is a "preferred route table" that identifies the routes, in order of preference (ascending costs), from a given node (a first end node) to another end node. Each table preferably specifies only the port that supports each route to that end node. For example, if the given node currently analyzed is node A, and first and second preferred routes between the node A and the end node E are:
1. A-F-G-E, and
2. A-E,
then node A's table for routes to node E will specify first the port at node A that supports the link to node F for the first route (i.e., port 110), and second, the port that supports the link 122 to node E (i.e., port 112). The process of building such preferred route tables is described below with respect to Figure 4.
"Preferred routes" differ from "absolute routes." An absolute route includes a complete node-to-node listing for the restoral route. Preferred or preferential routes compress restoral route definitions to simply a port which directs a given node to an adjacent node on a restoral route. The adjacent node, however, may include a different preferred routing to the same end node. As a result, dynamic restoration methods can optimize decisions at each node for a restoral route.
In step 216, the routine 200 ends after the computer 32 has built all preferred route tables for each node, and stored such tables in the storage facility 36. As a result, the storage facility 36 contains a set of tables for each node in the network 10.
Each set of tables identifies the preferred routes from a given end node to every other end node, with one table for each other end node. Therefore, considering only the network portion 80, the node A would include seven tables for routes to each of nodes B-H. The preferred route to each of such end nodes is identified by only the port at the given node to which the table belongs.
Referring to Figure 4, an exemplary method for building the preferred route tables is shown. In step 302, the computer 32 selects the first route from the list created under step 206 and ranked in step 212. In step 304, the computer 32 identifies the end node pairs for the selected route. For example, if the first route selected in step
302 is:
A-B-C-D-E,
the end node pair identified in step 304 is A/E.
In step 306, the computer 32 processes through the entire list of routes and identifies all routes for the end node pair identified in step 304. For example, all routes for the end node pair A/E for the network portion 80 are included in Table 3, reprinted below:
A-B-C-D-E
A-B-F-G-E
A-B-H-D-E
A-F-G-E, and
A-E.
Table 3
The computer 32 in step 306 flags each identified route as processed. As a result, each of such routes identified under step 306 is not processed again under a further iteration of the subroutine 214.
In step 308, the computer 32 ranks the routes identified under step 306 according to their associated costs. Such a ranking of the routes will typically be in the same order in which all the routes were ranked under step 212.
In step 310, the computer 32 builds a table for the first end node in the preferred routes to the second end node that was identified in step 306. The table specifies the ports that begin each route from the given node which begins the route. Under the above example, the table for preferred routes from the node A to the node E will be as follows.
1. Port 111
2. Port 110
3. Port 112.
Table 4 - Preferred Route Table for Node A to Node E
Note that each port is only listed once in Table 4. Even though node A's link to node B begins the first three preferred routes in Table 3, port 1 1 1 is only listed once in the above table. As a result, if the link 121 to node B fails, then node A will use the next port in Table 4 (i.e., port 110), to establish a link with the node F under the fourth preferred route of Table 3. If multiple ports support a single link, then the computer 32 under step
310 lists each of these ports in order of preference. For example, if the link 121 between nodes A and B consists of three DS-3 level trunks, then each of these trunks is supported on node A by ports 220, 221 and 222 (not shown). As a result, the computer 32 in step 310 ranks these ports by ascending cost in step 208 as follows:
1. Port 222
2. Port 221
3. Port 220.
Table 5 - Ranking of Ports for Link 121
Then, in step 310. the computer 32 builds the table for node A as follows: 1. Port 222
2. Port 221
3. Port 220
4. Port 110
5. Port 112,
Table 6 - Preferred Route Table for Node A to Node E (Alternative Example)
where the ordered listing of ports 222, 221 and 220 replace the single listing of the port 1 1 1 in Table 4.
In step 312, the computer 32 constructs a table for the second end node to reflect the preferred routes to the first end node. For the above example, the table corresponds to node E for the routes to node A. The preferred routes are identical, and in the same order, as those established under step 308. The table, however, specifies the ports at the second node that begin each of these routes. In the above example, the table for the ports that begin each route from node E to node A will be as follows:
1. Port 114
2. Port 1 13
3. Port 115.
Table 7 - Preferred Route Table for Node E to Node A
Again, each port is only listed once. Although port 1 14 begins each of the first through third preferred routes under Table 3 from node E to node A, if node D fails, then none of the first through third preferred routes will be used.
In step 314, the computer 32 determines if any additional routes remain in the network 10. Such routes will be unflagged and not have been analyzed under the routine 200. If additional unflagged routes exist, then the computer 32 again performs the steps 302-314 until all routes in the network 10 have been processed. Thereafter, each node in the network 10 will have a table of preferred routes, listed by port, for every other node in the network. Referring to Figure 5, an alternative embodiment of the routine 200 is shown as a routine 200'. The alternative embodiment is similar to the previously described routine 200, and all steps are similarly numbered when of similar operation. Only significant differences in operation are discussed in detail. Importantly, in step 207, the computer 32 maps all routes identified under step 206 to end node pairs. In other words, each of the routes identified under step 206 are listed by their end node pairs, rather than ranking the routes in terms of their costs as performed under step 212. Indeed, step 212 of the routine 200 is not performed under the alternative routine 200'. Instead, the computer 32 under a subroutine 215 builds preferred route tables based on the listed node pairs determined under step 207. The remaining steps of 202, 204, 206. 208, 210 and 216 under the alternative routine 200' are substantially similar to the steps described above.
Referring to Figure 6, the subroutine for step 215 is shown in detail. The subroutine 215 is an alternative embodiment to the subroutine 214 of Figure 4. The subroutine 215 builds preferred route tables from a route list in which each route is listed as a pair of end nodes, rather than by cost, as noted above. The computer 32, however, still applies a cost to each of the routes under step 210.
In step 502, the computer 32 selects the first node pair determined under step 207 of the routine 200'. In step 504, all routes for the selected node pair are identified and flagged as processed. As a result, the computer 32 under the subroutine 215 will not process those routes twice. Since all routes for a given node pair are already grouped under the routine 200', the computer 32 can readily perform step 504.
In step 506, the computer 32 ranks the routes for the selected node pair by cost. Thereafter, under steps 508, 510 and 512. the computer 32 performs substantially the same operations as performed under steps 310, 312 and 314. respectively, for the subroutine 214.
The resulting route tables constructed by the computer 32 under the routines 200 and 200' specify, in preferred descending order based on ports, the preferred routes from one node to every other node in the network. Each node in the network 10 will have one table for every other node in the network. In general, a "table" corresponds to any organized set of data. Rather than constructing a table per se, the computer 32 can store the data (ports and their ranking for each node) in an appropriate database for use by other routines as described herein. Importantly, the tables reflect the preferred restoral routes of the network 10.
After deriving the physical topology data derived under the routine 300, the resulting data can then be output and used in a variety of applications, such as applications that analyze the network 10 and require data reflecting preferred routes through the network. For example, the resulting data can be used to efficiently and quickly establish restoral routes within the network 10 following a failure, such as by employing the inventor's above-noted copending U.S. patent application. Such U.S. patent application describes centralized network restoration. Likewise, the preferred node tables derived under the present invention can be employed with normalizing the network following a restoration, such as is described in the inventor's copending U.S. patent application entitled "Method and Apparatus for Automated Node-Based Normalization After Restoration," filed concurrently herewith.
The preferred route tables can be stored at the nodes themselves in appropriate storage facilities. For example, the DXC systems at the nodes in the network portion 80 of Figure 2 preferably include data storage and data processing equipment. Therefore, the data tables for node A can be stored in the data storage facility at node A. and so forth, for the remaining nodes in the network 10. By storing the node tables at the nodes themselves, a distributed dynamic restoration method can be more readily performed such as that described in the co-inventor's copending U.S. patent application entitled "Method and Apparatus for Distributed Network Restoration Using Preferred Routes," filed concurrently herewith. Alternatively, a combined centralized and distributed restoration method can employ the resulting preferred route tables produced under the present invention, such as the inventor's copending U.S. patent application entitled "Method and Apparatus for Integrating a Centralized and Distributed Network Restoration System," filed concurrently herewith. The granularity of the analysis performed under the routines 200 and 200' by the computer 32 can vary. For example, the present invention has generally been described above as analyzing only links with high bandwidth DS-3 trunks between DXC nodes. However, the granularity of the analysis performed under the routines 200 and 200' can be increased so as to analyze lower bandwidth links, having, e.g., DS-1 trunks, to thereby recognize additional inter-node connections.
The physical topology of the network 10 changes infrequently, possibly once a year, as new links are established in the network. Logical topology, however, changes more frequently, such as the rerouting of a traffic trunk, but such rerouting generally does not impact the physical topology. Therefore, the computer 32 preferably performs the routine 200 or 200' regularly, such as on a daily basis. As a result, the chance of erroneously deriving preferred route tables from the physical topology of the network 10 is very small, despite frequent rerouting of traffic trunks, etc.
As discussed herein, the present invention analyzes network topology data prior to a failure occurring within the network 10, and provides the results of such analysis in the form of preferred restoral route tables. By using these tables in a dynamic restoration system, the system thereby has the accuracy of typical dynamic restoration processes with the speed of pre-fabricated restoration plans. The present invention provides this benefit by creating restoral routes in order of preference, in which preference is generally determined by the cost of each route, but can include other factors. The restoral routes are then represented in preferred route tables as single links from each node, based on ports at that node, so that the dynamic restoration system can dynamically build a restoral route using predetermined preferred links. While prior dynamic restoration systems require that the network topology data be analyzed at the time of restoration, and during a failure, the present invention allows the dynamic restoration system to build a restoral route by simply selecting a series of preferred links.
Although specific embodiments of, and examples for, the present invention are described herein for illustrative purposes, various equivalent modifications can be made without departing from the spirit and scope of the invention, as will be recognized by those skilled in the relevant art. The teachings provided herein of the present invention can be applied to other communications or network systems, not necessarily the exemplary telecommunications systems described above. For example, while the present invention as been generally described above as being employed in the telecommunications network 10, the present invention is equally applicable to other communication systems, such as a network of computers.
The present invention can receive network topology data based on communication links and nodes of any type and capacity from which the present invention generates preferred routing tables. Furthermore, while the term link is defined above as routing telecommunications traffic, the present invention can analyze any communication channel or path between two nodes and 0 or more intervening nodes and employ any topology data representing such channels or paths, as will be understood by those skilled in the relevant art. Moreover, the term node applies to any point receiving or transmitting signals, not necessarily a DXC system or other telecommunications equipment coupled between two trunks.
While certain operations under the present invention have been described as occurring generally in a serial fashion, those skilled in the relevant art will recognize that it is entirely within the scope of the invention to conduct some operations more or less simultaneously, or even in reverse order, from that described herein. Additionally, the present invention can be modified to include or employ the systems and concepts of the inventor's copending applications or patents noted above, all of which are incorporated by reference herein.
These and other changes can be made to the invention in light of the above detailed description. In general, in the following claims, the terms used should not be construed to limit the invention to the specific embodiments disclosed in the specification and the claims, but should be construed to include any network analysis system that operates under the claims to provide preferred routing data. Accordingly, the invention is not limited by the disclosure, but instead its scope is to be determined entirely by the following claims.

Claims

1. In a network having a plurality of nodes interconnected by links, a computer implemented method for analyzing the network comprising the steps of: identifying sets of routes within the network, wherein each route extends between two or more nodes along one or more links, and wherein each set of routes includes one or more routes that extend from a starting end node to a selected end node selected from the plurality of nodes in the network; and creating an organized set of data for at least some of the starting nodes in the plurality of nodes, wherein the organized set of data representing a first link in each set of routes from each of the starting nodes to an adjacent node.
2. The method of claim 1, further comprising the step of receiving data of the plurality of links of the network.
3. The method of claim 1, further comprising the step of specifying a maximum number of links traversable by each route, and wherein the step of identifying sets of routes within the network includes the step of identifying only sets of routes that satisfy the rule.
4. The method of claim 1, further comprising the step of specifying a rule for each route in the network, and wherein the step of identifying sets of routes within the network includes the step of identifying only sets of routes that satisfy the rule.
5. The method of claim 1, further comprising the step of applying a cost to each route in each of the set of routes, and wherein the step of creating an organized set of data includes the step of ranking, based on cost, each route in the set of routes.
6. The method of claim 1 wherein the step of creating an organized set of data includes the steps of: ranking each route in the identified sets of routes; selecting a route from the identified sets of routes; identifying first and second end nodes for the selected route; creating first and second organized sets of data for the first and second end nodes; and repeating the steps of selecting a route, identifying first and second end nodes, and creating first and second organized sets of data for all routes in the identified sets of routes.
7. The method of claim 1 wherein the step of creating an organized set of data includes the steps of: determining first and second end nodes for each route in the identified sets of routes; selecting a pair of first and second end nodes; selecting all routes from the identified sets of routes associated with the selected pair of first and second end nodes; ranking each selected route; creating first and second organized sets of data for the first and second end nodes; and repeating the steps of selecting a pair of first and second end nodes, selecting all routes, ranking each selected route, and creating first and second organized sets of data for all routes in the identified sets of routes.
8. The method of claim 1, further comprising the step of dynamically restoring the network in response to a failure therein, wherein the step of dynamically restoring the network includes the step of employing the organized sets of data to determine a restoration route from a first node to a second node on a node-to-node basis.
9. The method of claim 1 wherein each node in the network includes one or more ports coupled to one or more of the links, and wherein the step of creating an organized set of data includes identifying ports of the first link of each route for each starting node.
10. In a network having a plurality of nodes interconnected by communication links, an apparatus for analyzing the network comprising: a storage device having stored therein data corresponding to the plurality of nodes and links of the network; and a computer system coupled to the storage device, the computer system (a) identifying sets of routes within the network, wherein each route extends between two or more nodes along one or more links, and wherein each set of routes includes one or more routes that extend from a starting end node to a selected end node selected from the plurality of nodes in the network, and (b) creating an organized set of data for at least some of the starting nodes, wherein the organized set of data representing a first link in each set of routes from each of the starting nodes to an adjacent node.
11. The apparatus of claim 10 wherein the computer system specifies a maximum number of links traversable by each route, and identifies only sets of routes that satisfy the rule.
12. The apparatus of claim 10 wherein the computer system specifies a rule for each route in the network, and identifies only sets of routes that satisfy the rule.
13. The apparatus of claim 10 wherein the computer system applies a cost to each route in each of the set of routes, and ranks, based on cost, each route in the set of routes.
14. The apparatus of claim 10 wherein the computer system ranks each route in the identified sets of routes, selects a route from the identified sets of routes, identifies first and second end nodes for the selected route, creates first and second organized sets of data for the first and second end nodes, and repeats selecting a route, identifying first and second end nodes, and creating first and second organized sets of data for all routes in the identified sets of routes.
15. The apparatus of claim 10 wherein the computer system determines first and second end nodes for each route in the identified sets of routes, selects a pair of first and second end nodes, selects all routes from the identified sets of routes associated with the selected pair of first and second end nodes, ranks each selected route, creates first and second organized sets of data for the first and second end nodes, and repeats selecting a pair of first and second end nodes, selecting all routes, ranking each selected route, and creating first and second organized sets of data for all routes in the identified sets of routes.
16. The apparatus of claim 10 wherein the computer system dynamically restores the network in response to a failure therein by employing the organized sets of data to determine a restoration route from a first node to a second node on a node-to-node basis.
17. The apparatus of claim 10 wherein each node in the network includes one or more ports coupled to one or more of the links, and wherein the computer system creates an organized set of data includes identifying ports of the first link of each route for each starting node.
18. A computer-readable medium containing instructions for causing a computer to perform the steps of: identifying sets of routes within the network, wherein each route extends between two or more nodes along one or more links, and wherein each set of routes includes one or more routes that extend from a starting end node to a selected end node selected from the plurality of nodes in the network; and creating an organized set of data for at least some of the starting nodes in the plurality of nodes, wherein the organized set of data representing a first link in each set of routes from each of the starting nodes to an adjacent node.
19. The computer-readable medium of claim 18, further comprising the step of specifying a maximum number of links traversable by each route, and wherein the step of identifying sets of routes within the network includes the step of identifying only sets of routes that satisfy the rule.
20. The computer-readable medium of claim 18, further comprising the step of specifying a rule for each route in the network, and wherein the step of identifying sets of routes within the network includes the step of identifying only sets of routes that satisfy the rule.
21. The computer-readable medium of claim 18, further comprising the step of applying a cost to each route in each of the set of routes, and wherein the step of creating an organized set of data includes the step of ranking, based on cost, each route in the set of routes.
22. The computer-readable medium of claim 18, further comprising the step of dynamically restoring the network in response to a failure therein, wherein the step of dynamically restoring the network includes the step of employing the organized sets of data to determine a restoration route from a first node to a second node on a node-to-node basis.
23. In a telecommunication network having a plurality of nodes interconnected by links, a computer implemented method for analyzing the network comprising the steps of: receiving data of the nodes and links of the network; specifying a rule for routes within the network, each route extending between two or more nodes along one or more links within the network; identifying all sets of routes within the network that satisfy the rule, wherein each set of routes includes only routes that extend from a starting end node to a selected end node, wherein the plurality of nodes include each of the starting and selected end nodes; applying a cost to each route in each of the set of routes; and creating an organized set of data for each set of routes, wherein each organized set of data corresponds to one of the starting nodes in the plurality of nodes, and represents a first link in each set of routes from each of the starting nodes to an adjacent node, and wherein each first link is ranked based on the cost of each route.
24. The method of claim 23 wherein the step of receiving data includes the step of receiving physical topology data corresponding to selected nodes traversed by each link, the selected nodes having digital cross-connect systems.
25. The method of claim 23 wherein the step of creating an organized set of data includes the steps of: ranking each route in the set of routes in ascending order of costs; selecting a route from the identified sets of routes; identifying first and second end nodes for the selected route; flagging all routes in the identified routes having the first and second end nodes; creating first and second organized sets of data for the first and second end nodes; and repeating the steps of selecting a route, identifying first and second end nodes, flagging all routes and creating first and second organized sets of data for all unflagged routes in the identified sets of routes.
26. The method of claim 23 wherein the step of creating an organized set of data includes the steps of: determining first and second end nodes for each route in the identified sets of routes; selecting a pair of first and second end nodes; selecting and flagging all routes from the identified sets of routes associated with the selected pair of first and second end nodes; ranking each selected route in ascending order of costs; creating first and second organized sets of data for the first and second end nodes; and repeating the steps of selecting a pair of first and second end nodes, selecting and flagging all routes, ranking each selected route, and creating first and second organized sets of data for all unflagged routes in the identified sets of routes.
27. The method of claim 23 wherein the step of specifying a rule includes the step of specifying a maximum number of links traversable by each route.
28. The method of claim 23, further comprising the step of dynamically restoring the network in response to a failure therein, wherein the step of dynamically restoring the network includes the step of employing the organized sets of data to determine a restoration route from a first node to a second node on a node-to-node basis.
29. The method of claim 23 wherein each node in the network includes one or more ports coupled to one or more of the links, and wherein the step of creating an organized set of data includes the step of creating a table that identifies the ports of the first link of each route for each starting node.
PCT/US1997/023884 1996-12-31 1997-12-30 Method and apparatus for creating preferred routes for network restoration WO1998030040A2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU56206/98A AU5620698A (en) 1996-12-31 1997-12-30 Method and apparatus for creating preferred routes for network restoration

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US77787796A 1996-12-31 1996-12-31
US08/777,877 1996-12-31

Publications (2)

Publication Number Publication Date
WO1998030040A2 true WO1998030040A2 (en) 1998-07-09
WO1998030040A3 WO1998030040A3 (en) 1998-09-11

Family

ID=25111578

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1997/023884 WO1998030040A2 (en) 1996-12-31 1997-12-30 Method and apparatus for creating preferred routes for network restoration

Country Status (2)

Country Link
AU (1) AU5620698A (en)
WO (1) WO1998030040A2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001035289A1 (en) * 1999-11-10 2001-05-17 Pricing Research Corporation Revenue management system and method
US8571903B1 (en) 1998-07-02 2013-10-29 Google Inc. Pricing graph representation for sets of pricing solutions for travel planning system

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1995010149A2 (en) * 1993-10-07 1995-04-13 British Telecommunications Public Limited Company Protection network design
US5459716A (en) * 1994-04-15 1995-10-17 Mci Communications Corporation Facility restoration for telecommunications networks
US5463615A (en) * 1994-07-07 1995-10-31 At&T Corp. Node failure restoration tool

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1995010149A2 (en) * 1993-10-07 1995-04-13 British Telecommunications Public Limited Company Protection network design
US5459716A (en) * 1994-04-15 1995-10-17 Mci Communications Corporation Facility restoration for telecommunications networks
US5463615A (en) * 1994-07-07 1995-10-31 At&T Corp. Node failure restoration tool

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
DIGHE R ET AL: "A LINK BASED ALTERNATIVE ROUTING SCHEME FOR NETWORK RESTORATION UNDER FAILURE" GLOBECOM '95. IEEE GLOBAL TELECOMMUNICATIONS CONFERENCE, SINGAPORE, NOV. 14 - 16, 1995, vol. VOL. 3, 14 November 1995, INSTITUTE OF ELECTRICAL AND ELECTRONICS ENGINEERS, pages 2118-2123, XP000633660 *
HERZBERG M ET AL: "THE HOP-LIMIT APPROACH FOR SPACE-CAPACITY ASSIGNMENT IN SURVIVABLE NETWORKS" IEEE / ACM TRANSACTIONS ON NETWORKING, vol. 3, no. 6, 1 December 1995, pages 775-784, XP000544181 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8571903B1 (en) 1998-07-02 2013-10-29 Google Inc. Pricing graph representation for sets of pricing solutions for travel planning system
WO2001035289A1 (en) * 1999-11-10 2001-05-17 Pricing Research Corporation Revenue management system and method

Also Published As

Publication number Publication date
AU5620698A (en) 1998-07-31
WO1998030040A3 (en) 1998-09-11

Similar Documents

Publication Publication Date Title
US5881048A (en) Method and apparatus for determining maximum network failure spans forrestoration
US6075766A (en) Method and apparatus for identifying restoral routes in a network
US5995485A (en) Method and apparatus for isolating network failures by correlating paths issuing alarms with failure spans
US5991264A (en) Method and apparatus for isolating network failures by applying alarms to failure spans
WO1998024220A9 (en) Method and apparatus for isolating network failures by correlating paths issuing alarms with failure spans
US6047331A (en) Method and apparatus for automatic protection switching
US5459716A (en) Facility restoration for telecommunications networks
US5812524A (en) Deterministic selection of an optimal restoration route in a telecommunications network
US6018576A (en) Method and apparatus for automated node-based normalization after network restoration
US6564258B1 (en) Detection of network topology changes affecting trail routing consistency
US5942989A (en) Automatic path setting apparatus for a synchronous communication system
US7668184B2 (en) Method and system for designing ring-based telecommunications networks
US6314092B1 (en) Routing in a communications network
US5941992A (en) Distributed method and system for excluding components from a restoral route in a communications network
EP1533941B1 (en) Availability aware cost modeling for optical core networks
US5404451A (en) System for identifying candidate link, determining underutilized link, evaluating addition of candidate link and removing of underutilized link to reduce network cost
WO1998029997A9 (en) Method and apparatus for automated node-based normalization after network restoration
US6052796A (en) Method and system for augmenting communications network with spare capacity
US6754208B2 (en) Traffic spreading to reduce blocking in a groomed CLOS communication switch
US5883881A (en) Method for selecting preferred nodes for distributed network restoration
Wilson The quantitative impact of survivable network architectures on service availability
WO1998029999A9 (en) Method and system for selecting preferred nodes for distributed network restoration
US20030009598A1 (en) Method for designing demand-sensitive rings
WO1999000995A2 (en) Method and system for pre-patching a communications network
WO1998030040A2 (en) Method and apparatus for creating preferred routes for network restoration

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AU CA JP MX

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): AT BE CH DE DK ES FI FR GB GR IE IT LU MC NL PT SE

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
121 Ep: the epo has been informed by wipo that ep was designated in this application
122 Ep: pct application non-entry in european phase