You are on page 1of 71

Data Communications

Introduction
Networking
 Point to point communication (individual network
connection per pair of computers) is not usually practical
 Devices are too far apart
 Large set of devices would need impractical number
of connections
 Installing wires consumes time and money
 Maintaining wires consumes money, especially long-
distance connections
 Solution is a communications network
 Shared central core
 Many attached stations
Network Components
 Transmission hardware
 Special-purpose hardware devices
 Interconnect transmission media
 Control transmission
 Run protocol software
 Protocol software
 Encoded and formats data
 Detects and corrects problems
Network Functions
 Provides application to application communication that is
 Reliable
 Fair
 Efficient
 secure
 Automatically detects and corrects
 Data corruption
 data loss
 Duplication
 out-of-order delivery
 Automatically finds optimal path from source to destination
Classification
 Local area network (LAN)
 Metropolitan area network (MAN)
 Wide area network (WAN)
 LAN and WAN most widely deployed
Protocol: what?
 An agreement about communication that
specifies
 format of messages
 meaning of messages
 rules for exchange
 procedures for handling problems
Protocol: need
 Hardware is low level, and many problems can
occur
 bits corrupted or destroyed
 entire packet lost
 packet duplicated
 packets delivered out of order
 Need mechanisms to distinguish among
 multiple computers on a network
 multiple applications on a computer
 multiple copies of a single application on a computer
Protocol: set of many
 work together
 each protocol solves part of communication
problem
 known as
 protocol suite, or
 protocol family
 designed in layers
 Each layer devoted to one sub-problem
 E.g., ISO 7-layer reference model
Functions
 Encapsulation
 Segmentation and reassmebly
 Connection control
 Ordered delivery
 Flow control
 Error control
 Addressing
 Multiplexing
 Transmission services
OSI - The Model
 Open Systems Interconnection
 Developed by the International Organization for Standardization
(ISO)
 A layer model: Seven layers
 Each layer performs a subset of the required communication
functions
 Each layer relies on the next lower layer to perform more
primitive functions
 Each layer provides services to the next higher layer
 Changes in one layer should not require changes in other layers
 A theoretical system delivered too late!
 TCP/IP is the de facto standard
OSI Layers
 Application
 Presentation
 Session
 Transport
 Network
 Data Link
 Physical
The OSI Environment
OSI Layers (1)
 Layer1: Physical
 Underlying hardware
 Physical interface between devices
 Mechanical
 Electrical
 Functional
 Procedural
 Layer2: Data Link (media access)
 Hardware frame definitions
 Means of activating, maintaining and deactivating a reliable link
 Error detection and control
 Higher layers may assume error free transmission
OSI Layers (2)
 Layer3: Network
 Packet forwarding
 Transport of information
 Higher layers do not need to know about underlying technology
 Not needed on direct links
 Layer4: Transport (reliability)
 Exchange of data between end systems
 Error free
 In sequence
 No losses
 No duplications
 Quality of service
OSI Layers (3)
 Layer5: Session
 Login and passwords
 Control of dialogues between applications
 Dialogue discipline
 Grouping
 Recovery
 Layer6: Presentation (data representation)
 Data formats and coding
 Data compression
 Encryption
 Layer7: Application
 individual application programs
 Means for applications to access OSI environment
TCP/IP Protocol Architecture
 Developed by the US Defense Advanced Research Project
Agency (DARPA) for its packet switched network
(ARPANET)
 Used by the global Internet
 Dominant commercial protocol architecture
 Specified and extensively used before OSI
 No official model but a working one.
 Application layer
 Host to host or transport layer
 Internet layer
 Network access layer
 Physical layer
Physical Layer
 Physical interface between data transmission
device (e.g. computer) and transmission
medium or network
 Characteristics of transmission medium
 Signal levels
 Data rates
 Signal encoding
 etc.
Network Access Layer
 Logical interface between end system and
network
 Exchange of data between end system and
network
 Destination address provision
 Invoking services like priority
Layer 3,4,5
 Internet Layer (IP)
 Systems may be attached to different networks
 Routing functions across multiple networks
 Implemented in end systems and routers
 Transport Layer (TCP/UDP)
 End to end transfer of data
 May include reliability mechanism (TCP)
 Hides detail of underlying network
 Application Layer
 Support for user applications
 Communication between processes or applications
 e.g. http, SMTP
TCP/IP Protocol Architecture
Model
PDUs in TCP/IP
Some Protocols in TCP/IP Suite
OSI v TCP/IP
Data Communications

The Interface
Interfacing
 Data processing devices (or data terminal
equipment, DTE) do not (usually) include data
transmission facilities
 Need an interface called data circuit terminating
equipment (DCE)
 e.g. modem, NIC
 DCE transmits bits on medium
 DCE communicates data and control info with
DTE
Characteristics of Interface
 Mechanical
 Connection plugs
 Electrical
 Voltage, timing, encoding
 Functional
 Data, control, timing, grounding
 Procedural
 Sequence of events
Modem
 hardware device used for long-distance communication
 contains separate circuitry for
 modulation of outgoing signal
 demodulation of incoming signal
 name: modulator/demodulator
 conventional: four wires to transmit modulated electrical
wave
 optical: use glass fibers, and transmit modulated light
 wireless: use air/space, and transmit modulated RF wave
 dialup: use voice telephone system, transmit modulated
audio tone
Modem: usage
 one modem at each end
 separate wires carry signals in each direction
 modulator on one modem connects to
demodulator on other
Dialup modem
 In practice, a dialup modem uses multiple tones simultaneously
 The modem can dial, and answer
 The carrier is the audio tone
 Full-duplex modem
 provides two-way communication
 allows simultaneous transmission
 uses four wires
 Half-duplex modem
 provides two-way communication
 transmit in one direction at any time
 uses two wires
Dialup modem
DSU/CSU
 Data service unit/Channel service unit
 performs two functions; usually a single box
 needed because telephone industry digital encoding differs
from computer industry digital encoding
 DSU portion
 translates between two encoding
 Converts digital signal coming from a digital circuit
(through the CSU), into another digital format that is
compatible with the data terminal equipment “DTE”(e.g.,
a router) to which data is sent
 CSU portion
 terminates line, and allows for maintenance
DSU/CSU (2)

Cost of digital circuit depends on distance, and


capacity
Data Communications

Data Link Control


Flow Control
 needed because
 sending computer faster than receiving computer
 sending application faster than receiving application
 related to buffering
 two forms: stop-and-go, and sliding window
 Ensuring the sending entity does not overwhelm the
receiving entity
 Preventing buffer overflow
 Transmission time
 Time taken to emit all bits into medium
 Propagation time
 Time for a bit to traverse the link
Stop and Wait
 Sending side
 transmits one packet
 waits for signal (ACK) from receiver before sending
next frame
 Receiving side
 receives and consumes packet
 transmits ACK signal to sender
 Destination can stop flow by not sending ACK
 Works well for a few large frames
 Inefficient
Sliding Window Flow Control
 Allow multiple frames to be in transit
 Receiver has buffer of “W” frames long
 Transmitter can send up to W frames without ACK
 Each frame is numbered
 ACK includes number of next frame expected
 Window tells how many packets can be sent
 Window moves as acknowledgements arrive
 Sliding window is fast, and useful in high-speed
networks
Sliding Window Diagram
Stop-and-wait Sliding window
Why sliding window
 simultaneously increase throughput, and control
flow
 speedup
Tw = min(B, Tg x W)
Where
 Tw: is sliding window throughput
 B: is underlying hardware bandwidth
 Tg: is stop-and-go throughput
 W: is window size
Error Detection
 Data can be corrupted during transmission
 bits lost
 bit values changed
 Frame includes additional information to
detect/correct error
 set by sender
 checked by receiver
 Statistical guarantee
Error detection and recovery
techniques
 Parity bit
 one additional bit per character
 can use even or odd parity: value of parity bit is such that
character has even or odd number of ones
 Even number of bit errors goes undetected
 Checksum
 treat data as sequence of integers
 compute and send arithmetic sum
 handles multiple bit errors
 cannot handle all errors
 Cyclic Redundancy Check (CRC)
 mathematical function for data
 more complex to compute, but handles more errors
ARQ
 Automatic Repeat Request
 Stop and wait
 Go back N
 Selective reject (selective retransmission)
DLC Protocols
 HDLC: High Level Data Link Control
 LAPB: Link Access Procedure, Balanced
 LAPD: Link Access Procedure, D-Channel
 LLC: Logical Link Control
 Frame Relay: Uses Link Access Procedure for
Frame-Mode Bearer Services (LAPF)
 ATM: Asynchronous Transfer Mode
Data Communications

Switching Techniques
Switching Networks
 Long distance transmission is typically done over
a network of switched nodes
 Nodes not concerned with content of data
 End devices are stations
 Computer, terminal, phone, etc.
 A collection of nodes and connections is a
communications network
 Data routed by being switched from node to
node
Nodes
 Nodes may connect to other nodes only, or to
stations and other nodes
 Node to node links usually multiplexed
 Network is usually partially connected
 Some redundant connections are desirable for
reliability
 Two different switching technologies
 Circuit switching
 Packet switching
Simple Switched Network
Circuit Switching
Circuit Switching
 Dedicated communication path between two stations
 Three phases
 Establish
 Transfer
 Disconnect
 Must have switching capacity and channel capacity to establish
connection
 Must have intelligence to work out routing
 Inefficient
 Channel capacity dedicated for duration of connection
 If no data, capacity wasted
 Set up (connection) takes time
 Once connected, transfer is transparent
 Developed for voice traffic (phone)
Packet Switching
Principles
 Network has
 Shared central core
 Many attached stations
 Sharing problems
 Demand high
 Some applications have large transfers
 Some applications cannot wait
 Need a fairness mechanism
 Circuit switching designed for voice
 Resources dedicated to a particular call
 Much of the time a data connection is idle
 Data rate is fixed: Both ends must operate at the same rate
Advantages
 Line efficiency
 Single node to node link can be shared by many
packets over time
 Packets queued and transmitted as fast as possible
 Data rate conversion
 Each station connects to the local node at its own speed
 Nodes buffer data if required to equalize rates
 Packets are accepted even when network is busy
 Delivery may slow down
 Priorities can be used
Packet network
 Building blocks
 Point-to-point long-distance connections
 Packet switches
 Hardware device
 Connects to other packet switches, and computers
 Forwards packets
 Uses addresses
 Special-purpose computer system
• CPU
• Memory
• I/O interfaces
• firmware
Building a WAN
 place one or more packet switches at each site
 interconnect switches
 LAN technology for local connections
 Leased digital circuits for long-distance connections
 interconnections depend on
 estimated traffic
 reliability needed
Store and Forward
 basic paradigm used in packet switched network
 packet
 sent from source computer
 travels switch-to-switch
 delivered to destination
 switch
 stores packet in memory
 examines packet’s destination address
 forwards packet toward destination
WAN addressing
 Need
 unique address for each computer
 efficient forwarding
 Two-part address
 packet switch number (high-order bits)
 computer on that switch (low-order bits)
Datagram
 Each packet treated independently
 Packets can take any practical route
 Packets may arrive out of order
 Packets may go missing
 Up to receiver to re-order packets and recover
from missing packets
Virtual Circuit
 Preplanned route established before any packets
sent
 Call request and call accept packets establish
connection (handshake)
 Each packet contains a virtual circuit identifier
instead of destination address
 No routing decisions required for each packet
 Clear request to drop circuit
 Not a dedicated path
Routing
 Complex, crucial aspect of packet switched
networks
 Characteristics required
 Correctness
 Simplicity
 Robustness
 Stability
 Fairness
 Optimality
 Efficiency
Costing of Routes
Routing Strategies
 Fixed
 Flooding
 Random
 Adaptive
Data Communications

Network Properties
Network ownership and service
type
 Private
 owned by individual or corporation
 restricted to owner’s use
 typically used by large corporations
 complete control (+)
 installation and operation costs (-)
 Public
 owned by a common carrier
 individuals or corporations can subscribe
 public refers to availability, not data
 no need for staff to install/operate network (+)
 dependency on carrier (-)
 subscription fee (-)
Connectionless Networks
 Operation
 Sender
 forms packets to be sent
 places address of intended recipient in packet
 transfers packet to network for delivery
 Network
 uses destination address to forward packet
 delivers
 Characteristics
 packet contains identification of destination
 each packet handled independently
 no setup required before transmitting data
 no cleanup required after sending data
 Similar: postcards
Connection-Oriented networks
 Sender
 requests connection to receiver
 waits for network to form connection
 leaves connection in place while sending data
 terminates connection when no longer needed
 Network
 receives connection request
 forms path to specified destination and informs sender
 transfers data across connection
 removes connection when sender requests
 Similar: telephone calls
Two connection types
Permanent Virtual Circuit (PVC)
 entered manually
 survives reboot
 usually persists for months
Switched Virtual Circuit (SVC)
 requested dynamically
 initiated by application
 terminated when application exits
What Is Congestion?
 Congestion occurs when the number of packets
being transmitted through the network
approaches the packet handling capacity of the
network
 Congestion control aims to keep number of
packets below level at which performance falls
off dramatically
 Data network is a network of queues
 Generally 80% utilization is critical
 Finite queues mean data may be lost
Congestion avoidance
Rate control
 limit rate of data transmission
 performed by sending computer
 performed by network
 Network rate control
 monitor incoming traffic
 drop or reject packets over rate
 called traffic shaping
Congestion Control in Packet
Switched Networks
 Send control packet to some or all source nodes
 Requires additional traffic during congestion
 Rely on routing information
 May react too quickly
 End to end probe packets
 Adds to overhead
 Add congestion info to packets as they cross
nodes
 Either backwards or forwards
Security
 Increasingly important
 aspects
 Data Confidentiality
 Data Integrity
 Data Availability
 Privacy
 Mechanisms
 Message authentication code (MAC)
 Passwords
 Digital signatures
 Encryption
 Perimeter security
Firewall Implementation
 packet filter
 Configurable
 specifies which packets can pass
 allows manager to specify addresses, protocol ports,
and packet types
 often part of router
 note: two packet filters and intermediate
computer are required for optimal firewall

You might also like