O'Reilly logo

Mobile Agents by Wilhelm R. Rossak, Peter Braun

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Index
A
accountability, 166
defined, 166
example, 170
ad hoc networks, 5
adaptive transmission, 125, 126
ADB message, 248–250
defined, 248
number of units, 249
replies, 249, 250
unit description, 250
wrong format, 249
See also SATP messages
ADK toolkit, 22
agencies, 17, 226–228
addressing, 78–79
ancestors, 155
audits, 178
behavior, 87
children, 155
code server, 117, 122–123, 227, 234–235,
271–273
current, 228
defined, 17, 31, 36, 220
destination, 50, 109, 157, 271
gray, 198
home, 36, 37, 113, 117, 226
hosting, 167–169
malicious, 161, 170–174
malicious agent attacks on, 167–169
marking, 198
mirror, 117, 227, 271–274, 319
as multi-agent systems, 37
names, 78
neighbor, 320
protecting, 198–213
receiver, 38, 220, 236–242
red, 198
remote, 79, 117, 226
replication of, 184–185
reputation, 177–178
roles, 226, 227
sender, 38, 50, 220
source, 157
target, 289–290
Tracy, 327–349
trusted, 176–177
types, comparison, 228
unauthorized access to, 168
untrusted, 176
white, 198
AgencyShell plugin
agency focus, 341, 343
defined, 331, 340–341
introduction, 341–343
plugins commands, 345–346
start/stop agents commands, 343–344
starting, 341
storage, 341
Telnet, 347–348
textual user interface, 341
See also plugins; Tracy
agent attacks, 169–170, 171–174
agent code/control flow, 173–174
agent data, 171–173
419
420 Index
agent attacks (continued )
detection, 184–198
malicious agencies, 171–174
malicious agents, 169–170
prevention, 178–184
See also attacks
Agent class, 43
agent class closure, 90
Agent Communication Languages (ACLs), 23, 137
FIPA, 137
KQML, 137
agent context, 223–225
agent instance lifetimes vs., 223–224
defined, 223
deleting, 259
existence, checking, 259
lifetime, 224
modifying, 232–235
state diagram, 225
Agent Definition Block (ADB), 124, 236–237, 387
reception, 236–237
transmission, 124
agent instances
defined, 220
lifetimes, 223–224
objects, 224
agent managers
agent execution control as, 275
defined, 218, 220
name uniqueness guarantee, 221
registering, 258
Agent Meeting Points (AMPs), 20, 171
agent model, 221–228
agencies, 226–228
agent contexts, 223–225
agents, 221–223
See also Kalong mobility model
agent names, 77–78, 221
defined, 36
globally unique, 221
in header message, 248
agent owners, 36
agent profiling, 320–321
defined, 320
dynamic, 320
static, 320–321
Agent Technology Handbook, 10
agent tracking
in broadcast-based approaches, 152
in central server approach, 145
defined, 142
in forwarding pointers approach, 150
AgentLauncher plugin, 348–349
configuration file, 348
defined, 331, 341
keys, 348–349
purpose, 348
AgentLink project, 21
AgentPolicy plugin, 331
agents, 8, 30
defined, 8–9
execution, 210–211
information filtering, 10
intelligent, 7, 30
mail, 7, 8, 9, 9–10
software, 7, 8, 9–10
See also mobile agents
agent’s view, 76, 87–92
code transfer, 89–92
migration strategies, 87–89
See also mobility model
AgentTCL toolkit
forking, 86
multiple language support, 22
performance evaluations, 294
See also mobile agent toolkits
Aglets toolkit, 70, 93–95
class cache, 108
defined, 93
home server approach, 145
migration strategy, 94
mobility model, 94–95
superfluously transmitted
classes, 101
weak mobility, 93
See also mobile agent toolkits
Ajanta toolkit, 22
focus, 22
RMI, 141
See also mobile agent toolkits
alterations, 170
ancestors, 155
anonymity, 166–167
achieving, 167
defined, 166
application programming interfaces (APIs),
217, 228–243
IAgentManager interface, 242, 256
IKalong interface, 219, 228–242, 256
Index 421
INetwork interface, 219, 242–243, 256
IServer interface, 243, 256
applications, 27–30
electronic commerce, 28–29
industrial-strength, 329
information retrieval, 29–30
killer, 28
network management, 30
safe development, 42, 199
software development, 30
ArrayUtils class, 266
asymmetric cryptosystems, 163
asynchronous message passing, 138–139,
354, 363
at-most-once semantic, 134
attacks
alterations, 170
black-box, 173, 187–188
control flow, 174
countermeasure development, 160
cut and paste, 172, 190
denial of service, 169–170
detecting, 184–198
eavesdropping, 170
malicious agents, 167–170
organizational solutions, 175–178
preventing, 178–184
proposed solutions, 174–175
taxonomy of, 167–174
traffic analysis, 170
See also security
audits, 178
authentication, 162–164, 204–210
agent, 204–210, 283–286
with digital signature verification,
283
in execution tracing, 195
in Internet, 162
between mobile agents/agencies, 163
with public-key infrastructure, 163
requirement, 162
See also security
authorization, 204–210
automated migration strategy, 317
autonomous objects, 19
availability, 166
defined, 166
remote agency, 237
B
backward-time key generation, 183
bandwidth measurement, 54
binding-update messages, 146
black boxes
defined, 180
time-limited, 179–181
Blackboard plugin, 331
blackboard-oriented approach, 139, 140
defined, 140
limitation, 140
See also information space model
black-box attacks, 173
agent detection, 187
detecting, 187–188
broadcast-based approaches, 151–154
advantages, 151–152
agent tracking and, 152
comparison, 153
defined, 151
distinguishing, 152–153
illustrated, 152
improvements, 154
message delivery, 154
migration, 154
optimizing, 154
uses, 153
See also location-transparent communication
ByteArrayOutputStream class, 281
ByteBuffer class, 281
bytecode verification, 200
C
caching experiment, 310–311
defined, 310
effect, 311
migration time, 310
overhead, 311
See also code caches; experiments
care-of-address, 145
central server approach, 144–145
defined, 144
illustrated, 144
triangle problem, 146
See also location-transparent communication
422 Index
certificates, 285–286
distinguished name, 285
trusted, 286
checkpointing, 20
children, 155
Cipher class, 289
cipher objects, 289, 290
class caches, 108
limitations, 108
local, 124
Class class, 49
class loaders, 49–50, 90
class splitting, 321–323
defined, 321
effect verification, 323
example, 321, 322
software component, 321
classes
agency-wide cache, 90–91
bundling, 90
byte code size, 232
code, 50, 91
coding, 277
decoding, 277
determination, 90
finding, 48–50
identifier, 250
initialization, 203
list of, 232
loading, 49–50
local cache of, 90
main agent, pushing, 268–274
name determination, 269
signing, 286
size reduction, 304
superfluously transmitted, 101
ubiquitous, 91
See also specific classes
ClassFileStructure class, 283
ClassLoader class, 49, 124
ClassStructure class, 283
clients, 295
client-server paradigm, 13–14
client requests, 55
defined, 13–14
illustrated, 13
interaction evaluation, 53
mobile agents vs., 51–54
network load, 52, 58
performance analysis, 54–68
programming concepts, 14
RMI-based, 70
scenario, 56–60
scenario evaluation, 59–60
server results, 55
See also distributed systems
μcode, 128
code
adaptive transmission of, 125, 126
attacks, 173–174
class, 50, 91
closure, 49
consumer, 205
defined, 16, 37
distribution, 223
downloading, 120
execution, 105–106
format, 102–105
granularity, 321
intermediate, 102, 104–105
machine, 102, 104
manipulation detection, 192–197
multiple files, 37
multiple servers, 109
on demand, 25
pieces, 101
prefetching, 381
producer, 205
proof-carrying (PCC), 205–206
push strategy, 90
relocation strategies, 89
in remote-evaluation approach, 52–53
separation, 37
sharing, 91
size, 53, 101, 298–302
source, 80, 102, 104, 201
transfer, 89–92
transmission, 99
user’s view, 80
code bases, 122, 123
appending, 235
list of, 122
code caches, 92, 123–124
defined, 123
effect, 311
experiment, 310–311
functioning of, 124
goal, 124

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required