Network Performance Flashcards
(18 cards)
“best-effort” packet delivery service
What does best-effort delivery mean?
* Sometimes packets do not reach their destinations
* Packets can be reordered and delayed arbitrarily
* There are no guarantees on whether packets will be delivered or
in what condition they will arrive
Any reliability comes from the protocols
running at the end-systems
store and forward:
entire packet must arrive at router before it
can be transmitted on next link
Transmission Delay
takes L/R seconds to transmit (push out)
L-bit packet into link at R bps
Queuing Delay
Queueing occurs when work arrives faster than it can be serviced
if arrival rate (in bps) to link exceeds transmission rate (bps) of link for some period of time:
* packets will queue, waiting to be transmitted on output link
How do packet losses occur?
- Packets queue in router buffers, waiting for their turn for transmission
- Queue length grows when arrival rate to link (temporarily)
exceeds output link capacity - Packet loss occurs when memory to hold queued packets fills up
Other Sources of Loss
Packets can also be lost in the physical medium, particularly with
wireless link technologies
Hardware and software in devices may also malfunction
– This includes errors and corruption
– packets may still be sent, but fail
Devices can also be attacked: “Denial of Service” attack
– A simple way would be to bombard a device with packets, and so
fill up its buffers
– This prevents other hosts from sending packets, whether
completely or at a reduced rate
Queuing Delay Summary
Once a packet has been processed, it will join a queue
– It waits here to leave the device
– It will not be sent until it reaches the head of the queue
Queuing Delay is the time spent waiting in the queue before a
packet is transmitted
The length of the queue, and thus the delay, is dependent on the
congestion level of the node/router
Processing Delay
Time taken for a device to examine a packet’s header and decide where to direct the packet
* May include a check of bit-level errors (as caused during
transmission)
* Typically, this delay is very small
* Usually microseconds – i.e., millionths of a second
* Can vary depending on how busy the device is
Propagation Delay
Once a bit has been pushed onto a link, it needs to propagate to
the next device
* Each link has an associated Propagation Delay
* Measured as the time needed to get over the link from one end to
another
* Propagation delay is dependent on the physical type of the link
calculation:
Propagation Delay = d/s
* d: length of physical link
* s: link’s propagation speed (~2x108 m/sec) which is about two
thirds the speed of light*
Nodal Delay
- Total of all previously-mentioned types of delay
- Measured per node (i.e., per each device in a network)
Queuing Delay
a: average packet arrival rate
L: packet length (bits)
R:link bandwidth (bit transmission rate)
End-to-End Delay and Round-Trip
Time (RTT
End-to-End Delay is an often-used measurement that is the total of all nodal delays, from one host to another
- May include numerous nodes
- Varies over time as the various component sources of delay
increase and decrease
Round-Trip Time (RTT): End-to-End Delay measured in both
directions
* From one to host to another, and then back again
* Doesn’t necessarily have to use the same path/route!
Measuring Delay
Traceroute
The traceroute program measures delay from the source to
each router on the path to a destination
* Records RTT (there and back)
* For each router, the source:
– Sends three packets (probes) to a router that lies on the path to
the destination
– Routers return packets to the sender
– Sender measures lag between transmission and reply
Throughput
Throughput is the rate (bits/time unit) at which bits are transferred from a sender to a receiver
– Instantaneous throughput: rate at given point in time
– Average throughput: rate over a period of time
– Peak throughput: highest instantaneous throughput rate seen so
far
* Throughput is often restricted by a single bottleneck link
* Some protocols can “throttle” themselves, and reduce their
own rate
– This avoids stressing bottleneck, but at the cost of lower rates
Measuring throughput
Normally runs as a “client-server” model
* Client host requests sample data, server host serves it, generating
a stream of sample data across the network
* Because we know exactly how large the sample data is, and how
long it takes to retrieve it, we can calculate throughput
* Very configurable
* Can use different protocols, data sample sizes, etc
Measuring Loss
ping
Ping works in a similar fashion to traceroute but in an end-to
end manner
* It creates messages to be sent out to specific hosts (rather than
nodes along the path)
* Measures RTT (as with traceroute)
* Also includes a measurement of packet loss, by keeping track of
how many messages were sent, and how many responses were
received
Queuing Disciplines
When packets must be dropped because of a full queue, we still
have control over which packet(s) to drop
Random Drop: Drop any packet within the queue–
Quality-of-Service (QoS) Aware: Packets will be dropped given their
priority; provide fairness and guarantee throughput for sensitive
services, such as voice calls or live video