comunicação de dados por fernando luís dotti [email protected]
TRANSCRIPT
Sumário
Modelo de sistema de comunicação WANs, LANs Arquiteturas de Protocolos
* Fontes: Stalling, W. Data and Computer CommmunicationsTransparências Stallings e Ana Benso
* Fontes: Stalling, W. Data and Computer CommmunicationsTransparências Stallings e Ana Benso
Modelo de Comunicação Origem
– Gera dados a serem transmitidos Transmissor
– Converte os dados em sinais transmissíveis Sistema de Transmissão
– Transmite os sinais Receptor
– Converte os sinais recebidos em dados Destino
– Trata os dados recebidos
Modelo - Diagrama
Comunicação Utilização do sistema de transmissão Interfaceamento Geração de Sinais Sincronização Detecção e correção de erros Endereçamento e roteamento Formatação das mensagens Segurança Gerenciamento da rede
Modelo de Comunicação - Sinais
A Rede
Ligações ponto-a-ponto nem sempre são práticas– distância entre os dispositivos– grande número de dispositivos
interconectados Rede de comunicação
Modelo de Rede
Wide Area Networks - WANs
Grandes áreas geográficas Rede pública de comunicação Híbrida = redes públicas + redes privadas Tecnologias
– Redes de Comutação de Circuitos– Redes de Comutação de Pacotes– Frame relay– Asynchronous Transfer Mode (ATM)
Chaveamento de Circuito
Caminho de comunicação dedicado é estabelecido durante a conversação
e.g. rede de telefonia
Chaveamento de Pacote
Dados enviados em pequenos pacotes de dados
pacotes passados de nodo em nodo entre fonte e destino
usado para comunicação terminal-computador e computador-computador
Frame Relay
Chaveamento de pacote:– alto overhead para compensar erros
existentes no canal de transmissão Sistemas modernos são mais
confiáveis Erros tratados no sistema final e não
em nodos intermediários Maior parte do overhead é eliminado
Asynchronous Transfer Mode
ATM Evolução do frame relay Baixo overhead para controle de erros Pacotes de tamanho fixo - célula Desde alguns Mbps até Gbps Possível alocar canais de capacidade
garantida
Local Area Networks - LANs Distâncias pequenas
– soluções técnicas diferentes Usualmente privadas Alta taxa de transferência de dados Tecnologias
– Ethernet, Fast Ethernet, GigaEthernet– Token Ring– ATM
Arquitetura de Protocolos
Arquitetura de Protocolos controle de erros: canais mais confiáveis - retransmissão reseqüenciamento: reordenar mensagens fora de ordem controle de fluxo: evita “inundar” receptor mais lento controle de congestionamento: evita “inundar” rede mais lenta fragmentação: dividir mensagens em pedaços menores para
adaptar a camada de protocolo inferior multiplexação: combinar várias sessões de comunicação
em um “canal” compressão de dados translação de formatos entre fonte e destino resolução de endereços roteamento de pacotes ...
Arquitetura de Protocolos
Divisão da complexidade Tarefa de comunicação dividida em
módulos Módulos -> protocolos
Arquitetura de Protocolos
Exemplo: TCP/IP
Arquitetura de Protocolos TCP/IP Desenvolvido pela Agencia de Progetos Avançados
de Pesquisa (US Defense Advanced Research Project Agency -DARPA) para sua rede de pacotes (ARPANET)
Utilizado na internet Níveis principais
– aplicação– transporte fim a fim– internet– nível de acesso a rede– nível físico
Nível Físico
Interface entre dispositivo de transmissão (computador) e meio de transmissão ou rede
Características do meio de transmissão Níveis de sinais Taxas de transmissão etc.
Nível de acesso a rede (enlace)
Troca de dados entre sistemas adjacentes - i.e. compartilham mesma rede física
endereçamento controle de erros, fluxo
Nível Internet (IP)
Sistemas podem estar acoplados a diferentes redes físicas
Funções de roteamento entre redes físicas diferentes
Implementado em sistemas finais e roteadores
Nível de Transporte (TCP)
Entrega confiável dos dados– ordenação– entrega completa– eliminação de duplicatas
Nível de Aplicação
Suporte a aplicações do usuário– e.g. http – SMPT– ftp– telnet– etc.
Arquitetura de Protocolos TCP/IP
Protocol Data Units (PDU) Em cada nível, protocolos são utilizados para
comunicar Informação de controle é adicionada aos
dados do usuário em cada nível
Protocol Data Units (PDU)
PDU de Transporte– dados vindos da aplicação– nível de transporte pode fragmentar os dados– cada fragmento com um cabeçalho de controle,
adicionando:• endereço final• número de sequencia• código de detecção de erro
– Dados do usuário + controle = PDU de transporteUnidade de Dado do Protocolo de Transporte
Protocol Data Units (PDU)
PDU de Rede– dados vindos do nível de transporte– nível de rede adiciona endereços origem e destino– Dados do usuário (PDU de Transporte) + controle
= PDU de redeUnidade de Dado do Protocolo de Rede
Protocol Data Units (PDU)
PDUs noTCP/IP
Arquitetura de Protocolos
Elementos básicos– Sintaxe
• Formato dos dados e controle transmitidos
– Semântica• significado do controle transmitido
– Temporização• Diferenças de velocidade na rede• Validade das informações
Arquitetura de Protocolos Encapsulamento Segmentação e Blocagem Controle de Conexão Entrega ordenada Controle de Fluxo Controle de Erro Endereçamento Multiplexação Serviços de Transmissão
Arquitetura de Protocolos Encapsulamento Adição de informações de controle aos dados
– informações de endereçamento– informações para detecção de erro– informações de controle do protocolo
Arquitetura de Protocolos Segmentação Blocos de dados estão fora dos limites Mensagens do nível de aplicação são
grandes Pacotes de redes devem ser pequenos Divir um pacotes em vários é segmentação
(ou fragmentação no TCP/IP)– blocos ATM (células) tem 53 bytes– blocos Ethernet (frames) tem 1500 bytes
Arquitetura de Protocolos Por que Fragmentar? Vantagens
– controle de erro mais eficiente– igualdade no acesso aos recursos da rede– atraso menor– bufferes menores para envio/recepção
Desvantagens– Overhead– aumenta as interrupções no receptor– mais tempo de processamento
Arquitetura de Protocolos Controle de Conexão Estabelecimento da conexão Transferência de dados Encerramento da conexão Gerencimamento de resets ou perda da
conexão Números de seqüência usados para
– entrega ordenada– controle de fluxo– controle de erro
Arquitetura de Protocolos Serviço não Orientado a Conexão
Arquitetura de Protocolos Serviço Orientado a Conexão
Arquitetura de Protocolos Entrega Ordenada Pacotes passam por diferentes redes até
chegar ao destino Pacotes podem chegar fora de ordem Número sequecial permite a ordenação dos
pacotes
Arquitetura de Protocolos Controle de Fluxo Executado pela entidade receptora Limita a quantidade ou a taxa de
transferência dos dados Stop and wait Sistema de créditos
– Sliding window
Arquitetura de Protocolos Controle de Erros Controla perdas e erros de transmissão Detecção de erros
– A origem insere bits para detecção de erros– O receptor verifica a ocorrência de erros– Se está OK, aceita o pacote (acknowledge)– Se tem erros, descarta o pacote
Retransmissão– Se o reconhecimento não chegar a origem em
tempo, retransmite o pacote. Executado em vários níveis
Arquitetura de Protocolos Serviços não Confirmados
service.request
service.indication
Arquitetura de Protocolos Serviços Confirmados
service.request
service.indication
service.confirmservice.response
Arquitetura de Protocolos Endereçamento Nível do Endereçamento Escopo do Endereçamento Identificadores de Conexão Modo de Endereçamento
Arquitetura de Protocolos Nível do Endereçamento Nível na arquietura em uso na entidade Endereço único para cada sistema (hostsI) e
roteadores Endereço de nível de rede
– Endereço IP (TCP/IP)– NSAP - Network service access point (OSI)
Processos dentro do sistema– Número da porta (TCP/IP)– SAP - Service access point (OSI)
Arquitetura de Protocolos Conceitos de Endereço
Arquitetura de Protocolos Escopo do Endereçamento Endereço único
– Existe somente um sistema com endereço X Aplicabilidade global
– Em qualquer sistema é possível identificar qualquer outro sistema pelo seu endereço global
– O endereço X identifica um sistema vísivel de qualquer lugar da rede
Exemplo: Endereços MAC em redes IEEE 802
Arquitetura de Protocolos Identificadores de Conexão Transferência orientada a conexão Alocar identirficador durante transferência
– reduz overhead: identificadores menores que endereços globais;
– roteamento pode ser fixo, baseado nos identificadores
Arquitetura de Protocolos Modos de Endereçamento Usualmente um endereço refere-se a um
único sistema– Unicast
Pode endereçar todas as entidades dentro de um domínio– Broadcast
Pode endereçar um subconjunto de entidades dentro de um domínio– Multicast
Arquitetura de Protocolos Multiplexação Suporte a múltiplas conexões em uma
máquina Mapeamento de múltiplas conexões de
um nível e uma conexão de outro nível
Arquitetura de Protocolos Serviços de Transmissão Prioridade
– controle de mensanges Quality of service (QoS)
– throughput mínimo aceitável– retardo máximo aceitável
Segurança– restrições de acesso
Modelo de Referência OSI - Open Systems Interconnection
Princípios: nível tem funções bem definidas e
diferenciadas números de níveis suficientes para
conter as funções distintas sem sobrecaga ou redundância
arquitetura para interoperabilidade de sistemas heterôgeneos
OSI
Aplicação
Apresentação
Sessão
Transporte
Redes
Enlace
Físico
Transferência de Arquivos, E-mail, etc
Sixtaxe Abstrata, Sintaxe de Contexto
Estabelecimeto e Gerência da Conexão
Comunicação fim-a-fim
Roteamento, endereçamento,...
Funções entre máquinas adjacentes, acesso ao meio
Transmissão de sinais
OSI - Protocolo de Nível N
P. Sessão
Físico
Enlace
Rede
Transporte
Sessão
Apresentação
Aplicação
Físico
Enlace
Rede
Transporte
Sessão
Apresentação
AplicaçãoP. Aplicação
P. Apresentação
P. Transporte
P. Rede
P. Enlace
P. Físico
OSI
OSI - Framework
OSI - Framework ...
N + 1
N
N - 1
SAP
SAP
N + 1
N
N - 1
SAP
SAP
Protocolo N + 1
Protocolo N
Protocolo N - 1
OSI - Conceitos Especificação de protocolos
– operam entre o mesmo nível entre dois sistemas– pode envolver diferentes sistemas operacionais– precisa
• o formato das unidades de dados• a semântica de todos os campos
Definição de Serviço– descrição do que é provido
Endereçamento– referciando pelos SAPs (Service Access Points)
OSI - Níveis
Físico– dispositivos entre interfaces físicas
• mecânica• elétrica• funcional• procedural
Enlace– ativação, manutenção e desativação de um
enlace confiável– detecção e controle de erro
OSI - Níveis
Rede– roteamento– níveis superiores não necessitam conhecer a
tecnologia subjacente Transporte
– transporte de dados entre sistemas fim-a-fim– controle de erro– sequenciamento– controle de fluxo– QoS
OSI - Níveis
Sessão– Controle de diálogos entre aplicações– Sincronização– Recuperação de falhas
Apresentação– Codificação e formatação de dados– Compressão de dados– Criptografia
Aplicação– X.500, X.400, FTAM, CMISE (CMIP), ...
OSI - O Uso de Relay
Arquitetura TCP/IP
Arquitetura de protocolos comercialmente dominante
Especificada e extensivamente utilizada antes da OSI
Desenvolvida por pesquisadores do departamento de defesa
Usada na Internet
Arquitetura TCP/IP
Aplicação
Tranporte
Internetwork
Host to Network
FTP Telnet HTTP
TCP UDP
IP
Ethernet Ponto-a Fast E. Ponto
Aplicação
Apresentação
Sessão
Transporte
Rede
Enlace
Físico
OSI v TCP/IP
Arquitetura TCP/IP
Nível de Aplicação– Comunicação entre processos de aplicação
Nível de Transporte– Transmissão de dados fim-a-fim– Pode incluir mecanismos de confiabilidade (TCP)– Suprime detalhes dos níveis inferiores
Nível de Rede– Rotemamento de pacotes– Interface entre o sistema e a rede
Protocolos de Aplicação TCP/IP
Protocolos Internet
Protocolos Internet