comunicação de dados por fernando luís dotti fldotti@inf.pucrs.br

Post on 17-Apr-2015

109 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Comunicação de Dados

por

Fernando Luís Dottifldotti@inf.pucrs.br

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

top related