System for software distribution in a digital computer network
First Claim
1. A method of transferring digital computer programs and data from one or more source digital computers to one or more electronically connected target digital computers, each called a Target, the method comprising the steps of:
- a. establishing a Remote Package Manager within each Target;
b. defining an installation method and a backout method, wherein the installation method includes the step of collecting information from the Target digital computer'"'"'s memory or permanent storage, and transmitting said information to a third digital computer called a Collection Receiver;
c. building a Package, wherein the step of building includes the step of combining the installation method and the backout method with digital computer programs and data into an object such that the Package includes embedded methods for installing and removing the digital computer programs and data;
d. transferring the Package by electrically transmitting the Package in digital form to each Target; and
e. unpacking the Package on each Target, wherein the step of unpacking includes the steps of;
transmitting a message from the Remote Package Manager to the Package; and
executing, as a function of the message transmitted from the Remote Package Manager, one or more of the embedded methods;
whereby the Package becomes a self-executing entity that acts autonomously in response to the message to execute one or more of the embedded methods.
4 Assignments
0 Petitions
Accused Products
Abstract
A process of distributing software and data in a digital computer network by combining the software and data, together with programs and data known as methods, into single entities referred to as Packages, and then by using specific techniques to transmit Packages from one computer to another. The methods are operable on a Target digital computer to unpack and perform useful functions such as installing and backing out software on the Target digital computer, collecting data from the Target digital computer and forwarding it to another digital computer, or completing a system administration function on the Target digital computer. The techniques used in transmitting Packages between digital computers includes use of Agent software to transfer and activate Packages at appropriate times. The techniques also include forwarding multiple copies of Packages received on a slow network connection to one or more digital computers connected on faster network connections. The techniques also include temporarily storing one or more Packages for later transmission to computers which connect occasionally to the network. Further, the techniques include limiting simultaneous transfers to Target digital computers based on network capacity and topology. The techniques also including limiting the type of software and data which each Package may affect on a Target digital computer, to more easily manage which Packages must be backed out in what order from the Target digital computers. Finally, the techniques also include constructing Packages which contain some software and data which depends on the configuration of the Target digital computer, and transferring only that part of the Package which is appropriate for each Target digital computer'"'"'s configuration.
-
Citations
28 Claims
-
1. A method of transferring digital computer programs and data from one or more source digital computers to one or more electronically connected target digital computers, each called a Target, the method comprising the steps of:
-
a. establishing a Remote Package Manager within each Target; b. defining an installation method and a backout method, wherein the installation method includes the step of collecting information from the Target digital computer'"'"'s memory or permanent storage, and transmitting said information to a third digital computer called a Collection Receiver; c. building a Package, wherein the step of building includes the step of combining the installation method and the backout method with digital computer programs and data into an object such that the Package includes embedded methods for installing and removing the digital computer programs and data; d. transferring the Package by electrically transmitting the Package in digital form to each Target; and e. unpacking the Package on each Target, wherein the step of unpacking includes the steps of; transmitting a message from the Remote Package Manager to the Package; and executing, as a function of the message transmitted from the Remote Package Manager, one or more of the embedded methods; whereby the Package becomes a self-executing entity that acts autonomously in response to the message to execute one or more of the embedded methods. - View Dependent Claims (2, 3, 4, 5, 6, 7, 15)
-
-
8. A method of transferring digital computer programs and data from one or more source digital computers to one or more electronically connected target digital computers, each called a Target, the method comprising the steps of:
-
a. establishing a Remote Package Manager within each Target; b. defining an installation method and a backout method; c. building a Package, wherein the step of building includes the step of combining the installation method and the backout method with digital computer programs and data into an object such that the Package includes embedded methods for installing and removing the digital computer programs and data; d. transferring the Package by electrically transmitting the Package in digital form to each Target, wherein the step of transferring includes the step of re-transmitting the Package from one of the Targets to one or more digital computers specified by the Package; and e. unpacking the Package on each Target, wherein the step of unpacking includes the steps of; transmitting a message from the Remote Package Manager to the Package; and executing, as a function of the message transmitted from the Remote Package Manager, one or more of the embedded methods; whereby the Package becomes a self-executing entity that acts autonomously in response to the message to execute one or more of the embedded methods. - View Dependent Claims (9, 10, 11, 12, 13)
-
-
14. A method of transferring digital computer programs and data from one or more source digital computers to one or more electronically connected target digital computers, each called a Target, the method comprising the steps of:
-
a. establishing a Remote Package Manager within each Target; b. defining an installation method and a backout method; c. building a Package, wherein the step of building includes the step of combining the installation method and the backout method with digital computer programs and data into an object such that the Package includes embedded methods for installing and removing the digital computer programs and data; d. transferring the Package by electrically transmitting the Package in digital form to each Target; and e. unpacking the Package on each Target, wherein the step of unpacking includes the steps of; transmitting a message from the Remote Package Manager to the Package; and executing one or more of the embedded methods; wherein each Target may belong to exactly one set of Targets which all receive identical Packages in the identical order, called a Profile, in which an order is enforced for both installing and backing out the Package so that the most recently installed package must be backed out before the second most recently installed package may be backed out; whereby, upon receiving the message transmitted from the Remote Package Manager, the Package becomes a self-executing entity that acts autonomously in response to the message to execute one or more of the embedded methods. - View Dependent Claims (16, 17, 18)
-
-
19. A method of transferring system configuration information from one or more digital computers to one or more electronically connected Target digital computers, the method comprising the steps of:
-
a. establishing a Remote Package Manager within each Target; b. defining an installation method and a backout method; c. building a Package having a Package type, wherein the step of building includes the step of combining the installation method and the backout method with the system configuration information into an object such that the Package includes embedded methods for modifying the system configuration of the Target digital computer according to said system configuration information; d. assigning a plurality of Target digital computers to a Profile, wherein the Profile defines an order to be followed for both installing and backing out the Package so that the most recently installed package must be backed out before the second most recently installed package may be backed out; e. transferring the Package at or after a pre-designated time by electrically transmitting the Package in digital form to one or more Target digital computers; and f. unpacking the Package on each Target digital computer by invoking the embedded installation method, wherein the step of unpacking includes the steps of; determining, at the Remote Package Manager, the Package type; and transmitting a message from the Remote Package Manager to the Package as a function of the Package type; whereby the Package becomes a self-executing entity that acts autonomously in response to the message received from the Remote Package Manager to execute one or more of the embedded methods. - View Dependent Claims (20, 21)
-
-
22. A software distribution system, comprising:
-
an internetwork; a network management server connected to the internetwork, wherein the network management server includes; a central package archive, wherein the central package archive stores packages, wherein each package stored in the central package archive includes a package type, digital computer programs and data and embedded methods for installing and removing the digital computer programs and data; an outbound package queue; a central package manager connected to the central package archive and the outbound package queue, wherein the central package manager transfers one of said packages between the central package archive and the outbound package queue; and a package transfer agent connected to the outbound package queue, wherein the package transfer agent transfers packages from the outbound package queue to the internetwork; and a target system, wherein the target system includes; an inbound package queue; a package transfer agent connected to the inbound package queue, wherein the package transfer agent transfers packages from the internetwork to the inbound package queue; and a remote package manager connected to the inbound package queue, wherein the remote package manager reads the package type of packages stored in the inbound package queue and messages the package as a function of the package type; whereby the package becomes a self-executing entity that acts autonomously in response to the message received from the remote package manager to execute one or more of the embedded methods. - View Dependent Claims (23, 24)
-
-
25. A software distribution system, comprising:
-
a network management server, wherein the network management server includes; a central package archive, wherein the central package archive stores packages, wherein each package stored in the central package archive includes a package type, digital computer programs and data and embedded methods for installing and removing the digital computer programs and data; an outbound package queue; a central package manager connected to the central package archive and the outbound package queue, wherein the central package manager transfers one of said packages between the central package archive and the outbound package queue; and a package transfer agent connected to the outbound package queue, wherein the package transfer agent transfers packages from the outbound package queue to the internetwork; a distribution server connected to the network management server, wherein the distribution server includes; an outbound package queue; a first package transfer agent connected to the outbound package queue, wherein the first package transfer agent receives packages from the package transfer agent of the network management server and stored the packages to the outbound package queue; and a second package transfer agent connected to the outbound package queue, wherein the second package transfer agent transfers packages from the outbound package queue; and a target system connected to the distribution server, wherein the target system includes; an inbound package queue; a package transfer agent connected to the inbound package queue and to the second package transfer agent of the distribution server, wherein the package transfer agent transfers packages from the outbound package queue of the distribution server to the inbound package queue; and a remote package manager connected to the inbound package queue, wherein the remote package manager reads the package type of packages stored in the inbound package queue and messages the package as a function of the package type; whereby the package becomes a self-executing entity that acts autonomously in response to the message received from the remote package manager to execute one or more of the embedded methods. - View Dependent Claims (26, 27, 28)
-
Specification