  We present a formalized, fully decentralized runtime semantics for a core
subset of ABS, a language and framework for modelling distributed
object-oriented systems. The semantics incorporates an abstract graph
representation of a network infrastructure, with network endpoints represented
as graph nodes, and links as arcs with buffers, corresponding to OSI layer 2
interconnects. The key problem we wish to address is how to allocate
computational tasks to nodes so that certain performance objectives are met. To
this end, we use the semantics as a foundation for performing network-adaptive
task execution via object migration between nodes. Adaptability is analyzed in
terms of three Quality of Service objectives: node load, arc load and message
latency. We have implemented the key parts of our semantics in a simulator and
evaluated how well objectives are achieved for some application-relevant
choices of network topology, migration procedure and ABS program. The
evaluation suggests that it is feasible in a decentralized setting to
continually meet both the objective of a node-balanced task allocation and make
headway towards minimizing communication, and thus arc load and message
latency.
