Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

What is the purpose of the ASP.NET ISAPI extension aspnet_isapi.dll that is hosted in the worker process w3wp.exe in IIS 6.0 ?

In IIS 5.0, I understood that this ISAPI extension was responsible for handling all asp.net requests (aspx etc). It was loaded in the IIS process and was responsible for sending the requests to the ASP.NET worker process aspnet_wp.exe using named pipes.

With IIS 6.0, the requests reach w3wp.exe directly from the kernel and the ISAPI extension is later loaded in this worker process.

In the MSDN article (IIS 6.0) here is says *Aspnet_isapi.dll - Queues requests for processing by the managed code ASP.NET engine and performs health monitoring.*

This confuses me.

  • Aren't the requests already queues @ the kernel level ?

  • Isn't aspnet_isapi.dll unmanged code ? i.e. a regular win32 dll ? And isn't w3wp managed code ?

I am totally lost :-|

Any help would be appreciated !

share|improve this question
add comment

1 Answer

up vote 1 down vote accepted

According to this article, if using IIS6 process model, aspnet_isapi.dll isn't used to queue requests, but it is responsible for initialising the the CLR.

When the request arrives, IIS examines the resource type and calls into the ASP.NET ISAPI extension. If the default process model is enabled, aspnet_isapi queues the request and assigns it to the worker process. Any request data is sent through asynchronous I/O. If the IIS 6 process model is enabled, the request is automatically queued to the worker process (w3wp.exe) handling the IIS application pool to which the application belongs. The IIS 6 worker process doesn't know anything about ASP.NET and managed code. It is limited to processing the *.aspx extension and loading the aspnet_isapi module. When the ASP.NET ISAPI works under the IIS 6 process model, it behaves differently and just loads the CLR in the context of the w3wp.exe worker process.

share|improve this answer
    
Thank you Nexus. –  Preets Nov 22 '09 at 17:33
    
No problem. If this answers your question, would you mind "accepting" the answer? –  Nexus Nov 22 '09 at 23:13
    
Sure ! The article is definitely a find ! –  Preets Nov 23 '09 at 11:35
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.