Nova Patents
EP0928089A2

Mobility of agents in a network

Abstract

In accordance with the present invention, a mobile agent object executes a first method on a first computer, migrates from the first computer to a second computer, and executes a second method on the second computer. The first and second methods and first and second computers are designated in an itinerary. The agent includes both data and executable code which are serialized for transmission from the first computer to the second computer as data. The data containing the agent is then deserialized in the second computer to regenerate the agent in the form of an object. The executable code portion of the agent can be supplemented with code from a home located on another computer.

EP0928089A2, drawing sheet 1
Sheet 1 of 6

Term

Term ended

Projected expiry passed 10 September 2018, 8 years ago.

  1. Priority
  2. Filed
  3. Published
  4. Projected expiry
  5. Today

28 claims: 13 independent, 15 dependent

  1. 1
    In a computer network including at least a first computer and a second computer, an apparatus for performing a task in a second computer, comprising:a routine that generates a mobile agent object in the first computer, the mobile agent including both data and executable code;a protocol for transmission of the mobile agent from the first computer to the second computer, wherein execution of the mobile agent in the second computer following such transmission prompts the task to be performed in the second computer;and an itinerary containing a reference to each destination computer to which the mobile agent is designated to migrate and a reference to a method associated with each respective destination computer reference, the respective method being invoked when the mobile agent is present on the respective destination computer.
  2. 2
    In a computer network including at least a first computer and a second computer, an apparatus for performing a task in a second computer, comprising:a routine that generates a mobile agent object in the first computer, the mobile agent including both data and executable code;a protocol for transmission of the mobile agent from the first computer to the second computer, wherein execution of the mobile agent in the second computer following such transmission prompts the task to be performed in the second computer, at least a portion of the executable code required for execution being retrieved from a mobile codebase portion of the executable code included in the mobile agent;and a reference to a home codebase located on the first computer, the reference being employed to retrieve executable code which is not present in the mobile codebase.
  3. 5
    The apparatus of one of claims 1 to 4 wherein the task is data gathering, and wherein the mobile agent is transmitted back to the first computer from the second computer following completion of such data gathering.
  4. 6
    The apparatus of one of claims 1 to 5 wherein the mobile agent migrates to a plurality of destination computers within the computer network.
  5. 10
    The apparatus of claims 2 or 8 wherein required executable code is sought first in the computer on which the mobile agent is executing, then in the mobile codebase, and finally on the home codebase.
  6. 11
    The apparatus of claims 2 or 8 wherein a new thread is formed for execution of the mobile agent in the destination computer following receipt of the mobile agent, and wherein a security feature prevents the mobile agent from operating outside a scope assigned to such thread.
  7. 12
    The apparatus of claims 2 or 8 wherein the mobile agent further includes sub-objects.
  8. 13
    The apparatus of claims 6 or 7 wherein the mobile agent further includes an itinerary containing a reference to each destination computer to which the agent is designated to migrate and a reference to a method associated with each respective destination computer reference, the respective method being invoked when the mobile agent is present on the respective destination computer.
  9. 14
    The apparatus of claims 1 or 13 wherein a persistent local copy of the mobile agent is stored following receipt of the mobile agent, and wherein such copy is overwritten with an updated persistent copy following agent execution.
  10. 15
    In a computer network including at least a first computer and a second computer, a method for performing a task in a second computer, comprising the steps of:generating a mobile agent object in the first computer, the mobile agent including both data and executable code;transmitting the mobile agent from the first computer to the second computer;receiving the mobile agent in the second computer;and executing the mobile agent in the second computer in accordance with an itinerary which contains a reference to each destination computer to which the mobile agent is designated to migrate and a reference to a method associated with each respective destination computer reference, the method associated with the second computer being invoked when the mobile agent is present on the second computer.
  11. 16
    In a computer network including at least a first computer and a second computer, a method for performing a task in a second computer, comprising the steps of:generating a mobile agent object in the first computer, the mobile agent including both data and executable code;transmitting the mobile agent from the first computer to the second computer;receiving the mobile agent in the second computer;retrieving at least a portion of the executable code required for invoking the method from a mobile codebase portion of the executable code included in the mobile agent;employing a reference to a home codebase located on the first computer to retrieve required executable code which is not present in the mobile codebase;and executing the mobile agent in the second computer such that the mobile agent prompts the task to be performed in the second computer.
  12. 19
    The method of one of claims 15 to 18 wherein the task is data gathering, and including the further step of transmitting the mobile agent back to the first computer from the second computer following completion of such data gathering.
  13. 20
    The method of one of claims 15 to 19 including the further step of causing the mobile agent to sequentially migrate to a plurality of destination computers within the computer-network.