Short answer:
An app server coordinates running
Java code in response to HTTP (a layer on top of TCP/IP) requests. It handles the network communication, the threading for multiple requests, and tracking session data among other things.
Ryan
[ April 07, 2005: Message edited by: Ryan McGuire ]