Skip to content

Mohsen Banan Portal

Personal tools
You are here: Home » PLPC » PLPC-120021: Internetwork Mobility: The CDPD Approach

PLPC-120021: Internetwork Mobility: The CDPD Approach

Internetwork Mobility -- The CDPD Approach

Document Number: PLPC-120021   [ .bib ]
Version: 0.1
Dated: December 20, 2007
Group: teleCommunications
Primary URL: http://mohsen.banan.1.byname.net/PLPC/120021
Author(s): Mohsen BANAN

SHORT DESCRIPTION

This book was originally published by Prentice Hall. Got the copyrights back and republsihed here.

AVAILABLE FORMATS

  • PDF: -- 1.9M -- Provides the document in Portable Document Format.
  • PS: -- 35M -- Provides the document in Postscript format for printing.
  • HTML: -- 5.7M -- Displays the document as a web page.

FULL INLINE DOCUMENT

Internetwork Mobility The CDPD Approach Mark S. Taylor William Waung Mohsen Banan

Internetwork Mobility
The CDPD Approach
Mark S. Taylor
William Waung
Mohsen Banan


June 11, 1996
This book was previously published by: Pearson Education, Inc.
Verbatim Copying Permitted. Permission is granted to make and distribute verbatim copies of this document.

About Electronic Publication of this Book

The book entitled ”Internetwork Mobility: The CDPD Approach” was first published by Prentice-Hall in 1996 (ISBN 0-13-209693-5). The authors of this book recently requested and were granted reversion of publishing rights by Pearson Education, Inc. (formerly known as Prentice-Hall), and are now pleased to make the entire 300-page book freely available in electronic form on the LEAP Forum website at
http://www.leapforum.org/published/internetworkMobility/index.html.

All three authors of the book (Mark Taylor, William Waung, Mohsen Banan) were also designers and authors of the original CDPD specifications. For this reason the book stands out among a large field of CDPD-related publications, and is often cited as the authoritative CDPD text.

The complete book is available in several alternative formats at the above site, including HTML, PDF and PostScript. It may be downloaded by any interested person without restriction, and verbatim copying and re-distribution of the book is permitted. No future revisions or updates to the book are anticipated.

The distribution of the book in this way conforms to my general philosophy regarding openness and freedom of access to information. I believe that this brings the greatest benefits to society, and most of my work is published in the same way. I encourage others to adopt similar policies with regard to their own written materials.

I hope you find the book useful. Please feel free to forward this announcement to others who may be interested.

Mohsen Banan
August 20th, 2001

Contents

1 Introduction to Mobility
 1.1 What is Mobility?
 1.2 Basic Approaches to Mobility
  1.2.1 Approach 1: Application Awareness
  1.2.2 Approach 2: Directory Lookup
  1.2.3 Approach 3: Mailbox Service
  1.2.4 Approach 4: Administrative Redirection
 1.3 Aspects of Mobile Communications
  1.3.1 Mobile Network Access
  1.3.2 Mobility Management
 1.4 The Essential Challenge of Mobility Management
  1.4.1 Knowing Where the Mobile is
  1.4.2 Routing Data to the Mobile
 1.5 Mobility Management is a Network Layer Function
  1.5.1 Network Layer Addresses
  1.5.2 Network Topology Changes
  1.5.3 Routing Table Updates
 1.6 Mobility Management Schemes
  1.6.1 Permanent Address Scheme (PAS)
  1.6.2 Temporary Address Scheme (TAS)
  1.6.3 Embedded Network Scheme (ENS)
 1.7 Steps in the Mobility Management Process
  1.7.1 Registration
  1.7.2 Usage
  1.7.3 De-registration
 1.8 A Simple Taxonomy of Mobility
  1.8.1 Type 0 Mobility: Stationarity
  1.8.2 Type 1 Mobility: Location Independence
  1.8.3 Type 2 Mobility: Transience
 1.9 Range of Mobility
  1.9.1 Channel
  1.9.2 Cell
  1.9.3 Mobility Area
  1.9.4 Administrative Domain
 1.10 Mobility is not Wirelessness
  1.10.1 Wireless Considerations
 1.11 Challenges of Mobility
  1.11.1 Geography vs. Network Topology
  1.11.2 Part-time Destinations
  1.11.3 Moving Targets
  1.11.4 Application Transparency
  1.11.5 Name-to-Address Mapping
  1.11.6 Security
  1.11.7 Scale
 1.12 Summary
2 Introduction to Cellular Systems
 2.1 The Ubiquity of Cellular
 2.2 Radio Channels
 2.3 The Cellular Concept
 2.4 Cell Handoff
 2.5 Cellular Channel Quality
 2.6 Power Control
 2.7 Advanced Mobile Phone System (AMPS)
  2.7.1 AMPS Channels
  2.7.2 Roaming
  2.7.3 AMPS Cellular Operation
  2.7.4 AMPS Mobile Call Origination
  2.7.5 AMPS Mobile Call Termination
  2.7.6 AMPS Radio Resource Management (RRM)
  2.7.7 AMPS Mobility Management
 2.8 Data Transmission via AMPS
 2.9 Digital Cellular Technologies
 2.10 Europe: GSM and DCS 1800
 2.11 Japan: PDC
 2.12 North American Digital Standards
 2.13 TDMA (IS-54/13x)
 2.14 CDMA (IS-95,99)
 2.15 PCS: Back to the Future?
  2.15.1 PCS Licensing
  2.15.2 PCS Standards
  2.15.3 PCS Challenges
 2.16 Summary
3 Overview of CDPD
 3.1 CDPD Background
  3.1.1 CDPD Prototypes
  3.1.2 ”CDPD Lite”
  3.1.3 CDPD Forum
  3.1.4 CDPD Service Providers
 3.2 Relationship of CDPD to other Cellular Data Initiatives
 3.3 CDPD Services and Characteristics
  3.3.1 CDPD Network Services
  3.3.2 CDPD Network Support Services
  3.3.3 CDPD Network Application Services
 3.4 CDPD Design Goals and Considerations
  3.4.1 Location Independence
  3.4.2 Application Transparency
  3.4.3 Multiprotocol Support
  3.4.4 Interoperability
  3.4.5 Minimal Invention
  3.4.6 Optimal Usage of RF
  3.4.7 Evolutionary Design
  3.4.8 Open
  3.4.9 Secure
  3.4.10 Simple
  3.4.11 Transparent to the Existing Cellular Voice Network
 3.5 The CDPD Architectural Approach
 3.6 The Three Key CDPD Interfaces
  3.6.1 The A-Interface
  3.6.2 The E-Interface
  3.6.3 The I-Interface
 3.7 CDPD Network Elements
  3.7.1 The Mobile End System (M-ES)
  3.7.2 The Mobile Data Base Station (MDBS)
  3.7.3 The Mobile Data Intermediate System (MD-IS)
  3.7.4 The Intermediate System (IS)
  3.7.5 The Fixed End System (F-ES)
 3.8 CDPD Mobility Management
 3.9 CDPD Radio Resource Management
 3.10 CDPD Security
 3.11 CDPD Accounting
 3.12 Summary
4 Mobility Management in Wide-Area Networks
 4.1 The CDPD Mobility Vision
 4.2 The CDPD Mobility Approach
 4.3 CDPD Mobility Management Scope
 4.4 CDPD Mobility Management Functions
 4.5 CDPD Routing Architecture
 4.6 CDPD Protocol Architecture
 4.7 CDPD Support Protocol Architecture
 4.8 CDPD Mobility Management Operation
  4.8.1 Mobile Identification to Network - End System Hello (ESH)
  4.8.2 Mobile Redirection Request (RDR)
  4.8.3 Confirmation of service - Redirect Confirm (RDC)
  4.8.4 Confirmation to M-ES - Intermediate System Confirm (ISC)
 4.9 CDPD Mobile Data Routing
  4.9.1 Home MD-IS
  4.9.2 Serving MD-IS
 4.10 Intra-Area Mobility
 4.11 Inter-area Mobility
 4.12 Other Administrative Operations
  4.12.1 Redirect Flush
  4.12.2 Redirect Query and End System Query
 4.13 Support Data Structures
  4.13.1 Home Domain Directory
  4.13.2 Registration Directory
  4.13.3 Location Directory
 4.14 Multicast Group Management
  4.14.1 CDPD Multicast Service Definition
  4.14.2 Multicast Registration
  4.14.3 Multicast Authentication
  4.14.4 Multicast Data Redirection
  4.14.5 Multicast Data Forwarding
  4.14.6 Multicast Service Characteristics
 4.15 Broadcast Addresses
 4.16 Selection rationale
  4.16.1 CLNP
  4.16.2 Triangle routing
 4.17 Summary
5 Accessing the Mobile Network
 5.1 The A-Interface
 5.2 The Airlink Physical Layer
 5.3 Shared Channel Environment
  5.3.1 Approach 1 - Token Passing
  5.3.2 Approach 2 - Demand Assigned with Reservation
  5.3.3 Approach 3 - Slotted Aloha
  5.3.4 Approach 4 - Carrier Sense Multiple Access with Collision Detection (CSMA/CD)
 5.4 The Airlink MAC Sublayer
  5.4.1 Reed-Solomon Blocks
  5.4.2 Busy/Idle Indicator
  5.4.3 Decode Status Flag
 5.5 M-ES State Machine
 5.6 Airlink MAC Parameters
  5.6.1 Min_Idle_Time
  5.6.2 Min_count and Max_count
  5.6.3 Max_blocks Parameter
 5.7 Half Duplex Mobiles
 5.8 The Airlink Data Link Protocol
  5.8.1 Selective Reject
  5.8.2 Removal of CRC
  5.8.3 Addition of ZAP
  5.8.4 Sleep mode
 5.9 SNDCF - Protocol Convergence
  5.9.1 Segmentation and Reassembly
  5.9.2 Multiplexing
  5.9.3 Header Compression
  5.9.4 V.42
  5.9.5 Data Encryption
 5.10 How Data Moves Through Layers.
  5.10.1 Radio Resource Management
 5.11 Channel Hopping
 5.12 Circuit Switch Cellular Digital Packet Data
  5.12.1 Circuit Switch CDPD Control Protocol
 5.13 Summary
6 Mobile Data Network Security
 6.1 Introduction
 6.2 Security Policy
 6.3 Security Threats
 6.4 Security Services and Mechanisms
  6.4.1 Encipherment and Data Confidentiality
  6.4.2 Digital Signatures
  6.4.3 Authentication
  6.4.4 Traffic Flow Confidentiality
  6.4.5 Data Integrity
  6.4.6 Key Management
  6.4.7 Access Control
  6.4.8 Network Layer Security Considerations
 6.5 CDPD Security
  6.5.1 CDPD Security Design Goals and Tradeoffs
  6.5.2 CDPD Authentication
  6.5.3 CDPD Confidentiality
  6.5.4 CDPD Privacy
 6.6 CDPD Security Design Rationale
  6.6.1 CDPD Security Objectives
  6.6.2 One-Way vs. Two-Way Authentication
  6.6.3 The Tunnel’s Data Confidentiality and Authentication
  6.6.4 Considerations for Use of PKCS
  6.6.5 Consideration of Other Approaches
  6.6.6 End to end security services
7 Mobile Network Support Services
 7.1 Support Services Overview
 7.2 CDPD Support Services
 7.3 Network Management
  7.3.1 Overview of System Management Framework
  7.3.2 Systems Management Functional Areas
  7.3.3 Relationship of Management Specifications to Functional Areas
  7.3.4 CDPD Network Management
 7.4 Usage Accounting
  7.4.1 CDPD Usage Accounting
  7.4.2 The CDPD Accounting Model
  7.4.3 Accounting Meter
  7.4.4 Serving Accounting Distributor (SAD)
  7.4.5 Home Accounting Distributor (HAD)
  7.4.6 Home Accounting Collector (HAC)
  7.4.7 Consolidation Accounting Collector (CAC)
 7.5 Message Handling Service
  7.5.1 Overview of Message Handling Services
  7.5.2 Message Structure
  7.5.3 Message Transfer Agent (MTA)
  7.5.4 User Agent (UA)
  7.5.5 Message Store (MS)
 7.6 Directory Services
  7.6.1 The Directory
  7.6.2 The Directory Model
  7.6.3 The CDPD Directory Service
 7.7 Summary
8 Mobile Applications
 8.1 Categories of Mobile Applications
  8.1.1 Push or Pull: Mobile Application Information Access
  8.1.2 Vertical or Horizontal Nature of Mobile Applications
 8.2 Vertical Applications
  8.2.1 Field Service
  8.2.2 Mobile Professional
  8.2.3 Transportation
  8.2.4 Point-of-Sale (POS)
  8.2.5 Telemetry
  8.2.6 Government
 8.3 Horizontal Applications
  8.3.1 Messaging and Email
  8.3.2 Limited Size Messaging
 8.4 Applications-Enabling Protocols
  8.4.1 Limited Size Remote Operation Service (LSROS)
  8.4.2 Status Notification Service
  8.4.3 Subscriber Area Location Service
9 Non-Cellular Approaches to Mobile Data Networking
 9.1 Background
 9.2 Wireless LANs and Metropolitan Networks
  9.2.1 Infrared Systems
  9.2.2 Narrowband RF Systems
  9.2.3 Spread Spectrum Systems
  9.2.4 Metricom Ricochet
 9.3 Paging Systems
  9.3.1 One-Way Paging Systems
  9.3.2 Two-Way Paging Systems
 9.4 Private Wireless Packet Data Systems
 9.5 Public Wireless Packet Data Services
  9.5.1 Advanced Radio Data Integrated System (Ardis)
  9.5.2 RAM Mobile Data (Mobitex)
  9.5.3 RadioMail
 9.6 Satellite-Based Systems
 9.7 Summary
10 Future Directions in Mobility
 10.1 Mobility under IPv4
  10.1.1 The Mobile IP Standards Process
  10.1.2 Overview of Draft Version 16 of the IETF IP Mobility Support
  10.1.3 Implementations Based on Mobile IP Drafts
 10.2 Mobility under IPv6
  10.2.1 The IPv6 Standards Process
  10.2.2 Overview of Mobility Support in IPv6
 10.3 Comparison of Mobile IP and CDPD
  10.3.1 Objectives, Goals and Assumptions
  10.3.2 Technical Architecture and Design
  10.3.3 Model and Terminology
  10.3.4 Operational Assumptions
  10.3.5 Standardization Process
  10.3.6 Potentials
A Glossary of Terms
B Bibliography

List of Figures

Basic Communication Model
Indirect Message Conveyance
ARQ Message Acknowledgment
Windowing-Based Message Acknowledgement
Ethernet MAC System
Token Ring MAC System
Network Layer “Cloud” Diagram
Layer (N) Protocol Primitives
Protocol and Service Data Units
10 Roles in Mobility and Message Flow
11 Directions of Mobile Transmission
1.1 The Application Awareness Approach to Mobility
1.2 The Directory Lookup Approach to Mobility
1.3 The Mailbox Service Approach to Mobility
1.4 The Administrative Redirection Approach to Mobility
1.5 Two Basic Aspects of Mobile Communications
1.6 IP Network Address
1.7 Conventional Data Network Routing
1.8 Permanent Address Scheme (PAS)
1.9 Temporary Address Scheme (TAS)
1.10 Embedded Network Scheme (ENS)
1.11 Packet Encapsulation in CDPD
1.12 Address Substitution in Mobile IPX
1.13 The Mobility Cube
1.14 Range of Mobility
1.15 Radio Frequency Spectrum
1.16 The Protocol Hour-Glass
2.1 AMPS Architecture
2.2 Frequency Reuse
2.3 Cell Handoff Strategies
2.4 MCI’s Xstream Air Network
2.5 Time vs. Frequency for an FDMA System (e.g., AMPS)
2.6 Time vs. Frequency for a TDMA System (e.g., IS-54/136)
2.7 Time vs. Frequency for a FH-CDMA System
2.8 Time vs. Frequency for a DS-CDMA System (e.g., IS-95)
2.9 LAPDm Frame Format
2.10 LAPDm Address Field
3.1 CDPD coverage at year-end 1995
3.2 The CDPD System
3.3 CDPD Interface Model
3.4 CDPD Network Layer Reference Model
3.5 CDPD Example Interface Profiles for Network Services
3.6 CDPD Network Elements
3.7 CDPD Reference Architecture
3.8 Mobile End System Architecture
3.9 CDPD Traffic Flows
4.1 CDPD Cellular Network Overlay
4.2 CDPD Network Routing Architecture
4.3 CDPD Protocol Architecture
4.4 CDPD Support Protocol Architecture
4.5 M-ES Registration
4.6 End System Hello (ESH) Message Format
4.7 Redirect Request (RDR) Message Format
4.8 Redirect Confirm (RDC) Message Format
4.9 MD-IS Hello Confirm (ISC) Message Format
4.10 Home MD-IS and serving MD-IS
4.11 CDPD Data Routing
4.12 Intra-area Mobility
4.13 Intra-area Cell Transfer Protocol Events
4.14 Inter-area Mobility
4.15 Inter-area Cell Transfer Protocol Events
4.16 Redirect Flush (RDF) Message Format
4.17 Configuration Timer Expiry Protocol Events
4.18 Redirect Query Protocol Events
4.19 Example Home Domain Directory–Initial State
4.20 Example Home Domain Directory–Updated State
4.21 Registration Directory
4.22 Location Directory
4.23 Multicast Data Redirection and Forwarding
5.1 Airlink Protocol Profile
5.2 Physical RF channels
5.3 Token Passing Networks
5.4 Time Based Demand Assigned with Reservation Example
5.5 Frequency Based Demand Assigned with Reservation Example
5.6 Forward Channel Transmission Structure
5.7 M-ES Procedure for Reverse Channel Access
5.8 Reverse Channel Transmission Structure
5.9 Decode Status Flag Timing Relationship
5.10 MDLP Frame Format
5.11 Overview of States of the Point-to-Point Procedures
5.12 Sleep Mode Operation
5.13 Encoding of SN-Data PDU
5.14 Encoding of SN-Unitdata PDU
5.15 Encoding of Compressed TCP/IP Protocol Header
5.16 Typical Uncompressed CLNP PDU Header
5.17 Encoding of Compressed CLNP Header
5.18 SNDCP Model for use of Acknowledged Data Link Services
5.19 Packet Transformation Data Flow
5.20 Theoritical Cell Selection
5.21 Example of Absolute Received Signal Strength Based Selection
5.22 Example of Comparative Received Signal Strength Selection
5.23 Example of Hysteresis Region of 10 dB
5.24 Example of Received Signal Strength Parameter of -10 dB
5.25 Channel Stream Identification Message
5.26 Cell Configuration Message
5.27 Channel Quality Parameters Message
5.28 Channel Access Parameters Message
5.29 Cellular Channel Assignment
5.30 Channel Hopping example
5.31 Circuit Switched CDPD Components
5.32 CM-ES Initial Connection
5.33 CM-ES Initiated Reconnection
5.34 CMD-IS Initiated Reconnection
5.35 Redirect to Local Modem Bank
5.36 Redirect to Local CMD-IS
5.37 CSCCP Link Reset Procedure
6.1 A Public Key Cryptographic System (PKCS)
6.2 A Digital Signature Mechanism
6.3 CDPD Security Protocol Events
6.4 CDPD Key Exchange
7.1 CDPD Network Management Model
7.2 CDPD Accounting Model
7.3 Message Structure
7.4 MHS Architecture
7.5 Directory and Users
7.6 Directory Model
8.1 LSM World with Global Messaging World
8.2 Messaging Communication Stack and LSM
8.3 Status Notification System Architecture
8.4 Example of messaging to an OC-ES
8.5 CDPD Subscriber Area Location Service
9.1 Metricom Ricochet
9.2 Telocator Data Protocol
9.3 ARDIS Architecture
9.4 ARDIS Communications Architecture
9.5 RAM Architecture
9.6 Mobitex Communications Architecture
10.1 Mobile IP Routing to Mobile Node
10.2 Mobile IP Routing to Correspondent Node

List of Tables

Preface

This book discusses user mobility in a wide area network (WAN) environment. In this discussion, a mobile data device is one which can receive WAN services from essentially any location without requiring any special actions by the user of the device. User mobility is described in the context of the Cellular Digital Packet Data (CDPD) standard, developed by ourselves and others on behalf of the North American cellular industry.

Two trends provide a backdrop for this subject matter. The first of these is the rapid growth of the Internet1 . Both in terms of numbers of users and traffic, this growth has been nothing short of phenomenal. What was once strictly the domain of highly technically-literate people has now become headline news. Censorship of the World-Wide Web is now discussed by politicians and URLs are commonly displayed in advertisements.

The popularity of the Internet reflects a change in the media of choice for people wishing to communicate. Email allows the thoughtfulness of a letter while providing the potential immediacy of the telephone. Complex ideas can be conveyed in an organized manner, then further developed by the receiving party. Several rounds of a discussion can take place in a matter of minutes, quickly resolving issues that might be difficult to present orally. The CDPD specification was itself rapidly developed by remote parties largely via Email discussion.

The second trend is that of mobile communications. The cellular industry is experiencing explosive growth, with over 32 million subscribers in North America at year-end 1995. The paging industry has also experienced rapid growth; the advent of new two-way messaging services is likely to extend that growth in the face of competition from low cost (to the subscriber) mobile cellular handsets.

The next step in this evolution of communications is that of mobile data communications. Mobile data is expected to grow from 200 thousand subscribers in 1990 and 1.1 million in mid1995, to 5.2 million subscribers in 2000.2 Several technology developments aimed at mobile data communications are in various stages of progress or completion.

The Mobile IP Task Force of the IETF has been addressing the requirements for mobility in data communications. Their charter is to define the protocols necessary for a correspondent to send and receive data anywhere. The media to be used is unspecified. Presumably one will in the future be able to find an Internet ”socket” in the wall of a hotel room as readily as they currently find electrical outlets. However, many ”real world” considerations such as usage accounting remain unaddressed by this group.

The Ram and ARDIS mobile data services, supported by RadioMail, provide gateway connections between proprietary radio technology and the Internet or other wide-area networks. However, the need to port applications to nonstandard proprietary mobile devices and APIs limits the generality and user adoption of these service offerings.

Rather than using gateways between proprietary radio technology and the Internet, CDPD defines an open standard which allows mobile devices to be as directly accessible as any other IP host. Standard APIs allow the immediate use of current data applications such as Email on mobile devices. We have done this many times.

This book is intended to complement the CDPD specification but not replace it. Our emphasis is on the data networking aspects of CDPD and its solution to the mobility problem. CDPD is a data network which happens to have an RF-based data link resembling Ethernet (but at a lower speed). The fixed end of the radio link, called the Mobile Data Base Station or MDBS, is little more than a LAN hub from a data networking perspective.

This book is clearly focused on CDPD as the preeminent wide area mobile data solution. We don’t apologize for our bias–we were highly involved in the creation of CDPD. However, no system or technology lasts forever; one of our design goal was that CDPD be readily amenable to evolution. CDPD is much more than an airlink–it is an architecture that supports host mobility over a wide area.

The chapters which follow describe the CDPD solution to the challenge of mobility in wide-area networks. A discussion of mobility (of which wirelessness is a special case) is followed by a summary of cellular technology, an overview of CDPD, a description of CDPD architecture and how it supports mobility, a description of security and other support services provided by CDPD (and needed by any public mobile data network!), a survey of other (noncellular) mobile systems and finally, a discussion of future directions in mobility in the wide-area environment. For readers unfamiliar with data networking concepts, a primer on this subject precedes the first chapter.

The target audience for this book is any individual interested in mobile data communications or, more specifically, the rationale behind the design of CDPD. The discussion of technical issues avoids the jargon and abstractions necessary and typical in technical specifications. Because we are not radio engineers, we focus on the system and networking aspects of CDPD rather than the radio technologies, which are better described elsewhere. Our goal is to explain mobility and CDPD in plain English. Please let us know whether we succeeded at mark.taylor@airdata.com, wwaung@direct.ca and mohsen@neda.com.

Bellevue, Washington

June 11, 1996

Preliminaries

Basically, one always gets into trouble trying to define these things too precisely because they aren’t really clean concepts.

–Radia Perlman, 1996.

This chapter introduces some of the standard data networking terminology and concepts used throughout this book. Those readers already familiar with data networking technology could begin with Chapter 1, which is the real first chapter, with no loss of continuity.

Familiarity with the concepts presented in this chapter is important to understanding the issues of mobility and is assumed in the chapters that follow. Topics discussed in this overview include the communications channel, protocols, connection-oriented and connectionless protocols, the OSI reference model and it layers, protocol data units and networking entities.

This chapter is presented as a survey and is no substitute for the real thing–it is necessarily brief. Many fine texts, such as [STAL93], [PERL92] and [TANN95], are devoted to teaching data networking and cover this subject much more rigorously. Of course, true expertise comes only with study of actual standards documents.

Basic Data Communication Model

Communication is the conveyance of a message from one entity, called the source ortransmitter, to another, called the destination or receiver, via a channel3 of some sort. A simple example of such a communication system is conversation; people commonly exchange verbal messages, with the channel consisting of waves of compressed air molecules at frequencies which are audible to the human ear.4 This is depicted in Figure 1.


PIC

Figure 1: Basic Communication Model


The conveyance of a message could be followed by a reciprocal response message from the original destination (now a source) to the original source (now a destination) to complete one cycle in a dialogue between corresponding entities. Depending on the application or need for the information exchange, either atomic one-way transactions or a two-way dialogue could be appropriate.

The only way that a message source can be certain that the destination properly received the message is by some kind of acknowledgment response from the destination. Conversing people might say ”I understand” or nod their head in response to a statement made by their peer. This acknowledged form of dialogue is the basis of reliable communications–somehow the source must get feedback that the destination correctly received the message.5

Variations on a Theme

The conveyance of a message could be direct between the corresponding entities or it could be indirect, with one or more intermediaries participating in the message transport. The presence or absence of an intermediary depends on the definition of the source and destination entities and the channel used to communicate; data communication between entities at one level might be considered to be direct and at another level to be indirect.

Considering the directness or indirectness of the communicating entities simply depends on the relevance of any intermediaries to the discussion. In Figure 2, the translator is important but should not really be a factor in the communication between the source and destination. Perhaps in a twist on the old parents’ saying, a good translator is heard but not seen.


PIC

Figure 2: Indirect Message Conveyance


Communication can be from a source to a single destination, known as point-to-point or unicast, or to multiple destinations, known as point-to-multipoint or multicast. A special case of multicast is the conveyance of a message from a source to every possible destination, which is referred to as broadcast; the broadcast can be local or global in scope.

The primary difference between multicast and broadcast is that multicast communication is targeted at specific destinations, regardless of location, while broadcast communication is targeted at all possible destinations within the range (location) of the source. Multicast and broadcast communications are typically one-way ”best efforts” modes of communication which are unacknowledged.6

Communication can also be described in terms of the relative timeframes of the corresponding entities. Depending on the definitions of source, destination and channel, the communication could be asynchronous, synchronous or isochronous.

In asynchronous communication, there is a minimal assumed timing relationship between the source and destination. In such a typically byte-oriented system, each character or byte is transmitted and received individually as a message. Asynchronous protocols were predominant in the early days of data communications because of limited processing capability and low quality transmission infrastructure.

In synchronous communication, the relative bit timing of the source and destination is similar, allowing transmission and reception of relatively large groups of bits in a single message; the source and destination must be ”in sync.” This bit-oriented mode of communication can be much more efficient than asynchronous communications, but places requirements on the source (processing), channel (quality) and destination (more processing). Synchronous data communications are predominant today.

Isochronous communication is the extreme case of synchronous communication–source and destination are ”in sync” in the absolute sense of real time, allowing continual transmission of bits. An everyday example of isochronous communication is a telephone conversation; if such a conversation occurs across a large distance (such as trans-Atlantic), the delays introduced can be disconcerting because the isochronicity which people are accustomed to has been negatively impacted. Effective isochronous communication depends on both transmission delays which are inconsequential to the corresponding entities and a consistent high quality transmission.

The Communications Channel

A communication channel can be simplex, in which only one party can transmit, full-duplex, in which both correspondents can transmit and receive simultaneously, or half-duplex, in which the correspondents alternate between transmitting and receiving states (such as conversing adults). Even though the channel might be capable of supporting full-duplex communication, if the corresponding entities are not capable of transmitting and receiving simultaneously, the communications system will be half-duplex (as in the example of the conversing adults).

Communication between two entities can be considered either in-band or out-of-band, depending on context. In-band communication is communication which occurs via the primary channel between the communicating entities. Out-of-band communication occurs via an alternative channel, which is not considered to be the primary channel between the entities.

Which channel is primary and which is an alternate depends on context and the existence of an alternative channel. In the case of a conversation between two people, the primary channel could consist of verbal communication while the alternate channel consists of visual body language. Of course, if emotions rise, these two channels might reverse roles, with body language becoming the primary channel!

Channel Characteristics

A communications channel may be described in terms of its characteristic properties. These channel characteristics includebandwidth (how much information can be conveyed across the channel in a unit of time, commonly expressed in bits per second or bps7 ), quality (how reliably can the information be correctly conveyed across the channel, commonly in terms of bit error rate or BER8 ) and whether the channel is dedicated (to a single source) or shared (by multiple sources).

Obviously a higher bandwidth is usually a good thing in a channel because it allows more information to be conveyed per unit of time. High bandwidths mean that more users can share the channel, depending on their means of accessing it. High bandwidths also allow more demanding applications (such as graphics) to be supported for each user of the channel.

The capability of a channel to be shared depends of course on the medium used. A shared channel could be likened to a school classroom, where multiple students might attempt to simultaneously catch the teacher’s attention by raising their hand; the teacher must then arbitrate between these conflicting requests, allowing only one student to speak at a time.

Reliability of communication is obviously important. A low quality channel is prone to distorting the messages it conveys; a high quality channel preserves the integrity of the messages it conveys. Depending on the quality of the channel in use between communicating entities, the probability of the destination correctly receiving the message from the source might be either very high or very low. If the message is received incorrectly it needs to be retransmitted.

If the probability of receiving a message correctly across a channel is too low, the system (source, channel, message, destination) must include mechanisms which overcome the errors introduced by the low quality channel. Otherwise no useful communication is possible over that channel. These mechanisms are embodied in the communication protocols employed by the corresponding entities.

The effective bandwidth describes what an application experiences and depends on the quality of service (QOS) provided by the channel. For example, modems scale back their transmission speed based largely on their perception of channel quality in order to optimally use the transmission medium.

In general, shared and reliable channels are more resource efficient than those which enjoy neither of these characteristics. Shared channels enjoy greater efficiency than dedicated ones because most data communication is bursty in nature, with long idle periods punctuated by brief message transmissions. Reliable channels are more efficient than unreliable ones because retransmissions are not required as often (because there are fewer transmission-induced errors).

Communication Protocols

Protocols specify the rules for communicating over a channel, much as one person politely waiting for another to finish before they speak. Protocols coupled with channel characteristics determine the net efficiency of communications over the channel.

Protocols can improve the effective channel quality. An example is an ARQ (automatic repeat request) protocol in which a source automatically retransmits a message if it fails to receive an acknowledgment from the destination within some predefined time period following the original transmission of the message. The destination knows whether to acknowledge the message based on some error detection capability, which is typically based on redundant information added to the message, such as a parity code or cyclic redundancy check (CRC).

Figure 3 depicts a message (”Pick-up at 1:30 PM.”) being transmitted from a source to a destination via ”packets” which contain four characters at a time. Additional redundant information in each packet allows the destination to know whether or not it has received that packet correctly. Once the destination is satisfied that it has correctly received a packet, it sends an acknowledgment (”ack”) message to the original packet source. When the source receives the acknowledgment, it may transmit the next packet in sequence. In an ARQ arrangement, failure to receive an acknowledgment within a specific time period causes the source to retransmit the packet which was not acknowledged. Only a single transmitted packet remains outstanding (i.e., unacknowledged) at a time.


PIC

Figure 3: ARQ Message Acknowledgment


Error detection and recovery mechanisms can be much more sophisticated than this simple ARQ scheme. One way to enhance the effective channel performance is to allow multiple packets to be outstanding at a time. Individual packets are assigned a sequence number reflecting their order in a sequence of packets flowing from a specific source to a specific destination, which allows them to be separately acknowledged or retransmitted in the event of a failure.

This type of windowing scheme is commonly used when significant delays are involved in the end-to-end data transmission or when the channel has a relatively high quality. When an individual packet is not received correctly, the destination could request retransmission of either the individual bad packet, called selective packet rejection, or that packet plus all succeeding packets. Which of these modes is employed depends on the nature of the communication and the medium used.

Figure 4 depicts such a windowing scheme applied to the packet-based transmission example from above, but with each packet individually numbered in sequence. In this example, up to three packets may be outstanding at a time and the destination must notify the host of the next expected packet number, implicitly acknowledging all preceding packets. Unless a time-out occurs at the source, it will continue to transmit packets until the window-size of three outstanding unacknowledged packets is reached. The destination periodically acknowledges all received packets.


PIC

Figure 4: Windowing-Based Message Acknowledgement


If sufficient redundant information is added to a message, it could enable the receiver of the message to not only detect an error but also correct it. Although this requires some additional processing by the destination, it could obviate the need for retransmission. This error correction capability is generally desirable in channels which are expensive, prone to distortion, or suffer from long latency in the dialogue cycle.

Connection-Oriented and Connectionless Protocols

Protocols can be either connection-oriented or connectionless in nature. In connection-oriented protocols, corresponding entities maintain state information about the dialogue they are engaged in. This connection state information supports error, sequence and flow control between the corresponding entities. The windowing scheme presented earlier is an example of a connection-oriented protocol.

Error control refers to a combination of error detection (and correction) and acknowledgment sufficient to compensate for any unreliability inherent to the channel. Sequence control refers to the ability for each entity to reconstruct a received series of messages in the proper order in which they were intended to be received; this is essential to being able to transmit large files across dynamically-routed mesh networks. Flow control refers to the ability for both parties in a dialogue to avoid overrunning their peer with too many messages.

Connection-oriented protocols operate in three phases. The first phase is the connection setup phase, during which the corresponding entities establish the connection and negotiate the parameters defining the connection. The second phase is the data transfer phase, during which the corresponding entities exchange messages under the auspices of the connection. Finally, the connection release phase is when the correspondents ”tear down” the connection because it is no longer needed.

An everyday example of a connection-oriented protocol is a telephone call. The call originator must first ”dial” the destination phone number. The telephony infrastructure must setup the end-to-end circuit, then ”power ring” the call terminator. From this point on, the connection is in place until one of the parties hangs up. Once the called party answers the phone, another level of connection (between people) must be established before real messages can be exchanged.

Connectionless protocols differ markedly from connection-oriented protocols in that they do not provide the capability for error, sequence and flow control. Nor do they have any connection state maintenance requirement. Each message is considered to be independent of all others in a connectionless protocol. Whether or not a given message is received correctly and when has no bearing on other messages; somehow the destination must sort things out and make sense of it all. Connectionless protocols are always in the data transfer phase, with no explicit setup or release phases as in connection-oriented protocols.

The OSI Reference Model

The Open Systems Interconnect (OSI) reference model is commonly used to describe in an abstract manner the functions involved in data communication. This model, originally conceived in the International Organization for Standardization (ISO), defines data communications functions in terms of layers.

In the OSI reference model, each layer is responsible for certain basic functions, such as getting data from one device to another or from one application on a computer to another. The functions at each layer both depend and build on the functions–called services– provided by the layers below it. Communication between peer entities at a given layer is done via one or more protocols; this communication is invoked via the interface with the layer below.

The OSI reference model is depicted in Table 1. Successful communication between two applications depends on successful functions at all seven layers. In terms of implementation, it is possible for some layers to be trivial; in the end what is required depends on the needs of the applications (and people) engaged in communication.





Layer Title



7 Application


Higher Layers 6 Presentation


5 Session



4 Transport


3 Network


Lower Layers 2 Data Link


1 Physical




Table 1: OSI Reference Model

We must emphasize that the definition of a layered data communication architecture is only an abstraction. The intent of this definition is to unambiguously describe the functions involved in data communication in a way which allows different systems to be compared. The OSI reference model definition is intended to neither imply nor constrain the implementation of any communication system.

Although various companies and standards bodies have created different layered communications models, the OSI reference model remains the universally-accepted common denominator for abstract definition. Other models define the layer functions somewhat differently and often have fewer than seven layers. In some cases constituent protocols were specified before the abstract models defining the end-to-end communication.

We will now review the functions of the OSI layers and some of the primary protocols at each layer.9

Layer 1 - The Physical Layer

The physical layer functions include all physical aspects of communicating between two directly-connected physical entities. Typically these physical properties include electromechanical characteristics of the medium or link between the communicating physical entities such as connectors, voltages, transmission frequencies, etc. This layer summarizes the physics which underlie the communication path.

The essential service provided by the physical layer consists of an unstructured bit stream, which can be used by higher layers to provide the basis for higher layer communication services. An example of a physical layer is the ink on paper used by this book to convey information. Another example is the radio frequencies used in a wireless communications system.

Layer 2 - The Data Link Layer

The data link layer accepts the unstructured bit stream provided by the physical layer and provides reliable transfer of data between two directly-connected Layer 2 entities. ”Directly-connected” means that the Layer 2 entities’ communication path does not require another Layer 2 entity. However, this does not imply a dedicated path; in the case of Ethernet, many Layer 2 entities can be sharing a common (physical) medium such as a coaxial cable or a 10BASE-T hub.

Layer 2 functionality is limited in sc