Our software includes a module to stream live video data to multiple clients. Most of time it works fine, but in some cases it seems to have caused some malfunction of windows network.
When it happens, the LAN connection status in network connections still says "connected", and the IP address is normal. But I cannot ping any other device in the network. The only way to fix it is to disable and then re-enable the network connection.
This problem seems to be OS-independent, it has happened on XP, Vista and Win7 machines.
Has anyone experienced anything similar? Did my application crashed the network stack? or is it something else?
More likely a fault with the networking switch unless you have a really bad NIC.
Cheapest route is to first replace the NIC, but ideally you should be able to reproduce the fault in a test harness so try with a direct crossover cable between two hosts first to rule out the networking infrastructure being at fault.
∴ Server Fault could be a better place to ask the question.
Related
Is there a better tool than WireShark to sniff out where given application is trying to connect and at which port. (So that I could easily overwrite it with my HOSTS file). Being able to log packet data is helpful too.
Ultimately I would prefer an application that I could just throw a running process at and start logging the network activities of the given app
Of course the application and sniffer will be running on the same PC. Preferably I would love a Windows sniffer. Since running that app on Linux will be .... difficult.
Answering myself: http://www.sysprobs.com/monitor-network-traffic-windows-7-microsoft-network-monitor-34
This article helped me big time. The tool in there is really great.
Have you tried socket sniff?
It should let you monitor specific applications:
socket sniff
I have two applications that need to communicate with each other running on the same system.
I've been using the very strange practice of opening a TCP COM channel between the two applications for communication.
Is this practice frowned-upon in anyway? Is there any alternative (apart from using stdio, not possible due to other reasons).
Is there a restriction on maximum transfer rate and/or any latency involved (compared to piped stdio)?
I'm using the local (127.0.0.1) address for both server and client, will the connection be guaranteed to stay within the local machine itself or could it relay off the nearest router before coming back to itself and does the network card influence the properties of the connection at all?
I worked on a system a while ago with Java. and I was looking for the same question. I don't have much experience with it. But I ended up using tcp connections for communications for the following advantages:
1) The ability to put the different application in different servers in the future if needed to.
2) The applications are totaly independent. one application could crash without effecting the other one. If the working application then tries to connect it gets an error and you can handle that.
I saw this used in many other type of applications. So I went with it and it is working fine. But you have to be carefull and handle networks errors and IO errors and closing all open sockets after finishing with the connection. I was only closing the socket from the client end so I ended up with many CLOSE_WAIT ports in the server.
Regards,
It's pretty common to use TCP for inter-application communication.
Performance should not be an issue.
Sockets On Same Machine For Windows and Linux
You should consider security. What will happen if another user on the machine connects to the port, how will the application authenticate etc.
i use internet in two ways. One is with wifi and other is with LAN cable. i use fiddler frequently for debugging my web project. Recently from past 2days, i found that when i connected LAN cable to my LAN port, it was continuously making lots of requests to different ad sites. No application is opened. Just fiddler is running. Still i saw lots of requests killing my net speed. Is this any virus or Malware or something ?
i see ad.yieldads.com is the one making many requests. But when connected with wifi, its not happening. No requests are made automatically. Please advice on this.
This definitely sounds like malware. I wish there were easy instructions to fix it, but unfortunately there's not.
If you're using Windows, try several different products:
Microsoft Security Essentials
Malware Bytes
AVG
Hopefully one of those can help get rid of it.
Hi Guys I'm debugging some CS program and to view the performance of the application in slow internet I tried many different ways. However the best would be the Server and the client be in the same PC ---- my debugging environments for both the server side and the client is setup in one PC.
So I'm wondering is there anyway to limit the speed? I'm using TCP but I don't know too much in-depth knowledge of it.
Thank you
There are two important factors regarding a "slow" internet connection that you need to test out since they have different implications for your application: bandwidth and latency.
If you provide some more details about what os you are running your tests on, it would be easier to recommend a way to limit the network performance.
On a related side note, it's generally a bad idea to performance test any kind of networking using the loopback device on your machine, since many aspects of this will perform very different than the regular network device on your machine.
You mention in the comments this needs to be done on windows, while the Network Emulators I know of (e.g. netem, TCN, other variants) all require Linux. So one thing you could do is create a virtual machine (VirtualBox is fine, I did similar things with it), install linux on it, configure 2 network interfaces, emulate the slow/long/lossy/jittery network between them, and route the test traffic through it from windows.
Finally I found this does what I need.
http://www.nirsoft.net/utils/socket_sniffer.html
Captures Windows Socket traffic, no matter it's local or not.
I have an old school foxpro web app that I am trying to help limp along while I rewrite the system. Every day, multiple times, I get this following error message: The specified network name is no longer available.
Does anyone have any suggestions how to troubleshoot this? Perhaps, prove to my IT guys that there really is a network issue. I have theories, but I have no idea how to prove anything, it always comes back to foxpro sucks rewrite it now.
I'll take any help, tools, and will answer any questions that may clarify this for you.
thanks
We have a very large multi-user VFP application on hundreds of sites. Occasionally you get this sort of problem. It is almost always down to environmental issues.
Had one just recently where a client had two machines continually crashing out of the VFP application. Network IT guys swearing up and down that it's not their problem. But what's this in the System Log of both machines? Why, it's the Broadcom NIC reporting a network link loss detected at the same times the application crashed.
Check if the client and server NICs in your situation can report this.
You could consider writing a small program that pings the network resource periodically. You might just look for a file and if the network is failing and the program cannot find the file email the folks in charge of the network and yourself. This would be an independent app, and best if not written in FoxPro so you can independently prove it is not the application or the language/tool it was written in.
I have seen this when networks have bad wiring, a bad port on the switch/hub, a failing NIC in the mix, and sometimes when the network is just flooded with requests from workstations.
You also did not mention if this was a wireless connection. I am hoping not, but I have seen wireless (especially slower wireless) hubs fail with respect to the network overload and slow and unreliable performance. Especially compared to a wired network.
Rick Schummer
In addition to the comments about IP address, is the setting on the network controller to be energy efficient? and thus turn itself off when not actively in use.