CSEN 404
Introduction to Networks
Hisham Othman
Nadeen Hamza
Basma Mohamed Afifi
** Slides are attributed to J. F. Kurose
Roadmap
1-2
1.1 What is the Internet?
1.2 Network edge
end systems, access networks, links
1.3 Network core
circuit switching, packet switching, network structure
1.4 Delay, loss and throughput in packet-switched
networks
1.5 Protocol layers, service models
1-3 Preliminaries
Recap – Store and Forward
1-4
Sender has message,
message is broken down to
𝒎 packets before sending to
router
Message (n bits)
Once packet is received, sent Packet Packet
to next router without waiting Packet 1 (n/m bits) 2 (n/m m
for entire msg
bits)
Once bit is received, router
waits for rest of bits of
same packet and Bit 1 Bit 2 … Bits Bits
assembles packet before
sending to next router
x bits for x bandwidth x bits for x bandwidth
BUT – packet is not sent as one unit! As soon as packet is received and
processed by router, bits are sent to next router according to bandwidth
Some Preliminaries
1-5
Bandwidth – data transfer rate of a network
How much data (bits) can be sent over a connection in a given
amount of time (second)
Downstream (network to user) rate is typically higher than
upstream (user to network) rate
DSL rate: 30 Mbps
to over 100 Mbps
WiFi rate: can
reach 54 Mbps
Some Preliminaries
1-6
Router – device that forwards packets from incoming
links to outgoing links
routing
routing, management
processor
control plane (software)
forwarding data
plane (hardware)
high-seed
switching
fabric
router input ports router output ports
1-7 Nodal Delays
- Processing Delay
- Queuing Delay
- Transmission Delay
- Propagation Delay
How do loss and delay occur?
1-8
packets queue in router buffers
packet arrival rate to link exceeds output link capacity
packets queue, wait for turn
packet being transmitted (delay)
B
packets queuing (delay)
free (available) buffers: arriving packets
dropped (loss) if no free buffers
Four sources of packet delay
1-9
1. Processing: 2. queuing:
check bit errors time waiting at output link
determine output link for transmission
depends on congestion
level of router
transmission
A propagation
B
nodal
processing queuing
Delay in packet-switched networks
1-10
3. Transmission delay: 4. Propagation delay:
R=link bandwidth (bps) d = length of physical link
L=packet length (bits) s = propagation speed in
time to send bits into link = medium (~2x108 m/sec)
L/R propagation delay = d/s
transmission Note: s and R are very
A different quantities!
propagation
Propagation: speed at
which electrical signals can
B travel
nodal
processing queuing Limited as a percentage of
the speed of light
Nodal delay
1-11
d nodal d proc d queue d trans d prop
dproc = processing delay
typically a few microsecs or less
dqueue = queuing delay
depends on congestion. Characterized using statistical measures
dtrans = transmission delay
= L/R, significant for low-speed links
dprop = propagation delay
a few microsecs to hundreds of msecs
Caravan analogy: [An Example from the Textbook]
Transmission delay vs Propagation delay
1-12
100 km 100 km
ten-truck toll toll
caravan booth booth
Trucks “propagate” at Time to “push” entire caravan
100 km/hr through toll booth onto
toll booth takes 12 sec to highway = 12*10 = 120 sec
service car (transmission time) Time for last car to
truck ~ bit; caravan ~ packet propagate from 1st to 2nd
toll both: 100km/(100km/hr)
Q: How long until caravan is = 1 hr
lined up before 2nd toll
booth? A: 62 minutes
Queuing delay (revisited)
1-13
average
R=link bandwidth (bps) queuing delay
L=packet length (bits)
a=average packet arrival
rate
traffic intensity = La/R
La/R ~ 0: average queuing delay small
La/R < 1: delays depends on nature of arrivals
La/R ~1: more “work” arriving than can be serviced,
average delay infinite!
Packet loss
1-14
queue (aka buffer) preceding link in buffer has finite
capacity
packet arriving to full queue dropped (aka lost)
lost packet may be retransmitted by previous node,
by source end system, or not at all
buffer
(waiting area) packet being transmitted
A
B
packet arriving to
full buffer is lost
1-15 Throughput
- Instantaneous
- Average
- Bottleneck
Throughput
1-16
throughput: rate (bits/time unit) at which (useful)
bits arrive at receiver
instantaneous:rate at given point in time
average: rate over longer period of time
Note: Bandwidth is theoretical and associated with sender
Throughput is actual and linked to receiver
server,
server sendswith
bits link that
pipe capacity
can carry link
pipecapacity
that can carry
(fluid)
file into
of Fpipe
bits Rfluid
s bits/sec
at rate Rcfluid
bits/sec
at rate
to send to client Rs bits/sec Rc bits/sec
Throughput (more)
1-17
Rs < Rc What is the average end-end throughput?
Rs bits/sec Rc bits/sec
Rs > Rc What is the average end-end throughput?
Rs bits/sec Rc bits/sec
bottleneck link
link on end-end path that constrains end-end throughput
Throughput: Internet scenario
1-18
per-connection end- Rs
to-end throughput: Rs Rs
min(Rc,Rs,R/10)
in practice: Rc or Rs is R
often bottleneck
Rc Rc
Rc
10 connections (fairly) share backbone
bottleneck link R bits/sec
Improving Bandwidth and Latency
1-19
Bandwidth Latency
More fibers in fiber links Increase propagation
More links on congested speed to speed of light (we
routes are already 60% close)
Hard bound!
Improve channel
multiplexing techniques Reduce distance travelled
Move data closer to clients
1-20 Network Model
- Layered Model
- Protocols
Protocol “Layers”
1-21
Networks are complex!
many “pieces”:
hosts Question:
routers Is there any hope of organizing
links of various media structure of network?
applications
protocols Or at least our discussion of
networks?
hardware, software
Organization of Air Travel: [An Example from the Textbook]
1-22
ticket (purchase) ticket (complain)
baggage (check) baggage (claim)
gates (load) gates (unload)
runway takeoff runway landing
airplane routing airplane routing
airplane routing
a series of steps
Layering of airline functionality
[An Example from the Textbook]
1-23
ticket (purchase) ticket (check) ticket
baggage (check) baggage (claim baggage
gates (load) gates (unload) gate
runway (takeoff) runway (land) takeoff/landing
airplane routing airplane routing airplane routing airplane routing airplane routing
departure intermediate air-traffic arrival
airport control centers airport
Layers: each layer implements a service
via its own internal-layer actions
relying on services provided by previous layer
In a distributed way
Why layering?
1-24
Dealing with complex systems:
explicit structure allows identification, relationship of
complex system’s pieces
layered reference model for discussion
modularization eases maintenance, updating of system
change of implementation of layer’s service
transparent to rest of system
e.g., change in gate procedure doesn’t affect rest of
system
Internet protocol stack
1-25
application: supporting network
applications application
FTP, SMTP, HTTP
transport: process-process data transfer transport
TCP, UDP
network: routing of datagrams from source network
to destination
IP, routing protocols link
link: data transfer between neighboring
network elements physical
Point-to-point Protocol (PPP), Ethernet
physical: bits “on the wire”
message M
source
application
Encapsulation
segment Ht M transport
1-26
datagram Hn Ht M network
frame Hl Hn Ht M link
physical
Hl Hn Ht M link
physical
switch
destination Hn Ht M network
M application H l Hn Ht M link
Ht M transport physical
Hn Ht M network
Hl Hn Ht M link router
physical
Summary
1-27
Nodal Delays
Processing Delay
Queuing Delay
Transmission Delay
Propagation Delay
Throughput
Instantaneous
Average
Bottleneck
Network Model
Layered Model
Protocols
Next Lecture
1-28
Application Layer
Any Question?
1-29