×

Method for establishing and maintaining a shared view of time in a peer-to-peer network

  • US 7,689,720 B2
  • Filed: 11/05/2003
  • Issued: 03/30/2010
  • Est. Priority Date: 11/05/2003
  • Status: Active Grant
First Claim
Patent Images

1. A computer-implemented method for maintaining a shared concept of time between nodes in a graph that comprises a peer to peer, serverless network wherein the nodes are peers on the network, the method comprising:

  • at a first node in a graph in the peer to peer network, maintaining a perceived graph time representing a perception of a shared concept of time for the graph;

    at a second node in the graph in the peer to peer network,receiving information about the perceived graph time wherein receiving information occurs responsive to a connection request to join the peer to peer network by the second node and wherein the connection request is made to the first node, andcalculating a local delta representative of a difference between the perceived graph time and a system time for the second node wherein calculating the local delta by the second node comprises assuming that a lag time in receiving the perceived graph time from the first node is one-half of a lag time between a time of the request for the connection by the second node and a time of a receipt of the perceived graph time by the second node;

    if a previous local delta has been calculated for the second node, the local delta is calculated as a weighted average of a neighbor delta wherein the neighbor delta is representative of a difference between the perceived graph time and a system time for the second node and whereinthe calculation for the neighbor delta comprises adding the perceived graph time to one-half of the lag time to arrive at a sum, and subtracting the sum from a system time of the second node at the time of the receipt and the previous local delta whereinthe weighted average is calculated using the following formula;


    local delta=previous local delta*((x−

    1)/x)+(neighbor delta)*(1/x));

    wherein x is a positive integer between 4 and 16, inclusive; and

    wherein previous local delta equals a previously calculated local delta andwherein the neighbor delta equals system time less graph time plus half delaywherein the delay equals system welcome time less system connect time;

    if a previous local delta has not been calculated for the second node, the local delta is equal to the neighbor delta.

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