Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Suppose I have a LAN with 20 devices attached (eg switches, router, access points, XBOX, DirecTV, IP Cameras, etc). I want to ping each devices periodically to see if all devices are alive. My ping process uses some worker threads (say 8 threads) to send 8 pings at a time until all 20 devices have been pinged. I know I can send these once a minute without causing any network load issues. But I'm wondering how quickly I can send pings before I start to see network load issues. For example, suppose I wanted to send pings once every 10 seconds, or once every 5 seconds. Does anyone have any rules of thumb to determine how frequently I can ping a typical LAN of 20 devices before I start to cause network load problems?

share|improve this question
    
This performance limit would be based on your network equipment and topology. What is/are the make(s) and model(s) of your switch(es) and/or router(s), and how are the devices plugged in? Are some on WiFi, and if so, what network device(s) is/are handling the wireless? –  Oran D. Lord Feb 26 at 19:42
    
Do you really need to check them every 5 or 10 seconds? Most enterprises don't perform checks that frequently. How about every 5 or 10 minutes? In addition, pinging a device only confirms that the device is responding to pings, it doesn't verify or validate that the devices are actually functioning correctly. –  joeqwerty Feb 26 at 19:53

2 Answers 2

up vote 1 down vote accepted

I think the question comes round to the number of packets per second you can send through your network. Generally this figure would be quite high.

A typical ping packet is about 64 bytes, so quite tiny. If all the devices are on the same lan, you should be able to get up to multiple pings per second without any issues - even most routers should handle that (but routers are where bottlenecks start occuring as the packets need to be inspected and this takes CPU).

You might want to get a version of MTR and crank up the number of pings it sends to a destination to see what kind of performance you get and where you start getting packet loss. (On Linux there is a value --interval which can be set in fractions of a second to send multiple packets per second - if you are root). For fun, I decided to send 1000 packets per second, and received 0% packet loss, and no noticeable jump in latency between directly connected gigabit devices. MTR would not go fast enough.

If you were to send pings across your lan to all devices once per second it would put a load of about 64 * 20 across it = 640 bytes per second = 5120 bits per second (approx), which is almost in the margin of error for even a 10 megabit switch - so practically, unless you really push stuff real hard, you can't cause network issues on your lan using PING with regular size packets.

share|improve this answer
    
Very useful and thoughtful answer - thanks! –  Marc Feb 27 at 1:28

By default Windows ping.exe send 32 bytes of data per 'ping'. That is an extremely small number that any network or device can handle. You would have to send a massive amount of simultaneous pings to even be noticeable.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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