In this case, you don't "need" more than 1 server to get started. Asp can execute in the web server, or you can use a thin layer on the WS and call an app sever remotely. Application design is key here. You can run the asp and connect to a database directly.
In most cases, you want to at least conceptually break the app into Presentation (ie, the WS), Logic (the "application server") and Data (the DB). This gives you some flexibilty in where you host the actual fuctionality, as well allowing some more options for scaling.
Example. You can build an asp.net layer that makes soap calls for the data to build the presentation layer. The Soap endpoint can local or remote. The Endpoint can be anywhere, and abstract the puts and gets to other soap calls, or direct DB access. All 3 layers can be hosted locally, or disconnected. This isn't the only option, either.
Jay Grubb
Technical Consultant
OpenLink Software
Web:
http://www.openlinksw.com:
Product Weblogs:
Virtuoso:
http://www.openlinksw.com/weblogs/virtuoso
UDA:
http://www.openlinksw.com/weblogs/uda
Universal Data Access & Virtual Database Technology Providers