ASP.NET is built on a core set of classes and interfaces that abstract the HTTP protocol. The three core abstractions are the context (HttpContext) that represents the current HTTP request, handlers (classes that implement IHttpHandler) that are capable of servicing HTTP requests, and modules (classes that implement IHttpModule) that can pre/post process HTTP requests to provide additional services.