We are currenly running an Exchange 2010 system in coexistence with an Exchange 2003 system. It's fairly small so we're using the default routing group connector between the two systems that was created when the first 2010 Hub server was installed.
Most users' mailboxes are on Exchange 2003 with a few test users on Exchange 2010. All our Internet-bound emails are sent through a single send connector to smart hosts provided by Mimecast (hosted SMTP service). So far, so good.
After a couple of days of co-existence we noticed that emails sent from Exchange 2003 users to users in Exchange 2010 were taking a long time (> 20 mins) to get to the Exchange 2010 mailboxes. I went straight to the SMTP queue on the legacy Exchange
2003 bridgehead to the Exchange 2010 routing group and saw that there was a backlog of about 200 messages, the oldest being about 30 mins. A few of the messages were in a "Retry" state, which I thought should not be possible between Exchange servers
of the same organization on the same physical network.
The receive connector logs on the Exchange 2010 machine were indicating slow email acceptance and were generating log file entries like this one for each message:
Tarpit for '0.00:00:09.675' due to 'DelayedAck',Delivered
I came across some interesting blog entries regarding this which described the Delayed SMTP Acknowledgement and the Exchange 2010 queue shadow redundancy. These links are copied out below.
The short of it was that the Exchange 2010 server was not acknowledging emails sent from Exchange 2003 in a normal way. It was holding the SMTP session open until the 2010 Transport Service had acknowledgement that the message had been received before
allowing the SMTP server on Exch 2003 to continue with the next message. To fix this I just ran the command:
Set-ReceiveConnector "Default connector (Servername)" -MaxAcknowledgementDelay 0
This turns this feature off and lo and behold the queue on the Exchange 2003 server quickly disappeared. Email flow is back to normal and is as quick as you would expect.
The moral to the story is that if you are co-existing with Exchange 2003 server then leave this feature off if you can. Given that the maximum queue length in our small organization rarely exceeds 5 messages it's not exposing us to unacceptable risk
and it can be reverted to 30 seconds once Exchange 2003 is decomissioned.
I hope this helps someone.
Articles that helped me:
http://theangryangel.co.uk/blog/slow-relaying-with-microsoft-exchange-2010
http://mikecrowley.wordpress.com/2010/07/24/delayed-smtp-acknowledgement