Patent US5696726A successfully refreshed from Google Patents.
Patent US4746991A successfully refreshed from Google Patents.
Patent US6477564B1 successfully refreshed from Google Patents.
← Back to Patent Explorer
US6477564B1 Expired / Lapsed US ⏱️ 0.0 years remaining

Process for transforming and routing data between agent servers present in some machines and a central agent server present in another machine

Assignee: Bull SAS
•
Filing: 1999-06-15
•
Granted: 2002-11-05
•
Expires: 2019-06-15
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract The present invention relates to a process for transforming and routing data between agent servers present in some machines and a central agent server present in another machine. The agent server comprises autonomous agents ( 5 ) that communicate via notifications, a storage layer and an agent machine comprising an execution engine, a communication channel and two message queues for the notifications, a local queue (mqIn) and an external queue (mqOut). The execution engine takes a notification in the local queue, determines and loads the corresponding agent for each notification, has the agent react to the notification, which agent can then change its status and/or send notifications to the communication channel ( 2 ), which stores them in the local queue if they are addressed to a local agent and in the external queue if they are addressed to an agent of another server.

Inventors

  • 👤 Andre Freyssinet
  • 👤 Marc Herrmann
  • 👤 Serge Lacourte

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-30 17:28
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/46; G06F9/466

Claims Analysis

Total Claims: 15
Claim 1
Independent Claim 216 words
A process for transforming and routing data between agent servers in one or more of a plurality of first machines and a central agent server of a second machine, wherein an agent server comprises autonomous agents that communicate via messages, each message having at least a notification, and wherein each agent belongs to one type of agent and is designated by an agent identifier, the agents being shared out into at least two types, with each type of agent handling only one type of notification, the agent server also comprising a storage layer and an agent machine having an execution engine, a communication channel and two message queues associated with the notifications, namely, a local queue and an external queue, the process comprising taking a notification from the local queue, by the execution engine, determining and loading a corresponding agent by its agent identifier for each notification, depending on which type of agent is required to handle the notification, causing the agent to react to the notification, such that the agent can then change its status and send addressed notifications to the communication channel, storing the notifications in the local queue if said notifications are addressed to a local agent and in the external queue if said notifications are addressed to an agent of another server.
Claim 2
Dependent Claim 216 words
A process for transforming and routing data between agent servers in one or more of a plurality of first machines and a central agent server of a second machine, wherein an agent server comprises autonomous agents that communicate via messages, each message having at least a notification, and wherein each agent belongs to one type of agent and is designated by an agent identifier, the agents being shared out into at least two types, with each type of agent handling only one type of notification, the agent server also comprising a storage layer and an agent machine having an execution engine, a communication channel and two message queues associated with the notifications, namely, a local queue and an external queue, the process comprising taking a notification from the local queue, by the execution engine, determining and loading a corresponding agent by its agent identifier for each notification, depending on which type of agent is required to handle the notification, causing the agent to react to the notification, such that the agent can then change its status and send addressed notifications to the communication channel, storing the notifications in the local queue if said notifications are addressed to a local agent and in the external queue if said notifications are addressed to an agent of another server.
Claim 3
Dependent Claim 68 words
A process for transforming and routing data according to claim 1 , characterized in that the execution engine of the agent machine executes, after the agent's reaction, a save of the agent's status, a deletion of the processed notification from the local message queue, and atomically, a validation of various operations performed that have changed either the status of the agent or the status of the message queues.
Claim 4
Dependent Claim 47 words
A process for transforming and routing data according to claim 1 , characterized in that each message includes an optimized matrix clock that can be read by the execution engine of the agent machine, thus making it possible to process the notifications in their causal sending order.
Claim 5
Dependent Claim 47 words
A process for transforming and routing data according to claim 2 , characterized in that each message includes an optimized matrix clock that can be read by the execution engine of the agent machine, thus making it possible to process the notifications in their causal sending order.
Claim 6
Dependent Claim 44 words
A process for transforming and routing data according to claim 1 , characterized in that a message is an object that contains four pieces of information, including an identifier of the sending agent, an identifier of the destination agent, a clock and the notification.
Claim 7
Dependent Claim 42 words
A process for transforming and routing data according to claim 1 , characterized in that the agent machine manages distribution to all entities of the network, reliability of operations, and scheduling of messages which is established by incrementing a logical matrix clock.
Claim 8
Dependent Claim 125 words
A process for transforming and routing data according to claim 1 , characterized in that the communication channel performs the following separate transactions: storing a notification sent by an agent locally, either in the local queue for notifications addressed to a local agent, or in the external queue for an agent located in another server; at the end of the agent's reaction, saving the two queues on a disk, together with the reacting agent; extracting by a first function of the network each notification, in turn, from the external queue and sending the extracted notification to a targeted agent server; receiving the notifications from the other servers by a second function of the network and inserting the notifications into the local queue in causal order.
Claim 9
Dependent Claim 69 words
A process for transforming and routing data according to claim 1 , characterized in that when a targeted agent server receives a message, the targeted agent server stores the message in a persistent storage layer, validates the operation and confirms the reception of the message to a source server; and upon reception of this confirmation, the source server deletes the message from the external queue of the source server.
Claim 10
Dependent Claim 41 words
A process for transforming and routing data according to claim 1 , characterized in that a persistent external service ensures the atomicity of the operations that have changed either the status of the agent or the status of the message queues.
Claim 11
Dependent Claim 158 words
A process for transforming and routing data according to claim 1 , characterized in that the execution engine includes a program that: takes a notification that is in the local queue, using a Get function; identifies which agent the notification is addressed to; loads the identified agent corresponding to the notification; causes the agent to react by calling a reaction operation such that the agent can change its status by modifying its image in memory, and can send notifications by addressing the channel that will distribute the notification, in which case the notifications are routed to a message queue where they are stored in chronological order; if the reaction operation is executed, saves the status of the agent, which has been changed by the reaction it has executed, deletes the notification that has been processed, and validates all of the operations that have been performed; and starts again in the program loop in order to process another notification.
Claim 12
Dependent Claim 57 words
A process for transforming and routing data according to claim 1 , characterized in that the process is executed between agent servers present in machines of production sites and a central agent server present in a machine of a decision-making base, and uses a particular agent that describes specific events, in which a status controller is implemented.
Claim 13
Dependent Claim 326 words
A process for transforming and routing data according to claim 11 , characterized in that the status controller comprises various statuses including: a None status in which the event is not active; a notification status that causes the event to pass into a Wait status in which the event waits for its activation condition to become “true”; at which time the event delivers itself a notification that changes the event to an Init status; a first simple event status that attains a Run status directly and executes its action; a first composed event status that indicates to sub-events agreement for the sub-event to start and waits for the first of the sub-events to attain a Run status in order for the composed events to pass into the Run status; a second simple event which then passes into a Done or Fail status, depending on the status of the simple event action; a second composed event, which passes in the Done status on the execution statuses of all the sub-events; an event in execution status that can be killed by sending to the event in execution status a notification, in which case the event passes into a Kill status, marking the fact that the event has been killed, and then to a Stop status when it has actually been killed; a terminated event, i.e., in the Done, Fail or Stop status that can be re-executed by a client by sending the event a notification, in which case the event is reset and passes into the Wait status; the event then propagates the notification to all the sub-events; an event executed repeatedly and endowed with a Done status is automatically reset by an agent Scheduler, which sends the event a notification; and an event in the Fail or Stop status can be re-executed without being reset by sending a notification, and when this condition becomes “true,” the event restarts at the point at which it was previously stopped.
Claim 14
Dependent Claim 28 words
A process for transforming and routing data according to claim 12 , further comprising adding a new function by adding an agent class derived from the class “Event.”
Claim 15
Dependent Claim 51 words
A process for transforming and routing data according to claim 11 , characterized in that three categories of “Event” type agents—“SeqEvent,” “ParEvent” and “complexEvent”—take on elementary operations of the “Event” type in order to respectively execute them in sequence, in parallel, or in accordance with the dependencies between the various operations.

References Cited (Backward Citations)

WO1995010805A1 Cited
EP0723236A2 Cited
US5706516A Cited
EP0817042A2 Cited
US6327630B1 Cited
US6108782A Cited
US6292827B1 Cited
US6052363A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2005-11-04 2006-05-06 2006-11-05 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2009-11-04 2010-05-06 2010-11-05 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2013-11-04 2014-05-06 2014-11-05 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag