System and method for migrating agents between mobile devices
First Claim
Patent Images
1. A computer-readable medium comprising computer-executable instructions, that when executed by a processing device, cause the processing device to:
- receive, from a first device, an agent activation request comprising a first copy of an agent application executing on the first device;
execute the first copy of the agent application based at least in part on receiving the agent activation request;
transmit, to the first device, a first agent activation response based at least in part on executing the first copy of the agent application;
receive, from a second device, an agent participation request providing a location of the second device;
compare the location of the second device to a region of interest;
provide, to the second device, a second copy of the agent application based at least in part on the comparison;
receive, from the second device, a second agent activation response based at least in part on the second copy of the agent application executing on the second device; and
record that the second copy of the agent application is executing successfully on the second device based at least in part on receiving the second agent activation response from the second device within a predetermined amount of time.
1 Assignment
0 Petitions
Accused Products
Abstract
Mobile agents can be deployed to location aware mobile devices within specific regions of interest to achieve specific goals in respect of events occurring in the region of interest. In order to ensure that the agent can persist within the region of interest until the agent goals are achieved, the agent is configured to locate other devices within the region of interest and to propagate itself, by moving or copying itself, to those other devices. When a device hosting the agent exits the region of interest, the agent is terminated, thereby freeing device resources.
-
Citations
35 Claims
-
1. A computer-readable medium comprising computer-executable instructions, that when executed by a processing device, cause the processing device to:
-
receive, from a first device, an agent activation request comprising a first copy of an agent application executing on the first device; execute the first copy of the agent application based at least in part on receiving the agent activation request; transmit, to the first device, a first agent activation response based at least in part on executing the first copy of the agent application; receive, from a second device, an agent participation request providing a location of the second device; compare the location of the second device to a region of interest; provide, to the second device, a second copy of the agent application based at least in part on the comparison; receive, from the second device, a second agent activation response based at least in part on the second copy of the agent application executing on the second device; and record that the second copy of the agent application is executing successfully on the second device based at least in part on receiving the second agent activation response from the second device within a predetermined amount of time. - View Dependent Claims (2)
-
-
3. A device, comprising:
-
a memory configured to store a first copy of an agent application received from a first device; and a processing device configured to; execute the first copy of the agent application based at least in part on receiving an agent activation request from the first device, the agent activation request comprising the first copy of the agent application; transmit, to the first device, a first agent activation response based at least in part on executing the first copy of the agent application; receive, from a second device, an agent participation request providing a location of the second device; compare the location of the second device to a region of interest; provide, to the second device, a second copy of the agent application based at least in part on the comparison; receive, from the second device, a second agent activation response based at least in part on the second copy of the agent application executing on the second device; and record that the second copy of the agent application is executing successfully on the second device based at least in part on receiving the second agent activation response from the second device within a predetermined amount of time. - View Dependent Claims (4, 5)
-
-
6. A mobile device, comprising:
-
a memory device configured to store instructions; and a processing device configured to execute the instructions stored in the memory device to; activate a first copy of an agent application based at least in part on receiving the first copy of the agent application in an agent activation request from a first device; transmit, to the first device, a first agent activation response based at least in part on activating the first copy of the agent application; receive, from a second device, an agent participation request providing a location of the second device; compare the location of the second device to a region of interest; provide, to the second device, a second copy of the agent application based at least in part on the comparison; receive, from the second device, a second agent activation response based at least in part on the second copy of the agent application executing on the second device; and record that the second copy of the agent application is executing successfully on the second device based at least in part on receiving the second agent activation response from the second device within a predetermined amount of time. - View Dependent Claims (7, 8, 9, 10, 11)
-
-
12. A method, comprising:
-
activating a first copy of an agent application based at least in part on receiving the first copy of the agent application from a first device; transmitting, to the first device, an agent activation response based at least in part on successfully activating the first copy of the agent application; transmitting, to the first device, a first agent activation response based at least in part on activating the first copy of the agent application; receiving, from a second device, an agent participation request providing a location of the second device; comparing the location of the second device to a region of interest; providing, to the second device, a second copy of the agent application based at least in part on the comparison; receiving, from the second device, a second agent activation response based at least in part on the second copy of the agent application executing on the second device; and recording that the second copy of the agent application is executing successfully on the second device based at least in part on receiving the second agent activation response from the second device within a predetermined amount of time. - View Dependent Claims (13, 14, 15, 16, 17)
-
-
18. A mobile management device, comprising a processor configured to:
-
propagate an agent to a first device in response to detecting the first device being located in a region of interest; receive an agent participation request from a second device, the agent participation request indicating a location of the second device; provide an agent activation request comprising deploying the agent to the second device based at least in part on the second device being located in the region of interest; and terminate the agent executing on the first device based at least in part on the agent successfully executing on the second device or place the agent executing on the first device into a stand-by mode based at least in part on the agent successfully executing on the second device. - View Dependent Claims (19, 22)
-
-
21. A system, comprising:
-
a first processor configured to; propagate an agent to a first mobile device in response to detecting the first mobile device being located in a region of interest; receive an agent participation request from a second mobile device, the agent participation request indicating a location of the second mobile device; and provide an agent activation request comprising deploying the agent to the second mobile device based at least in part on the second mobile device being located in the region of interest; and a second processor configured to activate the agent on the second mobile device before providing an agent activation response to the first mobile device. - View Dependent Claims (34)
-
-
23. A mobile management device, comprising a processor configured to:
-
propagate an agent to a first device in response to detecting the first device being located in a region of interest within a predetermined threshold; receive an agent participation request from a second device, the agent participation request indicating a location of the second device; provide an agent activation request comprising deploying the agent to the second device based at least in part on the second device being located in the region of interest; and determine the predetermined threshold based at least in part on a distance between the first device and a base station that serves the region of interest. - View Dependent Claims (20)
-
-
24. A mobile management device, comprising a processor configured to:
-
propagate an agent to a first device in response to detecting the first device being located in a region of interest within a predetermined threshold; receive an agent participation request from a second device, the agent participation request indicating a location of the second device; provide an agent activation request comprising deploying the agent to the second device based at least in part on the second device being located in the region of interest; and determine the predetermined threshold based at least in part on a battery power of the first device. - View Dependent Claims (35)
-
-
25. A mobile device, comprising a processor to execute instructions stored in a memory to:
-
execute an agent on a first device in response to detecting the first device being located in a region of interest; receive an agent participation request from a second device, the agent participation request indicating a location of the second device; provide the agent to the second device based at least in part on the second device being located in the region of interest; and record that the agent is executing successfully on the second device based at least in part on receiving an agent activation response from the second device within a predetermined amount of time. - View Dependent Claims (26, 27, 28, 29, 30, 31, 32, 33)
-
Specification