William Stallings Data and Computer Communications

Download Report

Transcript William Stallings Data and Computer Communications

Chapter 1
Introduction
Supplementery Slides
BLM431 Computer Networks
Dr.Refik Samet
1
A Communications Model
Source
generates data to be transmitted
Transmitter
Converts data into transmittable signals
Transmission System
Carries data
Receiver
Converts received signal into data
Destination
Takes incoming data
BLM431 Computer Networks
Dr.Refik Samet
2
Communications Tasks
Transmission system utilization
Addressing
Interfacing
Routing
Signal generation
Recovery
Synchronization
Message formatting
Exchange management
Security
Error detection and correction
Network management
Flow control
BLM431 Computer Networks
Dr.Refik Samet
3
Simplified Communications
Model - Diagram
BLM431 Computer Networks
Dr.Refik Samet
4
Key Communications Tasks
 Transmission System Utilization
 Interfacing
 Signal Generation
 Synchronization
 Exchange Management
 Error detection and correction
 Addressing and routing
 Recovery
 Message formatting
 Security
 Network Management
BLM431 Computer Networks
Dr.Refik Samet
5
Simplified Data
Communications Model
BLM431 Computer Networks
Dr.Refik Samet
6
Networking
Point to point communication not usually
practical
Devices are too far apart
Large set of devices would need impractical number
of connections
Solution is a communications network
BLM431 Computer Networks
Dr.Refik Samet
7
Simplified Network Model
BLM431 Computer Networks
Dr.Refik Samet
8
Wide Area Networks
Large geographical area
Crossing public rights of way
Rely in part on common carrier circuits
Alternative technologies
Circuit switching
Packet switching
Frame relay
Asynchronous Transfer Mode (ATM)
BLM431 Computer Networks
Dr.Refik Samet
9
Circuit Switching
Dedicated communications path established for
the duration of the conversation
e.g. telephone network
BLM431 Computer Networks
Dr.Refik Samet
10
Packet Switching
Data sent out of sequence
Small chunks (packets) of data at a time
Packets passed from node to node between
source and destination
Used for terminal to computer and computer to
computer communications
BLM431 Computer Networks
Dr.Refik Samet
11
Frame Relay
Packet switching systems have large overheads
to compensate for errors
Modern systems are more reliable
Errors can be caught in end system
Most overhead for error control is stripped out
BLM431 Computer Networks
Dr.Refik Samet
12
Asynchronous Transfer Mode
ATM
Evolution of frame relay
Little overhead for error control
Fixed packet (called cell) length
Anything from 10Mbps to Gbps
Constant data rate using packet switching
technique
BLM431 Computer Networks
Dr.Refik Samet
13
Integrated Services Digital
Network
ISDN
Designed to replace public telecom system
Wide variety of services
Entirely digital domain
BLM431 Computer Networks
Dr.Refik Samet
14
Local Area Networks
Smaller scope
Building or small campus
Usually owned by same organization as
attached devices
Data rates much higher
Usually broadcast systems
Now some switched systems and ATM are being
introduced
BLM431 Computer Networks
Dr.Refik Samet
15
Protocols
Used for communications between entities in a
system
Must speak the same language
Entities
User applications
e-mail facilities
terminals
Systems
Computer
Terminal
Remote sensor
BLM431 Computer Networks
Dr.Refik Samet
16
Key Elements of a Protocol
Syntax
Data formats
Signal levels
Semantics
Control information
Error handling
Timing
Speed matching
Sequencing
BLM431 Computer Networks
Dr.Refik Samet
17
Protocol Architecture
Task of communication broken up into modules
For example file transfer could use three
modules
File transfer application
Communication service module
Network access module
BLM431 Computer Networks
Dr.Refik Samet
18
Simplified File Transfer
Architecture
BLM431 Computer Networks
Dr.Refik Samet
19
A Three Layer Model
Network Access Layer
Transport Layer
Application Layer
BLM431 Computer Networks
Dr.Refik Samet
20
Network Access Layer
Exchange of data between the computer and
the network
Sending computer provides address of
destination
May invoke levels of service
Dependent on type of network used (LAN,
packet switched etc.)
BLM431 Computer Networks
Dr.Refik Samet
21
Transport Layer
Reliable data exchange
Independent of network being used
Independent of application
BLM431 Computer Networks
Dr.Refik Samet
22
Application Layer
Support for different user applications
e.g. e-mail, file transfer
BLM431 Computer Networks
Dr.Refik Samet
23
Addressing Requirements
Two levels of addressing required
Each computer needs unique network address
Each application on a (multi-tasking) computer
needs a unique address within the computer
The service access point or SAP
BLM431 Computer Networks
Dr.Refik Samet
24
Protocol Architectures and
Networks
BLM431 Computer Networks
Dr.Refik Samet
25
Protocols in Simplified
Architecture
BLM431 Computer Networks
Dr.Refik Samet
26
Protocol Data Units (PDU)
At each layer, protocols are used to
communicate
Control information is added to user data at
each layer
Transport layer may fragment user data
Each fragment has a transport header added
Destination SAP
Sequence number
Error detection code
This gives a transport protocol data unit
BLM431 Computer Networks
Dr.Refik Samet
27
Network PDU
Adds network header
network address for destination computer
Facilities requests
BLM431 Computer Networks
Dr.Refik Samet
28
Operation of a Protocol
Architecture
BLM431 Computer Networks
Dr.Refik Samet
29
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
No official model but a working one.
Application layer
Host to host or transport layer
Internet layer
Network access layer
Physical layer
BLM431 Computer Networks
Dr.Refik Samet
30
Physical Layer
Physical interface between data transmission
device (e.g. computer) and transmission
medium or network
Characteristics of transmission medium
Signal levels
Data rates
etc.
BLM431 Computer Networks
Dr.Refik Samet
31
Network Access Layer
Exchange of data between end system and
network
Destination address provision
Invoking services like priority
BLM431 Computer Networks
Dr.Refik Samet
32
Internet Layer (IP)
Systems may be attached to different networks
Routing functions across multiple networks
Implemented in end systems and routers
BLM431 Computer Networks
Dr.Refik Samet
33
Transport Layer (TCP)
Reliable delivery of data
Ordering of delivery
BLM431 Computer Networks
Dr.Refik Samet
34
Application Layer
Support for user applications
e.g. http, SMPT
BLM431 Computer Networks
Dr.Refik Samet
35
TCP/IP Protocol Architecture
Model
BLM431 Computer Networks
Dr.Refik Samet
36
OSI Model
Open Systems Interconnection
Developed by the International Organization for
Standardization (ISO)
Seven layers
A theoretical system delivered too late!
TCP/IP is the de facto standard
BLM431 Computer Networks
Dr.Refik Samet
37
OSI Layers
Application
Presentation
Session
Transport
Network
Data Link
Physical
BLM431 Computer Networks
Dr.Refik Samet
38
OSI v TCP/IP
BLM431 Computer Networks
Dr.Refik Samet
39
Standards
Required to allow for interoperability between
equipment
Advantages
Ensures a large market for equipment and software
Allows products from different vendors to
communicate
Disadvantages
Freeze technology
May be multiple standards for the same thing
BLM431 Computer Networks
Dr.Refik Samet
40
Standards Organizations
Internet Society
ISO
ITU-T (formally CCITT)
ATM forum
BLM431 Computer Networks
Dr.Refik Samet
41
Further Reading
Stallings, W. Data and Computer
Communications (6th edition), Prentice Hall
1999 chapter 1
Web site for Stallings book
www.shore.net/~ws/DCC6e.html
Web sites for IETF, IEEE, ITU-T, ISO
Internet Requests for Comment (RFCs)
Usenet News groups
comp.dcom.*
comp.protocols.tcp-ip
BLM431 Computer Networks
Dr.Refik Samet
42
Networking
Configuration
BLM431 Computer Networks
Dr.Refik Samet
43
Service Primitives and
Parameters
Services between adjacent layers expressed in
terms of primitives and parameters
Primitives specify function to be performed
Parameters pass data and control info
BLM431 Computer Networks
Dr.Refik Samet
44
Primitive Types
REQUEST
A primitive issued by a service user to invoke some service and to
pass the parameters needed to specify fully the requested service
INDICATION
A primitive issued by a service provider either to:
indicate that a procedure has been invoked by the peer service
user on the connection and to provide the associated parameters,
or
notify the service user of a provider-initiated action
RESPONSE
A primitive issued by a service user to acknowledge or complete
some procedure previously invoked by an indication to that user
CONFIRM
A primitive issued by a service provider to acknowledge or
complete some procedure previously invoked by a request by the
service user
BLM431 Computer Networks
Dr.Refik Samet
45
Timing Sequence for Service
Primitives
BLM431 Computer Networks
Dr.Refik Samet
46
Networking
Point to point communication not usually
practical
Devices are too far apart
Large set of devices would need impractical number
of connections
Solution is a communications network
Wide Area Network (WAN)
Local Area Network (LAN)
BLM431 Computer Networks
Dr.Refik Samet
47
Wide Area Networks
Large geographical area
Crossing public rights of way
Rely in part on common carrier circuits
Alternative technologies
Circuit switching
Packet switching
Frame relay
Asynchronous Transfer Mode (ATM)
BLM431 Computer Networks
Dr.Refik Samet
48
Circuit Switching
Dedicated communications path established for
the duration of the conversation
e.g. telephone network
BLM431 Computer Networks
Dr.Refik Samet
49
Packet Switching
Data sent out of sequence
Small chunks (packets) of data at a time
Packets passed from node to node between
source and destination
Used for terminal to computer and computer to
computer communications
BLM431 Computer Networks
Dr.Refik Samet
50
Frame Relay
Packet switching systems have large overheads
to compensate for errors
Modern systems are more reliable
Errors can be caught in end system
Most overhead for error control is stripped out
BLM431 Computer Networks
Dr.Refik Samet
51
Asynchronous Transfer Mode
ATM
Evolution of frame relay
Little overhead for error control
Fixed packet (called cell) length
Anything from 10Mbps to Gbps
Constant data rate using packet switching
technique
BLM431 Computer Networks
Dr.Refik Samet
52
Local Area Networks
Smaller scope
Building or small campus
Usually owned by same organization as
attached devices
Data rates much higher
Usually broadcast systems
Now some switched systems and ATM are being
introduced
BLM431 Computer Networks
Dr.Refik Samet
53
LAN Configurations
Switched
Switched Ethernet
May be single or multiple switches
ATM LAN
Fibre Channel
Wireless
Mobility
Ease of installation
BLM431 Computer Networks
Dr.Refik Samet
54
Metropolitan Area Networks
MAN
Middle ground between LAN and WAN
Private or public network
High speed
Large area
BLM431 Computer Networks
Dr.Refik Samet
55
Protocols and Architecture
Characteristics
Direct or indirect
Monolithic or structured
Symmetric or asymmetric
Standard or nonstandard
BLM431 Computer Networks
Dr.Refik Samet
56
Direct or Indirect
Direct
Systems share a point to point link or
Systems share a multi-point link
Data can pass without intervening active agent
Indirect
Switched networks or
Internetworks or internets
Data transfer depend on other entities
BLM431 Computer Networks
Dr.Refik Samet
57
Monolithic or Structured
Communications is a complex task
To complex for single unit
Structured design breaks down problem into
smaller units
Layered structure
BLM431 Computer Networks
Dr.Refik Samet
58
Symmetric or Asymmetric
Symmetric
Communication between peer entities
Asymmetric
Client/server
BLM431 Computer Networks
Dr.Refik Samet
59
Standard or Nonstandard
Nonstandard protocols built for specific
computers and tasks
K sources and L receivers leads to K*L protocols
and 2*K*L implementations
If common protocol used, K + L
implementations needed
BLM431 Computer Networks
Dr.Refik Samet
60
Use of Standard Protocols
BLM431 Computer Networks
Dr.Refik Samet
61
Functions
Encapsulation
Segmentation and reassmebly
Connection control
Ordered delivery
Flow control
Error control
Addressing
Multiplexing
Transmission services
BLM431 Computer Networks
Dr.Refik Samet
62
Encapsulation
Addition of control information to data
Address information
Error-detecting code
Protocol control
BLM431 Computer Networks
Dr.Refik Samet
63
Segmentation (Fragmentation)
Data blocks are of bounded size
Application layer messages may be large
Network packets may be smaller
Splitting larger blocks into smaller ones is
segmentation (or fragmentation in TCP/IP)
ATM blocks (cells) are 53 octets long
Ethernet blocks (frames) are up to 1526 octets long
Checkpoints and restart/recovery
BLM431 Computer Networks
Dr.Refik Samet
64
Why Fragment?
Advantages
More efficient error control
More equitable access to network facilities
Shorter delays
Smaller buffers needed
Disadvantages
Overheads
Increased interrupts at receiver
More processing time
BLM431 Computer Networks
Dr.Refik Samet
65
Connection Control
Connection Establishment
Data transfer
Connection termination
May be connection interruption and recovery
Sequence numbers used for
Ordered delivery
Flow control
Error control
BLM431 Computer Networks
Dr.Refik Samet
66
Connection Oriented Data
Transfer
BLM431 Computer Networks
Dr.Refik Samet
67
Ordered Delivery
PDUs may traverse different paths through
network
PDUs may arrive out of order
Sequentially number PDUs to allow for ordering
BLM431 Computer Networks
Dr.Refik Samet
68
Flow Control
Done by receiving entity
Limit amount or rate of data
Stop and wait
Credit systems
Sliding window
Needed at application as well as network layers
BLM431 Computer Networks
Dr.Refik Samet
69
Error Control
Guard against loss or damage
Error detection
Sender inserts error detecting bits
Receiver checks these bits
If OK, acknowledge
If error, discard packet
Retransmission
If no acknowledge in given time, re-transmit
Performed at various levels
BLM431 Computer Networks
Dr.Refik Samet
70
Addressing
Addressing level
Addressing scope
Connection identifiers
Addressing mode
BLM431 Computer Networks
Dr.Refik Samet
71
Addressing level
Level in architecture at which entity is named
Unique address for each end system (computer)
and router
Network level address
IP or internet address (TCP/IP)
Network service access point or NSAP (OSI)
Process within the system
Port number (TCP/IP)
Service access point or SAP (OSI)
BLM431 Computer Networks
Dr.Refik Samet
72
Address Concepts
BLM431 Computer Networks
Dr.Refik Samet
73
Addressing Scope
Global nonambiguity
Global address identifies unique system
There is only one system with address X
Global applicability
It is possible at any system (any address) to identify
any other system (address) by the global address of
the other system
Address X identifies that system from anywhere on
the network
e.g. MAC address on IEEE 802 networks
BLM431 Computer Networks
Dr.Refik Samet
74
Connection Identifiers
Connection oriented data transfer (virtual
circuits)
Allocate a connection name during the transfer
phase
Reduced overhead as connection identifiers are
shorter than global addresses
Routing may be fixed and identified by connection
name
Entities may want multiple connections - multiplexing
State information
BLM431 Computer Networks
Dr.Refik Samet
75
Addressing Mode
Usually an address refers to a single system
Unicast address
Sent to one machine or person
May address all entities within a domain
Broadcast
Sent to all machines or users
May address a subset of the entities in a domain
Multicast
Sent to some machines or a group of users
BLM431 Computer Networks
Dr.Refik Samet
76
Multiplexing
Supporting multiple connections on one machine
Mapping of multiple connections at one level to
a single connection at another
Carrying a number of connections on one fiber optic
cable
Aggregating or bonding ISDN lines to gain bandwidth
BLM431 Computer Networks
Dr.Refik Samet
77
Transmission Services
Priority
e.g. control messages
Quality of service
Minimum acceptable throughput
Maximum acceptable delay
Security
Access restrictions
BLM431 Computer Networks
Dr.Refik Samet
78
OSI - The Model
A layer model
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
BLM431 Computer Networks
Dr.Refik Samet
79
The OSI Environment
BLM431 Computer Networks
Dr.Refik Samet
80
OSI as Framework for
Standardization
BLM431 Computer Networks
Dr.Refik Samet
81
Layer Specific Standards
BLM431 Computer Networks
Dr.Refik Samet
82
Elements of Standardization
Protocol specification
Operates between the same layer on two systems
May involve different operating system
Protocol specification must be precise
Format of data units
Semantics of all fields
allowable sequence of PCUs
Service definition
Functional description of what is provided
Addressing
Referenced by SAPs
BLM431 Computer Networks
Dr.Refik Samet
83
OSI Layers (1)
Physical
Physical interface between devices
Mechanical
Electrical
Functional
Procedural
Data Link
Means of activating, maintaining and deactivating a
reliable link
Error detection and control
Higher layers may assume error free transmission
BLM431 Computer Networks
Dr.Refik Samet
84
OSI Layers (2)
Network
Transport of information
Higher layers do not need to know about underlying
technology
Not needed on direct links
Transport
Exchange of data between end systems
Error free
In sequence
No losses
No duplicates
BLM431 Computer Networks
Quality of service Dr.Refik Samet
85
OSI Layers (3)
Session
Control of dialogues between applications
Dialogue discipline
Grouping
Recovery
Presentation
Data formats and coding
Data compression
Encryption
Application
Means for applications
to access
BLM431 Computer
Networks OSI environment
Dr.Refik Samet
86
Use of a Relay
BLM431 Computer Networks
Dr.Refik Samet
87
TCP/IP Protocol Suite
Dominant commercial protocol architecture
Specified and extensively used before OSI
Developed by research funded US Department
of Defense
Used by the Internet
BLM431 Computer Networks
Dr.Refik Samet
88
TCP/IP Protocol Architecture(1)
Application Layer
Communication between processes or applications
End to end or transport layer (TCP/UDP/…)
End to end transfer of data
May include reliability mechanism (TCP)
Hides detail of underlying network
Internet Layer (IP)
Routing of data
BLM431 Computer Networks
Dr.Refik Samet
89
TCP/IP Protocol Architecture(2)
Network Layer
Logical interface between end system and network
Physical Layer
Transmission medium
Signal rate and encoding
BLM431 Computer Networks
Dr.Refik Samet
90
PDUs in TCP/IP
BLM431 Computer Networks
Dr.Refik Samet
91
Some Protocols in TCP/IP Suite
BLM431 Computer Networks
Dr.Refik Samet
92