Whenever connecting my Western Digital WD Passport Ultra drive via USB to perform backups on Windows 10, my Wi-Fi connection went for a toss and wouldn’t recover for a while even after disconnecting the backup drive. The network connection slowed to a crawl and some web-sites would timeout trying to access them in a browser. Looking at the task manager did not show any task consuming high amounts of CPU or memory or disk or network bandwidth. After some research, I came across some comments indicating that USB 3.0 can interfere with Wi-Fi signals which are in the 2.4 GHz range. This paper describes this problem in more detail. Apparently the best solution is to switch to using Wi-Fi in the 5GHz range if your Wi-Fi router supports it. Alternate approaches are to somehow shield the USB cable and connector so the electrical noise doesn’t spread out or adjust the Wi-Fi dongle/antenna so it isn’t too close to the drive and it’s cabling. The linked paper describes various tests done with shielding and managing Wi-Fi dongle placement.
After repeatedly being exposed to this problem, I think I finally understand what the issue is with this slow-start — mostly conjecture on my part.
On my PC, I don’t have any wired Ethernet connection (I have Ethernet ports, but I haven’t connected them). I rely on the Wi-Fi connection for my Internet access. With the VirtualBox software installed, it installs a virtual Ethernet port on Windows side of things to connect with a Virtual LAN Bridge that networks the VirtualBox virtual machine with the Windows machine. This virtual Ethernet port comes up right away (I assume it is set to be always up) while, I think, the Wi-Fi port probably has some small initial start-up time that it takes to initialize itself. At start-up or wake-up, Windows, I think, then sees only one up network port (the port into the Virtual Bridge) and tries initially to use this port to connect to the Internet and continues to try and retry and finally, after some retries/timeouts, falls back to using the Wi-Fi port for the Internet connection which by this time has come up.
Unfortunately, I haven’t figured out a clean solution that will allow me to keep both the VirtualBox installation as-is *and* give my Wi-Fi port some priority (or have some sort of Windows networking start up delay that allows the Wi-Fi port some time to initialize itself before Windows tries to start using it).
If anyone with VirtualBox experience knows of some way of tweaking the virtual-port to start-up after a delay, please chime in in the comments.
Original Blog Entry:
I had installed Oracle’s (previously Sun’s) VirtualBox software on my Windows 7 machine and subsequently I noticed that every time I started into Windows 7 after waking up from sleep or powering on the PC or rebooting the PC, the WiFi connection would not come up for 1-2 minutes. After a lot of experimentation, I found that un-checking the “VirtualBox Bridged Networking Driver” setting in the “Wireless Network Connection Properties” dialog for my wireless card solved the problem. No more slow-start. Not sure if this results in other problems for VirtualBox, but for now this is good for me. Getting to the dialog is via Control Panel > Network and Internet > Network and Sharing Center and click on “Change Adapter Settings” on the left-hand side. This brings up the list of adapters and right-click on your wireless adapter and choose “Properties” for the “Wireless Network Connection Properties” for your wireless adapter.
Many times when using CVS under Windows XP, I have the problem that a “cvs update” fails to update some file or the other without any apparent reason. Turns out that this is because the file in question is open in some application, which, for some reason has thrown out a dialog-box with the file held open waiting for my input (usually some simple yes/no query). I have this happen typically with source code browsers. A quick way to figure out if the file that didn’t update is being held open by some application is to use the Windows “openfiles” command. Go ahead, run it on the command line and check it out. It’s a neat command that serves a simple purpose. Note that you need to run “openfiles /local on” to turn on the monitoring of open files and that the monitoring has a performance impact.