Preface |
Acronyms |
Internet-Based Workflows / 1: |
Workflows and the Internet / 1.1: |
Historic Perspective / 1.1.1: |
Enabling Technologies / 1.1.2: |
Nomadic, Network-Centric, and Network-Aware Computing / 1.1.3: |
Information Grids; the Semantic Web / 1.1.4: |
Workflow Management in a Semantic Web / 1.1.5: |
Informal Introduction to Workflows / 1.2: |
Assembly of a Laptop / 1.2.1: |
Computer Scripts / 1.2.2: |
A Metacomputing Example / 1.2.3: |
Automatic Monitoring and Benchmarking of Web Services / 1.2.4: |
Lessons Learned / 1.2.5: |
Workflow Reference Model / 1.3: |
Workflows and Database Management Systems / 1.4: |
Database Transactions / 1.4.1: |
Workflow Products / 1.4.2: |
Internet Workflow Models / 1.5: |
Basic Concepts / 1.5.1: |
The Life Cycle of a Workflow / 1.5.2: |
States, Events, and Transition Systems / 1.5.3: |
Safe and Live Processes / 1.5.4: |
Transactional versus Internet-Based Workflows / 1.6: |
Workflow Patterns / 1.7: |
Workflow Enactment / 1.8: |
Task Activation and States / 1.8.1: |
Workflow Enactment Models / 1.8.2: |
Workflow Coordination / 1.9: |
Challenges of Dynamic Workflows / 1.10: |
Further Reading / 1.11: |
Exercises and Problems / 1.12: |
References |
Basic Concepts and Models / 2: |
Introduction / 2.1: |
System Models / 2.1.1: |
Functional and Dependability Attributes / 2.1.2: |
Major Concerns in the Design of a Distributed System / 2.1.3: |
Information Transmission and Communication Channel Models / 2.2: |
Channel Bandwidth and Latency / 2.2.1: |
Entropy and Mutual Information / 2.2.2: |
Binary Symmetric Channels / 2.2.3: |
Information Encoding / 2.2.4: |
Channel Capacity: Shannon's Theorems / 2.2.5: |
Error Detecting and Error Correcting Codes / 2.2.6: |
Final Remarks on Communication Channel Models / 2.2.7: |
Process Models / 2.3: |
Processes and Events / 2.3.1: |
Local and Global States / 2.3.2: |
Process Coordination / 2.3.3: |
Time, Time Intervals, and Global Time / 2.3.4: |
Cause-Effect Relationship, Concurrent Events / 2.3.5: |
Logical Clocks / 2.3.6: |
Message Delivery to Processes / 2.3.7: |
Process Algebra / 2.3.8: |
Final Remarks on Process Models / 2.3.9: |
Synchronous and Asynchronous Message Passing System Models / 2.4: |
Time and the Process Channel Model / 2.4.1: |
Synchronous Systems / 2.4.2: |
Asynchronous Systems / 2.4.3: |
Final Remarks on Synchronous and Asynchronous Systems / 2.4.4: |
Monitoring Models / 2.5: |
Runs / 2.5.1: |
Cuts; the Frontier of a Cut / 2.5.2: |
Consistent Cuts and Runs / 2.5.3: |
Causal History / 2.5.4: |
Consistent Global States and Distributed Snapshots / 2.5.5: |
Monitoring and Intrusion / 2.5.6: |
Quantum Computing, Entangled States, and Decoherence / 2.5.7: |
Examples of Monitoring Systems / 2.5.8: |
Final Remarks on Monitoring / 2.5.9: |
Reliability and Fault Tolerance Models. Reliable Collective Communication / 2.6: |
Failure Modes / 2.6.1: |
Redundancy / 2.6.2: |
Broadcast and Multicast / 2.6.3: |
Properties of a Broadcast Algorithm / 2.6.4: |
Broadcast Primitives / 2.6.5: |
Terminating Reliable Broadcast and Consensus / 2.6.6: |
Resource Sharing, Scheduling, and Performance Models / 2.7: |
Process Scheduling in a Distributed System / 2.7.1: |
Objective Functions and Scheduling Policies / 2.7.2: |
Real-Time Process Scheduling / 2.7.3: |
Queuing Models: Basic Concepts / 2.7.4: |
The M/M/1 Queuing Model / 2.7.5: |
The M/G/1 System: The Server with Vacation / 2.7.6: |
Network Congestion Example / 2.7.7: |
Final Remarks Regarding Resource Sharing and Performance Models / 2.7.8: |
Security Models / 2.8: |
Basic Terms and Concepts / 2.8.1: |
An Access Control Model / 2.8.2: |
Challenges in Distributed Systems / 2.9: |
Concurrency / 2.9.1: |
Mobility of Data and Computations / 2.9.2: |
Net Models of Distributed Systems and Workflows / 2.10: |
Informal Introduction to Petri Nets / 3.1: |
Basic Definitions and Notations / 3.2: |
Modeling with Place/Transition Nets / 3.3: |
Conflict/Choice, Synchronization, Priorities, and Exclusion / 3.3.1: |
State Machines and Marked Graphs / 3.3.2: |
Marking Independent Properties of P/T Nets / 3.3.3: |
Marking Dependent Properties of P/T Nets / 3.3.4: |
Petri Net Languages / 3.3.5: |
State Equations / 3.4: |
Properties of Place/Transition Nets / 3.5: |
Coverability Analysis / 3.6: |
Applications of Stochastic Petri Nets to Performance Analysis / 3.7: |
Stochastic Petri Nets / 3.7.1: |
Informal Introduction to SHLPNs / 3.7.2: |
Formal Definition of SHLPNs / 3.7.3: |
Compound Marking of an SHLPN / 3.7.4: |
Modeling and Performance Analysis of a Multiprocessor System Using SHLPNs / 3.7.5: |
Performance Analysis / 3.7.6: |
Modeling Horn Clauses with Petri Nets / 3.8: |
Workflow Modeling with Petri Nets / 3.9: |
Basic Models / 3.9.1: |
Branching Bisimilarity / 3.9.2: |
Dynamic Workflow Inheritance / 3.9.3: |
Internet Quality of Service / 3.10: |
Brief Introduction to Networking / 4.1: |
Layered Network Architecture and Communication Protocols / 4.1.1: |
Internet Applications and Programming Abstractions / 4.1.2: |
Messages and Packets / 4.1.3: |
Encapsulation and Multiplexing / 4.1.4: |
Circuit and Packet Switching. Virtual Circuits and Datagrams / 4.1.5: |
Networking Hardware / 4.1.6: |
Routing Algorithms and Wide Area Networks / 4.1.7: |
Local Area Networks / 4.1.8: |
Residential Access Networks / 4.1.9: |
Forwarding in Packet-Switched Network / 4.1.10: |
Protocol Control Mechanisms / 4.1.11: |
Internet Addressing / 4.2: |
Internet Address Encoding / 4.2.1: |
Subnetting / 4.2.2: |
Classless IP Addressing / 4.2.3: |
Address Mapping, the Address Resolution Protocol / 4.2.4: |
Static and Dynamic IP Address Assignment / 4.2.5: |
Packet Forwarding in the Internet / 4.2.6: |
Tunneling / 4.2.7: |
Wireless Communication and Host Mobility in Internet / 4.2.8: |
Internet Routing and the Protocol Stack / 4.2.9: |
Autonomous Systems. Hierarchical Routing / 4.3.1: |
Firewalls and Network Security / 4.3.2: |
IP, the Internet Protocol / 4.3.3: |
ICMP, the Internet Control Message Protocol / 4.3.4: |
UDP, the User Datagram Protocol / 4.3.5: |
TCP, the Transport Control Protocol / 4.3.6: |
Congestion Control in TCP / 4.3.7: |
Routing Protocols and Internet Traffic / 4.3.8: |
Quality of Service / 4.4: |
Service Guarantees and Service Models / 4.4.1: |
Flows / 4.4.2: |
Resource Allocation in the Internet / 4.4.3: |
Best-Effort Service Networks / 4.4.4: |
Buffer Acceptance Algorithms / 4.4.5: |
Explicit Congestion Notification (ECN) in TCP / 4.4.6: |
Maximum and Minimum Bandwidth Guarantees / 4.4.7: |
Delay Guarantees and Packet Scheduling Strategies / 4.4.8: |
Constrained Routing / 4.4.9: |
Resource Reservation Protocol (RSVP) / 4.4.10: |
Integrated Services / 4.4.11: |
Differentiated Services / 4.4.12: |
Final Remarks on Internet QoS / 4.4.13: |
From Ubiquitous Internet Services to Open Systems / 4.5: |
The Client-Server Paradigm / 5.1: |
Internet Directory Service / 5.3: |
Electronic Mail / 5.4: |
Overview / 5.4.1: |
Simple Mail Transfer Protocol / 5.4.2: |
Multipurpose Internet Mail Extensions / 5.4.3: |
Mail Access Protocols / 5.4.4: |
The World Wide Web / 5.5: |
HTTP Communication Model / 5.5.1: |
Hypertext Transfer Protocol (HTTP) / 5.5.2: |
Web Server Response Time / 5.5.3: |
Web Caching / 5.5.4: |
Nonpersistent and Persistent HTTP Connections / 5.5.5: |
Web Server Workload Characterization / 5.5.6: |
Scalable Web Server Architecture / 5.5.7: |
Web Security / 5.5.8: |
Reflections on the Web / 5.5.9: |
Multimedia Services / 5.6: |
Sampling and Quantization; Bandwidth Requirements for Digital Voice, Audio, and Video Streams / 5.6.1: |
Delay and Jitter in Data Streaming / 5.6.2: |
Data Streaming / 5.6.3: |
Real-Time Protocol and Real-Time Streaming Protocol / 5.6.4: |
Audio and Video Compression / 5.6.5: |
Open Systems / 5.7: |
Resource Management, Discovery and Virtualization, and Service Composition in an Open System / 5.7.1: |
Mobility / 5.7.2: |
Network Objects / 5.7.3: |
Java Virtual Machine and Java Security / 5.7.4: |
Remote Method Invocation / 5.7.5: |
Jini / 5.7.6: |
Information Grids / 5.8: |
Resource Sharing and Administrative Domains / 5.8.1: |
Services in Information Grids / 5.8.2: |
Service Coordination / 5.8.3: |
Computational Grids / 5.8.4: |
Coordination and Software Agents / 5.9: |
Coordination and Autonomy / 6.1: |
Coordination Models / 6.2: |
Coordination Techniques / 6.3: |
Coordination Based on Scripting Languages / 6.3.1: |
Coordination Based on Shared-Data Spaces / 6.3.2: |
Coordination Based on Middle Agents / 6.3.3: |
Software Agents / 6.4: |
Software Agents as Reactive Programs / 6.4.1: |
Reactivity and Temporal Continuity / 6.4.2: |
Persistence of Identity and State / 6.4.3: |
Autonomy / 6.4.4: |
Inferential Ability / 6.4.5: |
Mobility, Adaptability, and Knowledge-Level Communication Ability / 6.4.6: |
Internet Agents / 6.5: |
Agent Communication / 6.6: |
Agent Communication Languages / 6.6.1: |
Speech Acts and Agent Communication Language Primitives / 6.6.2: |
Knowledge Query and Manipulation Language / 6.6.3: |
FIPA Agent Communication Language / 6.6.4: |
Software Engineering Challenges for Agents / 6.7: |
Knowledge Representation, Inference, and Planning / 6.8: |
Software Agents and Knowledge Representation / 7.1: |
Software Agents as Reasoning Systems / 7.2.1: |
Knowledge Representation Languages / 7.2.2: |
Propositional Logic / 7.3: |
Syntax and Semantics of Propositional Logic / 7.3.1: |
Inference in Propositional Logic / 7.3.2: |
First-Order Logic / 7.4: |
Syntax and Semantics of First-Order Logic / 7.4.1: |
Applications of First-Order Logic / 7.4.2: |
Changes, Actions, and Events / 7.4.3: |
Inference in First-Order Logic / 7.4.4: |
Building a Reasoning Program / 7.4.5: |
Knowledge Engineering / 7.5: |
Knowledge Engineering and Programming / 7.5.1: |
Ontologies / 7.5.2: |
Automatic Reasoning Systems / 7.6: |
Forward- and Backward-Chaining Systems / 7.6.1: |
Frames - The Open Knowledge Base Connectivity / 7.6.3: |
Metadata / 7.6.4: |
Planning / 7.7: |
Problem Solving and State Spaces / 7.7.1: |
Problem Solving and Planning / 7.7.2: |
Partial-Order and Total-Order Plans / 7.7.3: |
Planning Algorithms / 7.7.4: |
Summary / 7.8: |
Middleware for Process Coordination: A Case Study / 7.9: |
The Core / 8.1: |
The Objects / 8.1.1: |
Communication Architecture / 8.1.2: |
Understanding Messages / 8.1.3: |
Security / 8.1.4: |
The Agents / 8.2: |
The Bond Agent Model / 8.2.1: |
Communication and Control. Agent Internals / 8.2.2: |
Agent Description / 8.2.3: |
Agent Transformations / 8.2.4: |
Agent Extensions / 8.2.5: |
Applications of the Framework / 8.3: |
Adaptive Video Service / 8.3.1: |
Web Server Monitoring and Benchmarking / 8.3.2: |
Agent-Based Workflow Management / 8.3.3: |
Other Applications / 8.3.4: |
Glossary / 8.4: |
Index |