Patent ID: 7647425

Claim:
A method for routing of data packets for avoiding circulation of the data packets, in a packet-switched network connected to a plurality of external networks, the method comprising: assigning unique node identifiers to nodes of a packet switched network (N 1 ); providing a destination table that associates for each external network connected to the packet switched network (N 1 ) an Egress Label (EL) based on the unique node number for the node that comprises an exit point to that external network; providing a routing table for each node in the packet-switched network (N 1 ) for forwarding data packets through the packet-switched network comprising Ingress/Egress Label (IL/EL) pairs, wherein the Ingress Label (IL) is based on the unique node number for the node that comprises an entry point into the packet switched network (N 1 ), wherein each IL/EL pair is associated with next hop data; appending a label to a data packet at an ingress node where the data packet enters packet-switched network (N 1 ), wherein the label comprises an Ingress Label (IL) based on the unique node number for the node that comprises the entry point into the packet-switched network (N 1 ) and an Egress Label (EL) extracted from the destination table by reference to the external network address in the data packet, representing the ingress node and an egress node where the data packet will enter and leave the packet-switched network (N 1 ), respectively; forwarding the data packet from the ingress node to the egress node by an internal router of the packet-switched network by accessing the routing table for each node traversed in the packet-switched network, and reading the next hop data for the IL/EL pair that coincides with the label; and providing alternative loop-free routes for the forwarding of the data packet in the routing table for each IL/EL pair when an alternate next hop is available, wherein loops are avoided because the ingress node identified by the IL is excluded as an alternative route, wherein the data packet is supplied with two data fields, wherein each of the data fields is added to the data packet as a header or a trailer, wherein one of the data fields includes an identifier for the ingress node and the other data field includes an identifier for the egress node, and wherein a bit sequence is appended to or prefixed to at least one data field, identifying the data field as such.