RSS

Network Latency

Thu, Jun 25, 2009

Staff Posts

In the next couple of posts I will add some glossary definitions that I see repeat in reader’s questions. I will also use these as I describe some of the performance analysis insights we experience in the field.

Network Latency/Network Delay

One-way network latency is defined as the amount of time it takes for a packet to traverse a particular network path, from a device that created the packet to the destination device. This is also known as end-to-end latency.

Network delay is composed of propagation, processing, serialization, and queuing delay.

Propagation delay is the time it takes the physical signal to traverse the path. This delay is usually fairly constant if there are no route changes (it’s more constant if the end-points are static connected via optical fiber and has more variation if one of the end-points is a moving airplane or satellite). Propagation delay is the result of pure physics where as

t(msec) = d(distance)/(2/3rds of the speed of light)

Propagation Delay

Processing and Serialization delay is the aggregate time it takes each hop on the route to process and transmit the packet. Depending on bit-rate (bandwidth) it may be a significant portion of overall delay or may be negligible. In modern networks where high bit-rate connections are becoming the norm, serialization delay is becoming more and more negligible. In any case, for given packet size and path, serialization delay is constant (unless affected by hardware compression) and varies during route changes and as packet length changes. Processing time in each hop depends on the services that this hop provides (bridging, routing, encryption, compression, tunneling, etc.) and on the speed of the device itself but generally in modern networks this is a number of a much lower order of magnitude than the rest of the latency factors.

Queuing delay is the time a packet spends in router queues. This time depends naturally on queue lengths: for an unloaded network it would be negligible; for a network that is heavily congested it could considerably contribute to the end to end delay. It is the most variable delay component in a typical modern network. Queuing delay changes based on the burstiness of the traffic, since a burst of traffic creates an increase in the queue depth. Queuing delay is the main reason for jitter, which is caused by the variation of latency over time.

Queuing delay is the time packets wait inside the devices’ queues.

Latency and bandwidth together determine the “speed” of a connection.

Latency can increase as the bandwidth utilization and traffic load changes but it will never go below the propagation delay (simple physics). As load increases, it is possible that latency will increase since buffers may begin to populate on the path between the sender and receiver.

All in all, network latency is the combination of all factors described above. The impact of the network delay on application performance is a topic of a future post.

Best,

Amichai

, ,

share

0 Comments For This Post

1 Trackbacks For This Post

  1. Building Applications for a Remote Datacenter Part 1. The network impact | Application Performance Management Blog - Shunra Software Says:

    [...] Network Latency – the time it takes a packet to traverse from a source to the destination across [...]

Leave a Reply

Get Adobe Flash playerPlugin by wpburn.com wordpress themes