Overview of the Transport Architecture


Before we discuss how messages are routed within the same group or between groups, it might be useful to have a basic understanding of how messages are transferred internally within an Exchange 2000 server. Knowing how messages arrive in an outbound SMTP queue, for example, will help complete the overall routing picture that will be presented in the next several pages.

Messages can flow into an Exchange Server 2003 in one of three ways. The first is through the SMTP service. An example of this type of message is Internet e mail. The second is through a store submission, such as a message created by a Microsoft Outlook (MAPI) client or an Outlook Web Access (OWA) client. The third way is for the message to come in via the Message Transfer Agent (MTA). Messages arrive in this way via an X.400 connector from a foreign e- mail system or via any Exchange Development Kit (EDK)–based connector.

As Figure 3-3 shows, SMTP messages are first sent to the NTFS queue because not all messages coming in from SMTP are destined for the local Exchange store. Thereafter, SMTP messages are sent to the precategorization queue for further processing.

click to expand
Figure 3-3: Internal transport architecture for Exchange Server 2003.

Messages submitted via either a store submission or the MTA are dropped into the Exchange store driver. The Exchange store driver picks up these messages and passes them to the precategorization queue. The precategorization queue is the first opportunity you have to fire your event sinks. Event sinks are scripts that can be run against the message to perform certain functions, such as adding a disclaimer or running an antivirus program.

The message is then passed to the message categorizer, which is essentially a collection of event sinks that perform address resolution on both the originator and recipient of the message. In addition, the message categorizer retrieves from Active Directory attributes that apply to the message, such as the originator’s or recipient’s size limits for outgoing and incoming messages, delivery restrictions, forwarding specifications, and other settings that might restrict the message in some way. Any restrictions that do exist are applied to the message. Once these tasks have been accomplished, the message is placed into a postcategorization queue, which allows more event sinks to fire on the message, if you choose to set them up.

After the message is processed in the postcategorization queue, it is given to the routing engine, which parses the destination address against its domain mapping and domain configuration table. The routing engine then decides whether the message is destined for the local store, or if a temporary outbound queue (referred to as a destination message queue) should be created to pass the message to another SMTP server.

Destination message queues are created based on the destination domain name. The advanced queuing engine is able to create as many destination message queues as needed. From these queues, the SMTP service reads the message out of the queue and then passes the message to the next SMTP server. If the message is destined for the local store, it is placed in the local delivery queue. The Store.exe process then reads the message out of the queue and writes it to the local database. Thereafter, the message is associated with the destination mailbox, and the recipient is notified that new mail has arrived.

Note

The SMTP service comprises two components: the protocol stack and the advanced queuing engine (AQE). The AQE makes up the majority of the SMTP service and manages the passing of messages through the queues from the time they enter the transport core until the time they are placed in an outbound queue or delivered to the Exchange store driver. Thus, even though the AQE isn’t depicted in Figure 3-3, it is the managing component that works behind the scenes to move messages through the transport core.

Message Routing Within the Same Server

When Exchange Server 2003 determines that the recipient of a message is on the same server as the sender, it delivers the message to the recipient’s Inbox. The steps involved, shown in Figure 3-4, are as follows:

click to expand
Figure 3-4: How Exchange Server 2003 routes a message to a recipient from a sender housed on the same server.

  1. The client sends the message.

  2. The message is passed to the categorizer, parsed against the domain mapping table, and then placed in the local delivery queue.

  3. The information store associates the message with the recipient’s mailbox.

Message Routing Within the Same Routing Group

Messages sent between servers in the same routing group use SMTP as their transport. The steps involved in routing a message between two servers in the same routing group, shown in Figure 3-5, are as follows:

click to expand
Figure 3-5: How Exchange Server 2003 routes a message to a recipient on another server.

  1. The client sends the message.

  2. The message is passed to the categorizer, which applies any restrictions found in Active Directory. It is then passed through the postcategorization queue and on to the routing engine.

  3. The routing engine parses the message against the domain name mapping table and then places it in the outgoing SMTP queue for the destination server. This queue is dynamically created for the message based on the destination domain name, which becomes the name of the queue—in this case, hr.trainsbydave.com (Local Delivery).

  4. The sending server looks up the recipient’s mailbox directory in Active Directory, conducts a DNS lookup for the mail exchanger (MX) record associated with the destination server on which the recipient’s mailbox is stored, and then creates a TCP connection to that server over port 25.

  5. The message is transmitted to the destination server.

  6. The destination server accepts the message from the SMTP service and places it in the NTFS queue. The AQE reads the message out of the queue and takes the message through the transport core.

Message Routing to Other Routing Groups

Messages routed to servers in other routing groups pass through a bridgehead server (BHS) at each end of the connector if one is explicitly configured in the connector. With an RGC, the destination server can be configured to be any server in the target routing group. The steps involved in routing messages to servers in different routing groups, shown in Figure 3-6, are as follows:

click to expand
Figure 3-6: How Exchange Server 2003 routes a message to a recipient in another routing group.

  1. The client sends the message.

  2. The message is passed through the transport core and then placed in an outgoing SMTP message queue.

  3. The routing group information is gathered from the configuration naming partition of Active Directory.

  4. The link state information is consulted to determine the best routing path. (For more information, see the section “Link State Information” later in this chapter.)

  5. The message is passed to the BHS over TCP port 25.

  6. The BHS passes the message over TCP port 25 to the BHS in the destination routing group.

  7. The receiving BHS passes the message to the destination server in its group over TCP port 25.

  8. The message is brought into the destination server via the SMTP service and is placed in the NTFS queue.

  9. The message is taken out of the queue by the AQE and associated with the recipient’s Inbox.

Message Routing to Foreign E-Mail Systems

Messages are routed to foreign e-mail systems over the X.400 connector if it is a direct, continuous connection. Otherwise, they are routed over the Internet via SMTP. Here are the steps involved in routing messages to another e-mail system when using SMTP. These are illustrated in Figure 3-7.

click to expand
Figure 3-7: How Exchange Server 2003 routes a message to a recipient in a foreign e mail system over SMTP.

  1. The client sends the message.

  2. The message is placed in the outgoing SMTP message queue.

  3. The SMTP service reads the message out of this queue and sends it over TCP port 25 to the destination SMTP server.

If the message is being routed to a foreign e-mail system over an X.400 connector, these steps are essentially the same as routing over SMTP, except that an X.400 connector is used and no port number is involved.




Microsoft Exchange Server 2003 Administrator's Companion
Microsoft Exchange Server 2003 Administrators Companion (Pro-Administrators Companion)
ISBN: 0735619794
EAN: 2147483647
Year: 2005
Pages: 254

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net