MiniDexed
MiniDexed copied to clipboard
Getting lots of "icmp - - - Time exceeded (0)" from circle
Getting lots of icmp - - - Time exceeded (0) even though the networking functionality is working.
The message is coming from circle-stdlib/libs/circle/lib/net/icmphandler.cpp, so it is not really under our control.
We could patch it away on-the-fly with sed -i "/case ICMP_TYPE_TIME_EXCEED:/,/break;/d" circle-stdlib/libs/circle/lib/net/icmphandler.cpp but that doesn't feel like a clean solution.
Please don't patch code on the fly :)
Is this related to https://github.com/probonopd/MiniDexed/pull/747#issuecomment-2481434797
Kevin
Yes, it is not only related but it is the exact same (imho cosmetic) message. Because everything works fine. Possibly the message is appearing without there being an actual error?
What is it trying to achieve with icmp in the first place? Do we need that?
icmp is pretty critical in IP networks. If it is reporting issues we ought to look into why. Icmp handles all sorts of IP level control information about routing and passing of packets (the clues in the name - Internet Control Message Protocol).
Of course it could be bugs in our use of the network stack, or even bugs in the stack itself - I don't know how well used in circle it has been.
But it could signify that we have some of the network parameters wrong - maybe window sizes/buffers too small; network related timeouts too short; etc.
It could be that networking is functioning but with lots of retries or timeouts, therefore loading the system or the network (or both), but it still manages to get packets through.
It could be genuine issues on the network of course.
Or it could be that we're not servicing the networking code often enough so it isn't getting to handle packets in time to satisfy the network stack (see my other comment about the difficulties of networks on embedded and real-time systems).
I short, I strongly suggest we don't ignore it, but instead try to understand why it is happening.
But I am not familiar with the circle networking stack at all I'm afraid, so if would take me a lot of effort, or someone else who is more knowledgeable about it should have a look.
Perhaps the original author would like to step up to help maintain the code they contributed?
Kevin
Maybe @rsta2 has an idea why we are getting flooded by the icmp - - - Time exceeded (0) message? Thanks.