icrosoft recently rolled out its next-generation operating system (OS), Windows Vista. One of the core Vista components is a new version of Microsoft's web serverInternet Information Services version 7.0 (IIS 7.0
). IIS 7.0 will also be part of Windows Server "Longhorn", which is expected to ship in mid 2007. This article provides a developer-centric look at IIS 7.0.
IIS in Recent Times
If you think back a few years to IIS 5.0, the future for Microsoft's web server looked rather bleak, because network-savvy worms such as Nimda, Code Red, Code Red II, and their variants were affecting thousands of computers worldwide, and rapidly damaging IIS's reputation. Microsoft introduced the IIS lockdown tool to combat these exploits and, with the release of IIS 6.0, made "locked down" mode settings the default at installation, which helped minimize such security problems, and helped IIS 6.0 recapture a major part of trust that IIS 5.0 lost. No major security disasters have been reported since the release of IIS 6.0.
A recent market survey (Netcraft Web Server SurveyApril 2007 ) indicated that Microsoft's IIS has a 31.13 percent market share, which places it in second position behind the open source Apache Web Server. Another survey by Port80 Software that takes Fortune 1000 companies into consideration reports that IIS has overtaken Apache among Fortune 1000 sites.
|Figure 1. IIS 7.0 Core Components: IIS 7.0 is composed of three core components.|
Now, Microsoft is looking to consolidate IIS 7.0's position as a secure and robust web server.
IIS 7.0 Core Components
IIS 7.0's core components differ from those in IIS 6.0. IIS 7.0 is made up of three core components as illustrated in Figure 1.
|Author's Note: The screen images shown in this article are from a system running Windows Server "Longhorn", August CTP (Build 5600)some of the features may change before the product is released in its final form.
IIS 7.0 Pillars
- Protocol Listeners: A protocol listener listens to specific requests based on a specific protocol and sends the request to the IIS worker process for processing. Protocol listeners provided with IIS 7.0 include HTTP.sys, NET.TCP, NET.MSMQ and NET.PIPE.
- WWW Service: This service acts as a listener adapter for the HTTP.sys protocol listener and monitors the HTTP requests.
- Windows Activation Service (WAS): WAS is a new service in IIS 7.0 that manages application pool configuration and worker processes. In IIS 6.0, this responsibility was part of the WWW Service. The shift to a separate core component ensures that developers can use the same process model and configuration for both HTTP and non-HTTP based sites. It is possible to configure the other three protocol listeners (NET.TCP, NET.MSMQ and NET.PIPE) using WAS.
For example, when the NET.TCP protocol listener is configured it listens for TCP requests. WAS can also be used to host a Windows Communication Foundation (WCF) based service.
|Figure 2. IIS 7.0 Pillars: The figure shows the five major focus areas of IIS 7.0 in which Microsoft made improvements.|
Apart from the change in the core components Microsoft made various changes in five major focus areas. These five areas (see Figure 2
) form the pillars of IIS 7.0.
The next page provides a more detailed look at each of the five major focus areas.