A method is disclosed for establishing a switched virtual circuit in a digital network having network nodes with static routing tables. The static routing tables contain at least primary and alternate routing data. When a node is unable to forward a call over its outgoing primary route due to congestion or physical failure and its alternate route is the same as the route on which a call setup request arrived, it clears the call at that node and sends a crankback message to the preceding node, which responds to the crankback message to attempt to dynamically re-route the call over the alternate route stored in the routing table of the preceding node. If the attempt is unsuccessful, it sends the message back to the next preceding node and so on.
|
1. A method of establishing a switched virtual circuit call in a digital communications network comprising a plurality of network nodes, each network node having a local static routing table providing next hop routing information to adjacent nodes, comprising the steps of:
defining in said routing table a primary route and an alternate route to adjacent nodes; sending a setup message for said call through said network; receiving said setup message at a network node, said network node on receipt of said setup message searching its routing table for corresponding routing information; and said network node, based on the corresponding routing information, attempting to forward the setup message on the primary route; and if the primary route is not usable due to congestion or physical failure, said network node then attempting to forward the setup message on the alternate route; and if the alternate route is the same route on which the setup message is received, the network node then cranking the call back to a preceding node which either forwards the setup message over the alternate route defined in said preceding node's routing table or again cranks the call back to a further preceding node, and such process being repeated until the call setup message has been returned to a source thereof.
2. A method as claimed in
3. A method as claimed in
4. A method as claimed in
5. A method as claimed in
6. A method as claimed in
7. A method as claimed in
|
This invention relates to a method of establishing a switched virtual circuit in digital networks with static routing tables. The invention is applicable to any technology in which switched virtual circuits are set up through a packet switched network, for example, ATM and Frame Relay networks.
Congestion may occur on a network link if many incoming streams of traffic all terminate on the same outbound link, or the outbound link may busy or down due to a failure. Congestion is a problem in all networks. In packet switched networks, congestion is handled by end to end applications. There are no methods for handling congestion at the packet routing level. In circuit switched networks, bandwidth is reserved for each circuit by the network operator. Once again, there are no methods for handling congestion.
In networks which use switched virtual circuits (SVCs), a method is needed to reroute around congested or failed links. In the P-NNI protocol, which applies to dynamically routed SVC networks, a crankback IE (Information Element) is used for rerouting. When a node receives a call set-up request with which it is unable to comply, it sends a crankback IE back through the network. This IE passes through several nodes until it reaches a node which is programmed to respond to a crankback IE. This node, which is equipped to respond to a crankback element, then attempts to re-route the call on the basis of its current routing table.
This method, however, cannot been used in statically routed SVC networks, where the nodes contain manually pre-configured routing tables, which predetermine the path through the network that a call between any two endpoints will take. Furthermore, there is no mechanism to prevent continuous crankback attempts. In a network with static routing tables, failure in one of the configured links will result in failure of the call set-up process.
Routing loops may occur due to configuration errors, the use of alternate routes when failures occur, or transient routing tables after a failure in the network. Routing loops are also a problem in all networks. In statically routed packet and circuit switched networks, loops are assumed to be detected by the network operator. No loop detection mechanisms are present in these networks.
In networks which use switched virtual circuits, both transient loops and permanent loops are a problem. A reliable method of loop detection is therefore needed in these networks. The P-NNI protocol uses source routing to avoid loops. This adds unnecessary complexity to SVC routing.
The article "An Alternate Path Routing Scheme Supporting QOS and Fast Connection Setup in ATM Networks". Proceedings of the Global Conference, San Fransisco, Nov. 28-Dec. 2, 1994, vol. 2 of 3, by E. M. Spiegel et. al discloses to an alternate path routing scheme based on a combination of progressive control and source routing for use within a connection-oriented data communications network, namely an ATM network. Spiegel teaches that a source node, which is to setup a connection through the network to an endpoint, computes a primary (first) path from its routing table information. Source routing is utilized to effect this path computation which typically is a function of link cost and quality of service requirements. The source node also computes a cost threshold and crankback limit which, together with the computed primary path, are included in a connection setup message generated at the source node. Additionally, the setup message includes fields for accumulating the cost of a path fragment already established and for accumulating the number of crankbacks already completed.
The setup message is propagated along the primary path until either the network endpoint is reached or until the connection setup message encounters a blocked link at an intermediate node. The intermediate node, responsive to encountering the blocked link, then computes an alternate path as a new path tail through the network to the endpoint. Again this path computation is effected using source routing, but in this instance the node must take into consideration the re-route guidelines contained in the connection setup message. The total cost of the path, comprising the accumulated cost of the established path fragment together with the cost of the new path tail, must be less than or equal to the cost threshold specified in the setup message.
If no path tail that satisfies the cost threshold can be found by the node, and the connection setup message has not yet been cranked back the limit specified therein, then crankback proceeds to the previous node in the path fragment and that node in turn attempts to compute an alternate path using source routing and complying with the constraints specified in the setup message.
According to the present invention there is provided a method of establishing a switched virtual circuit call in a digital communications network comprising a plurality of network nodes, each network node having a local static routing tables providing next hop routing information to adjacent nodes, characterized in that said routing tables define a primary route and an alternate route to adjacent nodes; a network node receives a setup message for the call and searches its routing table for corresponding routing information; the node, based on the corresponding routing information, attempts to forward the setup message on the primary route; if the primary route is not usable due to congestion or physical failure, the node then attempts to forward the setup message on the alternate route; and if the alternate route is the same route on which the setup message is received, the node cranks the call back to a preceding node which either forwards the setup message over the alternate route defined in that node's routing table or again cranks the call back to a further preceding node.
Preferably, the crankback IE has a predetermined lifetime to prevent continuous crankback attempts.
The invention will now be described in more detail, by way of example only, with reference to the accompanying drawings, in which:
FIG. 1 shows a portion of a digital network showing how the system routes SVCs around failures; and
FIG. 2 illustrates the network with a different trunk group down and showing an extra node.
FIG. 1 shows a digital network comprising three switching nodes A, B, C, referred to as node A, node B, and node C, for example, ATM switches, and four users 5, 6, 7, 8, referred to as user 1, user 2, user 3, and user 4. User 1 and user 4 are connected to Node A, user 2 is connected to node C, and user 3 is connected to through a "foreign" network 9 to Node B. The nodes are connected via trunks 1 carrying SVCs (Switched Virtual Circuits).
Each node contains a local routing table 11 which is manually preconfigured when the network is setup to store the routes to adjacent nodes for reaching possible endpoints from that node. This is known as hop-by-hop routing. The routing tables 11 contain information pertaining to a primary route and an alternate route to use in the event that there is a failure or congestion on the primary route.
Suppose that the Primary Route for Node A, as stored in its routing table 11, to reach User 2 is via Node B and the Alternate Route is via Node C. On Node B, the Primary Route to User 2 is via Node C and an Alternate Route is via Node A.
In this example, all Trunk Groups between Node B and Node C are assumed to be down. A Setup message from User 1 to User 2 is routed by Node A to Node B in accordance with the information stored in its routing table 11. Node B detects that the Trunk Group in its Primary Route (via Node C) is down, so its Primary Route cannot be used. Node B also detects that its Alternate Route to User 2 is the same Route on which the setup message was received. Routing the call out the Alternate Route would therefore cause a loop and Node B therefore determines that it cannot forward the call to User 2 and clears the call back to Node A with a Release message indicating Crankback.
Node A receives the Crankback message, notes that its Primary Route didn't work and forwards the call on its Alternate Route, as stored in its routing table 11, to Node C. Node C then forwards the call to User 2. Without Crankback, the Trunk Group failure between Node B and Node C would prevent User 1 from establishing an SVC to User 2.
If this attempt fails, node A attempts to repeat the process back to the next preceding node and so on back through the network. In this example, the next preceding node is the originating user 1, so the call is cleared.
Crankback thus operates by regressing a call in progress back to a previous node in the call setup path to try an alternate route from that point. When a node cannot forward a call along its configured path, it clears the call at that node and sends a Release message to the previous node (called the Crankback destination) and includes a Crankback Information Element in the Release message to indicate Crankback (as opposed to normal call clearing). The Crankback destination has a record of the Route and Route List it used to forward this call. Upon receiving the Crankback, the Crankback destination knows that the Route it chose cannot be used to establish this call. It therefore chooses the next best Route from the Route List to forward the call. This newly-selected Route will take the call to a different node in an attempt to route around the failure. If there are no other Routes to chose from in the Route List, then the call is cranked back one more hop. If Crankback reaches the originating node and an alternate Route cannot be found, then the call is cleared back to the calling party.
In order to bound the number of SVC re-routing attempts, Crankback will be attempted only up to a maximum number of times before the call is cleared back to the originator. This is controlled using a hop count or time-to-live field in the signalling message. This field starts at a specific value and is decremented each time the signalling message is forwarded by an intermediate switch. When the field reaches a predetermined value, for example, zero, the call is cleared.
The use of static routing with alternate routes may also cause routing loops during failure conditions. Manually configuring SVC routing tables node by node, can also cause routing loops to be erroneously introduced. Loop detection is used to detect a looped Set-up or Add Party message and will either clear the call or use Crankback to indicate to previous nodes in the setup path that an alternate route must be chosen.
In the network shown in FIG. 2, and additional node 10, referred to as node D is located between node C and user 2. If we assume that user 1 is establishing an SVC to User 2, node A's Primary Route to User 2 is via Node C, with its Alternate Route via Node B. The Primary Route from Node C to User 2 is via Node D with an Alternate Route via Node B.
When the Setup message arrives at Node C from Node A, Node C determines that its Primary Route is inoperative, and forwards the call along its Alternate Route, to Node B. Node B sends the call along its primary route to Node A. Node A detects the routing loop and clears the call back to Node B in a Release message indicating Crankback. Node B then chooses its Alternate Route and forwards the call to Node D, which delivers the call to User 2.
Looping of SVC Setup or Add Party messages can occur due to routing configuration errors or due to the use of alternate routes when failures occur. SVC looping in case 2 is detected with the use of a proprietary Transit List Information Element (IE) in the signalling messages. This IE (Information Element) records the nodes visited during the call setup. Upon detection of SVC looping, the detecting node cranks the call back to the previous node to allow rerouting to occur.
The described method enhances the crankback mechanism and allows its use in statically routed SVC networks. It also prevents looping in a simple and effective manner.
McAllister, Shawn, Chan, Richard, Behki, Nutan
Patent | Priority | Assignee | Title |
10291539, | Sep 22 2016 | Oracle International Corporation | Methods, systems, and computer readable media for discarding messages during a congestion event |
11102138, | Oct 14 2019 | Oracle International Corporation | Methods, systems, and computer readable media for providing guaranteed traffic bandwidth for services at intermediate proxy nodes |
11425598, | Oct 14 2019 | Oracle International Corporation | Methods, systems, and computer readable media for rules-based overload control for 5G servicing |
6560218, | Oct 25 1995 | Alcatel Canada Inc. | SVC routing in network with static routing tables |
6580693, | May 24 1999 | HEWLETT-PACKARD DEVELOPMENT COMPANY, L P | Methods and apparatus for detecting leaks in ATM networks |
6597657, | Jan 08 1999 | Juniper Networks, Inc | Unit and method for duplex call control for SVC connection |
6621788, | Nov 20 1998 | Juniper Networks, Inc | Dual SVC system for ATM device |
6671819, | Apr 06 2000 | Raytheon BBN Technologies Corp | System and methods routing packets on alterate paths |
6674748, | Dec 21 1999 | Telefonaktiebolaget LM Ericsson (publ) | Methods, apparatuses and systems for transitioning from a signaling system 7 network to a data network at a signaling system 7 gateway |
6693877, | Sep 07 1999 | CDC PROPRIETE INTELLECTUELLE | Data discard avoidance method |
6744984, | May 24 2000 | Nortel Networks Limited | Method and system for alternative transmission traffic routing in dense wavelength division multiplexing optical networks |
6747980, | Dec 21 1999 | Ericsson Inc. | Methods, apparatuses and systems for managing multiple signaling end points in a signaling system 7 network |
6785277, | Aug 06 1998 | Telefonaktiebolget LM Ericsson (publ) | System and method for internodal information routing within a communications network |
6792472, | Mar 31 2000 | Pure Storage, Inc | System, method and computer readable medium for intelligent raid controllers operating as data routers |
6810021, | Jan 14 2000 | Fujitsu Limited | Frame relay apparatus and method |
6813242, | May 07 1999 | Lucent Technologies Inc. | Method of and apparatus for fast alternate-path rerouting of labeled data packets normally routed over a predetermined primary label switched path upon failure or congestion in the primary path |
6901053, | Dec 29 1999 | RPX CLEARINGHOUSE LLC | Connectionless network express route |
6977899, | Jan 20 2000 | WSOU Investments, LLC | Method and apparatus for message-based overload control in a distributed call-processor communication system |
6996065, | Jul 06 2000 | Lucent Technologies Inc | Dynamic backup routing of network tunnel paths for local restoration in a packet network |
7002906, | Aug 28 1998 | Cisco Technology, Inc | Method for extending the crankback procedure to any Asynchronous Transfer Mode system |
7012887, | May 08 2001 | SYCAMORE IP HOLDINGS LLC | Method for restoring diversely routed circuits |
7075889, | Dec 22 1999 | NEC Corporation | Packet protection technique |
7126907, | Aug 31 2001 | WSOU Investments, LLC | Label switched communication network, a method of conditioning the network and a method of data transmission |
7265861, | Oct 29 1996 | Open Text SA ULC | Delivery expert system and method |
7296061, | Nov 21 2001 | AKANA, INC | Distributed web services network architecture |
7298693, | Oct 21 1999 | TELECOM HOLDING PARENT LLC | Reverse notification tree for data networks |
7313087, | Jun 20 2003 | Ericsson AB | Distributed protection switching |
7315510, | Oct 21 1999 | TELECOM HOLDING PARENT LLC | Method and apparatus for detecting MPLS network failures |
7428209, | Jun 12 2001 | SABLE NETWORKS, INC | Network failure recovery mechanism |
7457233, | Jul 15 1999 | Juniper Networks, Inc | Method and apparatus for fast reroute in a connection-oriented network |
7468945, | Oct 18 2001 | NEC Corporation | Congestion control for communication |
7529805, | Nov 21 2001 | AKANA, INC | Distributed web services network architecture |
7532623, | Mar 24 2004 | Raytheon BBN Technologies Corp | Methods for wireless mesh multicasting |
7583593, | Dec 01 2004 | Cisco Technology, Inc. | System and methods for detecting network failure |
7606927, | Aug 27 2003 | Raytheon BBN Technologies Corp | Systems and methods for forwarding data units in a communications network |
7639664, | May 30 2003 | WSOU Investments, LLC | Dynamic management of trunk group members |
7660241, | Jul 20 2004 | RPX Corporation | Load balancing in a virtual private network |
7668083, | Oct 28 2003 | Raytheon BBN Technologies Corp | Systems and methods for forwarding data in a communications network |
7796504, | Oct 21 1999 | TELECOM HOLDING PARENT LLC | Method for establishing an MPLS data network protection pathway |
7804767, | Oct 25 1999 | TELECOM HOLDING PARENT LLC | Protection/restoration of MPLS networks |
7843808, | Jul 15 1999 | Juniper Networks, Inc. | Method and apparatus for fast reroute in a connection-oriented network |
7853643, | Nov 21 2001 | AKANA, INC | Web services-based computing resource lifecycle management |
7881184, | Oct 21 1999 | TELECOM HOLDING PARENT LLC | Reverse notification tree for data networks |
7881229, | Aug 08 2003 | Raytheon BBN Technologies Corp | Systems and methods for forming an adjacency graph for exchanging network routing data |
7912934, | Jan 09 2006 | Cisco Technology, Inc | Methods and apparatus for scheduling network probes |
7983174, | Dec 19 2005 | Cisco Technology, Inc | Method and apparatus for diagnosing a fault in a network path |
7983239, | Jan 07 2003 | Raytheon BBN Technologies Corp | Systems and methods for constructing a virtual model of a multi-hop, multi-access network |
7990888, | Mar 04 2005 | Cisco Technology, Inc | System and methods for network reachability detection |
8031593, | Jan 19 1999 | Microsoft Technology Licensing, LLC | Controlled data network error recovery |
8103792, | Aug 27 2003 | Raytheon BBN Technologies Corp | Systems and methods for forwarding data units in a communications network |
8111627, | Jun 29 2007 | Cisco Technology, Inc.; Cisco Technology, Inc | Discovering configured tunnels between nodes on a path in a data communications network |
8130637, | Oct 21 1999 | TELECOM HOLDING PARENT LLC | Method and apparatus for detecting MPLS network failures |
8139504, | Apr 07 2009 | Raytheon BBN Technologies Corp | System, device, and method for unifying differently-routed networks using virtual topology representations |
8149445, | Oct 29 1996 | Open Text SA ULC | Delivery expert system, method and computer program product |
8154757, | Oct 29 1996 | Open Text SA ULC | Delivery expert system, method and computer program product |
8166204, | Aug 29 2003 | Raytheon BBN Technologies Corp | Systems and methods for automatically placing nodes in an ad hoc network |
8238353, | Dec 29 2004 | AT&T Intellectual Property II, L.P. | Method and apparatus for providing disaster recovery using network peering arrangements |
8255485, | Nov 21 2001 | AKANA, INC | Web services-based computing resource lifecycle management |
8437030, | Oct 29 1996 | Open Text SA ULC | Delivery expert system, method and computer program product |
8462366, | Oct 29 1996 | Open Text SA ULC | Delivery expert system, method and computer program product |
8520546, | Jun 24 2009 | LG Electronics Inc | Apparatus and method for setting up radio bearer in wireless communication system |
8526298, | Jul 15 1999 | Juniper Networks, Inc. | Method and apparatus for fast reroute in a connection-oriented network |
8582590, | Dec 29 2004 | AT&T Intellectual Property II, L.P. | Method and apparatus for providing disaster recovery using network peering arrangements |
8588058, | Oct 21 1999 | TELECOM HOLDING PARENT LLC | Reverse notification tree for data networks |
8737203, | Oct 21 1999 | TELECOM HOLDING PARENT LLC | Method for establishing an MPLS data network protection pathway |
8786890, | Oct 29 1996 | Open Text SA ULC | Delivery expert system, method and computer program product |
8842516, | Oct 25 1999 | TELECOM HOLDING PARENT LLC | Protection/restoration of MPLS networks |
8873372, | Jul 15 1999 | Juniper Networks, Inc. | Method and apparatus for fast reroute in a connection-oriented network |
8903074, | Mar 04 2005 | TEKELEC GLOBAL, INC | Methods, systems, and computer program products for congestion-based routing of telecommunications signaling messages |
9112776, | Jul 15 1999 | Juniper Networks, Inc. | Method and apparatus for fast reroute in a connection-oriented network |
9178661, | Jan 19 1999 | Microsoft Technology Licensing, LLC | Controlled data network error recovery |
9350881, | Oct 29 1996 | Open Text SA ULC | Delivery expert system, method and computer program product |
9509593, | Apr 22 2014 | Ciena Corporation | Systems and methods for diverse connection signaling from disparate source nodes in distributed connection-oriented networks |
9769064, | Mar 19 2012 | NEC Corporation | Communication node, packet processing method and program |
Patent | Priority | Assignee | Title |
4345116, | Dec 31 1980 | Bell Telephone Laboratories, Incorporated | Dynamic, non-hierarchical arrangement for routing traffic |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
Jun 22 1998 | MCALLISTER, SHAWN | Newbridge Networks Corporation | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 009389 | /0437 | |
Jul 20 1998 | CHAN, RICHARD | Newbridge Networks Corporation | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 009389 | /0437 | |
Jul 24 1998 | BEHKI, NUTAN | Newbridge Networks Corporation | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 009389 | /0437 | |
Aug 18 1998 | Alcatel Networks Corporation | (assignment on the face of the patent) | / | |||
May 25 2000 | Newbridge Networks Corporation | Alcatel Networks Corporation | CHANGE OF NAME SEE DOCUMENT FOR DETAILS | 011241 | /0577 | |
Sep 29 2000 | Alcatel Networks Corporation | Alcatel Canada Inc | CHANGE OF NAME SEE DOCUMENT FOR DETAILS | 011537 | /0055 | |
Jan 01 2007 | Alcatel Canada Inc | Alcatel-Lucent Canada Inc | CHANGE OF NAME SEE DOCUMENT FOR DETAILS | 032892 | /0456 | |
Jan 30 2013 | Alcatel-Lucent Canada Inc | CREDIT SUISSE AG | SECURITY INTEREST SEE DOCUMENT FOR DETAILS | 029826 | /0927 | |
Aug 19 2014 | CREDIT SUISSE AG | Alcatel-Lucent Canada Inc | RELEASE OF SECURITY INTEREST | 033686 | /0798 |
Date | Maintenance Fee Events |
Oct 02 2002 | ASPN: Payor Number Assigned. |
Oct 02 2002 | RMPN: Payer Number De-assigned. |
Sep 28 2004 | M1551: Payment of Maintenance Fee, 4th Year, Large Entity. |
Sep 29 2008 | M1552: Payment of Maintenance Fee, 8th Year, Large Entity. |
Sep 27 2012 | M1553: Payment of Maintenance Fee, 12th Year, Large Entity. |
Date | Maintenance Schedule |
Apr 10 2004 | 4 years fee payment window open |
Oct 10 2004 | 6 months grace period start (w surcharge) |
Apr 10 2005 | patent expiry (for year 4) |
Apr 10 2007 | 2 years to revive unintentionally abandoned end. (for year 4) |
Apr 10 2008 | 8 years fee payment window open |
Oct 10 2008 | 6 months grace period start (w surcharge) |
Apr 10 2009 | patent expiry (for year 8) |
Apr 10 2011 | 2 years to revive unintentionally abandoned end. (for year 8) |
Apr 10 2012 | 12 years fee payment window open |
Oct 10 2012 | 6 months grace period start (w surcharge) |
Apr 10 2013 | patent expiry (for year 12) |
Apr 10 2015 | 2 years to revive unintentionally abandoned end. (for year 12) |