Diferença entre proxy e roteamento

7

Estou ciente de quais proxies e roteadores são usados. Mas eu não sei como diferenciá-los de forma confiável.

Aqui está uma lista de fatores que eu encontro neles.

Servidor proxy

  • Pode modificar livremente os dados da camada de aplicativos
  • Geralmente recebe uma sessão TCP da origem
  • Geralmente forma uma sessão TCP para segmentar
  • Pode ler dados da camada de aplicativo para definir o destino
  • É alvo de um pacote IP ao usar o protocolo IP

Vamos preferir não pensar em um equipamento de rede aqui. Pense em uma malha de servidores de aplicativos que roteiam solicitações SOAP. Roteador

  • Conformidade com protocolos de roteamento bem definidos
  • Geralmente recebe uma sessão TCP da origem
  • Geralmente forma uma sessão TCP para segmentar
  • Pode ler dados da camada de aplicativo para definir o destino
  • É alvo de um pacote IP ao usar o protocolo IP

É chamado roteamento quando regras de roteamento são conhecidas por todas as partes e proxy quando não são? Eu acredito que há um fator definitivo para diferenciar os dois.

    
por Mikuz 18.09.2014 / 12:14

3 respostas

9

Um servidor proxy e um roteador atuam em diferentes níveis na pilha de protocolos. Um proxy atua na camada de aplicativo (por exemplo, um proxy HTTP). Um roteador atua na camada de internetwork (por exemplo, protocolo IP).

O principal trabalho de um roteador é mover pacotes entre redes.

O principal trabalho de um proxy é executar algum serviço útil, como o armazenamento em cache do conteúdo HTTP, a aplicação de funções de filtragem e autorização em nível de aplicativo e assim por diante.

Os roteadores geralmente não estão preocupados em estabelecer sessões TCP. Até mesmo um roteador que realiza a conversão de endereços de rede (NAT) apenas acompanha as sessões entre clientes internos e servidores externos e altera os endereços IP conforme necessário.

No uso normal, os roteadores não são os pontos finais das sessões TCP.

No uso normal, os roteadores não lêem o conteúdo dos protocolos da camada de aplicação.

    
por 18.09.2014 / 12:57
2

No modelo OSI, o roteamento é geralmente restrito à camada 3, a camada de rede. Os roteadores irão principalmente embaralhar os pacotes IP entre as redes (não se preocupando muito com os fluxos TCP, a menos que o QoS esteja em jogo). Os roteadores fazem com que o cabeçalho IP seja alterado nos pacotes enquanto eles atravessam as redes, mas geralmente não modificam a carga útil dos pacotes.

Os proxies geralmente trabalham na camada 4 (transporte) e acima (camada 7, a camada de aplicação, sendo mais comum). Proxies provavelmente funcionam em uma unidade de dados maior que um único pacote, e são mais propensos a fazer coisas como adicionar para modificar a carga de dados (proxies HTTP adicionando Via: headers um bom exemplo).

Como a maioria de qualquer coisa na rede, as bordas entre as camadas podem e às vezes são borradas. Os roteadores podem executar muitas funções de proxies, como modificar o tráfego, filtrar a segurança, etc., e os proxies podem ser usados para permitir que duas redes diferentes conversem entre si. Geralmente, faz mais sentido para um roteador fazer o mínimo possível por motivos de desempenho e custo, já que normalmente ele precisa lidar com TODO o tráfego da Internet para toda a rede, não apenas para o tráfego de aplicativos específico.

    
por 18.09.2014 / 12:57
1

Acho que percebi o fator determinante.

O servidor proxy força o alvo a responder de volta a si mesmo. O servidor proxy pode então retransmitir a resposta para a origem, de forma síncrona ou assíncrona. Forçar a resposta por si só define o servidor proxy.

O proxy também pode ser um cluster. Nesse caso, a resposta é forçada por meio de um único cluster de proxy, em vez de um único servidor proxy.

    
por 18.09.2014 / 12:40

Tags