computer networks group universität paderborn computer networks chapter 1: a brief kms recap holger...
TRANSCRIPT
Computer Networks GroupUniversität Paderborn
Computer Networks Chapter 1: A brief KMS recap
Holger Karl
WS 05/06, v 1.0 Communication Networks - Ch. 1 - A brief KMS recap 2
Goals of this chapter
Briefly repeat the central aspects of communication networks that have been already treated in KMS
WS 05/06, v 1.0 Communication Networks - Ch. 1 - A brief KMS recap 3
Overview
Communication basics Duplexing, multiplexing, medium access Routing, transport Service vs. protocol Reference models
WS 05/06, v 1.0 Communication Networks - Ch. 1 - A brief KMS recap 4
Communication basics
Information: Human interpretation Data: Formalized representation Signal: Representation of data by
characteristic changes of a physical variable
These changes can travel over distance Example: current, voltage, tension, … Can be generated by sender, interpreted
by receiver
Immaterial signals in physical media enable data communication between remote senders and receivers
Signals represent bits
Conventionsfor
representation
Information
Data
Conventionsfor
representation
Abstractworld
Signals
Physicalworld
WS 05/06, v 1.0 Communication Networks - Ch. 1 - A brief KMS recap 5
Signals propagate in medium, store data
Signals traveling in a medium take time to reach destination – delay d
Depends on distance and propagation speed in transmission medium
To represent one or several bits, a signal extending in time is needed – duration of transmission
Determined by rate r and data size
During time d, r*d bits are generated
Stored in the medium
Message Sequence
Charts (MSC)
Start oftransmission
End oftransmission
Delay d
Tim
e
Distance
WS 05/06, v 1.0 Communication Networks - Ch. 1 - A brief KMS recap 6
Basic organization of communication
Duplexing: Given a single pair of communicating peers, duplexing describes rules when each peer is allowed to send to the other one
Using which resource
Mutiplexing: Given several pairs, multiplexing describes when which pair, using which resources, is allowed to communicate
Main resources: Time, frequency (+ some others) Example combinations?
WS 05/06, v 1.0 Communication Networks - Ch. 1 - A brief KMS recap 7
Multiplexing & shared resources
Multiplexing can be viewed as a means to regulate the access to a resource that is shared by multiple users
The switching element/its outgoing line With the switching element as the
controller
Are there other examples of “shared resources”?
Classroom, with “air” as physical medium A shared copper wire, as opposed to direct
connection
Characteristic: a broadcast medium!
Virtually shared, but exclusively controlled!
Shared!
Shared!
WS 05/06, v 1.0 Communication Networks - Ch. 1 - A brief KMS recap 8
Handling many devices: Introducing multiple hops
WS 05/06, v 1.0 Communication Networks - Ch. 1 - A brief KMS recap 9
How to realize multiple hops: Switching
In absence of direct connection between communicating peers, some sort of switching becomes necessary
Option 1: Circuit switching Request a (physical) connection Turn knobs, switches, etc. Use this connection as before – peers are
now directly connected
http://www.wdrcobg.com/switchboard.html
WS 05/06, v 1.0 Communication Networks - Ch. 1 - A brief KMS recap 10
How to realize multiple hops: Switching
Option 2: Packet switching Instead of building and releasing an end-to-end connection for
each communication’s entire length, only Use connections from one hop to another hop Communicate well identified parts of a communication – packets –
between these hop neighbors
Packet 1
Packet 2
Packet 3
To X
Buffer
To YTo Z
To Y To ZTo Z
Pick next hop
To Y To X To Z
Packets need to have addresses to find destination
WS 05/06, v 1.0 Communication Networks - Ch. 1 - A brief KMS recap 11
Forwarding and next hop selection
Recall: A switching element/a router forwards a packet onto the next hop towards its destination
How does a router know which of its neighbors is the best possible one towards a given destination?
What is a “good” neighbor, anyway?
A
Z
?
?
?
?
U
V
W
X
Y
P
M
WS 05/06, v 1.0 Communication Networks - Ch. 1 - A brief KMS recap 12
Provide data for next hop selection
Construct routing tables For each switching
element separately Separate entry for each
destination Contains information
about the (conjectured) shortest distance to a given destination via each neighbor
M P Z
U 2 3 4
V 3 2 3
X 4 3 2
Y 4 4 3
Destination
Neig
hb
or
Routing table of W
WS 05/06, v 1.0 Communication Networks - Ch. 1 - A brief KMS recap 13
Handling errors
Transmission errors Signals are mutilated, not correctly converted to (intended) bits Local issue
Packets are missing Local or end-to-end issue
Overload problems Flow control: Fast sender overruns slow receiver Congestion control: Receiver would be fast enough, but sender
injects more packets into network than network is able to handle
Where and how to handle these errors?
WS 05/06, v 1.0 Communication Networks - Ch. 1 - A brief KMS recap 14
Structuring communication systems
To handle complexity, partition into well defined subsystems
Called layers
Subsystem/layer offers a well defined functionality, a service
A promise on what will happen after certain interactions with the service access point take place
Services need distributed implementations Parts at sender, parts at receiver, and possibly parts in the network
These various implementation parts interact with each other via protocols
Rules on interaction, how to achieve the service’s promise
WS 05/06, v 1.0 Communication Networks - Ch. 1 - A brief KMS recap 15
Typical examples of services
Datagram service Unit of data are messages Correct, but not necessarily complete or in order Connection-less Usually insecure/not dependable, not confirmed
Reliable byte stream Byte stream Correct, complete, in order, confirmed Sometimes, but not always secure/dependable Connection-oriented
Almost all possible combinations are conceivable!
WS 05/06, v 1.0 Communication Networks - Ch. 1 - A brief KMS recap 16
Analogy: Nested layers as nested translations
Layers rely on services of lower layers
Intermediate representation of data changes
Vertical vs. horizontal communication
Vertical: always real
Horizontal: may be real or virtual
Horizontal communication
Horizontal communication
Horizontal communication
Horizontal (real!) communication
Verticalcomm.
WS 05/06, v 1.0 Communication Networks - Ch. 1 - A brief KMS recap 17
Protocols and FSMs
Finite state machines describe & implement actual behavioral rules of a protocol
Have to communicate with their remote peer Cannot do so directly, have to use service of the underlying communication
layer Via service primitives, which can also provide arriving data to the protocol E.g., indications from lower layer are events to higher layer protocol engine
Layer n
Use service primitives
Layer n+1
WS 05/06, v 1.0 Communication Networks - Ch. 1 - A brief KMS recap 18
Protocols and messages
When using lower-layer services to communicate with the remote peer, administrative data is usually included in those messages
Typical example Protocol receivers data from
higher layer Adds own administrative data Passes the extended message
down to the lower layer Receiver will receive original
message plus administrative data
Encapsulating Header or
trailer Layer n
Layer n+1 Layer n+1
Packet arriving at
Layer n+1’s SAP
Extended packet passed
to layer n
Delivered by layer
n
WS 05/06, v 1.0 Communication Networks - Ch. 1 - A brief KMS recap 19
ISO/OSI 7-layer reference model (complete network)En
d-to
-en
dC
hain
ed
, local la
yers
WS 05/06, v 1.0 Communication Networks - Ch. 1 - A brief KMS recap 20
TCP/IP protocol stack
Nothing statedby TCP/IP model
WS 05/06, v 1.0 Communication Networks - Ch. 1 - A brief KMS recap 21
TCP/IP – Suite of protocols
Over time, a suite of protocols has evolved around the core TCP/IP protocols
So-called “hourglass model”: Thin waist of the protocol stack at IP, above the technological layers
WS 05/06, v 1.0 Communication Networks - Ch. 1 - A brief KMS recap 22
ISO/OSI versus TCP/IP
ISO/OSI: Very useful model, non-existing protocols TCP/IP: Non-existing model, very useful protocols
Hence: Use a simplified ISO/OSI model, but treat the TCP/IP protocol stack in the context of this model
With suitable add-ons especially for the lower layers
WS 05/06, v 1.0 Communication Networks - Ch. 1 - A brief KMS recap 23
Conclusion
These are the core functionalities a communication network has to provide
We shall investigate the main protocols of the abbreviated reference model in the remainder of this class