Claims
- 1. A method for providing a plurality of collaborative sessions in a networked computing environment, the method comprising:
sending collaborative data from a first instance of the collaborative application on a first computer system to a second instance of the collaborative application on a second computer system; sending collaborative data from the second instance of the collaborative application to the first instance of the collaborative application; sending collaborative data from a third instance of the collaborative application on the first computer system to a fourth instance of the collaborative application on the second computer system; and sending collaborative data from the fourth instance of the collaborative application to the third instance of the collaborative application.
- 2. The method of claim 1,
wherein each instance of the collaborative application is associated with a globally unique ID (GUID) which distinguishes the respective instance from other instances in the networked computing environment.
- 3. The method of claim 1,
wherein each respective instance of the collaborative application sends and receives collaborative data by sending and receiving messages through a distributed computing infrastructure.
- 4. The method of claim 1,
wherein the collaborative application comprises a chat application which enables a user of the first computer system and a user of the second computer system to communicate using text; wherein the collaborative data comprises text to be displayed.
- 5. The method of claim 1,
wherein the collaborative application comprises a shared whiteboard application which enables a user of the first computer system and a user of the second computer system to communicate using graphical data on a virtual shared whiteboard; wherein the collaborative data comprises graphical data to be displayed.
- 6. The method of claim 1, further comprising:
determining an application type of the collaborative application; determining whether an existing instance of the application type of the collaborative application is running on the second computer system; wherein the sending the collaborative data from the first instance of the collaborative application to the second instance of the collaborative application comprises sending the collaborative data to the existing instance if the existing instance of the application type of the collaborative application is running on the second computer system; and wherein the sending the collaborative data from the first instance of the collaborative application to the second instance of the collaborative application comprises sending the collaborative data to a new instance of the collaborative application if the existing instance of the application type of the collaborative application is not running on the second computer system.
- 7. The method of claim 1,
wherein the collaborative data is sent from the first computer system to the second computer system and one or more additional computer systems using multicast peer-to-peer messaging.
- 8. The method of claim 1,
wherein the collaborative data is sent from the first computer system to the second computer system and one or more additional computer systems using broadcast peer-to-peer messaging.
- 9. A method for providing a plurality of collaborative sessions in a networked computing environment, the method comprising:
maintaining a first collaborative session, wherein the first collaborative session comprises transmission of a first set of collaborative data between a first computer system, a second computer system, and zero or more additional computer systems; maintaining a second collaborative session, wherein the second collaborative session comprises transmission of a second set of collaborative data between the first computer system, a third computer system, and zero or more additional computer systems; wherein transmission of at least a portion of the second set of collaborative data occurs prior to transmission of all of the first set of collaborative data.
- 10. The method of claim 9,
wherein a first session comprises communication among a first instance of the collaborative application running on the first computer system, a second instance of the collaborative application running on a second computer system, and a third instance of the collaborative application running on a third computer system, and wherein the method further comprises:
initiating a fourth instance of the collaborative application on the first computer system; sending a private message from the fourth instance of the collaborative application on the first computer system to the second computer system; receiving the message at the second computer system; initiating a fifth instance of the collaborative application on the second computer system in response to receiving the message, wherein a second session comprises the fourth instance of the collaborative application on the first computer system and the fifth instance of the collaborative application on the second computer system; and displaying the message using the fifth instance of the collaborative application on the second computer system.
- 11. The method of claim 9,
wherein each collaborative session comprises communication between instances of a collaborative application, and wherein each instance of the collaborative application is associated with a globally unique ID (GUID) which distinguishes the respective instance from other instances in the networked computing environment.
- 12. The method of claim 9,
wherein transmission of collaborative data is performed by sending and receiving messages through a distributed computing infrastructure.
- 13. The method of claim 9,
wherein each collaborative session comprises a chat session which enables a user of the first computer system and a user of the second computer system to communicate using text; wherein the collaborative data comprises text to be displayed.
- 14. The method of claim 9,
wherein each collaborative session comprises a shared whiteboard session which enables a user of the first computer system and a user of the second computer system to communicate using graphical data on a virtual shared whiteboard; wherein the collaborative data comprises graphical data to be displayed.
- 15. The method of claim 9, further comprising:
determining an application type of a collaborative application used in the collaborative sessions; determining whether an existing instance of the application type of the collaborative application is running on the second computer system; wherein the transmission of the first set of collaborative data comprises sending the collaborative data to the existing instance if the existing instance of the application type of the collaborative application is running on the second computer system; and wherein the transmission of the first set of collaborative data comprises sending the collaborative data to a new instance of the collaborative application if the existing instance of the application type of the collaborative application is not running on the second computer system.
- 16. The method of claim 9,
wherein the collaborative data is sent from the first computer system to the second computer system and one or more additional computer systems using multicast peer-to-peer messaging.
- 17. The method of claim 9,
wherein the collaborative data is sent from the first computer system to the second computer system and one or more additional computer systems using broadcast peer-to-peer messaging.
- 18. A carrier medium comprising program instructions for providing a plurality of collaborative sessions in a networked computing environment, wherein the program instructions are computer-executable to implement:
sending collaborative data from a first instance of the collaborative application on a first computer system to a second instance of the collaborative application on a second computer system; sending collaborative data from the second instance of the collaborative application to the first instance of the collaborative application; sending collaborative data from a third instance of the collaborative application on the first computer system to a fourth instance of the collaborative application on the second computer system; and sending collaborative data from the fourth instance of the collaborative application to the third instance of the collaborative application.
- 19. The carrier medium of claim 18,
wherein each instance of the collaborative application is associated with a globally unique ID (GUID) which distinguishes the respective instance from other instances in the networked computing environment.
- 20. The carrier medium of claim 18,
wherein each respective instance of the collaborative application sends and receives collaborative data by sending and receiving messages through a distributed computing infrastructure.
- 21. The carrier medium of claim 18,
wherein the collaborative application comprises a chat application which enables a user of the first computer system and a user of the second computer system to communicate using text; wherein the collaborative data comprises text to be displayed.
- 22. The carrier medium of claim 18,
wherein the collaborative application comprises a shared whiteboard application which enables a user of the first computer system and a user of the second computer system to communicate using graphical data on a virtual shared whiteboard; wherein the collaborative data comprises graphical data to be displayed.
- 23. The carrier medium of claim 18, wherein the program instructions are further computer-executable to implement:
determining an application type of the collaborative application; determining whether an existing instance of the application type of the collaborative application is running on the second computer system; wherein the sending the collaborative data from the first instance of the collaborative application to the second instance of the collaborative application comprises sending the collaborative data to the existing instance if the existing instance of the application type of the collaborative application is running on the second computer system; and wherein the sending the collaborative data from the first instance of the collaborative application to the second instance of the collaborative application comprises sending the collaborative data to a new instance of the collaborative application if the existing instance of the application type of the collaborative application is not running on the second computer system.
- 24. The carrier medium of claim 18,
wherein the collaborative data is sent from the first computer system to the second computer system and one or more additional computer systems using multicast peer-to-peer messaging.
- 25. The carrier medium of claim 18,
wherein the collaborative data is sent from the first computer system to the second computer system and one or more additional computer systems using broadcast peer-to-peer messaging.
- 26. A carrier medium comprising program instructions for providing a plurality of collaborative sessions in a networked computing environment, wherein the program instructions are computer-executable to implement:
maintaining a first collaborative session, wherein the first collaborative session comprises transmission of a first set of collaborative data between a first computer system, a second computer system, and zero or more additional computer systems; maintaining a second collaborative session, wherein the second collaborative session comprises transmission of a second set of collaborative data between the first computer system, a third computer system, and zero or more additional computer systems; wherein transmission of at least a portion of the second set of collaborative data occurs prior to transmission of all of the first set of collaborative data.
- 27. The carrier medium of claim 26,
wherein a first session comprises communication among a first instance of the collaborative application running on the first computer system, a second instance of the collaborative application running on a second computer system, and a third instance of the collaborative application running on a third computer system, and wherein the the program instructions are computer-executable to implement:
initiating a fourth instance of the collaborative application on the first computer system; sending a private message from the fourth instance of the collaborative application on the first computer system to the second computer system; receiving the message at the second computer system; initiating a fifth instance of the collaborative application on the second computer system in response to receiving the message, wherein a second session comprises the fourth instance of the collaborative application on the first computer system and the fifth instance of the collaborative application on the second computer system; and displaying the message using the fifth instance of the collaborative application on the second computer system.
- 28. The carrier medium of claim 26,
wherein each collaborative session comprises communication between instances of a collaborative application, and wherein each instance of the collaborative application is associated with a globally unique ID (GUID) which distinguishes the respective instance from other instances in the networked computing environment.
- 29. The carrier medium of claim 26,
wherein transmission of collaborative data is performed by sending and receiving messages through a distributed computing infrastructure.
- 30. The carrier medium of claim 26,
wherein each collaborative session comprises a chat session which enables a user of the first computer system and a user of the second computer system to communicate using text; wherein the collaborative data comprises text to be displayed.
- 31. The carrier medium of claim 26,
wherein each collaborative session comprises a shared whiteboard session which enables a user of the first computer system and a user of the second computer system to communicate using graphical data on a virtual shared whiteboard; wherein the collaborative data comprises graphical data to be displayed.
- 32. The carrier medium of claim 26, wherein the program instructions are computer-executable to implement:
determining an application type of a collaborative application used in the collaborative sessions; determining whether an existing instance of the application type of the collaborative application is running on the second computer system; wherein the transmission of the first set of collaborative data comprises sending the collaborative data to the existing instance if the existing instance of the application type of the collaborative application is running on the second computer system; and wherein the transmission of the first set of collaborative data comprises sending the collaborative data to a new instance of the collaborative application if the existing instance of the application type of the collaborative application is not running on the second computer system.
- 33. The carrier medium of claim 26,
wherein the collaborative data is sent from the first computer system to the second computer system and one or more additional computer systems using multicast peer-to-peer messaging.
- 34. The carrier medium of claim 26,
wherein the collaborative data is sent from the first computer system to the second computer system and one or more additional computer systems using broadcast peer-to-peer messaging.
- 35. A system comprising:
a first computer system, comprising a first CPU and a first memory; one or more additional computer systems, each comprising a respective additional CPU and a respective additional memory, wherein the one or more additional computer systems are communicatively coupled to the first computer system via a network; wherein the first memory and the additional memories comprise program instructions which are executable by the first CPU and the additional CPUs to:
send collaborative data from a first instance of the collaborative application on a first computer system to a second instance of the collaborative application on a second computer system; send collaborative data from the second instance of the collaborative application to the first instance of the collaborative application; send collaborative data from a third instance of the collaborative application on the first computer system to a fourth instance of the collaborative application on the second computer system; and send collaborative data from the fourth instance of the collaborative application to the third instance of the collaborative application.
- 36. The system of claim 35,
wherein each instance of the collaborative application is associated with a globally unique ID (GUID) which distinguishes the respective instance from other instances in the networked computing environment.
- 37. The system of claim 35,
wherein each respective instance of the collaborative application sends and receives collaborative data by sending and receiving messages through a distributed computing infrastructure.
- 38. The system of claim 35,
wherein the collaborative application comprises a chat application which enables a user of the first computer system and a user of the second computer system to communicate using text; wherein the collaborative data comprises text to be displayed.
- 39. The system of claim 35,
wherein the collaborative application comprises a shared whiteboard application which enables a user of the first computer system and a user of the second computer system to communicate using graphical data on a virtual shared whiteboard; wherein the collaborative data comprises graphical data to be displayed.
- 40. The system of claim 35, wherein the program instructions are further executable by the first CPU and the additional CPUs to:
determine an application type of the collaborative application; determine whether an existing instance of the application type of the collaborative application is running on the second computer system; wherein the sending the collaborative data from the first instance of the collaborative application to the second instance of the collaborative application comprises sending the collaborative data to the existing instance if the existing instance of the application type of the collaborative application is running on the second computer system; and wherein the sending the collaborative data from the first instance of the collaborative application to the second instance of the collaborative application comprises sending the collaborative data to a new instance of the collaborative application if the existing instance of the application type of the collaborative application is not running on the second computer system.
- 41. The system of claim 35,
wherein the collaborative data is sent from the first computer system to the second computer system and one or more additional computer systems using multicast peer-to-peer messaging.
- 42. The system of claim 35,
wherein the collaborative data is sent from the first computer system to the second computer system and one or more additional computer systems using broadcast peer-to-peer messaging.
- 43. A system comprising:
a first computer system, comprising a first CPU and a first memory; a plurality of additional computer systems, each comprising a respective additional CPU and a respective additional memory, wherein the plurality of additional computer systems are communicatively coupled to the first computer system via a network; wherein the first computer system and a first subset of the additional computer systems are operable to maintain a first collaborative session, wherein a first instance of a collaborative application is stored in the first memory and executable by the first CPU, and wherein a respective instance of the collaborative application is stored in the respective memory and executable by the respective CPU of each of the first subset of the additional computer systems; wherein the first computer system and a second subset of the additional computer systems are operable to maintain a second collaborative session, wherein a second instance of the collaborative application is stored in the first memory and executable by the first CPU, and wherein a respective instance of the collaborative application is stored in the respective memory and executable by the respective CPU of each of the second subset of the additional computer systems; wherein the first collaborative session comprises transmission of collaborative data among the first instance of a collaborative application on the first computer system and the respective instances of the collaborative application on the first subset of the additional computer systems; wherein the second collaborative session comprises transmission of collaborative data among the second instance of a collaborative application on the first computer system and the respective instances of the collaborative application on the second subset of the additional computer systems.
- 44. The system of claim 43,
wherein each collaborative session comprises communication between instances of a collaborative application, and wherein each instance of the collaborative application is associated with a globally unique ID (GUID) which distinguishes the respective instance from other instances in the networked computing environment.
- 45. The system of claim 43,
wherein transmission of collaborative data is performed by sending and receiving messages through a distributed computing infrastructure.
- 46. The system of claim 43,
wherein each collaborative session comprises a chat session which enables a user of the first computer system and a user of the second computer system to communicate using text; wherein the collaborative data comprises text to be displayed.
- 47. The system of claim 43,
wherein each collaborative session comprises a shared whiteboard session which enables a user of the first computer system and a user of the second computer system to communicate using graphical data on a virtual shared whiteboard; wherein the collaborative data comprises graphical data to be displayed.
- 48. The system of claim 43, wherein the first computer system and the additional computer systems are operable to:
determine an application type of a collaborative application used in the collaborative sessions; determine whether an existing instance of the application type of the collaborative application is running on the second computer system; wherein the transmission of the first set of collaborative data comprises sending the collaborative data to the existing instance if the existing instance of the application type of the collaborative application is running on the second computer system; and wherein the transmission of the first set of collaborative data comprises sending the collaborative data to a new instance of the collaborative application if the existing instance of the application type of the collaborative application is not running on the second computer system.
- 49. The system of claim 43,
wherein the collaborative data is sent from the first computer system to the second computer system and one or more additional computer systems using multicast peer-to-peer messaging.
- 50. The system of claim 43,
wherein the collaborative data is sent from the first computer system to the second computer system and one or more additional computer systems using broadcast peer-to-peer messaging.
PRIORITY CLAIM
[0001] This application claims benefit of priority of provisional application Serial No. 60/411,066 titled “Distributed Computing Infrastructure” filed on Sep. 16, 2002, whose inventors are Amir Husain, Todd Enright, and Barry Thornton.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60411066 |
Sep 2002 |
US |