Um host em uma LAN com IP (10.0.0.1, porta TCP 8888) se conecta a um servidor sem saber que há uma caixa NAT na borda da rede. A caixa NAT é burra e apenas traduz a porta 8888 para alguma outra porta 5555 e altera o IP para o endereço IP público (digamos 205.209.96.96) e salva em um dicionário a chave, par de valores: (5555,10.0.0.1: 8888) .
Quando recebe uma resposta, faz a tradução reversa e encaminha o pacote de volta ao host. Como a operação de um proxy HTTP é diferente disso? Eu entendo que o proxy pode fazer outras coisas como filtragem, cache etc, mas como é a operação básica do proxy diferente de uma caixa NAT?