Para entender o funcionamento de um framework primeiro entendemos o funcionamento de uma aplicação: Uma aplicação web básica é composta por diversas funções que são executadas quando determinadas URLs (endereços web) são chamadas. O resultado é retornado e renderizado pelo browser (navegador) do usuário.
Dessa forma, os web frameworks servem como facilitadores para construir essas aplicações. Eles oferecem ferramentas que agilizam o desenvolvimento, deixando o código mais simples e tornando o programador mais produtivo.
Web frameworks geralmente são classificados como glued frameworks, que são construídos pela associação de vários componentes de terceiros; ou full-stack frameworks, que são desenvolvidos criando componentes especificamente construídos para trabalharem juntos.
O protocolo HTTP (Hypertext Transfer Protocol) é uma das bases da web atualmente e sua função é realizar a comunicação entre cliente e servidor. O que ele faz, basicamente, é a troca de informações entre as partes. Para isso ele utiliza um par de requisição (request) e resposta (response), isto é, faz uma requisição ao servidor e recebe uma resposta para o cliente.
Um framework web como o web2py, basicamente, realizará seu serviço com base no protocolo HTTP.
Para mais informações sobre o protocolo HTTP, consulte o guia no tuts+.