You are on page 1of 24

Throughput, Jitter and

Message Segmentation
Gaurav S. Kasbekar
Dept. of Electrical Engineering
IIT Bombay

Introduction 1-1
Reference
❑ These are a modified version of slides by
Kurose and Ross available at:
http://ctas.poly.asu.edu/millard/CET459/lectno/K%
20-%20R%20stuff/index.html

Introduction 1-2
Average Throughput B

❑ A, B end systems in a
packet switched n/w
❑ File of size F bits
transferred from A to B
in T secs
❑ Avg. Throughput = F/ T
❑ E.g., avg. throughput if an
attachment of size 106
bits downloaded from A
Gmail in 4 s:
 0.25 Mbps

1-3
Average Throughput (contd.)
❑ Only useful data included in calculation
❑ Headers, retransmitted packets, etc., excluded
• recall: file typically divided into several packets, header
added to each packet
• some packets retransmitted due to packet losses

❑ If headers, retransmitted packets, etc., included,


called “raw bit rate”
❑ F/T also called “goodput”
❑ In above e.g.,
 suppose file broken into 100 pkts of 10000 bits each; header
of 400 bits added to each pkt
 10 pkts dropped by intermediate routers and retransmitted
❑ Raw bit rate (sender side):
 0.286 Mbps
1-4
Instantaneous Throughput
❑ Intuitively, rate at which destination is
receiving bits “at current instant”
 e.g.,
the number displayed by browsers/ file
transfer apps
❑ Bits are discrete
❑ In practice, average throughput in a small
time window used as instantaneous
throughput
❑ Inst. throughput typically time-varying

1-5
Analysis of Throughput
For approximate analysis, convenient to
model:
❑ bit flow as flow of fluid
❑ communication links as pipes

Introduction 1-6
Example 1

❑ Data sent from server to client via 1 router


❑ No other flows in network; headers ignored
❑ Max. throughput:
 min(𝑅𝑠 , 𝑅𝑐 )

❑ File of size 𝐹 bits transferred


❑ Transfer time:
𝐹

min(𝑅𝑠 ,𝑅𝑐 )

❑ Ignores propagation delay, delay due to


store-and-forward, processing delay 1-7
Example 2

❑ Data sent from server to client via 𝑁 − 1


routers
❑ No other flows in network
❑ Max. throughput:
 min(𝑅1 , … , 𝑅𝑁 )
❑ Throughput determined by bottleneck link
❑ When other flows present, which link is
bottleneck also depends on congestion levels
1-8
Example 3 ❑ 𝑁 flows sharing a link
❑ Each server (respectively, client)
connected to corresponding router
by link of rate 𝑅𝑆 (respectively, 𝑅𝐶 )
❑ Assuming common link shared
equally, max. throughput of each
flow:
𝑅
 min 𝑅𝑆 , 𝑅𝐶 ,
𝑁
❑ Want to achieve such fair sharing
in distributed manner
 “congestion control” problem
❑ If diff. servers and/ or clients
were connected to corr. router by
links of diff. rates, would need
more general notion of fairness
 “Max-min fairness”
1-9
Jitter
❑ A, B end systems
B
❑ Flow from A to B
❑ Recall: end-to-end delay
varies from packet to
packet
❑ Variation in end-to-end
delay called jitter

A
Introduction 1-10
Jitter (contd.)

Ref: http://www.cisco.com/en/US/tech/tk652/tk698/technologies_tech_note09186a00800945df.shtml

Introduction 1-11
Quantifying Jitter
❑ Upper and lower bounds on end-to-end
delay
❑ Standard deviation of end-to-end delay

Introduction 1-12
Example
❑ Video streaming of a live event over
network
 30 video frames transmitted per second by
source, each in a separate packet
 one packet every 33 ms

❑ Receiver starts playing video as soon as


first frame received
❑ Receiver needs to receive new frame every
33 ms to display it
❑ If next frame received before 33 ms, can
be saved and displayed later
❑ If next frame received after 33 ms, video
stuck 1-13
Example (contd.)
❑ Jitter impacts perceived quality more than
end-to-end delay
 doesn’t matter much if whole stream delayed by
2 s instead of 1 s
 video quality not smooth due to jitter

Introduction 1-14
Example (contd.)
❑ Jitter can be hidden by receiver system:
 delay start of play back sufficiently
 buffer frames at receiver
 so frame will always be available at receiver
when needed
❑ Amount of buffering needed:
 (Max. delay – Min. delay) seconds of video
 depends on jitter

❑ Upper bound on (Max. delay – Min. delay)


must be known to use above scheme
❑ Buffering not possible for some real-time
services, e.g., Internet telephony
Introduction 1-15
Quality of Service
❑ Recall: network is infrastructure that
provides services to apps
❑ Quality of Service (QoS) depends on:
 Throughput
 Packet Loss
 Delay
 Jitter

❑ QoS requirements vary across apps

Introduction 1-16
Types of QoS Requirements
❑ Elastic
 E.g., file transfer, web downloads
 Delay, jitter requirements not stringent
 Packet loss not tolerable
• if network loses packets, must be retransmitted
 Throughput as high as possible
❑ Real-Time
 E.g.,Internet telephony, live video streaming
 Stringent delay, jitter requirements
• E.g., end-to-end delay < 200 ms
 Some packet loss tolerable
• slight disruption in sound, picture quality acceptable
 Instantaneous throughput must be above some
threshold (e.g., 24 kbps for voice call) 1-17
Mechanisms to Support QoS
Requirements
❑ Elastic
 Retransmit lost packets
 Transmit packets while waiting for
acknowledgment
❑ Real-Time
 Bandwidth reservation (e.g., as in circuit switching)
 Admission control
 Separate queues at router for elastic and real-
time services; preference to latter

Introduction 1-18
Message Segmentation

Introduction 1-19
Message Segmentation

❑ A, B end systems B
❑ Large file (message)
transferred from A to B
❑ File broken into several
smaller packets
❑ Packets sent
independently
 e.g., each pkt has header
with destination address,
separate ack for each pkt
A
Introduction 1-20
❑ End-to-end delay
Reasons for Segmentation
 recall: store-and-forward routing used
Example
❑ In figure below, 𝑅1 = ⋯ = 𝑅𝑁 = 𝑅
❑ File of size 𝐹 = 𝑀𝐿 transferred from server to client
❑ No other flows in n/w; prop., processing delays, headers ignored
❑ End-to-end delay without segmentation:
𝑀𝐿𝑁

𝑅
❑ With segmentation into 𝑀 packets of length 𝐿 each:
𝑀𝐿 (𝑁−1)𝐿
 +
𝑅 𝑅
❑ E.g., with 𝑀 = 1000, 𝐿 = 104 , 𝑁 = 10, 𝑅 = 1 Mbps
 100 s and 10.09 s, respectively

1-21
Reasons for Segmentation (contd.)
❑ Fair sharing of resources
Example
❑ Large file to be transferred from S1 to D1
❑ If no segmentation used:
 all other source-destination pairs get blocked for a
long time

1-22
Reasons for Segmentation (contd.)

❑ Reduction of retransmissions induced by


packet losses or bit errors
 e.g.,congestion at intermediate router or poor
signal conditions at wireless link on path
❑ Physical link limitations
 e.g., to limit overhead from collisions in random
access protocols
❑ Hardware,OS limitations of network
nodes

Introduction 1-23
Disadvantages
❑ Header must be added to each packet
 increased overhead

❑ Packet size shouldn’t be too small

1-24

You might also like