Module 2 - Overview of Computer Networks
Module 2 - Overview of Computer Networks
Module 2 - Overview of Computer Networks
Computer Networks
backbone
satellite link
desktop computer:
server:
network link:
CS454/654
2-2
Internet Connectivity
2-3
Issues
CS454/654
2-4
What is a protocol?
Network protocols:
CS454/654
Human protocol
Computer protocol
Hi
Hi
Gethttp://www.cs.uwaterloo.ca/
<index.html>
time
2-5
Layered Architecture
Lacks structure
Any changes to one component
requires re-describing the whole
procedure
CS454/654
2-6
Layered Protocols
Divide functionality to
different layers and let each
layer provide one function.
ISO OSI Layered network
architecture (International Organization for
Standardization, Open Systems Interconnections)
Function layers
Interfaces
Protocols at each layer
CS454/654
From Tanenbaum and van Steen, Distributed Systems: Principles and Paradigms
Prentice-Hall, Inc. 2002
2-7
CS454/654
Description
Protocols that are designed to meet the communication requirements of
specific applications, often defining the interface to a service.
Protocols at this level transmit data in a network representation that is
independent of the representations used in individual computers, which may
differ. Encryption is also performed in this layer, if required.
At this level reliability and adaptation are performed, such as detection of
failures and automatic recovery.
This is the lowest level at which messages (rather than packets) are handled.
Messages are addressed to communication ports attached to processes,
Protocols in this layer may be connection-oriented or connectionless.
Transfers data packets between computers in a specific network. In a WAN
or an internetwork this involves the generation of a route passing through
routers. In a single LAN no routing is required.
Responsible for transmission of packets between nodes that are directly
connected by a physical link. In a WAN transmission is between pairs of
routers or between routers and hosts. In a LAN it is between any pair of hosts.
The circuits and hardware that drive the network. It transmits sequences of
binary data by analogue signalling, using amplitude or frequency modulation
of electrical signals (on cable circuits), light signals (on fibre optic circuits)
or other electromagnetic signals (on radio and microwave circuits).
From Coulouris, Dollimore and Kindberg, Distributed Systems: Concepts and Design, 3rd ed.
Addison-Wesley Publishers 2000
Examples
HTTP, FTP , SMTP,
CORBA IIOP
Secure Sockets
(SSL),CORBA Data
Rep.
TCP, UDP
IP, ATM virtual
circuits
Ethernet MAC,
ATM cell transfer,
PPP
Ethernet base- band
signalling, ISDN
2-8
Message Format
CS454/654
From Tanenbaum and van Steen, Distributed Systems: Principles and Paradigms
Prentice-Hall, Inc. 2002
2-9
Message Transmission
(Assume only 3 layers)
CS454/654
2-10
Internet Protocols
FTP Telnet NFS SMTP HTTP
Application (7)
Transport (4)
TCP
UDP
Network (3)
Data Link (2)
Physical (1)
CS454/654
IP
X.25
Ethernet
Packet
Radio
ATM
FDDI
2-11
TCP/IP Layers
Message
Layers
Application
Messages (UDP) or Streams (TCP)
Transport
UDP or TCP packets
Internet
IP datagrams
Network interface
Network-specific frames
Underlying network
CS454/654
From Coulouris, Dollimore and Kindberg, Distributed Systems: Concepts and Design, 3rd ed.
Addison-Wesley Publishers 2000
2-12
tcp, udp
application
message
transport
segment
network
datagram
link
frame
physical
ppp, ethernet
CS454/654
2-13
data link
physical
Application-layer protocols
application
application
transport
transport
network
network
data link
data link
physical
physical
router
CS454/654
server
workstation
mobile
2-14
Data loss
some
Bandwidth
some
Timing
some
CS454/654
2-15
Bandwidth
Time Sensitive
file transfer
e-mail
Web documents
real-time audio/video
no loss
no loss
no loss
loss-tolerant
no
no
no
yes, 100s msec
stored audio/video
interactive games
financial apps
loss-tolerant
loss-tolerant
no loss
elastic
elastic
elastic
audio: 5Kb-1Mb
video:10Kb-5Mb
same as above
few Kbps up
elastic
Application
CS454/654
2-16
CS454/654
UDP service:
2-17
Flow Control
Both flow control and congestion control affect the sending rate
Flow control aims to eliminate the possibility of overflowing the receivers
buffer.
Receiver keeps track of two variables:
CS454/654
2-18
Congestion Control
If there is congestion
Lost packets
CS454/654
2-19
CS454/654
Application
layer protocol
Underlying
transport protocol
TCP
TCP
TCP
TCP
TCP or UDP
TCP or UDP
typically UDP
2-20
port
IP header TCP
Ethernet header IP
Ethernet frame
CS454/654
From Coulouris, Dollimore and Kindberg, Distributed Systems: Concepts and Design, 3rd ed.
Addison-Wesley Publishers 2000
2-21
Application
TCP
UDP
IP
CS454/654
From Coulouris, Dollimore and Kindberg, Distributed Systems: Concepts and Design, 3rd ed.
Addison-Wesley Publishers 2000
2-22
Class B:
24
Network ID
1 0
Host ID
14
16
Network ID
Host ID
21
Class C:
1 1 0
Network ID
Host ID
28
Class D (multicast):
1 1 1 0
Multicast address
28
Class E (reserved):
CS454/654
1 1 1 1
unused
From Coulouris, Dollimore and Kindberg, Distributed Systems: Concepts and Design, 3rd ed.
Addison-Wesley Publishers 2000
2-23
octet 2
Network ID
Class A:
1 to 127
octet 3
Host ID
0 to 255
0 to 255
1.0.0.0 to
127.255.255.255
0 to 255
0 to 255
128.0.0.0 to
191.255.255.255
0 to 255
Host ID
1 to 254
0 to 255
Network ID
Class B:
Class C:
Range of addresses
Host ID
128 to 191
0 to 255
192 to 223
Network ID
0 to 255
192.0.0.0 to
223.255.255.255
Multicast address
Class D (multicast):
224 to 239
0 to 255
0 to 255
1 to 254
224.0.0.0 to
239.255.255.255
Class E (reserved):
240 to 255
0 to 255
0 to 255
1 to 254
240.0.0.0 to
255.255.255.255
CS454/654
From Coulouris, Dollimore and Kindberg, Distributed Systems: Concepts and Design, 3rd ed.
Addison-Wesley Publishers 2000
2-24
CS454/654
2-25
IP Packet Layout
header
IP address of source
IP address of destination
data
up to 64 kilobytes
CS454/654
From Coulouris, Dollimore and Kindberg, Distributed Systems: Concepts and Design, 3rd ed.
Addison-Wesley Publishers 2000
2-26
Network is a mesh of
interconnected routers
Two ways of setting up a
connection between two
computers
circuit switching: dedicated
circuit per call: telephone
net
packet-switching: data sent
thru net in discrete chunks
CS454/654
2-27
Circuit Switching
End-end resources
reserved for call
CS454/654
2-28
Circuit Switching
time
CS454/654
division
2-29
Packet Switching
Resource contention:
CS454/654
2-30
Packet Switching
10 Mbs
Ethernet
A
B
statistical multiplexing
1.5 Mbs
queue of packets
waiting for output
link
CS454/654
45 Mbs
2-31
Message Switching
Message
0
5
Message
10
Message
Message
15
Time (sec.)
CS454/654
2-32
N users
circuit-switching:
1 Mbps link
10 users
packet switching:
CS454/654
35 users,
probability > 10 active less
than .004
2-33
CS454/654
2-34
Nodal processing
Queuing
Transmission delay
A
B
transmission
propagation
nodal
processing queueing
Propagation delay
2-35
Routing
each packet carries tag (virtual circuit ID), tag determines next hop
fixed path determined at call setup time, remains fixed thru call
routers maintain per-call state
CS454/654
2-36
A
Hosts
or local
networks
B
2
Links
C
5
E
Routers
CS454/654
From Coulouris, Dollimore and Kindberg, Distributed Systems: Concepts and Design, 3rd ed.
Addison-Wesley Publishers 2000
2-37
Routing Algorithms
Routers are responsible for forwarding packets from the source to the
destination
V
2
U
W
3
5
1
Z
2
1
CS454/654
Y
2-38
Routing Algorithms
Distance-vector algorithm
No node has complete information about the costs of all network links
CS454/654
2-39
Link-State Routing
Each node broadcasts its link-state information to all other nodes in the
network
OSPF is an example of a link-state routing algorithm
Iterative algorithm
After k iterations, the least-cost paths are known to k destinations
These
CS454/654
2-40
Link-State Routing
5
Z
2
1
D(v): cost of the least-cost path from the source node to destination v
p(v): previous node along the current least-cost path from the source to v
N: subset of nodes, where v is in N if the least-cost path from the source
to v is definitively known
Step
D(v),p(v)
D(w),p(w) D(x),p(x)
D(y),p(y)
D(z),p(z)
2,u
5,u
inf
Inf
ux
2,u
4,x
2,x
Inf
uxy
2,u
3,y
4,y
uxyv
3,y
4,y
uxyvw
uxyvwz
1,u
4,y
CS454/654
2-41
Each node receives some information from one or more directly attached
neighbors (distributed)
It exchanges information until the results converge (iterative)
Messages are exchanged at different times between different nodes
(asynchronous)
CS454/654
2-42
Each node starts off with some estimate of its distance to every
node that it knows of, which might only be a subset of all the
nodes in the network.
CS454/654
2-43
Node z table
Node y table
Node x table
Inf
Inf
Inf
Inf
Inf
Inf
Inf
Inf
Inf
Inf
Inf
Inf
Inf
Inf
Inf
Inf
Inf
Inf
CS454/654
1
Z
2-44
Network Taxonomy
telecommunication networks
Circuit-switched
networks
FDM
Packet-switched
networks
TDM
Networks
with VCs
connectionoriented
CS454/654
Datagram
Networks
connection-oriented
& connectionless
2-46