1
Redes de Computadores
A it t M d l d A it t M d l d Arquitetura e Modelos de Arquitetura e Modelos de ReferênciaReferência
Modelo OSI/ISOM d l TCP/IP
Reinaldo [email protected]
Modelo TCP/IP
Evolução na comunicaçãoComunicação sempre foi uma necessidade humana, buscando aproximar comunidades humana, buscando aproximar comunidades distantes
Sinais de fumaçaPombo-correioTelégrafo (século XIX) - Código MorseRedes TelefônicasRedes de Distribuição: TV, Rádio, TV a cabo
2
Redes são complexasMuitos componentes:
Camadas de Protocolos
pRoteadoresEnlaces de vários tiposAplicaçõesProtocolosHardware, softwareHardware, software
QUESTÃO:Há alguma esperança de organizar a arquitetura de uma rede?Ou pelo menos nossa discussão sobre redes?
Organização de uma viagem aérea
Uma série de passos
3
Camadas de Funcionalidade da companhia aérea
Camadas: cada camada implementa um serviço
Via suas próprias ações internasConfiando em serviços fornecidos pela camada inferior
Convivendo com sistemas complexosA estrutura explícita permite identificação, o
Por que as Camadas?
A estrutura explícita permite identificação, o relacionamento das partes de um sistema complexo
Um modelo de referência em camadas permite a discussão da arquitetura
Modularização facilita a manutenção, atualização do i t sistema
As mudanças na implementação de uma camada são transparentes para o resto do sistemaEx.: novas regras para embarque de passageiros não afetam os procedimentos de decolagem
4
Software de redesPor que projetar em camadas?
Para reduzir a complexidade do problema em Para reduzir a complexidade do problema em subproblemas menores
• Dividir para conquistar
Para permitir a substituição/evolução de tecnologias em um nível sem afetar os demaisPara permitir diferentes opções de configuração em a a pe t d e e tes opções de co gu ação ecada nível, de acordo com as necessidades da aplicação, custos, performance, fornecedores etc.
Software de redesArquitetura em camadas
Nível 4
Nível 3
Nível 2
Nível 4
Nível 3
Nível 2
Host A Host BProtocolo de nível 4
Protocolo de nível 3
Protocolo de nível 2
Interface 3/4
Interface 2/3Nível 2
Nível 1
Meio Físico
Nível 2
Nível 1Protocolo de nível 1Interface 1/2
5
O conceito de camadas
Software de redes
M
Protocolo de nível 4
Protocolo de nível 3
M
H3 H4 M1 M2H4H3
MH4
Meio Físico
Protocolo de nível 2H3 H4 M1H2 T2 H3 H4 M2H2 T2
6
Software de redes
M
Protocolo de nível 4
Protocolo de nível 3
M
H3 H4 M1 M2H4H3
MH4
Meio Físico
Protocolo de nível 2H3 H4 M1H2 T2 H3 H4 M2H2 T2
ArquiteturasArquiteturas de de RedesRedes de de ComputadoresComputadores
7
O modelo RM-OSI da ISO
Aplicação Aplicação APDUAplicação
Apresentação
Transporte
Sessão
Aplicação
Apresentação
Transporte
Sessão
Fronteira da sub-rede
APDU
PPDU
SPDU
TPDU
Rede
Física
Enlace
Rede
Física
Enlace
Rede
Física
Enlace
Rede
Física
Enlace
Host A Host BRoteadorRoteador
Pacote
Frame
Bit
Para reduzir a complexidade do projeto, redes de computadores são organizados em camadas
Arquiteturas de Redes de Computadores
computadores são organizados em camadas hierárquicas
Camada: programa ou processo, implementado por hardware ou software, que se comunica com o processo correspondente na outra máquina P t l j t d õ Protocolo: conjunto de regras e convenções que governam a conversação de processos de uma camadaInterface: limite entre as camadas adjacentesArquitetura da rede : conjunto de camadas, protocolos e interfaces
8
AplicaçãoTrata das características
O modelo RM-OSI da ISO
Transporte
Trata das característicasMecânicas, eletro/óptica, funcionais e de procedimentos para conexão física entre entidades da camada de enlace
Transmite uma sequência de bits
Apresentação
Sessão
Rede
Enlace
Não se preocupa com o significado das informações
Física
AplicaçãoTrata o fluxo de dados no enlace
O modelo RM-OSI da ISO
Transporte
Trata o fluxo de dados no enlace entre transmissor e receptor:
Marcação/detecção de frames no fluxo de bits da camada físicaControle de fluxoDetecção e correção de erros
Apresentação
Sessão
Rede
Enlace
ç çAcesso ao meio compartilhado
Não permite ligação entre redes distintas
Física
9
AplicaçãoControla as operações na sub-rede:
O modelo RM-OSI da ISO
Transporte
Controla as operações na sub rede:Roteamento: estático ou dinâmicoControle de congestionamentoInterconexão de redesInformações sobre a contabilidade do tráfego
Apresentação
Sessão
Rede
Enlace
t á egoTratar problemas de tráfego inter-redes
Não garante que o pacote chegue ao destino
Física
AplicaçãoDivide as mensagens em pacotes
O modelo RM-OSI da ISO
Transporte
Divide as mensagens em pacotesÉ a primeira camada fim-a-fimDeve garantir:
Comunicação fim-a-fim confiávelMultiplexação/splitting de conexões
Apresentação
Sessão
Rede
Enlace
Controle de fluxo fim-a-fim
Física
10
AplicaçãoPermite que aplicações em hosts
O modelo RM-OSI da ISO
Transporte
Permite que aplicações em hostsdiferentes partilhem uma sessãoProvê:
Sessões de trabalho (controle de diálogo)
Apresentação
Sessão
Rede
Enlace
Controle de tokenSincronizaçãoSessões de trabalho
Física
Aplicação Dar sintaxe e semântica aos dados
O modelo RM-OSI da ISO
Transporte
trocados entre os dois lados envolvidosRealiza transformações necessárias nos dados:
Tradução dos dados
Apresentação
Sessão
Rede
Enlace
Tradução dos dadosCompressão de textosCriptografiaConversão de padrõesFísica
11
Aplicação Provê serviços que suportam
O modelo RM-OSI da ISO
Transporte
ç q pdiretamente as aplicações do usuário, como:
Correio eletrônicoTransferência de arquivosAcesso a banco de dados
Apresentação
Sessão
Rede
Enlace
Independência do Sistema OperacionalNão define as aplicações em si!
Física
Dado
O modelo RM-OSI da ISO
Aplicação
Apresentação
Transporte
Sessão
Aplicação
Apresentação
Transporte
Sessão
Dado
DadoAH
DadoPH
DadoSH
DadoTH
Rede
Física
Enlace
Host A Host B
Rede
Física
Enlace
DadoNH
DadoDH
Bits
DT
12
aplicaçãotransporte
Cada camada:Distribuída
Divisão em camadas: comunicação lógica
predeenlacefísica
aplicaçãotransporte
redeenlace
redeenlacefísica
“Entidades” implementam as funções da camada em cada nó
física aplicaçãotransporte
redeenlacefísica
aplicaçãotransporte
redeenlacefísica
Entidades realizam ações, trocam mensagens entre pares
aplicaçãotransport
dadosEx.: transporteApanha dados da aplicação transporte
Divisão em camadas: comunicação lógica
transportredeenlacefísica
aplicaçãotransporte
redeenlace
redeenlacefísica
d d
aplicaçãoAcrescenta endereço, verificação de erros e outras informações para montar um “datagrama”E i d t
dados
transporte
ack
enlacefísica aplicação
transporteredeenlacefísica
aplicaçãotransport
redeenlacefísica
dadosEnvia datagrama ao parceiroEspera pelo reconhecimento do parceiro Analogia: correio
transporte
13
aplicaçãotransporte
rede
dados
Divisão em camadas: comunicação física
redeenlacefísica
aplicaçãotransporte
redeenlacefísica
li ã li ã
redeenlacefísica
dadosfaplicaçãotransporte
redeenlacefísica
aplicaçãotransporte
redeenlacefísica
Cada camada recebe dados de cimaAcrescenta um cabeçalho de informação para criar
Camadas de Protocolos e dados
ç ç puma nova unidade de dadosPassa a nova unidade de dados para a camada abaixo
l
fonte destinoM mensa emaplicação
transporteredeenlacefísica
aplicaçãotransporte
redeenlacefísica
MMMM
Ht
HtHnHtHnHl
MMMM
Ht
HtHnHtHnHl
mensagemsegmentodatagramaquadro
14
O modelo TCP/IP
Aplicação
Transporte
Inter-redes
Enlace-Física
Inter-rede
Enlace-Física
Inter-rede
Enlace-Física
Aplicação
Transporte
Inter-redes
Enlace-Física
Fronteira da sub-rede
Host A Host BRoteadorRoteador
O modelo TCP/IP
TELNET
TCP
IP
DNS
UDP
FTP SMTPAplicação
Transporte
Inter-redes
LAN 802 X.25 ATMFísica/Enlace
15
ArquiteturaArquitetura TCP/IPTCP/IP
É o modelo de referência usado pela ARPANET (sucessora de todas as WANs) e pela Internet.
O Modelo de Referência TCP/IP
(sucessora de todas as WANs) e pela Internet.ARPANET
Patrocinada pelo DoD (US Department of Defense)Conectava centenas de universidades e agências do governo através de linhas telefônicas alugadasRedes de satélite e de rádio dificuldade de conexão com protocolos existentes arquitetura de referência novaPrincipais objetivos do projeto: conectar múltiplas redes de forma eficiente e contínua (sem arestas)
16
Nome do modelo de referência TCP/IP tem origem nos 2 principais protocolos Primeiramente definido
O Modelo de Referência TCP / IP
nos 2 principais protocolos. Primeiramente definido por Cerf e Kahn em 1974Outros objetivos:
Confiabilidade em caso de perda de HW da subrede (preocupação do DoD em caso de guerra. Destino e
i d d i l origem devem poder se comunicar mesmo que alguns roteadores intermediários caiamArquitetura flexível para atender aplicações diversas. Exs: transferência de arquivos e transmissão de voz em tempo real
OSI TCP / IPAplicação Aplicação
O Modelo de Referência TCP / IP
Apresentação
Sessão
Transporte Transpote
}Ausentes
Redes
Enlace
Física
Inter-Rede (Internet)
Host/Rede (Interface de Rede)
Enlace-Física
17
Escolheu-se uma rede do tipo comutação de pacotes, baseada em uma camada inter-redes com
A Camada Inter-Rede (INTERNET)
pacotes, baseada em uma camada inter redes com serviços sem conexãoPermite aos hosts lançarem pacotes sobre a rede, sendo que cada um é transmitidoindependentemente para o destino (potencialmente
d dif t )numa rede diferente)Pacotes podem chegar numa ordem diferente dade envio. Camada superior ordena se necessário
Analogia com o correio comum. Caminho percorrido pelas cartas é transparente para o usuário
A Camada Inter-Rede (INTERNET)
pelas cartas é transparente para o usuárioCamada internet define formato oficial dos pacotes e o protocolo IP (Internet Protocol)Principal função é garantir a entrega no destino correto
RoteamentoÉ semelhante em funcionalidade à camada de Redes do modelo OSI.
18
Projetada para permitir que entidades cooperadorasna origem e destino “conversem” entre si como na
A Camada de Transporte
na origem e destino conversem entre si como nacamada de transporte do modelo OSI
Define 2 protocolos fim-a-fimTCPUDP
TCP (Transfer Control Protocol)Protocolo que implementa serviço com conexão
A Camada de Tansporte
confiável
O fluxo de bits, dividido em pacotes, é enviado pela camada internet, reagrupado e ordenado pelo processo TCP no destino
Transmissão de dados sem erros
Também realiza controle de fluxo
19
UDP (User Datagram Protocol)Oferece serviço sem conexão e não confiável para
A Camada de Tansporte
aplicações que não precisam do seqüenciamento e controle de fluxo do TCP e / ou providenciam isto por conta própria
Exs: serviços cliente – servidor do tipo pedido –resposta e transmissão de voz e vídeo (rapidez mais resposta e transmissão de voz e vídeo (rapidez mais importante que confiabilidade)
Não foi identificada a necessidade de camadas de sessão e de apresentação no modelo TCP / IP
A Camada de Aplicação
sessão e de apresentação no modelo TCP / IP. Experiência com modelo OSI mostrou que estascamadas são de pouca utilidade para a maioriadas aplicações
CContém protocolos de nível mais alto
20
Terminal virtual (TELNET: serviço que permite login remoto de usuário),
A Camada de Aplicação
)
Transferência de arquivos (FTP: fornece meio para a transferência de dados entre máquinas), e
Correio eletrônico (SMTP: Simple Mail Transfer Protocol) – inicialmente, mail era tratado como tipo de transferência de arquivos, depois ganhou tratamento especial.
DNS (Domain Name Service): mapeia nome dos hosts para endereços na rede.
A Camada de Aplicação
p ç
NNTP (Network News Transfer Protocol): transferência de artigos de notícias.
HTTP (Hypertext Transfer Protocol): protocolo usado para acessar páginas da WWW.
21
Modelo TCP / IP não especifica muito bem o queacontece abaixo da camada Inter-Rede
A Camada de Interface de Rede
acontece abaixo da camada Inter Rede
Host deve se conectar com rede usando algumprotocolo através do qual ele pode enviar pacotes IP
P t l ã d fi id i d h t h t d Protocolo não definido e varia de host para host e de rede para rede
Não é muito discutido na bibliografia
Modelos têm em comum:
Comparação entre Modelos de Referência OSI e TCP/IP
Modelo de camadas de protocolos conceitualmenteindependentes
Funcionalidade das camadas é semelhante. Exs• Camadas abaixo e até a de transporte fornecem um serviço de
transferência fim a fim, independente de rede, para processosde aplicações que desejam se comunicar.
• Camadas acima são usuárias, ligadas às aplicações, dos serviços de transporte.
22
Diferenças entre os modelos (não entre pilhas de protocolos):
Comparação entre Modelos de Referência OSI e TCP/IP
p )3 conceitos centrais bem diferenciados pelo OSI (uma de suas principais contribuições)
• SERVIÇOS: Cada camada fornece serviços para camada superior. Modelo especifica o que cada camada faz, não como o serviço é implementado ou acessado
• INTERFACES: Especifica como camada superior acessa serviço p p çda inferior. Especifica parâmetros usados e resultados que podem ser esperados. Não especifica como o serviço é implementado
• PROTOCOLOS: entre os pares é questão decidida pelo projetista e não especificada pelo modelo. Protocolos de uma camada podem ser alterados sem alterar as outras camadas
Idéias comuns a programação orientada a objetos:Objeto (camada) tem conjunto de métodos (operações)
Comparação entre Modelos de Referência OSI e TCP/IP
j ( ) j ( p ç )que processos externos à camada invocam.
As semânticas dos métodos definem o conjunto de serviços que o objeto oferece.
Os parâmetros e resultados formam a interface do objeto.
O código interno do objeto é seu protocolo e não é visível ou de interesse externamente ao objeto.
23
O modelo TCP / IP originalmente não distingüia entre os conceitos I, II e III. Tentaram fazer isto
Comparação entre Modelos de Referência OSI e TCP/IP
,posteriormente inspirados no OSI.
Ex: a camada inter-rede só fornece serviços ENVIE PACOTE IP e RECEBA PACOTE IP
P t l ã i b did OSI Protocolos são mais bem escondidos no OSI e podem ser alterados facilmente com mudança de tecnologia.
Este é o objetivo de uma arquitetura em camadas
Modelo de referência OSI projetado antes dos protocolos
Comparação entre Modelos de Referência OSI e TCP/IP
pModelo não é ajustado a conjunto de protocolos específicosModelo mais geral
Por outro lado, projetistas do OSI não tinham muita experiência de implementação, e portanto não tinham b idéi d d i f i lid d d boa idéia de como deveriam ser as funcionalidades de cada camada
Ex: originalmente, camada de enlace só tratava de redes ponto a ponto. Surgimento de redes broadcast nova subcamada anexada ao modelo
24
Projetistas de redes reais usando OSI e protocolos existentes descobriram que protocolos não
Comparação entre Modelos de Referência OSI e TCP/IP
q pcorrespondiam às especificações de serviços
Anexar subcamadas ao modelo.
Comitê imaginou que cada país teria sua própria rede gerenciada pelo governo e usando protocolos OSI.
Não tratou conexão inter-redes. Não corresponde ao que aconteceu na prática.
No modelo TCP / IP:
Comparação entre Modelos de Referência OSI e TCP/IP
1o protocolos: modelo foi ajustado para descrever protocolos existentes.
• Ajuste perfeito protocolo/modelo.
Problema: Modelo não descreve outras pilhas de Problema: Modelo não descreve outras pilhas de protocolos
• Não descreve bem redes não – TCP/IP.
25
Diferenças práticas: OSI tem 7 camadas e TCP / IP tem 4
Comparação entre Modelos de Referência OSI e TCP/IP
OSI fornece serviço com e sem conexão na camada de Rede e só serviço com conexão na camada de Transporte (camada visível à aplicação - usuário)
TCP / IP fornece só serviço sem conexão na camada de Rede e ambos (com e sem conexão) na camada de Transporte
Hoje parece que projetistas do OSI foram atropelados
Criticas ao Modelo OSI e seus protocolos
Quando protocolos do padrão OSI apareceram, o TCP/IP já era usado de forma generalizada nas universidades (na época um “mercado” importante)
OSI apareceu: empresas só desenvolveriam novo conjunto de protocolos se pressionadas
Uma esperava pela outraOSI não aconteceu
26
Tecnologia e Implementação RuimModelo e protocolos associados tinham defeitos
Criticas ao Modelo OSI e seus protocolos
pA escolha de 7 camadas foi mais política que técnicaCamadas de sessão e apresentação são praticamente vaziasAs camadas de enlace de dados e de redes estão tão cheias que foi necessário subdividí-las em subcamadas cheias que foi necessário subdividí las em subcamadas com funções diferenciadasModelo OSI com definições de serviços e protocolos muito complexo, difícil de implementar e ineficiente. Ex: Algumas funções como endereçamento, controle de fluxo e controle de erros, ocorrem em várias camadas
Decisão de colocar determinada função em camada específica nem sempre é óbvia.
Criticas ao Modelo OSI e seus protocolos
p pTerminal virtual originalmente estava na camada de apresentação. Foi para a camada de aplicação porque comitê teve dificuldade em determinar utilidade para camada de apresentação. Não houve acordo sobre as camadas onde segurança e criptografia e gerenciamento de redes deveriam estar ficaram fora do modelo.
27
Projetos de SW requerem diferenciação entre especificação e implementação. TCP/IP não faz isto
Crítica ao Modelo TCP/IP
Modelo não distingüe bem conceitos de serviço, Interface e ProtocoloTCP/IP não é boa orientação para projetar novas redes com novas tecnologias
Não é geral e não descreve bem outras pilhasg pCamada de Interface de Rede não é uma camada no sentido usual do termo
É interface (entre camadas de Rede e Enlace)Distinção interface X camada é crucial
Modelo TCP / IP não distingüe (nem menciona) camadas Física e de Enlace que são completamente
Crítica ao Modelo TCP/IP
diferentes. Bom modelo deve incluí-las como camadas separadas
Camada Física: características de transmissão de fios de cobre, fibras óticas e comunicação sem fios
Camada de Enlace: delimita início e fim de quadros e os envia com grau desejado de confiabilidade
28
Protocolos IP e TCP bem projetados e implementados, mas muitos dos outros foram
Crítica ao Modelo TCP/IP
desenvolvidos para fins muito específicos.Implementações destes protocolos distribuídas gratuitamente
Muito usados e difíceis de serem substituídosMuito usados e difíceis de serem substituídos