When we ping a major web site, we're roughly measuring the delay between our device and the geographic location of the server that the site has chosen to send us to. It really could be anywhere. but let's just say it's 1000 kilometers of fiber plus some copper plus some air (if I'm using my phone to ping) away from us.

(The server could be only 10 km away from us but the packets are going through a far-away big city)

If I use 2E+05 km/sec for the speed of signal in fiber or wire (from this question) then the round trip is roughly 10 milliseconds.

OK so this is my first question here on Network Engineering SE and it's a little esoteric, but I think it's valid. For this type of "medium distance" connection in a part of the world with modern internet infrastructure, what fraction of a ping time comes from propagation delay, and what fraction comes from electronic buffering in routers, encoders/decoders, etc. along the way?

Another way to look at this is from the perspective of storage. During that ping time, your ping is either stored:

  1. in some DRAM or SRAM (or even worse sometimes - FLASH and Magnetic HD's)

  2. as an electromagnetic wave traveling down a fiber or in the air

  3. as a current pulse traveling in a cable or circuit board or chip.

While every situation is different, more often than not our data spends most of it's time as an electromagnetic wave or traveling current pulse. But is it typically 99.99% of the time, or 95%, or 51%?

Loosely speaking - at any moment in time how much of "the internet" is sitting in a buffer?


I'm not sure what you mean by buffer. There no buffering like when you want to watch a video.

Besides the inherent latency of the bits traveling the various media in a path, there are delays due to serialization/deserialization to get bits on/off a link, frames must be stripped so that routers can inspect the packet, delays for routing lookups, packets must be re-encapsulated in frames for the next link, possible delays for queues when there is congestion (this varies greatly depending on the traffic load, which constantly changes), and a delays for TCP when IP packets are dropped and need to be resent.

Instead of buffering like you may think of it, relatively small queues (usually less than 100 packets, possibly several for various traffic types) may be used in a router, and when a queue is full, packets are just dropped. There is also RED which randomly drops packets in a queue in order to prevent a queue from filling up.

Pings (ICMP in general) have a very low priority and are most likely to be dropped or put in a low-priority queue (other, higher-priority queues are served first).

There is far too much chaos on the Internet to give a single answer to your question. It depends on how many hops, which medium is between each hop, the router capabilities at each hop, whether the routing in any of the hops needs to be process switched, if any of the networks through which the traffic passes have QoS policies in place (and they could all be very different), etc.

You question is not really on-topic, but I gave you an answer which generally explains how things work.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.