Claims
- 1. A distributed method for assigning designations to endpoints for use in a peer-to-peer collaboration system having a plurality of members that share a telespace and exchange data change requests, the method comprising:
(a) assigning a unique designation to each endpoint of each member of the telespace, each designation of a member indicative of the order in which the member joined the telespace; and (b) for each member invited to join by another telespace member comprising the inviting member, assigning a unique endpoint designation indicative of the inviting member.
- 2. The method of claim 1 wherein step (a) comprises assigning a unique numeral designation to each endpoint.
- 3. The method of claim 2 wherein step (b) comprises assigning a unique serial numeral designation to each endpoint wherein the serial numeral designation comprises a series of numbers including the numeral designation of the inviting member.
- 4. The method of claim 1, wherein a plurality of the designations of different endpoints each indicate a chain of inviting members.
- 5. The method of claim 1, wherein endpoint designations comprise a number of orders, including a first order designating a founding member of the telespace, and at least a second order designating a member invited to join the telespace by the founding member.
- 6. The method of claim 1, wherein step (a) comprises:
(a1) upon creation of the telespace, an endpoint corresponding to a founding telespace member assigning itself a unique designation comprising a first order digit; and wherein step (b) comprises: (b1) subsequent to creation of the telespace, assigning, by the founding member, each of a plurality of endpoints corresponding to a new member of the telespace invited into the telespace by the founding member a unique designation comprising the first order digit of the founding telespace member, and a second order digit, the second order digits of the designations of endpoints of the new members being in a sequential order indicating the order in which the new members joined the telespace.
- 7. The method of claim 6 further comprising:
(c) inserting endpoint designations into data change requests.
- 8. The method of claim 7 further comprising:
(d) using the endpoint designations in data change requests to resolve a dependency collision between two data requests.
- 9. The method of claim 8 wherein step (d) comprises resolving a dependency collision while maintaining total ordering.
- 10. The method of claim 9 wherein step (d) comprises:
(d1) comparing endpoint digits on an order-by-order basis; and (d2) scheduling data change requests so that data change requests with the lowest endpoint digits in the lowest orders are scheduled for processing first.
- 11. The method of claim 1 further comprising:
(c) inserting endpoint designations into data change requests.
- 12. The method of claim 11 further comprising:
(d) using the endpoint designations in data change requests to resolve a dependency collision between two data requests.
- 13. The method of claim 12 wherein step (d) comprises resolving a dependency collision while maintaining total ordering.
- 14. The method of claim 1, wherein step (b) comprises each of the inviting members assigning a unique designation to each new telespace member that an inviting endpoint invites into the telespace.
- 15. The method of claim 1 wherein step (b) comprises, for each member invited to join the telespace by another telespace member, the inviting member, assigning a endpoint designation that is unique within the telespace.
- 16. The method of claim 1, wherein step (b) comprises, for each member invited to join the telespace by another telespace member, the inviting member assigning a endpoint designation that is unique within the collaboration system.
- 17. The method of claim 1, wherein step (a) comprises using a pseudo-random number generator to generate each designation.
- 18. A distributed apparatus for assigning designations to endpoints for use in a peer-to-peer collaboration system having a plurality of members that share a telespace and exchange data change requests, the apparatus comprising:
means for assigning a unique designation to each endpoint of each member of the telespace, each designation of a member indicative of the order in which the member joined the telespace; and means operable for each member invited to join by another telespace member comprising the inviting member, for assigning a unique invited member endpoint designation indicative of the inviting member.
- 19. The apparatus of claim 18 wherein the means for assigning endpoint designations for each member comprises means for assigning a unique numeral designation to each endpoint.
- 20. The apparatus of claim 19 wherein the means for assigning invited member endpoint designations comprises means for assigning a unique serial numeral designation to each endpoint wherein the serial numeral designation comprises a series of numbers including the numeral designation of the inviting member.
- 21. The apparatus of claim 18, wherein a plurality of the designations of different endpoints each indicate a chain of inviting members.
- 22. The apparatus of claim 18, wherein endpoint designations and invited member endpoint designations comprise a number of orders, including a first order designating a founding member of the telespace, and at least a second order designating a member invited to join the telespace by the founding member.
- 23. The apparatus of claim 18, wherein the means for assigning endpoint designations comprises:
means operable upon creation of the telespace, for assigning to an endpoint corresponding to a founding telespace member a unique designation comprising a first order digit; and wherein the means for assigning invited member endpoint designations comprises:
means operable subsequent to creation of the telespace and by the founding member, for assigning each of a plurality of endpoints corresponding to a new member of the telespace invited into the telespace by the founding member a unique designation comprising the first order digit of the founding telespace member, and a second order digit, the second order digits of the designations of endpoints of the new members being in a sequential order indicating the order in which the new members joined the telespace.
- 24. The apparatus of claim 23 further comprising means for inserting endpoint designations into data change requests.
- 25. The apparatus of claim 24 further comprising means for using the endpoint designations in data change requests to resolve a dependency collision between two data requests.
- 26. The apparatus of claim 25 wherein the means for resolving a dependency collision comprises means for resolving a dependency collision while maintaining total ordering.
- 27. The apparatus of claim 26 wherein the means for resolving a dependency collision comprises:
means for comparing endpoint digits on an order-by-order basis; and means scheduling data change requests so that data change requests with the lowest endpoint digits in the lowest orders are scheduled for processing first.
- 28. The apparatus of claim 18 further comprising means for inserting endpoint designations into data change requests.
- 29. The apparatus of claim 28 further comprising means for using the endpoint designations in data change requests to resolve a dependency collision between two data requests.
- 30. The apparatus of claim 29 wherein the means for resolving a dependency collision comprises means for resolving a dependency collision while maintaining total ordering.
- 31. The apparatus of claim 18, wherein the means for assigning invited member endpoint designations comprises means operable by each of the inviting members for assigning a unique designation to each new telespace member that an inviting endpoint invites into the telespace.
- 32. The apparatus of claim 18 wherein the means for assigning invited member endpoint designations comprises, for each member invited to join the telespace by another telespace member, means in the inviting member for assigning a endpoint designation that is unique within the telespace.
- 33. The apparatus of claim 18, wherein the means for assigning invited member endpoint designations comprises, for each member invited to join the telespace by another telespace member, means operable by the inviting member for assigning a endpoint designation that is unique within the collaboration system.
- 34. The apparatus of claim 18, wherein the means for assigning endpoint designations comprises a pseudo-random number generator that generates each designation.
- 35. A computer data signal embodied in a carrier wave for assigning designations to endpoints for use in a peer-to-peer collaboration system having a plurality of members that share a telespace and exchange data change requests, the computer data signal comprising:
program code for assigning a unique designation to each endpoint of each member of the telespace, each designation of a member indicative of the order in which the member joined the telespace; and for each member invited to join by another telespace member, program code operable by the inviting member for assigning a unique endpoint designation indicative of the inviting member.
- 36. The computer data signal of claim 35 wherein the program code for assigning a unique designation to each endpoint comprises program code for assigning a unique numeral designation to each endpoint.
- 37. The computer data signal of claim 36 wherein the program code operable by the inviting member for assigning a unique endpoint designation indicative of the inviting member comprises program code for assigning a unique serial numeral designation to each endpoint wherein the serial numeral designation comprises a series of numbers including the numeral designation of the inviting member.
RELATED APPLICATIONS
[0001] This application is a division of U.S. patent application Ser. No. 09/356,148 filed Jul. 19, 1999. The following co-pending, commonly-assigned U.S. patent applications are related to the present application, and incorporated by reference herein in their entirety:
[0002] Ser. No. 09/357,007, entitled “Method and Apparatus for Activity-Based Collaboration by a Computer System Equipped with a Dynamics Manager,” filed on Jul. 19, 1999 by Raymond E. Ozzie and Jack E. Ozzie, now U.S. Pat. No. 6,446,113 B1;
[0003] Ser. No. 09/357,007, entitled “Method and Apparatus for Activity-Based Collaboration by a Computer System Equipped with a Communications Manager”, filed on Jul. 19, 1999 by Raymond E. Ozzie, et al. (Atty Docket No. G0008/7000).
Divisions (1)
|
Number |
Date |
Country |
Parent |
09356148 |
Jul 1999 |
US |
Child |
10630472 |
Jul 2003 |
US |