Patent ID: 7603481

Claim:
A method for dynamically routing a data packet through a Content Distribution Network (CDN), comprising: receiving a routing table for a CDN and a data packet, wherein the routing table represents a desired path and alternative paths through the CDN, and wherein each path represents links between an entry node, intermediate nodes, and a destination node; evaluating policies associated with currently available links for currently available paths at the entry node and at each of the intermediate nodes, when the data packet is received on the entry node and when the data packet is received on each of the intermediate nodes, wherein the policies are executable statements processed at each of the intermediate nodes, the policies are executed by each of the intermediate nodes when the data packet is received at each of those intermediate nodes, and the policies are embedded in the routing table; reordering currently available intermediate nodes within the routing table for the currently available links, when the policies are triggered by current conditions of the currently available intermediate nodes; and routing the data packet to a next available intermediate node of the routing table, wherein the next available intermediate node is one of the currently available intermediate nodes, and wherein at least one intermediate node selects the next available intermediate node that is associated with one of the alternative paths; wherein the evaluating further comprises comparing policy priority metrics to the currently available intermediate nodes' data traffic for determining whether to trigger actions associated with the policy priority metrics; wherein processing one of the actions for suspending existing traffic associated with one of the currently available nodes in order to accommodate the routing of the data packet based on the policy priority metrics associated with the data packet.