IIS
Topic Last Modified: 2007-11-12
Microsoft Exchange Server 2007 is closely integrated with Internet Information Services (IIS). With some exceptions (for example, MAPI), Exchange 2007 uses IIS protocol virtual servers to transfer all data among servers and to messaging and collaboration client applications.
Internet Information Services Configuration
IIS stores configuration data in the IIS metabase store. When Exchange 2007 is installed on a computer, the IIS metabase configuration information is copied into the Active Directory directory service. Exchange 2007 modifies the information in Active Directory, and the metabase update service replicates the information from Active Directory to the metabase every couple of minutes. This replication occurs only from Active Directory into the IIS metabase. Changes that are madee directly to the IIS metabase will be lost.
Exchange Interprocess Communication Layer
The Exchange store and message routing facilities communicate with the IIS virtual servers through the Exchange Interprocess Communication (ExIPC) layer. Each protocol server is decoupled from the Exchange services by unidirectional queues: one for incoming messages, and one for outgoing messages. The ExIPC layer uses local remote procedure calls (LRPC), and a shared-memory heap to efficiently transfer data between Exchange 2007 and IIS.
Protocol Virtual Servers
Exchange 2007 uses IIS virtual servers for communications with other Exchange servers and other messaging and collaboration applications. Additional virtual servers can be created to support dedicated or secure communications for custom collaborative applications. Use the Exchange System Manager Microsoft Management Console (MMC) snap-in to create and configure Exchange virtual servers.
Note
The Exchange metabase update service will override changes that are made directly to the IIS metabase. Always use the Exchange System Manager to make changes to IIS on computers that are running Exchange 2007.
Protocols
Exchange 2007 includes the following protocols:
- Simple Mail Transfer Protocol (SMTP)
- Post Office Protocol version 3 (POP3)
- Internet Message Access Protocol version 4 (IMAP4)
- Network News Transfer Protocol (NNTP)
- HTTP
- WebDAV
This topic provides information about the types of protocol services that Exchange 2007 provides, and the ways that they can be accessed programmatically.
SMTP
Exchange 2007 extends the base Microsoft Windows Server operating systems SMTP protocol engine, and uses it as the sole controller for routing messages. Exchange 2007 uses SMTP to transport e-mail messages, and to communicate routing link status information between servers.
To support more efficient server-to-server communication, Exchange 2007 also implements extended SMTP verbs. The standard SMTP protocol is typically used by e-mail clients and simple Web applications to transmit e-mail messages. Specialized applications that need secure or exclusive access to an SMTP service can also send messages to nondefault SMTP virtual servers that are configured by using the Exchange System Manager.
Applications can also extend the SMTP service by registering SMTP protocol events. Incoming messages and outgoing messages and timers can trigger the events. The protocol server then calls the event sink that is registered for that event on the virtual server. There are event hooks for all the significant steps that are used to process messages for delivery by Exchange 2007.
Note
SMTP event sinks can change the body of messages after the user sends them, for example by adding a disclaimer to outgoing e-mail. If an event sink changes a message after the user has digitally signed it, the accompanying digital signature will be invalid. If an event sink modifies the body of a signed message, the event sink should either remove the digital signature, indicate why the signature will appear invalid, or re-sign the message. SMTP event sinks cannot apply disclaimers or access the body of Secure/Multipurpose Internet Mail Extensions (S/MIME) and other encrypted messages when the encryption keys are unavailable.
POP3
Exchange 2007 configures a default POP3 virtual server instance during setup. Additional POP3 virtual servers can be created by using the Exchange System Manager. Applications and simple e-mail clients can use POP3 to retrieve incoming messages from Exchange 2007.
IMAP4
Exchange 2007 configures a default IMAP4 virtual server instance during setup. Additional IMAP4 virtual servers can be created by using the Exchange System Manager. Applications and e-mail clients that require access to both mailbox and public folder hierarchies can use the IMAP4 protocol.
NNTP
Exchange 2007 configures a default NNTP virtual server instance during setup. Additional NNTP virtual servers can be created by using the Exchange System Manager. NNTP virtual servers support the use of Microsoft Outlook and other NNTP news readers to connect to Exchange public folder stores.
HTTP and WebDAV
By default, every item in the Exchange store is assigned a URL name, which can be used to access, and potentially to modify, the item. This includes messages in the user's mailbox, and also items within the public folder hierarchy.
Requests from applications or Web browsers for individual items that are addressed by URL pass through IIS and the ExIPC layer, and are ultimately handled by the Exchange store drivers. Information about item properties, or the item content, is passed through the ExIPC queue, through the HTTP protocol server, and then through the network to the client.
WebDAV is an extension to the HTTP protocol. Requests and responses between the client application and the WebDAV server are transmitted by XML messages. The Exchange WebDAV server provides access to individual items, collections of items, and item properties in the Exchange store.
Outlook Web Access also uses the default HTTP virtual server. Outlook Web Access is implemented as several Internet Server API (ISAPI) filter DLLs, and uses WebDAV to communicate between the browser client and the Exchange store. Outlook Web Access supports e-mail, calendar features, and contact management, which represent important information management features. However, advanced features of Outlook, such as tasks or journal items, are unavailable. Applications that extend Outlook Web Access are typically created by using new Exchange Web forms.