We're investigating an issue with our kit, which is an IP camera running Busybox Linux on a Ti-Davinci SoC.
On one particular site there is a lot of network traffic (over which we do not have control) with one system spamming out broadcast packets (to 255.255.255.255
) every ~50ms non-stop. It's not sending much data but it's very persistent.
This has a strange effect on our system - if the system starts, re-starts, or the networking re-starts (ifdown ... ifup
etc.) while this traffic is present, the network interface fails to work properly. It claims to be up
but simply sits there logging thousands of Rx overruns / frame errors. We don't successfully receive anything (PINGs etc.) addressed to us and can't send anything either, PINGs fail as if they've gone missing (they show as transmitted successfully but never actually leave us) rather than being actively rejected / dropped. The networking driver seems to believe it's up & working OK but nothing gets in or out.
If we remove the traffic and start / re-start / cycle the networking, the interface comes up and works perfectly - if we then re-introduce the traffic we then do NOT see the overruns / frame errors racking up.
Being a small embedded system running Busybox we have neither the horsepower nor the full range of networking tools at our disposal for some of the heavier-duty suggestions found whilst searching (increasing Rx buffers being the main one I found).
Rather, I'm looking for suggestions on the root cause and/or suggestions on where to start poking about to try and prevent this from happening. It may be as simple as tweaking kernel parameters or rebuilding the networking driver - answers on a postcard!
If more info is needed please ask - this doesn't generate any errors other than the Rx Overflow/Frame stats in ifconfig
so nothing really worth posting.