Arquitetura Internet: mudanças entre as edições

De Wiki Cursos IFPR Foz
Ir para navegaçãoIr para pesquisar
 
(24 revisões intermediárias pelo mesmo usuário não estão sendo mostradas)
Linha 1: Linha 1:
=Arquitetura Internet=
=Arquitetura Internet=


A arquitetura Internet organiza os protocolos de rede da Internet em quatro camadas:
==Camadas de Protocolos==
;Camada aplicação: É a camada superior, a qual define as '''regras para a troca de mensagens entre os processos de aplicação''' específicos.
 
;Camada transporte: É responsável por implementar um '''canal de comunicação lógico fim a fim entre os processos de aplicação''', oferecendo um serviço apropriado para que os processos de aplicação troquem mensagens.
A '''arquitetura Internet''' organiza os protocolos de rede da Internet em '''quatro camadas''':
;Camada rede: Onde estão agrupados os protocolos para tratar os problemas relativos ao '''encaminhamento de pacotes entre dois computadores remotos''', passando pelos roteadores intermediários, permitindo a conectividade computador a computador.
;Camada enlace/física: É a camada inferior da arquitetura, onde estão os protocolos relacionados relacionados à '''comunicação entre nós vizinhos''' e à transmissão de bits sobre os enlaces físicos;


[[Arquivo:ArquiteturaInternet.jpeg]] -> [[Arquivo:CamadasInternet.jpeg]]
[[Arquivo:ArquiteturaInternet.jpeg]] -> [[Arquivo:CamadasInternet.jpeg]]


==Suporte a serviços comuns para as aplicações==
Ilustração das '''camadas''' da '''arquitetura Internet''' e seus principais '''protocolos''':
 
O objetivo das redes de pacotes é oferecer um suporte de comunicação para que as aplicações rodando em dois computadores remotos possam trocar informações.
 
Intuitivamente, podemos ver a rede como provendo um '''canal lógico de comunicação''' para que os processos de aplicação cliente e servidor possam se comunicar. Para usar este canal de comunicação, os programas de aplicação cliente enviam seus pedidos através de uma '''porta''', que conecta o cliente ao servidor, e através da qual ele espera a resposta do serviço é requisitado.
 
Dois tipos comuns de serviço solicitado pelas aplicações à rede são:
*Serviço tipo '''pedido/resposta''' (''request/reply'');
*Serviço tipo '''fluxo de dados tempo real''' (''audio/video streaming'').
 
A '''paginação na Web''' é um exemplo de serviço tipo '''pedido/resposta''', onde um processo cliente solicita uma informação e um processo servidor fornece a informação solicitada. Não há restrições de tempo entre o pedido e a resposta, entretanto, é necessário que a informação transmitida seja livre de erros.
 
Uma '''conversa telefônica''' via Internet é um exemplo de '''fluxo de dados em tempo real''', neste caso há restrições temporais na transmissão, por outro lado, um pequeno silêncio ocasionado por um erro ou ruído pode não ser um problema grave para o entendimento geral da conversa.
 
Para estes dois tipos de requisições de serviços, muitas redes de computadores dispõem de dois tipos de serviços de transporte:
*'''Serviço orientado a conexão''', com transmissão de dados garantida;
*'''Serviço não orientado a conexão''', com transmissão de dados tipo '''melhor esforço''' (''best effort'').
 
Quando uma aplicação usa o serviço orientado a conexão o cliente e o servidor trocam pacotes de controle entre si antes de enviarem os pacotes de dados. Isto é chamado de procedimento de estabelecimento de conexão (''handshaking''), onde se estabelecem os parâmetros para a comunicação. Uma vez concluído o ''handshaking'' a conexão é dita estabelecida e os dois sistemas terminais podem trocar dados. O serviço de transferência garantida, que assegura que os dados trocados são livres de erro, o que é conseguido a partir de temporizações, mensagens de reconhecimento e retransmissão de pacotes. Por exemplo, quando um sistema terminal B recebe um pacote de A, ele envia um reconhecimento; quando o sistema terminal A recebe o reconhecimento ele sabe que o pacote que ele enviou foi corretamente recebido; caso A não recebe confirmação, ele assume que o pacote não foi recebido por B e retransmite o pacote.
 
No serviço não orientado a conexão não há ''handshaking''. Quando um lado de uma aplicação quer enviar pacotes ao outro lado ele simplesmente envia os pacotes. Como o serviço é não garantido, também não há reconhecimento, de forma que a fonte nunca tem certeza que o pacote foi recebido pelo destinatário. Como o serviço é mais simples, os dados podem ser enviados mais rapidamente.
 
[[Arquivo:ArquiteturaInternet.jpeg]] -> [[Arquivo:CamadasInternet2.jpeg]]
 
Na Internet, o serviço orientado a conexão é implementado pelo protocolo '''TCP''' (''Transmission Control Protocol'') e o serviço não orientado a conexão é implementado pelo protocolo '''UDP''' (''User Datagram Protocol''). As aplicações conhecidas como o telnet, correio eletrônico, transferência de arquivos e WWW usam o TCP. Outras aplicações usam o UDP, como o DNS (Domain Name System) e aplicações multimídia como voz sobre Internet e aplicações de áudio e vídeo.
 
==Funções das camadas da arquitetura Internet<ref name="KUROSE">KUROSE, J.F; ROSS K. W. Redes de Computadores e a Internet: Uma abordagem ''top-down'', São Paulo: Pearson, 2010.</ref>==
 
===Camada de Aplicação===
Define as '''regras para a troca de mensagens entre os processos de aplicação''' rodando em cada ''host''.
 
Cada aplicação da Internet utiliza um protocolo de aplicação próprio, por exemplo, a '''[[Aplicação Web]]''' usa o '''HTTP''' (RFC 1945, 1996), o '''[[Correio Eletrônico]]''' o '''SMTP''' (RFC 788, 1981), a '''[[Transferência de Arquivos]]''' o '''FTP''' (RFC 114, 1971), etc.
 
===[[Camada de Transporte]]===


Trata da '''comunicação processo a processo''', cada qual rodando em um host da Internet.
[[Arquivo:ArquiteturaInternet.png]]


Como em cada host podem haver mais de um processo rodando, a camada transporte organiza a '''multiplexação de aplicações''' entre os diversos processos, utilizando as chamadas '''portas'''.
;Camada Enlace/Física: Trata da '''comunicação entre nós vizinhos''' diretamente conectados por '''enlaces de comunicação'''.


Os dois '''Protocolos de Transporte''' da Internet são:
:A camada enlace/física é responsável por transferir pacotes de dados entre computadores ou roteadores conectados em uma '''rede local''', como uma rede local '''Ethernet''' (IEEE802.3) ou uma '''rede local sem fio''' (IEEE802.11), bem como entre computadores ou roteadores conectados por um '''enlace ponto a ponto'''.
*'''TCP''' (RFC 793, 1981), que implementa uma transferência de dados garantida para aplicações tipo pedido/resposta;
*'''UDP''' (RFC 768, 1980), que implementa um serviço tipo melhor esforço para aplicações tipo fluxo de dados tempo real.


===[[Camada de Rede]]===
;Camada de Rede: A camada rede é responsável pela '''comunicação ''host'' a ''host''''' na Internet. Isto é realizado pelo protocolo '''IP''' através de '''comutação de pacotes''', usando um esquema de '''endereçamento''' global e implementando o '''roteamento''' dos pacotes pela malha de roteadores da Internet.
Trata da '''comunicação ''host'' a ''host'' na Internet''', envolvendo cada roteador do caminho entre o computador origem e o destino.


O formato dos pacotes trocados entre ''hosts'' é definido pelo '''Protocolo IP''' (''Internet Protocol'') (RFC 791, 1981) e utilizam um esquema de endereçamento global, conhecido como '''[[Endereçamento IP]]'''. Além disto, a camada rede é responsável por realizar o '''roteamento''' dos pacotes pela malha de roteadores da Internet.
;Camada de Transporte: Trata da '''comunicação processo a processo''', cada qual rodando em um host da Internet. Como em cada host podem haver mais de um processo rodando, a camada transporte implementa a '''multiplexação de aplicações''' entre os diversos processos, utilizando as chamadas '''portas'''. Há dois tipos de protocolos de transporte na Internet, o '''TCP''' e o '''UDP'''.


===[[Camada de Enlace | Camada de Enlace/Física]]===
;Camada de Aplicação: Define as '''regras para a troca de mensagens entre os processos de aplicação''' rodando em cada ''host''.
Trata da '''comunicação entre nós vizinhos''' diretamente conectados por '''enlaces de comunicação'''.


A camada enlace/física é responsável por transferir pacotes de dados entre computadores ou roteadores conectados em uma '''rede local''', como uma '''rede local Ethernet''' (IEEE802.3) ou uma '''rede local sem fio''' (IEEE802.11), bem como entre computadores ou roteadores conectados por um '''enlace ponto a ponto'''.
:Cada aplicação da Internet utiliza um protocolo de aplicação próprio, por exemplo, a Aplicação Web usa o '''HTTP''', o Correio Eletrônico o '''SMTP''', a Transferência de Arquivos o '''FTP''', etc.


==Encapsulamento de protocolos==
==Encapsulamento de protocolos==

Edição atual tal como às 11h48min de 6 de agosto de 2019

Arquitetura Internet

Camadas de Protocolos

A arquitetura Internet organiza os protocolos de rede da Internet em quatro camadas:

->

Ilustração das camadas da arquitetura Internet e seus principais protocolos:

Camada Enlace/Física
Trata da comunicação entre nós vizinhos diretamente conectados por enlaces de comunicação.
A camada enlace/física é responsável por transferir pacotes de dados entre computadores ou roteadores conectados em uma rede local, como uma rede local Ethernet (IEEE802.3) ou uma rede local sem fio (IEEE802.11), bem como entre computadores ou roteadores conectados por um enlace ponto a ponto.
Camada de Rede
A camada rede é responsável pela comunicação host a host na Internet. Isto é realizado pelo protocolo IP através de comutação de pacotes, usando um esquema de endereçamento global e implementando o roteamento dos pacotes pela malha de roteadores da Internet.
Camada de Transporte
Trata da comunicação processo a processo, cada qual rodando em um host da Internet. Como em cada host podem haver mais de um processo rodando, a camada transporte implementa a multiplexação de aplicações entre os diversos processos, utilizando as chamadas portas. Há dois tipos de protocolos de transporte na Internet, o TCP e o UDP.
Camada de Aplicação
Define as regras para a troca de mensagens entre os processos de aplicação rodando em cada host.
Cada aplicação da Internet utiliza um protocolo de aplicação próprio, por exemplo, a Aplicação Web usa o HTTP, o Correio Eletrônico o SMTP, a Transferência de Arquivos o FTP, etc.

Encapsulamento de protocolos

Toda comunicação fim a fim na Internet é iniciada na camada aplicação, a qual conta com os serviços das camadas inferiores para realizar sua comunicação.

Por exemplo, suponha que uma aplicação cliente deseja enviar uma mensagem para o lado servidor da aplicação:

  1. A aplicação cliente prepara a mensagem para enviar e indica o endereço IP e a porta do servidor que irá receber a mensagem e passa os dados a camada inferior;
  2. A camada transporte, logo abaixo da aplicação, agrega à mensagem as informações da porta, e outras informações dependendo do tipo de serviço requerido, montando um novo pacote chamado segmento, e passa a camada inferior para que envie ao IP destino;
  3. A camada rede, recebe o segmento e acrescenta novas informações, entre elas o IP fonte e destino, e monta um novo pacote, chamado datagrama. O datagrama é então passado para a camada enlace/física para ser entregue ao roteador de saída da rede;
  4. A camada enlace/física encapsula então o datagrama em um quadro do enlace local, acrescentando novas informações, como o endereço físico (MAC) do roteador e envia ao barramento da rede local para que o roteador de prosseguimento ao envio do pacote.

Uma vez recebido o quadro pela placa de rede do roteador, o mesmo retira o datagrama, verifica o IP destino, consulta a tabela de roteameto, e encaminha o datagrama para o enlace destino, encapsulando novamente o datagrama em um quadro do próximo enlace.

Uma vez no host destino o processo é invertido para recuperar a mensagem para ser entregue ao lado servidor da aplicação.

Referências



--Evandro.cantu (discussão) 17h07min de 6 de março de 2015 (BRT)