System and method for providing multiple embodiments of abstract software modules in peer-to-peer network environments
First Claim
1. A peer-to-peer network system, comprising:
- a plurality of peer nodes coupled to a network;
a class of software module provided by one or more of the peer nodes;
a module class identifier that uniquely identifies the class of software module;
one or more module specification advertisements corresponding to the class of software module, wherein each module specification advertisement describes a module specification including an expected on-wire behavior and a protocol of the class of software module; and
one or more module implementation advertisements corresponding to each module specification advertisement, wherein each module implementation advertisement describes a particular module implementation of a corresponding module specification, wherein each module implementation is configured to execute within a particular execution environment.
2 Assignments
0 Petitions
Accused Products
Abstract
System and method for providing multiple embodiments of abstract software modules in peer-to-peer network environments. A module class may have one or more module specifications. Each module specification may have one or more module implementations configured to execute within a particular execution environment. A unique module class identifier may be assigned to the module class. A role extension to the module class identifier may be generated for each instance of the module class that performs a different role in a context. A module specification advertisement may be generated for each module specification. A unique module specification identifier may be assigned to each module specification of the module class. A module implementation advertisement may be generated for each module implementation. In one embodiment, the module specification identifier of the corresponding module specification is included in each module implementation advertisement.
-
Citations
38 Claims
-
1. A peer-to-peer network system, comprising:
-
a plurality of peer nodes coupled to a network; a class of software module provided by one or more of the peer nodes; a module class identifier that uniquely identifies the class of software module; one or more module specification advertisements corresponding to the class of software module, wherein each module specification advertisement describes a module specification including an expected on-wire behavior and a protocol of the class of software module; and one or more module implementation advertisements corresponding to each module specification advertisement, wherein each module implementation advertisement describes a particular module implementation of a corresponding module specification, wherein each module implementation is configured to execute within a particular execution environment. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A peer-to-peer network system, comprising:
-
a plurality of peer nodes coupled to a network; a class of software module provided by one or more of the peer nodes; a module class identifier that uniquely identifies the class of software module; one or more module specification advertisements corresponding to the class of software module, wherein each module specification advertisement includes a module specification identifier that uniquely identifies the module specification corresponding to the module specification advertisement; and one or more module implementation advertisements corresponding to each module specification advertisement, wherein each module implementation advertisement includes a module specification identifier that uniquely identifies the module specification implemented by the module implementation corresponding to the module implementation advertisement. - View Dependent Claims (10, 11)
-
-
12. A system, comprising:
-
a processor; and a memory comprising program instructions, wherein the program instructions are executable by the processor to; assign a module class identifier to a class of software module hosted by the system on a peer-to-peer network, wherein the module class identifier uniquely identifies the class of software module; generate one or more module specification advertisements corresponding to the class of software module, wherein each module specification advertisement describes a module specification including an expected on-wire behavior and a protocol of the class of software module; and generate one or more module implementation advertisements corresponding to each module specification advertisement, wherein each module implementation advertisement describes a particular module implementation of a corresponding module specification, wherein the module implementation is configured to execute within a particular execution environment. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19, 20)
-
-
21. A peer-to-peer network system, comprising:
-
means for uniquely identifying a class of software module hosted by one or more peer nodes of the peer-to-peer network system; means for advertising one or more module specifications of the class of software module, wherein each module specification indicates an expected on-wire behavior and a protocol of the class of software module; and means for advertising one or more module implementations corresponding to each module specification, wherein each module implementation is configured to execute within a particular execution environment. - View Dependent Claims (22)
-
-
23. A method for providing multiple embodiments of abstract software modules, comprising:
-
one or more of a plurality of peers in a peer-to-peer network environment hosting a class of software module; assigning a module class identifier to the class of software module, wherein the module class identifier uniquely identifies the class of software module generating one or more module specification advertisements corresponding to the class of software module, wherein each module specification advertisement describes a module specification including expected on-wire behavior and protocol of the class of software module; and generating one or more module implementation advertisements corresponding to each module specification advertisement, wherein each module implementation advertisement describes a particular module implementation of a corresponding module specification configured to execute within a particular execution environment. - View Dependent Claims (24, 25, 26, 27, 28, 29, 30)
-
-
31. A computer-accessible storage medium comprising program instructions, wherein the program instructions are configured to implement:
-
assigning a module class identifier to a class of software module hosted by one or more of a plurality of peers in a peer-to-peer network environment, wherein the module class identifier uniquely identifies the class of software module; generating one or more module specification advertisements corresponding to the class of software module, wherein each module specification advertisement describes a module specification including expected on-wire behavior and protocol of the class of software module; and generating one or more module implementation advertisements corresponding to each module specification advertisement, wherein each module implementation advertisement describes a particular module implementation of a corresponding module specification configured to execute within a particular execution environment. - View Dependent Claims (32, 33, 34, 35, 36, 37, 38)
-
Specification