Patent ID: 7817539
Filing Date: 2010-10-19
Classification: H04L

Abstract:
1. A method of routing data packets from a source to destinations over a network, the network comprising a plurality of nodes and a plurality of links interconnecting the nodes, wherein: (a) each destination has a destination address; each data packet includes destination address data identifying the respective destination of the packet; and each node has pre-stored a default set of routing information including a default set of forwarding instructions for packets, and, on receipt of a packet by a node, the node reads the destination address data in the packet and uses the destination address data and the default set of routing information to determine a forwarding instruction, and the node forwards the packet to a neighboring node in the network in accordance with the forwarding instruction; (b) each node has pre-stored a plurality of backup sets of routing information, each backup set corresponding to a respective backup network configuration and including a respective backup set of forwarding instructions for packets; in each backup network configuration, at least one node is made safe by being inhibited from transmitting data; and for each node in the network, there is at least one backup network configuration in which the node is made safe by being inhibited from transmitting data; (c) when a first node forwards a packet to a second, neighboring node in the network in accordance with the default set of routing information and detects a fault in transmission of the packet to the second node, the first node chooses a backup set of routing information from the backup sets of routing information stored by the first node, the chosen backup set of routing information corresponding to a selected backup network configuration in which the second node is made safe; (d) on subsequent receipt of the packet, the first node reads the destination address data in the packet and uses the destination address data and the backup set of routing information to determine a forwarding instruction; the first node modifies the packet by adding backup configuration data to the packet, the backup configuration data identifying the selected backup network configuration; and the first node forwards the modified packet, which includes both the destination address data and the backup configuration data, to a third, neighboring node in the network in accordance with the forwarding instruction determined using the chosen backup set of routing information; (e) on receipt of the modified packet by the third node, the third node reads the backup configuration data in the modified packet to identify the selected backup network configuration, reads the destination address data in the modified packet, and uses the destination address data to determine a forwarding instruction by means of a backup set of routing information stored by the third node which corresponds to the selected backup network configuration identified from the backup configuration data in the modified packet; and the third node forwards the modified packet in accordance with the forwarding instruction; and (f) in at least one backup network configuration in which a node is made safe, the safe node is connected to the remainder of the network by a restricted link that has a backup weighting that is significantly higher than a default weighting that the link has in the default network configuration; and the restricted link is used to transmit data to the safe node only if the safe node is the final destination node for the data.