KR20040061760A - Platform system for executing an intelligent mobile agent - Google Patents

Platform system for executing an intelligent mobile agent Download PDF

Info

Publication number
KR20040061760A
KR20040061760A KR1020020088054A KR20020088054A KR20040061760A KR 20040061760 A KR20040061760 A KR 20040061760A KR 1020020088054 A KR1020020088054 A KR 1020020088054A KR 20020088054 A KR20020088054 A KR 20020088054A KR 20040061760 A KR20040061760 A KR 20040061760A
Authority
KR
South Korea
Prior art keywords
intelligent mobile
agent
mobile agent
client system
information
Prior art date
Application number
KR1020020088054A
Other languages
Korean (ko)
Other versions
KR100470176B1 (en
Inventor
김호빈
Original Assignee
(주)넥스트포인트
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by (주)넥스트포인트 filed Critical (주)넥스트포인트
Priority to KR10-2002-0088054A priority Critical patent/KR100470176B1/en
Publication of KR20040061760A publication Critical patent/KR20040061760A/en
Application granted granted Critical
Publication of KR100470176B1 publication Critical patent/KR100470176B1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network

Abstract

PURPOSE: A system for offering a platform executing an intelligent mobile agent is provided to offer the platform to control/execute the intelligent mobile agent performing a function of an intelligent agent and a mobile agent at the same time. CONSTITUTION: A server system(100) includes a client manager(110) managing the location information for a connected client systems(150) and a tack recovery system(120) managing/recovering the intelligent mobile agent not properly operated or not moved to a destination. The client system includes an agent transmitter(160) converting the intelligent mobile agent into a mobile object to be transmitted to other system or moving the mobile object to other system, an agent executer(170) executing the intelligent mobile agent in the mobile object, an agent operator(180) managing the information for the intelligent mobile agent, and an internal/external interface(190,192) transmitting/receiving data or message between intelligent mobile agents or the server system and the client system.

Description

지능형 이동 에이전트를 실행시키기 위한 플랫폼 제공 시스템{PLATFORM SYSTEM FOR EXECUTING AN INTELLIGENT MOBILE AGENT}Platform-provided system for running intelligent mobile agents

본 발명은 지능형 이동 에이전트가 실행되거나 이동시킬 수 있는 플랫폼을 제공하는 시스템에 관한 것으로서, 지능형 이동 에이전트가 설정된 경로 정보에 따라 여러 클라이언트 시스템들을 자유로이 이동하면서 해당 클라이언트 시스템에서 실행될 수 있는 플랫폼을 제공하는 시스템에 관한 것이다.The present invention relates to a system for providing a platform on which an intelligent mobile agent can be executed or moved. A system for providing a platform on which an intelligent mobile agent can be executed in a corresponding client system while freely moving various client systems according to a set path information. It is about.

에이전트(agent) 또는 지능형 에이전트(intelligent agent)는 관리자의 개입없이도 정해진 스케쥴에 따라 인터넷상에서 정보를 수집하거나 몇몇 다른 서비스를 수행하는 프로그램을 말한다.An agent or intelligent agent refers to a program that collects information or performs some other service on the Internet according to a predetermined schedule without administrator intervention.

전형적인 에이전트 프로그램으로는, 미리 제공된 매개 변수들을 이용하여 전체 또는 일부 인터넷을 검색하여 관심이 있는 정보를 모으고, 이렇게 모은 정보를 매일 또는 일정 시간대별로 제공하는 것 등이 있다. 또 다른 에이전트 프로그램의 예로서, 포인트캐스트 네트워크이나 UR-minder 등을 들 수 있는데, 이는 미리 설정해 놓은 웹페이지가 변경되면 그 사실을 사용자에게 알려주는 기능을 갖는다.Typical agent programs include searching all or part of the Internet using pre-supplied parameters to gather information of interest, and providing this information daily or at certain times. Another example of an agent program is a pointcast network or UR-minder, which has a function of notifying a user when a web page set in advance is changed.

또 다른 에이전트 프로그램으로는 특정 웹 사이트에 등록된 정보나 사용 실적 분석 등을 토대로 하여 개별적인 정보를 제공하는 것과, 특정 사이트가 갱신되었거나 또는 기다리고 있는 어떤 이벤트가 나타났을 때 알려주는 사이트 감시를 제공하는 것과, 사용자를 위해 데이터를 모으는 것 뿐만 아니라 조직화되고 정보를 해석해 주는 분석 에이전트 등이 있다.Other agent programs include providing personalized information based on information registered on a particular website or analyzing usage history, providing site surveillance to notify you when a particular site is updated or when an event is waiting for you. In addition to collecting data for the user, there are also analytical agents that organize and interpret the information.

이러한 에이전트에 대한 분류는 학자와 연구 기관에 따라 다양하지만, 한국 전산원에 의한 분류에 의하면 다중 에이전트 시스템, 이동 에이전트, 보조 에이전트, 지능형 에이전트로 구분할 수 있다. 이들 각각에 대하여 개략적으로 설명한다.These agents are classified by scholars and research institutes, but they can be classified into multi-agent systems, mobile agents, auxiliary agents, and intelligent agents. Each of these will be described schematically.

상기 다중 에이전트 시스템(Multi agent system)은 다른 에이전트와 상호 협력할 수 있는 시스템으로서, 각 에이전트의 목표와 문제 해결 상황의 차이에 따라 합의, 교섭, 설득, 경합 등의 프로세스를 통해 문제 해결을 추구하는 시스템이다.The multi agent system is a system that can cooperate with other agents, and seeks to solve problems through processes such as consensus, negotiation, persuasion, contention, etc. according to the differences between the goals and problem solving situations of each agent. System.

상기 이동 에이전트(Mobile agent)는 다른 호스트로 이동하여 그 곳에서 실행한 결과를 다시 가져오는 에이전트이며, 상기 보조 에이전트(Assistant agent)는 사용자의 작업을 도와주며 사용자가 컴퓨터 사용을 편리하게 지원하는 에이전트이다. 마지막으로, 지능형 에이전트(Intelligent agent)는 사용자의 취향 및 의도를 받아들여 학습하여 자율적인 추론과 계획에 따라 주어진 임무를 수행할 수 있는 지능적인 에이전트이다.The mobile agent is an agent that moves to another host and retrieves the result of execution there, and the assistant agent is an agent that helps the user's work and conveniently supports the user using the computer. to be. Finally, an intelligent agent is an intelligent agent that can learn the user's tastes and intentions and perform a given task according to autonomous reasoning and planning.

그런데, 최근 들어 컴퓨팅 환경이 다양한 통신 및 협업 컴퓨팅(Collaborative Computing) 환경으로 바뀌어 감에 따라, 종래의 단순한 클라이언트/서버 환경보다는 모든 단말 장치들이 서버로서의 기능과 클라이언트로서의 기능을 동시에 할 필요성이 부각되고 있다. 또한, 최근 인터넷 기술이 발달함에 따라, 일상 생활의 많은 장치들이 컴퓨터화될 뿐만 아니라 네트워크로 연결되고 있는 실정이다. 이에 따라, 개인화된 서비스와 모든 장치들에 대한 사용, P2P 등의 패러다임을 지원할 수 있는 미들웨어가 필요하게 되었다.However, as the computing environment has recently changed to various communication and collaborative computing environments, there is a need for all terminal devices to simultaneously function as a server and a client as a client rather than a simple client / server environment. . In addition, with the recent development of Internet technology, many devices in everyday life are not only computerized but also connected to a network. Accordingly, there is a need for middleware capable of supporting a paradigm of personalized service, use of all devices, and P2P.

이에 따라, 본 출원인은 컴퓨터 뿐만 아니라 자동차, 이동 전화, 가전 제품 등의 다양한 장치들을 지원할 수 있는 컴퓨팅 환경을 제공할 수 있는 플랫폼을 제안하고자 한다.Accordingly, the present applicant intends to propose a platform capable of providing a computing environment capable of supporting not only a computer but also various devices such as a car, a mobile phone, and a home appliance.

본 발명은 지능형 에이전트와 이동 에이전트의 기능을 동시에 수행할 수 있는 지능형 이동 에이전트를 제어하며 실행시킬 수 있는 플랫폼을 제공하는 시스템을 제공하는 것을 목적으로 한다.An object of the present invention is to provide a system that provides a platform for controlling and executing an intelligent mobile agent that can simultaneously perform the functions of an intelligent agent and a mobile agent.

도 1은 본 발명에 따른 플랫폼 제공 시스템을 전체적으로 도시한 블록도.1 is a block diagram showing an overall platform providing system according to the present invention.

도 2는 본 발명에 따라 지능형 이동 에이전트에 대한 이동형 객체를 다른 클라이언트 시스템으로 이동시키는 과정을 도시한 흐름도.2 is a flow diagram illustrating a process of moving a mobile object for an intelligent mobile agent to another client system in accordance with the present invention.

도 3은 본 발명에 따라 클라이언트 시스템이 서버 시스템의 클라이언트 관리부에 등록되는 과정을 도시한 흐름도.3 is a flowchart illustrating a process of registering a client system with a client management unit of a server system according to the present invention;

도 4 및 도 5는 본 발명에 따라 소정의 메세지를 에이전트 A로부터 에이전트 B로 전송하는 과정을 도시한 흐름도.4 and 5 are flowcharts illustrating a process of transmitting a predetermined message from Agent A to Agent B according to the present invention.

도 6 및 도 7은 본 발명에 따라 지능형 이동 에이전트가 여러 클라이언트 시스템을 이주하는 과정을 도시한 흐름도.6 and 7 are flowcharts illustrating a process of migrating several client systems by an intelligent mobile agent according to the present invention.

도 8은 본 발명에 따라 업무 스케쥴링 및 할당시에 사용되는 자료 구조에 대한 논리적 주소 생성 및 이를 상기 업무와 함께 전달하는 과정을 순차적으로 도시한 흐름도.8 is a flowchart sequentially illustrating a process of generating a logical address for a data structure used for task scheduling and allocation and transferring it with the task according to the present invention.

도 9는 본 발명에 따라 에이전트 또는 메세지에 대한 인증 및 보안 전송 과정을 순차적으로 도시한 흐름도.9 is a flow diagram sequentially illustrating an authentication and secure transmission process for an agent or a message in accordance with the present invention.

<도면의 주요 부분에 대한 부호의 설명><Explanation of symbols for the main parts of the drawings>

100 : 서버 시스템100: server system

110 : 클라이언트 관리부110: client management unit

120 : 태스크 복구부120: task recovery unit

130 : 정보 저장소130: information store

132 : 인증 처리부132: authentication processing unit

140 : 데이터베이스140: database

150 : 클라이언트 시스템150: client system

160 : 에이전트 전송부160: agent transmission unit

170 : 에이전트 실행부170: agent execution unit

180 : 에이전트 운영부180: agent operation department

190 : 내부 인터페이스부190: internal interface unit

192 : 외부 인터페이스부192: external interface unit

194 : 인증 처리부194: authentication processing unit

전술한 목적을 달성하기 위한 본 발명의 특징에 따른 지능형 이동 에이전트를 실행시킬 수 있는 플랫폼 제공 시스템은, 전체 시스템의 동작을 제어 관리하는 서버 시스템, 및 상기 서버 시스템과 네트워크를 통해 접속할 수 있으며, 상기 지능형 이동 에이전트를 이동 및 실행시킬 수 있는 적어도 하나 이상의 클라이언트 시스템을 구비하며,The platform providing system capable of executing the intelligent mobile agent according to the characteristics of the present invention for achieving the above object, a server system for controlling and managing the operation of the entire system, and can be connected via the network with the server system, At least one client system capable of moving and running intelligent mobile agents,

상기 서버 시스템은, 접속된 클라이언트 시스템들에 관한 위치 정보를 관리하는 클라이언트 관리부, 및 제대로 실행되지 못하거나 목적지에 이동하지 못한 지능형 이동 에이전트들을 관리하고 복구시키는 태스크 복구부를 포함하며,The server system includes a client manager that manages location information about connected client systems, and a task recovery unit that manages and recovers intelligent mobile agents that do not execute properly or move to a destination.

상기 클라이언트 시스템은, 지능형 이동 에이전트를 다른 클라이언트 시스템으로 이동시킬 수 있는 이동형 객체로 변환시키거나, 상기 이동형 객체를 다른 클라이언트 시스템으로 이동시키는 에이전트 전송부, 상기 이동형 객체내의 지능형 이동 에이전트를 실행시키는 에이전트 실행부, 지능형 이동 에이전트들에 대한 정보를 관리하는 에이전트 운영부, 및 지능형 이동 에이전트간, 또는 서버 시스템과 클라이언트 시스템간의 데이터 또는 메세지의 송수신을 가능케하는 인터페이스부를 포함한다.The client system may be configured to convert an intelligent mobile agent into a mobile object capable of moving to another client system, or an agent transmission unit for moving the mobile object to another client system, and to execute an intelligent mobile agent in the mobile object. And an agent operating unit for managing information on the intelligent mobile agents, and an interface unit for transmitting and receiving data or messages between the intelligent mobile agents or between the server system and the client system.

이때, 상기 클라이언트 관리부는 각 클라이언트 시스템이 로그인하였을때 해당 클라이언트 시스템에 대한 위치 및 경로 정보를 수집하여 저장하며, 특정의 클라이언트 시스템으로부터 다른 클라이언트 시스템에 대한 위치 정보 요청에 응답하여 해당 정보를 제공하는 것이 바람직하다.In this case, the client management unit collects and stores location and path information of the client system when each client system logs in, and provides the corresponding information in response to a request for location information from another client system to another client system. desirable.

상기 태스크 복구부는 제1 클라이언트 시스템으로부터 제2 클라이언트 시스템으로의 이동형 객체의 송신이 정상적으로 완료되지 않았을 때 송신하고자 하는 상기 이동형 객체 및 목적지에 해당하는 클라이언트 시스템에 대한 경로 정보 등을 저장 관리하며, 목적지의 시스템과의 통신이 가능해지면 다시 전송하는 것이 바람직하다.The task recovery unit stores and manages path information about the mobile object to be transmitted and a client system corresponding to a destination when transmission of the mobile object from the first client system to the second client system is not normally completed. When communication with the system becomes possible, it is desirable to retransmit.

상기 지능형 이동 에이전트는 (1) 소정의 응용 프로그램에 대한 실행 코드, (2) 상기 실행코드를 수행할 때 발생하는 상태의 변화나 처리해야 할 정보 데이터 및 (3) 상기 에이전트 자신에 대한 정보에 관한 속성 데이터를 포함하는 것이 바람직하다.The intelligent mobile agent may (1) execute code for a given application program, (2) change of state that occurs when executing the executable code, information data to be processed, and (3) information about the agent itself. It is preferable to include attribute data.

더 바람직하게는, 상기 지능형 이동 에이전트는 상기 에이전트 전송부에 의해 다른 클라이언트 시스템으로 이동하기 위한 이동형 객체로 변환되며, 상기 이동형 객체는 (1) 이동시키고자 하는 지능형 이동 에이전트, (2) 상기 지능형 이동 에이전트가 실행된 결과값에 해당하는 상태값, (3) 상기 지능형 이동 에이전트의 동작을 나타내는 동작 코드, 및 (4) 상기 지능형 이동 에이전트의 동작을 제어하는 신호(Signal)로 이루어진다.More preferably, the intelligent mobile agent is converted into a mobile object for moving to another client system by the agent transmitter, and the mobile object is (1) an intelligent mobile agent to be moved, (2) the intelligent mobile And a status value corresponding to the result of executing the agent, (3) an operation code indicating the operation of the intelligent mobile agent, and (4) a signal for controlling the operation of the intelligent mobile agent.

상기 에이전트 실행부는 실행할 지능형 이동 에이전트에 대한 이동형 객체의 복사본을 임시 저장소에 저장시킨 후, 상기 지능형 이동 에이전트를 실행시키거나 경로 정보에 따라 다음 노드에 해당하는 클라이언트 시스템으로 전송시키며, 상기 지능형 이동 에이전트가 정상적으로 수행되었음을 알리는 확인 신호에 응답하여 상기 임시 저장소에 저장된 상기 이동형 객체의 복사본을 삭제시키는 것이 바람직하다.The agent executing unit stores a copy of the movable object for the intelligent mobile agent to be executed in a temporary storage, and then executes the intelligent mobile agent or transmits the intelligent mobile agent to a client system corresponding to the next node according to path information. It is preferable to delete the copy of the movable object stored in the temporary storage in response to the confirmation signal indicating that the operation has been performed normally.

상기 인터페이스부는 내부 인터페이스부 및 외부 인터페이스부로 이루어지며, 상기 내부 인터페이스부는 지능형 이동 에이전트 간 또는 서버 시스템과 클라이언트 시스템간의 데이터 등의 송수신을 제공하며, 상기 외부 인터페이스부는 각 클라이언트 시스템상의 응용 프로그램들이 필요로 하는 데이터를 외부 시스템으로부터 제공받도록 하는 것이 바람직하다.The interface unit includes an internal interface unit and an external interface unit, and the internal interface unit transmits and receives data between an intelligent mobile agent or a server system and a client system, and the external interface unit is required by application programs on each client system. It is desirable to have data provided from an external system.

더 바람직하게는, 상기 서버 시스템 및 상기 클라이언트 시스템은 각 클라이언트 시스템간의 정보 보호 및 보안 인증을 처리하기 위한 인증 처리부를 더 구비한다.More preferably, the server system and the client system further comprises an authentication processing unit for processing information protection and security authentication between each client system.

본 발명의 다른 특징에 따른 기록매체는 서버 시스템 및 적어도 하나 이상의 클라이언트 시스템으로 이루어지는 플랫폼 제공 시스템에서 지능형 이동 에이전트를 상기 클라이언트 시스템상에서 실행시키거나 다른 클라이언트 시스템으로 이동시킬 수 있는 실행 프로그램이 기록된 기록 매체에 관한 것으로서,According to another aspect of the present invention, a recording medium includes a recording medium having an execution program capable of executing an intelligent mobile agent on the client system or moving to another client system in a platform providing system including a server system and at least one client system. As for

상기 실행 프로그램은, (a) 특정의 응용 프로그램에 대한 실행 코드, 정보 데이터 및 속성 데이터로 이루어지는 지능형 이동 에이전트로부터, 이를 다른 클라이언트 시스템으로 이동시킬 수 있는 형태인 이동형 객체를 생성하는 절차, (b) 상기 이동형 객체를 기설정된 경로 정보에 따라 목적지에 해당하는 클라이언트 시스템으로 이동시키는 절차, (c) 다른 클라이언트 시스템으로부터 전송되어 온 이동형 객체 내의 지능형 이동 에이전트 내에 구비된 응용 프로그램을 실행시키는 절차를 구비한다.The executable program may include (a) a process of creating a mobile object in a form capable of moving it to another client system from an intelligent mobile agent consisting of executable code, information data, and attribute data for a specific application program, (b) Moving the mobile object to a client system corresponding to a destination according to predetermined route information; and (c) executing an application program installed in an intelligent mobile agent in the mobile object transmitted from another client system.

상기 실행 프로그램은 사용자가 로그인하면 자신의 위치 정보와 경로 정보를상기 서버 시스템으로 전송하는 절차를 더 구비하는 것이 바람직하다.Preferably, the execution program further includes a procedure for transmitting its location information and route information to the server system when the user logs in.

본 발명의 또 다른 특징에 따른 지능형 이동 에이전트는, 서버 시스템 및 적어도 하나 이상의 클라이언트 시스템으로 이루어지는 플랫폼 제공 시스템에서 실행될 수 있는 지능형 이동 에이전트에 관한 것으로서,An intelligent mobile agent according to another aspect of the present invention relates to an intelligent mobile agent that can be executed in a platform providing system consisting of a server system and at least one client system.

상기 지능형 이동 에이전트는, (1) 특정의 응용 프로그램에 대한 실행 코드, (2) 상기 실행 코드를 수행할 때 발생하는 상태의 변화나 처리해야 할 정보에 관한 정보 데이터, 및 (3) 속성 정보로 이루어지며, 상기 지능형 이동 에이전트는 이동형 객체로 변환되어 기설정된 경로정보에 따라 상기 플랫폼 제공 시스템상의 다른 클라이언트 시스템으로 이동되는 것을 특징으로 하며,The intelligent mobile agent includes (1) executable code for a specific application, (2) information data about a change in state or information to be processed when executing the executable code, and (3) attribute information. The intelligent mobile agent is converted into a mobile object and moved to another client system on the platform providing system according to preset route information.

상기 이동형 객체는 (1) 이동시키고자 하는 지능형 이동 에이전트, (2) 상기 지능형 이동 에이전트가 실행된 결과값에 해당하는 상태값, (3) 상기 지능형 이동 에이전트의 동작을 나타내는 동작 코드, 및 (4) 상기 지능형 이동 에이전트의 동작을 제어하는 신호(Signal)로 이루어지는 것이 바람직하다.The mobile object includes (1) an intelligent mobile agent to be moved, (2) a state value corresponding to a result of executing the intelligent mobile agent, (3) an operation code indicating an operation of the intelligent mobile agent, and (4 It is preferably made of a signal (Signal) for controlling the operation of the intelligent mobile agent.

이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시형태에 대해 상세히 설명한다. 우선, 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 한해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호로 표기되었음에 유의하여야 한다.Hereinafter, with reference to the accompanying drawings will be described in detail a preferred embodiment of the present invention. First, in adding reference numerals to the components of each drawing, it should be noted that the same components are denoted by the same reference numerals as much as possible, even if displayed on different drawings.

이하, 첨부된 도면을 참조하여 본 발명에 따른 지능형 이동 에이전트가 실행될 수 있는 플랫폼 제공 시스템에 대하여 구체적으로 설명한다.Hereinafter, a platform providing system capable of executing an intelligent mobile agent according to the present invention will be described in detail with reference to the accompanying drawings.

본 발명에서 제안하는 플랫폼 제공 시스템은 인터넷 비스니스상에 존재하는다양한 형태의 시스템, 응용 프로그램(application), 장치(device), 사용자 등과 같은 비즈니스 객체간의 통신 비용(communication cost)를 최소화하는 것을 목적으로 하는 협업 컴퓨팅 플랫폼(collaborative computing platform)에 관한 것이다. 이하, 본 발명에 대한 설명은 여러가지 비지니스 객체 중 상기 응용 프로그램에 한정하여 구체적으로 설명한다.The platform providing system proposed by the present invention aims to minimize communication costs between business objects such as various types of systems, applications, devices, users, etc. existing on the Internet business. To a collaborative computing platform. Hereinafter, the description of the present invention will be described in detail with reference to the application program among various business objects.

본 발명에 따른 플랫폼 제공 시스템은 상기 응용 프로그램으로부터 지능형 이동 에이전트(Intelligent Mobile Agent)를 생성하고, 이를 여러 노드로 이주시키면서 실행시키게 된다. 즉, 본 발명에 따른 플랫폼 제공 시스템에서 생성되는 지능형 이동 에이전트는 주어진 임무를 수행하기 위하여 네트워크상의 다른 노드로 이동하며서 주어진 임무를 자동으로 수행하고 수행된 결과를 다시 가져오는 지능적인 프로그램이다. 본 발명에 대한 이해를 돕기 위하여 먼저 지능형 이동 에이전트에 대하여 개략적으로 설명한다.The platform providing system according to the present invention generates an intelligent mobile agent from the application program and executes it while migrating to several nodes. That is, the intelligent mobile agent generated in the platform providing system according to the present invention is an intelligent program that automatically performs a given task and brings back the result of the execution by moving to another node on the network to perform a given task. In order to facilitate understanding of the present invention, an overview of an intelligent mobile agent will be described first.

상기 지능형 이동 에이전트는 언제 어디로 이동하고 목적지에서 얼마나 일을 계속 수행할지를 선택할 수 있으며, (1) 실행 코드, (2) 정보 데이터 및 (3) 속성(attribute) 데이터로 구성된다.The intelligent mobile agent can select when and where to move and how long to continue at the destination, and comprises (1) executable code, (2) information data, and (3) attribute data.

먼저, (1) 실행 코드는 실제 응용 프로그램에 해당하는 지능형 이동 에이전트의 가장 핵심이 되는 부분으로서, 자바(Java), telescript, safetel, Perl 등과 같은 스크립트 형식의 언어로 기술된다. 상기 실행 코드는 호스트의 종류에 무관하게 실행될 수 있도록 하기 위하여 스크립트 형식이나 중간 단계의 언어로 작성된 후 인터프리터에 의해 실행되도록 한다. (2) 정보 데이터는 지능형 이동 에이전트의 실행 코드를 수행할 때 발생하는 상태의 변화나 처리해야 할 정보에 관한 데이터이며, (3) 속성 데이터는 지능형 이동 에이전트 자신에 대한 여러가지 정보이다. 이동 에이전트는 일종의 프로그램으로서, 다른 일반적인 프로그램과 마찬가지로 상기 이동 에이전트는 실시간에 행해지는 작업 수행 결과에 따라 변경가능한 변수와 각 작업에 대하여 실제 실행을 할 수 있는 함수들을 구비한다. 하나의 프로그램으로서의 이동 에이전트는 각 변수들을 통하여 자신에게 주어진 작업과 작업 흐름, 처리 방법, 결과값 등을 처리하고 유지하여야 하는 데, 이러한 변수들이 이동형 에이전트의 속성이 된다.First, (1) the executable code is the most essential part of the intelligent mobile agent corresponding to the actual application, and is described in a script-type language such as Java, telescript, safetel, Perl, and the like. The executable code may be executed by an interpreter after being written in a script form or an intermediate language in order to be executed regardless of the host type. (2) The information data is data about a change of state or information to be processed when executing the execution code of the intelligent mobile agent, and (3) The attribute data is various information about the intelligent mobile agent itself. The mobile agent is a kind of program. Like other general programs, the mobile agent includes variables that can be changed according to the result of performing tasks performed in real time and functions that can actually execute the respective tasks. As a program, a mobile agent must process and maintain a task, a workflow, a processing method, and a result given to it through each variable. These variables become attributes of the mobile agent.

본 발명의 일실시예에서의 지능형 이동 에이전트는 코드 구현을 자바 클래스 단위로 적용하였으며, 상기 에이전트는 본 발명에 따른 플랫폼 제공 시스템상에서 이동형 객체로 변환되어, 바이트 스트림(byte stream) 형태로 이동하고자 하는 목적지 노드에 전송된다. 또한, 상기 에이전트가 상기 플랫폼 제공 시스템상의 각 노드에 해당하는 클라이언트 시스템을 이동할 때에는 초기화정보 또는 실행중에 요구되는 상태 정보도 같이 전송된다. 상기 상태 정보는 이전 노드에서 실행된 상태값과 결과 정보에 관한 것으로서, 상기 에이전트가 라우팅 정책에 따라 다른 노드로 이동후에 해당 노드에서 실행될 때 상기 상태 정보가 필요하기 때문이다.In an embodiment of the present invention, the intelligent mobile agent applies a code implementation in units of Java classes, and the agent is converted into a mobile object on a platform providing system according to the present invention, and is intended to move in the form of a byte stream. Sent to the destination node. In addition, when the agent moves the client system corresponding to each node on the platform providing system, initialization information or status information required during execution is also transmitted. The state information relates to the state value and the result information executed in the previous node, because the state information is required when the agent is executed in the node after moving to another node according to the routing policy.

이하, 전술한 지능형 이동 에이전트가 실행될 수 있는 플랫폼 제공 시스템을 첨부된 도면을 참조하여 구체적으로 설명한다.Hereinafter, a platform providing system capable of executing the aforementioned intelligent mobile agent will be described in detail with reference to the accompanying drawings.

도 1은 본 발명에 따른 플랫폼 제공 시스템을 전체적으로 도시한 블록도이다.1 is a block diagram showing an overall platform providing system according to the present invention.

도 1을 참조하여 보면, 본 발명에 따른 시스템은 서버시스템(100) 및 적어도 하나 이상의 클라이언트 시스템(150)으로 이루어지며, 상기 서버 시스템(100)과 상기 클라이언트 시스템들은 인터넷과 같은 네트워크를 통해 서로 연결될 수 있다.Referring to FIG. 1, a system according to the present invention includes a server system 100 and at least one client system 150, and the server system 100 and the client systems may be connected to each other through a network such as the Internet. Can be.

상기 서버 시스템(100)은 각 클라이언트 시스템에 대한 경로 정보 등을 관리하는 클라이언트 관리부(110), 태스크 복구부(120), 정보 저장소(130), 인증 처리부(132) 및 데이터베이스(140)를 포함한다.The server system 100 includes a client manager 110, a task recovery unit 120, an information store 130, an authentication processor 132, and a database 140 that manage path information and the like for each client system. .

상기 클라이언트 관리부(110)는 각 노드에 해당하는 클라이언트 시스템들에 대한 노드 정보 및 관련 정보들에 대한 동적인 정보 수집을 하여 데이터베이스에 저장함으로써, 각 클라이언트 시스템들에게 지능형 이동 에이전트가 이동하고자 하는 각 노드들에 대한 접근 방법과 위치 및 경로 설정을 제공한다.The client manager 110 collects node information and related information about client systems corresponding to each node and stores them in a database, thereby storing each node to which the intelligent mobile agent is to move to each client system. Provides access to these fields, location and route settings.

상기 클라이언트 관리부(110)는 클라이언트 시스템이 부팅되거나 로그인(log-in)할 때 해당 클라이언트 시스템에 대한 위치 정보등을 수집하게 된다.The client manager 110 collects location information about the client system when the client system boots or logs in.

상기 태스크 복구부(120)는, 제1 클라이언트 시스템에서 제2 클라이언트 시스템으로 지능형 이동 에이전트와 같은 객체를 전송하는 경우, 제2 클라이언트 시스템에 연결되지 않거나, 전송하고자 하는 지능형 이동 에이전트에 대한 이동형 객체에 대하여 기설정되어 있는 호핑(hopping) 제한 시간을 초과하였을 때 해당 이동형 객체를 상기 제2 클라이언트 시스템이 연결될 때까지 관리하게 된다. 여기서, "이동형 객체"는 다른 클라이언트 시스템으로 이동시키고자 하는 지능형 이동 에이전트를 목적지에 해당하는 클라이언트 시스템까지 이동시킬 수 있는 형태로 변환시킨 것으로서, (1) 이동시키고자 하는 지능형 이동 에이전트, (2) 상기 지능형 이동 에이전트가 실행된 결과값에 해당하는 상태값, (3) 동작 코드, 및 (4) 신호(Signal)로 구성된다. 동작 코드 및 신호에 대해서는 후술한다.When the task recovery unit 120 transmits an object, such as an intelligent mobile agent, from the first client system to the second client system, the task recovery unit 120 does not connect to the second client system or transmits the object to the movable object for the intelligent mobile agent to be transmitted. When the hopping timeout time is set, the mobile object is managed until the second client system is connected. Here, the "movable object" is to convert the intelligent mobile agent to move to another client system to a form that can move to the client system corresponding to the destination, (1) intelligent mobile agent to move, (2) And a status value, (3) operation code, and (4) signal corresponding to the result of executing the intelligent mobile agent. Operation codes and signals will be described later.

즉, 지능형 이동 에이전트를 구비하는 이동형 객체가 전송하고자 하는 목적지에 해당하는 클라이언트 시스템에 제대로 전송되지 않는 경우, 상기 서버 시스템의 태스크 복구부는 상기 이동형 객체가 전송되어야 할 목적지에 해당하는 클라이언트 시스템 및 상기 이동형 객체를 정보 저장소에 저장ㆍ관리한다. 다음, 상기 클라이언트 시스템이 서버 시스템으로 로그인(log-in)하면, 상기 서버 시스템은 태스크 복구부를 통해 저장ㆍ관리하고 있는 해당 객체를 재전송한다.That is, when the mobile object having the intelligent mobile agent is not properly transmitted to the client system corresponding to the destination to be transmitted, the task recovery unit of the server system corresponds to the client system corresponding to the destination to which the mobile object is to be transmitted and the mobile type. Store and manage objects in the information store. Next, when the client system logs in to the server system, the server system retransmits the object stored and managed through the task recovery unit.

상기 인증 처리부(132)는 후술되는 클라이언트 시스템(150)의 인증 처리부(194)의 기능과 동일하므로, 그 설명을 생략한다.Since the authentication processing unit 132 is the same as the function of the authentication processing unit 194 of the client system 150 to be described later, the description thereof will be omitted.

상기 클라이언트 시스템(150)은 에이전트 전송부(160), 에이전트 실행부(170), 에이전트 운영부(180), 내부 인터페이스부(190), 외부 인터페이스부(192) 및 인증 처리부(194) 등을 포함하여, 지능형 이동 에이전트를 생성 및 실행하거나, 이를 다른 노드로 전송할 수 있다.The client system 150 includes an agent transmission unit 160, an agent execution unit 170, an agent operation unit 180, an internal interface unit 190, an external interface unit 192, an authentication processing unit 194, and the like. The intelligent mobile agent may be created and executed or transmitted to another node.

상기 에이전트 전송부(160)는 지능형 이동 에이전트의 이동성(mobility)를 지원하기 위하여 기본적으로 전송 메카니즘을 구현하여 소정의 지능형 이동 에이전트를 이동형 객체로 변환시킨다. 즉, 상기 에이전트 전송부(160)는 지능형 이동 에이전트를 구성하는 응용 프로그램이 유무선 인터넷을 서로 구분하지 않고 본 발명에 따른 플랫폼 제공 시스템과 같은 공용적 환경에서 수행될 수 있도록 하기 위하여, 응용 프로그램으로 구성되는 지능형 이동 에이전트로부터 이동형 객체를 생성한 후 이에 대한 라우팅 정보에 따라 다른 클라이언트 시스템으로 이동시키기 위하여 바이트 스트림으로 변환시킨 후 전송하거나 해당 클라이언트 시스템에서 실행시키게 된다. 이때, 에이전트 전송부(160)는 상기 이동형 객체를 다른 클라이언트 시스템으로 이동시키기 전에 내부의 임시 저장소에 상기 이동형 객체에 대한 복사본을 저장시킨 후, 다음 클라이언트 시스템으로 전송하게 된다. 이와 같이, 자료 저장소에 저장된 이동형 객체에 대한 복사본은 목적지에 해당하는 다음 클라이언트 시스템으로부터 확인 신호가 전송되면, 그 때 삭제된다.In order to support mobility of the intelligent mobile agent, the agent transmitter 160 basically implements a transmission mechanism to convert a predetermined intelligent mobile agent into a mobile object. That is, the agent transmitter 160 is configured as an application program so that an application program constituting the intelligent mobile agent can be executed in a common environment such as a platform providing system according to the present invention without distinguishing wired or wireless Internet. After the mobile object is created from the intelligent mobile agent, it is converted into a byte stream for transmission to another client system according to the routing information, and then transmitted or executed in the client system. At this time, the agent transmission unit 160 stores a copy of the mobile object in a temporary storage inside before moving the mobile object to another client system, and then transmits it to the next client system. As such, a copy of the mobile object stored in the data repository is deleted at that time when a confirmation signal is sent from the next client system corresponding to the destination.

상기 지능형 이동 에이전트는 전술한 바와 같이 실제 응용 프로그램에 해당하는 실행 코드, 정보 데이터 및 속성 데이터로 구성된다.As described above, the intelligent mobile agent is composed of executable code, information data, and attribute data corresponding to an actual application program.

상기 에이전트 전송부(160)는 (1) 한번에 모든 수신자에게 해당 응용 프로그램을 이동시키는 브로드캐스팅(broadcasting), (2) 제한된 그룹으로만 해당 응용 프로그램을 이동시키는 멀티캐스팅(multicasting), (3) 하나의 수신자에게만 해당 응용 프로그램을 이동시키는 유니캐스팅(unicasting), 및 (4) 응용 프로그램에 대한 로밍(roaming) 기능을 제공한다.The agent transmitter 160 may include (1) broadcasting to move the application to all recipients at once, (2) multicasting to move the application only to a limited group, and (3) one. Unicasting, and (4) roaming for the application.

상기 로밍시에는 네트워크에서 발생하는 다양한 장애 유형, 예를 들면 통신망 결손, 폭주, 수신 시스템의 장애 등을 인식하거나 스스로 판단할 수 있는 멀티홉(multihop)기능을 제공한다. 또한, 상기 지능형 이동 에이전트에 대한 이동형 객체가 해당 노드로 이동하지 못하는 최악의 경우에는, 상기 지능형 이동 에이전트에 대한 이동형 객체는 상기 서버 시스템의 태스크 복구부에 의해 서버 시스템내의 정보 저장소에 저장 관리된 후, 반드시 해당 노드로 전달하게 된다.The roaming provides a multihop function that can recognize various types of failures occurring in a network, for example, a network failure, a congestion, a failure of a receiving system, or determine by itself. Further, in the worst case where the mobile object for the intelligent mobile agent cannot move to the node, the mobile object for the intelligent mobile agent is stored and managed in the information store in the server system by the task recovery unit of the server system. It must be passed to the node.

상기 에이전트 운영부(180)는 지능형 이동 에이전트간에 메세지들을 교환할 수 있도록 하며, 지능형 이동 에이전트의 응용 프로그램에 대한 버전(version) 제어, 및 메타(meta) 데이터의 다운로드 등을 수행한다.The agent manager 180 may exchange messages between the intelligent mobile agents, perform version control on the application program of the intelligent mobile agent, and download meta data.

상기 에이전트 운영부(180)는 각 클라이언트 시스템에 대한 전체 관리를 담당하는 것으로서, 상기 클라이언트 시스템의 사용자에 대한 관리, 설치 기능 제공 및 이에 대한 여러 가지 정보 관리를 한다.The agent manager 180 is responsible for overall management of each client system. The agent manager 180 manages a user of the client system, provides an installation function, and manages various information about the same.

상기 에이전트 실행부(170)는 다른 노드에 해당하는 클라이언트 시스템으로부터 이동되어 온 이동형 객체 내의 지능형 이동 에이전트를 실행하거나 세션 검사를 한다. 즉, 상기 에이전트 실행부는 상기 지능형 이동 에이전트에 대한 이동형 객체를 고장 방지(fault tolerant)를 위하여 임시 저장소에 저장하며, 이전 노드에 해당하는 클라이언트 시스템으로부터 이주해 왔을 경우에는 이전 노드로 확인 신호를 보내서 이전 노드의 임시 저장소에 저장된 상기 이동형 객체의 복사본을 삭제시키도록 한다. 또한 상기 에이전트 실행부(170)는 상태값을 판독하여 지능형 이동 에이전트를 실행하고 다시 상태값을 저장시킨 후 다음 노드에 해당하는 클라이언트 시스템으로 이주시킨다.The agent execution unit 170 executes or inspects an intelligent mobile agent in a mobile object that has been moved from a client system corresponding to another node. That is, the agent executor stores the movable object for the intelligent mobile agent in a temporary storage for fault tolerant, and when the agent execution unit migrates from a client system corresponding to the previous node, sends a confirmation signal to the previous node by transferring the confirmation signal to the previous node. Delete the copy of the portable object stored in the temporary storage of the. In addition, the agent execution unit 170 reads the state value, executes the intelligent mobile agent, stores the state value again, and migrates to the client system corresponding to the next node.

상기 에이전트 실행부(170)에 의하여 지능형 이동 에이전트가 실행되는 도중에 시스템이 중단되거나 전원이 나가게 되어 실행을 완료하지 못한 경우에는 다시 로그인을 하면 실행되다 중단되었던 지능형 이동 에이전트들이 다시 실행하게 된다.If the agent is not executed by the agent executing unit 170 while the intelligent mobile agent is stopped or the power goes out, the intelligent mobile agents are executed again after the login is executed.

상기 내부 인터페이스부(190)는 지능형 이동 에이전트간 또는 클라이언트 시스템과 서버 시스템간의 상호 작용이 필요한 경우, 또는 지능형 이동 에이전트의 응용 프로그램이 다른 노드에 있는 자료 사용을 요구하는 경우에 필요한 데이터를 전송하거나 전송받을 수 있도록 한다. 즉, 상기 내부 인터페이스부는 데이터를 전송하거나 전송받기 위하여 해당 노드에 접속할 수 있는 경로 및 규칙을 설정하고 해당 노드에 접속하게 된다.The internal interface 190 transmits or transmits necessary data when an intelligent mobile agent or an interaction between a client system and a server system is required or when an application of the intelligent mobile agent requires the use of data on another node. To receive it. That is, the internal interface unit sets a path and a rule for accessing the corresponding node in order to transmit or receive data and access the corresponding node.

이와 같은 내부 인터페이스부(190)는 에이전트간의 협력과 회의가 필요한 경우(예를 들면, 노드 결손 공고, 경로 재조정, 복구 대책 마련 등)를 위한 정보 수집과 교류가 필요할 때 사용된다.Such an internal interface 190 is used when information collection and exchange are needed for cooperation and meeting between agents (for example, node loss notification, rerouting, provision of recovery measures, etc.).

상기 외부 인터페이스부(192)는 각 클라이언트 시스템 상의 응용 프로그램들이 필요로 하는 데이터들을 제공하기 위한 것으로서, 본 발명에 따른 시스템이 아닌 외부 시스템의 외부 데이터베이스와의 연결을 위한 인터페이스부이다. 상기 외부 인터페이스부(192)는 외부 시스템에서 제공되는 응용 프로그램들과 본 발명에 따른 플랫폼 제공 시스템과의 원할한 접속을 위하여 필요한 인터페이스이다.The external interface unit 192 is for providing data required by application programs on each client system, and is an interface unit for connecting to an external database of an external system rather than the system according to the present invention. The external interface unit 192 is an interface required for smooth connection between application programs provided in an external system and the platform providing system according to the present invention.

상기 인증 처리부(194)는 각 노드간의 정보 보호과 보안 인증을 위해 제공되는 것으로서, 정보 보안을 위해서는 SSL을, 정보 인증을 위해서는 PKI가 설정된다. 처음 해당 노드로 이주되는 경우에는 시간을 근거로한 세션 값이 생성되고 다른 노드로 이주되는 경우 보내어지는 노드에서 초기 세션값에 SSL, PKI를 보강한 값을 생성하게 되며, 받는 노드에서의 세션값, SSL, PKI값을 추출하게 된다.The authentication processing unit 194 is provided for information protection and security authentication between nodes, and SSL is set for information security and PKI is set for information authentication. The first time that you migrate to that node, the session value is created based on the time. When you migrate to another node, the sending node will generate SSL and PKI augmented values in the initial session value. Extract the SSL, PKI values.

이하, 첨부된 도 2 내지 도 10을 참조하여, 전술한 구성을 갖는 플랫폼 제공시스템에 따른 여러 가지 기능의 구현 방법을 구체적으로 설명한다.Hereinafter, a method of implementing various functions according to the platform providing system having the above-described configuration will be described in detail with reference to FIGS. 2 to 10.

(1) 먼저, 본 발명에 따른 플랫폼 제공 시스템상에서 지능형 이동 에이전트가 수행 및 이주되는 과정을 순차적으로 설명한다.(1) First, a process of performing and migrating an intelligent mobile agent on a platform providing system according to the present invention will be described sequentially.

지능형 이동 에이전트는 이동형 객체로 변환되어 목적지 노드에 해당하는 다른 클라이언트 시스템으로 이동된다. 이동시키고자 하는 상기 지능형 이동 에이전트에 대한 이동형 객체는 항상 자신이 해당 노드에서 어떠한 수행을 하여야 하는지에 관한 동작 코드를 가지고 다니며, 이와 같은 동작 코드를 갖고 다니는 상기 이동형 객체는 지능형 이동 에이전트간 또는 클라이언트 시스템과 서버 시스템간의 상호작용(interaction)시에 발생되는 신호(Signal)에 의하여 해당 동작을 실행한다.The intelligent mobile agent is converted into a mobile object and moved to another client system corresponding to the destination node. The mobile object for the intelligent mobile agent to be moved always carries an action code of what it should do on its node, and the mobile object carrying this action code is either an intelligent mobile agent or a client system. The operation is executed by a signal generated at the interaction between the server system and the server system.

이하, 상기 이동형 객체에 포함되는 지능형 이동 에이전트에 대한 동작코드에 대하여 구체적으로 설명한다. 상기 지능형 이동 에이전트의 동작 코드는 실행 모드, 제1 대기 모드, 제2 대기 모드, 설치 모드의 4가지가 있다. 각각의 동작 코드를 살펴 보면, 상기 실행 모드는 지능형 이동 에이전트가 해당 노드로 이주해서 실행하는 모드이며, 상기 제1 대기 모드는 해당 노드로 이주한 후 외부로부터 해당 신호가 올 때까지 그 노드에서 대기하는 모드이며, 제2 대기 모드는 해당 노드로 이주하여 자신을 복사한 후 다음 노드로 이주시키고 자신은 해당 신호가 올 때까지 대기하는 모드이며, 설치 모드는 지능형 이동 에이전트의 실행 코드를 해당 노드에 설치하는 모드이다.Hereinafter, an operation code for the intelligent mobile agent included in the mobile object will be described in detail. There are four operation codes of the intelligent mobile agent: an execution mode, a first standby mode, a second standby mode, and an installation mode. Referring to each operation code, the execution mode is a mode in which the intelligent mobile agent migrates to and executes the node, and the first standby mode migrates to the node and waits at the node until the signal comes from the outside. Mode; the second standby mode is a mode in which you migrate to that node, copy itself, migrate to the next node, and wait for that signal, and the install mode installs the executable code of the intelligent mobile agent on that node. Mode.

이하, 상기 이동형 객체에 포함되는 지능형 이동 에이전트의 동작에 영향을미치는 신호(Siganl)에 대하여 구체적으로 설명한다. 상기 지능형 이동 에이전트로 입력되는 신호는 동작 신호, 정지 신호, 종료 신호, 완료 신호, 제거 신호, 보류 신호, 제1 재개 신호, 제2 재개 신호, 철회 신호, 이동형 객체의 복사본 제거 신호 및 삭제 신호 등이 있다. 이하, 각 신호에 대하여 구체적으로 살펴보면, 상기 동작 신호는 특정의 지능형 이동 에이전트가 제1 대기 모드에 있는 경우 이를 실행하게 하는 신호이며, 상기 정지 신호는 특정의 지능형 이동 에이전트가 실행 모드에 있는 경우 그 실행을 중지하게 하는 신호이며, 상기 종료 신호는 특정의 지능형 이동 에이전트가 실행 모드에 있거나 대기 모드에 있는 경우 이를 완전히 종료케 하는 신호이며, 상기 완료 신호는 특정의 지능형 이동 에이전트의 실행이 완료되었을 때 종료에 대한 확인을 필요로 하는 해당 노드로 실행의 완료를 알려주는 신호이며, 상기 제거 신호는 목적 신호(Target Signal)을 오브젝트보드(ObjectBoard)상에서 제거하는 신호이며, 상기 보류 신호는 특정의 지능형 이동 에이전트의 실행을 잠시 멈추게 하는 신호이며, 상기 제1 재개 신호는 특정의 지능형 이동 에이전트가 보류 상태이거나 대기 모드인 경우에 이를 다시 실행케 하는 신호이며, 상기 제2 재개 신호는 특정의 노드 상에 있는 모든 보류 상태에 있는 지능형 이동 에이전트의 실행을 재개토록 하는 신호이며, 상기 철회 신호는 특정의 지능형 이동 에이전트의 실행을 종료하고 현재까지의 실행결과와 함께 해당 지능형 이동 에이전트를 철수시킬 곳으로 회수하게 하는 신호이며, 상기 이동형 객체의 복사본 제거 신호는 임시 저장소에 저장된 특정의 지능형 이동 에이전트에 대한 이동형 객체의 복사본을 삭제케하는 신호이며, 상기 삭제 신호는 특정의 지능형 이동 에이전트에 대한 이동형객체를 임시저장소에서 제거하게 하는 신호이다.Hereinafter, a signal Siganl affecting the operation of the intelligent mobile agent included in the mobile object will be described in detail. The signal input to the intelligent mobile agent may include an operation signal, a stop signal, an end signal, a completion signal, a removal signal, a hold signal, a first resume signal, a second resume signal, a withdrawal signal, a copy removal signal of a moving object, a deletion signal, and the like. There is this. Hereinafter, each signal will be described in detail. The operation signal is a signal for executing a specific intelligent mobile agent when it is in the first standby mode, and the stop signal is a signal when the specific intelligent mobile agent is in an execution mode. A signal to stop execution, the termination signal is a signal to completely terminate when a specific intelligent mobile agent is in the running mode or standby mode, the completion signal is when the execution of a specific intelligent mobile agent is completed A signal for informing completion of execution to a corresponding node requiring confirmation of termination, and the removal signal is a signal for removing a target signal from an object board, and the holding signal is a specific intelligent movement. A signal for pausing the execution of the agent, the first resume signal is Definition A signal for resuming an intelligent mobile agent when it is in a suspended or standby mode, the second resume signal is a signal for resuming execution of an intelligent mobile agent in all pending states on a particular node, The withdrawal signal is a signal for terminating the execution of a specific intelligent mobile agent and recovering the intelligent mobile agent withdrawal along with the execution result so far, and the copy removal signal of the movable object is stored in the temporary storage. A signal for deleting a copy of a mobile object for an intelligent mobile agent, and the deletion signal is a signal for removing a mobile object for a specific intelligent mobile agent from the temporary storage.

전술한 동작 코드에 따라 상기 지능형 이동 에이전트는 각 노드에 해당하는 상기 클라이언트 시스템에 설치되며, 상기 클라이언트 시스템은 설치된 지능형 이동 에이전트에 포함되어 있는 응용 프로그램에 대한 풀(pool)과 테이블(table)을 작성하여, 각 응용 프로그램에 대한 정보, 예컨대 버전(version), 크기, 요약, 다운로드가능한 URL 등을 저장ㆍ관리한다.According to the above-described operation code, the intelligent mobile agent is installed in the client system corresponding to each node, and the client system creates a pool and a table for an application included in the installed intelligent mobile agent. Information about each application program, for example, version, size, summary, downloadable URL, and the like are stored and managed.

이하, 도 2를 참조하여 지능형 이동 에이전트를 이동시키는 과정을 설명한다. 도 2는 제1 클라이언트 시스템상의 지능형 이동 에이전트를 제2 클라이언트 시스템으로 이주시켜 실행시키는 과정을 순차적으로 도시한 흐름도이다.Hereinafter, a process of moving the intelligent mobile agent will be described with reference to FIG. 2. 2 is a flowchart sequentially illustrating a process of migrating and executing an intelligent mobile agent on a first client system to a second client system.

도 2를 참조하면, 먼저 제1 클라이언트 시스템에서 소정의 지능형 이동 에이전트에 대하여 제2 클라이언트 시스템으로의 이주 명령이 발생하면, 먼저 상기 에이전트에 대한 이동형 객체를 생성한 후, 상기 이동형 객체를 제2 클라이언트 시스템으로 전송한다.Referring to FIG. 2, when a migration command from a first client system to a second client system occurs for a predetermined intelligent mobile agent, first, a mobile object for the agent is generated, and then the mobile object is a second client. Transfer it to the system.

제1 클라이언트 시스템으로부터 상기 이동형 객체를 수신한 제2 클라이언트 시스템은 상기 이동형 객체내의 상태 테이블내에 상태값이 있는지 여부를 파악한다. 만약 상태값이 없으면 상기 이동형 객체내의 에이전트에 대한 수행을 준비하고 그렇지 않으면 상기 이동형 객체내의 에이전트를 복원(unmarshalling)을 한다. 다음, 상기 에이전트를 수행한 후, 상태값을 저장하여 상기 지능형 이동 에이전트에 대한 이동형 객체를 재구성한다. 다음, 전송 준비를 완료하고 기설정된 경로 정보에 따라 다음 노드에 해당하는 클라이언트 시스템으로 재구성된 이동형 객체를 전송하고 수행 결과 정보를 제1 클라이언트 시스템으로 전송한다.The second client system that receives the mobile object from the first client system determines whether there is a state value in the state table in the mobile object. If there is no state value, it prepares to perform the agent in the mobile object and otherwise unmarshalling the agent in the mobile object. Next, after executing the agent, the state value is stored to reconfigure the mobile object for the intelligent mobile agent. Next, the transmission preparation is completed and the reconfigured mobile object is transmitted to the client system corresponding to the next node according to the predetermined path information, and the execution result information is transmitted to the first client system.

이하, 도 3을 참조하여 서버시스템의 클라이언트 관리부(110)에 클라이언트 시스템이 등록되는 과정을 구체적으로 설명한다.Hereinafter, a process of registering a client system in the client manager 110 of the server system will be described in detail with reference to FIG. 3.

도 3에 도시된 바와 같이, 사용자가 특정의 클라이언트 시스템을 부팅하면, 상기 사용자에 대한 인증을 상기 서버 시스템으로 요청하게 된다.As shown in FIG. 3, when a user boots a specific client system, the server system requests authentication of the user.

클라이언트 시스템으로부터의 요청에 따라 상기 서버 시스템은 상기 클라이언트 시스템을 등록시킨 후 이에 대한 세션값을 생성하고 상기 세션정보를 해당 클라이언트 시스템으로 전송하게 된다.In response to a request from a client system, the server system registers the client system, generates a session value for the client system, and transmits the session information to the client system.

상기 서버 시스템으로부터 세션 정보를 수신한 클라이언트 시스템은 전송받은 세션 정보를 저장한 후 작업을 시작한다.After receiving the session information from the server system, the client system stores the received session information and starts work.

이하, 도 4 및 도 5를 참조하여 메세지를 에이전트 A로부터 에이전트 B로 전송하는 과정을 순차적으로 설명한다.Hereinafter, a process of transmitting a message from Agent A to Agent B will be described in detail with reference to FIGS. 4 and 5.

도 4를 참조하여 보면, 먼저 전송하고자 하는 메세지에 동작 코드 등을 부가하여, 전송할 수 있는 형태의 메세지로 변환시켜 전송을 준비하고 변환된 해당 메세지를 전송하다. 에이전트 실행부는 상기 메세지를 수신하여 에이전트 실행부로 이를 전달한다. 다음, 이로부터 동작코드를 검출하고 이를 에이전트 운영부로 전달한다.Referring to FIG. 4, first, an operation code or the like is added to a message to be transmitted, the message is converted into a message that can be transmitted, ready for transmission, and the converted message is transmitted. The agent execution unit receives the message and delivers it to the agent execution unit. Next, the operation code is detected therefrom and delivered to the agent operating unit.

상기 에이전트 운영부는 전달받은 메세지의 구조에 따라 메세지에 대한 정보를 분류 및 분석하고, 상기 에이전트 A로부터 전송된 메세지를 오브젝트보드에 저장한다.The agent manager classifies and analyzes information on the message according to the structure of the received message, and stores the message transmitted from the agent A in the object board.

다음, 도 5를 참조하여 에이전트 B가 특정의 메세지를 요청하는 과정을 설명한다.Next, the process of requesting a specific message from the agent B will be described with reference to FIG. 5.

먼저, 메세지 요청이 준비되면, 에이전트 B는 특정의 메세지를 요청한 후 메제시 대기상태에 진입하여 메세지가 수신될 때까지 대기상태가 된다.First, when a message request is ready, Agent B requests a particular message and then enters a message waiting state and waits until a message is received.

한편, 메시지 요청에 따라 에이전트 전송부는 요청 신호를 수신하여 이를 에이전트 실행부로 전달하고 동작 코드를 검출한 후, 이를 에이전트 운영부로 전달한다.Meanwhile, in response to the message request, the agent transmission unit receives the request signal and delivers it to the agent execution unit, detects an operation code, and delivers it to the agent operation unit.

상기 에이전트 운영부는 해당 정보를 수신하고 오브젝트보드를 검색하여 해당 메세지를 추출한다. 다음, 상기 메세지에 대한 객체를 구성한 후 에이전트 B에 대한 정보를 검출하여 상기 메세지를 에이전트 B로 전달한다.The agent operator receives the information and retrieves the message by searching the object board. Next, after constructing an object for the message, information about Agent B is detected and the message is forwarded to Agent B.

대기상태이던 에이전트 B는 메세지가 전달되면, 이를 처리한다.Agent B, which was waiting, processes the message when it is delivered.

이하, 도 6 및 도 7을 참조하여 지능형 이동 에이전트가 여러 노드를 이주하는 과정을 설명한다.Hereinafter, a process of migrating multiple nodes by an intelligent mobile agent will be described with reference to FIGS. 6 and 7.

도 6을 참조하면, 제1 노드에 해당하는 제1 클라이언트 시스템은 다른 노드로 이주시키고자 하는 지능형 이동 에이전트에 대한 이동형 객체를 구성한 후, 상기 이동형 객체를 기설정된 경로 정보에 따라 다음 노드에 해당하는 제2 클라이언트 시스템으로 이주시킬 것(hopping)인지 여부를 검사한다. 만약, 호핑한다면, 상기 이동형 객체를 제2 클라이언트 시스템으로 이주시킨 후 이동형 객체내의 지능형 이동 에이전트를 실행시킨다. 만약 그렇지 않으면, 제1 클라이언트 시스템내에 있는 경로정보를 재설정하고, 해당 클라이언트 시스템으로 이주시켜 실행시키게 된다.Referring to FIG. 6, a first client system corresponding to a first node configures a movable object for an intelligent mobile agent to be migrated to another node, and then moves the movable object to a next node according to preset path information. Check whether you are hopping to a second client system. If hopping, the mobile object is migrated to the second client system and then the intelligent mobile agent in the mobile object is executed. If not, the path information in the first client system is reset, migrated to the client system, and executed.

도 7을 참조하면, 제1 노드에 해당하는 제1 클라이언트 시스템은 다른 노드로 이주시키고자 하는 지능형 이동 에이전트에 대한 이동형 객체를 구성한 후, 기설정된 경로 정보에 따라 상기 이동형 객체를 다음 노드에 해당하는 제2 클라이언트 시스템으로 전송하거나, 그렇지 않고 다음 노드를 건너 띄고 다른 노드로 전송하고자 하는 경우에는 제1 클라이언트 시스템의 경로 정보를 재조정하고 이주시키고자 하는 노드에 해당하는 클라이언트 시스템으로 전송하여 실행시킨다.Referring to FIG. 7, a first client system corresponding to a first node configures a mobile object for an intelligent mobile agent to be migrated to another node, and then moves the mobile object to a next node according to preset path information. If it is transmitted to the second client system or otherwise, the next node is to be skipped and transferred to another node, the path information of the first client system is readjusted and transmitted to the client system corresponding to the node to be migrated.

이하, 도 8을 참조하여 업무 스케쥴링 및 할당시에 사용되는 자료구조에 대한 논리적 주소 생성 및 이를 상기 업무와 함께 전달하는 과정을 순차적으로 설명한다.Hereinafter, a process of generating a logical address for a data structure used for scheduling and assigning a task and transferring the same together with the task will be described in detail with reference to FIG. 8.

도 8에 도시된 바와 같이, 제1 클라이언트 시스템은 특정의 지능형 이동 에이전트에 대한 이동형 객체를 구성한 후, 상기 이동형 객체를 제2 클라이언트 시스템으로 전송한다. 상기 제2 클라이언트 시스템은 세션 인증을 한 후, 상기 이동형 객체에 대한 복사본을 오브젝트보드에 저장시킨다. 다음, 신호를 제1 클라이언트 시스템으로 전송하여 제1 클라이언트 시스템의 임시 저장소에 저장된 이동형 객체의 복사본을 삭제시킴과 동시에, 제2 클라이언트 시스템에서 상기 이동형 객체 내의 에이전트를 실행시킨다.As shown in FIG. 8, the first client system configures a mobile object for a particular intelligent mobile agent and then transmits the mobile object to the second client system. After the second client system authenticates the session, the second client system stores a copy of the mobile object on an object board. Next, a signal is sent to the first client system to delete the copy of the mobile object stored in the temporary storage of the first client system, and at the same time, the agent in the mobile object is executed on the second client system.

이하, 도 9를 참조하여 에이전트 또는 메세지에 대한 인증 및 보안 전송 과정을 순차적으로 설명한다.Hereinafter, an authentication and secure transmission process for an agent or a message will be described sequentially with reference to FIG. 9.

도 9에 도시된 바와 같이, 제1 클라이언트 시스템은 보안 전송을 준비하여해당 에이전트 또는 메세지에 대한 이동형 객체를 제2 클라이언트 시스템으로 전송한다. 에이전트 또는 메세지에 대한 이동형 객체를 수신한 상기 제2 클라이언트 시스템은 이를 에이전트 실행부로 전달하고 동작코드를 검출한다. 만약, 인증이 확인되면 이동형 객체내의 에이전트 또는 메세지를 수행하며, 그렇지 않으면 인증 오류 또는 보안 전송 오류를 발생시킨다.As shown in FIG. 9, the first client system prepares for secure transmission and sends a mobile object for the agent or message to the second client system. The second client system which has received the mobile object for the agent or the message delivers it to the agent execution unit and detects the operation code. If the authentication is confirmed, the agent or message in the mobile object is executed. Otherwise, an authentication error or a secure transmission error is generated.

상기 에이전트 인증은 에이전트가 신뢰된 인증 기관이나 사람 또는 객체로부터 특정 노드에서의 수행을 인증받았는지 여부를 검사하는 것이다. 그런데, 전술한 과정에 의하여 인증 오류가 발생하면 재인증 요청함과 동시에 사용자에게 인증 오류를 알리게 된다.The agent authentication is to check whether the agent is authorized to perform on a specific node from a trusted certification authority, person or object. However, if an authentication error occurs by the above-described process, the authentication error is notified and the user is notified of the authentication error.

한편, 상기 보안 전송은 다른 노드로부터 전송된 데이타가 외부로부터 해킹 또는 손상받았는지 여부를 검사하는 것이다. 그런데, 전술한 과정에 의하여 보안 전송 오류가 발생하면 재전송 요청함과 동시에 사용자에게 전송 오류를 알리게 된다.On the other hand, the secure transmission is to check whether data transmitted from another node has been hacked or damaged from the outside. However, if a security transmission error occurs by the above-described process, the transmission error is requested and the user is notified of the transmission error.

이하, 본 발명에 따른 플랫폼 제공 시스템의 메세지 전송 기능에 대하여 설명한다.Hereinafter, a message transmission function of the platform providing system according to the present invention will be described.

본 발명에 따른 플랫폼 제공 시스템에서의 클라이언트 시스템에 해당하는 네트워크상의 다른 노드들과 메세지를 주고 받을 수 있으며, 이와 같이 주고 받을 수 있는 메세지는 지능형 이동 에이전트, 텍스트 기반의 메세지, 메타 데이터 및 신호 정보들을 모두 포함한다.In the platform providing system according to the present invention, a message can be exchanged with other nodes on a network corresponding to a client system, and the message can be exchanged with an intelligent mobile agent, text-based message, metadata, and signal information. It includes everything.

이와 같이, 본 발명의 상세한 설명에서는 구체적인 실시형태에 관해 설명하였으나, 본 발명의 범주에서 벗어나지 않는 한도내에서 여러가지 변형이 가능함은 물론이다. 그러므로, 본 발명의 범위는 설명된 실시형태에 국한되어 정해져서는 안되며 후술되는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야만 한다.As described above, in the detailed description of the present invention, specific embodiments have been described, but various modifications can be made without departing from the scope of the present invention. Therefore, the scope of the present invention should not be limited to the described embodiments, but should be defined not only by the claims below, but also by those equivalent to the claims.

본 발명에 따른 플랫폼 제공 시스템에 의하여, 인터넷 비즈니스상에 존재하는 시스템, 응용 프로그램, 장치, 사용자 등과 같은 비지니스 객체간의 통신 비용을 최소화시킬 수 있는 협업 컴퓨팅 플랫폼을 제공할 수 있게 된다. 또한, 본 발명에 따른 플랫폼 제공 시스템상에서 지능형 이동 에이전트를 실행시킴으로써, 아래와 같은 여러가지 효과를 얻을 수 있게 된다.By providing a platform providing system according to the present invention, it is possible to provide a collaborative computing platform that can minimize the communication costs between business objects such as systems, applications, devices, users, etc. existing in the Internet business. In addition, by executing the intelligent mobile agent on the platform providing system according to the present invention, the following various effects can be obtained.

즉, 지능형 이동 에이전트는 본 발명에 따른 플랫폼 제공 시스템상에서 사용자에 의해 주어진 경로에 따라 목적지 경로상의 노드에 해당하는 각 클라이언트 시스템들을 계속적으로 이동하면서 실행을 할 수 있으며, 이때 다른 노드로 이동되더라도 상기 에이전트의 코드 자체는 지속적이며 오류시 재전송될 수 있다.That is, the intelligent mobile agent can execute while continuously moving each client system corresponding to the node on the destination path according to the path given by the user on the platform providing system according to the present invention. The code itself is persistent and can be resent in the event of an error.

또한, 상기 에이전트는 사용자가 설정한 목적지 노드로 이동되면, 사용자와의 접촉이나 간섭없이, 사전 정의된 파라미터에 의해 자율적으로 실행될 수 있으며, 실행된 정보는 신속 정확하게 사용자에게 제공될 수 있다. 또한, 주변 상황, 예컨대 통신상의 장애 등에 의한 영향을 감지하고 이에 대해 적극적으로 대응할 수 있다.In addition, when the agent is moved to a destination node set by the user, the agent may be autonomously executed by predefined parameters without contact or interference with the user, and the executed information may be provided to the user quickly and accurately. In addition, it is possible to detect and actively respond to the influence of the surrounding situation, for example, a communication failure.

또한, 지능형 이동 에이전트는 상기 플랫폼 제공 시스템상에서 다른 지능형이동 에이전트 및 다른 사용자들과 상호 의사 소통을 할 수 있으며, 상기 플랫폼 제공 시스템상의 다른 클라이언트 시스템으로 영구적 또는 일시적으로 이주시킬 수 있으며 이에 대한 이식 코드 및 연관 데이터를 관리하게 된다.In addition, the intelligent mobile agent may communicate with other intelligent mobile agents and other users on the platform providing system, and may permanently or temporarily migrate to another client system on the platform providing system, and transplant code and Manage related data.

한편, 본 발명에 따른 플랫폼 제공 시스템은 시스템 관리 기능을 중앙 시스템인 서버 시스템에서 클라이언트 시스템으로 이양할 수 있게 됨으로써, 중앙 시스템의 작업 부하의 감소와 대역폭의 효율적인 활용을 개선시킬 수 있다.Meanwhile, the platform providing system according to the present invention can transfer the system management function from the server system, which is the central system, to the client system, thereby reducing the workload of the central system and improving the efficient use of bandwidth.

또한, 본 발명에 따른 플랫폼 제공 시스템은 서버 시스템과 각 클라이언트 시스템들이 네트워크으로 연결된 분산 시스템과 같이 동작되므로, 이러한 시스템에서 실행되는 지능형 이동 에이전트는 각 시스템을 마치 하나의 처리기로 간주함으로써 빠른 연산을 필요로 하는 병렬 처리 기능을 제공할 수 있다.In addition, since the platform providing system according to the present invention operates as a distributed system in which a server system and each client system are connected by a network, an intelligent mobile agent running in such a system needs fast operation by considering each system as a single processor. The parallel processing function can be provided.

또한, 본 발명에 따른 플랫폼 제공 시스템상에서 실행되는 지능형 이동 에이전트는 통신망과 계속 연결될 필요가 없으며 상기 에이전트가 이동시와 결과 전송시에만 통신망과 연결되므로 통신망 오버헤드가 거의 발생하지 않게 되어 전반적인 통신망 부하를 줄일 수 있게 된다.In addition, the intelligent mobile agent running on the platform providing system according to the present invention does not need to be continuously connected to the communication network, and since the agent is connected to the communication network only during the movement and the transmission of the result, almost no network overhead occurs, thereby reducing the overall network load. It becomes possible.

또한, 본 발명에 따른 플랫폼 제공 시스템상에서 실행되는 지능형 이동 에이전트는 목적지 노드에 해당하는 클라이언트 시스템으로 이동하였을 때, 사용자의 요구나 시스템의 요구에 따라 잠재적인 실행 중지와 재실행을 할 수 있기 때문에, 늦은 활성(lazy activation)을 수행할 수 있다.In addition, when the intelligent mobile agent running on the platform providing system according to the present invention moves to the client system corresponding to the destination node, the late execution and re-execution may be performed according to the user's request or the system's request. Lazy activation can be performed.

또한, 본 발 명에 따른 플랫폼 제공 시스템상에서 실행되는 지능형 이동 에이전트는 에이저트 상호간에 메세지 교환을 할 수 있고 이를 통해 회의를 할수도있으며 사용자나 시스템과 서로 통신을 할 수도 있다.In addition, the intelligent mobile agent running on the platform providing system according to the present invention can exchange messages between the agents, it is possible to have a meeting and communicate with the user or the system.

Claims (13)

지능형 이동 에이전트를 실행시키거나 이동시킬 수 있는 플랫폼 제공 시스템에 있어서,In the platform providing system that can run or move the intelligent mobile agent, 상기 플랫폼 제공 시스템은The platform providing system 전체 시스템의 동작을 제어 관리하는 서버 시스템; 및A server system for controlling and managing the operation of the entire system; And 상기 서버 시스템과 네트워크를 통해 접속할 수 있으며, 상기 지능형 이동 에이전트를 이동 및 실행시킬 수 있는 적어도 하나 이상의 클라이언트 시스템을 구비하며,At least one client system capable of accessing the server system through a network and capable of moving and executing the intelligent mobile agent, 상기 서버 시스템은,The server system, 접속된 클라이언트 시스템들에 관한 위치 정보를 관리하는 클라이언트 관리부; 및A client manager that manages location information about connected client systems; And 제대로 실행되지 못하거나 목적지에 이동하지 못한 지능형 이동 에이전트들을 관리하고 복구시키는 태스크 복구부Task recovery unit that manages and recovers intelligent mobile agents that did not run properly or did not reach their destinations 를 포함하며,Including; 상기 클라이언트 시스템은,The client system, 지능형 이동 에이전트를 다른 클라이언트 시스템으로 이동시킬 수 있는 이동형 객체로 변환시키거나, 상기 이동형 객체를 다른 클라이언트 시스템으로 이동시키는 에이전트 전송부;An agent transmitter for converting the intelligent mobile agent into a mobile object capable of moving to another client system or moving the mobile object to another client system; 상기 이동형 객체내의 지능형 이동 에이전트를 실행시키는 에이전트 실행부;An agent execution unit executing an intelligent mobile agent in the mobile object; 지능형 이동 에이전트들에 대한 정보를 관리하는 에이전트 운영부; 및An agent manager for managing information on intelligent mobile agents; And 지능형 이동 에이전트간, 또는 서버 시스템과 클라이언트 시스템간의 데이터 또는 메세지의 송수신을 가능케하는 인터페이스부Interface unit that enables the transmission and reception of data or messages between intelligent mobile agents or between server systems and client systems 를 포함하는 것을 특징으로 하는 지능형 이동 에이전트를 실행시키거나 이동시킬 수 있는 플랫폼 제공 시스템.Platform providing system that can run or move the intelligent mobile agent, characterized in that it comprises a. 제1항에 있어서, 상기 클라이언트 관리부는 각 클라이언트 시스템이 로그인하였을때 해당 클라이언트 시스템에 대한 위치 및 경로 정보를 수집하여 저장하며, 특정의 클라이언트 시스템으로부터 다른 클라이언트 시스템에 대한 위치 정보 요청에 응답하여 해당 정보를 제공하는 것을 특징으로 하는 지능형 이동 에이전트를 실행시킬 수 있는 플랫폼 제공 시스템.The method of claim 1, wherein the client manager collects and stores location and path information of the client system when each client system logs in, and responds to the request for location information from a specific client system to another client system. Platform providing system that can run the intelligent mobile agent, characterized in that to provide. 제1항에 있어서, 상기 태스크 복구부는 제1 클라이언트 시스템으로부터 제2 클라이언트 시스템으로의 이동형 객체의 송신이 정상적으로 완료되지 않았을 때 송신하고자 하는 상기 이동형 객체 및 목적지에 해당하는 클라이언트 시스템에 대한 경로 정보 등을 저장 관리하며, 목적지의 시스템과의 통신이 가능해지면 다시 전송하는 것을 특징으로 하는 지능형 이동 에이전트를 실행시킬 수 있는 플랫폼 제공 시스템.The method of claim 1, wherein the task recovery unit is configured to provide path information about the mobile object to be transmitted and the client system corresponding to a destination when the transmission of the mobile object from the first client system to the second client system is not normally completed. A platform providing system capable of executing the intelligent mobile agent, characterized in that the storage management, and transmits again when communication with the system of the destination is possible. 제1항에 있어서, 상기 지능형 이동 에이전트는 (1) 소정의 응용 프로그램에대한 실행 코드, (2) 상기 실행코드를 수행할 때 발생하는 상태의 변화나 처리해야 할 정보 데이터 및 (3) 상기 에이전트 자신에 대한 정보에 관한 속성 데이터를 포함하는 것을 특징으로 하는 지능형 이동 에이전트를 실행시킬 수 있는 플랫폼 제공 시스템.2. The intelligent mobile agent of claim 1, wherein the intelligent mobile agent comprises (1) executable code for a given application program, (2) a change of state or information data to be processed when executing the executable code, and (3) the agent. A platform providing system capable of executing an intelligent mobile agent, characterized in that it comprises attribute data about information about itself. 제1항에 있어서, 상기 지능형 이동 에이전트는 상기 에이전트 전송부에 의해 다른 클라이언트 시스템으로 이동하기 위한 이동형 객체로 변환되며, 상기 이동형 객체는 (1) 이동시키고자 하는 지능형 이동 에이전트, (2) 상기 지능형 이동 에이전트가 실행된 결과값에 해당하는 상태값, (3) 상기 지능형 이동 에이전트의 동작을 나타내는 동작 코드, 및 (4) 상기 지능형 이동 에이전트의 동작을 제어하는 신호(Signal)로 이루어지는 것을 특징으로 하는 지능형 이동 에이전트를 실행시킬 수 있는 플랫폼 제공 시스템.The intelligent mobile agent of claim 1, wherein the intelligent mobile agent is converted into a mobile object for moving to another client system by the agent transmitter, and the mobile object is (1) an intelligent mobile agent to be moved, and (2) the intelligent object. A status value corresponding to a result of executing the mobile agent, (3) an operation code indicating the operation of the intelligent mobile agent, and (4) a signal for controlling the operation of the intelligent mobile agent. Platform-provided system capable of running intelligent mobile agents. 제5항에 있어서, 상기 에이전트 실행부는 실행할 지능형 이동 에이전트에 대한 이동형 객체의 복사본을 임시 저장소에 저장시킨 후, 상기 지능형 이동 에이전트를 실행시키거나 경로 정보에 따라 다음 노드에 해당하는 클라이언트 시스템으로 전송시키며, 상기 지능형 이동 에이전트가 정상적으로 수행되었음을 알리는 확인 신호에 응답하여 상기 임시 저장소에 저장된 상기 이동형 객체의 복사본을 삭제시키는 것을 특징으로 하는 지능형 이동 에이전트를 실행시킬 수 있는 플랫폼 제공 시스템.The method of claim 5, wherein the agent executing unit stores a copy of the movable object for the intelligent mobile agent to be executed in a temporary storage, and then executes the intelligent mobile agent or transmits the intelligent mobile agent to a client system corresponding to the next node according to path information. And deleting a copy of the mobile object stored in the temporary storage in response to a confirmation signal indicating that the intelligent mobile agent has been normally executed. 제1항에 있어서, 상기 인터페이스부는 내부 인터페이스부 및 외부 인터페이스부로 이루어지며, 상기 내부 인터페이스부는 지능형 이동 에이전트 간 또는 서버 시스템과 클라이언트 시스템간의 데이터 등의 송수신을 제공하며, 상기 외부 인터페이스부는 각 클라이언트 시스템상의 응용 프로그램들이 필요로 하는 데이터를 외부 시스템으로부터 제공받도록 하는 것을 특징으로 하는 지능형 이동 에이전트를 실행시킬 수 있는 플랫폼 제공 시스템.The interface unit of claim 1, wherein the interface unit comprises an internal interface unit and an external interface unit, and the internal interface unit transmits and receives data between an intelligent mobile agent or a server system and a client system, and the external interface unit is configured on each client system. A platform providing system capable of executing an intelligent mobile agent, characterized in that the application to receive the data required by the external system. 제1항에 있어서, 상기 서버 시스템 및 상기 클라이언트 시스템은 각 클라리언트 시스템간의 정보 보호 및 보안 인증을 처리하기 위한 인증 처리부를 더 구비하는 것을 특징으로 하는 지능형 이동 에이전트를 실행시킬 수 있는 플랫폼 제공 시스템.The platform providing system of claim 1, wherein the server system and the client system further include an authentication processing unit for processing information protection and security authentication between client systems. 서버 시스템 및 적어도 하나 이상의 클라이언트 시스템으로 이루어지는 플랫폼 제공 시스템에서 지능형 이동 에이전트를 상기 클라이언트 시스템상에서 실행시키거나 다른 클라이언트 시스템으로 이동시킬 수 있는 실행 프로그램이 기록된 기록 매체에 있어서,A recording medium having recorded thereon an execution program capable of executing an intelligent mobile agent on a client system or moving to another client system in a platform-providing system comprising a server system and at least one client system, 상기 실행 프로그램은,The executable program, 특정의 응용 프로그램에 대한 실행 코드, 정보 데이터 및 속성 데이터로 이루어지는 지능형 이동 에이전트로부터, 이를 다른 클라이언트 시스템으로 이동시킬수 있는 형태인 이동형 객체를 생성하는 절차;A procedure for creating a mobile object in a form capable of moving it to another client system from an intelligent mobile agent consisting of executable code, information data, and attribute data for a specific application program; 상기 이동형 객체를 기설정된 경로 정보에 따라 목적지에 해당하는 클라이언트 시스템으로 이동시키는 절차;Moving the mobile object to a client system corresponding to a destination according to preset route information; 다른 클라이언트 시스템으로부터 전송되어 온 이동형 객체 내의 지능형 이동 에이전트 내에 구비된 응용 프로그램을 실행시키는 절차;Executing an application provided in an intelligent mobile agent in a mobile object transmitted from another client system; 를 구비하는 것을 특징으로 하는 실행 프로그램이 기록된 기록 매체.And a recording medium having recorded thereon an execution program. 제9항에 있어서, 상기 실행 프로그램은 사용자가 로그인하면 자신의 위치 정보와 경로 정보를 상기 서버 시스템으로 전송하는 절차를 더 구비하는 것을 특징으로 하는 실행 프로그램이 기록된 기록 매체.10. The recording medium of claim 9, wherein the execution program further comprises a procedure for transmitting its location information and route information to the server system when the user logs in. 제9항에 있어서, 상기 실행 프로그램은 다른 클라이언트 시스템으로 메세지를 전송하거나 소정의 메세지의 전송을 요청하는 절차를 더 구비하는 것을 특징으로 하는 실행 프로그램이 기록된 기록매체.10. The recording medium of claim 9, wherein the executable program further comprises a procedure of transmitting a message to another client system or requesting transmission of a predetermined message. 제9항에 있어서, 상기 실행 프로그램은 상기 이동형 객체내의 지능형 이동 에이전트가 특정의 노드에 해당하는 클라이언트 시스템에서의 수행을 인증받았는지 여부를 검사하고, 만약 인증 오류가 발생하면 재인증을 요청하는 절차를 더 구비하는 것을 특징으로 하는 실행 프로그램이 기록된 기록매체.10. The method of claim 9, wherein the execution program checks whether the intelligent mobile agent in the mobile object has been authenticated to perform in a client system corresponding to a specific node, and requests reauthentication if an authentication error occurs. And a recording medium having recorded thereon an execution program. 서버 시스템 및 적어도 하나 이상의 클라이언트 시스템으로 이루어지는 플랫폼 제공 시스템에서 실행될 수 있는 지능형 이동 에이전트에 있어서,An intelligent mobile agent that can run on a platform providing system consisting of a server system and at least one client system, 상기 지능형 이동 에이전트는, (1) 특정의 응용 프로그램에 대한 실행 코드, (2) 상기 실행 코드를 수행할 때 발생하는 상태의 변화나 처리해야 할 정보에 관한 정보 데이터, 및 (3) 속성 정보로 이루어지며,The intelligent mobile agent includes (1) executable code for a specific application, (2) information data about a change in state or information to be processed when executing the executable code, and (3) attribute information. Done, 상기 지능형 이동 에이전트는 이동형 객체로 변환되어 기설정된 경로정보에 따라 상기 플랫폼 제공 시스템상의 다른 클라이언트 시스템으로 이동되는 것을 특징으로 하며,The intelligent mobile agent is converted to a mobile object and moved to another client system on the platform providing system according to predetermined route information. 상기 이동형 객체는 (1) 이동시키고자 하는 지능형 이동 에이전트, (2) 상기 지능형 이동 에이전트가 실행된 결과값에 해당하는 상태값, (3) 상기 지능형 이동 에이전트의 동작을 나타내는 동작 코드, 및 (4) 상기 지능형 이동 에이전트의 동작을 제어하는 신호(Signal)로 이루어지는 것을 특징으로 하는 지능형 이동 에이전트.The mobile object includes (1) an intelligent mobile agent to be moved, (2) a state value corresponding to a result of executing the intelligent mobile agent, (3) an operation code indicating an operation of the intelligent mobile agent, and (4 Intelligent mobile agent, characterized in that consisting of a signal (Signal) for controlling the operation of the intelligent mobile agent.
KR10-2002-0088054A 2002-12-31 2002-12-31 Platform system for executing an intelligent mobile agent KR100470176B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2002-0088054A KR100470176B1 (en) 2002-12-31 2002-12-31 Platform system for executing an intelligent mobile agent

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2002-0088054A KR100470176B1 (en) 2002-12-31 2002-12-31 Platform system for executing an intelligent mobile agent

Publications (2)

Publication Number Publication Date
KR20040061760A true KR20040061760A (en) 2004-07-07
KR100470176B1 KR100470176B1 (en) 2005-02-05

Family

ID=37353265

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2002-0088054A KR100470176B1 (en) 2002-12-31 2002-12-31 Platform system for executing an intelligent mobile agent

Country Status (1)

Country Link
KR (1) KR100470176B1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100645386B1 (en) * 2005-10-07 2006-11-14 성균관대학교산학협력단 Mobile agent management system for using mobile terminal equipment and management method thereof
WO2007105838A1 (en) * 2006-03-14 2007-09-20 Korea Institute Of Science And Technology A intelligent computing device agent system for automatic recognition of multi user computing environment and information sharing setup
KR100891093B1 (en) * 2006-05-09 2009-03-31 삼성전자주식회사 Apparatus and method for providing safe movement of secure data

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101592323B1 (en) * 2015-06-09 2016-02-05 주식회사 이노아이엔씨 System and method for remote server recovery

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100645386B1 (en) * 2005-10-07 2006-11-14 성균관대학교산학협력단 Mobile agent management system for using mobile terminal equipment and management method thereof
WO2007105838A1 (en) * 2006-03-14 2007-09-20 Korea Institute Of Science And Technology A intelligent computing device agent system for automatic recognition of multi user computing environment and information sharing setup
US8190658B2 (en) 2006-03-14 2012-05-29 Korea Institute Of Science And Technology Intelligent computing device agent system for automatic recognition of multi user computing environment and information sharing setup
KR100891093B1 (en) * 2006-05-09 2009-03-31 삼성전자주식회사 Apparatus and method for providing safe movement of secure data
US8775799B2 (en) 2006-05-09 2014-07-08 Samsung Electronics Co., Ltd. Apparatus and method of securely moving security data

Also Published As

Publication number Publication date
KR100470176B1 (en) 2005-02-05

Similar Documents

Publication Publication Date Title
US10341468B2 (en) System and method for managing communications between a portable data terminal and a server
KR102004160B1 (en) Apparatus and method for logical grouping method of iot connected client nodes using client identifier
US7246174B2 (en) Method and system for accessing and managing virtual machines
US7945652B2 (en) Display multi-layers list item in web-browser with supporting of concurrent multi-users
JP5260333B2 (en) Method and apparatus for backing up data with NAS and CAS integration
US8069246B2 (en) Relay server and relay communication system including a relay group information registration unit, a shared resource information registration unit, and a control unit
US20060248182A1 (en) Formatted and/or tunable QoS data publication, subscription, and/or distribution including dynamic network formation
US20130332524A1 (en) Data service on a mobile device
US20060248181A1 (en) Formatted and/or tunable QOS data publication, subscription, and/or distribution servers and clients
Kagal et al. Centaurus: A framework for intelligent services in a mobile environment
CN111193602B (en) Automatic operation and maintenance management system and method
KR20080068647A (en) Method and system for establishing a service application execution environment in a heterogeneous, distributed computing system and a user friendly data transfer service application executing within the service application execution environment
US20020111999A1 (en) System and method for remote control of software and an attached device
Chen et al. Responsive mobile user experience using MQTT and IBM MessageSight
KR100470176B1 (en) Platform system for executing an intelligent mobile agent
Lee et al. Itinerary-based mobile agent as a basis for distributed OSGi services
US20030212587A1 (en) Apparatus and methods for coordinating Web services using role based interpretation of coordination plans
CN111176782B (en) Online experiment method and device
JP2000029847A (en) Agent system, information processing method and recording medium recorded with information processing software
JP6096700B2 (en) API providing system
Gombás et al. A flexible multi-level grid monitoring architecture
CN113542313B (en) Third-party Internet of things platform equipment docking system and method
US20230344520A1 (en) Intelligent Monitoring and Repair of Network Services Using Log Feeds Provided Over Li-Fi Networks
Huang et al. Design and implementation of an adaptive Web2. 0 QoS‐based home appliance control service platform
Murata et al. Implementation of M2M applications for demonstrating benefits of ICN architecture

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
N231 Notification of change of applicant
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20080125

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee