Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

We have a Windows 2008 file server that's going off-line intermittently. When it's down, the Windows 2003 web servers pile up requests with pending file operations.

I ran some tests using ColdFusion, and I noticed that if you request a file on a known-down or non-existent server, the initial request takes 15 seconds to timeout. Subsequent requests fail quickly for the next 10 seconds or so. Then there is another 15 second timeout, and the pattern repeats.

I would like to configure both the maximum amount of time a request to a non-existent server can take (the 15 seconds), as well as how long the fact that the server is down is cached (the 10 seconds).

Is this something can can be tuned on Windows clients?

Edit: I got a capture from Wireshark showing Netbios naming service packets:

No.     Time        Source                Destination           Protocol Info
     90 2.184614    172.27.8.7            172.27.8.255          NBNS     Name query NB CHASE-IE<20>
     97 2.920946    172.27.8.7            172.27.8.255          NBNS     Name query NB CHASE-IE<20>
    106 3.671325    172.27.8.7            172.27.8.255          NBNS     Name query NB CHASE-IE<20>
    136 12.936379   172.27.8.7            10.0.2.15             NBNS     Name query NBSTAT *<00><00><00><00><00><00><00><00><00><00><00><00><00><00><00>
    140 14.436181   172.27.8.7            10.0.2.15             NBNS     Name query NBSTAT *<00><00><00><00><00><00><00><00><00><00><00><00><00><00><00>
    142 15.936134   172.27.8.7            10.0.2.15             NBNS     Name query NBSTAT *<00><00><00><00><00><00><00><00><00><00><00><00><00><00><00>

You can see the 15 seconds the initial request is taking. It looks like it does a UDP broadcast to the whole subnet (172.27.8.255). It doesn't get an answer, and then somehow gets the right IP (10.0.2.15), perhaps via DNS. Then it spends a few seconds timing out to that server (it's offline).

share|improve this question

2 Answers 2

The timout can come from different sources. First you should use somthing like TcpView to determine on which port most time is wasted.

share|improve this answer
    
Using that tool, I was not able to isolate a port. The diffs from before and during the timeout period only contained established TCP connections. My gut tells me that my client is likely broadcasting a UDP packet and waiting on a response, which would not show in that tool. –  Chase Seibert Sep 11 '09 at 13:57
up vote 0 down vote accepted

I was able to reduce the initial waiting period from 15 seconds to 2 seconds by putting the server into lmhosts.

  1. Edit c:\windows\system32\drivers\etc\lmhosts (not .sam, the sample file)
  2. Add the line "10.0.2.15 chase-ie #PRE"
  3. Run "nbtstat -R" to reload the Netbios naming cache
  4. Run "nbtstat -r" to check that the name is cached
share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.