Synchronization and recovery of peers in a peer to peer environment
First Claim
1. A method for use in a computer system, operating in a peer-to-peer environment having a host peer and at least one non-host peer, and for ordering operation requests of the at least one non-host peer, the operation requests being one of a provided list of recognized operations which may be requested, comprising:
- transmitting a first name table to the at least one non-host peer when the at least one non-host peer joins a session, the name table including a name table entry for each peer within the session, wherein each name table entry contains a version number corresponding to when each peer joined the session;
receiving, by the host peer, a first operation request from the provided list of recognized operations;
assigning, by the host peer, a first unique version number to the first operation request and a second name table;
transmitting the second name table including a first operation order to the at least one non-host peer in the session;
subsequently receiving, by the host peer, a second operation request from the provided list of recognized operations;
assigning, by the host peer, a second unique version number to the second operation request and a third name table, the second unique version number indicating a later receipt time than the first unique version number, such that the host peer evaluates relative arrival times of the first operation request and the second operation request based on the first unique version number and the second unique version number; and
transmitting the third name table including a second operation order to the at least one non-host peer in the session.
2 Assignments
0 Petitions
Accused Products
Abstract
A method is provided for use in a computer system that is operating in a peer-to-peer environment. The peer-to-peer environment has a host peer and at least one non-host peer. The method of the invention is used to order the operation requests of the peers so that operations are performed only in the order that they are processed by the host peer. The method includes providing a list of recognized operations which may be requested by any of the peers in the session. The host peer then receives at least one operation request from one of the peers, the request being selected from the provided list. The host then assigns a unique version number to the operation request, so that all peers within the session can determine the proper order in which to process orders given by the host peer.
-
Citations
18 Claims
-
1. A method for use in a computer system, operating in a peer-to-peer environment having a host peer and at least one non-host peer, and for ordering operation requests of the at least one non-host peer, the operation requests being one of a provided list of recognized operations which may be requested, comprising:
-
transmitting a first name table to the at least one non-host peer when the at least one non-host peer joins a session, the name table including a name table entry for each peer within the session, wherein each name table entry contains a version number corresponding to when each peer joined the session; receiving, by the host peer, a first operation request from the provided list of recognized operations; assigning, by the host peer, a first unique version number to the first operation request and a second name table; transmitting the second name table including a first operation order to the at least one non-host peer in the session; subsequently receiving, by the host peer, a second operation request from the provided list of recognized operations; assigning, by the host peer, a second unique version number to the second operation request and a third name table, the second unique version number indicating a later receipt time than the first unique version number, such that the host peer evaluates relative arrival times of the first operation request and the second operation request based on the first unique version number and the second unique version number; and transmitting the third name table including a second operation order to the at least one non-host peer in the session. - View Dependent Claims (2, 6, 11, 12)
-
-
3. A computer readable medium having at least one physical media containing computer executable instructions for performing a method for use in a computer system, operating in a peer-to-peer environment having a host peer and at least one non-host peer, and for ordering operation requests of the at least one non-host peer, the operation requests being one of a provided list of recognized operations which may be requested, the method comprising:
-
transmitting a first name table to the at least one non-host peer when the at least one non-host peer joins a session, the name table including a name table entry for each peer within the session, wherein each name table entry contains a version number corresponding to when each peer joined the session; receiving, by the host peer, a first operation request from the provided list of recognized operations; assigning, by the host peer, a first unique version number to the first operation request and a second name table; transmitting the second name table including a first operation order to the at least one non-host peer in the session; subsequently receiving, by the host peer, a second operation request from the provided list of recognized operations; assigning, by the host peer, a second unique version number to the second operation request and a third name table, the second unique version number indicating a later receipt time than the first unique version number, such that the host peer evaluates relative arrival times of the first operation request and the second operation request based on the first unique version number and the second unique version number; and transmitting the third name table including a second operation order to the at least one non-host peer in the session. - View Dependent Claims (7, 10, 13, 14)
-
-
4. A method for use in a computer system, operating in a peer-to-peer environment having a host peer and at least one non-host peer, and for requesting operations of the host peer, the operations being one of a provided list of recognized operations which may be requested, comprising:
-
receiving, by the at least one non-host peer, a first name table including a name table entry for each peer within a session, wherein each name table entry contains a version number corresponding to when each peer joined the session; sending, by the at least one non-host peer, at least one operation request from the provided list of recognized operations to the host peer; receiving, by the at least one non-host peer, a second name table including an operation order, the second name table being assigned a first assigned unique version number associated with the operation request; determining whether the first assigned unique version number received is next in a sequence of version numbers processed by the at least one non-host peer, and if it is not, queuing the operation order until the first assigned unique version number is next in the sequence of version numbers processed by the at least one non-host peer; and processing, by the at least one non-host peer, the operation order in the order that the first assigned unique version number is in within the sequence of version numbers. - View Dependent Claims (8, 15, 16)
-
-
5. A computer readable medium having at least one physical media containing computer executable instructions for performing a method for use in a computer system, operating in a peer-to-peer environment having a host peer and at least one non-host peer, and for requesting operations of the host peer, the operations being one of a provided list of recognized operations which may be requested, the method comprising:
-
receiving, by the at least one non-host peer, a first name table including a name table entry for each peer within a session, wherein each name table entry contains a version number corresponding to when each peer joined the session; sending, by the at least one non-host peer, at least one operation request from the provided list of recognized operations to the host peer; receiving, by the at least one non-host peer, a second name table including an operation order, the second name table being assigned a first assigned unique version number associated with the operation request; determining whether the first assigned unique version number received is next in a sequence of version numbers processed by the at least one non-host peer, and if it is not, queuing the operation order until the first assigned unique version number is next in the sequence of version numbers processed by the at least one non-host peer; and processing, by the at least one non-host peer, the operation order in the order that the first assigned unique version number is in within the sequence of version numbers. - View Dependent Claims (9, 17, 18)
-
Specification