Professional Documents
Culture Documents
Networks
Instructor: Dr. Maaz
maazbinahmad@yahoo.com
+923335264960
11/28/16
Course Material
Reference books
Many textbooks on Networking may be consulted
Web resources
Tutorials, white papers, reports, etc.
11/28/16
Text Book
Larry L. Peterson and Bruce S. Davies,
Computer Networks: A Systems Approach
Third Edition [2003], Morgan Kaufmann
Publishers, San Mateo, California, USA
11/28/16
Prerequisites
Required:
An undergrad level course on computer networks
Recommended:
C Programming experience
Understanding of computer architecture
Basic operating system concepts
11/28/16
Expectations
11/28/16
Expectations
This course IS about
Network principles and concepts
General purpose computer networks
Internet perspective
Major components of the Internet protocol suite
11/28/16
Expectations
This course IS NOT about
11/28/16
Expectations
We will learn
why
networks are like they are
11/28/16
10
Course Contents
Overview
Introduction to networks
Direct link networks
Packet switching
Internetworking
End-to-end protocols
Congestion control and resource allocation
End-to-end data
Applications
Performance analysis and queuing theory (?)
11/28/16
11
Introduction
Outline
Statistical Multiplexing
Inter-Process Communication
Performance Metrics
Network Architecture
11/28/16
12
11/28/16
13
Network Design
Before looking inside a computer network,
first agree on what a computer network is?
Computer Network ?
Specialized to handle:
Set of serial lines to attach
terminals to mainframe ?
Telephone network carrying
voice traffic ?
Cable network to disseminate
video signals ?
11/28/16
Keystrokes
Voice
Video
15
What Distinguishes a
Computer Network ?
Generality
Built from general purpose
programmable hardware
Supports wide range of applications
11/28/16
16
17
Applications Consumers of
Networks
On a simple click, several messages may be exchanged
over the Internet
In a web browser, 17 messages may be exchanged
18
11/28/16
19
20
Network Overview
What must a network provide ?
connectivity
cost-effective sharing
functionality
performance
How are networks designed and built ?
layering
protocols
standards
11/28/16
21
Perspective
For network user
connectivity: for services required; error
free delivery within acceptable time limits
11/28/16
22
Building Blocks
Nodes: PC, special-purpose hardware
hosts
switches
multiple access
11/28/16
23
24
Switched Networks
A network can be defined recursively as...
two or more nodes
connected by a link
circular nodes
(switches) implement
the network
squared nodes (hosts)
use the network
11/28/16
25
Switched Networks
A network can be defined recursively as...
two or more networks
connected by one or more
nodes: internetworks
circular nodes (router or
gateway) interconnects
the networks
a cloud denotes any type
of independent network
11/28/16
26
A Network
A network can be defined recursively as
two or more nodes connected by a physical link
OR
two or more networks connected by one or more
nodes
11/28/16
27
Components of a Network
11/28/16
28
Switching Strategies
Circuit switching:
carry bit streams
a. establishes a dedicated
circuit
b. links reserved for use
by communication
channel
c. send/receive bit stream
at constant rate
d. example: original
telephone network
29
What next ?
Hosts are directly or indirectly connected to
each other
Can we now provide host-host connectivity ?
Nodes must be able to say which host it wants
to communicate with
11/28/16
30
Types of addresses
unicast: node-specific
broadcast: all nodes on a network
multicast: some subset of nodes on a network
11/28/16
31
Wrap-up
A network can be constructed from nesting
of networks
An address is required for each node that is
reachable on the network
Address is used to route messages toward
appropriate destination
11/28/16
32
What next ?
Hosts know how to reach other hosts on the
network
How should a node use the network for its
communication ?
All pairs of hosts should have the ability to
exchange messages: cost-effective resource
sharing for efficiency
11/28/16
33
Multiplexing
Physical links/switches must be shared among users
(synchronous) Time-Division Multiplexing (TDM)
Frequency-Division Multiplexing (FDM)
L1
R1
Multiple flows
on a single link
L2
L3
R2
Switch 1
Switch 2
R3
34
Statistical Multiplexing
35
Statistical Multiplexing
An application needs to break-up its message in packets, and
re-assemble at the receiver
Fair allocation of link capacity: FIFO, round-robin or QoS
If congestion occurs at a switch - buffer may overflow,
packets may be lost
11/28/16
36
Inter-Process Communication
Turn host-to-host connectivity into process-to-process
communication, making the communication meaningful.
Fill gap between what applications expect and what the
underlying technology provides.
Host
Host
Application
Host
Abstraction for
application-level
communication
Channel
Application
Host
Host
11/28/16
37
38
39
Performance Metrics
and to do so while delivering
good performance
Bandwidth (throughput)
data transmitted per unit time, e.g. 10 Mbps
link bandwidth versus end-to-end bandwidth
notation
Kbps = 103 bits per second
11/28/16
40
Performance Metrics
Bandwidth related to bit width
1Mbps, 1s/bit
(a)
1 second
2Mbps, 0.5s/bit
(b)
1 second
11/28/16
41
Performance Metrics
Latency / delay
time to send message from point A to point B
one-way versus round-trip time (RTT)
components
Latency = Propagation + Transmit + Queue
Propagation = Distance / c
Transmit = Size / Bandwidth
Note:
No queuing delay in direct (point-to-point) link
Bandwidth irrelevant if size = 1 bit
Process-to-process latency includes software processing overhead
(dominates over shorter distances)
11/28/16
42
25MB file:
Choice of 1Mbps vs 100Mbps dominates 1ms vs
100ms
43
11/28/16
44
Bandwidth Requirements
Request/reply type applications may agree for as
much bandwidth as is available
Message stream type applications often require a
certain bandwidth: not more not less
Average required bandwidth does not always help
to design a network
Upper bound on a burst (peak-rate transfer)
45
Network Architecture
The challenge is to fill the gap between hardware
capabilities and application expectations, and to
do so while delivering good performance
Designers cope with this complex task by
developing a network architecture as a guideline
Layering, protocols, standards
11/28/16
46
Layering
Use abstractions to hide complexity
Abstractions naturally lead to layering
Each layer provides some functionality
Application programs
Process-to-process channels
Host-to-host connectivity
Hardware
11/28/16
47
Layering
Alternative abstractions at each layer
Manageable network components
Modify layers independently
Application programs
Request/reply
channel
Message stream
channel
Host-to-host connectivity
Hardware
11/28/16
48
Protocols
Building blocks of a network architecture
Each protocol object has two different interfaces
service interface: operations on this protocol
peer-to-peer interface: messages exchanged with peer
11/28/16
49
Protocol Interfaces
Host 1
High-level
object
Protocol
Host 2
Service
interface
Peer-to-peer
interface
11/28/16
High-level
object
Protocol
50
11/28/16
51
Standard Architectures
Open System Interconnect (OSI) Architecture
International Standards Organization (ISO)
International Telecommunications Union (ITU),
formerly CCITT
X dot series: X.25, X.400, X.500
Primarily a reference model
11/28/16
52
OSI Architecture
End host
End host
User
level
OS
kernel
Application
Application
Application
Presentation
Presentation
Data formatting
Session
Session
Connection management
Transport
Transport
Process-to-process
communication channel
Network
Network
Network
Network
Data link
Data link
Data link
Data link
Physical
Physical
Physical
Physical
Host-to-host packet
delivery
Framing of data bits
Transmission of raw bits
11/28/16
53
Internet Architecture
TCP/IP Architecture
Developed with ARPANET and NSFNET
Internet Engineering Task Force (IETF)
Culture: implement, then standardize
OSI culture: standardize, then implement
Became popular with release of Berkeley Software
Distribution (BSD) Unix; i.e. free software
Standard suggestions traditionally debated publically
through Request For Comments (RFCs)
11/28/16
54
Internet Architecture
Implementation and design done together
Hourglass Design (bottleneck is IP)
Application vs Application Protocol (FTP, HTTP)
FTP
HTTP
NV
TFTP
UDP
TCP
IP
NET1
NET2
11/28/16
NETn
55
Internet Architecture
Layering is not very strict
Application
TCP
UDP
IP
Network
11/28/16
56
Network Models
11/28/16
57
11/28/16
58
11/28/16
59
Protocol Acronyms
11/28/16
60