LST in Translation
What's behind the Winroute utility still listing long-dead sites.
- By Bill Boswell
We were experiencing some problems with SMTP message routing and used the excellent Winroute utility to troubleshoot. We fixed the problem, but we noticed that Winroute shows a bunch of old sites that we don’t use anymore. Why are they still listed in Winroute?
For anyone who hasn’t used Winroute before, it’s a utility for displaying the content of a data structure called the Link State Table. The Link State Table contains information about every Exchange server, routing group, and connector in the organization, including:
- Distinguished names, GUIDs and versions of each Exchange server
- Routing Group addresses (X.400, SMTP, and so forth)
- Routing Group members, their version, build number and whether they can be contacted by the Routing Group Master
- Connector type, source and destination bridgeheads, restrictions, address spaces and state: UP or DOWN
Each Exchange server has a copy of the Link State Table that it stores in memory, never on disk.
A Routing Group Master can only update the Link State Table for entities in its own routing group. This prevents multiple Routing Group Masters from updating the table based on a single event.
Help from Bill
Got a Windows or Exchange question or need troubleshooting
help? Or maybe you want a better explanation than provided
in the manuals? Describe your dilemma in an e-mail
to Bill at mailto:email@example.com;
the best questions get answered in this column.
When you send your questions, please include your
full first and last name, location, certifications (if
any) with your message. (If you prefer to remain anonymous,
specify this in your message but submit the requested
information for verification purposes.) The best questions
will be published here and the submitter will get one of the
finest MCPmag.com baseball-style caps ever made.
If the state of an entity changes, the change is communicated to a single server in each routing group called the Routing Group Master. You can identify the Routing Group Master in Exchange System Manager. Drill down to the Members folder under the Routing Group. The right pane of the window shows the Server Type designation, either Member or Master.
The Routing Group Master updates the Link State Table then sends a copy of the updated table to every Exchange server in its routing group. When a bridgehead server receives the updated table, it sends a message to its partners in the other routing groups. The message contains the updated Link State Table. When a bridgehead server in another routing group gets the updated Link State Table, it communicates it to its own Routing Group Master, which then passes it on to the other Exchange servers in that Routing Group.
Here’s the reason you see all those stale entries in Winroute. A Routing Group Master can only change the status of entities in its own routing group. For this reason, the system can never remove routing groups from the Link State Table.
For example, let's say you want to delete a routing group called Tucson because you have consolidated all the mailboxes to servers in Phoenix. You can’t delete a site (Administrative Group) if it contains servers, so you have to decommission all the servers in Tucson. But now the Tucson routing group has no Routing Group Master, so the entry in the Link State Table can’t be removed. The other Exchange servers realize that the Tucson routing group no longer exists and they ignore the entry but the entry itself lingers on and on.
The remnants of a few dead Routing Groups in the Link State Table doesn't constitute much of a problem unless you have a huge organization where old entries cause the Link State Table size to be inordinately large. Such an organization could encounter replication issues owing to the size of the Link State Table.
This is especially a problem in large organizations that used the Active Directory Connector (ADC) to migrate from Exchange 5.5 to Exchange 2000/2003. When you connect the legacy Exchange directory service to Active Directory with the ADC and install the first Exchange 2003 server, each of the legacy Exchange sites becomes separate Routing Groups in Active Directory.
After you consolidate servers and delete the sites, the old routing group entries remain in the Link State Table. Because the Link State Table resides in memory, the only way to remove these old Routing Groups is to stop all the Exchange servers throughout the organization at the same time. When you start up Exchange again after the outage, the first server reads the Routing Group entries in Active Directory and builds a fresh Link State Table that does not contain the deleted Routing Groups.
Microsoft has a way to avoid an entire organization shutdown to clean out the LST, but it involves precise timing of outages within each Administrative Group. Call Microsoft Product Support Services for details.
Hope this helps!
Contributing Editor Bill Boswell, MCSE, is the principal of Bill Boswell Consulting, Inc. He's the author of Inside Windows Server 2003 and Learning Exchange Server 2003 both from Addison Wesley. Bill is also Redmond magazine's "Windows Insider" columnist and a speaker at MCP Magazine's TechMentor Conferences.