Thursday, April 22, 2010

Exchange Queues filling up? (Part 2)

Here's the scenario... I'm deploying a single Exchange 2007 server (mailbox, CAS, Hub transport) at a client.  Its a transition from Exchange 2003.  Its pretty straightforward and its going fairly smoothly (kudos to the Exchange team for making it fairly painless) until the queues start filling up.

Having resolved an issue with the FQDN, I thought I was out of the woods.  I was wrong.

Messages started flowing for some domains, but overall, the queues still weren't moving.  After a bit of research, I come across this post... http://msmvps.com/blogs/bradley/archive/2007/10/15/i-already-flunked-the-bpa.aspx.

So I check the server using the command:
netsh int tcp show global

Nope, its definitely disabled.... hmmmm... then I come across this post...http://blogs.msdn.com/psssql/archive/2010/02/21/tcp-offloading-again.aspx.

Ok, its not Exchange related, but I check and the NIC has TCP Offload enabled.  So I disable that and restart.  Hmmm, no luck, but at least I've ruled that out.

After a bit more searching, I come across this kb article - http://support.microsoft.com/kb/951291.

Issue the command:
netsh interface tcp set global autotuninglevel=disabled

Check the status: netsh interface tcp show global

which returns this:
TCP Global Parameters

----------------------------------------------
Receive-Side Scaling State : enabled
Chimney Offload State : disabled
Receive Window Auto-Tuning Level : disabled
Add-On Congestion Control Provider : ctcp
ECN Capability : disabled
RFC 1323 Timestamps : disabled

This changed the Receive Window auto-tuning level to disabled.

Restart the server.  Check the queue viewer.  All messages have been sent!

Here's an post that covers some tweaking Microsoft has done to the networking stack in Server 2008 and Vista.
http://blogs.dirteam.com/blogs/sanderberkouwer/archive/2008/05/15/backward-compatible-networking-with-server-core.aspx

Enjoy.

No comments:

Post a Comment