Network delays come in many forms each having implications on data transmission between end systems. As packets travel along a network there may be certain delays experienced at each node along the path.
Nodal delays can be represented discretely such as nodal processing delays, nodal queuing delays, or nodal transmission delays, or cumulatively as a total nodal delay. Each has utility in estimating
Processing Delay
Packet-switched network communications rely on data (payloads) encapsulated with relevant header data. This header data contains at least information related to host
and port
to which the packet should be routed.
Processing delays account for the time it takes for a network router to inspect the header information, perform data validation tasks if required, and queue the packet for forwarding on the recipient-side of the switch. Processing delays are typically measured in the microsecond range.
Queuing Delay
When a link receives network packets, it puts them into a queue in the order they are received. Depending on current network conditions, a packet may have to wait longer to be processed through the queue than during less congested network conditions.
An example would be trying to send information across the network during peak evening times when many households are using streaming services such as Netflix. Queuing delays during non-congested network conditions are typically on the order of microseconds but can creep into the millisecond range during peak usage times.
Queuing delays differ from other delays in that a series of 10 packets being transmitted across a network may each experience a different queuing delay without network conditions changing. For example, the first packet to arrive at an empty queue would experience no queuing delay while the last would experience significant delays.
Transmission Delay
The transmission of packets can be measured as a function of time and total transmitted bits. Transmission delays describe the total time it takes for a network router to push received bits onto the next link after receiving them.
For a packet 1024 bits in size being transmitted on a 10Mbps ethernet access network, that would be 1024/106 bits per second. For an entire network, transmission delays can be measured on a per-link and per-switch basis or cumulatively as a total transmission delay.
Propagation Delay
Propagation delays describe the total time a bit takes to travel from the forward side of a network link to the next router.
This time, roughly the speed of light for most mediums falls within a typical range of 2*108 meters/sec —3*108 meters per second (R). This delay can be calculated by the following formula:
Propagation delay = distance between links / transmission speed
Propagation delays are typically on the order of milliseconds and represent one of the most significant delays on network traversal.
Total Nodal Delay
Each of the delays mentioned thus far can vary wildly across networks. While consideration of each delay in a granular capacity can help optimize network traffic, it’s often useful to have a more holistic metric by which to measure delays.
A total notal delay can be calculated by the following formula
Nodal Delay = Processing Delay + Queuing Delay + Tranmission Delay + Propagation Delay
Traffic Intensity Measures
Queuing delays present a particular interest when calculating network delays. There are several key factors by which queuing delays can be considered:
- Average Arrival Rate of packets (a)
- Average Paket Size (P)
- Average Transmission Rate (R)
A traffic intensity measure can be obtained by the formula PA/R
and can describe network conditions in the following situations:
Pa/R > 1
: Packets are arriving faster than the queue can be processed; the queue continues to increase in size indefinitely.
Pa/R <= 1
: Packet arrivals spaced evenly throughout time will not experience significant queuing delays but packets arriving in “bursts” may lead to significant delays.
Discussion
Network delays are useful considerations when designing and deploying applications that require network communication. Protocols such as Transmission Control Protocol (TCP) rely on certain congestion control protocols to help act in response to degraded network conditions.
Depending on how congestion control measures are deployed, applications may receive feedback directly from network switches or indirectly through end-to-end meaures. Either way; observing and responding to network congestion is an essential practice of any reliable transmission protocol.