Redes de computadores são sistemas complexos Decomposição dos sistemas em elementos realizáveis Maioria das redes são organizadas como uma série de camadas Permite a divisão de um problema grande e complexo Cada camada implementa um serviço Protocolo Utiliza serviços da camada inferior Conjunto de regras e convenções necessárias à comunicação Arquitetura de rede Conjunto de camadas e protocolos
Implementação de redes Arquiteturas proprietárias diferentes máquinas sem comunicação Arquiteturas abertas ou normalizadas Ex.: OSI e TCP/IP
Analogia da organização de uma viagem aérea (fonte: Kurose)
Analogia da organização de uma viagem aérea: visão estruturada (fonte: Kurose)
Viagem aérea: serviços (fonte: Kurose) transporte de pessoas e bagagem de balcão a balcão entrega entre centros de despacho de bagagem transporte de pessoas entre portões de embarque encaminhamento do avião de aeroporto a aeroporto roteamento da aeronave da origem ao destino
Implementação distribuída (fonte: Kurose) aeroporto de partida passagem (compra) bagagem (verificação) portões (carga) decolagem navegação aérea passagem (reclamação) bagagem (receber) portões (descarga) aterissagem navegação aérea aeroporto de chegada sites de tráfego aéreo intermediários roteamento do avião roteamento do avião roteamento do avião
Analogia (fonte: Tanenbaum) Location A Location B 3 I like rabbits Message Philosopher J'aime bien les lapins 3 2 L: Dutch Ik vind konijnen leuk Information for the remote translator Translator L: Dutch Ik vind konijnen leuk 2 1 Fax #--- L: Dutch Ik vind konijnen leuk Information for the remote secretary Secretary Fax #--- L: Dutch Ik vind konijnen leuk 1
Quatro conceitos Entidade: elemento ativo em cada camada (ex.: processo ou placa de interface de rede) Serviço: indica o que a camada faz Interface: indica aos processos acima como acessar a camada Protocolo: regras e convenções usadas na conversação entre uma camada de uma máquina e a mesma camada de outra Dados não são passados diretamente de uma camada (N) para outra
Modelo de cinco camadas (fonte: Tanenbaum)
Transmissão de dados para o modelo de cinco camadas (fonte: Tanenbaum)
Funções Controle de erro Controle de fluxo Segmentação e remontagem Multiplexação Estabelecimento de conexão Uma única função pode estar em mais de uma camada
Serviço Conjunto de primitivas (operações) que uma camada provê à camada superior Tipos de primitivas de serviço Pedido (Request), Indicação (Indication), Resposta (Response), Confirmação (Confirm) Nome de uma primitiva: X-nome.tipo, X indica a camada Exemplo: T-Connect.Request Camada genérica (N) Oferece serviço (N) à camada (N+1) e usa o serviço (N-1)
Primitivas de serviço Camada (N + 1) Camada (N) Entidade (N + 1) Serviço (N) Entidade (N + 1) N Conn.Req N Conn.Conf N Conn.Ind N Conn.Resp
Cooperação entre entidades Camada (N+1) Entidades (N+1) Usuárias do Serviço (N) Camada (N) Entidade (N) Serviço (N) Protocolo (N) Entidade (N) Camada (N-1) Entidade (N-1) Serviço (N-1) Entidade (N-1)
Protocolo Conjunto de regras que governam o formato e o significado de quadros, pacotes ou mensagens trocadas entre entidades pares de uma camada Interação entre camadas PDU (Protocol Data Unit) Troca de informações entre entidades pares Contém informações de controle do protocolo e possivelmente dados do usuário SDU (Service Data Unit) Troca de informações entre duas entidades adjacentes PCI (Protocol Control Information) Bloco de informações de controle do protocolo de uma camada
Interação entre camadas Camada (N+1) (N+1) PDU Camada (N) (N) PCI (N) SDU (N) PDU
Funções de uma camada Multiplexação X Demultiplexação Conexões N Conexões N Conexão N-1 Conexão N-1 Espalhamento X Recombinação Conexão N Conexão N Conexões N-1 Conexões N-1
Funções de uma camada Concatenação X Separação (N) PDU (N) PDU (N) PDU (N) PDU (N-1) SDU (N-1) SDU Segmentação X Remontagem (N) SDU (N) SDU (N) PDU (N) PDU (N) PDU (N) PDU
Modelos de referência Modelo OSI Modelo TCP/IP Modelo híbrido
Modelo OSI Interconexão de sistemas heterogêneos modelo de referência para a interconexão de sistemas abertos da ISO (modelo OSI da ISO) Modelo em sete camadas Física, enlace, rede, transporte, sessão, apresentação e aplicação Conceitos centrais Serviço Interface Protocolo
Camadas do modelo OSI Física Provê serviços de transmissão e recepção de bits Define as interfaces elétricas e mecânicas, as características de sincronização e a especificação do meio de transmissão Enlace Controle de acesso a um meio compartilhado, montagem de dados em quadros, endereçamento e detecção de erros Provê serviços de comunicação de quadros com controle de fluxo e controle de erros
Camadas do modelo OSI Rede Encaminhamento Roteamento Controle de congestionamento Transporte Provê serviço fim-a-fim Entrega ordenada livre de erros Entrega sem garantia de ordenação
Camadas do modelo OSI Sessão Estabelecimento de sessões entre usuários de diferentes máquinas Delimitação e sincronização da troca de dados Esquemas de pontos de verificação e de recuperação Apresentação Lida com a sintaxe e a semântica das informações Aplicação Compressão e codificação dos dados Descrição dos dados Provê aplicações de rede
Modelo OSI (fonte: Tanenbaum)
Modelo OSI Transmissão de dados Usuário A Dados Usuário B Aplicação CA Dados Aplicação Apresentação CP Dados Apresentação Sessão CS Dados Sessão Transporte CT Dados Transporte Rede CN Dados Rede Enlace CDL Dados CDL Enlace Física Bits Física
Modelo TCP/IP Modelo em quatro (cinco) camadas Host/rede (física e acesso à rede), inter-redes, transporte e aplicação Camadas Host/rede (física e acesso à rede) Não é detalhada no modelo Inter-redes Protocolo IP Transporte Protocolos TCP e UDP Aplicação
Modelo TCP/IP Correspondência entre o OSI e o TCP/IP (fonte: Tanenbaum)
Modelo híbrido Modelo em cinco camadas Física, enlace, rede, transporte e aplicação Modelo híbrido (fonte: Tanenbaum)