Speed issue on SBS 2008 network for certain EXE.

Posted on 2012-03-22
Medium Priority
Last Modified: 2016-11-23
Hi there,

We migrated a client from SBS2003 to SBS2008 a couple of years ago, they have just now come to us saying that since the server was installed thier custom built Hire program runs very slowly on the PC's, each PC has a mapped drive to the EXE which sits on the server drive, they run it at the PC and it takes about 8 seconds to open the dB on the server.

They have fault found the network, the PC's and the Server to hell and back and can't work out whats causing the problem.
They can transfer larges files very very fast from server to client, they can open the Hire dB in excel on the client very fast.
They have removed all antivirus with no results.

Appears that SBS2008 is slowing the transfer of data down when the EXE is opened from the network.

All clients are XP Pro 32bit and all worked very fast on old SBS2003 32bit.
Only change was to SBS2008 64bit and a new Dell T310 server with H700 Raid ctrl.
The hardware seems to perform very well for all other tasks.

Any ideas of what to try next?


Question by:Tingathewinga
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 5
  • 3
  • 2
  • +1
LVL 47

Expert Comment

ID: 37755150
Well, first run perfmon and see where the bottleneck and nature of the i/O is (run this on individual machines).  

Then contact the person/company that wrote the software.   My guess, based on the info you supplied is that temp files are used, and those temp files are going on the server, instead of each local machine.

Any DB with this type of app could easily generate hundreds of I/Os per second, and the last thing you want to do is use an executable that runs in local memory that pounds index & scratch files that are remote.   Maybe there was a config setting that was lost in the conversion?

But too many things to look at, so you are just going to have to do some homework.  perfmon will reveal network & disk I/O activities from big picture.  The people that wrote the software will certainly know if you need to set an environment variable or something to get it to work properly.

Outside of that, you might try filemon (written by sysinternals, who is now MSFT).  This is great utility where you can give it a file, or application and it measures individual I/Os and you can see what is going on.

Once you understand what the application is doing, then you can make adjustments so that whatever it is doing, will run a lot faster.
LVL 77

Expert Comment

by:Rob Williams
ID: 37755247
Chances are the new server has more RAM and faster drives, so I would suspect network related issues.  There are some known issues with newer advanced NIC properties with server 2008/2008 R2 such as "Task Offloading", and “Receive-Side Scaling” which can drastically affect performance and stability of file share access if enabled and especially if you are running older drivers. The following outline is for changing from the command line but I have found in some cases you have to do so within the advanced NIC properties for them to take effect. Any of these changes require a reboot to be applied.

To disable Receive-Side Scaling, at a command prompt, with elevated privileges, run the the following command:
netsh int tcp set global rss=disabled

To disable Task Offload, at a command prompt, with elevated privileges, run the the following command:
netsh int ip set global taskoffload=disabled

To disable Add-On Congestion Control Provider, at a command prompt, with elevated privileges, run the the following command:
netsh int tcp set global congestion=none

For more information Information about the TCP Chimney Offload, Receive Side Scaling, and Network Direct Memory Access features in Windows Server 2008

Related blog articles:

Author Comment

ID: 37755566
Thanks Rob, those three changes have increased the speed by about 25%, but still slower than before, any other tweaks you can think ok?
Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

LVL 77

Expert Comment

by:Rob Williams
ID: 37755643
Have you run the SBS Best Practices Analyzer?  It will check for several network issues and advise if any need to be changed.  Make sure you click on "check for rupdates" when running the BPA>

There is a TDI driver issue, as per the following link, that is nown to cause lockups but also perfomance issue.  It should be fixed if SP2 is installed:

Make sure the PC's point ONLY to the SBS for DNS, i.e. make sure they do not point to an ISP or router even as an alternate.

Though it has more to do with browsing make sure there are no disconnected mapped drives still present.

Expert Comment

ID: 37757355
How are the users "mapping" to the executable on the server? Are they getting a mapped drive through GP? Is it a direct linked shortcut on their PC?

Author Comment

ID: 37763564
Hi Geodash,

They all have a mapped drive where the EXE resides on the server. Login Script, not GPO.
Remember that this worked perfectly on SBS2003 so if we say that was 100% then now after making changes that Robwill suggested its gone from 25% to around 40% of what it used to be. The only thing that has changed is that the mapped drive (and EXE) now sit on server 2008 on a Dell server with a broadcom NIC.
So my feeling is that is a network issue along the lines of what Rob was getting at.


LVL 47

Assisted Solution

David earned 1500 total points
ID: 37763591
Well the "only" difference is that it is on a different machine can be quite a bit.  I doubt it is CPU offloading, but could be something simple like it was previously configured to use jumbo frames, and now it is not.

(Or maybe vice-versa, it wasn't using a large MTU before, but now it is, but your networking is substandard so you are dropping so much data that overall transfer is suffering).

Does your switch support RMON?  If so, you ask the switch itself about dropped frames, retries, MTU size, throughput, and such stuff and then you take out the guesswork.  If you have dumber switches, then you can still run some software on the server and measure it there.  

Have you actually verified that this really is nothing more than delay associated with loading an EXE?  I've written a heck of a lot of code and analyzed performance from the disk I/O side and things are not always what they seem to be.  It is common practice to build scratch info based on the current working directory.

Have you contacted the vendor of the software yet to see what they say?   If this is not possible, then why not try placing the app on a read-only device or changing permissions to prevent write access.  If you get write error messages, then you have 100% proof that more is going on then just loading an application.

If you invest the effort to run code that tells you exactly what is going on, then you WILL discover root cause rather easily.  But just tuning things by trial and error and looking for "it-might-be" ideas isn't the way to go.

With intelligent switches, packet sniffing, and host-based utilities (all free) that can tell you exactly how any program utilizes system resources then this type of problem shouldn't take more then 30 minutes to resolve.  

But you have to make the effort to diagnose the illness first.

Author Comment

ID: 37763603
Hi dlethe,

Thanks for you comments, unfortunately the client in this case does not want to pay for my time to install and run wireshark and perfmon and a host of other tools to nail down this issue, he just wants me to fix it as I installed the server way back at the start :)

Also the client in this case did write the software himself, using a foxpro dB and written in Visual Objects V2.7. I have asked him to triple check his software but he is adament the problem is to do with the networking on the server.

This post was really a last ditch attempt to try some Server 2008 specific fixes that I wasn't aware of and see if that changed things, but ultimately the client will have to spend some money and let us get out there for some real testing, so yes, I agree.
LVL 47

Assisted Solution

David earned 1500 total points
ID: 37763807
Understood Tingathewinga ... this does change things.  

But you added something that is important .. FoxPro.  I remember there are some ODBC settings that deal with packet sizes, and the defaults are more in tune with ancient 10/100 ethernet instead of 1Gbit ethernet, so performance is going to be inherently choppy and slow unless you increase the settings related to ODBC.  

You could very well be hitting ceiling  trying to minimize the time it takes to send a chunk of data, and getting killed with latency, record locking timers, and all that overhead it takes to set up a transaction set.

Accepted Solution

Tingathewinga earned 0 total points
ID: 38374150
The client solved this himself by reprogramming his application in the area of the exe and how it cached the foxpro db on the server, still not sure myself why it was so bad on server 2008 over 2003, but this question can be closed now, thanks for your input dlethe.

Author Closing Comment

ID: 38386081
None of these answers solved the problem, but Dlethe provided some things to try.
Really the question requires no answer anymore as it was fixed by the software developer.

Featured Post

Prepare for your VMware VCP6-DCV exam.

Josh Coen and Jason Langer have prepared the latest edition of VCP study guide. Both authors have been working in the IT field for more than a decade, and both hold VMware certifications. This 163-page guide covers all 10 of the exam blueprint sections.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

OfficeMate Freezes on login or does not load after login credentials are input.
This article provides a convenient collection of links to Microsoft provided Security Patches for operating systems that have reached their End of Life support cycle. Included operating systems covered by this article are Windows XP,  Windows Server…
This tutorial will walk an individual through locating and launching the BEUtility application and how to execute it on the appropriate database. Log onto the server running the Backup Exec database. In a larger environment, this would generally be …
This tutorial will walk an individual through locating and launching the BEUtility application to properly change the service account username and\or password in situation where it may be necessary or where the password has been inadvertently change…
Suggested Courses

752 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question