Ethernet Network Cable

Steam Client Bootstrapper Process Can Overwhelm Your Download Bandwidth

Steam Client Bootstrapper (32 bit) Process Downloads Can Overwhelm Your Bandwidth

If you are a user of Valve’s excellent Steam digital game distribution platform, here’s an Internet bandwidth issue you may be experiencing. Basically, the Steam Client Bootstrapper process may be using your entire Internet bandwidth to download updates. This is good and bad, at the same time.

Why This is Both Good and Bad, At The Same Time

It’s good because Valve has built a super-efficient download mechanism that will use very bit of download bandwidth available on your network. This means your downloads will be as fast as possible. I suspect they are using an UDP based file transfer protocol of some sort, along with a CDN – to overcome the usual performance limitations of TCP downloads.

But it’s also bad because it will cause every other device and process to have issues. When all your download bandwidth is in use, TCP/IP packets start dropping, and all the other things going on in your network can grind to a halt, or at least suffer in ways that are very annoying. For example, when downloads are running un-throttled, streaming devices such as Apple TV or Roku will not offer good performance. Similarly even web page loading and other services will also suffer. And last but not least online multi-player games aren’t going to work real well either.

How To Identify This Problem

How do you know if you are encountering this problem? Here’s the warning signs:

  • You’ve not selected any of the download restriction settings in the Steam client
  • All devices on the network have issues with Internet performance
  • Task Manager shows a process named Steam Client Bootstrapper (32 bit) using a network download rate that matches your maximum Internet download bandwidth allocated to your plan

In this screenshot, I’ve launched the Task Manager and sorted descending on the Network column, by clicking on the column header. You can see that the process is using 95 Mbps of bandwidth. It just so happens that’s the maximum download bandwidth my Internet connection allows. You might be wondering about the 10%. Sounds like we’ve got plenty of headroom, no? To the PC, that’s only 10% of the maximum 1 Gbps ethernet connection it has. But that’s the Local Area Network (LAN) speed. It’s 10% of the PC’s capability, but it’s 100% of my internet connection’s capability.
The Steam Client Boostrapper (32 bit) can overwhelm your Internet download bandwidth if left un-throttled.

How To Fix This Problem

The fix is simple:

  1. Open the Steam program
  2. Navigate to Settings, Downloads
  3. Set one or more of the options, including restricting the time frames that downloads can happen and most importantly throttle the bandwidth available for downloads
  4. Restart Steam
  5. You should see an immediate change, which you can verify in Task Manager.

    In this example below, I’ve set it to download updates most of the day but to only use about 1/2 of my available Internet bandwidth. This is the best of both worlds – we can get game updates at any time, but the network remains usable for everybody else (and anything else I want to do at the same time!)
    Steam client - Download Settings dialog

    The Steam bandwidth throttle options are displayed in MB/s. This is Megabytes Per Second (MBps), NOT Megabits Per Second (Mbps). That upper case “B” makes a big difference. You probably know your max download speed from your ISP in Mbps, so how to convert from MBps to Mbps? Use Google and a query such as “convert 95 Mbps to MB/s”. My Internet connection is about 11 MB/s, so I chose to use 5 MB/s, or half (roughly – there’s only so many options offered in the Steam client throttle settings.
    Using Google to Convert Mbps to MBps

    Problem Solved

    So there you go, how to identify and fix the problem. Here’s a final shot showing the process consuming bandwidth far below the connection maximum and abiding by the bandwidth throttle setting.
    Task Manager showing Steam client bandwidth usage when throttled

    Next, let’s discuss how to troubleshoot network performance issues from a general sense. This is the exact process I used to zero in on this specific issue.

    How To Troubleshoot Home Network Performance Issues

    Troubleshooting home network performance issues is like any other troubleshooting process – it’s all about using the process of elimination to find the root cause (or at least the likely root cause). In this case, I’ve got a typical modern home network:

    1. A cable internet connection – with maximum 95 Mbps download and 12 Mbps upload speeds.
    2. Wi-Fi router
    3. Wired Ethernet access via Gigabit Ethernet mini-switches
    4. Numerous devices, including multiple Windows PCs, Mac, iPhone, and Roku streaming device. Some connected on Wi-Fi, some on wired Ethernet, or both.

    Let’s get started.

    Step 1 – What’s the problem and symtpoms?

    In this case, I had the following complaints:

    1. My son complained his PC games were lagging and near unplayable – on an Ethernet connected Windows 10 PC
    2. I was noticing bad performance on general web surfing on a Wi-Fi connected Mac.
    3. Our Roku TV streaming device was not working well. The Roku is also Wi-Fi connected

    Step 0 – It’s good to have a Baseline. What Does Good Look Like?

    I’d like to begin by saying that this process is immensely easier if you know what “normal” or “good” looks like – from a network perspective. That way as you are experimenting and checking you know what’s normal and what’s not. What should you know?

    • What’s your maximum Internet download speed? – your ISP bill should state what your download and upload bandwidth limitations are. In my case it’s 95 Mbps/12 Mbps. It’s worth nothing that I think we’re sold a 90/10 plan – so kudos to Spectrum for giving more than the agreed amount of bandwidth. I know my speeds are typically 95 down / 12 up, because I’ve baselined using Speedtest.net when things are good.
    • Similarly, know your maximum Internet upload speed. Keep in mind that home connections on coax are very asymmetrical – that’s because the typical household does FAR more downloading than uploading. It’s also because the technology used (coaxial cable) is already close to maxed out as far as bandwidth (with all those TV channels on it simultaneously, along with Internet, and voice, etc.).
    • Know your Ping times. What’s typical RTT (Round Trip Time) reported by ping when you hit a known server? I like to use ping 8.8.8.8. That is one of Google’s name servers and it responds to ping commands. A “typical” ping time for MY connection is from 20 ms to 30 ms.
    • Know the limitations of your equipment. Are all devices on Gigabit Ethernet? Are your switches Gigabit Ethernet? A network connection can only go as fast as the slowest link, so if you’ve got a 100 Mbps connection somewhere in the chain, that’s going to be a bottleneck.

    If you know those 4 things, then you know what good looks like. Therefore, you’ll know when things are off.

    Step 1 – Identify the Scope of the Impact

    Firstly, you must identify the scope of the impact. From the symptoms exhibited, it certainly sounded like a general network issue – because multiple devices were affected in the same general timeframe. Therefore it’s not likely that any one device was having an network issue – it must be a problem common to all the equipment.

    Secondly, given that an Ethernet connected PC (with no Wi-Fi connection whatsoever) was experiencing issues, I immediately deduced it was not likely a Wi-Fi issue. Wi-Fi, because of the chaotic, crowded environment it operates in, is notorious for wild swings in performance. As a general best practice your first step should be to determine – is it the Wi-Fi or not the Wi-Fi? If it’s not the Wi-Fi – Don’t troubleshoot over Wi-Fi – get a wired Ethernet connection. I have deep thoughts on why Wi-Fi is miserable, compared to wired, but we’ll save those for a future blog post.

    Step 2 – Further Isolate Impact

    Believing it to be a general network issue, I connected a second Windows 10 laptop I have to the wired Ethernet network. I then ran a “ping” command to see how far off baseline things might be. On both Ethernet connected PCs, I observed a ping time of 120 ms – 130 ms. Remember, my baseline is 20 – 30 ms. This is 5-6x slower than usual, and I also saw dropped packets (request timeout). How do you run a ping command? Use cmd.exe and type the command as shown. Here’s a screenshot:
    Ping Times - These are way worse than normal, for my internet connection.
    Having observed that, there’s definitely something wrong with the Internet connection, the connection used by multiple PCs.

    I also ran a speed test. And noted it was far off the normal values. This can be for a couple of reasons – something else (on your network ) is using all your bandwidth, your cable modem isn’t working properly, or your ISP may be having issues.
    SpeedTest.net - Bad results (for my home network)

    We mentioned that could be a modem problem. The easiest modem troubleshooting step? Reboot it.

    Step 3 – When Was Your Last Reboot?

    At this point, let’s talk about the inevitable. When did you last reboot? This has become the fodder for many jokes about IT support, but it’s recommended for a reason – it works.

    We rebooted one of the Windows 10 PCs. And observed the problem was still occurring. We then rebooted the network equipment. You must remember that network devices (switches, Wi-Fi Routers, Firewalls, and Cable Modems) are all just super-specialized computers. They need upgrades and they need reboots. Why? Because the software running within them isn’t perfect. It’s got bugs and memory leaks and other issues just like your PC or Mac OS.

    So we pulled the power for 10 seconds and plugged it back in for:

    • The cable modem
    • The Wi-Fi router (which serves as the network router in this case, even for the wired PCs)
    • The Ethernet mini-switch

    On a sidenote, nobody ever reboots their mini-switch because they think they are infallible. I’m here to tell you that simply isn’t true. I’ve seen MANY network performance issue resolved by rebooting a mini-switch (I work for an IT Managed Services Provider). It’s one of the reasons we DO NOT recommend them for a high performance business environment (or use them sparingly, if at all).

    After having done all that, the performance issue was still present.

    Step 4 – Check Out Of Control Processes on the Machines

    The next step is to use Task Manager (Windows) or Activity Monitor (Mac) to look for processes hogging the network. Normally, I’d have done this before going to the trouble of rebooting all the network equipment, but in this case I was misled by the problem. We’ll talk about that more in a bit.

    It’s also possible that you’ve got a malware running invisibly in the background. These can be network hogs – those “distributed denial of service” (DDOS) attacks you hear about? THat’s usually hundreds or thousands of compromised home computers running malicious processes. In this case we ran a Windows Defender offline scan. But it came back clean.

    Then I looked at Task Manager. And this is what I saw. As mentioned previously, my maximum connection is 95 Mbps, and Steam Client Bootstrapper (32 bit) was hogging up every bit of it. When this happens, it’s bad. It’s absolutely the root cause of dropped packets and poor performance for EVERY device on the network. Because all incoming and outgoing traffic has to go through that Internet connection – if one device is monopolizing it, it’s gonna be bad for everyone else.
    The Steam Client Boostrapper (32 bit) can overwhelm your Internet download bandwidth if left un-throttled.

    To confirm, I used End Task to kill the process, and immediately the network ping stats returned to normal.
    Ping - What Good Looks Like (for my home network)

    After that, a quick Google search confirmed the issue and fix – set the throttle limits on Steam downloads.

    What Could Have Been Done Differently?

    I could’ve solved the problem quicker. If I was familiar with the software installed on the Windows 10 gaming PC, I might’ve been clued in earlier. But sometimes you just don’t know what’s there, or how it’s used. Whether troubleshooting your own network, your neighbor’s or that of a client, this general process will help you isolate issues, even if you aren’t familiar with the environment.

    Secondly, what if we had not found any bandwidth hogging process? What if the issue was at the ISP end? Well, that’s where you simply need to call your ISP for support. There’s a number of performance checks they can run remotely. They will access your cable modem and confirm if it’s working well or not by checking the signal strength. They’ll also check the firmware version and confirm if it’s a “known good” version , or a version that is known to contain bugs or other issues.

Top 5 Reasons to Own Your Cable Modem

Why you should own your Cable Modem

Did you know you can own your cable modem as opposed to leasing an outdated model from your Internet Service Provider?

It’s true, all the major home Internet Service Providers (ISPs) will gladly lease this equipment to you for years at a time, for about $10 a month. That really adds up over 3 years, compared to buying the equipment outright is in the $60 range.

Benefits of owning your own cable modem

Let’s talk more about the benefits of owning your own cable modem:

  • Save Money – Firstly, you’ll save whatever cost your cable ISP charges every single month for the privilege of leasing their cable modem equipment.
  • Newer equipment – The cable modem provided by your ISP is probably old – possibly 4-5 years or more. What’s wrong with that? Well – that equipment tends to be buggy, runs hotter, and takes up a lot of physical space. With electronics, we all know that as time progresses things get smaller, faster, cooler, and overall more efficient.
  • Full Control – Your ISP likely doesn’t let you access the administrative and reporting features of your current modem. With your own equipment, you’ll have full control. Logging, monitoring, and exploring how the hybrid coax-fiber systems used today will all be possible. Granted, this is a bit of a tech enthusiast viewpoint, but it’s true. There’s even custom firmware you can use with your own cable modem.

Choosing equipment – look for DOCSIS 3.0 compatibility

How do you choose a cable modem model? You’ll need to select a DOCSIS 3.0 compliant modem, and ideally one that is certified by your ISP. If you use cable phone service, you’ll need a phone port also. Cable modems with phone ports are known as telephony modems, or eMTA devices. They are also more expensive than basic cable modems. For most people, land lines disappeared long ago though.

Years ago, there were often compatibility issues with choosing your own equipment, but now things are quite standardized. The most important compatibility spec you need is DOCSIS 3.0. DOCSIS is the Data Over Cable Service Interface Specification and dictates how the modem interfaces with the underlying coaxial cable physical link.

DOCIS 3.0 is important because that’s the latest standard in broad use, and provides for 16 channels of downstream bandwidth and 4 channels of upstream bandwidth. That’s how your ISP provides greater upload or download speed, they segment that massive bandwidth on that coaxial cable into discrete channels. They allocate more channels for download, because that’s what the majority of home users do – they download – websites, streaming music and movies, etc. Upload – not so much. The allocation of discrete channels is called channel bonding – multiple channels bonded together to provide more bandwidth. Coaxial cable has massive bandwidth – just think of all those cable TV channels that are being broadcast, simultaneously, to every home in your neighborhood – even if you aren’t watching the channels. In DOCSIS terminology, a 16×4 modem means one that can accommodate 16 channels of download and 4 channels of upload bandwidth. Ultimately, the amount of channels allocated for upload and download is entirely up to your ISP, of course. In the future, DOCSIS 3.1 will be required for gigabit cable speeds, but we don’t recommend choosing one of those models just yet. We’re not aware of any provider actually offering gigabit Internet speeds over coaxial technology (Fiber is a different story) at this time, and the equipment is expensive.

In summary, what you want to look for in your potential modem is:

  • DOCSIS 3.0 compliance
  • Gigabit Ethernet ports
  • ISP certified (desirable)
  • Phone port – if you are using ISP phone service

If your ISP provided modem is also providing Wi-Fi, you’ll need to replace the Wi-Fi component as well. We recommend a stand-alone Wi-Fi router. You’ll get better performance, reliability, and security. It’s not recommended to utilize an “all-in-one” cable modem/router/Wi-Fi combo.

Once you pick a potential piece of equipment, contact your ISP’s technical support. Inquire about the particular model, and confirm any post-installation steps that will be needed to activate it (See below). We recommend you confirm with your ISP before you purchase the device.

Setting Up The Cable Modem

Once you’ve procured the replacement modem, you’ll also want to do the following.
Contact your ISP:

  • They will need the MAC Address, which is the unique hardware identifier for your equipment. They will need to authorize that device to connect to your account. The MAC address is a 12 character identifier (numbers and alphanumeric) that will be displayed on a label on the back or underside of the modem.
  • You will need to return the leased equipment, and make sure you are not billed in the future.

Recommended Equipment

Here’s my choices for equipment.

Caveats and comments

Lastly, some caveats:

  • This advice applies only to coaxial cable Internet, not DSL or Fiber Internet. Those require and use different technology. There’s not quite as much freedom of choice with fiber,
    as the equipment is more advanced.
  • Internet speeds won’t likely improve – unless your ISP is incompetent and stuck you with DOCSIS 1.0 or 2.0 equipment. What you will typically get is smaller, cooler, and more reliable equipment.
  • Make sure all of your equipment is up to par – If you are using a mini-switch, you’ll want to use one capable of Gigabit internet. Otherwise it’s probably limited to 100 Mbps. While your Internet access may not exceed that capacity, you’ll certainly get better performance between two local computers using Gigabit.
  • For a small business owning your own cable modem might be OK. But keep in mind it could delay or cause issues with receiving support from your ISP when you suffer an Internet outage. If your business is critically dependent on Internet access, I’d recommend sticking with the ISP provided equipment.

Side project: Free Workout Timer

A long, long time ago I was interested in boxing and boxing training. I created a tool that was useful to me, but realized it would be useful to many people, for many things.

Free Workout Timer

This free workout timer was originally developed for timing boxing rounds, but after having received user feedback and several good ideas implemented, can be used for:

  • Boxing – 3 minute rounds
  • MMA – 5 minute rounds
  • Tabata – 20 seconds on / 10 seconds off for 8 intervals
  • Anything involving intervals
  • … and more

Beyond those obvious uses, people also use it for yoga, stretching, and in the class room (as a quiz timer). I’m sure there’s many other uses I haven’t heard about.

The timer was a labor of love, and the greatest satisfaction I get from having developed it is that it’s been used worldwide by thousands of people to improve their fitness, or to accomplish things important to them. For free.

I recently updated it to use the HTML5 audio tag, and this new audio format you may have heard of: mp3. It was using wav files. Seems like those are not the way of the future. It now functions properly with:

  • Microsoft Edge – Windows 10
  • Google Chrome
  • FireFox
  • Safari MacOS
  • Safari – iPhone & iPad

Internet Explorer (IE) 11 is a crapshoot – theoretically it works, but the success rate is 50% in my own personal experience. Honestly I don’t have the mental energy to figure out why. Time for IE users to move on and get on Google Chrome…

It took a few years to get to this point – meaning the motivation to make a “major” update. If I recall, iOS / Safari was not supporting the ability to play sounds without user interaction. That was a show-stopper. With that restriction cleared by the overlords at Apple, it only required about 5 lines of code updated, some HTML tags changed, and using an online converter from WAV to MP3 format.

The aesthetic is a little old school, and is likely going to stay that way. It loads quick enough and is meant to be highly configurable for any size display. Any extra aesthetic “improvements” would interfere too much with that goal. “Programmer Art” is alive and well in 2017. I see a lot of competitors with fancy displays that look good, but are completely locked into a limited form factor/size. I value function over form.

Under the covers, the javascript code style is dated, and the CSS is poorly done (for any era). It’s written in a 2006 style of javascript coding. The code base was written and debugged over many years. It’s fairly solid from a performance standpoint. I see no reason to mess with it at this point. I would like to do a ground up re-write using ES6 and all the cool kid stuff, like React or something. But that’s probably overkill and would serve no purpose other than to educate myself on that particular tech. Therefore it will remain on the to do list.

My only other real wish list item would be to make a version that is easier to configure on smaller mobile devices (such as phone form factors), from a UI perspective. There’s a lot of zooming in and out required at the moment.

IT Support Company in Orlando, Florida

Hello all – I have not updated this blog in quite some time, but I can assure you I am still active in the latest computer technologies.  I am now working at Virtual Operations, LLC, the best IT support company for small business in the Orlando and Central Florida areas. If you wish to leverage my expertise, please give us a call at (407) 268 – 6626. Whether you are working with Mac, Windows, cloud, or on-premise, I can be of assistance.

Please note that I do intend to periodically update this blog with further articles, but for now the majority of my updates can be found on our IT support, cloud, and security blog

Best Regards – Tim

csplit command

Let’s say you have a single file (a mysql dump) containing the output of multiple database backups… and you want to split them out into individual files.

Input fil:

# MySQL dump 7.1

#

# Host: localhost Database: Purchase_Tracking

#

… Lots of CREATE TABLE and INSERTS …

# MySQL dump 7.1

#

# Host: localhost Database: Test

#

… Lots of CREATE TABLE and INSERTS …

Use the following csplit command to break the files up, based on the presence of the # Host: localhost line…

$ csplit -f db inputfile.dmp ‘/# Host: localhost/’ {*}

The above will create a series of files named db00, db01, db02, etc. for as many files as necessary.

Using rarcrack on Ubuntu

Rarcrack is an open source rar file password cracker.  Use it when you’ve forgotten the password you put on a rar or zip file.  The current version (0.2) doesn’t work flawlessly on Ubuntu, so follow these steps.
1. Download the source:
wget http://downloads.sourceforge.net/project/rarcrack/rarcrack-0.2/%5BUnnamed%20release%5D/rarcrack-0.2.tar.bz2
2. Un tar
tar -xjf rarcrack-0.2.tar.bz2
3. Change directory
cd rarcrack-0.2
4. Type make, hit enter.  You will likely receive an error about a memory.h file that can’t be found.
5. Install libxml2-dev
sudo apt-get install libxml2-dev
6. Run make again
make
7. You will now have a rarcrack file that you can use.  If you use it as such you may receive a Segmentation Fault
./rarcrack filename.rar
use the –type parameter instead
./rarcrack --type rar filename.rar
It should then run properly