Wednesday, June 6, 2018

How much WSUS traffic are you generating?






We should all know by now about WSUS Clean up and keeping your servers in good health so I will only point to some of the articles.  But did you know that by having high stress on your box via CPU or Memory can impact the clients and in turn the bandwidth.  While working with a customer, it was discovered that some network links were saturated.  It was determined that a WSUS box was causing the traffic.


What do you mean?
The more retries the clients must make the more data that must be pulled from WSUS box.  If the CPU or Memory is hitting 100% then the server will begin to compensate the best it can.    If too many clients are allowed to connect or request, other clients might be dropped because the server cannot maintain the connection.  These clients will then retry, creating a traffic storm across the network. 


Review the left side of the this graph.  the WSUS traffic is reaching 30 Mbps and is actually spanning several hours.  This not only affects the business traffic but could force the company to invest in larger bandwidth to support the traffic, a business cost.


Review the right side of the graph. Red/Blue colors are WSUS traffic while other traffic and trends are subdued.  1 day after tuning IIS and SQL the bandwidth has dropped to a natural level for the same amount of clients.  

Top: Rate in, Bottom: Rate out


Clean up WSUS database:





Server Performance:

SQL:
If you have more than enough RAM on the box you can set it to unlimited, otherwise, I would recommend you set it to an appropriate size. SQL for WSUS normally needs at least 2GB of RAM to function properly.  This changes depending on the number of clients connection at the same time, if this is WID or SQL and if this box is a Seconday Site Server or simply a stand alone WSUS box.

This too might require some tuning. 

Changing the memory setting in SQL takes affect instantly.  No need to restart the box or SQL.

IIS:
If you have more than enough RAM on the box you can set it to unlimited, otherwise, I would recommend you set it to an appropriate size.  Understand that when IIS recycles the App Pool it will attempt to keep the old dataset alive and gradually move it to the recycled pool.  This can cause you to have processes taking up (2GB = 4GB total) if you set the private memory to 2GB.  The length of time this is happening depends on the box, free cycles, free RAM, etc.  You will need to tune IIS Private RAM setting to your environment.  The link below shows how you can change several settings to alleviate stress on the box. You can also look at throttling IIS to not take too much of CPU.




Thoughts

Memory, Processor and settings all depend on the box, number of clients connecting and other factors.  Tuning the box can take several trials and notes.  No two boxes or companies are the same.  Take every suggestion with consideration and review of your company. 

Each OS and SQL version brings improvements, review your settings after each change.