×

Fitness based routing

  • US 7,961,711 B2
  • Filed: 07/15/2008
  • Issued: 06/14/2011
  • Est. Priority Date: 08/06/2007
  • Status: Expired due to Fees
First Claim
Patent Images

1. At a computer system which represents a node in an overlay network, the overlay network also including a plurality of other computer systems representing other nodes, a method for maintaining a routing tables at each of the computer systems of the nodes of the overlay network so that routing information from one node to another can be more efficiently determined using the routing tables, the method comprising:

  • at the computing system of one or more nodes of the overlay network, performing the following;

    at a first node of the overlay network, performing an act of receiving node information for another node that exists at a specified location within the overlay network, the node information including fitness information for the other node;

    at the first node of the overlay network, performing an act of accessing a routing table that includes one or more nodes, each node in the routing table being a node to which the computer system of the first node can send a message that is then forwarded by that node for delivery to a destination node within the overlay network, each node in the routing table having a fitness metric value representing an ability of the node to transfer and process messages within the overlay network;

    at the first node, performing an act of calculating a fitness metric value for the other node, the fitness metric value representing the other node'"'"'s ability to transfer and process messages within the overlay network, the fitness metric value based on one or more characteristics used to determine the fitness information for the other node;

    an act of inserting the other node into the routing table of the first node;

    an act of dividing the first node'"'"'s routing table into a plurality of ranges, each range corresponding to a portion of the overlay network;

    an act of assigning each node in the first node'"'"'s routing table to a specified range based on the location of each of the assigned nodes in the overlay network; and

    an act of maintaining the size of the first node'"'"'s routing table so that the routing table does not exceed a specified size when adding other nodes to it, by performing the following;

    an act of identifying in the first node'"'"'s routing table a range that is as large or larger than any other range in the routing table in terms of the number of nodes included in the identified range;

    an act of identifying a node within the identified range that has the lowest fitness value and as such is least able to transfer and process messages within the overlay network based on fitness metric values of the nodes in the identified range; and

    an act of removing the identified node from the routing table of the first node.

View all claims
  • 2 Assignments
Timeline View
Assignment View
    ×
    ×