-5

I have a technical question about a network problem in an industrial production environment. They didn't like it in the Network Engineering because we use what they called "consumer grade" devices. We make manufacturing equipment that runs 24/7 in the aerospace industry and if you've ever flown a modern aircraft there's a good chance it was built using our "consumer grade" equipment, but it's still not up to their standard. They didn't like it on Software Engineering because I asked what tools I could use to analyze the problem and tools are off-topic. And since it's not about coding or programming languages (and also might involve tools) it's not a good fit for Stack Overflow. Super-user seems to be more for enthusiasts and hobbyists than for production environments. Server Fault seems more enterprise IT oriented. I've attached my question below - where does this belong?


My company makes industrial manufacturing equipment which is controlled from a Windows 7 PC. We also supply a "remote control" which is an Android app running on a Samsung smartphone that we supply. The Android device talks to the PC via a WAP (wireless access point) - we've tried this with DLinks and Buffalo Air Stations, which is connected to the PC via an ethernet cable. So...

PC =====cable==== WAP - - -WiFi- - - ANDROID DEVICE

Most of the time this works fine but on one particular system (which happens to be my system) if there is no activity for EXACTLY 1 minute then when the PC attempts to send a TCP packet to the Android it gets

Err=10053,Desc=Connection is aborted due to timeout or other failure

from winsock, and on Wireshark we see

10.1.2.1 10.1.2.11 TCP 60 40574→181 [RST] Seq=14 Win=0 Len=0

... where 10.1.2.1 is the IP address of the Android and 10.1.2.11 is the PC.

So it would seem that the Android is timing out at 1 minute, right? (like a battery-saving strategy). BUT -

  • This only happens when talking with my PC and WAP, not with other WAP/PC combo's we have here. We've tried this with several Android and PC/WAP setups.
  • The Android is set to leave WiFi "always on"
  • If I interrogate the socket on the Android while this is happening, it still thinks it's open and listening.
  • if I try to send a packet to the PC from the Android after the 1-minute mark it, the Android/Java socket reports "Exception ...sendto failed: ECONNRESET (Connection reset by peer)" (i.e., it seems to think the other side reset it.)
  • Also, we can still ping the Android from the PC when it's getting RSTs (granted ping is ICMP, not TCP).

So something is timing out, but what? Can my WAP time-out? Can the WiFi layer of the connection time-out, as opposed to the socket layer, and why would that only happen with my PC/WAP and not others? (and how could I detect this?) What kinds of tests, tools or experiments might illuminate this? Is there a way to "listen to" the TCP communication between the PC and Android?

  • Looks like you're going shpping with a big bag. I doubt that will fly well anywhere at SE. – πάντα ῥεῖ May 16 '17 at 21:52
  • Why was this down-voted? – user316117 May 16 '17 at 22:10
  • 1
    @ πάντα ῥεῖ what does that mean? There's only one question - how can I find out where in that simple network architecture the 1-minute timeout is happening? Everything else is just technical background, which is pretty common on the technical stack exchange forums. I'm on Stack Overflow a lot and we see questions much bigger than this every day. – user316117 May 16 '17 at 22:15
  • There is huge resource on google about those topics. Try there and if you get stuck in a specific place then comeback here. We will help you to overcome that error or obstacle. – M.A.K. Ripon May 17 '17 at 4:29
2

Not every question has a home on some Stack Exchange site. You seem to be approaching this from the perspective that "this question has gotta be appropriate on some site, I just gotta figure out which one". You might consider the possibility that maybe it's not suitable on any site. Debugging your specific system might not be of much interest to others, and might not be a good fit anywhere on Stack Exchange -- debugging is the sort of chore people are paid to do, but often isn't a good fit for our site's format.

Part of what makes the Stack Exchange network effective is limiting its scope to a particular style of question. If your question doesn't fit our scope, it's not a judgement on you; it's just a decision that it's not the sort of question that works well here, given the way Stack Exchange sites work.

  • " You might consider the possibility that maybe it's not suitable on any site." It goes without saying that that's a possibility, but is the only protocol for testing that to post the same question to lots of different candidate forums? What if I broke it down into simple questions with simple answers? "can a wireless access point inject an RST"? "Is there a way distinguish TCP from ICMP traffic over 801.11n?" etc... Is there a way to see whether those might have suitable forums without posting them to several different ones? – user316117 May 16 '17 at 23:18
  • 1
    @user316117, there's no shortcut. The protocol to figure out whether it is suitable on site S is: read their help center (every site has a page listing what is on-topic); read through other questions there to get a feel for what is well-received and what isn't; search on their meta; and then ask your question on their site, tailoring your question to their focus as much as possible. And, yes, this site format works a lot better when you ask one simple question rather than when you try to fit multiple questions together into a single post. – D.W. May 16 '17 at 23:24
  • @user316117, Oh, and please don't cross-post it on multiple sites. If it's already open on one site, please don't post it on another. If it gets closed on one site you can try another one. Or if you realize you asked on the wrong place, you can delete the question on one site before asking elsewhere. – D.W. May 16 '17 at 23:26
1

The individual bits of the question are on topic on Super User. I'm not entirely convinced it is answerable though, in its current form, simply because if it's some configuration in your application, we wouldn't know.

"What kinds of tests, tools or experiments might illuminate this?" - I'd word as "What else can I do to try to troubleshoot this?"

That said, I'd say give Super User a shot, and see what happens.

  • What is the protocol here for doing that? If I post a question to a forum and get the feedback that it's not suitable, or I simply don't get any useful answers, do I just delete it from that forum and post it to a different one? Is there a decent interval I should wait? One thing I've seen happen a lot on Stack Overflow is that someone posts a question and people complain that it's a bad question or they downvote it, but over time it eventually attracts good answers because not everyone agrees that it's a bad or off-topic question. – user316117 May 16 '17 at 23:24
  • flag for migration and in this case, say a mod said its fine. – Journeyman Geek May 17 '17 at 0:01

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .