3

I have got on my hands 3 Windows XP file servers (their sole purpose is their SMB share) running on a office with about 50 users. The workload is only office usage: they use it to store and share among them Access databases and XLS files, and they use the files over the network share.

It is almost instantaneous to copy a 700 Kb XLS file from one of the servers to a workstation, but it takes over a minute to load it from a remote share with Excel. This same file is loaded in a few seconds if from a local disk.

I don't know what makes the access to the file so slow when using it via the network, I suspect it is some quirk of Windows remote file access (maybe authentication?), and I hope to be possible to change some simple flag on the servers to speed things up to a sane speed. I have taken screen shots of the network usage while loading the aforementioned XLS file, can you recognize this pattern and possibly give me some clue of what is the problem?

In the first image, there are two runs of Excel loading the remote file, both taking more than one minute to complete. The top and bottom graphs are from the same thing, but I only found later the task manager option to discriminate between upload (red) and download (yellow), so I took 2 different screenshots (concatenated bellow). Both runs took more than one minute, possibly more than 2 minutes.

runs_1_2

In the second image there are the 3rd and 4th runs. This time they ran considerably faster than the first one, but still too slow for bearable use. Both took more than 1 minute, but in the 4th run it occurred to me to measure the time properly, and I found it to take 1 minute and 42 seconds. That was the fastest of them. This time I only took one screenshot, of the discriminated version.

runs_3_4

What I noticed in all runs is the initial peak, about 8 seconds after I start the run, then the network usage drops to very low usage, then, a few seconds later, there is another peak, the biggest concentrated activity, then a long time of almost no activity, when finally Excel shows the file. There is still another peak that begins when the file is shown, and lasts for a few seconds. The offset between the start and end of the run, and the activity in the graph seems to be caused by a delay in the task manager to show the data. I don't know when the file is actually downloaded. I can't also explain why the green graph shows a small activity between peaks, and the red/yellow graph shows none. But the most intriguing of all is the minute long pause between the second and third peak, when I have no idea on what is happening, and certainly could be much faster.

Can someone experienced in Windows networks provide some expert guess on what is the problem with this setup (apart from decade old operating system)? Do you recognize these graph patterns? Can explain it? Have any hint on how to improve performance?

Skyhawk
  • 14,200
  • 4
  • 53
  • 95
lvella
  • 314
  • 2
  • 13
  • 1
    You should take a trace with Wireshark to be able to see what is actually being waited for. I would suspect locking issues. – the-wabbit Sep 04 '12 at 23:10

1 Answers1

0

If the "slowness" only happens in Excel, I would probably look closer at the XML file and make sure the interpreter in Excel isn't having trouble parsing the XML. Could be malformed or having some trouble reading it. Try opening the file in other applications like Notepad etc and see if the slowness issue still exists. FWIW, XP isn't a good platform for sharing files with that many (50) users as it is limited to 10 client connections. You could be running into some contention issues with the other clients trying to read the XML file as well. I don't think your issue is the size of the file, but rather what excel is doing with the file once it opens it. But that is just my thought. Try doing a CSV file dump and opening it up in Excel and see how long that takes.

MikeAWood
  • 2,566
  • 1
  • 13
  • 13
  • First, I had it wrong, it is not XML, it is XLS... an ordinary XLS. Secondly, the file opens OK when local. – lvella Sep 04 '12 at 22:51
  • a 700K excel doc should be fine. a few more things to check. In computer management, under shared folders, check under sessions and open files. Looks to see how many users are attached in there. XLS really doesn't like to "share" files and have multiple copies opened remotely. It could just be simple file contention. If you put another copy somewhere else on the share that non of the other users are using, does the problem still exist? – MikeAWood Sep 04 '12 at 22:56
  • I'll check it... but the chances of file contention on that particular file I used for testing are extremely remote, since it was choose randomly from one of too many archived old processes. – lvella Sep 05 '12 at 00:31
  • contention might be related to the 10 client connection limits. Certainly worth a look. Is this a new issue or something that has always happened? – MikeAWood Sep 05 '12 at 00:55
  • People there said the problem was related to the new VoIP phone installed on every table, bridging the central switch and the workstation (supposedly interfering with the network), but tests made with and without the phone made no significant difference. If are there any other factors that caused the issue, I don't know. – lvella Sep 05 '12 at 01:05
  • For the traffic you are passing, its likely not the network itself. (of course, that is a gross generalization) It could be that the techs who install the VoIP system QOS'd out your other traffic to the point where its super latent. But even that sounds like a weak guess on my part. Did you try opening a different file that other users aren't trying to use at the same time? – MikeAWood Sep 05 '12 at 02:04