# Patent

## Title
Method and system for automatically rerouting data from an overbalanced logical circuit in a data network

## Abstract

A method and system are provided for automatically rerouting data from an overbalanced logical circuit in a data network. Status information is received for a logical circuit communicating data in the data network. The status information may include a forward explicit congestion notification (“FECN”) and a backward explicit congestion notification (“BECN”) indicating an overbalanced condition in the logical circuit. An overbalanced condition is indicative of network congestion in the logical circuit. A logical failover circuit including an alternate communication path for communicating the data in the overbalanced logical circuit is then identified. The data in the overbalanced logical circuit is rerouted to the logical failover circuit without manual intervention. After rerouting the data to the logical failover circuit, a determination is made as to whether the overbalanced condition in the logical circuit has been cleared. If it is determined that the overbalanced condition in the logical circuit has been cleared, then the data from the logical failover circuit is rerouted to the logical circuit in the data network without manual intervention.

## Background
CROSS-REFERENCE TO RELATED APPLICATIONS
The present application is related to U.S. patent application Ser. No. 10/348,077, entitled “Method and System for Obtaining Logical Performance Data for a Circuit in a Data Network,” filed on Jan. 21, 2003, and U.S. patent application Ser. No. 10/348,592, entitled “Method and System for Provisioning and Maintaining a Circuit in a Data Network,” filed on Jan. 21, 2003. This application is also related to and filed concurrently with U.S. patent application Ser. No. 10/745,117, entitled “Method And System For Providing A Failover Circuit For Rerouting Logical Circuit Data In A Data Network,” filed on Dec. 23, 2003, U.S. patent application Ser. No. 10/744,281, entitled “Method And System For Utilizing A Logical Failover Circuit For Rerouting Data Between Data Networks,” filed on Dec. 23, 2003, U.S. patent application Ser. No. 10/745,047, entitled “Method And System For Automatically Renaming Logical Circuit Identifiers For Rerouted Logical Circuits In A Data Network,” filed on Dec. 23, 2003, U.S. patent application Ser. No. 10/745,170, entitled “Method And System For Automatically Identifying A Logical Circuit Failure In A Data Network,” filed on Dec. 23, 2003, U.S. patent application Ser. No. 10/744,921, entitled “Method And System For Automatically Rerouting Logical Circuit Data In A Data Network,” filed on Dec. 23, 2003, U.S. patent application Ser. No. 10/745,168, entitled “Method And System For Automatically Rerouting Logical Circuit Data In A Virtual Private Network,” filed on Dec. 23, 2003, U.S. patent application Ser. No. 10/744,283, entitled “Method And System For Real Time Simultaneous Monitoring Of Logical Circuits In A Data Network,” filed on Dec. 23, 2003, U.S. patent application Ser. No. 10/744,555, entitled “Method And System For Prioritized Rerouting Of Logical Circuit Data In A Data Network,” filed on Dec. 23, 2003. All of the above-referenced applications are assigned to the same assignee as the present application and are expressly incorporated herein by reference.
TECHNICAL FIELD
The present invention relates to the routing of data using logical circuits in a data network. More particularly, the present invention is related to automatically rerouting data from an overbalanced logical circuit in a data network.
BACKGROUND OF THE INVENTION
Data networks contain various network devices, such as switches, for sending and receiving data between two locations. For example, frame relay and Asynchronous Transfer Mode (“ATM”) networks contain interconnected network devices that allow data packets or cells to be channeled over a circuit through the network from a host device to a remote device. For a given network circuit, the data from a host device is delivered to the network through a physical circuit such as a T1 line that links to a switch of the network. The remote device that communicates with the host through the network also has a physical circuit to a switch of the network. A network circuit also includes a logical circuit which includes a variable communication path for data between the switches associated with the host and the remote device.
In large-scale data networks, the host and remote end devices of a network circuit may be connected across different local access and transport areas (“LATAs”) which may in turn be connected to one or more Inter-Exchange Carriers (“IEC”) for transporting data between the LATAs. These connections are made through physical trunk circuits utilizing fixed logical connections known as Network-to-Network Interfaces (“NNIs”). Periodically, a logical circuit may become congested when the data being communicated exceeds certain predefined service parameters resulting in the logical circuit becoming overdriven or “overbalanced” due to excess data. As a result, data packets or cells between a host and remote device may be dropped.
Currently, overbalanced logical circuit conditions are managed by isolating the source of the network congestion and then troubleshooting the circuit to clear the congestion. However, current methods of handling overbalanced circuit conditions suffer from several drawbacks. One drawback is that isolating and clearing logical circuit congestion is time consuming and often requires taking the network circuit out of service to perform testing on both the logical and physical circuits. Moreover, if the congestion cannot be isolated by the technicians in a LATA or the congestion is located within the IEC, cooperative testing with the IEC must also be coordinated to isolate the failure congestion to a further increase in downtime in the network circuit.
It is with respect to these considerations and others that the present invention has been made.
SUMMARY OF THE INVENTION
In accordance with the present invention, the above and other problems are solved by a method for automatically rerouting data from an overbalanced logical circuit in a data network. When an overbalanced condition in a logical circuit is detected, the data in the overbalanced circuit may be rerouted to a “logical failover network,” thereby minimizing lost data until the overbalanced condition in the logical circuit is cleared.
According to the method, status information is received for a logical circuit in the data network. The logical circuit includes a communication path for communicating data. Then, based on the status information, a determination is made as to whether an overbalanced condition is present in the logical circuit. An overbalanced condition is indicative of congestion in the logical circuit. The status information may include a forward explicit congestion notification (“FECN”) and a backward explicit congestion notification (“BECN”). A logical failover circuit including an alternate communication path for communicating the data in the overbalanced logical circuit is then identified. Finally, the data in the overbalanced logical circuit is rerouted to the logical failover circuit without manual intervention. After rerouting the data to the logical failover circuit, the method may further include determining whether the overbalanced condition in the logical circuit has been cleared. If it is determined that the overbalanced condition in the logical circuit has been cleared, then the data from the logical failover circuit is rerouted to the logical circuit in the data network without manual intervention.
In identifying a logical failover circuit the method may further include identifying a logical connection in the logical circuit, based on the identification of the logical connection, determining a first end and a second end of the logical circuit in the data network, and determining a logical failover circuit comprising a communication path including the first end and the second end. The logical failover circuit may include a currently unused logical connection in the data network. The logical failover circuit may include a dedicated failover logical connection in a failover data network. The logical circuit and the logical failover circuit may be identified by logical circuit identifiers. The logical circuit identifiers may be data link connection identifiers (“DLCIs”) or virtual path/virtual circuit identifiers (“VPI/VCIs”). The logical connections comprising the logical circuit and the logical failover circuit may be network-to-network interfaces (“NNIs”). The method may further include renaming a logical circuit identifier of the logical failover circuit to the logical circuit identifier of the logical circuit in the data network. The method may further include saving reroute data associated with the logical circuit upon rerouting the logical circuit data. The logical failover circuit may be either a permanent virtual circuit (“PVC”) or a switched virtual circuit (“SVC”). The data network and the failover network may be either frame relay or asynchronous transfer mode (“ATM”) networks.
In accordance with other aspects, the present invention relates to a system for automatically rerouting data from an overbalanced logical circuit in a data network. The system includes a network device for communicating status information for a logical circuit in the data network. The logical circuit includes a communication path for communicating data. The system further includes a logical element module, in communication with the network device, for receiving the status information for the logical circuit in the data network. The system further includes a network management module in communication with the logical element module. The network management module is operative to request the status information from the logical element module, determine an overbalanced condition in the logical circuit based on the status information, identify a logical failover circuit comprising an alternate communication path for communicating the data in the overbalanced logical circuit, and reroute the data to the logical failover circuit without manual intervention. When the overbalanced condition in the logical circuit is cleared, the network management module is further operative to reroute the data from the logical failover circuit to the logical circuit in the data network without manual intervention.
The system may further include a network database, in communication with the network management module, for storing logical connection data for the logical circuit. The network management module is further operative to identify a logical connection in the logical circuit. Based on the identification of the logical connection, the network management module is operative to access the network database to determine a first end and a second end of the logical circuit in the data network and determine a logical failover circuit including a communication path including the first end and the second end. The logical circuit may be identified by a first logical circuit identifier in the data network while the logical failover circuit may be identified by a second logical identifier in the data network. The network management module may be further operative to rename the second logical circuit identifier of the logical failover circuit to the first logical circuit identifier of the logical circuit prior to rerouting the data from the logical circuit to the logical failover circuit.
These and various other features as well as advantages, which characterize the present invention, will be apparent from a reading of the following detailed description and a review of the associated drawings.



BRIEF DESCRIPTIONS OF THE DRAWINGS
FIG. 1 illustrates a data network according to an embodiment of the invention.
FIG. 2 illustrates a local access and transport area (“LATA”) in the data network of FIG. 1, according to an embodiment of the invention.
FIG. 3 illustrates a network management system which may be utilized to automatically reroute logical circuit data from an overbalanced logical circuit in the data network of FIG. 1, according to an embodiment of the invention.
FIG. 4 illustrates a failover data network for rerouting logical circuit data, according to an embodiment of the invention.
FIG. 5 illustrates a flowchart describing logical operations for rerouting data from an overbalanced logical circuit in the data network of FIG. 1, according to an embodiment of the invention.



DETAILED DESCRIPTION OF THE INVENTION
Embodiments of the present invention provide for a method and system for automatically rerouting data from an overbalanced logical circuit in a data network. When an overbalanced condition in a logical circuit is detected, the data in the overbalanced circuit may be rerouted to a “logical failover network,” thereby minimizing lost data until the overbalanced condition in the logical circuit is cleared. In the following detailed description, references are made to the accompanying drawings that form a part hereof, and in which are shown by way of illustration specific embodiments or examples. Referring now to the drawings, in which like numerals represent like elements through the several figures, aspects of the present invention and the exemplary operating environment will be described.
Embodiments of the present invention may be generally employed in a data network 2 as shown in FIG. 1. The data network 2 includes local access and transport areas (“LATAs”) 5 and 15 which are connected by an Inter-Exchange Carrier (“EEC”) 10. It should be understood that the LATAs 5 and 15 may be data networks operated by a commonly owned Local Exchange Carrier (“LEC”). It should be further understood that the IEC 10 may include one or more data networks which may be operated by a commonly owned IEC. It will be appreciated by those skilled in the art that the data network 2 may be a frame relay network, asynchronous transfer mode (“ATM”) network, or any other network capable of communicating data conforming to Layers 2-4 of the Open Systems Interconnection (“OSI”) model developed by the International Standards Organization, incorporated herein by reference. It will be appreciated that these networks may include, but are not limited to, communications protocols conforming to the Multiprotocol Label Switching Standard (“MPLS”) networks and the Transmission Control Protocol/Internet Protocol (“TCP/IP”), which are known to those skilled in the art.
The data network 2 includes a network circuit which channels data between a host device 112 and a remote device 114 through the LATA 5, the IEC 10, and the LATA 15. It will be appreciated by those skilled in the art that the host and remote devices 112 and 114 may be local area network (“LAN”) routers, LAN bridges, hosts, front end processors, Frame Relay Access Devices (“FRADs”), or any other device with a frame relay, ATM, or network interface. It will be further appreciated that in the data network 2, the LATAs 5 and 15 and the EEC 10 may include network elements (not shown) which support interworking to enable communications between host and remote devices supporting dissimilar protocols. Network elements in a data network supporting interworking may translate frame relay data packets or frames sent from a host FRAD to ATM data packets or cells so that a host device may communicate with a remote device having an ATM interface. The LATAs 5 and 15 and the EEC 10 may further include one or more interconnected network elements, such as switches (not shown), for transmitting data. An illustrative LEC data network will be discussed in greater detail in the description of FIG. 2 below.
The network circuit between the host device 112 and the remote device 114 in the data network 2 includes a physical circuit and a logical circuit. As used in the foregoing description and the appended claims, a physical circuit is defined as the physical path that connects the end point of a network circuit to a network device. For example, the physical circuit of the network circuit between the host device 112 and the remote device 114 includes the physical connection 121 between the host device 112 and the LATA 5, the physical connection 106 between the LATA 5 and the EEC 10, the physical connection 108 between the EEC 10 and the LATA 15, and the physical connection 123 between the LATA 15 and the remote device 114. Routers and switches within the LATAs 5 and 15 and the IEC 10 carry the physical signal between the host and remote end devices 112 and 114 through the physical circuit.
It should be understood that the host and remote devices may be connected to the physical circuit described above using user-to-network interfaces (“UNIs”). As is known to those skilled in the art, an UNI is the physical demarcation point between a user device (e.g, a host device) and a public data network. It will further be understood by those skilled in the art that the physical connections 106 and 108 may include trunk circuits for carrying the data between the LATAs 5 and 15 and the IEC 10. It will be further understood by those skilled in the art that the connections 121 and 123 may be any of various physical communications media for communicating data such as a 56 Kbps line or a T1 line carried over a four-wire shielded cable or over a fiber optic cable.
As used in the foregoing description and the appended claims, a logical circuit is defined as a portion of the network circuit wherein data is sent over variable communication data paths or logical connections established between the first and last network devices within a LATA or IEC network and over fixed communication data paths or logical connections between LATAs (or between IECs). Thus, no matter what path the data takes within each LATA or EEC, the beginning and end of each logical connection between networks will not change. For example, the logical circuit of the network circuit in the data network 2 may include a variable communication path within the LATA 5 and a fixed communication path (i.e., the logical connection 102) between the LATA 5 and the IEC 10. It will be understood by those skilled in the art that the logical connections 102 and 104 in the data network 2 may include network-to-network interfaces (“NNIs”) between the last sending switch in a LATA and the first receiving switch in an EEC.
As is known to those skilled in the art, each logical circuit in a data network may be identified by a unique logical identifier. In frame relay networks, the logical identifier is called a Data Link Connection Identifier (“DLCI”) while in ATM networks the logical identifier is called a Virtual Path Identifier/Virtual Circuit Identifier (“VPI/VCI”). In frame relay networks, the DLCI is a 10-bit address field contained in the header of each data frame and contains identifying information for the logical circuit as well as information relating to the destination of the data in the frame and service parameters for handling network congestion. For example, in the data network 2 implemented as a frame relay network, the designation DLCI 100 may be used to identify the logical circuit between the host device 112 and the remote device 114. It will be appreciated that in data networks in which logical circuit data is communicated through more than one carrier (e.g., an LEC and an IEC) the DLCI designation for the logical circuit may change in a specific carrier's network. For example, in the data network 2, the designation DLCI 100 may identify the logical circuit in the LATA 5 and LATA 15 but the designation DLCI 800 may identify the logical circuit in the EEC 10.
Illustrative service parameters which may be included in the DLCI include a Committed Information Rate (“CIR”) parameter and a Committed Burst Size (“Bc”) parameter. As is known to those skilled in the art, the CIR represents the average capacity of the logical circuit and the Bc represents the maximum amount of data that may be transmitted. It will be appreciated that the logical circuit may be provisioned such that when the CIR or the Bc is exceeded, the receiving switch in the data network will discard the frame. It should be understood that the logical circuit parameters are not limited to CIR and Bc and that other parameters known to those skilled in the art may also be provisioned, including, but not limited to, Burst Excess Size (“Be”) and Committed Rate Measurement Interval (“Tc”). In ATM networks, the VPI/VCI is an address field contained in the header of each ATM data cell and contains identifying information for the logical circuit as well as information specifying a data cell's destination and specific bits which may indicate, for example, the existence of congestion in the network and a threshold for discarding cells.
It should be understood that the logical circuit in the data network 2 may be a permanent virtual circuit (“PVC”) available to the network at all times or a temporary or a switched virtual circuit (“SVC”) available to the network only as long as data is being transmitted. It should be understood that the data network 2 may further include additional switches or other interconnected network elements (not shown) creating multiple paths within each LATA and IEC for defining each PVC or SVC in the data network. It will be appreciated that the data communicated over the logical connections 102 and 104 may be physically carried by the physical connections 106 and 108.
The data network 2 may also include a failover network 17 for rerouting logical circuit data, according to an embodiment of the invention. The failover network 17 may include a network failover circuit including physical connections 134 and 144 and logical connections 122 and 132 for rerouting logical circuit data in the event of a failure in the network circuit between the host device 112 and the remote device 114. The failover network 17 will be described in greater detail in the description of FIG. 4 below. The data network 2 may also include a network management system 175 in communication with the LATA 5, the LATA 15, and the failover network 17. The network management system 175 may be utilized to obtain status information for the logical and physical circuit between the host device 112 and the remote device 114. The network management system 175 may also be utilized for rerouting logical data in the data network 2 between the host device 112 and the remote device 114. The network management system 175 will be discussed in greater detail in the description of FIG. 3 below.
FIG. 2 illustrates the LATA 5 in the data network 2 described in FIG. 1 above, according to an embodiment of the present invention. As shown in FIG. 2, the LATA 5 includes interconnected network devices such as switches 186, 187, and 188. It will be appreciated that the data network 2 may also contain other interconnected network devices and elements (not shown) such as digital access and cross connect switches (“DACS”), channel service units (“CSUs”), and data service units (“DSUs”). As discussed above in the description of FIG. 1, the connection data paths of a logical circuit within a data network may vary between the first and last network devices in a data network. For example, as shown in FIG. 2, the logical circuit in the LATA 5 may include the communication path 185 between the switches 186 and 188 or the communication path 184 between the switches 186, 187, and 188. As discussed above, it should be understood that the actual path taken by data through the LATA 5 is not fixed and may vary from time to time, such as when automatic rerouting takes place.
It will be appreciated that the switches 186, 187, and 188 may include a signaling mechanism for monitoring and signaling the status of the logical circuit in the data network 2. Each time a change in the status of the logical circuit is detected (e.g., a receiving switch begins dropping frames), the switch generates an alarm or “trap” which may then be communicated to a management station, such as a logical element module (described in detail in the description of FIG. 3 below), in the network management system 175. The trap may include, for example, status information indicating network congestion. The status information may include forward and backward explicit congestion notifications (“FECNs” and “BECNs”). As is known to those skilled in the art, a FECN is a frame relay message that notifies a receiving switch that there is congestion in the network. A FECN bit is sent in the same direction in which the frame was traveling, toward its destination. A BECN is a frame relay message that notifies a sending switch that there is congestion in the network. A BECN bit is sent in the opposite direction in which the frame is traveling, toward its transmission source.
In one embodiment, the signaling mechanism may be in accord with a Local Management Interface (“LMI”) specification, which provides for the sending and receiving of “status inquiries” between a data network and a host or remote device. The LMI specification includes obtaining status information through the use of special management frames (in frame relay networks) or cells (in ATM networks). In frame relay networks, for example, the special management frames monitor the status of logical connections and provide information regarding the health of the network. In the data network 2, the host and remote devices 112 and 114 receive status information from the switches in the individual LATAs they are connected to in response to a status request sent in a special management frame or cell. The LMI status information may include, for example, whether or not the logical circuit is congested or whether or not the logical circuit has failed. It should be understood that the parameters and the signaling mechanism discussed above are optional and that other parameters and mechanisms may also be utilized to obtain connection status information for a logical circuit.
FIG. 3 illustrates the network management system 175 which may be utilized to automatically reroute logical circuit data from a failed logical circuit in the data network of FIG. 1, according to an embodiment of the invention. The network management system 175 includes a service order system 160, a network database 170, a logical element module 153, a physical element module 155, a network management module 176, and a test module 180. The service order system 160 is utilized in the data network 2 for receiving service orders for provisioning network circuits. The service order includes information defining the transmission characteristics (i.e., the logical circuit) of the network circuit. The service order also contains the access speed, CIR, burst rates, and excess burst rates. The service order system 160 communicates the service order information to a network database 170 over management trunk 172. The network database 170 assigns and stores the parameters for the physical circuit portion of the network circuit such as a port number on the switch 186 for transmitting data over the physical connection 121 to and from the host device 112.
The network database 170 may also be in communication with an operations support system (not shown) for assigning physical equipment to the network circuit and for maintaining an inventory of the physical assignments for the network circuit. An illustrative operations support system is “TIRKS”® (Trunks Integrated Records Keeping System) marketed by TELECORDIATM TECHNOLOGIES, Inc. of Morristown, N.J. The network database 170 may also be in communication with a Work Force Administration and Control system (“WFA/C”) (not shown) used to assign resources (i.e., technicians) to work on installing the physical circuit.
The network management system 175 also includes the logical element module 153 which is in communication with the switches in the data network 2 through management trunks 183. The logical element module 153 runs a network management application program to monitor the operation of logical circuits which includes receiving trap data generated by the switches which indicate the status of logical connections. The trap data may be stored in the logical element module 153 for later analysis and review. The logical element module 153 is also in communication with the network database 170 via management trunks 172 for accessing information regarding logical circuits such as the logical identifier data. The logical identifier data may include, for example, the DLCI or VPI/VCI header information for each data frame or cell in the logical circuit including the circuit's destination and service parameters. The logical element module 153 may consist of terminals (not shown) that display a map-based graphical user interface (“GUI”) of the logical connections in the data network. An illustrative logical element module is the NAVISCORETM system marketed by LUCENT TECHNOLOGIES, Inc. of Murray Hill, N.J.
The network management system 175 further includes the physical element module 155 in communication with the physical connections of the network circuit via management trunks (not shown). The physical element module 155 runs a network management application program to monitor the operation and retrieve data regarding the operation of the physical circuit. The physical element module 155 is also in communication with the network database 170 via management trunks 172 for accessing information regarding physical circuits, such as line speed. Similar to the logical element module 153, the physical logical element module 155 may also consist of terminals (not shown) that display a map-based GUI of the physical connections in the LATA 5. An illustrative physical element module is the Integrated Testing and Analysis System (“INTAS”), marketed by TELECORDIATM TECHNOLOGIES, Inc. of Morristown, N.J., which provides flow-through testing and analysis of telephony services.
The physical element module 155 troubleshoots the physical connections for a physical circuit by communicating with test module 180, which interfaces with the physical connections via test access point 156. The test module 180 obtains the status of the physical circuit by transmitting “clean” test signals to test access point 156 (shown in FIG. 2) which “loops back” the signals for detection by the test module 180. It should be understood that there may be multiple test access points on each of the physical connections for the physical circuit.
The network management system 175 further includes the network management module 176 which is in communication with the service order system 160, the network database 170, the logical element module 153, and the physical element module 155 through communications channels 172. It should be understood that in one embodiment, the network management system 175 may also be in communication with the LATA 15, the IEC 10, and the failover network 17. The communications channels 172 may be on a LAN. The network management module 176 may consist of terminals (not shown), which may be part of a general-purpose computer system that displays a map-based GUI of the logical connections in data networks. The network management module 176 may communicate with the logical element module 153 and the physical element module 155 using a Common Object Request Broker Architecture (“CORBA”). As is known to those skilled in the art, CORBA is an open, vendor-independent architecture and infrastructure which allows different computer applications to work together over one or more networks using a basic set of commands and responses. The network management module 176 may also serve as an interface for implementing logical operations to provision and maintain network circuits. The logical operations may be implemented as machine instructions stored locally or as instructions retrieved from the logical and physical element modules 153 and 155. An illustrative method detailing the provisioning and maintenance of network circuits in a data network is presented in U.S. patent application Ser. No. 10/348,592, entitled “Method And System For Provisioning And Maintaining A Circuit In A Data Network,” filed on Jan. 23, 2003, and assigned to the same assignee as this application, which is expressly incorporated herein by reference. An illustrative network management module is the Broadband Network Management System® (“BBNMS”) marketed by TELECORDIATM TECHNOLOGIES, Inc. of Morristown, N.J.
FIG. 4 illustrates an illustrative failover data network for rerouting logical circuit data, according to one embodiment of the present invention. As shown in FIG. 4, the failover network 17 includes an IEC 20, a LATA 25, and an IEC 30. The failover network further includes a network failover circuit which includes a physical failover circuit and a logical failover circuit. The physical failover circuit includes the physical connection 134 between the LATA 5 (shown in FIG. 1) and the IEC 20, the physical connection 136 between the IEC 20 and the LATA 25, the physical connection 138 between the LATA 25 and the IEC 30, and the physical connection 144 between the IEC 30 and the LATA 15 (shown in FIG. 1). Similarly, the logical failover circuit may include the logical connection 122 between the LATA 5 (shown in FIG. 1) and the EEC 20, the logical connection 124 between the EEC 20 and the LATA 25, the logical connection 126 between the LATA 25 and the IEC 30, and the logical connection 132 between the IEC 30 and the LATA 15 (shown in FIG. 1). It should be understood that in one embodiment, the network failover circuit illustrated in the failover network 17 may include a dedicated physical circuit and a dedicated logical circuit provisioned by a network service provider serving the LATAs 5, 15, and 25 and the EECs 20 and 30, for rerouting logical data from a failed logical circuit.
FIG. 5 illustrates a flowchart describing logical operations 500 for automatically rerouting data from an overbalanced logical circuit in a data network, according to an embodiment of the invention. It will be appreciated that the logical operations 500 may be initiated when a customer report of a network circuit failure is received in the data network 2. For example, a customer at the remote device 114 may determine that the remote device 114 is dropping frames or cells sent from the host device 112 (e.g., by reviewing LMI status information in the host device). After receiving the customer report, the network service provider providing the network circuit may open a trouble ticket in the service order system 160 to troubleshoot the logical circuit.
The logical operations 500 begin at operation 505 where the network management module 176 receives status information for a logical circuit in the data network 2. It will be appreciated that in one embodiment, the status information may be received by communicating with the logical element module 153 to request trap data generated by one or more switches in the data network 2 which indicate the status of one or more logical connections making up the logical circuit. It will be appreciated that in one embodiment of the present invention, the communication of the status information for the logical circuit may be manually initiated by a technician from a terminal in the network management module 176. In another embodiment of the present invention, the network management module 176 may be configured to automatically monitor the logical circuits for trap data to identify logical circuit congestion in the data network 2.
After receiving the status information for the logical circuit at operation 505, the logical operations 500 continue at operation 510 where the network management module 176 determines whether the logical circuit is overbalanced (i.e., congested) based on the received status information. It should be understood that a logical circuit is overbalanced when one or more logical connections in a logical circuit are overbalanced. As discussed above in the description of FIG. 2, trap data indicating an overbalanced logical connection may include FECNs and BECNs from a sending switch and a receiving switch indicating dropped frames or cells in the data network 2. These traps may be generated, for example, when the maximum CIR or Bc (as specified in the DLCI of a frame in a frame relay network, for example) is exceeded. For example, in the data network 2 shown in FIG. 1, the “X” marking the logical connections 102 and 104 indicate that both connections are dropping frames or cells for the logical circuit in the LATA data networks 5 and 15. In this example, such a condition may indicate that a receiving switch in the IEC 10 is sending a BECN to a sending switch in the LATA 5 over the logical connection 102 while a sending switch in the EEC 10 is sending a FECN to a receiving switch in the LATA 15 over the logical connection 104. It will be appreciated that in this example, the logical circuit congestion lies in the IEC data network 10.
If at operation 510, it is determined that the logical circuit is not overbalanced, the logical operations 500 then return to operation 505 where the network management module 176 again receives status information for the logical circuit. If, however, at operation 510 it is determined that the logical circuit is overbalanced, the logical operations continue to operation 515. At operation 515, the network management module 176 identifies a logical failover circuit for rerouting the data from the logical circuit in the data network. For example, if as shown in FIG. 1, it is determined that the congestion in the overbalanced logical circuit in the data network 2 has been isolated to the EEC data network 10, a logical failover circuit in the failover network 17 may be automatically selected to reroute the logical data such that it bypasses the EEC data network 10. For example, the logical failover circuit may be selected including the logical connections 122, 124, 126, and 132 (as shown in FIG. 4) to reroute the logical data from the host device 112, through the LATA 5, the IEC 20, the LATA 25, the EEC 30, the LATA 15, and finally to the remote device 114.
It should be understood that the network management module 176 may select the logical failover circuit by identifying a logical connection or NNI in the overbalanced logical circuit. Information related to each logical connection in a logical circuit may be stored in the database 170 including the first and second ends of the logical circuit to which the logical connection belongs. Once the ends of a logical circuit are determined by accessing the database 170, the network management module 176 may select a logical failover circuit having a communication path including the first and second ends of the overbalanced logical circuit for rerouting data.
It will be appreciated that in one embodiment, the logical failover circuit selected may be a dedicated circuit which is only utilized for rerouting logical data from the overbalanced logical circuit (i.e., the failover circuit does not normally communicate data traffic). In another embodiment, the logical failover circuit may be an existing logical circuit which is normally utilized for communicating data traffic in the data network 2. In this embodiment, the selection of the logical failover circuit may also include determining whether one or more logical connections in the logical circuit are currently communicating data traffic or are currently unused. If currently unused, the logical connections may be selected for rerouting logical data. For example, a technician at the logical element module 153 or the network management module 176 may utilize a map-based GUI displaying the logical connections in the LATA data networks 5 and 15 and their status. A dedicated logical failover circuit (or a currently unused logical circuit with available logical connections) may then be selected as a logical failover circuit for communicating logical data from a failed logical circuit. The logical operations 500 then continue from operation 515 to operation 520.
As discussed above, the logical circuits in a data network are identified by a logical circuit identifier (ID). At operation 520, the network management module 176 compares the identifier (e.g., the DLCI or VPI/VCI) of the logical circuit to the identifier of the selected logical failover circuit. If at operation 520, it is determined that the identifier's of the failed logical circuit and the logical failover circuit are the same, the logical operations 500 then continue from operation 520 to operation 530. If, however, at operation 520 it is determined that logical circuit identifiers of the failed logical circuit and the logical failover circuit are not the same, the logical operations 500 then continue from operation 520 to operation 525 where the network management module 176 renames the logical circuit ID of the logical failover circuit to the ID of the failed logical circuit. The logical operations 500 then continue from operation 525 to operation 530.
It will be appreciated that in the failover network 17, a dedicated failover logical circuit may be assigned to an existing logical circuit in a data network and identified with the same ID as the existing logical circuit. However, a logical failover circuit which is already an existing logical circuit (i.e., normally communicates data traffic in a data network) is already assigned a unique logical circuit ID. Thus, in the presently described embodiment of the invention, the logical identifier of a logical failover circuit may be renamed so that it is in accord with a current logical identifier of a logical circuit. For example, in a frame relay data network, a logical circuit may be identified as DLCI 100 while a logical failover circuit may be identified as DLCI 250. The logical failover circuit may be renamed from DLCI 250 to DLCI 100. It will further be appreciated that the network management module 176 may store the changes to logical circuit identifiers as reroute data in the database 170. This reroute data may then be accessed to restore the original logical identifiers to the logical failover circuit once the trouble in the failed logical circuit has been repaired.
At operation 530 the network management module 176 reroutes the data from the overbalanced logical circuit to the logical failover circuit. It will be appreciated that the reroute of the data may be accomplished from the logical management module 153 or the network management module 176 which, in communication with the switches in the data network 2 (and the failover network 17), sends instructions to reroute the logical data from the NNIs or logical connections 102 and 104 to the failover NNIs or logical connections 122, 124, 126, and 132 in the logical failover circuit. The logical operations 500 then continue from operation 530 to operation 535.
At operation 535, the network management module 176 determines the failed logical circuit has been restored. This determination may be made, for example, by receiving a confirmation from the IEC data network 10 that the failed logical connections 102 and 104 have been restored or from continuous or periodic logical circuit monitoring performed by the logical element module 153 in communication with the network management module 176, to establish that the logical connections are successfully communicating data. If at operation 535 it is determined that the overbalanced logical circuit has not been restored, the logical operations 500 return to operation 530 where the rerouting of the data is maintained on the logical failover circuit. If however, at operation 535, it is determined that the overbalanced logical circuit has been restored, then the logical operations 535 continue to operation 540 where the data on the network failover circuit is rerouted back to the restored logical circuit. Similar to the rerouting of the logical data onto the logical failover circuit, the rerouting of the logical data back onto the restored logical circuit may be accomplished from the network management module 176 which, in communication with the switches in the data network 2 (and the failover network 17) sends instructions to reroute the data from the failover NNIs or logical connections 122, 124, 126, and 132 to the restored NNIs or logical connections 102 and 104 in the restored logical circuit. The logical operations 500 then end.
It will be appreciated that in one embodiment, the logical circuit failover procedure may be initiated as a service offering by a Local Exchange Carrier (LEC) to an Inter-Exchange Carriers (IEC) for rerouting congested or overbalanced logical circuits. Thus, an IEC may utilize a LEC's data network for relieving overbalanced logical circuits. In another embodiment, the logical circuit failover procedure may be initiated as part of a customer subscription service offered by the network service provider. The subscription service may include use of the logical failover circuit for a predetermined time period after the customer's data has been rerouted. For example, a customer subscribing to the failover service would automatically have the logical circuit failover procedure initiated and the customer's data would be rerouted for up to two hours over the logical failover circuit after a determination that the customer's network circuit has failed. If a customer is not a subscriber, the failover service may still be initiated and the customer may be billed based on the length of time the failover service was in service. In another embodiment, the customer may be offered the failover service by the service provider in real-time (i.e., upon determining a logical circuit failure).
It will be appreciated that the embodiments of the invention described above provide for a method and system for automatically rerouting data from an overbalanced logical circuit in a data network. When an overbalanced condition in a logical circuit is detected, the data in the overbalanced circuit may be rerouted to a “logical failover network,” thereby minimizing lost data until the overbalanced condition in the logical circuit is cleared. The various embodiments described above are provided by way of illustration only and should not be construed to limit the invention. Those skilled in the art will readily recognize various modifications and changes that may be made to the present invention without following the example embodiments and applications illustrated and described herein, and without departing from the true spirit and scope of the present invention, which is set forth in the following claims.

## Claims

1. A method of automatically rerouting data from an overbalanced logical circuit in a data network, the method comprising:
receiving status information for a logical circuit in the data network, wherein the logical circuit is identified by a first logical circuit identifier, the logical circuit comprising a communication path for communicating data;
determining an overbalanced condition in the logical circuit based on the status information, wherein the overbalanced condition is indicative of congestion in the logical circuit;
identifying a logical failover circuit comprising an alternate communication path for communicating the data in the overbalanced logical circuit, wherein identifying the logical failover circuit comprising the alternate communication path for communicating the data comprises identifying a currently unused logical connection for communicating the data;
prior to rerouting the data from the logical circuit to the logical failover circuit, renaming a second logical circuit identifier of the logical failover circuit to the first logical circuit identifier of the logical circuit and storing the logical circuit identifier changes to a database as reroute data;
rerouting the data to the logical failover circuit without manual intervention;
after rerouting the data to the logical failover circuit, determining whether the overbalanced condition in the logical circuit has been cleared; and
if the overbalanced condition in the logical circuit has been cleared, then rerouting the data from the logical failover circuit to the logical circuit in the data network without manual intervention, wherein rerouting the data from the logical failover circuit to the logical circuit in the data network without manual intervention comprises:
retrieving the reroute data from the database, and
restoring original logical identifers to the logical failover circuit.

2. The method of claim 1, wherein identifying the logical failover circuit comprising the alternate communication path for communicating the data comprises:
identifying a logical connection in the logical circuit;
based on an identification of the logical connection, determining a first end and a second end of the logical circuit in the data network; and
determining the logical failover circuit comprising a communication path including the first end and the second end.

3. The method of claim 1, wherein determining the overbalanced condition in the logical circuit comprises determining an overbalanced condition in a logical connection in the logical circuit.

4. The method of claim 1, wherein the logical failover circuit comprises a dedicated failover logical connection in a failover data network.

5. The method of claim 1, wherein the first logical circuit identifier is a data link connection identifier (DLCI).

6. The method of claim 1, wherein the first logical circuit identifier is a virtual path/virtual circuit identifier (VPI/VCI).

7. The method of claim 2, wherein the logical connection comprises a network-to-network interface.

8. The method of claim 1, wherein the logical failover circuit is a permanent virtual circuit.

9. The method of claim 1, wherein the logical failover circuit is a switched virtual circuit.

10. The method of claim 1, wherein the data network is a frame relay network.

11. The method of claim 1, wherein the data network is an asynchronous transfer mode (ATM) network.

12. The method of claim 1, wherein the status information comprises a forward explicit congestion notification.

13. The method of claim 1, wherein the status information comprises a backward explicit congestion notification.

14. A system for automatically rerouting data from an overbalanced logical circuit in a data network, the system comprising:
a network device for communicating status information for a logical circuit in the data network, wherein the logical circuit is identified by a first logical circuit identifier, the logical circuit comprising a communication path for communicating data;
a logical element module, in communication with the network device, for receiving the status information for the logical circuit in the data network; and
a network management module, in communication with the logical element module, for:
requesting the status information from the logical element module;
determining an overbalanced condition in the logical circuit based on the status information, wherein the overbalanced condition is indicative of congestion in the logical circuit;
identifying a logical failover circuit comprising an alternate communication path for communicating the data in the overbalanced logical circuit, wherein the alternate communication path comprises at least one currently unused logical connection in the data network;
prior to rerouting the data from the logical circuit to the logical failover circuit, renaming a second logical circuit identifier of the logical failover circuit to the first logical circuit identifier of the logical circuit and storing the logical circuit identifier changes to a network database as reroute data;
rerouting the data to the logical failover circuit without manual intervention;
after rerouting the data to the logical failover circuit, determining whether the overbalanced condition in the logical circuit has been cleared; and
if the overbalanced condition in the logical circuit has been cleared, then rerouting the data from the logical failover circuit to the logical circuit in the data network without manual intervention, wherein rerouting the data from the logical failover circuit to the logical circuit in the data network without manual intervention comprises:
retrieving the reroute data from the database, and
restoring original logical identifiers to the logical failover circuit.

15. The system of claim 14, wherein the network management module in identifying the logical failover circuit comprising the alternate communication path for communicating the data, is operative to:
identify a logical connection in the logical circuit;
based on an identification of the logical connection, access the network database to determine a first end and a second end of the logical circuit in the data network; and
determine the logical failover circuit comprising a communication path including the first end and the second end.

16. The system of claim 15, wherein the communication path including the first end and the second end comprises the at least one currently unused logical connection in the data network.

17. The system of claim 14, wherein the network management module, in determining the overbalanced condition in the logical circuit, is operative to determine the overbalanced condition in a logical connection in the logical circuit.

18. The system of claim 14, wherein the logical failover circuit comprises a dedicated failover logical connection in a failover data network.

19. The system of claim 14, wherein the first logical circuit identifier is a data link connection identifier (DLCI).

20. The system of claim 14, wherein the first logical circuit identifier is a virtual pathlvirtual circuit identifier (VPI/VCI).

21. The system of claim 15, wherein the logical connection comprises a network-to-network interface.

22. The system of claim 14, wherein the logical failover circuit is a permanent virtual circuit.

23. The system of claim 14, wherein the logical failover circuit is a switched virtual circuit.

24. The system of claim 14, wherein the data network is a frame relay network.

25. The system of claim 14, wherein the data network is an asynchronous transfer mode (ATM) network.

26. The system of claim 14, wherein the status information comprises a forward explicit congestion notification.

27. The system of claim 14, wherein the status information comprises a backward explicit congestion notification.