You are previewing Fundamentals of Mobile and Pervasive Computing.
O'Reilly logo
Fundamentals of Mobile and Pervasive Computing

Book Description

The authoritative, general reference that has been sorely missing in the field of mobile computing

This book teaches all the main topics via the hottest applications in a rapidlygrowing field.

  • "Big picture" explanations of ad hoc networks and service discovery
  • Exercises, projects, and solutions to illustrate core concepts
  • Extensive wireless security methodologies
  • Table of Contents

    1. Cover page
    2. Fundamentals of Mobile and Pervasive Computing
    3. Copyright Page
    4. Dedication
    5. Contents
    6. Preface
    7. Acknowledgments
    8. Chapter 1. Mobile Adaptive Computing
      1. 1.1 What Is Mobile Computing?
      2. 1.2 Adaptability-The Key to Mobile Computing
        1. 1.2.1 Transparency
        2. 1.2.2 Constraints of mobile computing environments
        3. 1.2.3 Application-aware adaptation
      3. 1.3 Mechanisms for Adaptation
        1. 1.3.1 Adapting functionality
        2. 1.3.2 Adapting data
      4. 1.4 How to Develop or Incorporate Adaptations in Applications
        1. 1.4.1 Where can adaptations be performed?
      5. 1.5 Support for Building Adaptive Mobile Applications
        1. 1.5.1 Odyssey
        2. 1.5.2 Rover
      6. 1.6 Summary
    9. Chapter 2. Mobility Management
      1. 2.1 Mobility Management
      2. 2.2 Location Management Principles and Techniques
        1. 2.2.1 Registration area-based location management
      3. 2.3 Location Management Case Studies
        1. 2.3.1 PCS location management scheme
        2. 2.3.2 Mobile IP
      4. 2.4 Summary
    10. Chapter 3. Data Dissemination and Management
      1. 3.1 Challenges
      2. 3.2 Data Dissemination
        1. 3.2.1 Bandwidth allocation for publishing
        2. 3.2.2 Broadcast disk scheduling
      3. 3.3 Mobile Data Caching
        1. 3.3.1 Caching in traditional distributed systems
        2. 3.3.2 Cache consistency maintenance
        3. 3.3.3 Performance and architectural issues
      4. 3.4 Mobile Cache Maintenance Schemes
        1. 3.4.1 A taxonomy of cache maintenance schemes
        2. 3.4.2 Cache maintenance for push-based information dissemination
        3. 3.4.3 Broadcasting invalidation reports
        4. 3.4.4 Disconnected operation
        5. 3.4.5 Asynchronous stateful (AS) scheme
        6. 3.4.6 To cache or not to cache?
      5. 3.5 Mobile Web Caching
        1. 3.5.1 Handling disconnections
        2. 3.5.2 Achieving energy and bandwidth efficiency
      6. 3.6 Summary
    11. Chapter 4. Context-Aware Computing
      1. 4.1 Ubiquitous or Pervasive Computing
      2. 4.2 What Is a Context? Various Definitions and Types of Contexts
        1. 4.2.1 Enumeration-based
        2. 4.2.2 Role-based
      3. 4.3 Context-Aware Computing and Applications
        1. 4.3.1 Core capabilities for context awareness
        2. 4.3.2 Types of context-aware applications
        3. 4.3.3 Developing context-aware applications
      4. 4.4 Middleware Support
        1. 4.4.1 Contextual services
        2. 4.4.2 Actuator service
        3. 4.4.3 An example: context toolkit
        4. 4.4.4 Providing location context
      5. 4.5 Summary
    12. Chapter 5. Introduction to Mobile Middleware
      1. 5.1 What Is Mobile Middleware?
      2. 5.2 Adaptation
      3. 5.3 Agents
      4. 5.4 Service Discovery
    13. Chapter 6. Middleware for Application Development: Adaptation and Agents
      1. 6.1 Adaptation
        1. 6.1.1 The spectrum of adaptation
        2. 6.1.2 Resource monitoring
        3. 6.1.3 Characterizing adaptation strategies
        4. 6.1.4 An application-aware adaptation architecture: Odyssey
        5. 6.1.5 A sample Odyssey application
        6. 6.1.6 More adaptation middleware
      2. 6.2 Mobile Agents
        1. 6.2.1 Why mobile agents? And why not?
        2. 6.2.2 Agent architectures
        3. 6.2.3 Migration strategies
        4. 6.2.4 Communication strategies
      3. 6.3 Summary
    14. Chapter 7. Service Discovery Middleware: Finding Needed Services
      1. 7.1 Common Ground
      2. 7.2 Services
        1. 7.2.1 Universally unique identifiers
        2. 7.2.2 Standardization
        3. 7.2.3 Textual descriptions
        4. 7.2.4 Using interfaces for standardization
      3. 7.3 More on Discovery and Advertisement Protocols
        1. 7.3.1 Unicast discovery
        2. 7.3.2 Multicast discovery and advertisement
        3. 7.3.3 Service catalogs
      4. 7.4 Garbage Collection
        1. 7.4.1 Leasing
        2. 7.4.2 Advertised expirations
      5. 7.5 Eventing
      6. 7.6 Security
        1. 7.6.1 Jini
        2. 7.6.2 Service location protocol
        3. 7.6.3 Ninja
      7. 7.7 Interoperability
        1. 7.7.1 Interoperability success stories
      8. 7.8 Summary
    15. Chapter 8. Introduction to Ad Hoc and Sensor Networks
      1. 8.1 Overview
        1. 8.1.1 Outline of chapter
      2. 8.2 Properties of an Ad Hoc Network
        1. 8.2.1 No preexisting infrastructure
        2. 8.2.2 Limited access to a base station
        3. 8.2.3 Power-limited devices
        4. 8.2.4 No centralized mechanisms
      3. 8.3 Unique Features of Sensor Networks
        1. 8.3.1 Direct interaction with the physical world
        2. 8.3.2 Usually special-purpose devices
        3. 8.3.3 Very limited resources
        4. 8.3.4 Operate without a human interface
        5. 8.3.5 Specialized routing patterns
      4. 8.4 Proposed Applications
        1. 8.4.1 Military applications
        2. 8.4.2 Medical applications
        3. 8.4.3 Industrial applications
        4. 8.4.4 Environmental applications
        5. 8.4.5 Other application domains
    16. Chapter 9. Challenges
      1. 9.1 Constrained Resources
        1. 9.1.1 No centralized authority
        2. 9.1.2 Limited power
        3. 9.1.3 Wireless communication
        4. 9.1.4 Limited computation and storage
        5. 9.1.5 Storage constraints
        6. 9.1.6 Limited input and output options
      2. 9.2 Security
        1. 9.2.1 Small keys
        2. 9.2.2 Limited computation
        3. 9.2.3 Changing network membership
        4. 9.2.4 Arbitrary topology
      3. 9.3 Mobility
        1. 9.3.1 Mobility requirements
        2. 9.3.2 Loss of connectivity
        3. 9.3.3 Data loss
        4. 9.3.4 Group communication
        5. 9.3.5 Maintaining consistent views
      4. 9.4 Summary
    17. Chapter 10. Protocols
      1. 10.1 Autoconfiguration
        1. 10.1.1 Neighborhood discovery
        2. 10.1.2 Topology discovery
        3. 10.1.3 Medium access control schedule construction
        4. 10.1.4 Security protocol configuration
      2. 10.2 Energy-Efficient Communication
        1. 10.2.1 Multihop routing
        2. 10.2.2 Communication scheduling
        3. 10.2.3 Duplicate message suppression
        4. 10.2.4 Message aggregation
        5. 10.2.5 Dual-radio scheduling
        6. 10.2.6 Sleep-mode scheduling
        7. 10.2.7 Clustering
      3. 10.3 Mobility Requirements
        1. 10.3.1 Movement detection
        2. 10.3.2 Patterns of movement
        3. 10.3.3 Changing group dynamics
        4. 10.3.4 Resynchronization
      4. 10.4 Summary
    18. Chapter 11. Approaches and Solutions
      1. 11.1 Deployment and Configuration
        1. 11.1.1 Random deployment
        2. 11.1.2 Scalability
        3. 11.1.3 Self-organization
        4. 11.1.4 Security protocol configuration
        5. 11.1.5 Reconfiguration/redeployment
        6. 11.1.6 Location determination
      2. 11.2 Routing
        1. 11.2.1 Event-driven routing
        2. 11.2.2 Periodic sensor readings
        3. 11.2.3 Diffusion routing
        4. 11.2.4 Directional routing
        5. 11.2.5 Group communication
        6. 11.2.6 Synchronization
      3. 11.3 Fault Tolerance and Reliability
        1. 11.3.1 FEC and ARQ
        2. 11.3.2 Agreement among sensor nodes (Reliability of measurements)
        3. 11.3.3 Dealing with dead or faulty nodes
      4. 11.4 Energy Efficiency
        1. 11.4.1 Uniform power dissipation
        2. 11.4.2 Sensor component power management
        3. 11.4.3 MAC layer protocols
        4. 11.4.4 Tradeoffs between performance and energy efficiency
      5. 11.5 Summary
    19. Chapter 12. Wireless Security
      1. 12.1 Traditional Security Issues
        1. 12.1.1 Integrity
        2. 12.1.2 Confidentiality
        3. 12.1.3 Nonrepudiation
        4. 12.1.4 Availability
      2. 12.2 Mobile and Wireless Security Issues
        1. 12.2.1 Detectability
        2. 12.2.2 Resource depletion/exhaustion
        3. 12.2.3 Physical intercept problems
        4. 12.2.4 Theft of service
        5. 12.2.5 War driving/walking/chalking
      3. 12.3 Mobility
      4. 12.4 Problems in Ad Hoc Networks
        1. 12.4.1 Routing
        2. 12.4.2 Prekeying
        3. 12.4.3 Reconfiguring
        4. 12.4.4 Hostile environment
      5. 12.5 Additional Issues: Commerce
        1. 12.5.1 Liability
        2. 12.5.2 Fear, uncertainty, and doubt
        3. 12.5.3 Fraud
        4. 12.5.4 Big bucks at stake
      6. 12.6 Additional Types of Attacks
        1. 12.6.1 "Man in the middle" attacks
        2. 12.6.2 Traffic analysis
        3. 12.6.3 Replay attacks
        4. 12.6.4 Buffer-overflow attacks
      7. 12.7 Summary
    20. Chapter 13. Approaches to Security
      1. 13.1 Limit the Signal
        1. 13.1.1 Wire integrity and tapping
        2. 13.1.2 Physical limitation
      2. 13.2 Encryption
        1. 13.2.1 Public and private key encryption
        2. 13.2.2 Computational and data overhead
      3. 13.3 Integrity Codes
        1. 13.3.1 Checksum versus cryptographic hash
        2. 13.3.2 Message authentication code (MAC)
        3. 13.3.3 Payload versus header
        4. 13.3.4 Traffic analysis
      4. 13.4 IPSec
        1. 13.4.1 Authentication header (AH)
        2. 13.4.2 Encapsulating security payload (ESP)
      5. 13.5 Other Security-Related Mechanisms
        1. 13.5.1 Authentication protocols
        2. 13.5.2 AAA
        3. 13.5.3 Special hardware
      6. 13.6 Summary
    21. Chapter 14. Security in Wireless Personal Area Networks
      1. 14.1 Basic Idea
        1. 14.1.1 Bluetooth specifications
        2. 14.1.2 Bluetooth network terms
        3. 14.1.3 Bluetooth security mechanisms
      2. 14.2 Bluetooth Security Modes
      3. 14.3 Basic Security Mechanisms
        1. 14.3.1 Initialization key
        2. 14.3.2 Unit key
        3. 14.3.3 Combination key
        4. 14.3.4 Master key
      4. 14.4 Encryption
      5. 14.5 Authentication
      6. 14.6 Limitations and Problems
      7. 14.7 Summary
    22. Chapter 15. Security in Wireless Local Area Networks
      1. 15.1 Basic Idea
      2. 15.2 Wireless Alphabet Soup
      3. 15.3 Wired-Equivalent Privacy (WEP)
        1. 15.3.1 WEP goals
        2. 15.3.2 WEP data frame
        3. 15.3.3 WEP encryption
        4. 15.3.4 WEP decryption
        5. 15.3.5 WEP authentication
        6. 15.3.6 WEP flaws
        7. 15.3.7 WEP fixes
      4. 15.4 WPA
      5. 15.5 802.11i
        1. 15.5.1 Encryption protocols
        2. 15.5.2 Access control via 802.1x
      6. 15.6 Fixes and "Best Practices"
        1. 15.6.1 Anything is better than nothing
        2. 15.6.2 Know thine enemy
        3. 15.6.3 Use whatever wireless security mechanisms are present
        4. 15.6.4 End-to-end VPN
        5. 15.6.5 Firewall protection
        6. 15.6.6 Use whatever else is available
      7. 15.7 Summary
    23. Chapter 16. Security in Wireless Metropolitan Area Networks (802.16)
      1. 16.1 Broadband Wireless Access
      2. 16.2 IEEE 802.16
      3. 16.3 802.16 Security
        1. 16.3.1 Key management
        2. 16.3.2 Security associations
        3. 16.3.3 Keying material lifetime
        4. 16.3.4 Subscriber station (SS) authorization
        5. 16.3.5 Encryption
      4. 16.4 Problems and Limitations
      5. 16.5 Summary
    24. Chapter 17. Security in Wide Area Networks
      1. 17.1 Basic Idea
      2. 17.2 CDMA
      3. 17.3 GSM
        1. 17.3.1 GSM authentication
        2. 17.3.2 GSM encryption
      4. 17.4 Problems with GSM Security
        1. 17.4.1 Session life
        2. 17.4.2 Weak encryption algorithm
        3. 17.4.3 Encryption between mobile host and base station only
        4. 17.4.4 Limits to the secret key
        5. 17.4.5 Other problems
      5. 17.5 The Four Generations of Wireless: 1G-4G
      6. 17.6 3G
      7. 17.7 Limitations
      8. 17.8 Summary
    25. Appendix A Brief Introduction to Wireless Communication and Networking
    26. Appendix B Questions
    27. Index
    28. About the author
    29. Footnote
      1. pg201