EP1287433A2 - Agent system for mobile agents, computer network and method for downloading an agent system from a host computer to a client computer of a computer network - Google Patents
Agent system for mobile agents, computer network and method for downloading an agent system from a host computer to a client computer of a computer networkInfo
- Publication number
- EP1287433A2 EP1287433A2 EP00963896A EP00963896A EP1287433A2 EP 1287433 A2 EP1287433 A2 EP 1287433A2 EP 00963896 A EP00963896 A EP 00963896A EP 00963896 A EP00963896 A EP 00963896A EP 1287433 A2 EP1287433 A2 EP 1287433A2
- Authority
- EP
- European Patent Office
- Prior art keywords
- agent system
- computer
- client computer
- agent
- host computer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/485—Task life-cycle, e.g. stopping, restarting, resuming execution
- G06F9/4856—Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration
- G06F9/4862—Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration the task being a mobile agent, i.e. specifically designed to migrate
Definitions
- Agent system computer network and method for loading an agent system from a host computer to a client computer of a computer network
- the invention relates to an agent system, in particular an agent system for mobile agents, a computer network with a plurality of computers networked by means of data lines, and a method for loading an agent system from a host computer to a client computer.
- Agents are autonomous, cooperative software units that consist of code and data. They are independently functioning software units that do not require constant interaction with the user. There are both stationary and mobile agents.
- Mobile agents are e.g. from US 5,603,031 and from the book Software Agents, Bradshaw Jeffrey, Menlo Park, California: AAAI Press / The MIT Press, 1996. The chapter in this book about mobile agents is in a slightly modified version on the Internet at http: // www. generalmagic. com / technology / techwhitepaper. html available.
- Mobile agents are programs that can be active in different places in a computer network and can change their location in the computer network. Traditionally, programs on a network are loaded from one computer to another while they are not running. Mobile agents, on the other hand, are initially activated and automatically change their position in the network while they are active.
- the agents are on created a specific location of the network, the functions to be performed by the agent being determined so that the agent, after being transmitted to another location in the network, represents the previous location of the network and performs the corresponding functions.
- functions can be defined in one place of a network which are carried out in another place of the network.
- this is also possible with conventional systems, in which case a permanent exchange of information is necessary in the network between the two places, so that they are transferred from the place where the corresponding control processes are defined to the place where they are carried out.
- the mobile agents do not require any such control processes, since their functions are defined in advance and then carried out automatically. This considerably reduces the data throughput of the network, and any operations can be carried out at the locations remote from the client.
- the agents do not always have to work completely independently of their initiator, but can set up communication channels with him or with other places in the network.
- the mobile agents execute a migration command (for example “go”).
- a migration command for example “go”.
- Such a command requires a description of the destination, the name, address or type of the place or a combination of which the agent is to move to.
- Different locations do not always have to be located on different computers in the network. It is also possible that agents are active in different locations within a computer. Mobile agents can also multiply so that they perform their functions independently of one another in different places.
- Mobile agents are often used to collect predetermined data, some of which is evaluated on site, so that a pre-processed result is sent to the original client.
- a possible application for such mobile agents arises, for example, if a buyer of a certain item is guaranteed a low price by the seller.
- the buyer can then send out one or more mobile agents who independently receive corresponding offers from other providers, possibly monitor them over a certain period of time, and send them to the buyer so that he can compare them with the price offered by the seller.
- agent system is a collection of utilities that each agent needs to perform its tasks. These utilities usually include an agent manager, which is connected to other utilities, so that the active mobile agents can access the respective computer resources and can migrate from one agent system of the network to another agent system of the network via network interfaces. As a rule, an agent system control is provided, which regulates the sequence of the agent system on the respective computer. These agent systems form the places in the network where the agents can become active.
- agent systems are usually in a platform-independent computer language, such as JAVA, written so that they can run on any computer system.
- Agents are usually relatively small programs that are sent out and take advantage of the intelligence available on site. Since mobile agents can process their jobs even when there is no permanent network connection between the individual computers, they are ideally suited for use on mobile computers, which are usually not permanently connected to a network.
- the term computer also includes simple process computers which are only equipped with a minimal hardware configuration (processor, memory and display). Such simple process computers are integrated, for example, on a single chip.
- the invention is therefore based on the object of creating an agent system which is more familiar with the scope of functions
- the invention has for its object to provide a corresponding computer network and a method for loading an agent system from a host computer to a client computer of a computer network. The tasks are solved by an agent system with the features of claim 1, a computer network with the features of claim 6 and a method with the features of claim 9.
- Advantageous embodiments of the invention are specified in the subclaims.
- the agent system which can be installed on a computer connected to a computer network, has an agent platform and an agent system controller.
- the agent platform comprises utilities which a mobile agent requires in order to be able to be executed on the respective computer.
- the agent system control includes an agent system launcher which can be loaded onto a client computer independently of the rest of the agent system and is used to load the agent system from a host computer.
- the agent system according to the invention is characterized in that the agent system launcher is designed in such a way that, prior to loading an agent system, from a host computer to the client computer on which at least the agent system launcher is installed Hardware and / or software of the client computer descriptive identifier is sent to the host computer, and a server system installed on the host computer, the agent system - update program, is designed such that it is in accordance with the hardware and / or the software describing the client computer identifies an agent system adapted to the hardware and / or software of the client computer and loads it onto the client computer.
- a host computer is any computer in the network from which an agent system can be loaded onto another computer of the present invention is referred to as a client computer.
- Each computer in a network can thus be a host computer and a client computer, regardless of its other function in the network.
- the inventive configuration of the agent system launcher which sends an identifier identifying the client computer to the host computer
- the inventive configuration of the agent system installed on the host computer which compiles an adapted agent system according to this identifier and this makes it available to the client computer
- small, in particular mobile computers which for example consist of a simple process computer or a personal digital assistant, into a computer network and to provide them with the agent system according to the invention, since this automatically switches on the respective client computer and its performance is adapted.
- Typical adjustment criteria are e.g. the display (e.g.
- Color picture tube color LCD screen, b / w LCD screen, small alphanumeric LCD display or small numerical display only
- the available storage space or the available storage medium RAM, hard disk or the like
- that available on the computer system software Java and its derivatives, Windows, Windows-CE, etc.
- agent systems with a correspondingly large scope of performance can be installed on computers with high performance and simplified agent systems can be installed on computers with lower performance, which are tailored specifically to the existing software and hardware, including any peripheral devices are.
- 1 is a network over which several computers are connected, on each of which an agent system is installed,
- FIG. 3 shows the method for loading an agent system from a host computer onto a client computer of a computer network in a flow chart.
- FIG. 1 shows a simplified schematic of a network with a plurality of computers 1 which are connected to one another via data lines 2.
- the computers 1 have different scope of services, that is to say that they can have different processor services, storage capacities and / or system programs.
- the performance of the individual computers 1 is symbolically represented by the size of the rectangle representing the respective computer 1.
- the computers 1 are numbered I. to IV.
- the computer I. can be the most powerful and the computer IV represents a mobile terminal.
- the data line 2 from the computer IV to the other computers is a mobile radio connection which is not permanently maintained. It is therefore shown in Fig. 1 by a dashed line.
- agent system AS-I there is an agent system AS-I on each computer 1. to AS-IV. Installed. There are some mobile agents AG-I in the network. to AG-IV., which are either arranged on one of the computers 1, or move from one to another computer (III. - II.). 2 schematically shows the structure of an agent system.
- the agent system has an agent platform 3 (also called a platform) which comprises the service programs which a mobile agent requires in order to be able to be executed on the respective computer 1.
- the agent platform 3 has two central program parts, the agent manager 4 and the communication manager 5.
- the communication manager 5 comprises a bulletin board 6 and several protocol managers 7, which provide the protocols for the communication of agent systems and their applications, the agent 25.
- the communication manager also enables agent migration. With the help of a network link 8, the protocol managers 7 enable the corresponding use of a connected network 9. Data for platform-local communication between agents can be buffered on the bulletin board 6.
- the agent manager 4 has a monitoring module 10 with which internal processes relating to applications 25 connected to the agent manager 4 are monitored.
- the monitoring information is provided by utilities, e.g. an agent software update program 11, a user manager 12, a security manager 13, and a resource manager 14.
- the agent manager 4 is also connected to a permanent memory 15, which is represented, for example, by a hard disk.
- Configuration data and important runtime information such as e.g. Agents, secured so that they are available again even after a temporary shutdown.
- this read-only memory 15 it is also common to design this read-only memory 15 as a semiconductor memory which can store data permanently, i.e. even after the computer has been switched off.
- the agent manager 4 is provided with an administration interface 19 and an agent application interface 20, the agent manager 4 is connected to an agent system controller 21 via the administration interface 19, O LO NJ t 1— 'P- *
- P 1 ⁇ ⁇ X2 Hl ⁇ ⁇ d 3 d lS P ⁇ 3 O is SX ⁇ > 3 lS 2 rt ⁇ d ⁇ ⁇
- Hi C ⁇ P is ⁇ d L ⁇ ⁇ • X2 ⁇ rt rt 3 d ⁇ 3 1 X2 n NP ⁇ ⁇ X2 rt rt JP 3 d cn 3 li ⁇ 3 DJ N X2 3; v cn 3 rt ⁇ (U cn c ⁇ iQ ⁇ 3 left ⁇
- Computer 28 is referred to, the agent system launcher 23a may be loaded.
- the client computer 28 must be connected via a data line 2 to at least one computer on which an agent system update program 23b is installed, so that this computer, which is referred to below as the host computer 29, also comes from there existing agent system creates a customized or scaled copy of this agent system and can be loaded onto the client computer 28.
- the data line 2 can be an electronic or optical cable or a radio link.
- step S1 The procedure for loading and updating an agent system is carried out by the agent system launcher 23a and started in a step S1 (FIG. 3). This is followed by a query as to whether an agent system AS already exists on the computer (S2). If this query shows that no agent system already exists on the present computer, the program flow goes to step S3, which is part of a loading function 30 of the agent system launcher 23a. In step S3, an identifier identifying the hardware and / or software of the client computer 28 is sent to the host computer 29. This identifier contains information about the performance of the hardware and / or software, e.g. the size of the available memory, the type of storage medium, the type of display and the existing system programs.
- the identifier sent by the client computer 28 is evaluated in a step S4 and an agent system is compiled in accordance with the identifier in a step S5.
- the agent system is adapted by adding or omitting suitable / required or unnecessary components and by configuring and scaling the selected components for the hardware and software present on the client computer 28.
- the components are configured with regard to their dynamic complexity, which is essentially based on the size of data structures.
- step S8 If the agent system is not in operation, it is started in step S8 and the agent system launcher 23a is ended in step S9. If the agent system is already in operation, the program flow goes directly to step S9, with which the agent system launcher 23a is ended.
- step S15 If the check in step S15 shows that an update of the agent system is permitted, the program flow goes to step S17, with which it is checked whether the agent system is in operation.
- step S13 shutdown sequence
- step S18 end the operation of the agent system.
- step S17 If the query in step S17 shows that the agent system is not in operation, the program flow can pass directly to step S20.
- Step S20 sends a version identifier to the host computer 29.
- the version identifier contains the information about the versions of the agent system and its components installed on the client computer 28.
- the version identifications are evaluated on the host computer 29 in step S21 and version information of the latest agent system and its components that can be loaded by the host computer and its components are sent to the client computer in the following step S22. Then, in step S23, the client's own version IDs are compared with the version information and the host on the client computer 28 and a check is carried out to determine whether the respective version that can be loaded by the host computer is more current than the version of the agent system and its version on the client computer Components is.
- step S3 If the check shows that the version that can be loaded by the host computer 29 is more current, the program flow is transferred to step S3, which in turn sends an identifier identifying the hardware and / or software of the client computer 28 to the host computer , whereupon the latter compiles an agent system adapted to this and sends it to the client computer 28. If, on the other hand, the query in step S23 shows that the versions that can be loaded by the host computer are not more current than the versions of the agent system and its components that are on the client computer, the program flow is transferred to step S8, with which the agent system is started , This means that the entire agent system or, if necessary, only parts of it (in operation) can be updated.
- Steps S20 and S23 form an update function 31 with which the agent system launcher 23a carries out the update of an existing agent system.
- the method according to the invention for loading an agent system is carried out by the agent system launcher 23a.
- the agent system launcher can be started manually at any time, regardless of whether an agent system is present or not or whether the agent system is in operation or not.
- the agent system launcher 23a can also be activated automatically when it is first loaded onto a computer or when a computer is started. If there is already a complete agent system, the agent system launcher 23a can be controlled directly by the user or by the administration program 22, the administration program 22 being able to call it repeatedly, thereby ensuring that the agent system is updated regularly and as required.
- a host computer 29 permanently connected to a network can be provided to manage the agent systems of a plurality of mobile client computers 28. For example, on a small mobile computer, the client computer 28 black and white screen, an agent system is started, then the host computer 29 sends a request to the client computer 28 and in the process also transfers the current data about its resources (for example b / w screen, 8 MB RAM, maximum number that can be displayed) Windows on the screen, existing Java virtual machine, graphic representation of characters, user management functionality of the agent system for one or more users, ). The host computer 29 uses this information to put together an agent system in which, for example, there is a Java class for printing specifically on b / w devices.
- resources for example b / w screen, 8 MB RAM, maximum number that can be displayed
- the agent system according to the invention can optionally be provided with a function which automatically checks the hardware and / or software of the respective computer and, if necessary, starts the launcher 23a.
- the agent system can be dynamically adapted to changes in hardware and / or software.
- This function can be implemented by step S24 shown in FIG. 3, which follows step S17.
- step S24 it is checked whether the hardware and / or software has been changed since the agent system was last updated. If such a change is determined, the program flow goes directly to step S3, with which a corresponding identifier is sent to the host computer 29. If such a change is not found, the program goes to the step
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multi Processors (AREA)
- Computer And Data Communications (AREA)
- Information Transfer Between Computers (AREA)
- Control By Computers (AREA)
Abstract
Description
Claims
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19939058 | 1999-08-18 | ||
DE19939058 | 1999-08-18 | ||
PCT/DE2000/002705 WO2001013224A2 (en) | 1999-08-18 | 2000-08-11 | Agent system for mobile agents, computer network and method for downloading an agent system from a host computer to a client computer of a computer network |
Publications (1)
Publication Number | Publication Date |
---|---|
EP1287433A2 true EP1287433A2 (en) | 2003-03-05 |
Family
ID=7918726
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP00963896A Ceased EP1287433A2 (en) | 1999-08-18 | 2000-08-11 | Agent system for mobile agents, computer network and method for downloading an agent system from a host computer to a client computer of a computer network |
Country Status (4)
Country | Link |
---|---|
US (1) | US6981251B1 (en) |
EP (1) | EP1287433A2 (en) |
CN (1) | CN1322421C (en) |
WO (1) | WO2001013224A2 (en) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3772102B2 (en) * | 2001-07-30 | 2006-05-10 | 株式会社東芝 | Information processing method, information processing apparatus, and program |
US7523456B2 (en) * | 2002-07-26 | 2009-04-21 | Topia Technology, Inc. | System and method for adding local resources for use by a mobile agent object |
US7165087B1 (en) * | 2002-12-17 | 2007-01-16 | Hewlett-Packard Development Company, L.P. | System and method for installing and configuring computing agents |
US8589517B2 (en) * | 2003-11-04 | 2013-11-19 | Verizon Business Global Llc | Systems and methods for providing self-compiling, peer-to-peer on-line gaming |
DE102004016381B4 (en) * | 2004-04-02 | 2006-02-09 | Siemens Ag | Method for error detection and support of reconfiguration decisions in mobile radio networks with reconfigurable terminals and corresponding network elements and components |
US8156489B2 (en) * | 2004-05-21 | 2012-04-10 | Computer Associates Think, Inc. | Distributed installation configuration system and method |
US20060053116A1 (en) * | 2004-08-31 | 2006-03-09 | Rits Maarten E | Dynamic software updating using mobile agent AOP |
US20070073800A1 (en) * | 2005-09-29 | 2007-03-29 | Intel Corporation | Provisioning, configuring, and managing a platform in a network |
US8935429B2 (en) | 2006-12-19 | 2015-01-13 | Vmware, Inc. | Automatically determining which remote applications a user or group is entitled to access based on entitlement specifications and providing remote application access to the remote applications |
US8010701B2 (en) | 2005-12-19 | 2011-08-30 | Vmware, Inc. | Method and system for providing virtualized application workspaces |
CN101197022B (en) * | 2007-12-14 | 2012-04-18 | 上海汽车集团股份有限公司 | Vehicle configuration method of automobile diagnostic instrument |
TW201135594A (en) * | 2010-04-08 | 2011-10-16 | Inventec Corp | System for updating software using separated modules and method thereof |
CN102253847A (en) * | 2010-05-19 | 2011-11-23 | 宏碁股份有限公司 | System for manufacturing system software and method for deploying system software |
CA2875850C (en) * | 2014-12-23 | 2022-07-05 | Steve Cooper | Version synchronization of dependent components |
CN108279855B (en) * | 2015-03-05 | 2021-07-06 | 青岛海信宽带多媒体技术有限公司 | Method for reading and writing storage device |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5603031A (en) | 1993-07-08 | 1997-02-11 | General Magic, Inc. | System and method for distributed computation based upon the movement, execution, and interaction of processes in a network |
US5845090A (en) * | 1994-02-14 | 1998-12-01 | Platinium Technology, Inc. | System for software distribution in a digital computer network |
US5742829A (en) * | 1995-03-10 | 1998-04-21 | Microsoft Corporation | Automatic software installation on heterogeneous networked client computer systems |
CN1224517A (en) * | 1996-07-01 | 1999-07-28 | 北方电讯有限公司 | Distribution and controlled use of software products |
US6260078B1 (en) | 1996-07-03 | 2001-07-10 | Sun Microsystems, Inc. | Using a distributed object system to find and download java-based applications |
US6009274A (en) * | 1996-12-13 | 1999-12-28 | 3Com Corporation | Method and apparatus for automatically updating software components on end systems over a network |
US6175855B1 (en) * | 1996-12-20 | 2001-01-16 | Siemens Aktiengesellschaft | Method for instantiating a class having different versions |
GB2333864B (en) * | 1998-01-28 | 2003-05-07 | Ibm | Distribution of software updates via a computer network |
US6202207B1 (en) * | 1998-01-28 | 2001-03-13 | International Business Machines Corporation | Method and a mechanism for synchronized updating of interoperating software |
US7024471B2 (en) * | 2000-12-12 | 2006-04-04 | International Business Machines Corporation | Mechanism to dynamically update a windows system with user specific application enablement support from a heterogeneous server environment |
US7293115B2 (en) * | 2001-02-28 | 2007-11-06 | Sony Corporation | Internet-aware agent for automatically updating applications without executing the application |
US6976251B2 (en) * | 2001-05-30 | 2005-12-13 | International Business Machines Corporation | Intelligent update agent |
US20030131226A1 (en) * | 2002-01-04 | 2003-07-10 | Spencer Donald J. | Dynamic distributed configuration management system |
-
2000
- 2000-08-11 CN CNB008154937A patent/CN1322421C/en not_active Expired - Fee Related
- 2000-08-11 EP EP00963896A patent/EP1287433A2/en not_active Ceased
- 2000-08-11 WO PCT/DE2000/002705 patent/WO2001013224A2/en active Application Filing
- 2000-08-11 US US10/049,864 patent/US6981251B1/en not_active Expired - Lifetime
Non-Patent Citations (1)
Title |
---|
See references of WO0113224A3 * |
Also Published As
Publication number | Publication date |
---|---|
CN1322421C (en) | 2007-06-20 |
WO2001013224A2 (en) | 2001-02-22 |
CN1520551A (en) | 2004-08-11 |
WO2001013224A3 (en) | 2002-11-21 |
US6981251B1 (en) | 2005-12-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE602005004214T2 (en) | Communication system and method for updating software in an end user device | |
DE69735348T2 (en) | Scalable and extensible system management architecture with dataless endpoints | |
EP0849666B1 (en) | Method for instantiating class versions | |
WO2001013224A2 (en) | Agent system for mobile agents, computer network and method for downloading an agent system from a host computer to a client computer of a computer network | |
DE68919975T2 (en) | Process for the simultaneous management of a distributed user program in a host computer and in a large number of intelligent user stations in an SNA network. | |
DE68926345T2 (en) | DATA PROCESSING NETWORK | |
DE60200210T2 (en) | Embedded programming software accessible via the World Wide Web | |
DE112012005973B4 (en) | Information processing apparatus, information processing method and program | |
DE60306947T2 (en) | COMMUNICATION SYSTEM, RELAY DEVICE AND COMMUNICATION CONTROL METHOD | |
EP3939344B1 (en) | Method for providing subscription profiles, subscriber identity module and subscription server | |
DE102005050304A1 (en) | Method and program for the generation of automatically distributable clients of application servers | |
DE19810807A1 (en) | Message conversion system for upgrading systems without halting | |
DE10254410A1 (en) | System and method for loading high availability firmware | |
DE60302368T2 (en) | System and method to allow the transfer of data between any components with each other | |
DE602005003845T2 (en) | DYNAMIC CONFIGURATION OF DISTRIBUTED ASSEMBLED AUTOMATES | |
DE102004048666A1 (en) | Expandable network agent - process, system and architecture | |
DE60306553T2 (en) | Reconfiguration of heterogeneous programmable platforms | |
DE60211211T2 (en) | COMMUNICATION DEVICE, RECEPTION PROCESSING METHOD AND PROGRAM, AND COMPUTER READABLE MEDIUM ON WHICH THIS PROGRAM IS STORED | |
LU501705B1 (en) | Management and update system for automation devices of an automation system connected to an OT network | |
EP1306755A1 (en) | Method of distributing software to a device | |
EP1563384B1 (en) | Method and system for creating a graphic user interface for controlling, configuring and/or diagnosing an electrophotographic copying or printing apparatus | |
EP0918425A2 (en) | Software controlled telecommunications terminal , server for providing a control program and method of operation for the terminal | |
DE10351742A1 (en) | document production | |
EP3668132B1 (en) | Incremental updating of a firmware | |
WO2005022941A1 (en) | Method for the controlled delayed execution of software downloads |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
17P | Request for examination filed |
Effective date: 20020123 |
|
AK | Designated contracting states |
Kind code of ref document: A2 Designated state(s): DE FR GB IT Designated state(s): DE FR GB IT |
|
RIN1 | Information on inventor provided before grant (corrected) |
Inventor name: SCHIEMANN, BIRGIT Inventor name: REICH, MATTHIAS Inventor name: KRELLER, BIRGIT |
|
17Q | First examination report despatched |
Effective date: 20070816 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE APPLICATION HAS BEEN REFUSED |
|
18R | Application refused |
Effective date: 20090731 |