×

System and method for data transfer in a peer-to peer hybrid communication network

  • US 8,009,586 B2
  • Filed: 01/27/2006
  • Issued: 08/30/2011
  • Est. Priority Date: 06/29/2004
  • Status: Active Grant
First Claim
Patent Images

1. A method for transferring data directly from a first endpoint to a second endpoint in a peer-to-peer network, the method comprising:

  • retrieving a profile and a routing table from an access server by the first endpoint during an authentication process, wherein the profile identifies a plurality of endpoints that includes the second endpoint as endpoints that have each previously granted the first endpoint permission to communicate with that endpoint, and the routing table contains address information needed for the first endpoint to communicate directly with each of the plurality of endpoints;

    sending a notification message from the first endpoint directly to each of the plurality of endpoints using the address information to inform each of the plurality of endpoints that the first endpoint is online, wherein the notification message results in a status update on each of the plurality of endpoints and includes address information of the first endpoint needed by each of the plurality of endpoints to communicate directly with the first endpoint;

    sending a data transfer request message from the first endpoint directly to the second endpoint using the address information needed for the first endpoint to communicate directly with the second endpoint;

    establishing a data transfer link directly between the first endpoint and the second endpoint in order to perform a file transfer from the first endpoint to the second endpoint; and

    sending a plurality of packets corresponding to the file from the first endpoint to the second endpoint via the data transfer link, wherein the sending includes, for each packet,placing, by the first endpoint, the packet on an unacknowledged list upon sending the packet to the second endpoint;

    removing the packet from the unacknowledged (UNACK) list only if an acknowledgment (ACK) response from the second endpoint indicates that the packet was correctly received by the second endpoint; and

    resending the packet without waiting for each of the plurality of packets to be sent if an UNACK response from the second endpoint indicates that the packet was not correctly received by the second endpoint;

    and wherein the sending includes, for each packet on the UNACK list after each of the plurality of packets is sent a first time,resending all packets that appear on the UNACK list after sending each of the plurality of packets a first time, wherein the packets that appear on the UNACK list are resent even if no response is received for each of the packets that appear on the UNACK list from the second endpoint, and wherein a packet is removed from the (UNACK) list only if an ACK response is received for that packet;

    wherein the step of resending packets all packets that appear on the UNACK list is repeated by the first endpoint until either the UNACK list is empty or a timeout occurs;

    receiving, by the first endpoint, a notification that a packet was received out of sequence by the second endpoint; and

    recalculating, by the first endpoint, an inter-packet delay based on the out of sequence notification.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×