Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
Slides/.DS_Store __MACOSX/Slides/._.DS_Store Slides/Arquivos Originais/01.1aula.pdf 1 1 PUC-Rio / DI TeleMídia Redes de Comunicação de Dados PUC -Rio Departamento de Informática Luiz Fernando Gomes Soares lfgs@inf.puc-rio.br A Evolução da Informática nas Empresas 2 2 Centro de Processamento de Dados Departamento Pessoal Departamento Financeiro Diretoria Sala de Reuniões Departamento Comercial Processamento Batch PUC-Rio / DI TeleMídia ENIAC -1946 (Universidade da Pensilvânia) 3 3 PUC-Rio / DI TeleMídia Centro de Processamento de Dados Departamento Pessoal Departamento Financeiro Diretoria Sala de Reuniões Departamento Comercial Processamento Batch 4 4 Centro de Processamento de Dados Departamento Pessoal Departamento Financeiro Diretoria Sala de Reuniões Departamento Comercial Processamento On-Line PUC-Rio / DI TeleMídia Surgem os Microcomputadores 5 5 Centro de Processamento de Dados Departamento Pessoal Departamento Financeiro Diretoria Sala de Reuniões Departamento Comercial Computadores Pessoais PUC-Rio / DI TeleMídia Surgem os Microcomputadores 6 6 PUC-Rio / DI TeleMídia Redes de Computadores Sistema de Comunicação Centro de Processamento de Dados Departamento Pessoal Departamento Financeiro Diretoria Sala de Reuniões Departamento Comercial Redes Locais de Computadores 7 7 Centro de Processamento de Dados Departamento Pessoal Departamento Financeiro Diretoria Departamento Comercial Sala de Distribuição Sala de Reuniões Integração Total 8 8 PUC-Rio / DI TeleMídia 9 9 � Tecnologia Digital – Multimídia • Processamnto integrado de áudio, vídeo, dados, etc. – Novas tecnologias de transmissão • fibra ótica • altas velocidades • digitalização das redes públicas • redes integradas PUC-Rio / DI TeleMídia Redes de Computadores Sistema de Comunicação 10 10 PUC-Rio / DI TeleMídia Aplicações Topologia Meios e Métodosde Transmissão Protocolos PUC-Rio / DI TeleMídia Bibliografia � Redes de Computadores Das MANs, LANs e WANs às redes ATM Soares, L.F.G; Souza, G.L.; Colcher, S. Editora Campus 1995 � Computer Networks Tanenbaum, A. Prentice Hall � Internetworking with TCP/IP, Vol 1 Comer, D.E. Prentice Hall � SLIDES: http://www2.telemidia.puc-rio.br/inf/labredes/ 11 11 PUC-Rio / DI TeleMídia � Provas P3 = 25/06 P4 = 02/07 Calendário __MACOSX/Slides/Arquivos Originais/._01.1aula.pdf Slides/Arquivos Originais/01.2aula.pdf 1 1 PUC-Rio / DI TeleMídia Redes de Comunicação de Dados PUC -Rio Departamento de Informática Luiz Fernando Gomes Soares lfgs@inf.puc-rio.br PUC-Rio / DI TeleMídia Redes de Computadores Sistema de Comunicação 2 2 PUC-Rio / DI TeleMídia Qual a melhor forma de interligar os computadores considerando que eles estão a dezenas de quilômetros uns dos outros? PUC-Rio / DI TeleMídia Totalmente Ligados 3 3 PUC-Rio / DI TeleMídia Tipos de Ligação ou Simplex Half-duplex Full-duplex PUC-Rio / DI TeleMídia Situação dos anos 1970 a meados dos anos 1990 4 4 PUC-Rio / DI TeleMídia Redes Geograficamente Distribuídas (Distâncias Maiores que Dezenas de Quilômetros) Custo de Comunicação Elevado Circuitos para satélites Enlaces de microondas Cabos de longa distância PUC-Rio / DI TeleMídia Redes Completamente Ligadas ¾ Numa rede com N estações, por exemplo, seriam necessárias N(N-1)/2 ligações ponto a ponto para que se pudesse conectar todos os pares de estações através de linhas dedicadas. ¾ Dessa forma, o custo do sistema cresce com o quadrado do número de estações, tornando tal topologia economicamente inviável para redes grandes e com estações dispersas. 5 5 PUC-Rio / DI TeleMídia Anel PUC-Rio / DI TeleMídia Redes Geograficamente Distribuídas (Distâncias Maiores que Dezenas de Quilômetros) Custo de Comunicação Elevado Circuitos para satélites Enlaces de microondas Cabos de longa distância Baixas Velocidades Altas Taxas de Erro 6 6 PUC-Rio / DI TeleMídia Parcialmente Ligados PUC-Rio / DI TeleMídia PBX Central PBX Rede Telefônica 7 7 PUC-Rio / DI TeleMídia PBX PBX Rede Telefônica Central PUC-Rio / DI TeleMídia Comutação de Circuitos I Estabelecimento da Conexão (Roteamento) I Transferência de Informação I Desconexão Fases Um caminho permanece dedicado entre origem e destino durante todo o tempo de conexão A B C D E 8 8 PUC-Rio / DI TeleMídia Comutação de Circuitos Mensagem T 1 2 3 4 Estabelecimento da Conexão Término da Conexão Tempo de Propagação Transmissão da Mensagem Tempo de Transmissão PUC-Rio / DI TeleMídia Comutação de Circuitos Características ¾ Necessidade de estabelecimento de conexão (roteamento no momento da conexão) ¾ Canal dedicado ¾ Endereçamento necessário apenas na conexão ¾ Retardo de transferência dos dados constante 9 9 PUC-Rio / DI TeleMídia Comutação de Mensagens I É necessário um cabeçalho em cada mensagem para identificação de endereço de origem e destino AC EB A B C D E PUC-Rio / DI TeleMídia I Roteamento I Armazenamento A B C D E AC EB Comutação de Mensagens 10 10 PUC-Rio / DI TeleMídia 1 2 3 4 T Mensagem Cabeçalho Mensagem Mensagem Comutação de Mensagens PUC-Rio / DI TeleMídia Comutação de Mensagens Características ¾ Não existe fase de estabelecimento de chamada nem de desconexão ¾ Store-and-Forward ¾ Cada mensagem possui cabeçalho com informações necessárias ao seu encaminhamento ¾ Pode introduzir grandes atrasos nas mensagens 11 11 PUC-Rio / DI TeleMídia A B C D E Comutação de Pacotes 2EB 1EB 1 AC2AC3AC I É necessário um cabeçalho em cada pacote para identificação de endereço de origem e destino PUC-Rio / DI TeleMídia A B C D E Comutação de Pacotes I Cada pacote pode ser roteado de forma independente 1 AC 3AC 1EB 2AC 2EB 12 12 PUC-Rio / DI TeleMídia A B C D E Comutação de Pacotes I Cada pacote pode ser roteado de forma independente 1 AC 3AC 2EB 2AC 1EB I É necessário armazenar temporariamente os pacotes em nós intermediários I Os pacotes podem chegar fora de sequência no destino PUC-Rio / DI TeleMídia Comutação de Pacotes Transmissão dos Pacotes 1 2 3 4 1 2 3 1 2 3 1 2 3 Cabeçalho Dados 13 13 PUC-Rio / DI TeleMídia Comutação de Pacotes Características ¾ Não há necessidade de estabelecimento de conexão ¾ Canal compartilhado ¾ Endereçamento necessário em todos os pacotes ¾ Retardo de transferência dos dados é uma variável aleatória PUC-Rio / DI TeleMídia Formato do Pacote InformaçãoOrigemDestino 14 14 PUC-Rio / DI TeleMídia Rede Geograficamente Distribuída PUC-Rio / DI TeleMídia Rede Geograficamente Distribuída 15 15 PUC-Rio / DI TeleMídia DCEs Fronteira da sub-rede de Comunicação DSEs Rede Geograficamente Distribuída PUC-Rio / DI TeleMídia Redes Geograficamente Distribuídas ¾ De 1950 a 1970 vários estudos foram conduzidos sobre redes geograficamente distribuídas de computadores. ¾ O mais significativo em termos de impacto foi, provavelmente, a ARPANET, colocada em funcionamento em setembro de 1969. ¾ Inicialmente, a ARPANET se utilizava de linhas diretas, ponto a ponto, convencionais entre equipamentos internos da rede (chamados roteadores). 16 16 PUC-Rio / DI TeleMídia Rede Geograficamente Distribuída Host Roteador PUC-Rio / DI TeleMídia Rede Geograficamente Distribuída Inter-rede Host Roteador Rede 17 17 PUC-Rio / DI TeleMídia Redes Geograficamente Distribuídas (Distâncias Maiores que Dezenas de Quilômetros) Custo de Comunicação Elevado Circuitos para satélites Enlaces de microondas Cabos de longa distância Baixas Velocidades Altas Taxas de Erro REDES PÚBLICAS PUC-Rio / DI TeleMídia Redes Localmente Distribuídas (Distâncias Menores que Dezenas de Quilômetros) Custo de Comunicação Baixo Altas Velocidades Baixas Taxas de Erro 18 18 PUC-Rio / DI TeleMídia Rede Local (Distâncias Menores que Dezenas de Quilômetros) PUC-Rio / DI TeleMídia Rede Local (Distâncias Menores que Dezenas de Quilômetros) 19 19 PUC-Rio / DI TeleMídia Rede Local (Distâncias Menores que Dezenas de Quilômetros) PUC-Rio / DI TeleMídia Sistema de Comunicação ¾ Redes Geograficamente Distribuídas (WANs - Wide Area Networks) ¾ Redes Locais (LANs - Local Area Networks) ¾ Redes Metropolitanas (MANs - Metropolitan Area Networks) 20 20 PUC-Rio / DI TeleMídia Perguntas ¾ Qual a diferença de objetivos na construção de uma máquina de arquitetura distribuída e de uma rede de computadores? ¾ Por que a topologia parcialmente ligada é a única viável em redes com meios de transmissão caros, de baixa velocidade e alta taxa de erro? ¾ Por que a comutação de circuitos é ineficiente na transmissão de dados textuais? Como a comutação de pacotes resolve o problema? ¾ Por que em uma rede comutada por pacotes, pacotes podem chegar fora de ordem? ¾ Dê as características das redes comutadas por circuito, comutadas por mensagem e comutadas por pacotes. ¾ Por que e quando é necessário o endereçamento em redes comutadas por circuito, comutadas por mensagem e comutadas por pacotes? ¾ Por que as redes foram construídas com dois tipos distintos de nós, no jargão Internet hosts (hospedeiros) e routers (roteadores)? ¾ Como surgiu o conceito de inter redes, e com ele a rede Internet? ¾ O que viabilizou as topologias utilizadas em redes locais? Por que essas redes foram chamadas de locais? __MACOSX/Slides/Arquivos Originais/._01.2aula.pdf Slides/Arquivos Originais/01.grupo.pdf 1 1 PUC-Rio / DI TeleMídia Redes de Computadores PUC -Rio Departamento de Informática Luiz Fernando Gomes Soares lfgs@inf.puc-rio.br PUC-Rio / DI TeleMídia Topologias 2 2 PUC-Rio / DI TeleMídia Parâmetros de Comparação � Confiabilidade � Desempenho � Custo � Possibilidade de Expansão PUC-Rio / DI TeleMídia Topologias �Estrela �Anel �Barra �Grafo 3 3 PUC-Rio / DI TeleMídia Grafo PUC-Rio / DI TeleMídia Totalmente Ligados 4 4 PUC-Rio / DI TeleMídia Parcialmente Ligados PUC-Rio / DI TeleMídia Estrela 5 5 PUC-Rio / DI TeleMídia Estrela A F B C DE PUC-Rio / DI TeleMídia Estrela A F B C DE 6 6 PUC-Rio / DI TeleMídia Comutadores � Os comutadores podem realizar comutação de circuito, pacote ou comutação rápida de pacote. � Os comutadores que realizam a comutação de pacotes (rápida ou não), são classificados em: • store-and forward switch (buffered switch) – Detecção de erro é realizada antes da transmissão na porta de saída • cut-through switch: – Mensagem passada da porta de entrada à porta de saída logo que esta possa ser determinada, mesmo antes da chegada do pacote inteiro pela porta de entrada. PUC-Rio / DI TeleMídia Estrela A F B C DE � Confiabilidade � Desempenho � Custo � Possibilidade de Expansão 7 7 PUC-Rio / DI TeleMídia Anel PUC-Rio / DI TeleMídia Anel 8 8 PUC-Rio / DI TeleMídia Anel Interface do Anel PUC-Rio / DI TeleMídia Anel com Repetidor Interno 9 9 PUC-Rio / DI TeleMídia Interface do Anel Anel com Repetidor Externo PUC-Rio / DI TeleMídia Estação em Falha Estação Ativa Relés de Bypass 10 10 PUC-Rio / DI TeleMídia Anel Primário Anel de Concentradores C Ls ≤ PUC-Rio / DI TeleMídia Concentrador Passivo 11 11 PUC-Rio / DI TeleMídia Concentrador Ativo PUC-Rio / DI TeleMídia Duplo Anel 12 12 PUC-Rio / DI TeleMídia Duplo Anel Com Concentradores Ativos Anel Primário Anel Secundário Repetidor PUC-Rio / DI TeleMídia Anel Primário Anel Secundário Falha Duplo Anel Com Concentradores Ativos 13 13 PUC-Rio / DI TeleMídia Anel Primário Anel Secundário Duplo Anel Com Concentradores Ativos PUC-Rio / DI TeleMídia Múltiplos Anéis B B 14 14 PUC-Rio / DI TeleMídia Anel � Confiabilidade � Desempenho � Custo � Possibilidade de Expansão PUC-Rio / DI TeleMídia Barra 15 15 PUC-Rio / DI TeleMídia Barra PUC-Rio / DI TeleMídia Barra Dupla 16 16 PUC-Rio / DI TeleMídia Rede em Barra � Ao contrário da topologia em anel, as topologias em barra podem empregar interfaces passivas, nas quais as falhas não causam a parada total do sistema. � A ligação ao meio de transmissão é um ponto crítico no projeto de uma rede local em barra comum. A ligação deve ser feita de forma a alterar o mínimo possível as características elétricas do meio. � A ligação das estações ao meio de comunicação é realizada através de um transceptor (transmissor/receptor), que tem como funções básicas transmitir e receber sinais, bem como reconhecer a presença destes sinais no meio. ZZ 00 ZZ 00 Transceptor T erminador Terminador PUC-Rio / DI TeleMídia Expansão da Barra 17 17 PUC-Rio / DI TeleMídia Barra-Estrela: HUBS PUC-Rio / DI TeleMídia Múltiplos Concentradores 18 18 PUC-Rio / DI TeleMídia Barra � Confiabilidade � Desempenho � Custo � Possibilidade de Expansão PUC-Rio / DI TeleMídia Hubs e Switches Hub ou Switch 19 19 PUC-Rio / DI TeleMídia Múltiplos Comutadores PUC-Rio / DI TeleMídia Rede em Grafo 20 20 PUC-Rio / DI TeleMídia Inter-rede estações comutado res gateways PUC-Rio / DI TeleMídia Inter-rede � Muitas vezes é conveniente dividir esse grafo em vários sub-grafos, cada um formando uma rede: • Regras (protocolos) de comunicação diferentes para sub-grafos diferentes. – Necessidade de Gateways. • Divisão em diferentes domínios administrativos gerenciados por empresas diferentes. • Facilitar a aplicação de algoritmos em u m grafo com um grande número de nós. – O roteamento é umdesses algoritmos. A divisão emdomínios permite um roteamento hierárquico mais eficiente . • Requisitos de comunicação do interior do grafo são diferentes do da borda. – Redes de Acesso – Redes backbone 21 21 PUC-Rio / DI TeleMídia Arquiteturas e Protocolos PUC-Rio / DI TeleMídia Arquitetura de Rede � Os grandes fabricantes desenvolveram soluções proprietárias para a interconexão de seus equipamentos – IBM - System Network Architecture (SNA) – DEC - Digital Network Architecture (DNA) � Arquitetura de Rede • conjunto de convenções para interconexão de equipamentos 22 22 PUC-Rio / DI TeleMídia Organização Hierárquica � Da experiência obtida no projeto de redes, vários princípios surgiram, dentre eles se destaca a idéia de estruturar a rede como um conjunto de camadas hierárquicas, cada uma sendo construída utilizando as funções e serviços oferecidos pelas camadas inferiores. PUC-Rio / DI TeleMídia Arquitetura em Camadas � Princípio do “Dividir para Conquistar” � Facilidade de Modificação � Validação 23 23 PUC-Rio / DI TeleMídia Arquitetura de Redes � A arquitetura da rede é formada por níveis (ou camadas), interfaces e protocolos. Cada nível oferece um conjunto de serviços ao nível superior, usando funções realizadas no próprio nível e serviços disponíveis nos níveis inferiores. PUC-Rio / DI TeleMídia Arquitetura de Redes � O número de camadas, o nome, o conjunto de funções e serviços, e o protocolo de cada camada varia de uma arquitetura de rede para outra. � Inicialmente, cada vendedor desenvolveu sua própria arquitetura de modo que seus computadores pudessem trocar informações entre si. Essas arquiteturas são denominadas proprietárias porque são controladas por uma única entidade: o vendedor. 24 24 PUC-Rio / DI TeleMídia Interoperabilidade � Para permitir o intercâmbio de informações entre computadores de fabricantes distintos tornou-se necessário definir uma arquitetura única, e para garantir que nenhum fabricante levasse vantagem em relação aos outros a arquitetura teria que ser aberta e pública. � Foi com esse objetivo que a International Organization for Standardization (ISO) definiu o modelo denominado Reference Model for Open Systems Interconnection (RM-OSI). PUC-Rio / DI TeleMídia Arquitetura OSI 25 25 PUC-Rio / DI TeleMídia Arquitetura OSI � Open System Interconection � ISO � Sete camadas funcionais PUC-Rio / DI TeleMídia (N)-service entity (N)-service entity (N-1)-service provider (N)-service protocol specification (N-1)-service access point Fornecedores e Usuários de Serviço 26 26 PUC-Rio / DI TeleMídia (N)-service user (N-1)-service entity (N-1)-service entity (N-2)-service provider (N)-service user (N-1)-service provider (N-1)-service protocol specification (N-1)-service access point (N-2)-service access point Fornecedores e Usuários de Serviço PUC-Rio / DI TeleMídia Terminologia RM-OSI � Um serviço representa um conjunto de funções oferecidas a um usuário por um provedor (fornecedor). O serviço oferecido por um provedor é acessado por um usuário através de um ponto de acesso ao serviço (Service Access Point SAP). Usuário do serviço (N) Usuário do serv iço (N) pontos de acesso ao serv iço (N) pontos de acesso ao serviço (N-1) Fornecedor do serv iço (N) p rotocolo d o serviço (N) Entidade do serviço (N) E nt idade do serv iço (N) Fornecedor do serv iço (N-1) pr otocolo do serviço (N-1 ) Enti dade do serviço (N-1) Ent idade do serv iço (N-1) Camada (N) Camada (N-1) 27 27 PUC-Rio / DI TeleMídia Tipos de Serviço � Um protocolo pode oferecer serviços de dois tipos: • Serviços orientados a conexão • Serviços sem conexão � Como visto anteriormente, na comutação de pacotes o estabelecimento de conexão antes da troca de dados não é obrigatória e sim opcional. PUC-Rio / DI TeleMídia Serviços Orientados a Conexão O serviço é dividido em três fases de operação: � Estabelecimento da conexão: nessa fase, os usuários e o fornecedor do serviço negociam parâmetros e opções que irão determinar o modo como o serviço será utilizado. � Transferência de dados: nessa fase, os usuários do serviço trocam dados. � Liberação da conexão: nessa fase, a ligação entre os usuários é desfeita. 28 28 PUC-Rio / DI TeleMídia Serviços Não Orientados a Conexão � Unidade de dados são transmitidas do SAP de origem para um ou mais SAPs de destino, sem que para isso seja estabelecida uma conexão entre eles. � Toda a informação necessária para transmitir a unidade de dados (endereço, parâmetros de qualidade do serviço etc.) é passada para a camada que vai fornecer o serviço, junto com os dados a serem transmitidos. PUC-Rio / DI TeleMídia Perfis Funcionais � Deve ser ressaltado que o RM-OSI, por si só, não define a arquitetura de uma rede. Isso acontece porque ele não especi fica com exatidão os serviços e protocolos de cada camada. Ele simplesmente “ diz o que cada camada deve fazer”. � O fato de dois sistemas distintos seguirem o RM-OSI não garante que eles possam trocar informações entre si, pois o modelo permite que sejam usadas diferentes opções de serviços/protocolos para as várias camadas. � Para que dois sistemas quaisquer possam trocar informações é necessário que escolham opções compatíveis de serviço/protocolo para todas as camadas do modelo. � Com o objetivo de definir grupos de opções de serviços/protocolos padronizados, a ISO elaborou o conceito de perfis funcionais. Se dois sistemas seguirem o mesmo perfil funcional eles garantidamente irão comunicar-se, pois nesse caso as opções de serviço/protocolo adotadas serão compatíveis. 29 29 PUC-Rio / DI TeleMídia RM-OSI � O RM-OSI propõe uma estrutura com sete níveis como referência para a arquitetura dos protocolos de redes de computadores. Nível 7 Nível 6 Nível 5 Nível 4 Nível 3 Nível 2 Nível 1 Nível 7 Nível 6 Nível 5 Nível 4 Nível 3 Nível 2 Nível 1 Sistema Aberto A Protocolo do Nível 7 Protocolo do Nível 6 Protocolo do Nível 5 Protocolo do Nível 4 Protocolo do Nível 3 Protocolo do Nível 2 Protocolo do Nível 1 Interface 1/2 Interface 2/3 Interface 3/4 Interface 4/5 Interface 5/6 Interface 6/7 Interface 1/2 Interface 2/3 Interface 3/4 Interface 4/5 Interface 5/6 Interface 6/7 Sistema Aberto B PUC-Rio / DI TeleMídia Modelo OSI Aplicação Transporte Rede Enlace Físico Sessão Apresentação Usuário 30 30 PUC-Rio / DI TeleMídia E R E R R ER E R ERRE R E R ERRE R Rede Enlace Rede Enlace ER E R R E R F F F F FF F FF Físico Físico F F F IS3 IS1 IS2 IS41 AB 2 AB3 AB OSI ES ES A B PUC-Rio / DI TeleMídia E R E R R ER E R ERRE R E R ERRE RTransporte Rede Enlace Transporte Rede Enlace ER E R R E R F F F F FF F FF Físico Físico F F F IS3 IS1 IS2 IS4 1 AB 2 AB 3 AB OSI ES A ES B 31 31 PUC-Rio / DI TeleMídia Nível de Transporte � O nível de rede não garante necessariamente que um pacote chegue a seu destino, e pacotes podem ser perdidos ou mesmo chegar fora da seqüência original de transmissão. Para fornecer uma comunicação fim a fim verdadeiramente confiável é necessário um outro nível de protocolo, que é justamente o nível de transporte. Esse nível vai isolar dos níveis superiores a parte de transmissão da rede. � O objetivo principal da camada de transporte é, então, tornar transparentes para seus usuários possíveis variações da confiabilidade do serviço fornecido pela camada de rede. PUC-Rio / DI TeleMídia Nível de Transporte � Na camada de transporte a comunicação é verdadeiramente fim a fim, isto é, a entidade da camada de transporte da máquina de origem se comunica apenas com a entidade de transporte da máquina de destino. Isto pode não acontecer nos níveis físico, de enlace e de rede onde a comunicação também se dá entre máquinas adjacentes (intermediários na comunicação) na rede. 32 32 PUC-Rio / DI TeleMídia Níveis 1 a 4 em uma Rede em Grafo RedeRede EnlaceEnlace FísicoFísico RedeRede EnlaceEnlace FísicoFísico Transporte Rede Enlace Físico Transporte Rede Enlace Físico Protocolo de Aplicação Protocolo de Transporte Protocolo de Rede Protocolo de Enlace Protocolo de Nível Físico Sistemas Retransmissores Sistema Aberto A Sistema Aberto B PUC-Rio / DI TeleMídia�Circuito Virtual E R E R R ER E R ERRE R E R ERRE RTransporte Rede Enlace Transporte Rede Enlace ER E R R E R F F F F FF F FF Físico Físico F F F IS3 IS1 IS2 IS4 OSI ES A ES B 33 33 PUC-Rio / DI TeleMídia E R E R R ER E R ERRE R E R ERRE R Aplicação Transporte Rede Enlace Aplicação Transporte Rede Enlace ER E R R E R F F F F FF F FF Físico Físico F F F IS3 IS1 IS2 IS4 Sessão Sessão Apresentação Apresentação OSI ES A ES B PUC-Rio / DI TeleMídia Perguntas � Qual a diferença entre um hub e um switch? � Dê duas formas de implementação de um switch, diga suas vantagens e desvantagens, salientando em que condições são mais favoráveis seus usos. � Faça uma análise da topologia em estrela com relação ao custo, confiabilidade, desempenho e escalabilidade. � Por que uma anel tende logicamente a uma barra? � Por que um concentrador único de uma rede em anel funciona como um hub? � Faça uma análise da topologia em anel com relação ao custo, confiabilidade, desempenho e escalabilidade. � O que é um hub em uma topologia em barra? � Faça uma análise da topologia em barra com rela ção ao custo, confiabilidade, desempenho e escalabilidade. � Qual a diferença entre uma topologia física e uma lógica? Dê exemplos. � Por que a A instalação física das redes tem sofrido uma forte tendência na direção da utilização de hubs? � Podemos dizer que a extensão de uma rede em estrela é uma rede em grafo? Como isto se dá? � Por que é conveniente a divisão de uma grande rede em vária redes menores interligadas? Qual o nome que se dá às estações responsáveis pela interligação dessas redes? 34 34 PUC-Rio / DI TeleMídia Perguntas � O que são serviços orientados a conexão e serviços sem conexão? � Faz sentido um serviço orientado a conexão em uma rede comutada por pacotes? � Como pode haver uma serviço orientado a conexão em uma rede onde os pacotes podem seguir caminhos diferentes na rede? � Quais os serviços obrigatórios de cada camada do modelo ISO- OSI? � Se duas redes seguem o modelo OSI elas obrigatoriamente são interoperáveis? Por que? O que são perfis funcionais? PUC-Rio / DI TeleMídia Transmissão de Dados no Modelo OSI Aplicação Apresentação Sessão Transporte Rede Enlace Físico Aplicação Apresentação Sessão Transporte Rede Enlace Físico DadosDados A Dados DadosAA DadosAAS DadosAAST DadosAASTR EDadosAASTRE EDadosAASTREF F ADados DadosAA DadosAAS DadosAAST DadosAASTR EDadosAASTRE EDadosAASTREF F Usuário Transmissor Usuário Receptor 35 35 PUC-Rio / DI TeleMídia RS-232C RS-488 HDLC SDLC TCP LU 6.2 ISO Session 8327 X-400 X-25 Nível 3 LAP B X-21 V-28 X-25 Aplicação Transporte Rede Enlace Físico Sessão Apresentação Usuário IP ISO 8473 ISO Presentation 8823 { ISO8073-TP4 ISO 8571 - FTAM Implementações das Camadas OSI PUC-Rio / DI TeleMídia Arquitetura Internet Aplicação T ransporte Inte r-rede Inte rface de Rede Host A Host B Aplicação Transporte Inter-rede Interface de Rede Inter-rede mensagem idêntica pacote idêntico Gateway datagrama idêntico quadro idêntico quadro idêntico datagrama idêntico In terfac e de Re de Interface de R ede Rede Física 1 Intra-rede Intra-rede Rede Física 2 36 36 PUC-Rio / DI TeleMídia Arquitetura OSI e Internet Arquitetura Internet Aplicação Transporte Inter-rede Interface de Rede Intra-rede Aplicação Apresentação Sessão Transporte Rede Enlace Físico Arquitetura OSI PUC-Rio / DI TeleMídia Arquiteturas e Protocolos 37 37 PUC-Rio / DI TeleMídia Nível Físico PUC-Rio / DI TeleMídia Nível Físico � O nível físico fornece as caract erísticas mecânicas, elétricas, funcionais e de procedimento para ativar, manter e desativar conexões físicas para a transmissão de bits entre entidades de nível de enlace (ou ligação), possivelmente através de sistemas intermediários. � O protocolo de nível físico dedica-se à transmissão de uma cadeia de bits. Ao projetista desse protocolo cabe decidir como representar 0's e 1's, quantos microssegundos durará um bit (intervalo de sinalização), se a transmissão será hal f-duplex ou full-duplex, como a conexão será estabelecida e desfeita, quantos pinos terá o conector da rede e quais seus significados, bem como outros detalhes elétricos e mecânicos. � A função do nível físico é permitir o envio de uma cadeia de bits pela rede sem se preocupar com o seu significado ou com a forma como esses bits são agrupados. Não é função desse nível tratar de problemas tais como erros de transmissão. 38 38 PUC-Rio / DI TeleMídia Banda Passante � Ainda no século XIX, um famoso matemático francês chamado Jean Fourier provou que qualquer sinal periódico, expresso como uma função do tempo g(t), com período T0, pode ser considerado como uma soma (possivelmente infinita) de senos e cossenos de diversas freqüências. PUC-Rio / DI TeleMídia ou ∑ ∞ = ++= 1 0 )2cos( 2 )( n nn nftcctg θpi ( ) ( )∑∑ ∞ = ∞ = ++= 11 0 2cos22 1)( n n n n nftbnftsenaatg pipi 39 39 PUC-Rio / DI TeleMídia RESUMINDO � Todo e qualquer sinal pode ser decomposto através de uma soma (finita ou infinita) de ondas cossenoidais. � Representar um sinal no domínio do tempo é representar o valor da amplitude do sinal para cada instante do tempo � Representar um sinal no domínio da frequência é representar a amplitude de cada onda cossenoidal que compõe o sinal, ou seja, representar o seu espectro de frequência. PUC-Rio / DI TeleMídia Banda Passante � Denomina-se banda passante de um sinal o intervalo de freqüências que compõem este sinal. � A largura de banda desse sinal é o tamanho de sua banda passante (ou seja, a diferença entre a maior e a menor freqüência que compõem o sinal). 40 40 PUC-Rio / DI TeleMídia � Banda de Frequências (Banda Passante) • Intervalo de frequências que compõe o sinal – Ex.: um sinal digital temuma banda de frequências � Largura de Banda • Diferença da maior para a menor frequência da banda do sinal – Ex.: um sinal digital temlargura de banda infinita. Banda Passante e Largura de Banda de um Sinal 0 , +∞ PUC-Rio / DI TeleMídia Distorção de Frequência � Nenhum meio de transmissão é capaz de transmitir sinais sem que hajam perdas de energia durante o processo. � Perdas de energia signifi cam reduções na amplitude de sinais componentes. � Se todos os sinais componentes fossem igualmente reduzidos em amplitude, o sinal resultante seria todo reduzido em amplitude, mas não distorcido. � Infelizmente, a característica dos meios de transmissão é a de provocar perdas nos diversos sinais componentes em diferentes proporções, provocando a distorção do sinal resultante transmitido. 41 41 PUC-Rio / DI TeleMídia Banda Passante TransmissorTransmissor ReceptorReceptor Banda Passante do Receptor Banda Passante do Transmissor Banda Passante do Meio PUC-Rio / DI TeleMídia Banda Passante do Meio Físico � Chamaremos banda passante do meio físico àquela faixa de freqüências que permanece praticamente preservada pelo meio. 42 42 PUC-Rio / DI TeleMídia Banda Passante Necessária � No caso de transmissão de sinais digitais, torna-se interessante definir a banda passante necessária como a largura de banda mínima capaz de garantir que o receptor ainda recupere a informação digital originalmente transmitida. PUC-Rio / DI TeleMídia 0 2 4 6 8 10 12 14 16 18 20 0 0. 3 0. 6 0 2 4 6 8 10 12 14 16 18 200 0. 3 0. 6 0 2 4 6 8 10 12 14 16 18 20 0 0. 3 0. 6 0 2 4 6 8 10 12 14 16 18 200 0. 3 0. 6 0 2 4 6 8 10 12 14 16 18 20 0 0. 3 0. 6 H a r m ô n i c o s 43 43 PUC-Rio / DI TeleMídia Recuperação do Sinal Digital Transmissão T Intervalos de sinalização T Instantes de amostragem ReceptorReceptorTransmissorTransmissor T Sinal recuperado PUC-Rio / DI TeleMídia Relação entre Banda Passante e Taxa de Transmissão 0 1 0 0 400 10 - MHz Mbps⇔ X 010 X X 0 400 100 - MHz Mbps⇔ X X X 0 44 44 PUC-Rio / DI TeleMídia Modulação PUC-Rio / DI TeleMídia Utilização da Banda Passante Meio de Transmissão 0 40 400 “Desperdício” Como melhorar a utilização do meio de transmissão ? 45 45 PUC-Rio / DI TeleMídia Utilização da Banda Passante do Meio de Transmissão C0 0 40 400 C1 C2 80 160 PUC-Rio / DI TeleMídia Multiplexação na Frequência 46 46 PUC-Rio / DI TeleMídia Multiplexação por Divisão da Frequência F1 F2 F3 F4 PUC-Rio / DI TeleMídia MODEM Filtro Demodulador R1R1 f 1 Filtro Demodulador R2R2 Filtro Modulador T2T2 f2 Filtro Modulador T1T1 MODEM 47 47 PUC-Rio / DI TeleMídia Comutação na Frequência PUC-Rio / DI TeleMídia Comutação na Frequência Comutador Canal 3 Canal 12 48 48 PUC-Rio / DI TeleMídia Multiplexação no Tempo PUC-Rio / DI TeleMídia Multiplexação no Tempo T A1 Banda DesperdiçadaDados B1 C1 D1 A2 B2 C2 D2 Primeiro Ciclo Segundo Ciclo Para computador remoto A B C D � Multiplexação Síncrona (TDM) (synchronous Time Division Multiplexing) B1: Canal Chav eado Ponto-a-Ponto A1: Canal Dedicado Ponto-a-Ponto 49 49 PUC-Rio / DI TeleMídia Mutiplexação � No tempo (TDM): • Síncrona (STDM): – O tempo é dividido em ciclos de tamanho (bits) fixo, que se repetemao longo do tempo. – O ciclo é dividido em segmentos de tamanho fixo, de acordo com sua posição – O canal é formado por uma seqüência de segmentos: – A alocação do canal pode ser estática ou dinâmica PUC-Rio / DI TeleMídia Comutação Síncrona no Tempo 50 50 PUC-Rio / DI TeleMídia Comutação no STM Quadro 125 µµµµ s Quadro 125 µµµµ s Comutador STM Canal 3 Canal 12 PUC-Rio / DI TeleMídia Comutação de Circuitos � Chaveamento por Divisão Espacial • (Space Division Switching - SDS) – Cada nó fecha um circuito físico entre entrada e saída � Chaveamento por Divisão da Frequência • (Frequency Division Switching - FDS) – Cada nó chaveia de um canal de uma linha de entrada para um canal de uma linha de saída – O circuito formado pelos nós é uma sequência de canais de frequência � Chaveamento por Divisão do Tempo • (Time Division Switching - TDS) – Cada nó chaveia de um canal de uma linha de entrada para um canal de uma linha de saída – O circuito formado pelos nós é uma sequencia de canais em linhas TDM síncronas 51 51 PUC-Rio / DI TeleMídia Multiplexação Assíncrona PUC-Rio / DI TeleMídia TDM Assíncrono Para o Meio Físico A B C D A1 B1 B2 C2 Capacidade Extra DisponívelCabeçalho T t1 t2 52 52 PUC-Rio / DI TeleMídia Comutação de Pacotes PUC-Rio / DI TeleMídia Comutação de Pacotes Comutador STM 53 53 PUC-Rio / DI TeleMídia Meios de Transmissão PUC-Rio / DI TeleMídia Par Trançado 54 54 PUC-Rio / DI TeleMídia Par Trançado � Dois fios metálicos (em geral de cobre) enrolados em espiral • trançado: tende a manter constante as propriedades elétricas ao longo do caminho de transmissão • melhor desempenho que umpar emparalelo para distâncias grandes � Propriedades dependem do diâmetro e da qualidade dos fios utilizados • taxas de transmissão podem chegar a alguns poucos megabits por segundo, dependendo da distância entre os extremos • bastante susceptível a ruídos (BLINDAGEM) • menor custo por comprimento • alta maleabilidade - facilidade de instalação PUC-Rio / DI TeleMídia Par Trançado Unshielded Twisted Pair 55 55 PUC-Rio / DI TeleMídia Par Trançado Blindado Shielded Twisted Pair PUC-Rio / DI TeleMídia Conector RJ-45 56 56 PUC-Rio / DI TeleMídia Conector Token-Ring PUC-Rio / DI TeleMídia Cabo Coaxial 57 57 PUC-Rio / DI TeleMídia Cabo Coaxial � Condutor cilíndrico interno circundado por tubo metálico (separados por material dielétrico) • condutor interno: em geral de cobre • tubo metálico: blindagem eletrostática • material dielétrico: ar seco ou plástico � Popular em TV a cabo � Suporta taxas de transmissão mais altas que o par trançado, para uma mesma distância • alcança, tipicamante, 10 Mbps em distancias da ordem de 1 Km � Boa imunidade a ruído � Custo por comprimento maior que o do par trançado � Menor maleabilidade que o par trançado - mais difícil de instalação PUC-Rio / DI TeleMídia Cabo Coaxial Grosso (Thick Coaxial Cable) 58 58 PUC-Rio / DI TeleMídia Cabo Coaxial Fino (Thin Coaxial Cable) PUC-Rio / DI TeleMídia Conector BNC 59 59 PUC-Rio / DI TeleMídia Conector BNC T PUC-Rio / DI TeleMídia Fibra Ótica 60 60 PUC-Rio / DI TeleMídia Fibra Ótica � Filamento de sílica � Atenuação não depende da frequência • permite taxas altíssimas – 16 Gbps (em laboratório) � Imune a interferências eletromagnéticas � Isolamento completo entre transmissor e receptor � Custo por comprimento mais elevado � Ligações complicadas PUC-Rio / DI TeleMídia Fibra Ótica 61 61 PUC-Rio / DI TeleMídia Conectores ST PUC-Rio / DI TeleMídia Fibra Ótica Modulador Amplificador Detetor Fonte de luz Fibra Ótica Sensor ótico Sinais Elétricos Sinais ElétricosSinais Óticos 62 62 PUC-Rio / DI TeleMídia Fibra Ótica � Diodo Emissor de Luz (Light Emitting Diode - LED) • atinge taxas da ordemde 150 Mbps • potênciasuficiente para o sinal se propagar de 10 a 15 Kmsemrepetidores � Laser • monocromático • coerente (ondas alinhadas emfase) • intensidade alta • raios paralelos PUC-Rio / DI TeleMídia Fibra Ótica � Monomodo Diferentes índices de refração 5 µ m 75 µ m 63 63 PUC-Rio / DI TeleMídia Fibra Ótica � Multimodo Diferentes índices de refração 50 µ m 100 µ m PUC-Rio / DI TeleMídia Fibra Ótica � Multimodo com Índice Gradual 100 µ m 64 64 PUC-Rio / DI TeleMídia Codificação e Transmissão de Informação PUC-Rio / DI TeleMídia Transmissão � O transmissor e o receptor são máquinas de estado que precisam ser sincronizadas (terem seus relógios ajustados em frequência e fase) � Como sincronizar ? 1) enviar em um canal separado dos dados o relógio do transmissor 2) obrigar o circuito receptor a trabalhar com uma frequência maior que a do transmissor 3) enviar dados e relógio juntos em um mesmo canal 65 65 PUC-Rio / DI TeleMídia Transmissão Serial Assíncrona Stop Parity Start Start Transmissão serial 1 0 1 0 0 1 1 PUC-Rio / DI TeleMídia Transmissão � O transmissor e o receptor são máquinas de estado que precisam ser sincronizadas (terem seus relógios ajustados em frequência e fase) � Como sincronizar ? 1) enviar em um canal separado dos dados o relógio do transmissor 2) obrigar o circuito receptor a trabalhar com uma frequência maior que a do transmissor 3) enviar dados e relógio juntos em um mesmo canal 66 66 PUC-Rio / DI TeleMídia Código Manchester • bit “1” - transição positiva (subida) no meio do intervalo desinalização do bit • bit “0” - transição negativa (descida) no meio do intervalo de sinalização do bit Bits Sinal NRZ Onda de Relógio Manchester 0 1 1 0 0 0 1 1 0 1 0 PUC-Rio / DI TeleMídia Codificação Manchester � Sincronismo entre transmissor e receptor � Detecção de portadora � Detecção de colisão � Transmissão de quatro símbolos • “0” • “1” • “J” • “K” 67 67 PUC-Rio / DI TeleMídia Perguntas � O que é uma transmissão simplex, half-duplex e full-duplex? Dê duas formas de implementação de uma comunicação full duplex. � O que é uma ligação ponto-a-ponto e multiponto? � O que é representar um sinal no domínio do tempo? E no domínio da frequência? � O que é banda passante e largura de banda de umsinal? Qual a largura de banda de umsinal digital? � O que é banda passante necessária de umsinal? � Qual a diferença entre sinal e informação? � Um sinal pode ser deformado semque se perca informação? Dê exemplo? � Por que um meio físico de alta velocidade é chamado de meio de banda larga? PUC-Rio / DI TeleMídia Perguntas � O que é modulação? Qual a diferença para a multiplexação de frequência? � O que é multiplexação no tempo? � O que é multiplexação síncrona e assíncrona? � Qual a diferença entre TDM e TDMA? � Qula a diferença entre FDM e FDMA? � O que é comutação? O que é comutação na frequência e no tempo? � O que é um comutador síncrono e assíncrono no tempo? Em que tipos de redes são utilizados? Quais as multiplexações são utilizadas em suas linhas? � O que são as hierarquias plessiócronas? � Qual a diferença entre uma fibra monomodo, multimodo e multimodo com índice gradual? � Para que serve a codificação manchester? Como através dela é possível realizar a detecção de portadora e a detecção de colisão? Pode existir colisão em ligação ponto-a-ponto? Por que a codificação manchester é chamada dibit? 68 68 PUC-Rio / DI TeleMídia Perguntas � Considere um sinal analógico cujo espectro é ilustrado na figura abaixo Se considerarmos que a banda passante necessária para manter uma boa qualidade desse sinal (definida por uma determinada aplicação) corresponde à faixa na qual a amplitude das componentes permanece maior ou igual a maior amplitude de todas as componentes (Amax) dividida por , pergunta-se: • Utilizando FDM em um meio físico cuja banda passante vai de 800 kHz a 900 kHz, quantos canais do sinal acima podem ser acomodados considerando que é necessário inserir bandas de guarda (bandas entre canais) de 500 Hz ? • Considerando o mesmo meio físico da questão a), quais serão as faixas de freqüência que os filtros de cada canal deverá atuar? Freqüência (Hz) Ampli tude dos Sina is Componente s Amax 2 max A 500 10 00 1500 20 00 250 0 3 000 350 0 PUC-Rio / DI TeleMídia Nível de Enlace 69 69 PUC-Rio / DI TeleMídia Camada de Enlace � Delimitação e transmissão de quadros � Detecção de erros � Controle de Acesso � Correção de erros que por ventura ocorram no nível físico (opcional) � Controle de fluxo (opcional) � Multiplexação (opcional) Aplicação Apresentação Sessão Transporte Rede Enlace Físico PUC-Rio / DI TeleMídia Delimitação de Quadros Para cri ar e reconhecer os limites dos quadros são usados basicamente cinco métodos. � Contagem de caracteres � Transparência de caracteres � Transparência de bits � Violação de código � Caça ao cabeçalho 70 70 PUC-Rio / DI TeleMídia Contagem de Caracter � Na contagem de caracteres, um campo no cabeçalho informa o número de caracteres do quadro. � Supondo que um quadro vem logo a seguir a outro, fica assim determinado o fim de um quadro e o início de outro. � Para delinear o primeiro quadro ou resincronizar a delimitação, pode ser utilizado, por exemplo, o quinto método: “ caçada do cabeçalho”. PUC-Rio / DI TeleMídia Transparência de Caracteres � A transparência de caracteres baseia-se na utilização de caracteres delimitadores. O método utiliza caracteres especiais para indicar o início e o final do quadro. � O problema dessa abordagem é que os caracteres delimitadores podem aparecer entre os dados transmitidos no quadro. Para contornar esse problema, toda vez que um delimitador aparece nos dados, é inserido (stuffed) antes dele um outro caracter especial. Quando o destinatário recebe um delimitador precedido do caracter especial ele conclui que, nesse caso, o caracter delimitador faz parte dos dados do quadro. 71 71 PUC-Rio / DI TeleMídia Transparência de Bits � Transparência de bits (bit stuffing) utiliza seqüências especiais de bits, denominadas flags, para delimitar os quadros. Para evitar que ocorrências da seqüência delimitadora nos dados sejam interpretadas incorretamente, bits adicionais são acrescentados aos dados, de forma semelhante à transparência de caracteres. � O protocolo HDLC utiliza essa técnica e usa o padrão 01111110 como delimitador. Sempre que o transmissor encontra seis bits consecutivos iguais a 1 nos dados que vai transmitir, ele insere (stuffs) um bit 0 na cadeia de bits. Quando o receptor encontra seis bits 1 consecutivos, seguidos de um bit 0, ele automaticamente retira (destuffs) o bit 0. PUC-Rio / DI TeleMídia Violação de Códigos � O quarto método baseia-se na violação de códigos do nível físico. � Esse método só pode ser usado em redes cuja codificação dos bits no meio físico possui alguma forma de redundância. � Por exemplo, na codificação Manchester (utilizado nas redes Ethernet e token ring) o bit 0 é codificado por uma transição negativa no sinal, e o bit 1 por uma transição positiva. Os símbolos onde não há transi ção (J e K) não são usados para representar dados, podendo ser então utilizados para delimitar os quadros. � Outros exemplos de utilização da violação de códigos podem ser encontrados nos códigos blocados 4 entre 5 (utilizado nas redes FDDI e ATM) e 8 entre 10 (utilizado nas redes Fiberchannel e ATM) 72 72 PUC-Rio / DI TeleMídia Codificação 4 entre 5 Símbolo Valor (5bits) Símbolos de Dados 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 Símbolos de Controle Quiet Idle Halt J K T Control Reset Control Set 11110 01001 10100 10101 01010 01011 01110 01111 10010 10011 10110 10111 11010 11011 11100 11101 00000 11111 00100 11000 10001 01101 00111 11001 PUC-Rio / DI TeleMídia Codificação NRZI Bits NRZ Relógio Manchester 0 1 1 0 0 0 1 1 0 1 0 NRZI 73 73 PUC-Rio / DI TeleMídia Caça ao Cabeçalho � Neste método, o cabeçalho do quadro é terminado com um campo para detecção de erro, denominado HEC (header error check). � Inicialmente, no estado de caça (HUNT), o quadro é monitorado bit a bit, através de uma janela de tamanho igual ao tamanho do cabeçalho, incluindo o campo HEC). A cada entrada de um bit do quadro nessa janela, a corretude do “suposto cabeçalho” é veri ficada (at ravés do “ suposto HEC”). Quando uma seqüência correta é detectada o início do quadro está delimitado. � Seu final pode ser delimitado, ou pelo quadro ter um tamanho fixo que se sabe a priori (como é o caso da utilização desse método em redes ATM), por contagem de caracteres, ou por um outro método qualquer. PUC-Rio / DI TeleMídia Técnicas de Detecção de Erro � Paridade � Checksum � CRC 74 74 PUC-Rio / DI TeleMídia Formato do Pacote Informação FCSOrigemDestino EDSD PUC-Rio / DI TeleMídia Controle de Acesso � Cabe ao nível de enlace disciplinar o acesso ao meio. Este controle pode ser centralizado ou distribuído. � No controle centralizado, uma máquina fica responsável pelo controle do acesso (estação primária), que é por ela gerenciado através do envio de um quadro poll perguntando se cada uma das outras máquinas (estações secundári as) possui dados a transmitir (lembre-se que a ligação pode ser ponto-a-ponto ou multiponto. Em caso positivo a estação secundária transmite seus dados após receber o quadro poll. � No controle distribuído as estações são consideradas logicamente iguais tendo o mesmo direito de acesso ao enlace. Nesse modo de operação todas as estações são responsáveis pelo controle de acesso ao meio físico. 75 75 PUC-Rio / DI TeleMídia Multiplexação x Acesso � FDM • FDMA � TDM • TDMA PUC-Rio / DI TeleMídia Alguns exemplos de protocolos de acesso (M) � Centralizado • Modo de resposta normal do protocolo HDLC [ISO 84a, ISO 84b, ISO 84c]. � Distribuído: • subcamada Medium Access Control (MAC) do padrão IEEE 802.3: CSMA/ CD (usado nas redes Ethernet) • subcamada Medium Access Control (MAC) do padrão IEEE 802.4: token bus • subcamada Medium Access Control (MAC) do padrão IEEE 802.5: token ring • subcamada Medium Access Control (MAC) do padrão IEEE 802.6: DQDB • subcamada Medium Access Control (MAC) do padrão ANSI X3T9: FDDI 76 76 PUC-Rio / DI TeleMídia Protocolos de Acesso ao Meio PUC-Rio / DI TeleMídia Características dos Protocolos � Capacidade � Estabilidade em sobrecarga � Justiça (“fairness”) � Prioridade � Retardo de transferência 77 77 PUC-Rio / DI TeleMídia Protocolos de Acesso Baseados em Contenção PUC-Rio / DI TeleMídia Aloha 78 78 PUC-Rio / DI TeleMídia Aloha Tempo R2 Timeout + Backoff Transmissor 2 T1 R1T2 PUC-Rio / DI TeleMídia Aloha � Capacidade • Aloha 18% � Equidade � Prioridade � Retardo de transferência � Estabilidade em sobrecarga 79 79 PUC-Rio / DI TeleMídia Slotted Aloha Tempo T1 T2 PUC-Rio / DI TeleMídia Aloha X Slotted-Aloha T1 Tempo ocioso T1 Aloha Slotted-Aloha 80 80 PUC-Rio / DI TeleMídia Aloha X Slotted-Aloha Tempo de Desperdício Tempo de Desperdício Aloha Slotted-Aloha PUC-Rio / DI TeleMídia Aloha � Capacidade • Aloha 18% • Sloted Aloha 36% � Equidade � Prioridade � Retardo de transferência � Estabilidade em sobrecarga 81 81 PUC-Rio / DI TeleMídia CSMA (Carrier Sense Multiple Access) PUC-Rio / DI TeleMídia CSMA Tempo T1 T2 82 82 PUC-Rio / DI TeleMídia CSMA R2 R2 Timeout + Backoff Transmissor 2 T1 T2 Tempo PUC-Rio / DI TeleMídia CSMA Estação Ativa Transmite Colisão? Sim Não Sim Não Meio Livre? Retardo Aleatório 83 83 PUC-Rio / DI TeleMídia IEEE 802.11 – CSMA/CA Quero Transmitir O meio está livre? Não Sim Esperar um tempo aleatório O meio ainda está livre? Transmitir Esperar um tempo aleatório O ACK chegou? Não Sim Fim Não PUC-Rio / DI TeleMídia CSMA/CD Tempo T1 T2 T3 Colisão 84 84 PUC-Rio / DI TeleMídia O Protocolo CSMA/CD � O protocolo CSMA/CD é um dos mais populares, por ser o protocolo de acesso das redes Ethernet. Para regular o acesso ao enlace, todas as estações nele ligadas, deve realizar o seguinte algoritmo: Estação Ativa Transmite Colisão? Sim Não Sim Não Meio Livre? Para de transmitir Espera um retardo Aleatório SUCESSO PUC-Rio / DI TeleMídia A B CSMA/CD B detecta a colisão 85 85 PUC-Rio / DI TeleMídia A B A recebe o pacote enviado por B, e não sabe que seu pacote sofreu colisão CSMA/CD PUC-Rio / DI TeleMídia A B A detecta a colisão CSMA/CD 86 86 PUC-Rio / DI TeleMídia CSMA/CD �M >= 2 C Tp • M é o tamanho do pacote em bits • C é a taxa de transmissão da rede em bps • Tp é o tempo de propagação do sinal no meio PUC-Rio / DI TeleMídia CSMA/CD � E = 1 / (1 + 3,4 a) � a = Tp / P • P é o tempo de transmissão de umpacote 87 87 PUC-Rio / DI TeleMídia CSMA/CD � E = 1 / (1 + 3,4 a) � a = Tp / P • P é o tempo de transmissão de umpacote � P = M / C Tp = L / Vc � a = L.C / Vc.M = L.C / k PUC-Rio / DI TeleMídia Protocolos de Acesso Ordenado 88 88 PUC-Rio / DI TeleMídia Protocolos de Acesso Ordenado � Retardo de transferência limitado � Justo (“fair”) � Estável em sobrecarga PUC-Rio / DI TeleMídia 89 89 PUC-Rio / DI TeleMídia C C V V C V C V PUC-Rio / DI TeleMídia Inserção de Retardo RDR RDT 1 2 3 Registro de Recepção Registro de Transmissão Anel Interface 90 90 PUC-Rio / DI TeleMídia Perguntas � Quais as funções obrigatórias e opcionais do nível de enlace? � Faça todas as combinações possíveis dos algoritmos para delimitação de início e fimde pacotes e destaque aquelas que não funcionam. � Explique a detecção de erro por CRC. � Como pode ser feita a detecção de colisão emuma rede CSMA? E emuma rede CSMA-CD? Por que o serviço da primeira é chamado de confiável e o da segunda de não confiável? Qual o melhor? � Por que existe um tamanho de mensagem mínimo em uma rede CSMA- CD? Como esse tamanho varia com a maior distância entre estações da rede e a taxa de transmissão utilizada? � Porque a eficiência de uma rede CSMA-CD tambémdepende da distância e da taxa de transmissão? PUC-Rio / DI TeleMídia Perguntas � Sabendo-se que: • o tamanho mínimo (em octetos) que deve ter a soma dos campos INFO e PAD em uma rede utilizando CSMA/CD é 64 octetos; • as estações são ligadas diretamente a um comutador (switch) por um enlace cujo comprimento é igual a 100m; • a velocidade de propagação no meio (enlace) é igual a 250.000 km/s. • cada comutador interligando duas estações introduz um retardo equivalente ao tempo de transmissão de 13 octetos, em cada comutação; • a taxa de transmissão é de 100 Mbps; • Qual a distância máxima entre duas estações na rede? • Sintaxe da mensagem � Obs: 1)No cálculo da mensagem mínima, o preâmbulo e o campo SD não devemser levados emconsideração. FCSPreâmbulo SD DA PADINFOLengthSA 7 1 6 6 2 4 (octetos) 91 91 PUC-Rio / DI TeleMídia Perguntas � Imagine que você queira utilizar uma rede CSMA/CD, de acordo com o padrão IEEE-802.3, para transmissão de voz digitalizada. Sabe-se que cada pessoa falando (enviando voz ou silêncio) gera na rede uma taxa de dados (informação) de 48Kbps, e que, por motivos de retardo de empacotamento e perdas, o tamanho do segmento de informação de voz a ser transportado emum pacote é de no máxi mo 48 bits (campo INFO). Pelo padrão mencionado, a sintaxe do pacotede dados é a apresentada na figura abaixo. Suponha que a rede opera a 10Mbps em um cabo coaxial cuja velocidade da luz é de 210.000 Km/seg, cabo cujo comprimento pode atingir até 2,5 Km. Supondo ainda que o tempo de geração de pacotes de voz é aleatório, pergunta-se: E = (M/C) / (M/C + 3,4 tp) • 1) Qual o tamanho total da mensagem transmitida? • 2) Quantas estações transmitindo voz simultaneamente poderemos ter no máximo nesta rede? • 3) No caso da pergunta anterior, qual é a taxa de transmissão efetiva da rede, isto é, aquela utilizada na transmissão dos segmentos de dados de voz? FCSPreâmbulo SD DA PADINFOLengthSA 7 1 6 6 2 4 (octetos) PUC-Rio / DI TeleMídia Perguntas � Os itens abaixo estão relacionados aos trabalhos de laboratório referentes aos níveis físico e de enlace. Responda de acordo com a implementação de sua equipe: • Explique como foram realizadas a transmissão e recepção de bytes no nível físico? • Qual o critério utilizado para a escolha do IFS? O que acontece quando escolho um IFS muito grande ou muito pequeno? • Suponha que em sua rede, as estações E1 e E2 estejam executando o programa que implementa o nível de enlace e o físico, mas que a estação F esteja executando somente o nível físico. O IFS da rede é de 3 segundos e suponha também que o tempo de transmissão de um quadro Q de tamanho máximo é de 0,5 segundos. Considere agora os seguintes eventos: – No instante 0s, a estação E1 detectou meio livre (ela já vinha “escutando” o meio) e imediatamente começou a transmitir Q por difusão (broadcast). – No instante 1s, o nível de enlace da estação E2 recebeu um quadro Q para transmitir para E1. – No instante 2s, a estação F iniciou uma transmissão de 0,25s de alguns bytes. Ao final de 10 segundos, o que aconteceu na rede? Quando E2 começou a transmitir? Quem recebeu o quê? 92 92 PUC-Rio / DI TeleMídia Token Ring � Single Packet � Single Token � Multiple Token PUC-Rio / DI TeleMídia TR Single Packet 93 93 PUC-Rio / DI TeleMídia R T Single Packet PUC-Rio / DI TeleMídia TR Single Packet 94 94 PUC-Rio / DI TeleMídia Single Packet PUC-Rio / DI TeleMídia TR Single Token 95 95 PUC-Rio / DI TeleMídia R T Single Token PUC-Rio / DI TeleMídia TR Single Token 96 96 PUC-Rio / DI TeleMídia R T Single Token PUC-Rio / DI TeleMídia Multiple Token T1R 1 97 97 PUC-Rio / DI TeleMídia Multiple Token T1R 1 PUC-Rio / DI TeleMídia Multiple Token T1R 1 98 98 PUC-Rio / DI TeleMídia Multiple Token T1R 1 T2 R 2 PUC-Rio / DI TeleMídia Multiple Token T1R 1 T2 R 2 99 99 PUC-Rio / DI TeleMídia Token Ring � Capacidade � Equidade � Prioridade � Retardo de transferência � Estabilidade em sobrecarga PUC-Rio / DI TeleMídia Padrão IEEE 802.3 100 100 PUC-Rio / DI TeleMídia Histórico PUC-Rio / DI TeleMídia Padrão IEEE 802.3 � Formato da PDU da Camada MAC 56 Bits Preâmbulo 48 (16) Bits 48 (16) Bits 16 Bits 368 Bits - 12 KBits 32 Bits Destinatário Remetente Comprimento Dados FCS 8 Bits SD PAD 101 101 PUC-Rio / DI TeleMídia Padrão IEEE 802.3 � Semântica do Protocolo da Camada MAC • CSMA-CD • Espera Aleatória Exponencial Truncada – o número de intervalos da espera varia de 0 a 2n – nas primeiras 10 tentativas n varia de 1 a 10, nas tentativas subsequêntes, n continua como valor 10. – depois de 16 tentativas malsucedidas, a interface reporta tempo de acesso infinito. PUC-Rio / DI TeleMídia Padrões do Nível Físico IEEE 802.3 � 10Base5 � 10Base2 � 10BROAD36 � 10BaseT � 10BaseF � 100BaseT 102 102 PUC-Rio / DI TeleMídia Comprimento Máximo de um Segmento Segmento Distancia máxima 10Base5 500 metros 10Base2 185 metros 10BaseF Depende da tecnologia de transmissão (até 2 Km) 10BaseT 100 - 150 metros 10Broad36 3600 metros PUC-Rio / DI TeleMídia IEEE 802.3 10Base5 Conector “N” Macho Conector de pressão (MDI) Conector AUI de 15 pinos Cabo Coaxial Grosso Interface ETHERNET com MAU externo MAU Cabo AUI Terminador 50 Ohm 103 103 PUC-Rio / DI TeleMídia Número Máximo de Estações por Segmento 10Base5 500 metros Distância mínima 2.5 metros Estação 1 Estação 100Estação 99Estação 2 100 estações por segmento PUC-Rio / DI TeleMídia � Taxa de transmissão: 10 Mbps � Transmissão: Banda Básica (Baseband) � Codificação: Manchester � Cabeamento: Coaxial Grosso 50 Ohms (Thick Coax) � Topologia física em Barramento IEEE 802.3 10Base5 104 104 PUC-Rio / DI TeleMídia IEEE 802.3 10Base2 Conector BNC Macho Terminador BNC Macho 50 Ohm Conector T BNC MDI BNC Fêmea Cabo Coaxial Fino Interface ETHERNET com MAU interno PUC-Rio / DI TeleMídia Número Máximo de Estações por Segmento 10Base2 185 metros Distância mínima 0.5 metros Estação 1 Estação 30Estação 29Estação 2 30 estações por segmento 105 105 PUC-Rio / DI TeleMídia IEEE 802.3 10Base2 � Também conhecido como Thin-Ethernet ou Cheapernet � Taxa de transmissão: 10 Mbps � Transmissão: Banda Básica (Baseband) � Codificação: Manchester � Cabeamento: Coaxial Fino 50 Ohm � Topologia física em Barramento PUC-Rio / DI TeleMídia IEEE 802.3 10BaseT Par trançado Interface ETHERNET com MAU interno Plugs RJ-45 100 m Interface ETHERNET com MAU interno 106 106 PUC-Rio / DI TeleMídia IEEE 802.3 10BaseT Par trançado Conector AUI 15 Pinos Conector BNC Interface ETHERNET com MAU interno Plugs RJ-45 R PUC-Rio / DI TeleMídia Distância máxima 100 metros HUB Par Trançado UTP 100 estações por Hub IEEE 802.3 10BaseT 107 107 PUC-Rio / DI TeleMídia � Taxa de transmissão: 10 Mbps � Transmissão: Banda Básica (Baseband) � Codificação: Manchester � Cabeamento: Par Trançado � Topologia física em Barramento-Estrela IEEE 802.3 10BaseT PUC-Rio / DI TeleMídia Regra 5-4-3 � 5 Segmentos � 4 Repetidores � 3 Segmentos Povoados 108 108 PUC-Rio / DI TeleMídia Fast Ethernet PUC-Rio / DI TeleMídia � Estações ligadas em estrela a um hub central � Sub-camada MAC do IEEE 802.3 � Opções de nível físico: • 100BASE-TX: 2 pares UTP Categoria 5 ou 2 pares STP • 100BASE -T4: 4 pares UTP Categoria 3, 4 ou 5 • 100BASE-FX: 2 fibras óticas multimodo degrau 62,5/125 µ � Hubs com portas operando a 10 e 100 Mbps � Ligações das estações ao meio feita pela interface MII 100BASE-T (Fast Ethernet) IEEE 802.3u 109 109 PUC-Rio / DI TeleMídia 100BASE-T (Fast Ethernet) IEEE 802.3u Físico EnlaceEnlace MAC OSI IEEE MIIMII LLC 100BASE-TX 100BASE-T4 100BASE-FX Repetidor 100BASE-T MAC 802.3MAC 802.3 PUC-Rio / DI TeleMídia Switched Ethernet 110 110 PUC-Rio / DI TeleMídia Switches Ethernet Porta de 10 Mbps Porta de 10 Mbps Porta de 10 MbpsPorta de 10 Mbps Porta de 10 Mbps Porta de 10 Mbps Porta de 10 Mbps Porta de 30 Mbps Via de Alta Velocidade PUC-Rio / DI TeleMídia Switches � Comutação feita por software: memória compartilhada � store-and forward switch (buffered switch). • FCS verificado antes da transferência � Comutação feita por hardware: estabelecimento de circuito entre porta de origem e destino durante a transmissão de um quadro � cut-through switch • Latência pequena 111 111 PUC-Rio / DI TeleMídia Gigabit Ethernet PUC-Rio / DI TeleMídia Histórico - Gigabit Ethernet � Novembro de 1995: Formação do grupo de estudo sobre redes de alta velocidade � Julho de 1996: Criação da força tarefa IEE 802.3z - Gigabit Ethernet � Início de 1997: Primeiro draft � Junho de 1998: Versão final do padrão 112 112 PUC-Rio / DI TeleMídia Gigabit Ethernet � Permitir a operação half- e full-duplex a taxas de 1000 Mbps (atualmente a 10Gbps) � Usar o formato do pacote Ethernet 802.3 � Usar o método de acesso CSMA/CD com suporte para um repetidor por segmento � Ser compatível com as tecnologias 10BASE-T e 100BASE-T PUC-Rio / DI TeleMídia Interfaces Físicas � 1000BASE-SX (fibra ótica multimodo) � 1000BASE-LX (fibras óticas monomodo e multimodo) � 1000BASE-CX (cabo de cobre blindado e balanceado) 113 113 PUC-Rio / DI TeleMídia Ethernet e FibreChannel no IEEE802.3z IEEE 80 2.2 LLC IEEE 80 2.3 CS MA /C D FC -4 U pp er- La yer M ap pin g I EEE 8 02. 3 Ph ysi cal Laye r IE EE 80 2.3 E th er net F C- 3 Co m mo n S er vi ces F C- 2 S ign al ing F C- 1 Enco de /D ecod e FC - 0 I nt er fa ce an d M edi a AN S I X 3T1 1 Fib reC h an n el I EEE 8 02 .2 LLC CS MA /CD o r F ull Du pl ex MA C 8B /10 B Enc od e/D eco de S e ri aliz er / D eser ial ize r Co nn ect or IEE E 8 02 .3 z G i gab i t Et he rn et PUC-Rio / DI TeleMídia Modos de Operação � Assim como o Fast Ethernet, GbE opera nos modos half- e full-duplex. � Operando no modo half-duplex, o GbE conserva o método de controle de acesso do padrão Ethernet, CSMA/CD. � A maioria dos comutadores capacita ao usuário selecionar o modo de operação de cada porta, permitindo-o migrar aos poucos conexões compartilhadas half-duplex para conexões ponto-a-ponto full-duplex. � No modo full-duplex, os pacotes viajam em ambas as direções simultaneamente sobre dois caminhos numa mesma conexão, com uma banda passante agregada igual ao dobro da banda da conexão hal f- duplex, ou seja, 2 Gbps (20Gbps). � A GbE apresentam dois tipos de topologia: chaveada e compartilhada. 114 114 PUC-Rio / DI TeleMídia Camada Física � 1000BASE-LX: destinado a conexões de maior distância, atingindo 550m com fibras multimodo e até 3Km com fibras monomodo. � 1000BASE-SX: ideal para conexões de baixo custo, interligando pontos mais próximos, alcançando no máximo 550m. � 1000BASE-CX: cobre, com até 25 metros. � 1000BASE-T: cobre, com até 100 metros. PUC-Rio / DI TeleMídia Distância Máximas 115 115 PUC-Rio / DI TeleMídia A Camada PMA � A subcamada PMA (physical media attachment) do GbE é idêntica à FC1 do FibreChannel, que descreve a sincronização e a serialização/deserialização dos dados. � A serialização fornece o suporte a múltiplos esquemas de codificação, apropriada para cada tipo de mídia. � A PMA é também responsável por recuperar o sinal de relógio a partir dos dados codificados, utilizando um circuito Phased Lock Loop. PUC-Rio / DI TeleMídia A Camada PCS � A subcamada PCS (Physical Coding Sublayer) é responsável pelo esquema múltiplo de codificação do protocolo de transmissão, incluindo caracteres especiais e controle de erro. � Esta subcamada gerencia também o processo de negociação realizado pelo NIC com a rede para determinar a velocidade da rede (10, 100 ou 1000 Mbps) e o modo de operação (hal f- ou full-duplex). � O esquema de codificação do GbE é o mesmo 8B/10B especificado na camada FC1 • O mecanismo é bastante similar à codificação 4B/5B usada na FDDI, a não ser pelo balanceamento DC. A codificação 4B/5B foi rejeitada pelo FibreChannel devido à falta de balanceamento DC, que pode provocar um aquecimento dos lasers dependendo dos dados enviados, se transmitir mais 1’s do que 0’s. 116 116 PUC-Rio / DI TeleMídia GMII � A GMII (Gigabit Media Independent Interface): • Manipula dados não codificados através de caminhos independentes de transmissão e recepção de 8-bits, operando a 125 MHz. Suporta, portanto, as operações halfe full-duplex. • Transmite sinais de relógio, de presença de portadora e de ausência de colisão. � A GMII garante compatibilidade reversa, dando suporte às três velocidades das implementações anteriores do Ethernet. PUC-Rio / DI TeleMídia Enlace: CSMA/CD � Ethernet: 10 Mbps e 64 bytes de tamanho mínimo de pacote, estações distantes até 2 Km podem detectar colisões. � Fast Ethernet: a taxa de transmissão é dez vezes mais rápida e o formato dos pacotes permaneceu inalterado, distância caiu para 200 m. � Para evitar que o mesmo ocorresse com o Gigabit Ethernet (uma distância máxima de 20 m seria impraticável), o comitê 802.3z redefiniu a subcamada MAC para manter os mesmos 200 m. 117 117 PUC-Rio / DI TeleMídia Enlace: CSMA/CD � Consiste basicamente em aumentar o slot size de 64 para 512 bytes. � Quando transmitidos, os pacotes menores que 512 bytes são seguidos por um sinal especial enviado pela subcamada MAC, enquanto a estação continuar monitorando a ocorrência de colisões. A adição de bits extras ao pacote completa o comprimento mínimo do slot size. Pacotes maiores que 512 bytes não são estendidos. � O slot time do GbE deveria ser 640 bytes (tempo gasto pelo Fast Ethernet para transmitir 64 bytes a 100 Mbps), mas, o 802.3z decidiu que 640 bytes seri a muito inefi ciente, e determinou o valor de 512 bytes. Para isso, foram tomadas outras medidas: o número de repetidores por segmento caiu para 1 e a margem de segurança das especificações foi praticamente eliminada. PUC-Rio / DI TeleMídia Pacote GbE � Note que o tamanho mínimo de 64 bytes do pacote não foi alterado. P reamble SFD DA SA Type / Length Dados FCS Extensão 64 bytes min 512 bytes min Duração do Evento de Deteção de Portadora SFD: Delimitador de Início de Pacote DA: Endereço de Destino SA: Endereço de Origem FCS: Seqüência de Verificação do Pacote 118 118 PUC-Rio / DI TeleMídia Enlace GbE � No pior caso, se o tráfego da rede consistisse apenas de pacotes de 64 bytes, a vazão efetiva do GbE seria de 120 Mbps. � Em condições normais, a média da distribuição do tamanho dos pacotes Ethernet de uma rede varia em torno de 200 a 500 bytes, o que equivaleria a uma vazão de 300 a 400 Mbps. PUC-Rio / DI TeleMídia Enlace GbE � Para minimizar os efeitos da extensão de portadora no desempenho da rede foi incorporado a rajada de pacotes (frame bursting) no algoritmo do CSMA/CD: uma estação pode transmitir vários pacotes pequenos seguidos sem interrupção, agrupando-os no máximo até 1500 bytes. � É importante salientar que estes ajustes no CSMA/CD, como a extensão de port adora e a raj ada de pacotes, apenas são necessários quando o Gigabit Ethernet opera no modo half- duplex, que consta do padrão apenas para manter compatibilidade. 119 119 PUC-Rio / DI TeleMídia Enlace GbE � O modo de transmissão full-duplex elimina a necessidade de protocolos de controle de acesso, pois as estações enviam e recebem dados por pares de fios distintos. � Geralmente é utilizado apenas nas configurações ponto-a-ponto, e as implementações precisam estar de acordo com as especificações ratificadas pelo grupo 802.3x em Março de 1997. � A transmissão full-duplex permite que a banda passante da rede possa ser facilmente duplicada com custos relativamente baixos. PUC-Rio / DI TeleMídia Padrão IEEE 802.4 120 120 PUC-Rio / DI TeleMídia Semântica do Protocolo da Camada MAC 802.4 �Passagem de Permissão em Barra PUC-Rio / DI TeleMídia Canais de Frequência “Broadband” IEEE 802 Canal de Retorno Limite da faixa de frequência (MHz) Canal de Transmissão Limite da faixa de frequência (MHz) T 7 T 8 T 9 T 10 T 11 T 12 T 13 T 14 2’ 3’ 4’ 4A’ 5’ 6’ FM1’ FM2’ FM3’ 5,75 11,75 17,75 23,75 29,75 35,75 41,75 47,75 53,75 59,75 65,75 71,75 77,75 83,75 89,75 95,75 101,75 H I 7 J K L M N O P Q R S T U V W 162 168 174 216 222 228 234 240 246 252 258 264 270 276 282 288 294 121 121 PUC-Rio / DI TeleMídia Padrão IEEE 802.5 PUC-Rio / DI TeleMídia Sintaxe do Protocolo da Camada MAC 802.5 • SD - Delimitador de Início de Quadro (Start Delimiter) • AC - Controle de Acesso (Access Control) • FC - Controle de Quadro (Frame Control) • DA - Endereço do Destinatário (Destination Address) • SA - Endereço do Remetente (Source Address) • FCS - Controle de Erros (Frame Check Sequence) • ED - Delimitador de Fim de Quadro (End Delimiter) • FS - Status do Quadro (Frame Status) SD AC FC DA SA FCS ED FSPDU LLC Formato Geral 1 octeto 1 octeto 1 octeto 2 a 6 octetos 2 a 6 octetos 4 octetos 1 octeto 1 octeto 122 122 PUC-Rio / DI TeleMídia Sintaxe do Protocolo da Camada MAC 802.5 SD AC ED Permissão 1 octeto ppp t m rrr • ppp prioridade corrente • t permissão (0 - livre) • m monitor • rrr reserva de prioridade PUC-Rio / DI TeleMídia Semântica do Protocolo da Camada MAC 802.5 � Passagem de Permissão em Anel • Sem prioridade • Com prioridade 123 123 PUC-Rio / DI TeleMídia Padrões do Nível Físico IEEE 802.5 � Taxa de transmissão: 4 Mbps � Transmissão: Banda Básica (Baseband) � Codificação: Manchester Diferential � Número máximo de repetidores: 250 � Cabeamento: �Par Trançado (STP ou UTP) 150 Ohms � Topologia física : Anel-Estrela PUC-Rio / DI TeleMídia Padrões do Nível Físico IEEE 802.5 � Taxa de transmissão: 16 Mbps � Transmissão: Banda Básica (Baseband) � Codificação: Manchester Diferential � Número máximo de repetidores: 250 � Cabeamento: �Par Trançado STP 150 Ohms �Par Trançado UTP 100 Ohms (em estudo) � Topologia física : Anel-Estrela 124 124 PUC-Rio / DI TeleMídia IEEE 802.5 Interface Token-Ring com MAU interno Interface Token-Ring com MAU interno Par Trançado Blindado Ring IN Ring OUT HUB PUC-Rio / DI TeleMídia Padrão IEEE 802.11 125 125 PUC-Rio / DI TeleMídia Redes Móveis PUC-Rio / DI TeleMídia IEEE 802.11 - Introdução � Motivação • Substituir cabeamento físico por conexões sem fio • Prédios históricos • Infraestruturas complexas • Reduzir custos de instalação e manutenção • Dar suporte a usuário que tendem a trocar de localização física com freqüência � Grupo de trabalho iniciado em1990 para criar umpadrão para WLAN • 2.4 GHz ISM (Industrial, Scientific, and Medical) • 7 anos depois � 802.11 operando 1 a 2 Mbps 126 126 PUC-Rio / DI TeleMídia Padrões IEEE 802.11 � 802.11 – Taxas de 1 ou 2 Mb/s na banda de 2.4GHz, utiliza tanto Frequency Hopping Spread Spectrum (FHSS) como Direct Sequence Spread Spectrum (DSSS). � 802.11a – Taxas de 54Mb/s na banda de 5GHz, utiliza Orthogonal Frequency Division Multiplexing (OFDM) ao invés do FHSS ou DSSS. � 802.11b – Taxas de 5,5 ou 11 Mb/s (também pode operar em 1 ou 2 Mb/s) na banda de 2.4GHz, utilizando apenas DSSS. � 802.11g – Taxas de 20+ Mb/s na banda de 2.4GHz. PUC-Rio / DI TeleMídia IEEE 802.11 Wireless LAN � Tipos de redes • Com infra-estrutura • Sem infra-estrutura (Ad Hoc) 127 127 PUC-Rio / DI TeleMídia WLAN Com Infra-estrutura � A transferência de dados acontece sempre entre uma Estação Móvel (EM) e um Ponto de Acesso (AP). � O AP também pode servir como ponte entre a rede móvel e a fixa. � Topologia em estrela. O AP controla o fluxo de toda a rede. � Pode usar esquemas de acesso com ou sem colisão. � Perde confiabilidade, pois o funcionamento da rede depende do AP. PUC-Rio / DI TeleMídia WLAN Sem Infra-estrutura (ad hoc) � A transferência de dados acontece diretamente entre as EM’s. � Uma estação A só pode se comunicar com uma estação B se B estiver dentro do raio de ação de A ou se existir uma ou mais estações entre A e B que possamencaminhar a mensagem. � As EM são mais complexas pois devem implementar mecanismos de acesso ao meio, mecanismos para controlar problemas de “ estações escondidas” e mecanismos para prover alguma qualidade de serviço 128 128 PUC-Rio / DI TeleMídia WLAN Sem Infra-estrutura (ad hoc) PUC-Rio / DI TeleMídia IEEE 802.11 – Camada Física � Definiu originalmente duas técnicas de transmissão por rádio, na banda 2,4GHz, e uma por infravermelho para as taxas de 1 e 2 Mb/s: • Infrared PHY: Fornece operação a 1Mb/s, com 2Mb/s opcional. A versão de 1Mb/s usa modulação 16-PPM (Pulse Position Modulation com 16 posições), e a versão de 2Mb/s utiliza modulação 4-PPM. • Direct Sequence Spread Spectrum Radio PHY (DSSS): Provê operação em ambas as velocidades (1 e 2 Mb/s). A versão de 1Mb/s utiliza a modulação DBPSK (Differential Binary Phase Shift Keying), enquanto que a de 2Mb/s usa modulação DQPSK (Differential Quadrature Phase Shift Keying). • Frequency Hopping Spread Spectrum Radio PHY (FHSS): Fornece operação 1 Mb/s, com 2 Mb/s opcional. A versão de 1Mb/s utiliza 2 níveis da modulação GFSK (Gaussian Frequency Shift Keying), e a de 2Mb/s utiliza 4 níveis da mesma modulação, com chaveamento de freqüência entre 79 canais de 1MHz com objetivo de restringir acesso aos dados. 129 129 PUC-Rio / DI TeleMídia IEEE 802.11 – Camada Física Rádio Infravermelho Frequências 2,4 GHz 3x1014 Hz Cobertura máxima 30 – 240m ou 15km 10 a 30m Requer visada direta? Não Sim Requer licença? Não Não PUC-Rio / DI TeleMídia IEEE 802.11 – Media Access Control � A Camada MAC é única para WLANs, porém muito similar a MAC do 802.3 • É projetada para suportar múltiplos usuários em um meio compartilhado. • O transmissor escuta o meio, para verificar que está livre, antes de transmitir. • Não é possível detectar colisão, pois sistemas rádio não podem transmitir e escutar o meio ao mesmo tempo. � A Camada MAC usa então o protocolo CSMA/CA – Carrier Sense Multiple Access with Collision Avoidance. 130 130 PUC-Rio / DI TeleMídia IEEE 802.11 – CSMA/CA Quero Transmitir O meio está livre? Não Sim Esperar um tempo aleatório O meio ainda está livre? Transmitir Esperar um tempo aleatório O ACK chegou? Não Sim Fim Não PUC-Rio / DI TeleMídia IEEE 802.11 – CSMA/CA AP BSS 131 131 PUC-Rio / DI TeleMídia MAC – Problema de nós escondidos � EM podem escutar AP, mas EMs não se escutam. � Gera colisão, pois mais de um móvel transmite ao mesmo tempo. � Como as EMs que transmitiram não receberam os ACKs dos pacotes que colidiram, elas assumem que aconteceu uma colisão, esperam um tempo aleatório e retransmitem. PUC-Rio / DI TeleMídia MAC – Problema de nós escondidos AP BSS Colisão 132 132 PUC-Rio / DI TeleMídia MAC – Solução para o problema de nós escondidos � O 802.11 especifica então (como opcional) Request to Send/Clear to Send (RTS/CTS). � O transmissor envia um RTS e espera o AP responder com um CTS. � Como os pacotes RTS/CTS ocupam a rede, geralmente só é utilizado para a transmissão de pacotes grandes, onde a retransmissão é critica. PUC-Rio / DI TeleMídia Outras características da Camada MAC � Adiciona o CRC Checksum, para verificar se os dados transmitidos estão corretos. � Faz Packet Fragmentation, que divide pacotes grandes em pacotes menores, melhorando o funcionamento quando a rede está congestionada. � Faz associação a APs � Define métodos para limitar a latência, permitindo aplicações de voz e vídeo � Faz o controle de potência, visando economizar as baterias � Define técnicas para aumentar a segurança 133 133 PUC-Rio / DI TeleMídia MAC – Associações a APs Arquitetura Celular � A camada MAC é responsável por associar uma EM a um AP. A EM escolhe o AP baseando-se em taxa de pacotes errados e potência do sinal. � Após ser associada a um AP a EM sintoniza o canal usado por este AP e periodicamente verifica todos os outros canais em busca de um AP melhor. Se encontrar umAP melhor a EM sintoniza o canal deste novo AP. � Geralmente dentro de um prédio existem muitos APs, logo será necessário fazer o reuso de frequência tomando cuidado para não colocar APs commesmo canal juntos. PUC-Rio / DI TeleMídia MAC – Métodos para Limitar a Latência � A camada MAC define dois protocolos de acesso: • Point Coordination Function (PCF) • Distributed Coordination Function (DCF) � Quando o sistema está operando em modo PCF cada EM transmite na sua vez (similar ao token ring), limitando assim a latência. 134 134 PUC-Rio / DI TeleMídia MAC – Gerenciamento de Energia � A camada MAC define dois modos de operação: • Continuous Aware Mode – Neste modo o rádio fica sempre ligado. • Power Save Polling Mode – Modo de economia de energia PUC-Rio / DI TeleMídia MAC – Segurança � A camada MAC fornece mecanismos para aumentar a segurança: • Wired Equivalent Privacy(WEP) – Tem o objetivo de fornecer um nível de segurança equivalente ao das LANs cabeadas. • Fornece mecanismos de criptografia. 135 135 PUC-Rio / DI TeleMídia Perguntas � Dada uma rede em anel com inserção de retardo, com N estações, tamanho de pacote máximo igual a M bits, taxa de transmissão igual a T bps, distância entre estações de igual comprimento L metros, e velocidade de propagação no meio igual a V metros/segundo. • Qual o tempo de espera máximo para se poder iniciar um a transmissão? • Qual o tempo máximo que um pacote chega inteiramente ao destino, desde o momento que foi iniciada sua transmissão? • Qual o tempo de transferência máximo da rede? PUC-Rio / DI TeleMídia Perguntas � Dada uma rede em anel token-ring single packet, com N estações, tamanho de pacote máximo igual a M bits, taxa de transmissão igual a T bps, distância entre estações de igual comprimento L metros, e velocidade de propagação no meio igual a V metros/segundo. • Qual o tempo de espera máximo para se poder iniciar um a transmissão? • Qual o tempo máximo que um pacote chega inteiramente ao destino, desde o momento que foi iniciada sua transmissão? • Qual o tempo de transferência máximo da rede? 136 136 PUC-Rio / DI TeleMídia Perguntas � Dada uma rede em anel token-ring single token, com N estações, tamanho de pacote máximo igual a M bits, taxa de transmissão igual a T bps, distância entre estações de igual comprimento L metros, e velocidade de propagação no meio igual a V metros/segundo. • Qual o tempo de espera máximo para se poder iniciar um a transmissão? • Qual o tempo máximo que um pacote chega inteiramente ao destino, desde o momento que foi iniciada sua transmissão? • Qual o tempo de transferência máximo da rede? PUC-Rio / DI TeleMídia Perguntas � Dada uma rede em anel token-ring multiple token, com N estações, tamanho de pacote máximo igual a M bits, taxa de transmissão igual a T bps, distância entre estações de igual comprimento L metros, e velocidade de propagação no meio igual a V metros/segundo. • Qual o tempo de espera máximo para se poder iniciar um a transmissão? • Qual o tempo máximo que um pacote chega inteiramente ao destino, desde o momento que foi iniciada sua transmissão? • Qual o tempo de transferência máximo da rede? 137 137 PUC-Rio / DI TeleMídia Perguntas � Suponha uma rede em anel com protocolo "token ring - single token". Sabendo que: • 1) A rede possui um perímetro de 10Km. • 2) A rede possui 100 estações que podem ser inseridas em qualquer posição do anel. • 3) A taxa de transmissão na rede é de 100Mbps. • 4) O retardo máximo de transferência permitido pelas aplicações é de 5,07 mseg • 5) A velocidade de propagação da luz no meio de transmissão é de 200.000 Km/s Calcule: • 1) O tamanho máximo do pacote em bytes • 2) O tempo de acesso máximo da rede • 3) O tempo de transmissão máximo Dica: Não deixe de levar em consideração a latência do anel (faça o cálculo para os dois casos possíveis e veja qual não leva ao absurdo – o cálculo dos dois casos será exigido na correção da questão). Você pode desprezar o retardo introduzido por uma estação no anel ao repetir um pacote. PUC-Rio / DI TeleMídia Perguntas � Explique o algoritmo de espera aleatória binária truncada. � Quais os cuidados que se deve ter ao se fazer u ma ligação multiponto? Por que casar o final da barra? Por que a ligação com o meio tem de ter alta impedância? Por que deve ser respeitada uma distância entre estações? Por que os terras têmde ser isolados? Como isso pode ser feito? � Quais os cuidados a seremtomados emuma ligação ponto-a-ponto? � Por que o tamanho mínimo do pacote Ethernet não teve de ser diminuído na Fast-Ethernet? Por que teve de ser diminuído na Gigabit-Ethernet? Quais outros cuidados tiveram de ser tomados nesta diminuição? Por que esses cuidados só são necessários na GbE no modo half-duplex? � Emuma rede IEEE-805, o que é o bit da monitora? Qual o tempo que uma rede deve esperar para entrar no modo “claim-token”? 138 138 PUC-Rio / DI TeleMídia Perguntas � O que é uma rede infra-estruturada e uma rede ad-hoc? � Como uma estação base escolhe sua estação radio-base? � Como funciona o protocolo CSMA-CA? � O que o padrão IEEE-802.11 introduz para reduzir o problema de estações escondidas? __MACOSX/Slides/Arquivos Originais/._01.grupo.pdf Slides/Arquivos Originais/02.grupo.pdf 1 PUC-Rio / DI TeleMídia Redes de Computadores PUC -Rio Departamento de Informática Luiz Fernando Gomes Soares lfgs@inf.puc-rio.br PUC-Rio / DI TeleMídia Camada de Enlace � Delimitação e transmissão de quadros � Detecção de erros � Controle de Acesso � Correção de erros que por ventura ocorram no nível físico (opcional) � Controle de fluxo (opcional) � Multiplexação (opcional) Aplicação Apresentação Sessão Transporte Rede Enlace Físico 2 PUC-Rio / DI TeleMídia Correção de Erro � Uma vez detectado o erro, o quadro é descartado e, opcionalmente, é enviado um aviso ao sistema que o transmitiu. A recuperação do erros, se desejada, pode ser realizada por retransmissão. � Alternativamente o nível de enlace pode utilizar bits de redundância que lhe permitam não só detectar erros, mas também corrigi-los, sem a necessidade de retransmissão. A correção de erros sem retransmissão é particularmente útil em enlaces onde o custo de comunicação e o retardo de transferência são elevados, como por exemplo, em enlaces de satélites. PUC-Rio / DI TeleMídia Correção de Erro Os três procedimentos mais utilizados para controlar erros são: � algoritmo de bit alternado (stop-and-wait), � janela n com retransmissão integral (go-back-n) e � janela n com retransmissão seletiva (selective repeat). 3 PUC-Rio / DI TeleMídia Bit alternado � No algoritmo de bit alternado o transmissor só envia um novo quadro quando recebe o reconhecimento do quadro enviado anteriormente. � Após a transmissão, o transmissor espera um certo tempo pelo reconhecimento. Caso este tempo se esgote (timeout), o quadro é retransmitido. � Considerando que os quadros podem ser transmitidos mais de uma vez, é necessário numerá-los para que o receptor possa distinguir quadros originais de retransmissões. Como o transmissor só envia um novo quadro depois do anterior ser reconhecido, só é preciso um bit para diferenciar quadros sucessivos. O primeiro quadro é numerado com o bit 0, o segundo com o bit 1, o terceiro com o bit 0, e assim sucessivamente. PUC-Rio / DI TeleMídia Bit Alternado Quadro 0 ACK 0 ACK 0 Quadro 0 Transmissor Receptor T Intervalos de Timeout ACK 1 Quadro 1 Quadro 1 Quadro 1 Quadro 1 ACK 1 ACK 1 ACK 1 Quadro 1 Quadro 1 4 PUC-Rio / DI TeleMídia Janela de Transmissão � A técnica de bit alternado oferece uma solução simples porém ineficiente para o controle de erro, pois, enquanto o transmissor espera por reconhecimentos o canal de comunicação não é utilizado. � Para aumentar a eficiênci a na utilização dos canais de comunicação foram elaborados protocolos que permitem que o transmissor envie diversos quadros mesmo sem ter recebido reconhecimentos dos quadros anteriormente enviados. O número máximo de quadros, devidamente numerados, que podem ser enviados sem que tenha chegado um reconhecimento define a largura da janela de transmissão. PUC-Rio / DI TeleMídia Controle com Janelas � Como no protocolo de bit alternado, o transmissor fica sabendo que ocorreu um erro em um quadro por ele enviado quando seu reconhecimento não chega, após decorrido um intervalo de tempo suficiente para tal. Nesse caso, dois procedimentos podem ser implementados para recuperar o erro: • Retransmissão integral: todos os quadros a partir do que não foi reconhecido são retransmitidos. • Retransmissão seletiva: apenas o quadro que não foi reconhecido é retransmitido. � Para aumentar ainda mais a eficiência na utilização do canal de transmissão, em ambos os casos o receptor não precisa enviar um reconhecimento para cada quadro que recebe. O transmissor ao receber o reconhecimento do quadro n conclui que os quadros enviados antes dele, foram recebidos corretamente. 5 PUC-Rio / DI TeleMídia Controle de Erro com Janela Deslizante a) Protocolo com retransmissão integral Quadros descartados 0 1 2 3 4 5 6 7 8 2 3 4 5 6 7 8 9 10 0 1 EE 33 44 55 66 77 88 2 3 4 5 6 7 8 9 Intervalo de TIMEOUT A2 A3 A6 A8 b) Protocolo com retransmissão seletiva 0 1 2 3 4 5 6 7 8 2 3 4 5 6 9 10 11 12 0 1 EE 3 4 5 6 7 8 2 33 44 55 66 9 10 11 Intervalo de TIMEOUT Quadros bufferizados Intervalo de TIMEOUT Intervalo de TIMEOUT A1 A2 A9 A10 Quadros descartados PUC-Rio / DI TeleMídia Controle de Fluxo � Outro problema tratado pelo nível de enlace diz respeito a situações onde o transmissor sistematicamente envia quadros mais depressa que o destinatário pode receber. � A solução para essa situação é introduzir um mecanismo de controle de fluxo para compatibilizar as velocidades do transmissor e do receptor. 6 PUC-Rio / DI TeleMídia Controle de Flu xo � No protocolo de bit alternado, o próprio mecanismo de retransmissão de quadros controla o fluxo, pois um novo quadro só é enviado depois do receptor ter processado o quadro anterior e enviado um reconhecimento. PUC-Rio / DI TeleMídia Janela Deslizante � Nos protocolos com janela n maior que 1, o controle do fluxo é feito com base em quadros especiais ou em janelas de transmissão e recepção. � O número máximo de quadros que o transmissor pode enviar é determinado pela largura (T) de sua janela de controle de fluxo. Após enviar T quadros sem receber nenhuma atualização da janela, o transmissor suspende o envio de dados, só voltando a fazê-lo após receber uma resposta de controle que indica que o receptor está pronto para processar novos quadros. 7 PUC-Rio / DI TeleMídia Multiplexação da Conexão Física � Finalmente, dado que uma estação tem o controle do acesso ao meio físico, ela pode multiplexar entre vários usuários do nível de rede (que interagem com o nível de enlace através de SAPs de enlace), o acesso à conexão física, ora enviando um quadro provindo de um usuário do nível de rede, ora de outro. PUC-Rio / DI TeleMídia Tipos de Serviço � Como usual em todos as camadas do RM-OSI, a camada de enlace pode oferecer ao nível de rede serviços orientados a conexão e serviços não orientados a conexão. � Dentre os serviços mais usuais podem ser destacados: • Serviço sem conexão e sem reconhecimento (apenas detecção de erros no nível de enlace): também conhecido como serviço de datagrama não confiável. • Serviço sem conexão e com reconhecimento (detecção e correção de erros no nível de enlace): também conhecido como serviço de datagrama confiável. • Serviço com conexão (usualmente com controle de erro e fluxo no enlace). 8 PUC-Rio / DI TeleMídia Camada de Enlace � Orientados a Caracter • BSC - Binary Synchronous Comunication � Orientados a Bit • HDLC - High Level Data-Link Control – LAP-B – LAP-D – LAP-M – LLC • SDLC - Syncronous Data Link Control (IBM) PUC-Rio / DI TeleMídia High Level Data-Link Control � Transmissão Síncrona de Quadros � Bit Stuffing � Controle de Erro • Deteção: CRC • Correção: Retransmissão � Controle de Fluxo � Vários modos de operação 9 PUC-Rio / DI TeleMídia Padrão IEEE 802.2 PUC-Rio / DI TeleMídia IEEE 802.2 � O padrão IEEE 802.2 é um exemplo de protocolo que, juntamente à subcamada MAC, implementa as funções necessárias da camada de enlace. � O padrão define como é realizado o controle de erro, de fluxo e a multiplexação, de forma a realizar os tipos de serviço orientados a conexão e sem conexão. 10 PUC-Rio / DI TeleMídia Camada de Controle de Enlace Lógico IEEE 802.2 � Independência da camada MAC � LSAPs � Multiplexação � Controle de erros e de fluxo � Tipos de operação � Classes de procedimentos Logical Link Control (LLC) Medium Access Control (MAC) Physical Layer (PHY) PUC-Rio / DI TeleMídia Camadas, Protocolos e Interfaces Nív el Superior LLC MAC Físico LLC MAC Físico Protocolo LLC Interface LLC/Nív el Superior Interface LLC/MAC Interface LLC/MAC Nív el Superior Interface LLC/Nív el Superior 11 PUC-Rio / DI TeleMídia IEEE 802.2 - Multiplexação MAC Físico MAC Físico ( )( )( ) ( )( ) Endereço LLC (SAP) 1 2 3 Usuário 1 2 Rede Usuário Usuário Usuário Usuário LLC LLC Endereço MAC PUC-Rio / DI TeleMídia Formato da Unidade de Dados do Protocolo LLC (PDU LLC) 8 Bits 8 Bits 8 ou 16 Bits N x 8 Bits DSAP SSAP Controle Dados DSAP: endereço do ponto de acesso ao serv iço LLC destino SSAP: endereço do ponto de acesso ao serviço LLC origem 12 PUC-Rio / DI TeleMídia Especificação da Interface LLC/Nível Superior � Operação Tipo 1 • serviço semconexão e semreconhecimento • transferências de dados ponto a ponto, entre grupos, ou por difusão � Operação Tipo 2 • serviço orientado a conexão (controle de fluxo, sequenciação e recuperação de erros) • conexões ponto a ponto � Operação Tipo 3 (Addendum 2) • serviço sem conexão e co m reconhecimento (sequenciação e recuperação de erros) • conexões ponto a ponto PUC-Rio / DI TeleMídia Classes de Serviço IEEE 802.2 � Classe I • Operação Tipo 1 � Classe II • Operação Tipo 1 e Tipo 2 � Classe III • Operação Tipo 1 e Tipo 3 � Classe IV • Operação Tipo 1, 2 e 3 13 PUC-Rio / DI TeleMídia Serviço Sem Conexão e Sem Reconhecimento Rede LLC MAC Físico )( ( ) SSAP LLC MAC Físico ( ))( DL_DATA.request DL_DATA.indication DSAP 21 PUC-Rio / DI TeleMídia Formato da Unidade de Dados do Protocolo LLC (PDU LLC) 8 Bits 8 Bits 8 ou 16 Bits N x 8 Bits DSAP SSAP Controle Dados DSAP: endereço do ponto de acesso ao serv iço LLC destino SSAP: endereço do ponto de acesso ao serviço LLC origem 14 PUC-Rio / DI TeleMídia Campo de Controle da PDU LLC Operação Tipo 1 � M - bits identificadores de comando não-numerado � P/F - (P = 1) solicitação de resposta imediata e (F = 1) indicador de resposta de solicitação imediata Formato Não-Numerado (U) 1 1 M M P/F M M M PUC-Rio / DI TeleMídia Tipo 1 Comandos Respostas UI XID TEST XID TEST Comandos e Respostas LLC Operação Tipo 1 � UI transmissão de informação não- numerada � XID troca de identificação � TEST co mando usado para testar uma conexão LLC-LLC 15 PUC-Rio / DI TeleMídia Serviço Com Conexão Rede LLCLLC MAC Físico MAC Físico DL_CONNECT.request DL_CONNECT.indication DL_CONNECT.response ( )( )( ) ( )( )( ) SAPs Destino e Origem 3 2 4 DL_CONNECT.confirm 1 PUC-Rio / DI TeleMídia Comandos e Respostas LLC Operação Tipo 2 � I transmissão de informação numerada � RR indica que a LLC está pronta para receber PDUs I � RNR indica impossibilidade de recepção de PDUs I � REJ solicita a retransmissão das PDUs I a partir de N(R) � SABME estabelece uma conexão com LLC destino no modo balanceado assíncrono � DISC encerra conexão de enlace no modo balanceado assíncrono � UA reconhecimento de recebimento e aceitação de comandos SABME e DISC � DM indica que a estação está desconectada da conexão de enlace � FRMR indica rejeição de PDU que não pode ser corrigida por retransmissão Tipo 2 Comandos Respostas I RR RNR REJ SABME DISC I RR RNR REJ UA DM FRMR 16 PUC-Rio / DI TeleMídia Formato do Campo de Controle N(S) - número de sequência da PDU transmitida N(R) - número de sequência da PDU esperada S - bits de função de supervisão M - bits identificadores de comando não-numerado X - bits reservados P/F - (P = 1) solicitação de resposta imediata e (F = 1) indicador de resposta de solicitação imediata Formato de transferência de Informação (I) Formato de Supervisão (S) Formato Não-Numerado (U) 1 2 3 4 5 6 7 8 9 10-16 0 N(S) P/F N(R) 1 0 S S X X X P/F N(R) 1 1 M M P/F M M M PUC-Rio / DI TeleMídia LLC2 0 0 N(S) N(R) LLC1 0 0 N(S) N(R) LLC2 0 1 N(S) N(R) LLC1 1 0 N(S) N(R) LLC2 1 1 N(S) N(R) LLC1 1 1 N(S) N(R) Troca de Quadros I LLC2 2 1 N(S) N(R) LLC1 1 2 N(S) N(R) LLC2 3 1 N(S) N(R) LLC1 1 3 N(S) N(R) LLC2 3 2 N(S) N(R) LLC1 2 3 N(S) N(R) 2 1 I 0 0 Bla Bla.. D O T N(S) N(R) Dados 1 2 I 0 1 Bla Bla.. D O T N(S) N(R) Dados 1 2 I 1 1 Bla Bla.. D O T N(S) N(R) Dados 1 2 I 2 1 Bla Bla.. D O T N(S) N(R) Dados 2 1 I 1 3 Bla Bla.. D O T N(S) N(R) Dados 17 PUC-Rio / DI TeleMídia LLC2 0 0 N(S) N(R) LLC1 0 0 N(S) N(R) LLC2 0 1 N(S) N(R) LLC1 1 0 N(S) N(R) LLC2 1 1 N(S) N(R) LLC1 1 0 N(S) N(R) LLC2 2 1 N(S) N(R) LLC1 1 0 N(S) N(R) LLC2 1 1 N(S) N(R) LLC1 1 1 N(S) N(R) Controle de Erros 2 1 I 0 0 aaaaa D O T N(S) N(R) Dados 1 2 I 0 1 bbbbb D O T N(S) N(R) Dados LLC2 0 1 N(S) N(R) LLC1 1 0 N(S) N(R) 2 1 Rej 0 D O T N(R) 1 2 I 0 1 bbbbb D O T N(S) N(R) Dados 1 2 I 1 1 ccccc D O T N(S) N(R) Dados PUC-Rio / DI TeleMídia LLC2 0 0 N(S) N(R) LLC1 0 0 N(S) N(R) LLC2 0 1 N(S) N(R) LLC1 1 0 N(S) N(R) LLC2 0 2 N(S) N(R) LLC1 2 0 N(S) N(R) LLC2 0 2 N(S) N(R) LLC1 2 0 N(S) N(R) LLC2 0 2 N(S) N(R) LLC1 2 0 N(S) N(R) LLC2 0 3 N(S) N(R) LLC1 3 0 N(S) N(R) Controle de Fluxo 2 1 I 0 0 aaaaa D O T N(S) N(R) Dados 1 2 RR 2 D O T N(R) 2 1 I 2 0 ccccc D O T N(S) N(R) Dados 1 2 RNR 2 D O T N(R) 2 1 I 1 0 bbbbb D O T N(S) N(R) Dados 18 PUC-Rio / DI TeleMídia Drivers da Placa de Interface de Rede PUC-Rio / DI TeleMídia Interação entre Driver de Protocolo e Placa de Interface de Rede � Interação direta � Interação através de um driver de placa não padrão � Interação através de um driver de placa padrão 19 PUC-Rio / DI TeleMídia Interação Direta � Driver de protocolo comunicando diretamente com o hardware da placa � Driver de Protocolo muito eficiente � Driver de Protocolo totalmente dependente das características da placa (Hardware, Protocolo MAC,...) Driver de Protocolo Interface da Placa PUC-Rio / DI TeleMídia Driver de Placa não Padrão � Driver de protocolo comunicando com a placa através de um driver não padrão � Driver de Protocolo independente das características da placa � Driver de Protocolo totalmente dependente da interface proprietária oferecida pelo Driver da Placa Interface da Placa Driver da Placa Interface proprietária Driver de Protocolo 20 PUC-Rio / DI TeleMídia Drivers de Placa � Normalmente fornecido juntamente com a Placa de Interface de Rede � Esconde detalhes do hardware da placa � Interface de acesso aos serviços de comunicação oferecidos pela placa � Interfaces padronizadas • PD Packet Driver • NDIS Network Driver Interface Specification • ODI Open Data-Link Interface • ASI Adapter Support Interface � Conversores de interfaces (Shim Drivers) PUC-Rio / DI TeleMídia Driver de Placa Padrão (PD, NDIS, ODI, ASI) � Driver de Protocolo comunicando com a placa através de um driver padrão � Driver de Protocolo totalmente independente das características da placa utilizada, porém dependente da interface oferecida pelo Driver da Placa Interface padronizada Interface da Placa (PD,NDIS,ODI,ASI) Driver de Protocolo Driver da Placa 21 PUC-Rio / DI TeleMídia Network Driver Interface Specification � Desenvolvido pela Microsoft e 3COM � Oferece independência das Camada MAC e Física � Oferece suporte a várias placas de interface de rede � Oferece suporte a várias pilhas de protocolo (Arquitetura Multiprotocolar) � Controla as interações entre as placas de rede e as pilhas de protocolos através da subcamada VECTOR � Entrega de pacotes sequencial às pilhas de protocolo PUC-Rio / DI TeleMídia Arquitetura Multiprotocolar NDIS Enlace Modelo OSI Camadas Superiores Físico Físico MAC IEEE 802.X LLC IEEE 802.2 Modelo IEEE NDIS MAC Driv er NDIS MAC Driv er Pilha de Protocolos A Pilha de Protocolos B VECTOR PROTOCOL.INI [zka] sxs ssa [asa] xs sd 22 PUC-Rio / DI TeleMídia Funcionamento da Subcamada VECTOR Pilha de Protocolos A Driver da Placa Pilha de Protocolos B Pilha de Protocols C Subcamada VECTOR 1 32 Ordem de tentativaOrdem de tentativa de entrega dos pacotes PUC-Rio / DI TeleMídia Open Data-Link Interface � Desenvolvido pela Novell e Apple � Oferece independência das Camada MAC e Física � Reconhece vários tipos de quadros ethernet e token-ring � Oferece suporte a várias placas de interface de rede (Board Number) � Oferece suporte a várias pilhas de protocolo (Arquitetura Multiprotocolar) � Controla as interações entre as placas de rede e as pilhas de protocolos, através da subcamada LSL � Entrega de pacotes diretamente à pilha de protocolos correta 23 PUC-Rio / DI TeleMídia Arquitetura Multiprotocolar ODI Enlace Modelo OSI Camadas Superiores Físico Físico MAC IEEE 802.X LLC IEEE 802.2 Modelo IEEE MLID MAC Driv er MLID MAC Driv er Pilha de Protocolos A Pilha de Protocolos B Link Support Layer NET.CGF [zka] sxs ssa [asa] xs sd PUC-Rio / DI TeleMídia Funcionamento da Subcamada LSL Stack ID = 1 Protocol ID = 0800 TCP/IP Pilhas de Protocolos Link Support Layer Board Number = 1 Media ID = 2 Media ID = 10 Drivers MLID Stack ID = 2 Protocol ID = 8137 IPX/SPX Stack ID = 3 Protocol ID = 0800 Board Number = 2 Media ID = 4 NET.CFG 24 PUC-Rio / DI TeleMídia Perguntas � Quando é mais eficiente realizar a correção de erros por retransmissão e quando por redundância na própria informação? � Explique o procedimento de controle de erro“bit alternado”. Discuta a eficiência do procedimento. � O que é janela de retransmissão? Em uma janela n, porque é necessário termos n+1 numerações diferentes? � Explique a diferença entre os procedimentos de controle de erro janela n com retransmissão integral (go-back-n) e janela n com retransmissão seletiva (selective repeat). � Cite duas formas de realizar o controle de fluxo. � Como funciona o controle de fluxo por quadros especiais? � Como funciona o controle de fluxo por janela deslizante? � Por que não se deve misturar a janela de controle de fluxo com a janela de controle de erro? PUC-Rio / DI TeleMídia Perguntas � Para que serve a multiplexação na camada de enlace? Como ela pode ser realizada? � O que é um SAP? Como é composto o endereço de um SAP de enlace de forma hierárquica e como é feito no caso de endereçamento horizontal? Qual a vantagem de se ter um endereço hierárquico? � Quais as funcionalidades existentes no serviço LLC sem conexão e sem reconhecimento? � Quais as funcionalidades existentes no serviço LLC com conexão? � Como é realizado o controle de erro no protocolo LLC? Como são enviados os reconhecimentos? O protocolo é de janela deslizante? Se sim, é com repetição seletiva ou retransmissão integral? � O protocolo LLC com conexão pode funcionar sem o quadro REJ? Para que serve este quadro? 25 PUC-Rio / DI TeleMídia Perguntas � O que vem a ser driver de protocolo e driver de placa? � Quais as formas de integração entre um driver de protocolo e um driver de placa? Discuta a eficiência de cada forma versus a independência de plataforma. PUC-Rio / DI TeleMídia Para as próximas questões siga as seguintes orientações: � Considere dois pontos A e B ligados através de um enlace. Considere também apenas os quadros do tipo informação (I) e três tipos de quadros supervisor: RECEIVE READY (RR), RECEIVE NOT READY (RNR) e REJECT (REJ). A janela do protocolo é de tamanho 3. Considere também que o controle de erro utiliza o método “repetição seletiva (seletive repeat)”. � Todas as mensagens levam exatamente 1s para serem transmitidas e chegarem ao destino, e todas as transmissões acontecem em múltiplos de 1s, isto é, nunca acontecem em uma fração de segundo. Ao receber um quadro de informação, o receptor verifica se existe algum quadro de informação para ser enviado naquele instante (todo o processamento nas estações podem ser considerados instantâneos, isto é, levam 0s). Se houver, ele manda a confirmação (N(R)= número do próximo quadro esperado) de carona no quadro de informação. Se não, ele espera no máximo 4s para mandar o N(R). Quadros do tipo RNR são enviados imediatamente, quando uma mensagem chega e não encontra mais buffers disponíveis. O "timeout" é de 8s. Nenhuma mensagem, por motivo algum, espera mais do que o “timeout” para ser retransmitida. Quando é necessário a retransmissão de várias mensagens, elas são retransmitidas uma após outra, com intervalo de 1s. � Para cada situação, desenhe um diagrama ilustrando a situação (um eixo de tempo para A e outro para B, como exemplificado na figura) usando a seguinte convenção: • I, N(S), N(R) • RR, N(R) • RNR, N(R), • REJ, N(R) 0s + I,0,0 + 0s + + 1s + + 2s + + 3s + + 4s + + 5s 26 PUC-Rio / DI TeleMídia Questões � Situação 1: iniciado o sistema, suponha que mensagens cheguem para transmissão em A em 0s; 1s; 2s; 3s e 7s ; e em B em 8s. Considere ainda que o nó B consome todos os seus buffers de uma só vez no instante t=5,5s. � Situação 2: iniciado o sistema, suponha que mensagens cheguem para transmissão em A em 0s; 1s; 6s; e 7s. Considere ainda que o nó B consome todos os seus buffers de uma só vez no instante t=8,5s. � Situação 3: iniciado o sistema, suponha que mensagens cheguem para transmissão em A em 0s; 1s; 6s; e 8s. Considere que as mensagens emitidas pelo nó B entre 8,5s e 10s chegam com erro no nó A. PUC-Rio / DI TeleMídia Questões � Situação 4: iniciado o sistema, suponha que mensagens cheguem para transmissão em A em 0s; 1s; 2s; e 3s. Considere que as mensagens emitidas pelo nó A entre 0,5s e 1,5s chegam com erro no nó B. � Situação 5: iniciado o sistema, suponha que mensagens cheguem para transmissão em A em 1s; 2s; 4s. Considere que as mensagens emitidas pelo nó A entre 1,5s e 3,5s chegam com erro no nó B. Considere também que as mensagens emitidas pelo nó B entre 4s e 7s chegam com erro no nó A. � Situação n: Imagine vários cenários como os exemplificados anteriormente e trace os diagramas de mensagens correspondentes. 27 PUC-Rio / DI TeleMídia Gateways PUC-Rio / DI TeleMídia Roteadores e Gateways � Quando mensagens são deslocadas de uma rede para outra, conversões de protocolo se fazem necessárias. Esse procedimento é realizado pelos Gateways. � Os gateways são classificados conforme o maior nível de protocolo convertido. 28 PUC-Rio / DI TeleMídia Repetidores Ethernet Ethernet Repetidor PUC-Rio / DI TeleMídia Repetidores Aplicação Apresentação Sessão Transporte Rede Enlace Físico 1 Aplicação Apresentação Sessão Transporte Rede Enlace Físico 2Físico 1 Físico 2 Repetidor 29 PUC-Rio / DI TeleMídia Repetidores � Em redes em anel onde a estação é a responsável pela retirada dos próprios quadros, caberá ao repetidor a retirada dos quadros. � Em redes que utilizam protocolos baseados em contenção, caberá ao repetidor também a função de detecção de colisão em um segmento, e a sinalização, no(s) outro(s) segmento(s), da ocorrência da colisão. � Não pode haver um caminho fechado entre dois repetidores quaisquer da rede. � Um tráfego extra inútil é gerado pelo repetidor quando os pacotes repetidos não se destinam às redes que interligam. PUC-Rio / DI TeleMídia Pontes Token Ring Ethernet Ponte 30 PUC-Rio / DI TeleMídia Pontes Aplicação Apresentação Sessão Transporte Rede Enlace 1 Físico 1 Aplicação Apresentação Sessão Transporte Rede Enlace 2 Físico 2Físico 1 Físico 2 Enlace 1 Enlace 2 Ponte PUC-Rio / DI TeleMídia Pontes � Em redes em anel onde a estação é a responsável pela retirada dos próprios quadros, caberá à ponte a retirada dos quadros. � No caso de haver caminhos fechados na rede, o número de duplicações de quadros é finito e igual ao número de caminhos fechados existentes entre as estações de origem e de destino, e por serem finitas, tais duplicações podem ser tratadas. � Segmentação e remontagem. Não há solução; quadros grandes demais para serem encaminhados devem ser descartados. � Ligação de redes que suportam diferentes esquemas de prioridade: o esquema é perdido. 31 PUC-Rio / DI TeleMídia O Padrão IEEE 802.1D - Pontes Transparentes � A denominação transparente deve-se ao fato das LANs não sofrerem nenhuma modifi cação ao serem interconectadas por esse tipo de ponte. � As pontes transparentes operam com base em uma tabela de rotas com pares: endereço de destino/porta de saída. � As pontes transparentes operam em modo promíscuo. Ao receber um quadro, a ponte verifica na tabela de rotas se o endereço de destino está associado a uma porta diferente da porta de entrada. • Se o endereço não for encontrado na tabela, o quadro é retransmitido através de todas as portas exceto aquela através da qual ele entrou. • Se for encontrada na tabela de rotas uma associação do endereço de destino com uma porta diferente da de entrada, o quadro é retransmitido por essa porta. PUC-Rio / DI TeleMídia Pontes Transparentes - Exemplo A B C D E F B1 B2porta1 porta1porta2 porta2 LAN1 LAN2 LAN3 B1 E A Dados ED EO Estação Porta A 1 B2 Estação Porta E A 32 PUC-Rio / DI TeleMídia Pontes Transparentes - Exemplo A B C D E F B1 B2porta1 porta1porta2 porta2 LAN1 LAN2 LAN3 B1 E A Dados ED EO Estação Porta A 1 B2 Estação Porta A 1 E A PUC-Rio / DI TeleMídia Pontes Transparentes - Exemplo A B C D E F B1 B2porta1 porta1porta2 porta2 LAN1 LAN2 LAN3 B1 E A Dados ED EO Estação Porta A 1 B2 Estação Porta A 1 E A 33 PUC-Rio / DI TeleMídia Pontes Transparentes - Exemplo A B C D E F B1 B2porta1 porta1porta2 porta2 LAN1 LAN2 LAN3 B1 A B Dados ED EO Estação Porta A 1 B 1 B2 Estação Porta A 1 A B PUC-Rio / DI TeleMídia Pontes Transparentes - Exemplo A B C D E F B1 B2porta1 porta1porta2 porta2 LAN1 LAN2 LAN3 B1 A B Dados ED EO Estação Porta A 1 B 1 B2 Estação Porta A 1 A B 34 PUC-Rio / DI TeleMídia Pontes Transparentes - Exemplo A B C D E F B1 B2porta1 porta1porta2 porta2 LAN1 LAN2 LAN3 B1 F E Dados ED EO Estação Porta A 1 B 1 B2 Estação Porta A 1 E 2 F E PUC-Rio / DI TeleMídia Pontes Transparentes - Exemplo A B C D E F B1 B2porta1 porta1porta2 porta2 LAN1 LAN2 LAN3 B1 F E Dados ED EO Estação Porta A 1 B 1 E 2 B2 Estação Porta A 1 E 2 F E F E 35 PUC-Rio / DI TeleMídia Pontes Transparentes - Exemplo A B C D E F B1 B2porta1 porta1porta2 porta2 LAN1 LAN2 LAN3 B1 F E Dados ED EO Estação Porta A 1 B 1 E 2 B2 Estação Porta A 1 E 2 F E F E PUC-Rio / DI TeleMídia Pontes Transparentes - Exemplo A B C D E F B1 B2porta1 porta1porta2 porta2 LAN1 LAN2 LAN3 B1 D C Dados ED EO Estação Porta A 1 B 1 E 2 C 2 B2 Estação Porta A 1 E 2 C 1 D C 36 PUC-Rio / DI TeleMídia Pontes Transparentes - Exemplo A B C D E F B1 B2porta1 porta1porta2 porta2 LAN1 LAN2 LAN3 B1 D C Dados ED EO Estação Porta A 1 B 1 E 2 C 2 B2 Estação Porta A 1 E 2 C 1 D C D C D C PUC-Rio / DI TeleMídia NÃO Recebeu quadro sem erro na porta X ED encontrado na tabela? Porta de saída = X? Retransmite pacote na porta de saída adequada Retransmite pacote em todas as portas exceto a porta X EO encontrado na tabela? Inclui EO, porta X e o tempo na tabelaatualiza porta X e tempo na tabela FIM Retransmissão Aprendizado NÃO NÃO SIM SIM SIM Pontes Transparentes 37 PUC-Rio / DI TeleMídia O Padrão IEEE 802.1D - Pontes Transparentes � No início a tabela de rotas está vazia. Quando um quadro chega através de uma porta, seu endereço de origem é usado para atualizar a tabela de rotas. Se não existir nenhuma entrada na tabela com esse endereço, é criada uma entrada associ ando-o à porta através da qual ele entrou. � Periodicamente, um processo varre a tabela e remove todas as entradas que não foram acessadas recentemente. � O algoritmo usado pelas pontes é o de Baran, e funciona bem quando não existem rotas alternativas na inter-rede. PUC-Rio / DI TeleMídia � O problema é contornado com a utilização do seguinte resultado da teoria dos grafos: “ para todo grafo conectado, consistindo em nós e arcos conectando pares de nós (as redes são os nós, e as pontes, os arcos do grafo), existe uma árvore de arcos que estende-se sobre o grafo (spanning tree) que mantém a conectividade do grafo, porém não contém caminhos fechados”. � O padrão IEEE 802.1D define um algoritmo que deriva automática e dinamicamente a spanning tree de uma inter-rede. � Periodicamente, cada ponte transmite uma mensagem por difusão em todas as redes às quais está conectada, com sua identificação. Um algoritmo distribuído seleciona a ponte que vai ser a raiz da árvore (por exemplo, a que possui o menor número de identificação). Uma vez determinada a raiz, a árvore é construída comcada ponte determinando o menor caminho para a raiz. Emcaso de empate, é escolhido o caminho cuja ponte tiver o menor identificador. O Padrão IEEE 802.1D - Pontes Transparentes 38 PUC-Rio / DI TeleMídia Pontes com Roteamento na Origem � A estação de origem escolhe o caminho que o quadro deve seguir e inclui a informação de roteamento no cabeçalho do quadro. • A informação de roteamento é construída da seguinte forma: cada LAN possui um identificador único, e cada ponte possui um identificador único no contexto das redes às quais está conectada. • Uma rota é uma seqüência de pares (identificador de rede, identificador de ponte). O primeiro bit do endereço de origem dos quadros cujo destino não está na mesma rede da estação de origem é igual a 1. � Ao escutar um quadro cujo primeiro bit do endereço de origem é igual a 1, a ponte analisa a informação de roteamento do quadro. Se o identificador da LAN através da qual el e chegou é seguido pelo identificador da ponte em questão, ela retransmite o quadro na rede cujo endereço vem depois do seu identi ficador na informação de roteamento do quadro. PUC-Rio / DI TeleMídia Gateways de Nível 3 � Gateways conversores de meio: suas funções resumem-se em receber um pacote do nível inferior, tratar o cabeçalho inter- redes do pacote, descobrindo o roteamento necessário, construir novo pacote com novo cabeçalho inter-redes, se necessário, e enviar esse novo pacote ao próximo destino, segundo o protocolo da rede local em que este se encontra. Esse tipo de gateway da camada de rede é também chamado de roteador. � Gateways tradutores de protocolos atuam traduzindo mensagens de uma rede, em mensagens da outra rede, com a mesma semântica de protocolo. Por exemplo, o open em uma rede poderia ser traduzido por um call request em outra ao passar pelo gateway. 39 PUC-Rio / DI TeleMídia Roteador Aplicação Apresentação Sessão Transporte Rede 1 Enlace 1 Físico 1 Aplicação Apresentação Sessão Transporte Rede 2 Enlace 2 Físico 2Físico 1 Físico 2 Rede 1 Rede 2 Enlace 1 Enlace 2 Roteador PUC-Rio / DI TeleMídia Gateway de Aplicação Aplicação 1 Apresentação 1 Sessão 1 Transporte 1 Rede 1 Enlace 1 Físico 1 Aplicação 2 Apresentação 2 Sessão 2 Transporte 2 Rede 2 Enlace 2 Físico 2 Aplicação 1 Apresentação 1 Sessão 1 Transporte 1 Rede 1 Enlace 1 Físico 1 Aplicação 2 Apresentação 2 Sessão 2 Transporte 2 Rede 2 Enlace 2 Físico 2 Gateway conv erte o protocolo de Aplicação 1 no protocolo de Aplicação 2 e v ice-v ersa 40 PUC-Rio / DI TeleMídia Nível de Rede PUC-Rio / DI TeleMídia estações comutadores gateways 41 PUC-Rio / DI TeleMídia estações comutadores gateways PUC-Rio / DI TeleMídia Conceito de Inter-rede Rede 2 E EInter-rede Rede 5Rede 4 Rede 3 Rede 1 E E E E E E G G G G G Host 42 PUC-Rio / DI TeleMídia Conceito de Inter-rede Rede 2 E E Inter-rede Rede 5 Rede 4 Rede 3 Rede 1 E E E E E E G G G G G Host PUC-Rio / DI TeleMídia Conceito de Inter-rede Rede 2 E EInter-rede Rede 5Rede 4 Rede 3 Rede 1 E E E E E E G G G G G Host 43 PUC-Rio / DI TeleMídia Organização Interna do Nível de Rede � Uma das principais funções do nível de rede é o roteamento, desde a estação origem até a estação de destino. � Quando as funções do nível de rede são executadas através da combinação de várias sub-redes distintas, a especificação das funções de roteamento é facilitada pelo uso de subcamadas. As subcamadas são empregadas para separar as funções de roteamento das sub-redes individuais das funções de roteamento entre sub-redes (roteamento inter-redes). � Por esse motivo, o nível de rede do RM-OSI [ISO 87a] foi dividido em três subcamadas. PUC-Rio / DI TeleMídia Nível de Rede Sub-Rede A Sub-Rede B SNAcP SNDCP SNDCP SNAcP SNICP Subcamada de Acesso à Sub-Rede Subcamada Dependente da Sub-Rede Subcamada Independente da Sub-RedeSNICP Serviço de Rede 44 PUC-Rio / DI TeleMídia Subcamada de Acesso a Sub-Rede � A subcamada de acesso à sub-rede é dependente da tecnologia de sub-rede específica. As funções dessa subcamada incluem a transferência de dados dentro da sub- rede, incluindo as funções de roteamento e retransmissão de informações que trafegam dentro da sub-rede. � Os protocolos de acesso à sub-rede (Subnetwork Access Protocol SNAcP) podem variar muito de uma rede para outra. � Exemplos: • o protocolo X.25 de uma rede pública. • Em uma rede local o SNAcP é geralmente inexistente. PUC-Rio / DI TeleMídia Subcamada Independente da Sub-Rede � A subcamada independente da sub-rede é responsável pelo fornecimento do serviço de rede entre dois sistemas finais. � O protocolo de convergência independente da sub- rede (Subnetwork Independent Convergence Protocol SNICP) só é usado quando os sistemas finais estão localizados em sub-redes distintas. � A principal tarefa da subcamada independente da sub-rede é o roteamento entre redes. � Exemplo de protocolo inter-rede: o protocolo IP da Internet. 45 PUC-Rio / DI TeleMídia Subcamada Dependente da Sub-Rede � Resumindo, o SNAcP torna possível a transferência de dados dentro de uma sub-rede e o SNICP, com base no serviço de rede OSI fornecido em sub-redes interligadas, realiza as adaptações necessárias à conexão de sistemas finais localizados em sub-redes distintas. � A função da subcamada dependente da sub-rede é harmonizar sub-redes que oferecem serviços diferentes apresentando uma interface única para o SNICP. PUC-Rio / DI TeleMídia Funções do Nível de Rede � Multiplexação. � Endereçamento. � Mapeamento entre endereços. � Roteamento. � Segmentação e remontagem. � Controle de erros. � Controle de fluxo. � Controle de congestionamento. 46 PUC-Rio / DI TeleMídia Funções do Nível de Rede � As funções de controle de erro e de fluxo são similares às realizadas no nível de enlace, só que o controle é realizado em todo o caminho da subrede (no SNAcP) ou em todo o caminho inter-rede (no SNICP). � A multiplexação também é semelhante ao realizado no nível de enlace e visa permitir que mais de um usuário de transporte utilize do mesmo ponto de acesso (SAP) de enlace. PUC-Rio / DI TeleMídia Endereçamento � Não importa a camada de protocolo que estamos falando, o endereçamento dos pontos de acesso a serviços de uma camada K (SAPs da camada K) deve ser completamente independente dos demais endereçamentos dos outros níveis de protocolo. � Basicamente dois tipos de endereçamento são possíveis: o hierárquico e o horizontal. 47 PUC-Rio / DI TeleMídia Endereçamento Hierárquico � No endereçamento hierárquico o endereço de uma entidade é constituído de acordo com os endereços correspondentes aos vários níveis de hierarquia de que ela faz parte. � Um exemplo comum, no nível de rede, é um endereço de SAP de rede formado pelo número da sub-rede a que pertence, pelo número da estação dentro dessa sub-rede e pelo número da porta associada (SAP de sub-rede). • O IP (Internet Protocol) da Arpanet é um exemplo de utilização de endereço hierárquico, onde a identificação de um SAP de rede (único por estação) é formada pelo endereço da rede (sub-rede) e pelo endereço da estação. • O endereço hierárquico é também o método sugerido pelo ITU-T, através da recomendação X.121, para interconexão de redes públicas de pacotes. Nessa recomendação os endereços são números decimais formados por três campos, um código do país (três dígitos), um código para a rede (um dígito no máximo 10 redes) e um campo para oendereçamento dentro da rede (10 dígitos). PUC-Rio / DI TeleMídia Endereçamento Horizontal � No endereçamento horizontal, o endereço de uma entidade de protocolo não têm relação alguma com os vários níveis de hierarquia de que ela faz parte. � Um exemplo comum desse tipo de endereçamento seriam os endereços globalmente administrados, constituídos pelo número de assinatura do usuário, como os utilizados pelo padrão IEEE 802 , para o nível de enlace. 48 PUC-Rio / DI TeleMídia Endereçamento � Considerações sobre o roteamento parecem indicar vantagens na utilização de endereços hierárquicos, uma vez que estes contêm informações explícitas sobre o local onde se localizam as entidades, informações que podem ser usadas quando necessário. � Já o endereço horizontal, por ser independente da localização, vai facilitar os esquemas de reconfiguração por permitir uma mobilidade das entidades sem renumeração das mesmas. PUC-Rio / DI TeleMídia Mapeamento de Endereço � O mapeamento de endereço é a função que determina o endereço do SAP de um nível a partir do endereço do SAP do nível superior a quem oferece seus serviços. � O mapeamento pode ser direto através de uma tabela de translação, ou através de um conjunto de regras executadas por um protocolo de resolução de endereços. � O protocolo ARP da rede Internet é um exemplo de protocolo de resolução de endereços do nível de rede (sub-rede) para o nível de enlace. 49 PUC-Rio / DI TeleMídia estações comutadores gateways PUC-Rio / DI TeleMídia Tabela de Rotas � A implementação do roteamento exige uma estrutura de dados que informe os possíveis caminhos e seus custos, a fim de que se possa decidir qual o melhor. Diversos métodos têm sido utilizados para a manutenção da estrutura de dados. � No encaminhamento por rota fixa, a tabela (estrutura de dados) uma vez criada, não é mais alterada. � No encaminhamento adaptativo, a rota é escolhida de acordo com a carga na rede. Nas tabelas de rotas, são mantidas informações sobre o tráfego (como por exemplo o retardo sofrido em um determinado caminho), que são consultadas para a escolha do caminho mais curto (por exemplo, o de menor atraso). As tabelas devem ser periodicamente atualizadas. 50 PUC-Rio / DI TeleMídia Atualização das Tabelas As tabelas devem ser periodicamente atualizadas, podendo tal atualização ser realizada de vários modos: � No modo centralizado cada nó envia a um ponto central da rede as informações locais sobre a carga. Essas informações são utilizadas pelo ponto central para o cálculo das novas tabelas, que são então enviadas aos gateways e demais nós. � No modo isolado a atualização é realizada com base nas filas de mensagens para os diversos caminhos e outras informações locais. � No modo distribuído cada nó envia periodicamente aos outros nós, incluindo os gateways, as informações locais sobre a carga na rede. Essas informações são utilizadas para o cálculo da nova tabela. PUC-Rio / DI TeleMídia Atualização das Tabelas � Existem diversos algoritmos para a computação do “caminho mais curto” entre dois nós da rede. A definição de “caminho mais curto”, depende da qualidade de serviço que se deseja. � O comprimento de um caminho pode ser medido pelo número de saltos, isto é, o número de nós intermediários pelos quais deve passar o pacote até chegar ao destino. Outra medida é a distância geográfica em metros. Ainda outra medida poderia ser o retardo de transferência do pacote. � Os vários algoritmos são implementados nos diversos protocolos de atualização da tabela de rotas, entre eles o RIP, o OSPF e o DVRP (da Internet). 51 PUC-Rio / DI TeleMídia Roteamento Centralizado � No roteamento centralizado existe, em algum lugar da rede, um Centro de Controle de Roteamento (CCR) responsável pelo cálculo das tabelas de rotas. � Problemas: • Para se adaptar a um tráfego mutável, o cálculo das tabelas deve ser realizado com muita freqüência, o que pode exigir um processamento muito grande. • Tráfego elevado nas linhas que levamao CCR. • Confiabilidade: uma falha no CCR é crítica. • Inconsistências: os nós receberão suas tabelas em tempos diferentes, devido a retardos diferentes sofridos pelas mensagens que as transportaram. PUC-Rio / DI TeleMídia Roteamento Isolado � Algoritmo de Baran: um nó ao receber um pacote tenta se livrar dele imediatamente pelo enlace que possui a fila mais curta no momento. � Baran combinado com roteamento de rota fixa: até um certo limiar do tamanho das filas, o pacote deve ser encaminhado para a menor fila; depois de um certo limiar, deve ser utilizada a rota estática. 52 PUC-Rio / DI TeleMídia Roteamento Isolado - Baran � Leva em conta que cada pacote deve incluir o nó de origem e um contador de saltos (nós intermediários por onde trafegou). � Ao receber um pacote, o nó sabe a que distância o nó de origem está, a partir do enlace de chegada. Se na sua tabel a o nó de origem está a uma distância maior, ele deve atualizar a tabela. � Passado um determinado tempo, cada nó possuirá o caminho mais curto para qualquer outro nó. � Como cada nó só registra a troca para melhor, de tempos em tempos ele deve reiniciar o processo, de forma que enlaces que caiam ou fiquem sobrecarregados não afetem a confiabilidade da tabela. � Se as tabelas forem reiniciadas em um período pequeno, pacotes podem ter de ser transferidos por rotas desconhecidas. Se forem reiniciadas em um período longo, os pacotes podem ser transmitidos em rotas congestionadas ou com enlaces em falha. PUC-Rio / DI TeleMídia Roteamento Isolado � Ainda um outro algoritmo de roteamento isolado, simples porém de grande custo devido à quantidade de pacotes gerados, exige que um pacote ao chegar em um nó da rede, seja enviado por todos os enlaces de saída do nó, exceto aquele por onde chegou (inundação). 53 PUC-Rio / DI TeleMídia Roteamento Distribuído � Quando um nó quer descobrir o caminho mais curto (aqui exemplificado pelo caminho de menor retardo) até um nó de destino, ele envia um pacote de requisição por difusão (em todos os seus enlaces) na rede, com um campo contendo o endereço do nó de destino e um campo contendo um caminho, inicialmente comseu endereço. � Cada nó intermediário ao receber o pacote de difusão verifica se o campo caminho contémseu endereço. Se não contiver, o nó acrescenta ao caminho seu endereço e o difunde por todos os seus enlaces. Em caso contrário, simplesmente descarta o pacote. � O primeiro pacote recebido pelo nó dedestino contémno campo caminho a rota de menor retardo. O nó de destino envia então, como resposta ao pacote recebido, um outro pacote contendo essa rota (por exemplo, através da rota reversa ou uma rota que no momento lhe pareça a de menor retardo entre o destino/nova origeme a origem/novo destino). � Um nó deve periodicamente enviar pacotes de difusão para descobrimento das rotas. Quanto menor o período, mais adaptável às flutuações de tráfego é o algoritmo. Quanto maior o período, menor é o tráfego que o algoritmo gera na rede. Uma solução de compromisso deve ser encontrada. PUC-Rio / DI TeleMídia Roteamento Hierárquico � No roteamento hierárquico os nós são divididos em regiões, com cada nó capaz de manter as informações de rotas das regiões a que pertence. � Devemos notar que a subdivisão da camada de rede no RM-OSI torna natural separar cada rede como uma região. � Para muitas redes, no entanto, essa hierarquia em dois níveis é insuficiente, podendo ser necessário agrupar regiões em super-regiões e assim sucessivamente. 54 PUC-Rio / DI TeleMídia Segmentação e Remontagem � Os protocolos inter-redes foram projetados para interligar redes das mais diversas tecnologias. Infelizmente, o tamanho máximo permitido para os pacotes varia de uma tecnologia de sub-rede para outra. Dessa forma pode se fazer necessário a quebra (segmentação) e remontagem de pacotes ao se passar de uma rede para outra. PUC-Rio / DI TeleMídia Controle de Congestionamento � Quando temos pacotes em excesso em uma sub-rede, ou parte de uma sub-rede, o desempenho da rede se degrada e dizemos que temos um congestionamento. � Os congestionamentos podem ser causados por vários fatores: se os nós da rede são lentos, se o tráfego de entrada exceder a capacidade das linhas de saída em um nó, etc. � Existem vários algoritmos de controle de congestionamento que podem ser implementados em uma sub-rede. Eles são subdivididos em procedimentos preventivos (aqueles que tentam evitar o congestionamento) e reativos (aqueles que operam uma vez detectada uma condição de congestionamento). 55 PUC-Rio / DI TeleMídia Controle de Congestionamento versus Controle de Fluxo � O controle de congestionamento é um controle global envolvendo todos os recursos da rede. Já o controle de fluxo se relaciona com o tráfego entre um transmissor e um determinado receptor. � Algumas redes tentam evitar o congestionamento pelo controle de fluxo, embora seja impossível controlar a quantidade total de tráfego na rede usando regras de controle de fluxo fim a fim. � O problema com o controle do fluxo é que ele não pode ser ajustado pela taxa média do tráfego gerado, pois isso limitaria uma aplicação cujo tráfego possui uma taxa variável, resultando em um serviço ruim nos momentos de pico do tráfego. Por outro lado, se o controle de fluxo estiver ajustado para permitir que a taxa de pico do tráfego sej a aproximada, ele tem pouco valor como controle de congestionamento. PUC-Rio / DI TeleMídia Controle de Congestionamento - Descarte de Pacotes � Em uma rede com serviço de circuito virtual uma cópia do pacote deve ser mantida em algum lugar de modo a poder ser retransmitida. Neste caso uma situação de impasse pode ocorrer. � O descarte indiscriminado de pacotes pode levar a situações onde estamos descartando exatamente uma confirmação que liberaria um buffer do nó. Uma melhora do algoritmo pode ser conseguida reservando permanentemente um buffer por linha de entrada, a fim de permitir que todos os pacotes que cheguem sejam inspecionados. � Buffer na entrada: bloqueio de head of line. � De forma a minimizar a banda passante desperdiçada no descarte de pacotes, podemos descartar o pacote da fila que viajou uma distância menor. Esta poderia ser uma outra vari ante no algoritmo de descarte. 56 PUC-Rio / DI TeleMídia Controle de Congestionamento - Controle Isorrítmico � Evita o congestionamento pela limitação do número de pacotes em trânsito na sub-rede. � Nesse método existem permissões que circul am pela sub-rede. Sempre que um nó deseja introduzir um novo pacote na sub-rede ele deve primeiro capturar uma permissão e destruí-la. A permissão é regenerada pelo nó que recebe o pacote no destino. � Problemas: • Distribuição das permissões depende das aplicações na rede. • O passeio aleatório das permissões causa um tráfego extra na sub- rede, roubando seu desempenho. • A perda de uma permissão por uma falha qualquer deve ser recuperada, sob pena dediminuirmos a capacidade de transporteda rede. PUC-Rio / DI TeleMídia Controle de Congestionamento - Controle da Taxa � FECN � BECN 57 PUC-Rio / DI TeleMídia Tipos de Serviço � O serviço oferecido pela inter-rede, bem como o serviço oferecido pelas sub-redes pode ser com conexão ou sem conexão, com características similares aos serviços citados para o nível de enlace. � É importante salientarmos que o serviço oferecido pela inter-rede é um assunto separado do serviço de cada rede. PUC-Rio / DI TeleMídia Serviço Sem Conexão � Nos serviços sem conexão (serviços de datagrama) uma mensagem é tratada de forma individual e entregue ao destino através do caminho mais conveniente, definido pelos algoritmos de roteamento. � A inter-rede não dá garantias de entrega em seqüência dos pacotes e, muitas vezes, nem garantia de chegada de um pacote ao destino final (datagrama não confiável). � A principal vantagem do serviço é sua simplicidade, deixando para níveis superiores o controle de erro, de seqüência e de fluxo, caso sejam necessários. O exemplo mais popular de protocolo que implementa este serviço é o IP da Internet. 58 PUC-Rio / DI TeleMídia Serviço Com Conexão � Em um serviço com conexão (também chamado de servi ço de circuito virtual), não importa se a nível de sub-rede ou inter- rede, todos os pacotes podem seguir a mesma rota, que é escolhida no momento do estabelecimento da conexão. Nesse caso a conexão é usualmente chamada de um circuito virtual. Temos então um serviço de circuito virtual com conexão de circuito virtual. Conexões de circuito virtual são utilizadas geralmente em sub-redes. O exemplo mais popular de protocolo que implementa este serviço é o nível de rede do X-25. � Em uma outra opção, os pacotes de um serviço com conexão (serviço de circuito virtual) podem seguir rotas diferentes até o destino. PUC-Rio / DI TeleMídia Serviço Com Conexão x Sem Conexão � A defesa do serviço sem conexão é fortemente realizada pela comunidade da rede Internet. � De qualquer forma, as estações deverão realizar em níveis superiores o controle de erro e de fluxo, havendo pouca vantagem em realizar essas funções duas vezes. � Nem todas as aplicações necessitam da confiabilidade oferecida pelos serviços com conexão, pelo contrário, o atraso introduzido pela realização desses serviços pode ser até prejudicial, como no caso de transmissão de voz em tempo real. 59 PUC-Rio / DI TeleMídia Serviço Com Conexão x Sem Conexão � A maior parte dos usuários não está disposta a executar protocolos de transporte complexos em suas máquinas, desejando um serviço confiável, suprido pelo serviço com conexão. � Serviços com conexão é possível se fazer a pré- alocação de recursos (por exemplo, recursos de armazenamento nos gateways e nós), garantindo um melhor controle de congestionamento a nível inter- redes. PUC-Rio / DI TeleMídia Perguntas � Quando é necessário o uso de gateways? � O que vema ser um gateway de nível n? � Como opera um gateway de nível 1? Como é usualmente chamado? Quais são suas principais características para os diversos tipos de redes? � Como opera um gateway de nível 2? Como é usualmente chamado? Quais são suas principais características para os diversos tipos de redes? � Como as pontes transparentes encaminhamas mensagens recebidas? � Como funciona o algoritmo de Baran? O que acontece se existem rotas alternativas para um mesmo destino? Como o problema pode ser resolvido? � Como funciona uma ponte comroteamento na origem? � Quais os dois tipos de gateways de nível 3? 60 PUC-Rio / DI TeleMídia Perguntas � Dê quatro razões porque as redes são divididas emdomínio? Como surge o conceito inter-rede? � Porque o modelo OSI divide o nível de rede nas camadas inter-redes e sub-redes? � Quando a camada sub-rede não existe? � Qual a diferença entre os protocolos para inter-rede e sub-rede? Existe alguma diferença em termos de algoritmos de roteamento e encaminhamento? � Quais as principais funções do nível de rede? � O que é a multiplexação no nível de rede? � O que é resolução de endereço? Quais as diversas formas de realizá-la? � O endereço IP (SAP-inter-rede) é horizontal ou hierárquico? Se é hierárquico, porque é necessário a resolução de endereço para o nível de enlace? PUC-Rio / DI TeleMídia Perguntas � Quais as vantagens e desvantagens do endereçamento horizontal e hierárquico? � Qual a diferença entre um encaminhamento por rota fixa e adaptativo? � Cite as várias formas de roteamento adaptativo, comentando suas vantagens e desvantagens. � O que vem a ser “ caminho mais curto”? � Descreva o algoritmo de Baran isolado. � Dê um exemplo de algoritmo para roteamento distribuído. � O que vem a ser roteamento hierárquico? Há limitação no número de níveis hierárquicos? Dê um exemplo. 61 PUC-Rio / DI TeleMídia Perguntas � O que vema ser congestionamento emuma rede? � Qual a diferença do controle de congestionamento e o controle de fluxo? � O que é o controle de congestionamento preventivo e reativo? Dê exemplos. � Descarte de pacotes pode ser usado em controle de congestionamento preventivo? � Quais os cuidados a seremtomados comdescartes de pacotes? � O que é bloqueio de“head of line”? � Como funciona o controle isorrítmico? � Descreva o funcionamento do FECN e do BECN. � Faça uma discussão sobre os tipos de serviços a serem utilizados nas camadas de inter-rede e sub-rede. PUC-Rio / DI TeleMídia Nível de Rede - Exemplos 62 PUC-Rio / DI TeleMídia X-25 PUC-Rio / DI TeleMídia X-25 RedeRede EnlaceEnlace FísicoFísico RedeRede EnlaceEnlace FísicoFísico RedeRede EnlaceEnlace FísicoFísico Aplicação Apresentação Sessão Transporte Rede Enlace Físico Aplicação Apresentação Sessão Transporte Rede Enlace Físico Sistema Aberto A Protocolo de Aplicação Protocolo de Apresentação Protocolo de Sessão Protocolo de Transporte Sistema Aberto B DTE DCE DSE DCE DTE Protocolos não definidos pelo X-25 Protocolo de Rede X-25 Protocolo de Enlace X-25 Protocolo do Nível Físico X-25 63 PUC-Rio / DI TeleMídia X-25 � No nível de enlace os protocolos utilizados são o LAP e o LAPB. � No nível de rede, é utilizado o serviço com conexão com circuito virtual. � Os dados trocados em uma conexão sofrem controle de fluxo e de erro, usando uma janela deslizante. � A confirmação de recebimento de um pacote pode ser de dois tipos, selecionados por um bit (bit D) do pacote de dados. Se D=0, a confirmação significa que o DCE recebeu o pacote e não o DTE remoto. Se D=1, a confirmação indica que o pacote foi entregue ao DTE remoto, representando, portanto, uma confirmação fim a fim. PUC-Rio / DI TeleMídia Arquitetura Internet 64 PUC-Rio / DI TeleMídia Arquitetura Internet � Pesquisa financiada pela DARPA (Defense Advanced Research Projects Agency) no início dos anos 70 � Arquitetura aberta que tornou-se um padrão de fato � Evolução da ARPANET � Arquitetura baseada no conceito de inter-rede PUC-Rio / DI TeleMídia Arquitetura TCP/IP � A arquitetura Internet TCP/IP é organizada em quatro camadas conceituais construídas sobre uma quinta camada que não faz parte do modelo, a camada intra-rede. A Figura abaixo mostra as camadas e o tipo de dados que é passado de uma para outra. Aplicação Transporte Inter-rede Interface de Rede Host A Host B Aplicação Transporte Inter-rede Interface de Rede Inter-rede mensagem idêntica pacote idêntico Roteador datagrama idêntico quadro idêntico quadro idêntico datagrama idêntico Interface de Rede Interface de Rede Rede Física 1 Intra-rede Intra-rede Rede Física 2 65 PUC-Rio / DI TeleMídia RM-OSI x Arquitetura TCP/IP Arquitetura Internet Aplicação Transporte Inter-rede Interface de Rede Intra-rede Aplicação Apresentação Sessão Transporte Rede Enlace Físico Arquitetura OSI PUC-Rio / DI TeleMídia Internet Protocol � Esquema de roteamento entre redes: roteamento adaptativo distribuído nos gateways � Interconexão e roteamento através de Gateways � Roteamento baseado no endereço da rede e não do host � Estrutura interna da rede transparente � Descarte e controle de tempo de vida dos pacotes inter-redes no gateway. � Campo especial indicando qual o protocolo de transporte a ser utilizado no nível superior. 66 PUC-Rio / DI TeleMídia Protocolo IP Aplicação Transporte Inter-rede Rede Rede Física 1 Rede Física 2 Rede Física n Interface da Rede 1 Interface da Rede 2 Interface da Rede n Módulo IP Protocolo 1 Protocolo 2 Protocolo n PUC-Rio / DI TeleMídia Internet Protocol � Serviço sem conexão � Endereçamento hierárquico: endereços IP únicos designados por uma autoridade central (IANA - Internet Assigned Numbers Board) � Facilidade de fragmentação e remontagem de pacotes � Identificação da importância do datagrama e do nível de confiabilidade exigido � Identificação da urgência de entrega e da ocorrência futura ou não de pacotes na mesma direção (pré- alocação, controle de congestionamento). 67 PUC-Rio / DI TeleMídia Esquema de Endereçamento IP v4 1 netid0 hostid netid1 hostid1 0 Endereço Multicast 1 1 1 0 Reservado para uso futturo1 1 1 1 0 Octeto 1 Octeto 2 Octeto 3 Octeto 4 0 7 15 23 31 netid hostid0 A.B.C.D PUC-Rio / DI TeleMídia Notação de ponto decimal e hexadecimal 11010000 11110101 00011100 10100011 208 245 28 163 208.245.28.163 D0.F5.1C.A3 68 PUC-Rio / DI TeleMídia Esquema de Endereçamento IP v4 � Os endereços IP podem ser usados para nos referirmos tanto a sub-redes quanto a um host individual. � Por convenção, um endereço de sub-rede tem o campo identificador de host com todos os bits iguais a 0. � Podemos também nos referir a todos os hosts de uma sub-rede através de um endereço por di fusão, quando, por convenção, o campo identificador de host deve ter todos os bits iguais a 1. � Um endereço com todos os 32 bits iguais a 1 é considerado um endereço por difusão para a rede do host origem do datagrama. � O endereço 127.0.0.0 é reservado para teste (loopback) e comunicação entre processos da mesma máquina. PUC-Rio / DI TeleMídia Delegação de endereços IP na Internet � ICANN (Internet Corporation for Assigned Names and Numbers) • Antiga IANA • Controle sobre os prefixos IP • Política de distribuição � No Brasil • Registro.br (CGIBR) • ISPs (Internet Service Providers) – Top level: Global-One, Embratel, RNP, ... ICANN Registro.br (CGIBR) ISP ISPISP ISPISP ......... ...... APNIC ARIN RIPE NCC 69 PUC-Rio / DI TeleMídia Hierarquização do Endereço � A implementação é feita através de máscaras de 32 bits. netid hostid netid hostidPhysicalnetwork PUC-Rio / DI TeleMídia Problemas do Endereçamento IP v4 � O endereço se refere a conexão de rede e não à estação: se uma estação se mover de uma rede para outra, o endereço IP deve mudar. � A mudança de classe de endereço (por exemplo pelo crescimento de uma rede) acarreta em grande problema administrativo. � Pacotes podem viajar em rotas diferentes para uma estação com múltiplos endereços IP, dependendo do endereçamento usado. 70 PUC-Rio / DI TeleMídia Mapeamento de Endereços � O mapeamento do endereço de um SAP de rede em um endereço de sub-rede (muitas vezes o endereço no nível de enlace se a rede não possui a subcamada de acesso à sub-rede do RM-OSI) pode ser feito através de: • resolução através de mapeamento direto • resolução através de vinculação dinâmica. PUC-Rio / DI TeleMídia Mapeamento Endereço IP - MAC Endereço de Classe D: 234.138.8.5 (EA-8A-08-05) E A 8 A 0 8 0 5 1 1 1 0 1 0 1 0 1 0 0 0 1 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 1 1 1 1 0 0 0 0 0 1 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 1 5 E 0 A 0 8 0 50 00 1 23 bits menos significativos mapeados Não mapeados Endereço IP de Classe D Endereço Multicast MAC IEEE-802 71 PUC-Rio / DI TeleMídia Mapeamento de Endereços � A resolução através de vinculação dinâmica pode ser realizada através de um protocolo denominado ARP (Address Resolution Protocol). � O ARP permite a um host encontrar o endereço de sub-rede de outro host na mesma sub-rede, através do envio de um datagrama por di fusão na sub-rede, como acontece com as redes IEEE 802. � A resolução pode ser feita também por um servidor de resolução, como nas redes IPOA. PUC-Rio / DI TeleMídia Funcionamento do ARP Transporte Aplicação IP Int. adapt. Transporte Aplicação IP Int. adapt. Intra-rede Intra-rede 200.18.171.1 OD.OA.12.07.48.05 200.18.171.3 200.18.171.4 � Aplicação no host A quer enviar dados para aplicação no host B B 1F.6D.45.09.11.77 A 72 PUC-Rio / DI TeleMídia Transporte Aplicação IP Int. adapt. Transporte Aplicação IP Int. adapt. Intra-rede Intra-rede 200.18.171.3 200.18.171.4 IP destino = 200.18.171.3 � Destino está na mesma rede • Como enviar para essa máquina? Qual seu endereço físico? • O datagrama fica aguardando e o ARP é acionado 1F.6D.45.09.11.77 BA 200.18.171.1 OD.OA.12.07.48.05 Funcionamento do ARP PUC-Rio / DI TeleMídia ARP Req Transporte Aplicação IP Int. adapt. Transporte Aplicação IP Int. adapt. Intra-rede Intra-rede 200.18.171.3 200.18.171.4 1F.6D.45.09.11.77 BA 200.18.171.1 OD.OA.12.07.48.05 Funcionamento do ARP 73 PUC-Rio / DI TeleMídia ARP Req Transporte Aplicação IP Int. adapt. Transporte Aplicação IP Int. adapt. Intra-rede Intra-rede 200.18.171.3 200.18.171.4 1F.6D.45.09.11.77 Preâmbulo FF.FF.FF.FF.FF.FF 0D.0A.12. 07.48.05 0806h Dados (ARP Request) FCS End. Físico Broadcast Tipo ARP BA 200.18.171.1 OD.OA.12.07.48.05 Funcionamento do ARP PUC-Rio / DI TeleMídia BA Transporte Aplicação IP Int. adapt. Transporte Aplicação IP Int. adapt. Intra-rede Intra-rede 200.18.171.3 1F.6D.45.09.11.77 Int. adapt. Intra-rede ARP Req ARP Req 200.18.171.1 OD.OA.12.07.48.05 Funcionamento do ARP 74 PUC-Rio / DI TeleMídia Transporte Aplicação IP Int. adapt. Transporte Aplicação IP Int. adapt. Intra-rede Intra-rede 200.18.171.3 A 1F.6D.45.09.11.77 Int. adapt. Intra-rede ARP ReqX ARP Req 200.18.171.1 OD.OA.12.07.48.05 Funcionamento do ARP PUC-Rio / DI TeleMídia Transporte Aplicação IP Int. adapt. Transporte Aplicação IP Int. adapt. Intra-rede Intra-rede 200.18.171.3 200.18.171.4 1F.6D.45.09.11.77 ARP Req BA 200.18.171.1 OD.OA.12.07.48.05 Funcionamento do ARP 75 PUC-Rio / DI TeleMídia Transporte Aplicação IP Int. adapt. Transporte Aplicação IP Int. adapt. Intra-rede Intra-rede 200.18.171.3 200.18.171.4 1F.6D.45.09.11.77ARP Rep Preâmbulo 0D.0A.12.07.48.05 1F.6D.45. 09.11.77 0806h Dados (ARP Reply) FCS Tipo ARP BA 200.18.171.1 OD.OA.12.07.48.05 Funcionamento do ARP PUC-Rio / DI TeleMídia BA Transporte Aplicação IP Int. adapt. Transporte Aplicação IP Int. adapt. Intra-rede Intra-rede 200.18.171.3 1F.6D.45.09.11.77Intra-rede ARP Rep ARP Rep 200.18.171.1 OD.OA.12.07.48.05 Funcionamento do ARP 76 PUC-Rio / DI TeleMídia Transporte Aplicação IP Int. adapt. Transporte Aplicação IP Int. adapt. Intra-rede Intra-rede 200.18.171.3 1F.6D.45.09.11.77 ARP Rep ARP RepX BA 200.18.171.1 OD.OA.12.07.48.05 Funcionamento do ARP PUC-Rio / DI TeleMídia Transporte Aplicação IP Int. adapt. Transporte Aplicação IP Int. adapt. Intra-rede Intra-rede 200.18.171.3 200.18.171.4 1F.6D.45.09.11.77 ARP Rep 1F.6D.45.09.11.77200.18.171.3 Cache ARP BA 200.18.171.1 OD.OA.12.07.48.05 Funcionamento do ARP 77 PUC-Rio / DI TeleMídia Transporte Aplicação IP Int. adapt. Transporte Aplicação IP Int. adapt. Intra-rede Intra-rede 200.18.171.3 200.18.171.4 1F.6D.45.09.11.77 OD.OA.12.07.48.05200.18.171.1 Cache ARP Note que … BA 200.18.171.1 OD.OA.12.07.48.05 Funcionamento do ARP PUC-Rio / DI TeleMídia Transporte Aplicação IP Int. adapt. Transporte Aplicação IP Int. adapt. Intra-rede Intra-rede 200.18.171.3 200.18.171.4 1F.6D.45.09.11.77 OD.OA.12.07.48.05200.18.171.1 Cache ARP ... e que … BA 200.18.171.1 OD.OA.12.07.48.05 Funcionamento do ARP 78 PUC-Rio / DI TeleMídia Transporte Aplicação IP Int. adapt. Transporte Aplicação IP Int. adapt. Intra-rede Intra-rede 200.18.171.3 200.18.171.4 1F.6D.45.09.11.77 IP TCP ... Preâmbulo 1F.6D.45.09.11.77 0D.0A.12. 07.48.05 FCS0800h Tipo IP Finalmente o datagrama IP pode ser transmitido BA 200.18.171.1 OD.OA.12.07.48.05 Funcionamento do ARP PUC-Rio / DI TeleMídia Mapeamento de Endereços � Tomemos agora o problema inverso. Suponha que por algum motivo uma máquina não saiba seu endereço IP. Como ela poderia descobrir esse endereço? • O protocolo RARP (Reverse Address Resolution Protocol), adaptado do protocolo ARP, tema resposta. � A solução seria termos um servidor de endereços IP na rede. • Quando uma máquina quisesse saber seu endereço IP ela mandaria um quadro por difusão dentro de sua rede, que seria reconhecido como uma requisição pelo servidor. A partir do endereço de sub-rede, o servidor descobriria o endereço IP e o enviaria à maquina requisitante. • A comunicação poderia também se dar diretamente com o servidor. 79 PUC-Rio / DI TeleMídia Campos do Datagrama IP VERS TOTAL LENGTH IDENTIFICATION FLAGS FRAGMENT OFFSET TIME TO LIVE PROTOCOL HEADER CHECKSUM SOURCE IP ADDRESS HLEN DESTINATION IP ADDRESS IP OPTIONS (IF ANY) DATA ... PADDING SERVICE TYPE PRECEDENCE D T R UNUSED Alta Confiabilidade (High Reliability) Alta Vazão (High Throughput) Baixo Retardo (Low Delay) Prioridade do Datagrama: 0 - 7 VERS = 4 HLEN = N x 4 octetos (20 a 64 bytes) TLEN = até 65535 octetos C Baixo Custo (Low Monetary Cost) PUC-Rio / DI TeleMídia SERVICE TYPEVERS TOTAL LENGTH IDENTIFICATION FRAGMENT OFFSET TIME TO LIVE PROTOCOL HEADER CHECKSUM SOURCE IP ADDRESS HLEN DESTINATION IP ADDRESS IP OPTIONS (IF ANY) DATA ... PADDING FLAGS TTL decrementado em cada roteador de 1 ou mais TCP = 6 UDP = 17 ICMP = 1 EGP = 8 OSPF= 89 Alterado a cada roteador Campos do datagrama IP 80 PUC-Rio / DI TeleMídia SERVICE TYPEVERS TOTAL LENGTH IDENTIFICATION FRAGMENT OFFSET TIME TO LIVE PROTOCOL HEADER CHECKSUM SOURCE IP ADDRESS HLEN DESTINATION IP ADDRESS IP OPTIONS (IF ANY) DATA ... PADDING NU DNF MF Do Not Fragment Bit (datagrama descartado e erro env iado para origem) More Fragments Bit FLAGS Identificador da Mensagem (não do datagrama) 13 bits Múltiplos de 8 octetos TLEN informa tamanho do fragmento. Só último fragmento determina tamanho do datagrama original, através de TLEN e FRAGMENT OFFSET. Não utilizado Campo FLAGS do Datagrama IP PUC-Rio / DI TeleMídia Exemplo de Segmentação e Remontagem � Datagrama original D0 é dividido em dois novos datagramas: D1 e D2. � D1 e D2 têm conteúdo do cabeçalho idêntica ao do datagrama original. • O valor do campo identification permanece inalterado. Esse campo, junto com os endereços de origem e destino, e com a identificação do protocolo de transporte, serve para especificar todos os fragmentos de ummesmo datagrama IP. • O número de identificação só deve ser reutilizado depois de decorrido um tempo suficiente para o descarte do datagrama que utilizou anteriormente a mesma identificação. 81 PUC-Rio / DI TeleMídia Exemplo de Segmentação e Remontagem � Os dados carregados pelo datagrama original, D0, são divididos em blocos de 8 octetos (64 bits). � O primeiro datagrama, D1, é montado com um número inteiro de blocos de dados, denominado NFB (número de blocos de dados do fragmento). � No cabeçalho de D1, o campo total length, que contém o valor copiado do datagrama original, é atualizado passando a carregar o comprimento do datagrama que acabou de ser criado. � Ainda no datagrama D1, o flag MF do cabeçalho recebe o valor 1, especificando more-fragments. PUC-Rio / DI TeleMídia Exemplo de Segmentação e Remontagem � A segunda parte dos dados é colocada no outro datagrama, D2. � O campo total length desse datagrama também é atualizado, passando a carregar o número de octetos desse datagrama (cabeçalho + dados). � O flag more fragments mantém o valor copiado do datagrama D0, pois ele próprio pode ter sido anteriormente fragmentado. � O campo fragment-offset recebe a soma do valor que tinha em D0 com o valor NFB (que indica o número de blocos de dados transportado no fragmento anterior do datagrama D1). • O valor do campo fragment-offset do datagrama original é utilizado na soma porque, novamente, o datagrama original pode já ter passado por um processo de fragmentação anterior. • Se fossem necessários N datagramas, o NFB usado deveria indicar o número de blocos carregados nos N-1 datagramas anteriores. 82 PUC-Rio / DI TeleMídia Exemplo de Segmentação e Remontagem � Para remontar o datagrama original, o módulo IP destinatário combina os datagramas IP que possuem o mesmo valor para os campos identification, protocol, source address e destination address. � A recombinação é feita através da colocação da porção de dados de cada fragmento na posição relativa indicada pelo valor do campo fragment-offset de seus cabeçalhos. � O primeiro fragmento possui o fragment-offset igual a 0, e o último fragmento tem o flag more fragments igual a 0. PUC-Rio / DI TeleMídia Campo IP OPTIONS Option Code Length Data 1 . . . Data n 1 octeto 1 octeto 1 octeto 1 octeto SERVICE TYPEVERS TOTAL LENGTH IDENTIFICATION FRAGMENT OFFSET TIME TO LIVE PROTOCOL HEADER CHECKSUM SOURCE IP ADDRESS HLEN DESTINATION IP ADDRESS IP OPTIONS (IF ANY) DATA ... PADDING FLAGS 1 octeto 83 PUC-Rio / DI TeleMídia 68 variável Internet Timestamp (Utilizado para obter de cada roteador a hora de transmissão do datagrama). Opções IP Código Comp. Descrição 0 - Fim da lista de opções. 1 - No operation . 2 11 Restrições de segurança e manipulação (militar). 131 variável Loose Source Routing (Especifica a rota que um datagrama deve seguir). 7 variável Record Route (Utilizado para rastrear a rota que o datagrama percorreu). 8 4 SATNET stream identifier (Obsoleto). 137 variável Strict Source Routing ( Especifica a rota que um datagrama deve seguir). PUC-Rio / DI TeleMídia Opções IP - Source Route � A cada decisão de roteamento é checada a lista de IPs e imposto um roteador (strict) ou tentado um (loose) � A cada roteamento, o roteador inclui o end. IP da interface de saída � Pointer aponta para o próximo octeto a ser preenchido 131/137 Length Pointer End.IP 1o. HOP 1 oct 1 oct 1 oct 4 octetos End.IP 2o. HOP 4 octetos ... 84 PUC-Rio / DI TeleMídia Roteamento IP � Cada computador possui uma tabela cujas entradas são pares: endereço de sub-rede/endereço de roteador. Essa tabela é denominada tabela de roteamento IP. � Quando um módulo IP, por exemplo, executando em um roteador, tem que encaminhar um datagrama, ele inicialmente veri fica se o destino do datagrama é um host conectado à mesma rede que seu hospedeiro. � Se este for o caso, o datagrama é entregue à interface da rede que se encarrega de mapear o endereço IP no endereço físico do host, encapsular o datagrama IP em um quadro da rede, e finalmente transmiti-lo ao destinatário. PUC-Rio / DI TeleMídia Roteamento IP � Se a rede identificada no endereço de destino do datagrama for diferente da rede onde está o módulo IP, ele procura em sua tabela de roteamento uma entrada com o endereço de rede igual ao do endereço de destino do datagrama, recuperando assim o endereço do roteador que deve ser usado para alcançar a rede onde está conectado o destinatário do datagrama. � O roteador recuperado da tabela pode não estar conectado diretamente à rede de destino, porém, se este for o caso, ele deve fazer parte do caminho a ser percorrido para alcançá-la. 85 PUC-Rio / DI TeleMídia Roteamento IP � Uma desvantagem do esquema de roteamento apresentado é o tamanho das tabelas de roteamento, quando a inter-rede interliga um número muito grande de redes individuais.. � Uma alternativa é a utilização de roteadores default. Por exemplo, em redes que são ligadas à inter-rede por um único roteador, não é necessário ter uma entrada separada na tabela de rotas para cada uma das redes distintas da inter-rede. Simplesmente define-se o roteador como caminho default. � O conceito de roteador default também se aplica a redes que possuem mais de um roteador. Nesse caso, quando não for encontrada uma rota especí fica para um datagrama, ele é enviado ao roteador default. PUC-Rio / DI TeleMídia Roteamento IP � Através de um protocolo específico ICMP (Internet Control Message Protocol) o roteador informará ao módulo IP se ele não é a melhor escolha para alcançar uma determinada rede. � Essa mensagem, chamada redirect no ICMP, carrega como parâmetro o endereço do roteador que é a escolha correta. � O módulo IP, ao receber uma mensagem redirect, adiciona uma entrada em sua tabela de roteamento associando a rede de destino ao endereço do roteador recebido na mensagem. 86 PUC-Rio / DI TeleMídia Encaminhamento IP Sou eu o Destino ? Pega o Endereço IP de Destino (Dn) Está Dn entre as rotas diretas ? Está Dn entre as rotas indiretas ? Existe uma rota default ? Reporta “Rede inalcançável” e descarta o datagrama Datagrama Chegou !!! Envia diretamente pela rede conectada Envia para o endereço do roteador especificado Envia pela rota default Sim Não Não Não Não Não Sim Sim Sim PUC-Rio / DI TeleMídia IP v6 87 PUC-Rio / DI TeleMídia Necessidades e Motivações � Rápido crescimento da Internet (tamanho e carga) • Exaustão do espaço de endereçamento de 32 bits � Segurança • Demanda crescente por comunicação segura � Novas tecnologias de comunicação � Novas aplicações • Necessidade de transmissão de dados para múltiplos usuários • Demanda por protocolos eficientes na comunicação de dados multimídia PUC-Rio / DI TeleMídia Características Principais do IPv6 � Aumento do espaço de endereços de 32 para 128 bits � Header básico mais simples para melhorar o desempenho do roteamento � Melhoria na especificação de opções (headers de extensão) � Suporte a rótulos de tipo de fluxo (Flow Labels) • Tratamento de requisitos especiais de QoS (áudio, vídeo, etc…) 88 PUC-Rio / DI TeleMídia Formato do Datagrama IPv6 Base Header Extension Header 1 Extension Header n Dados... opcionais Octeto 1 Octeto 2 Octeto 3 Octeto 4 0 7 15 23 31 VER FLOW LABELPRIO PAYLOAD LENGTH NXT HDR HOP LIMIT SOURCE ADDRESS DESTINATION ADDRESS • Campos: VER = 6 PAYLOAD LENGTH = tamanho dos dados do datagrama (máx. 64K) NXT HDR = tipo do próximo header de extensão HOP LIMIT ≡ TTL em IPv4 PUC-Rio / DI TeleMídia Formato do Datagrama IPv6 � Campo PRIO: classe de prioridade • 0 - não caracterizado (normal) • 1 - baixíssima prioridade • 2 - Transferência de dados não interativa (ex. SMTP) • 4 - Transferência de dados interativa (ex. FTP, HTTP) • 6 - Tráfego interativo (ex. TELNET, X-Windows) • 7 - ICMP, protocolos de roteamento, SNMP • 8 a 15 - tráfego sem controle de congestionamento (áudio, vídeo, ...) � Campo FLOW LABEL • Valor que determina a forma de tratamento do datagrama IP. – Especificado peloprotocolo que está controlando a QoS. • A associação {FLOW LABEL, QoS} pode ser feita por um outro protocolo (ex: RSVP) ou datagrama a datagrama através de um header de extensão 89 PUC-Rio / DI TeleMídia EXTENSION HEADER DATA Formato do Datagrama IPv6 Base Header Extension Header 1 Extension Header n Dados... opcionais Octeto 1 Octeto 2 Octeto 3 Octeto 4 0 7 15 23 31 NXT HDR NXT HDR: 0 = Hop-by-Hop Option Header 43 = Routing Extension Header 44 = Fragment Header 50 = Encapsulating Security Payload 51 = Authentication Header 60 = Destination Option Header 59 = No Next Header PUC-Rio / DI TeleMídia Endereçamento IPv6 0110 1000 1110 0110 1000 1100 1111 1111 0000 0000 ... 0000 0000 0000 1010 6 8 E A 8 C F F 0 0 ... 0 0 0 A 68EA:8CFF:00:00:00:00:00:0A 68EA:8CFF:0:0:0:0:0:A 68EA:8CFF::A 0:0:0:0:0:0:128.10.2.1 ::128.10.2.1 Números de 16 bits 90 PUC-Rio / DI TeleMídia Classes de Endereçamento 84.95% 0.11% 12.50% 0.11% 0.39% 0.39% 0.78% 0.78% Reserved (IPv4 compatib le - 0000:0000) NSAP Addresses (0000:001) IPX Addresses (0000:010) Aggregatable Global Unicast Addresses (010) Link-Local Unicast Addresses (1111:1110:10) Site -Local Unicast Addresses (1111:1110:11) Used fo r Multicast (1111:1111) Reserved PUC-Rio / DI TeleMídia Estratégias de Migração IPv4 →→→→ IPv6 � Dual Stack Host IPv6 Host IPv4 Host Dual Stack Aplicação TCP IPv6 Eth IPv4 91 PUC-Rio / DI TeleMídia Estratégias de Migração IPv4 →→→→ IPv6 � Tunelamento automático Host IPv6 Host IPv4/IPv6 (Dual Stack) Tunnel Router Router Datagrama IPv6 Inter-rede IPv4 Datagrama IPv6Header IPv4 Aplicação TCP IPv6 Eth IPv4 PUC-Rio / DI TeleMídia Estratégias de Migração IPv4 →→→→ IPv6 � Tunelamento configurado Host IPv6 Host IPv6 Tunnel Router Tunnel Router Datagrama IPv6 Inter-rede IPv4 Datagrama IPv6Header IPv4 Datagrama IPv6 92 PUC-Rio / DI TeleMídia Estratégias de Migração IPv4 →→→→ IPv6 � Tradução de cabeçalhos Host IPv6 Host IPv4 Router TranslatingRouter Datagrama IPv6 Inter-rede IPv6 Datagrama IPv6 Datagrama IPv4 Tradução PUC-Rio / DI TeleMídia Roteamento Construção da Tabela de Rotas 93 PUC-Rio / DI TeleMídia Encaminhamento � Os roteadores possuem tabelas de rotas para realizarem o encaminhamento � Essas tabelas contêm, a princípio, entradas que relacionam uma sub-rede de destino a uma métrica (ou custo) • Podem apresentar outras informações PUC-Rio / DI TeleMídia Protocolos de divulgação de rotas Tabela de Rotas Protocolos de Divulgação de Rotas IP R R R R R RR R R R R R RR 94 PUC-Rio / DI TeleMídia Principais Algoritmos �Grafos �Roteamento Bellman-Ford X Dijkstra Vetor de Distâncias (Isolado) X Estado de Enlaces (Distribuído) PUC-Rio / DI TeleMídia Algoritmo de Vetor de Distâncias � Inicialmente cada roteador possui em sua tabela de rotas uma entrada para cada sub-rede ao qual está ligado diretamente � Periodicamente o roteador difunde para seus vizinhos um vetor de distâncias e recebe deles outros vetores • Vetor = { (Endereço de sub-rede, próx. roteador, custo) } � Se um desses vetores revela uma rota nova, ou uma rota de menor custo do que uma presente atualmente na tabela de rotas local, esta rota será incorporada na tabela local 95 PUC-Rio / DI TeleMídia Algoritmo de Estado de Enlaces � Cada roteador mantém um estado local (router local state) • Contém informações sobre interfaces operacionais do roteador e vizinhos alcançáveis por meio dessas interfaces � Roteador difunde estado local a todos os outros roteadores • Distribuição periódica ou devido a mudanças no estado local � Cada roteador constrói uma base de dados descrevendo a topologia da inter-rede (link-state database) • Base de dados = {estado local do roteador i} � Cada roteador executa o algotitmo de Dijkstra sobre sua base • Constrói árvore de caminho mais curto onde o roteador é a raiz PUC-Rio / DI TeleMídia Internet e Arquitetura TCP/IP Sistemas autônomos 96 PUC-Rio / DI TeleMídia Sistemas Autônomos (Autonomous Systems) estações comutadores gateways PUC-Rio / DI TeleMídia Sistemas Autônomos (Autonomous Systems) � Divisão da Internet em Sistemas Autônomos (AS), cada AS consistindo em um conjunto de roteadores e sub-redes sob mesma administração � Não existe um limite teórico para o tamanho de um AS: • pode ser uma simples sub-rede • pode ser uma inter-rede corporativa inteira • pode ser um conjunto de sub-redes de clientes de um provedor de acesso Internet 97 PUC-Rio / DI TeleMídia Sistemas Autônomos � AS pode usar igps - protocolos de roteamento interno - para calcular rotas internas � AS usa um egp - protocolo de roteamento externo - para trocar informações sobre rotas com outros ASs igp1 igp2egp AS 1 AS 2 Roteadores de borda PUC-Rio / DI TeleMídia Tipos de AS � Stub AS • AS com conexão para apenas um outro AS � Multihomed AS • AS com várias conexões para outros Ass, mas que não aceita tráfego não-local – Tráfego não-local = Tráfego que não se originou no AS e nem se destina ao AS � Transit AS • AS com várias conexões para outros ASs e que aceita tráfego não-local, freqüentemente sob certas condições (policy restrictions) 98 PUC-Rio / DI TeleMídia Transit AS Multi-homed AS Stub AS Arquitetura Topológica Atual da Internet Empresa Empresa Provedor Provedor ProvedorProvedor Empresa Empresa Empresa Empresa PUC-Rio / DI TeleMídia Identificação de AS � ASN: número de 16 bits (~64K possíveis) � ASs (e ASNs) no Brasil: • PUC-Rio (14553), Fapesp (2715), RNP (1916), Embratel (4230), Uninet (5772), Inside (7063), Telerj/Telemar (7298), Intelig (17379) … � Consulta a ASs e ASNs, AS traces: • http://www.fixedorbit.com/search.htm 99 PUC-Rio / DI TeleMídia Protocolos igp RIP PUC-Rio / DI TeleMídia Protocolo RIP (Routing Information Protocol) � Utiliza Algoritmo de Vetor de Distâncias • Relembrando... – Inicialmente, cada roteador possui emsua tabela de rotas uma entrada para cada sub-rede ao qual está ligado diretamente – Periodicamente o roteador difunde para seus vizinhos um vetor de distâncias e recebe deles outros vetores • Vetor = { (Endereço de sub-rede, próx. roteador, custo) } – Se um desses vetores revela uma rota nova, ou uma rota de menor custo do que uma presente atualmente na tabela de rotas local, esta rota será incorporada na tabela local 100 PUC-Rio / DI TeleMídia Protocolo RIP B C ED A Rede x Rede y Rede v Rede t Rede u Rede h Rede i Rede j Rede Próx. Custo x - 1 y - 1 Rede Próx. Custo Rede Próx. Custo i - 1 j - 1 Rede Próx. Custo h - 1 Rede Próx. Custo t - 1 u - 1 v - 1 PUC-Rio / DI TeleMídia Protocolo RIP B C ED A Rede x Rede y Rede v Rede t Rede u Rede h Rede i Rede j Rede Próx. Custo x - 1 y - 1 Rede Próx. Custo x A 2 y A 2 Rede Próx. Custo i - 1 j - 1 Rede Próx. Custo h - 1 Rede Próx. Custo t - 1 u - 1 v - 1 x A 2 y A 2 101 PUC-Rio / DI TeleMídia Protocolo RIP B C ED A Rede x Rede y Rede v Rede t Rede u Rede h Rede i Rede j Rede Próx. Custo x - 1 y - 1 Rede Próx. Custo x A 2 y A 2 Rede Próx. Custo i - 1 j - 1 x B 3 y B 3 Rede Próx. Custo h - 1 x B 3 y B 3 Rede Próx. Custo t - 1 u - 1 v - 1 x A 2 y A 2 PUC-Rio / DI TeleMídia Protocolo RIP B C ED A Rede x Rede y Rede v Rede t Rede u Rede h Rede i Rede j Rede Próx. Custo x - 1 y - 1 Rede Próx. Custo h E 2 x A 2 y A 2 Rede Próx. Custo i - 1 j - 1 h E 2 x B 3 y B 3 Rede Próx. Custo h - 1 x B 3 y B 3 Rede Próx. Custo t - 1 u - 1 v - 1 h E 2 x A 2 y A 2 Até conv ergir.... 102 PUC-Rio / DI TeleMídia B C ED A Custo=1 Custo 10 � Contagem p/ infinito Problemas bem-conhecidos de Bellman-Ford � Convergência lenta B C ED A PUC-Rio / DI TeleMídia Soluções para os problemas de Bellman-Ford � Máximo de saltos: 16 (“ infinito” do RIP) • Diâmetro máximo da rede == 15 saltos � “ Simple split horizon” • Omite rotas aprendidas por um vizinho em divulgações enviadas a esse vizinho � “ Split horizon with poisoned reverse” • Inclui rotas aprendidas por um vizinho em divulgações enviadas a esse vizinho, mas associa a elas custo “infinito” � “ Triggered updates” • Gerados quando o custo de uma rota muda • Opera independentemente da divulgação periódica 103 PUC-Rio / DI TeleMídia Limitações do RIP � Uso de custo fixo • Número de saltos � Baixa escalabilidade • “ Diâmetro” limitado do AS (15 saltos) • Grandes tabelas de rotas PUC-Rio / DI TeleMídia Protocolos igp OSPF 104 PUC-Rio / DI TeleMídia Protocolo OSPF (Open Shortest Path First) � Utiliza Algoritmo de Estado de Enlaces • Relembrando... – Cada roteador mantémumestado local (router local state) • Contém informações sobre interfaces operacionais do roteador e vizinhos alcançáveis por meio dessas interfaces – Roteador difunde estado local a todos os outros roteadores • Distribuição periódica ou devido a mudanças no estado local – Cada roteador constrói uma base de dados descrevendo a topologia da inter-rede (link-state database) • Base de dados = {estado local do roteador i}, p/ todo i ∈ AS – Cada roteador executa o alg. de Dijkstra sobre sua base • Constrói árvore de caminho mais curto onde o roteador é a raiz PUC-Rio / DI TeleMídia Alg. de Roteamento X Alg. de Grafo N1 N2 R1 R2 R3 R4 R5 N3 R6 R7 Rede ATM N6 N4 N5 R1 R2 R5 R4 R3 R6 R7 ???? 105 PUC-Rio / DI TeleMídia Alg. de Roteamento X Alg. de Grafo N1 N2 R1 R2 R3 R4 R5 N3 R6 R7 Rede ATM N6 N4 N5 R1 R2 R5 R4 N3 N6R3 N1 N2 R6 R7 N5 N4 PUC-Rio / DI TeleMídia OSPF x RIP � Responde mais rapidamente a mudanças na topologia � Quando a rede está “estável”, os roteadores trocam pequenos volumes de informação entre si � Métrica mais flexível � Armazena múltiplas rotas para um mesmo destino • Balanceamento de carga � Agrupamento de redes em áreas • Topologia da área é escondida do resto do AS • Redução no tráfego de informações sobre rotas 106 PUC-Rio / DI TeleMídia OSPF - Definições Básicas � Tipos de sub-redes • Sub-redes ponto-a-ponto – PPP, SLIP, HDLC, ... • Sub-redes de múltiplo acesso – X.25, ATM, ... • Sub-redes combroadcast – Ethernet, Token Ring, ... PUC-Rio / DI TeleMídia OSPF - Definições Básicas (continuação) � Link-State Advertisement (LSA) • Unidadede informação que descreve o estado local de umroteador ou de uma sub-rede – Estado local de umroteador: estado de suas interfaces – Estado local de uma sub-rede: roteadores conectados àquela sub-rede � Link-State Database (LSDB) • Conjunto de LSAs 107 PUC-Rio / DI TeleMídia Representação de Redes e Roteadores � LSAs e LSDB • Permitem construção de grafo direcionado • Vértices: roteadores e sub-redes – Retângulos representam roteadores, círculos representam sub-redes • Sub-redes ponto-a-ponto não são representadas como vértices • Arestas – Conectam dois roteadores se eles são ligados por uma sub-rede ponto- a-ponto – Conectam um roteador e uma sub-rede de múltiplo acesso ou com broadcast se o roteador possui uma interface ligada à sub-rede PUC-Rio / DI TeleMídia Exemplo de Grafo Representando um AS N1 N2 RT2 RT1 N3 3 3 1 1 RT3 1 N4 2 RT41 RT58 8 RT68 6 7 6 7 RT10 5 1 N6 6 RT7 6 1 3RT11 2N9 1 RT9 RT12 1 1 N11 3 N102 RT8 14 N8 N7 108 PUC-Rio / DI TeleMídia Exemplos de LSAs De Pa ra RT12 RT12 N9 N10 1 2 De Pa ra RT9 RT11 RT12 N9 0 0 0 N9 � Representação da LSA de RT12 � Representação da LSA de RT6 � Representação da LSA de N9 De Pa ra RT6 RT3 RT5 RT10 6 6 7 PUC-Rio / DI TeleMídia Árvore SPF e Tabela de Rotas para RT6 3 3 1 2 6 7 6 4 13 1 3 2 N1 N2 N3 N4 N6 N7 N8N9 N10 N11 RT6 RT1 RT2 RT3 RT4 RT5 RT7 RT8 RT9 RT10 RT11 RT12 N1 10RT3 N2 10RT3 N3 7RT3 N4 8RT3 N6 8RT10 N7 12RT10 N8 10RT10 N9 11RT10 N10 13RT10 N11 14RT10 Rede MétricaPróx. 109 PUC-Rio / DI TeleMídia OSPF: Múltiplas Áreas � Com o aumento de tamanho de um AS, começa a ser oneroso utilizar o OSPF em cada roteador � Solução: roteamento em dois níveis • Rede dividida em áreas interligadas por um backbone • Cada área se comporta como um “AS” separado • O backbone também é uma área, e há diversos roteadores de fronteira de área (ABR) que o interligam às outras áreas – Para a área, ABR injeta rotas externas à área – Para o backbone, ABR injeta um sumário da área � Divisão em áreas permite bases de dados menores, redução das tabelas de roteamento e diminuição do tempo de cálculo do algoritmo PUC-Rio / DI TeleMídia AS Dividido emÁreas N1 N2 RT2 RT1 N3 3 3 1 1 RT3 1 N4 2 RT41 RT58 8 RT68 6 7 6 7 RT10 5 1 N6 6 RT7 6 1 3 RT11 2N9 1 RT9 RT12 1 1 N11 3 N102 RT8 14 N8 N7 Área 1 Área 3 Área 2 110 PUC-Rio / DI TeleMídia LSAs dasÁreas 1 e 2 Difundidos pelo Backbone � Representação da área 1 por RT3 � Representação da área 2 por RT7 � Representação da área 1 por RT4 � Representação da área 2 por RT10 De Pa ra RT3 N1 N2 N3 4 4 1 N4 2 De Pa ra RT4 N1 N2 N3 4 4 1 N4 3 De Pa ra RT7 N6 N7 N8 1 5 4 De Pa ra RT10 N6 N7 N8 1 5 3 PUC-Rio / DI TeleMídia LSAs do Backbone Difundidos pela Área 1 � Representação do backbone injetada na área 1 por RT3 � Representação do backbone injetada na área 1 por RT4 De Pa ra RT3 16 20 N9-N11 18 22 N6 N7 N8 De Pa ra RT4 15 19 N9-N11 18 29 N6 N7 N8 111 PUC-Rio / DI TeleMídia LSDB da área 1 DE RT 1 RT 2 RT 3 RT 4 N3 RT 1 0 RT 2 0 RT 3 0 RT 4 0 N1 3 N2 3 N3 1 1 1 1 N4 2 N6 16 15 N7 20 19 N8 18 18 PA R A N9-N11 22 29 PUC-Rio / DI TeleMídia Redes com Comutação por Rótulo 112 PUC-Rio / DI TeleMídia Comutação de Pacotes � Retardos de transferência muito grandes. � Jitter (variação do retardo) muito grande. • Carga de processamento elevada no comutador (roteador) Comutação Rápida de Pacotes PUC-Rio / DI TeleMídia Comutação Rápida de Pacotes � Relaxar (ou eliminar) o controle de erro nas camadas de enlace e de rede. � Relaxar (ou eliminar) o controle de fluxo nas camadas de enlace e de rede. � Separar os canais de sinalização e de dados: pacotes de dados devem propagar na rede sem a necessidade do processamento da camada de rede (label switch). 113 PUC-Rio / DI TeleMídia Comutação de Rótulos Pilha de Controle Pilha de Dados PUC-Rio / DI TeleMídia Comutação por Rótulos � A comutação por rótulos pode ser realizada em comutação orientada a conexão ou não orientada a conexão. � São exemplos de redes orientadas a conexão com comutação de rótulos: • Frame Relay • ATM � São exemplos de redes não orientadas a conexão com comutação de rótulos: • Comutação IP (MPLS) 114 PUC-Rio / DI TeleMídia Perguntas � Como funciona o protocolo de divulgação de rotas “ Vetor de Distâncias”? � Como funciona o protocolo de divulgação de rotas “Estado de Enlaces”? � O que vema ser o problema de convergência lenta e de contagempara o infinito no algoritmo de Bellman-Ford? Como podemser resolvidos? � Faça uma comparação entre o OSPF e o RIP. � Quais os problemas da comutação de pacotes? Quando eles são preponderantes? Como eles são resolvidos na comutação rápida de pacotes? � Quando a comutação rápida de pacotes temum desempenho pior do que a comutação de pacotes? � Porque são necessárias duas pilhas de protocolo na comutação rápida de pacotes? PUC-Rio / DI TeleMídia Comutação por Rótulo Com Conexão 115 PUC-Rio / DI TeleMídia 34 1 2 3 1 2 34 1 2 3 4 1 2 3 4 S tabela porta 1 a 3 ? PUC-Rio / DI TeleMídia 34 1 2 3 1 2 34 1 2 3 4 1 2 3 4 S tabela porta 1 a 3 ? 116 PUC-Rio / DI TeleMídia 34 1 2 3 1 2 34 1 2 3 4 1 2 3 4 tabela porta 1 a 3 ? tabela porta 4 b 3 ? tabela porta 1 c 4 ? S tabela porta 3 a 2 z PUC-Rio / DI TeleMídia 34 1 2 3 1 2 34 1 2 3 4 1 2 3 4 tabela porta 1 a 3 ? tabela porta 4 b 3 ? tabela porta 1 c 4 ? S tabela porta 3 a 2 z z 117 PUC-Rio / DI TeleMídia 34 1 2 3 1 2 34 1 2 3 4 1 2 3 4 tabela porta 1 a 3 ? tabela porta 4 b 3 ? tabela porta 1 c 4 a S tabela porta 3 a 2 z z PUC-Rio / DI TeleMídia 34 1 2 3 1 2 34 1 2 3 4 1 2 3 4 tabela porta 1 a 3 b tabela porta 4 b 3 c tabela porta 1 c 4 a S tabela porta 3 a 2 z z 118 PUC-Rio / DI TeleMídia 34 1 2 3 1 2 34 1 2 3 4 1 2 3 4 tabela porta 1 a 3 b tabela porta 4 b 3 c tabela porta 1 c 4 a S tabela porta 3 a 2 z z a PUC-Rio / DI TeleMídia 34 1 2 3 1 2 34 1 2 3 4 1 2 3 4 tabela porta 1 a 3 b tabela porta 4 b 3 c tabela porta 1 c 4 a a tabela porta 3 a 2 z z a 119 PUC-Rio / DI TeleMídia 34 1 2 3 1 2 34 1 2 3 4 1 2 3 4 tabela porta 1 a 3 b tabela porta 4 b 3 c tabela porta 1 c 4 a b tabela porta 3 a 2 z z a PUC-Rio / DI TeleMídia 34 1 2 3 1 2 34 1 2 3 4 1 2 3 4 tabela porta 1 a 3 b tabela porta 4 b 3 c tabela porta 1 c 4 a a tabela porta 3 a 2 z z a Z 120 PUC-Rio / DI TeleMídia Comutação Por Rótulos � A tabela de comutação de rótulos pode ser construída por procedimentos de estabelecimento de conexão, como descrito anteriormente, e neste caso temos conexões dinâmicas (ou chaveadas). � Procedimentos de gerenciamento podem também ser usados para escrever diretamente na tabela de comutação. Neste caso temos conexões semi- permanentes ou permanentes. PUC-Rio / DI TeleMídia Frame Relay 121 PUC-Rio / DI TeleMídia Redes Frame Relay � Redes frame relay são redes com comutação de rótulos orientadas a conexão. � Os pacotes que trafegam na rede, denominados quadros, são de tamanho variáveis. � Na comutação dos quadros, o nível de enlace nos comutadores realiza a detecção de erro e a comutação de rótulos. Funções de correção de erro e controle de fluxo não são realizadas. PUC-Rio / DI TeleMídia Frame Relay Pilha de Controle Normalmente inexistente Conexões por Gerência Pilha de Dados 122 PUC-Rio / DI TeleMídia Serviço de Frame Relaying DL-CONTROL DL-CORE Níveis 3 a 7 FÍSICO DL-CORE FÍSICO DL-CORE FÍSICO DL-CONTROL DL-CORE Níveis 3 a 7 FÍSICO PUC-Rio / DI TeleMídia Quadros Frame Relay FLAG FLAGDLCI FCSInformação DLCI 0 RES EA 0 EA 1DEBECNFECNDLCI 1 Octeto 2 Octeto 3 1 octeto 2 octetos 2 octetos 1 octeto 1 bit 1 bit1 bit 1 bit4 bits 123 PUC-Rio / DI TeleMídia Frame Handler ICF = 5 ICF = 6 ICF = 7 ICF = 8 ICF = 9 DLCI = 312 DLCI = 0 DLCI = 0 DLCI = 0 DLCI = 0 DLCI = 0 DLCI = 334 DLCI = 342 DLCI = 306 DLCI = 306 DLCI = 322 Frame Relay Control Point PUC-Rio / DI TeleMídia Quadros Frame Relay FLAG FLAGDLCI FCSInformação DLCI 0 RES EA 0 EA 1DEBECNFECNDLCI 1 Octeto 2 Octeto 3 1 octeto 2 octetos 2 octetos 1 octeto 1 bit 1 bit1 bit 1 bit4 bits 124 PUC-Rio / DI TeleMídia Redes ATM PUC-Rio / DI TeleMídia Redes ATM � Redes ATM são redes com comutação de rótulos orientadas a conexão. � Os pacotes que trafegam na rede, denominados células, são de tamanho fixos (53 octetos). � Na rede ATM, o nível de enlace, denominado camada ATM, realiza apenas a comutação de rótulos. Nenhuma função de controle de erro e controle de fluxo de dados é realizada. � No estabelecimento da conexão, requisitos de qualidade de serviço (QoS), tais como retardo máximo, banda passante, etc., podem ser requeridos, e podem ser garantidos pela rede. 125 PUC-Rio / DI TeleMídia Modelo de Referência Camada Física Camada ATM Plano de Controle Plano do Usuário Camada de Adaptação Camada de Adaptação Camadas Superiores Camadas Superiores Plano de Gerenciamento das Camadas Plano de Gerencimento dos Planos PUC-Rio / DI TeleMídia Células ATM 48 octetos GFC VPI 1 2 3 4 5 6 7 8 VPI VCI VCI VCI PT CLP 48 octetos VPI 1 2 3 4 5 6 7 8 VPI VCI VCI VCI PT CLP UNI NNI HEC HEC 126 PUC-Rio / DI TeleMídia Comutação por Rótulo Sem Conexão PUC-Rio / DI TeleMídia � Mapeamento Baseado em Topologia • Decisão de encaminhamento tomada baseada no endereço de destino, ou na composição endereços fonte e destino Comutação por Rótulo 127 PUC-Rio / DI TeleMídia � Mapeamento Baseado em Topologia � Mapeamento Baseado em Fluxo • Decisão de encaminhamento tomada baseada no tipo de fluxo. Fluxos mais duradouros são comutados, os outros roteados normalmente. Comutação por Rótulo PUC-Rio / DI TeleMídia Comutação Por Rótulos em Redes Não Orientadas a Conexão � Em redes não orientadas a conexão, o LSP precisa ser refrescado de tempos em tempos. Diz-se que o LSP estabelece uma conexão “soft state”. � No modo orientado a tráfego, um intervalo grande entre pacotes do mesmo fluxo gera a retirada do LSP das tabelas de comutação do caminho. O próximo pacote do fluxo vai então estabelecer um novo LSP. � No modo orientado a topologia, cada alteração na tabela de roteamento pode gerar a destruição do LSP correspondente, e a geração de um novo LSP. 128 PUC-Rio / DI TeleMídia ARIS - AGGREGATE ROUTE-BASED IP SWITCHING Tecnologia desenvolvida pela IBM. ISR A Rede A ISR B Rede B ISR C Rede C ISR D EI=1 Rede=C EI=27 Rede=C EI=8 Rede=C EI = Egress Identifier, ou Identificador de Saída ISR = Integrated Switch Router PUC-Rio / DI TeleMídia Comutação IP 129 PUC-Rio / DI TeleMídia Roteamento IP Sou eu o Destino ? Pega o Endereço IP de Destino (Dn) Está Dn entre as rotas diretas ? Está Dn entre as rotas indiretas ? Existe uma rota default ? Reporta “Rede inalcançável” e descarta o datagrama Datagrama Chegou !!! Envia diretamente pela rede conectada Envia para o endereço do roteador especificado Envia pela rota default Sim Não Não Não Não Não Sim Sim Sim PUC-Rio / DI TeleMídia Comutação IP � Preocupação: compatibilidade • Nem todas as soluções permitem que sejam utilizados os comutadores já existentes, geralmente se amarrando a hardwares específicos. 130 PUC-Rio / DI TeleMídia MPLS - MultiProtocol Label Switching � Tentativa de padronização: formado um grupo de trabalho do IETF, sob o nome de MultiProtocol Label Switching, ou simplesmente MPLS. � Responsável por padronizar uma tecnologia base para uso em label switching e roteamento a nível de camada de rede, bem como a sua implementação sobre diversas outras tecnologias de conexão, que incluem: POS (Packet-over-SONET), Frame Relay, Ethernet, Token-Ring, ATM, etc. PUC-Rio / DI TeleMídia MPLS Rede MPLS Nós de Borda Ponto de Ingresso Ponto de Saída Label Switched Path (Fluxo) Label Switched Router Nós Internos 131 PUC-Rio / DI TeleMídia LDP - Label Distribution Protocol � LSRs devem ser capazes de trocar mensagens de controle com seus vizinhos de forma a compartilhar um acordo comum do relacionamento de cada um dos rótulos associados a um fluxo qualquer. Este procedimento é conhecido como Protocolo de Distribuição de Rótulos (LDP). � Dois grandes subgrupos: • Edge Control Operation (abordagem orientada à topologia), ou Operação Controlada na Borda, representado pelos padrões ARISSPEC e TDP; • Distributed Operation (abordagem orientada ao tráfego), ou Operação Distribuída, representado pelo FANP e IFMP. PUC-Rio / DI TeleMídia Protocolo de Distribuição de Rótulos 132 PUC-Rio / DI TeleMídia LDP � Modelo dowstream-on-demand . � É iniciado por um nó de borda (um ponto de ingresso ou saída). � Mensagens explícitas do LDP carregam informações de gerenciamento de rótulos que são escolhidos pelo nó na direção do fluxo (rótulo de entrada) e comunicado ao nó vizinho no sentido inverso (que o usará como rótulo de saída). PUC-Rio / DI TeleMídia LDP � Ao receber uma mensagem LDP Hello, o LSR inicia o estabelecimento de uma conexão TCP com o LSR que originou a mensagem. � Uma vez estabelecida a conexão, parâmetros são trocados, por intermédio de mensagens LDP Initialization, o que inicia uma sessão LDP entre os LSRs pares. Estes LSRs devem concordar sobre a versão do protocolo LDP, o método de distribuição de rótulos a ser utilizado (unsolicited downstream ou downstream- on-demand), se o controle da distribuição será ordenado ou independente, se o modo de retenção de rótulos será liberal ou conservativo, valores de timeout, dentre outros parâmetros. � Uma vez estabelecida uma sessão LDP, LSRs vizinhos podem trocar associações de rótulos a FECs por intermédio das mensagens de anúncio Label Request e Label Mapping. 133 PUC-Rio / DI TeleMídia 34 1 2 3 1 2 34 1 2 3 4 1 2 3 4 S tabela porta 1 D 3 ? Label Request PUC-Rio / DI TeleMídia 34 1 2 3 1 2 34 1 2 3 4 1 2 3 4 tabela porta 1 D 3 ? tabela porta 4 b 3 ? S 134 PUC-Rio / DI TeleMídia 34 1 2 3 1 2 34 1 2 3 4 1 2 3 4 tabela porta 1 D 3 ? tabela porta 4 b 3 ? tabela porta 1 c 4 ? S tabela porta 3 a 2 PUC-Rio / DI TeleMídia 34 1 2 3 1 2 34 1 2 3 4 1 2 3 4 tabela porta 1 D 3 ? tabela porta 4 b 3 ? tabela porta 1 c 4 a S tabela porta 3 a 2 D Label Mapping 135 PUC-Rio / DI TeleMídia 34 1 2 3 1 2 34 1 2 3 4 1 2 3 4 tabela porta 1 D 3 b tabela porta 4 b 3 c tabela porta 1 c 4 a S tabela porta 3 a 2 D PUC-Rio / DI TeleMídia 34 1 2 3 1 2 34 1 2 3 4 1 2 3 4 tabela porta 1 D 3 b tabela porta 4 b 3 c tabela porta 1 c 4 a D tabela porta 3 a 2 D 136 PUC-Rio / DI TeleMídia Mensagens LDP LDP Me ssages Discovery Me ssages Hello Envia da por um L SR a os LSRs vizinhos de forma a anunciar a sua presença . Address Identi fica o endereço de uma inte rfa ce de um LSR. Address Withdra w Elimina a ide nt ific açã o de endereço de uma inte rfa ce de um LSR. Session Me ssages Ini tializa tion Util iza da no esta be le cim ento de uma sessão L DP. KeepAlive Mantém a sessã o LDP at iva. Adver tiseme nt Message s Label Reque st Solici ta uma a ssoc ia ção de um rótulo a uma FEC e m particula r. Label Mapping Informa a a ssocia ção de um rótulo a uma FE C. Label Abort Re quest Ut il iza do para torna r sem efeito a solici ta ção de uma associaçã o. Label Withdraw Elimina a a ssociaç ão rótulo a FE C informada previa mente. Label Rele ase Pe rm ite a um LSR sinal iza r que a a ssocia çã o s olici ta da nã o é mais ne ces sá ria. Notific ation Me ssage s Notific at ion Condiç õe s de e rro ou sta tus são e nvia da s at ravés desta mensa gem. __MACOSX/Slides/Arquivos Originais/._02.grupo.pdf Slides/Arquivos Originais/03.grupo.pdf 1 PUC-Rio / DI TeleMídia Nível de Transporte PUC-Rio / DI TeleMídia Tipos de Serviço de Transporte ¾ De forma análoga às camadas de enlace e de rede, a camada de transporte oferece ao nível de sessão, dois tipos de serviço: • serviços não-orientados à conexão. • serviços orientados à conexão 2 PUC-Rio / DI TeleMídia Serviço Não-Orientado à Conexão ¾ Quando opera no modo não-orientado à conexão, a camada de transporte mapeia o pedido de transmissão de uma SDU (unidades de dados de serviço, ou seja, mensagem do nível superior) de transporte em um pedido de transmissão feito, usualmente, ao serviço não-orientado à conexão fornecido pela camada de rede. ¾ O UDP da Internet é um exemplo de protocolo que implementa o serviço não-orientado a conexão. PUC-Rio / DI TeleMídia Serviço Orientado a Conexão ¾ No modo de operação ori entado à conexão, o serviço de transporte fornece meios para estabelecer, manter e liberar conexões de transporte entre um par de usuários, possivelmente entidades da camada de sessão, através de pontos de acesso ao serviço de transporte (SAPs). Para o protocolo de transporte, tudo então se passa como se houvesse um circuito ligando cada par de SAPs (denominado circuito virtual). ¾ Sobre uma conexão, controle de erro e de fluxo são geralmente aplicados. De fato, os protocolos de transporte lembram, sob vários aspectos, os protocolos do nível de enlace. Todas as técnicas apresentadas para o nível de enlace para controle de erro e fluxo também se aplicam ao nível de transporte, só que agora não mais na conexão de enlace, mas no circuito virtual estabelecido entre os SAPs de transporte. ¾ O TCP da Internet é um exemplo de protocolo que implementa o serviço orientado a conexão. Outro exemplo é o padrão TP4 da ISO. 3 PUC-Rio / DI TeleMídia Funções da Camada de Transporte ¾ Multiplexação ou splitting. ¾ Transporte de unidades de dados do serviço de transporte (SDUs ou mensagens). ¾ Segmentação e blocagem. ¾ Detecção e correção de erros fim a fim. ¾ Sequenciação. ¾ Controle do fluxo de dados nas conexões de transporte. ¾ Transporte de dados expresso. • Uma unidade de dados expressa é transferida/processada com prioridade maior que as unidades de dados normais. PUC-Rio / DI TeleMídia Multiplexação ¾ Custo: Várias concessionárias de serviços de rede fazem a sua tarifação baseada no tempo em que uma conexão de rede está aberta. • Em uma aplicação com tráfego em rajada essa conexão pode ficar muito tempo ociosa, tendo o usuário de pagar por esse tempo. Uma solução é a multiplexação de várias conexões de transporte na conexão de rede. ¾ Banda passante: Quando a conexão de rede oferece uma banda passante muito maior que a utilizada pelas conexões de transporte. 4 PUC-Rio / DI TeleMídia Splitting ¾ Banda passante: a conexão de rede pode oferecer uma banda passante muito mais baixa do que a necessária pela conexão de transporte. Uma solução nesse caso é realizar a divisão (splitting) da conexão de transporte em várias conexões de redes. ¾ No caso de uma estação possuir vários canais de saída no nível físico, o splitting pode ser usado para aumentar ainda mais o desempenho. PUC-Rio / DI TeleMídia Serviços Oferecidos ¾Com conexão ¾Sem conexão 5 PUC-Rio / DI TeleMídia Estabelecimento de Conexão (b) E1 E2 PC PC PC CC CC CC D D D PC CC D PUC-Rio / DI TeleMídia ¾ Método proposto por Tomlinson [Tomlinson 75] ¾ Duas unidades de dados do protocolo de transporte (T-PDU) com numeração idêntica nunca podem estar pendentes ao mesmo tempo. ¾ As numerações das T-PDUs não se repetem dentro do período T - tempo de vida de um pacote. Three-way Handshake 6 PUC-Rio / DI TeleMídia Three-way Handshake (a) (b) E1 E2 E1 E2 PC(a) PC(a) CC(b,a)CC(b,a) D(a,b) D(a,b) PC(i) = Pedido de conexão (seq=i) CC(j,i) = Confirmação de conexão (seq=j, ack=i) D(i,j) = Dados (seq=i, ack=j) PC(a) PC(b) PC(b) CC(c,b) CC(k,a) CC(c,b) D(b,c) D(b,c) D(b,c) PC(a) CC(k,a) D(b,c) R(j) = Rejeita conexão (ack=j) R(k) R(k) PUC-Rio / DI TeleMídia Encerramento de Conexões ¾ Um problema presente é evitar que dados sejam perdidos depois que um dos lados encerrou a conexão. ¾ Uma entidade de transporte ao pedir uma desconexão deve aguardar por um tempo antes de fechar a conexão, podendo receber dados durante esse período. ¾ Uma conexão termina apenas depois de decorrido um certo tempo sem que chegue nenhuma T-PDU. ¾ Dessa forma, se um lado se desconectar, o outro vai notar a falta de atividade e também se desconectar. 7 PUC-Rio / DI TeleMídia Encerramento de Conexões ¾ Para evitar que uma conexão seja desfeita, os participantes devem assegurar o envio de T-PDUs periódicas informando que estão vivos, quando não têm dados a transmitir. ¾ Caso muitas T-PDUs se percam durante uma conexão, um dos lados pode fechar a conexão indevidamente. ¾ Uma combinação de temporizadores com confirmação de desconexão pode ser tentada, sempre minimizando o problema. PUC-Rio / DI TeleMídia Qualidade de Serviço ¾ O retardo no estabelecimento da conexão. ¾ O retardo no encerramento da conexão. ¾ A probabilidade de falha no estabelecimento da conexão. ¾ A probabilidade de falha na liberação da conexão. ¾ A vazão em cada sentido da conexão, isto é, a taxa de bits transferidos por segundo. ¾ O retardo de transferência médio, tambémemcada sentido. ¾ O retardo de transferência máximo, tambémem cada sentido. ¾ A variação estatística do retardo, expressa, por exemplo, em termos da variância do retardo de transferência. ¾ A taxa de erro, expressa emporcentagemdos bits transmitidos. ¾ Probabilidade de queda de uma conexão, isto é, a probabilidade de que a camada de transporte se veja obrigada a fechar u ma conexão devido a falhas ou problemas de congestionamento. 8 PUC-Rio / DI TeleMídia Protocolos de Transporte ¾ Mesmas técnicas do nível de enlace agora aplicadas fim-a-fim ¾ Controle de Fluxo • Stop-and-Wait • Sliding Window ¾ Controle de Erro • ARQ Automatic Repeat Request • Selective Repeat • Go Back N PUC-Rio / DI TeleMídia Controle de Fluxo ¾ Regula o fluxo de quadros entre transmissor e receptor ¾ Resolve o problema de diferença entre velocidade de transmissão e recepção ¾ Não permite que uma estação transmissora mais rápida sobrecarregue uma estação receptora ¾ Técnicas: • Stop-and-Wait • Sliding Window 9 PUC-Rio / DI TeleMídia Protocolo Stop-and-Wait Quadro 0 win 1 win 1 Quadro 0 Quadro 1 win 0 win 0 Quadro 1 Transmissor Receptor Quadro 0 win 1 win 1 Quadro 0 T Quadro 1 win 0 win 0 Quadro 1 PUC-Rio / DI TeleMídia Protocolo Sliding Window Quadro 0 Quadro 0 Quadro 1 win 4 win 4 Quadro 1 Transmissor Receptor Quadro 4 Quadro 4 T Quadro 0 Quadro 0 Quadro 2 Quadro 2 Quadro 3 Quadro 3 win 3 win 3 Quadro 1 Quadro 1 Quadro 2 Quadro 2 10 PUC-Rio / DI TeleMídia Protocolo Sliding Window Quadro 0 Quadro 0 Quadro 1 win 4 win 4 Quadro 1 Transmissor Receptor Quadro 4 Quadro 4 T Quadro 0 Quadro 0 Quadro 2 Quadro 2 Quadro 3 Quadro 3 win 3 win 3 Quadro 1 Quadro 1 Quadro 2 Quadro 2 Quadro 3 Quadro 3 PUC-Rio / DI TeleMídia Controle de Erro ¾ Detecção de erro • Checksum • CRC - Cyclic Redundancy Code ¾ Correção de erro • recuperação do quadro original • retransmissão do quadro com erro ¾ Correção de erro • Stop-and-Wait ARQ • Selective Repeat • Go-Back-N 11 PUC-Rio / DI TeleMídia Controle de Erro Protocolo Stop-and-Wait ARQ Quadro 0 ACK 1 ACK 1 Quadro 0 Quadro 1 Quadro 1 Transmissor Receptor Quadro 1 ACK 0 ACK 0 Quadro 1 TInterv alosde Timeout Quadro 0 ACK 1 ACK 1 Quadro 0 PUC-Rio / DI TeleMídia Controle de Erro Protocolo GO BACK N 0 1 2 3 4 5 6 7 8 2 3 4 5 6 7 8 9 10 0 1 E 3 4 5 6 7 8 2 3 4 5 6 7 8 9 Interv alo de TIMEOUT Quadros descartados Tempo Tamanho da janela de recepção > 1 A1 A2 A5 A7 12 PUC-Rio / DI TeleMídia Controle de erro Protocolo SELECTIVE REPEAT 0 1 2 3 4 5 6 7 8 2 3 4 5 6 9 10 11 12 0 1 E 3 4 5 6 7 8 2 3 4 5 6 9 10 11 Interv alo de TIMEOUT Quadros bufferizados Tempo Tamanho da janela de recepção > 1 Interv alo de TIMEOUT Interv alo de TIMEOUT A0 A1 A8 A9 Quadros descartados PUC-Rio / DI TeleMídia Serviços de Rede x Serviços de Transporte Serviço de Datagramas Serviço de Datagramas Serviço de Circuito Virtual Serviço de Datagramas Serviço de Datagramas Serviço de Circuito Virtual Serviço de Circuito Virtual Serviço de Circuito Virtual Camada de Transporte Camada de Rede 13 PUC-Rio / DI TeleMídia ISO - TP ¾ Tipo A: redes que consideram erro qualquer perda de dados. • Nesse tipo de rede a quantidade de pacotes duplicados, perdidos, fora de seqüência ou danificados é desprezível. • O serviço fornecido por esse tipo de rede é orientado à conexão. As redes locais que fornecem o serviço orientado à conexão IEEE 802.2 se aproximam bastante desse perfil. PUC-Rio / DI TeleMídia ISO - TP ¾ Tipo B: como as redes tipo A, as redes tipo B consideram erro qualquer perda de dados. Entretanto, nesse tipo de rede os erros são mais freqüentes, sendo então menos confiáveis que as do tipo A. • Enquadram-se nesse tipo, as redes públicas que fornecem serviço de circuito virtual. O serviço fornecido pelas redes tipo B também é orientado à conexão. 14 PUC-Rio / DI TeleMídia ISO - TP ¾ Tipo C: redes que não detectam erros quando pacotes são perdidos, duplicados, entregues fora de ordem ou danificados. • Essas redes fornecem o serviço datagrama não- confiável (serviço sem conexão e sem confirmação). PUC-Rio / DI TeleMídia TP0 ¾ Fornece mecanismos para estabelecer e encerrar conexões de transporte, utilizando uma conexão de rede para cada conexão de transporte aberta. ¾ As funções executadas na fase de transferência de dados resumem-se a: transferência de PDUs e, segmentação e remontagem de SDUs. ¾ Pressupõe a utilização de redes tipo A. 15 PUC-Rio / DI TeleMídia TP1 ¾ O TP1 é semelhante ao TP0, porém foi projetado para recuperar erros causados pela reiniciação (reset) de conexões de rede. ¾ Deve ser utilizado em redes onde ocorrem reiniciações com uma certa freqüência. ¾ As PDUs são numeradas e armazenadas enquanto a entidade de transporte de origem não receber um reconhecimento. Quando a conexão de rede usada por uma conexão de transporte é reiniciada, o fornecedor do serviço de transport e TP1 sabe ressincronizar e continuar do ponto em que tinha parado. Nenhum controle de erro ou fluxo é realizado, além daquele fornecido pela própria camada de rede. ¾ O TP1 foi projetado para ser usado em redes tipo B, porém pode ser usado também em redes tipo A. PUC-Rio / DI TeleMídia TP2 ¾ O TP2 implementa a multiplexação do acesso. ¾ Redes públicas baseiam, normalmente, sua tarifação na cobrança de uma taxa para cada conexão estabelecida, e de outra taxa para cada pacote transmitido. ¾ Adicionalmente, o TP2 pode executar as funções de controle de fluxo e segmentação/remontagem de SDUs, não realizando qualquer controle de erro ou recuperação em caso de reiniciação de uma conexão. ¾ Esse protocolo é, portanto, apropriado para redes tipo A. 16 PUC-Rio / DI TeleMídia TP3 ¾ O TP3 combina as funções dos protocolos TP1 e TP2, implementando as funções: • multiplexação/demultiplexação de conexões de redes • controle de fluxo, segmentação/remontagem e restabelecimento de conexões no caso de reiniciação de conexões de redes. ¾ Esse protocolo pode ser usado em redes tipo A ou B. PUC-Rio / DI TeleMídia TP4 ¾ Projetado para redes tipo C (embora possa obviamente ser utilizado em redes de tipo A e B), que fornecem serviço sem conexão e sem confirmação. ¾ Cabe ao TP4 detectar e recuperar pacotes perdidos, duplicados, danificados e entregues fora de seqüência. 17 PUC-Rio / DI TeleMídia TP4 ¾ Utiliza three-way handshake. ¾ Fornece o serviço de multiplexação de conexões de transporte em uma conexão de rede, e permite também que a carga de uma conexão de transporte seja distribuída (splitting) em várias conexões de rede. ¾ Fornece segmentação e blocagem. ¾ Utiliza o mecanismo de checksum para detectar erros. Usa o seletive repeat para recuperação de erros. ¾ Controle de fluxo implementado através da técnica de janela deslizante (sliding window) com alocação dinâmica de crédito. • Toda vez que envia o reconhecimento das mensagens que recebeu, o receptor envia também o valor do crédito corrente (o valor do crédito indica o número de buffers que o receptor tem disponíveis em um dado momento). Por exemplo: ACK (x, w'). ¾ Oferece um serviço expresso. As PDUs transportando dados expressos têm prioridade em relação às PDUs com dados comuns. PUC-Rio / DI TeleMídia Perguntas ¾ Em que tipo de rede a comutação rápida de pacotes tem um bom desempenho? ¾ O que vem a ser comutação rápida por pacotes? Qual a diferença para a comutação de pacotes? ¾ Por que na comutação rápida de pacotes são necessárias duas pilhas de protocolo? ¾ Faça passo a passo o procedimento de uma comutação rápida por pacotes em redes com conexão? ¾ Faça passo a passo o procedimento de uma comutação rápida por pacotes em redes sem conexão? ¾ Descreva o funcionamento da rede frame relay. ¾ Descreva o funcionamento de uma rede ATM. ¾ Você poderia usar o mesmo procedimento de comutação rápida de pacotes das redes com conexão em redes sem conexão? Se sim, como? O que é conexão soft state? ¾ Como funciona o padrão MPLS? 18 PUC-Rio / DI TeleMídia Perguntas ¾ Faça uma avaliação dos serviços de transporte com e sem conexão, sobre serviços de rede com e sem conexão. ¾ Quais as funções da camada de transporte, obrigatórias e opcionais? ¾ Quando e por que é necessário a multiplexação no nível de transporte? ¾ Quando e por que é necessário o splitting no nível de transporte? ¾ Quais os problemas relacionados ao estabelecimento de conexões no nível de transporte? Como podem ser solucionados? ¾ Quais os problemas relacionados ao encerramento de conexões no nível de transporte? Como podem ser minorados? ¾ O que vem a ser qualidade d serviço? ¾ Cite e explique dois mecanismos para controle de erro no nível de transporte. ¾ Cite e explique dois mecanismos para controle de fluxo no nível de transporte. ¾ Faça uma avaliação dos diversos tipos de protocolo de transporte ISO, frente aos diversos níveis de rede. PUC-Rio / DI TeleMídia UDP 19 PUC-Rio / DI TeleMídia User Datagram Protocol ¾ Fornece serviço sem conexão não confiável utilizando o IP ¾ Multiplexação de conexões em várias portas PUC-Rio / DI TeleMídia Multiplexação e Demultiplexação UDP Porta 1 IP Porta 2 Porta 3 UDP (Demultiplexação baseado no número da porta) 20 PUC-Rio / DI TeleMídia Quadro UDP 0 7 15 23 31 Octeto 1 Octeto 2 Octeto 3 Octeto 4 UDP SOURCE PORT UDP DESTINATION PORT UDP MESSAGE LENGTH UDP CHECKSUM DATA . . . Opcionais -- campo = 0 RFC 1123 recomenda uso dos dois campos Checksum feito somente sobre a mensagem UDP não garante que o endereço IP de destino está correto ou que os dados do datagrama foram entregues ao protocolo correto (checksum do IP pode ter falhado) PUC-Rio / DI TeleMídia 0 7 15 23 31 Octeto 1 Octeto 2 Octeto 3 Octeto 4 SOURCE IP ADDRESS (*) DESTINATION IP ADDRESS ZERO PROTO (17) UDP LENGTH UDP SOURCE PORT UDP DESTINATION PORT UDP MESSAGE LENGTH UDP CHECKSUM DATA . . . (*) Viola a divisão estrita em camadasNão é enviado no pacote UDP UDP Pseudo-Header para cálculo do checksum 21 PUC-Rio / DI TeleMídia Módulo IP Módulo UDP Aplicação Send(IP dest, porta, dados apl) dados apl dados UDP Send(IP dest, dados udp) header IP dados IP header UDP IP src UDP Checksum X Modelo OSI ¾ End. IP de origem não é informado pela aplicação, quando a mesma deseja enviar um pacote UDP • módulo UDP tem que pedir ao módulo IP o end. IP do host • Não há uma separação bem definida (em termos de encapsulamento) entre os dois módulos PUC-Rio / DI TeleMídia TCP 22 PUC-Rio / DI TeleMídia Transmission Control Protocol ¾ Serviço confiável orientado a conexão (Circuito Virtual) • Sequenciação • Deteção e correção de erros fim-a-fim • Sliding Window PUC-Rio / DI TeleMídia Portas TCP ¾ Cada um dos usuários (processos de aplicação) que o TCP está atendendo em um dado momento é identificado por uma porta diferente. ¾ Para obter um endereço que identifique univocamente um usuário TCP, o identificador da porta é concatenado ao endereço IP onde a entidade TCP está sendo executada, definindo um socket. ¾ Um socket, que é equivalente a um T-SAP, identifica univocamente um usuário TCP em toda a inter-rede. 23 PUC-Rio / DI TeleMídia Quadro TCP Octeto 1 Octeto 2 Octeto 3 Octeto 4 0 7 15 23 31 TCP DESTINATION PORTTCP SOURCE PORT DATA ... WINDOWHLEN SEQUENCE NUMBER RESERVED CODE BITS ACKNOWLEDGEMENT NUMBER URGENT POINTERCHECKSUM PADDINGOPTIONS (IF ANY) PUC-Rio / DI TeleMídia TCP ¾ Uma conexão é identificada pelo par de sockets de suas extremidades. ¾ Um socket local pode participar de várias conexões diferentes com sockets remotos. ¾ Uma conexão pode ser usada para transportar dados em ambas as direções simultaneamente, ou seja, as conexões TCP são full-duplex. 24 PUC-Rio / DI TeleMídia Formato do Segmento TCP Ao contrário do UDP, SOURCE PORT e CHECKSUM são obrigatórios HLEN -> 4 bits comprimento do header medido em múltiplos de 32 bits (4 octetos) Octeto 1 Octeto 2 Octeto 3 Octeto 4 0 7 15 23 31 TCP DESTINATION PORTTCP SOURCE PORT DATA (IF ANY) ... WINDOWHLEN SEQUENCE NUMBER RESERVED CODE BITS ACKNOWLEDGEMENT NUMBER URGENT POINTERCHECKSUM PADDINGOPTIONS (IF ANY) CHECKSUM calculado do mesmo modo que no UDP (Pseudo-header, com campo PROTOCOL = 6) Octetos presentes no buffer de transmissão PUC-Rio / DI TeleMídia TCP ¾ O algoritmo de three-way handshake é utilizado na abertura de conexões. ¾ TCP transfere uma cadeia (stream) contínua de octetos, nas duas direções, entre seus usuários. Normalmente o TCP decide o momento de parar de agrupar os octetos e de, conseqüentemente, transmitir o segmento formado por esse agrupamento. Porém, caso deseje, o usuário do TCP pode fazer uso da função push que faz com que o TCP transmita imediatamente os octetos que estão nos seus buffers aguardando transmissão. 25 PUC-Rio / DI TeleMídia TCP ¾ Cada octeto transmitido é associado a um número de seqüência. O número de seqüência do primeiro octeto dos dados contidos em um segmento é transmitido junto com o segmento e é denominado número de seqüência do segmento. ¾ Os segmentos carregam “de carona” (piggybacking) um reconhecimento. O reconhecimento constitui-se do número de seqüência do próximo octeto que a entidade TCP transmissora espera receber do TCP receptor na direção oposta da conexão. PUC-Rio / DI TeleMídia TCP ¾ O mecanismo de controle de fluxo baseia-se no envio, junto com o reconhecimento, do número de octetos que o receptor tem condições de receber (tamanho da janela de recepção), contados a partir do último octeto da cadeia de dados recebido com sucesso. ¾ Com base nessa informação o transmissor atualiza sua janela de transmissão, ou seja, calcula o número de octetos que pode enviar antes de receber outra liberação. 26 PUC-Rio / DI TeleMídia Janelas Deslizantes no TCP Janela de transmissão (Octetos) Transmitidos e reconhecidos Em processo de transmissão Ainda a serem transmitidos Janela de recepção (Octetos) Buffer livre para recepçãoBuffer ocupadocom octetos não lidos pela aplicação receptora ...... ... ... ... segmentos ... ... PUC-Rio / DI TeleMídia Janelas Deslizantes no TCP Janela de transmissão (Octetos) ... ... ... Janela de recepção (Octetos) ...... ... ... SEQ (X octetos)Necessário para o controle de retransmissões 27 PUC-Rio / DI TeleMídia Janela de transmissão (Octetos) ... ... ... Janela de recepção (Octetos) ...... ... ... SEQ (X octetos) ... Janelas Deslizantes no TCP PUC-Rio / DI TeleMídia Janela de transmissão (Octetos) ... ... ... Janela de recepção (Octetos) ...... ACK (reconhecimento) ... ... ... Reconhecimentos são sempre cumulativos, isto é, especificam o número de seqüência do próximo OCTETO que o receptor espera receber. Janelas Deslizantes no TCP 28 PUC-Rio / DI TeleMídia Janela de transmissão (Octetos) ... ... ... Janela de recepção (Octetos) ...... ... ... ... Janelas Deslizantes no TCP PUC-Rio / DI TeleMídia Janela de transmissão (Octetos) ... ... ... Janela de recepção (Octetos) ...... Aplicação receptora lê Y octetos ... ... ... Janelas Deslizantes no TCP 29 PUC-Rio / DI TeleMídia Janela de transmissão (Octetos) ... ... ... Janela de recepção (Octetos) ...... W IN (atualização de janela) ... ... ... Janelas Deslizantes no TCP PUC-Rio / DI TeleMídia Janela de transmissão (Octetos) ... ... ... ...... ... ... Janela de recepção (Octetos) Bufferização E temporização são fundamentais para controle de erro e fluxo em TCP Janelas Deslizantes no TCP 30 PUC-Rio / DI TeleMídia Octeto 1 Octeto 2 Octeto 3 Octeto 4 0 7 15 23 TCP DESTINATION PORTTCP SOURCE PORT DATA (IF ANY) ... WINDOWHLEN SEQUENCE NUMBER RESERVED CODE BITS ACKNOWLEDGEMENT NUMBER URGENT POINTERCHECKSUM PADDINGOPTIONS (IF ANY) Segmento TCP – Informação da janela de Tx Identifica a posição, relativa ao fluxo de bits da origem deste segmento, dos dados carregados pelo mesmo. OBS: posição informada em octetos 31 PUC-Rio / DI TeleMídia Segmento TCP – Informação da janela de Rx Informa ao receptor deste segmento a quantidade máxima de octetos que o transmissor deste segmento pode aceitar no momento Informa ao receptor deste segmento o próximo número de seqüência que o transmissor deste segmento espera receber no próximo segmento Octeto 1 Octeto 2 Octeto 3 Octeto 4 0 7 15 23 TCP DESTINATION PORTTCP SOURCE PORT DATA (IF ANY) ... WINDOWHLEN SEQUENCE NUMBER RESERVED CODE BITS ACKNOWLEDGEMENT NUMBER URGENT POINTERCHECKSUM PADDINGOPTIONS (IF ANY) 31 PIGGYBACKING 31 PUC-Rio / DI TeleMídia Protocolo TCP (Transmission Control Protocol) ¾ Multiplexação do SAP IP por meio de portas ¾ Serviço orientado a conexão (circuito virtual) e confiável • Seqüenciação • Controle de fluxo e erro fim-a-fim ¾ Transmissão em fluxos • Unidade de transmissão: octeto ¾ Desassociação da quantidade de dados enviados pela aplicação • Segmentação e blocagem ¾ Conexão full-duplex • Fluxos independentes nas duas direções PUC-Rio / DI TeleMídia Políticas de implementação do TCP ¾ Transmissão: octetos são enviados (em segmentos) de acordo com implementação ¾ Recepção: octetos são entregues à aplicação de acordo com implementação ¾ Aceitação • Em ordem – Segmentos fora de ordem são descartados • Em janela – Segmentos fora de ordem são bufferizados ¾ Retransmissão: • Primeiro somente • Em lote – Um timer por janela • Individual – Um timer por segmento ¾ Reconhecimento • Imediato • Retardado – Aguarda piggybacking para enviar reconhecimento 32 PUC-Rio / DI TeleMídia Considerações a Respeito da Retransmissão ¾ Novamente: reconhecimento especi fica o próximo OCTETO esperado pelo receptor • TCP não é obrigado a retransmitir o segmento original. Ele pode transmitir um segmento resultante da união de dois ou mais segmentos consecutivos (repacketization), respeitando o tamanho máximo que um segmento pode ter ¾ Configuração do timeout de retransmissão • Timeout pequeno: retransmissões desnecessárias • Timeout grande: baixa vazão PUC-Rio / DI TeleMídia Definição do Timeout de Retransmissão ¾ Variável básica: round-trip time ¾ Exemplo de fórmula para cálculo adaptativo do RTT • RTT = (α * OLD_RTT) + ((1-α) * NEW_RTT_SAMPLE) • RTT inicial = 0 (RFC 1122) • NEW_RTT_SAMPLE é obtida para cada “nova” janela ¾ Exemplo de fórmula para definição do timeout emfunção de RTT • Timeout = β * RTT – β pode ser estático (=2) ou obtido por outroalgoritmo • Timeout inicial = 3 segundos • Timeout máximo = 240 segundos ¾ Algoritmo de Jacobson (melhor resposta a altas variações de RTT) • β = variância de RTT 33 PUC-Rio / DI TeleMídia Cálculo do Timeout SEQ = 100 SEQ = 200 ACK = 300 SEQ = 300 SEQ = 400 Timeout = 3000 ms NEW_RTT_SMP = 1000ms RTT = 500 ms αααα = 0.5, ββββ = 2 Tamanho dos segmentos = 100 Timeout = 1000 ms SEQ = 300 NEW_RTT_SMP = ? Timeout esgotado Ambiguidade de Reconhecimento ACK = 500 PUC-Rio / DI TeleMídia Ambiguidade de Reconhecimento ¾ Caso o reconhecimento do segmento chegue após a retransmissão do mesmo, que valor atribuo a NEW_RTT_SAMPLE ? • Solução: não considerar RTT de segmentos retransmitidos – RTT pode permanecer indefinidamente inadequado ¾ Algoritmo de Karn • Timer Backoff: toda vez que um segmento é retransmitido, timeout é multiplicado por N (normalmente 2) • Quando é recebido o reconhecimento correspondente a um segmento não retransmitido, RTT e Timeout são recalculados com base nos valores anteriores aos Backoffs 34 PUC-Rio / DI TeleMídia Algoritmo de Karn SEQ = 100 SEQ = 200 ACK = 300 SEQ = 300 SEQ = 400 NEW_RTT_SMP = 1000ms RTT = 500 ms SEQ = 500 ACK = 600 Timeout = 1000 ms ACK = 500 SEQ = 300Timeout = 2000 ms Timeout Esgotado (Karn) NEW_RTT_SMP = 800 ms RTT = 650 ms Timeout = 1300 ms Timeout = 2000 ms αααα = 0.5, ββββ = 2 Tamanho dos segmentos = 100 PUC-Rio / DI TeleMídia Segmento TCP – Informação da janela de Rx Informa ao receptor deste segmento a quantidade máxima de octetos que o transmissor deste segmento pode aceitar no momento Informa ao receptor deste segmento o próximo número de seqüência que o transmissor deste segmento espera receber no próximo segmento Octeto 1 Octeto 2 Octeto 3 Octeto 4 0 7 15 23 TCP DESTINATION PORTTCP SOURCE PORT DATA (IF ANY) ... WINDOWHLEN SEQUENCE NUMBER RESERVED CODE BITS ACKNOWLEDGEMENT NUMBER URGENT POINTERCHECKSUM PADDINGOPTIONS (IF ANY) 31 PIGGYBACKING 35 PUC-Rio / DI TeleMídia Considerações a Respeito do Controle de Fluxo ¾ Receptor informa WINDOW = 0 quando não consegue mais receber ¾ Quando espaço é liberado, receptor envia atualização de janela com WINDOW > 0 • E se a atualização de janela for perdida ? – Transmissor envia segmentos de um único octeto periodicamente (window probes) para testar tamanho da janela de recepção do receptor • E se a aplicação receptora estiver lendo do buffer blocos de dados muito pequenos, em comparação com a taxa de envio do módulo TCP no transmissor ? PUC-Rio / DI TeleMídia Controle de Fluxo SEQ = 100 SEQ = 200 ACK = 300 WIN = 280 Apl. lê 20 octetosSEQ = 300 SEQ = 400 ACK = 500 WIN = 100 SEQ = 500 Ta m a n ho do s s e gm e n to s = 10 0 (ta m . m áx ) ... ACK = 600 WIN = 0 ACK = 300 WIN = 300 (WIN = 480) 36 PUC-Rio / DI TeleMídia Controle de Fluxo (continuação) SEQ = 500 Apl. lê 10 octetos SEQ = 600 (tam=10) ACK = 610 WIN = 0 Apl. lê 30 octetos ACK = 640 WIN = 0 ... ... Ta m a n ho do s s e gm e n to s < < 10 0 Silly Window Syndrome ACK = 600 WIN = 10 ACK = 600 WIN = 0 ACK = 610 WIN = 30 SEQ = 610 (tam=30) PUC-Rio / DI TeleMídia Tecla A press SEQ = 100 Eco tecla A ACK = 101Tecla B press SEQ = 101 Tecla C press SEQ = 102 Eco tecla C ACK = 103 ... Display da tecla A Eco tecla B ACK = 102 ... Silly Window Syndrome ¾ Atualização de janela informa WINDOW de valor muito pequeno • Consumo desnecessário de banda e de processamento ¾ Segmentos pequenos podem ser produzidos também pelas características do transmissor • Ex: emulação de terminal Tempo entre teclas > 0.2s Tempo entre tecla e eco < 0.2 seg 37 PUC-Rio / DI TeleMídia Silly Window Syndrome ¾ Solução no transmissor: algoritmo de Nagle • Quando uma aplicação gera novos dados a serem enviados em uma conexão na qual dados anteriores foram transmitidos, mas não reconhecidos, os novos dados são bufferizados, só sendo enviados quando: – for possível completar um segmento de tamanho máximo OU – os dados anteriores forem reconhecidos • Eficiente em uma inter-rede com retardo alto • RFC 1122 sugere desabilitar o algoritmo de Nagle em transmissões com interatividade próxima a tempo real PUC-Rio / DI TeleMídia Silly Window Syndrome ¾ Solução no receptor • Só enviar uma atualização de janela informando WINDOW > 0 posteriormente a uma atualização de janela informando WINDOW = 0 quando buffer de recepção estiver com espaço livre igual a: – pelo menos 50% do buffer OU – espaço correspondente a um segmento de tamanho máximo 38 PUC-Rio / DI TeleMídia Colapso de congestionamento Controle de congestionamento ¾ Controle de fluxo do TCP é fim-a-fim, mas pode ocorrer congestionamento em qualquer roteador ¾ Sliding Window não garante que o TCP contribua no controle de congestionamento • Roteadores na iminência de congestionamento • Aumento do RTT • Retransmissões devido a reconhecimentos atrasados • Aumento da carga nos roteadores congestionados – Descarte de datagramas (dados e ACKs) em roteadores congestionados PUC-Rio / DI TeleMídia Colapso de congestionamento ¾ Solução: TCP assume que grande parte das perdas de segmentos se deve a congestionamento ¾ É associado ao transmissor uma janel a de congestionamento, que limita a transmissão de segmentos • Janela de congestionamento inicial: 1 segmento • Vazão da conexão cresce com o aumento da janela de congestionamento, que em condições normais mantém seu tamanho igual ao da janela de recepção do receptor ¾ Em caso de retransmissão, a janela de congestionamento é reduzida ao seu tamanho inicial • Algoritmo de Karn é utilizado exponencialmente – (N = timeout atual) 39 PUC-Rio / DI TeleMídia Como aumentar a vazão da conexão ? ¾ Algoritmo de Slow Start • Para cada reconhecimento recebido (de um segmento não retransmitido), a janela de congestionamento é aumentada de um segmento (de tamanho máximo) ¾ Em condições “ ideais”, o algoritmo de Slow Start pode levar a um crescimento exponencial da janela de congestionamento • Sobrecarga na rede pode reiniciar congestionamento • Solução: técnica de prevenção contra congestionamento – Quando a janela de congestionamento atinge metade de seu tamanho anterior à última retransmissão, o TCP passa a aumentar a janela de congestionamento somente quando TODOS os segmentos internos à janela forem reconhecidos PUC-Rio / DI TeleMídia Slow Start Tamanho dos segmentos = 1Kb Janela de Recepção = 64 Kb 0 8 16 24 32 40 1 3 5 7 9 11 13 15 17 19 21 23 25 Número da transmissão Ja ne la d e co n ge st io n am en to (K by te s) 40 PUC-Rio / DI TeleMídia Slow Start ¾ Algoritmo de Slow Start reduz drasticamente a vazão de uma conexão TCP ¾ Melhora: técnica de decréscimo multiplicativo • Em caso de retransmissão, a janela de congestionamento é reduzida pela metade, até o mínimo de um segmento de tamanho máximo PUC-Rio / DI TeleMídia Slow Start + Decréscimo Multiplicativo Tamanho dos segmentos = 1Kb Janela de Recepção = 64 Kb 0 8 16 24 32 40 1 3 5 7 9 11 13 15 17 19 21 23 25 Número da transmissão Ja ne la d e co n ge st io n am en to (K by te s) 41 PUC-Rio / DI TeleMídia TCP ¾ O algoritmo de three-way handshake é utilizado na abertura de conexões. ¾ TCP transfere uma cadeia (stream) contínua de octetos, nas duas direções, entre seus usuários. Normalmente o TCP decide o momento de parar de agrupar os octetos e de, conseqüentemente, transmitir o segmento formado por esse agrupamento. Porém, caso deseje, o usuário do TCP pode fazer uso da função push que faz com que o TCP transmita imediatamente os octetos que estão nos seus buffers aguardando transmissão. PUC-Rio / DI TeleMídia Octeto 1 Octeto 2 Octeto 3 Octeto 4 0 7 15 23 31 TCP DESTINATION PORTTCP SOURCE PORT DATA ... WINDOWHLEN SEQUENCE NUMBER RESERVED CODE BITS ACKNOWLEDGEMENT NUMBER URGENT POINTERCHECKSUM PADDINGOPTIONS (IF ANY) ACK PSH RST SYN FIN Urgent Pointer válido Campo ACK válido Requisição de PUSH Reinicializa conexão Sincroniza números de sequência Transmissor atingiu fim do stream Segmento TCP CODE BITS (6 bits) Uma vez que uma conexão tenha sido estabelecida, este flag permanece sempre setado URG 42 PUC-Rio / DI TeleMídia Apl. ativa Apl. passiva Caso trivial do algoritmo 3-way handshake isnA - SEQ ACK x octetos (x=0, geralmente) Flag SYN = 1 Flag ACK = 0 isnA+x+1isnB+y+1 SEQ ACK Flag SYN = 0 Flag ACK = 1 isnB isnA+x+1 SEQ ACK y octetos (y=0, geralmente) Flag SYN = 1 Flag ACK = 1 Estabelecimento de conexões ¾ SEQ carrega número de seqüência inicial (ISN) que cada módulo TCP vai utilizar para sequenciar segmentos TCP • ISN incrementado a cada 4 µs ¾ ACK permite que dados do usuário sejam enviados junto ao pedido de estabelecimento (reconhecimento na confirmação da conexão) PUC-Rio / DI TeleMídia Timeout de Estabelecimento ¾ Timeout para segmentos SYN é igual ao timeout inicial (3 seg) ¾ Maioria das implementações permite mais de uma tentativa • Algoritmo de Karn • Windows NT: máximo de 5 tentativas 43 PUC-Rio / DI TeleMídia Encerramento de conexões ¾ Conexão full-duplex: fluxos são encerrados de modo independente ¾ Na prática, o encerramento dos fluxos costuma ocorrer consecutivamente apl. fecha conexão informa apl. x SEQ apl. fecha conexão Flag FIN = 1 x+1 ACK y SEQFlag FIN = 0 y x+1 SEQ ACKFlag FIN = 1 y+1 ACK x+1 SEQ Flag FIN = 0 PUC-Rio / DI TeleMídia Processamento de dados urgentes ¾ Flag URG do campo CODE BITS setado ¾ Dados urgentes são, em geral, informações de controle transmitidas junto com os dados propriamente ditos (sinalização in-band). • Ex: CTRL+C em emulação de terminalOcteto 1 Octeto 2 Octeto 3 Octeto 4 0 7 15 23 31 TCP DESTINATION PORTTCP SOURCE PORT DATA ... WINDOWHLEN SEQUENCE NUMBER RESERVED CODE BITS ACKNOWLEDGEMENT NUMBER URGENT POINTERCHECKSUM PADDINGOPTIONS (IF ANY) Delimita dados urgentes no segmento 44 PUC-Rio / DI TeleMídia Campo TCP Options Octeto 1 Octeto 2 Octeto 3 Octeto 4 0 7 15 23 31 TCP DESTINATION PORTTCP SOURCE PORT DATA ... WINDOWHLEN SEQUENCE NUMBER RESERVED CODE BITS ACKNOWLEDGEMENT NUMBER URGENT POINTERCHECKSUM PADDINGOPTIONS (IF ANY) Option Code Length Data 1 . . . Data n 1 octeto 1 octeto 1 octeto 1 octeto1 octeto PUC-Rio / DI TeleMídia Opções TCP Principais 8 10 Timestamp (permite obter vários NEW _RTT_SAMPLE por janela, mesmo utilizando retransmissão em lote). Código Comp. Descrição 0 - Fim da lista de opções. 2 4 Maximum Segment Size (válido apenas em segmento com flag SYN = 1) 3 3 W indow Scale Factor (aumenta as janelas de transmissão de 16 p/ 32 bits. Válido apenas em segmento com flag SYN =1) 4 2 Selective ACK Permitted (permite ao transmissor retransmitir SOMENTE segmentos perdidos. Válido apenas em segmento com flag SYN=1) 5 Variable Selective ACK (identifica segmentos a serem retransmitidos seletivamente) 45 PUC-Rio / DI TeleMídia Perguntas ¾ Quais as funções realizadas pelo protocolo UDP e como são realizadas? ¾ O que é o UDP Pseudo-Header? Para que serve? ¾ O que é umsocket? Qual sua relação como T-SAP? ¾ Como é identificada uma conexão TCP? Um socket pode participar de mais de uma conexão? ¾ Por que o TCP é dito orientado a “stream”? O que vema ser o “push”? ¾ Como são numerados os pacotes TCP? ¾ Como é realizado o controle de erro no TCP? ¾ Como é realizado o controle de fluxo no TCP? O que é a janela de recepção e a janela de transmissão? ¾ Existe uma única implementação TCP? Discuta as diversas políticas de implementação? PUC-Rio / DI TeleMídia Perguntas ¾ É necessário que o TCP retransmita exatamente o mesmo pacote no caso de timeout? ¾ Quais os problemas que podem acontecer com a escolha de um timeout pequeno? E de um timeout grande? ¾ Explique o algoritmo de cálculo de time-out através de vários cenários de exemplos. Por que é necessário um valor mínimo inicial e um valor máximo? ¾ Explique o problema de ambiguidade de reconhecimento. Como pode ser resolvido? ¾ Explique o algoritmo de Karn. ¾ Quais os problemas que podem acontecer com relação ao controle de fluxo? Cite pelo menos 3 e explique. ¾ Como resolver o problema da perda da informação da janela? ¾ Como resolver o problema denominado “silly window”, tanto do receptor quanto do transmissor? 46 PUC-Rio / DI TeleMídia Perguntas ¾ Por que o TCP não funciona bem em redes com alta taxa de erro? ¾ O que é janela de congestionamento? Qual seu limite máximo? ¾ Explique o algoritmo de “ slow start”. Por que ele pode reiniciar uma condição de congestionamento? Como pode ser reduzido o problema? ¾ O que vem a ser decréscimo multiplicativo? Por que ele é necessário? ¾ Para que serve o campo “ code bits” do TCP? Explique o “three- way-handshake” utilizando esse campo. Explique também o encerramento de conexões. PUC-Rio / DI TeleMídia API de Transporte 47 PUC-Rio / DI TeleMídia Servidores de Processo e de Nome ¾ Existem várias formas de um processo descobrir o T- SAP do processo de destino com quem deseja se comunicar. ¾ O servidor de processos e o servidor de nomes são duas dessas formas. PUC-Rio / DI TeleMídia Servidor de Processo ¾ Servidor de processos (ou logger) especi al, conectado a um T- SAP bem conhecido, através do qual todos os serviços devem ser solicitados. ¾ Quando um processo cliente deseja algum serviço, ele deve começar pelo estabel ecimento da conexão com o servidor de processos (com o T-SAP do servidor de processos). ¾ Uma vez que a conexão tenha sido estabel ecida, o cliente manda ao servidor de processos o nome do serviço que deseja. ¾ Servidor de processo escolhe um T-SAP livre na estação e gera o processo do serviço requisitado dizendo a esse processo para escutar o T-SAP escolhido. ¾ Servidor de processos manda uma mensagem ao cliente remoto contendo o T-SAP escolhido e encerra a conexão. 48 PUC-Rio / DI TeleMídia Servidor de Nomes ¾ Nesse modelo existe um processo especial chamado servidor de nomes. ¾ Na realidade o servidor de nomes pode ser implementado de forma distribuída, com um processo em cada estação. ¾ Usuário cliente estabelece uma conexão com o servidor de nomes, que está vinculado a um T-SAP conhecido. ¾ Cliente envia uma mensagem solicitando o endereço do serviço, recebendo como resposta o T-SAP requisitado. ¾ Cliente encerra a conexão com o servidor de nomes e abre uma conexão com o T-SAP do serviço desejado. ¾ O modelo servidor de nomes exige que cada serviço na rede se cadastre no servidor de nomes, indicando seu T-SAP. PUC-Rio / DI TeleMídia API de Transporte ¾ Uma interface para programa de aplicação (Application Program Interface API) é uma interface disponível para programadores. ¾ A disponibilidade de uma API depende tanto do sistema operacional usado, quanto da linguagem de programação. 49 PUC-Rio / DI TeleMídia APIs de Transporte ¾ As duas APIs de comunicação mais conhecidas para sistemas Unix são os Berkeley Sockets e a TLI (System V Transport Layer Interface). Depois estendidas também para outros sistemas operacionais, como o WinSocket. • Interfaces desenvolvidas para linguagemC. ¾ NetBIOS (Network Basic Input Output System), depois NetBeui, desenvolvida para DOS, Windows, etc. PUC-Rio / DI TeleMídia Berkeley Sockets ¾ Uma associação (association) é definida como uma quíntupla {protocolo, endereço local, processo local, endereço remoto, processo remoto}. ¾ A socket System Call especifica apenas o protocolo. A chamada tem como argumentos de entrada uma família (no nosso caso específico definindo o uso dos protocolos TCP/IP) e um tipo (no nosso caso específico indicando se é um socket para TCP, ou UDP, ou IP). A chamada tem como retorno um valor inteiro, referido como descritor do socket: sockfd. 50 PUC-Rio / DI TeleMídia Berkeley Sockets ¾ Uma vez criado um socket, podemos associar um endereço (TCP, UDP ou IP) a ele, através da chamada bind, que tem como argumentos o sockfd e um ponteiro para o endereço, que como vimos, no ambiente TCP/IP se constitui de: <endereço de porta, endereço de rede, endereço de estação>. ¾ Quando na chamada bind o endereço de porta é especificado como zero, cabe ao sistema escolher um T-SAP ocioso, isto é, um endereço ocioso, e associá- lo ao socket. A chamada bind completa o processo local e o endereço local de uma associação. PUC-Rio / DI TeleMídia Berkeley Sockets ¾ A chamada getsockname retorna o endereço local e o processo local associado ao sockfd, passado como argumento de entrada. ¾ A chamada listen é usada para alocação de um espaço para o armazenamento de pedidos de conexão. A chamada tem como argumentos de entrada o sockfd e o número de pedidos de conexão que devem ser aceitos. 51 PUC-Rio / DI TeleMídia Berkeley Sockets ¾ A chamada getpeername é semelhante à chamada getsockname. A diferença é que ela retorna o <endereço remoto, processo remoto> associado ao sockfd, passado como argumento de entrada. ¾ A chamada connect serve para estabelecer uma conexão ent re dois sockets. ¾ A chamada tem como argumentos de entrada o sockfd, o processo remoto e o endereço remoto. ¾ A interface não exige que tenha sido realizada antes a chamada bind. Se não foi, a própria chamada connect atribuirá um endereço local e porta local ao sockfd, caso tenha-se escolhido na chamada socket um serviço com conexão. Nesse caso, após a chamada connect toda a quíntupla da associ ação, {protocolo, endereço local, processo local, endereço remoto, processo remoto}, estará formada. PUC-Rio / DI TeleMídia Berkeley Sockets ¾ Um serviço sem conexão também pode utilizar a chamada connect. ¾ Nesse caso, a única tarefa realizada pela chamada é o armazenamento da associação formada, para que o sistema possa saber no futuro a quem encaminhar os dados escritos no sockfd, e de quem receber os datagramas futuros enviados ao sockfd. 52 PUC-Rio / DI TeleMídia Berkeley Sockets ¾ A chamada accept deve ser realizada sempre depois de uma chamada listen, que é capaz apenas de armazenar pedidos de conexão vindos de outros processos. ¾ Accept toma a primeira requisição de conexão da lista e cria um novo socket, com as mesmas propriedades do sockfd. Dessa forma, uma única porta pode ser usada para o estabelecimento de múltiplas conexões. ¾ Após a realização da conexão, a chamada retorna o novo sockfd criado, o endereço remoto e o processo remoto. Caso a conexão não tenha sucesso, é retornada uma indicação de erro, junto com o endereço remoto e o processo remoto. PUC-Rio / DI TeleMídia Berkeley Sockets ¾ As chamadas send, sendto, recv e recvfrom são usadas para envio e recebimento de dados. Todas passam como argumento o sockfd. ¾ A chamada sendto tem também como argumento o endereço e processo de destino dos dados. ¾ A chamada recvfrom tem também como argumento o endereço e processo de origem dos dados. Todas essas chamadas podem ser usadas nos protocolos com e sem conexão. 53 PUC-Rio / DI TeleMídia Berkeley Sockets ¾ A chamada close é usada para eliminar um socket. Se existir uma conexão associada ao socket ela é encerrada. ¾ No sistema 4.3BSD, sockets são implementados dentro do kernel do Unix. Todas as chamadas do sistema que discutimos são pontos de entrada no kernel. PUC-Rio / DI TeleMídia Sockets Processo do Usuário Interface de cham adas do socket Protocolos de Com unicação (TCP/UDP/IP) Driver de Rede (Ethernet) Kernel 54 PUC-Rio / DI TeleMídia Protocolos de Aplicação TCP/IP ¾ FTP Transferência de Arquivos ¾ TELNET Emulação de Terminal ¾ NFS Sistema de Arquivos Distribuído ¾ SMTP Correio Eletrônico ¾ SNMP Gerenciamento ¾ DNS Serviço de Diretório ¾ RPC Chamada Remota de Procedimentos PUC-Rio / DI TeleMídia Protocolos e Inter-Dependência HARDWARE + ENLACE DE DADOS + PROTOCOLOS DE ACESSO ARP RARP TCP UDP ASN.1 SMTP RLOGINRSH TELNET DNS ASN.1 TFTP BOOTP RPC IP + ICMP + IGMP CMOT FTP SNMP NFS CMOT APLICAÇÕES XDR 55 PUC-Rio / DI TeleMídia NetBIOS - Network Basic Input Output System ¾ Desenvolvido pela IBM ¾ Extensão da BIOS para serviços de comunicação através de uma rede local ¾ Oferece uma interface de baixo nível para programação de aplicações distribuídas ¾ Conjunto padronizado de serviços acessados através das interrupções de software 5Ch e 2Ah ¾ Toda troca de dados entre aplicação e NetBIOS é realizada através de uma estrutura de dados padrão chamada NCB (Network Control Block) PUC-Rio / DI TeleMídia NetBIOS NetBIOS Interface : int 5Ch int 2Ah Modelo OSI Enlace Rede Físico Sessão Aplicação Apresentação Transporte Aplicacões NetBIOS ETHERNET IEEE 802.3 TOKEN RING IEEE 802.5 IEEE 802.2 Logical Link Control 56 PUC-Rio / DI TeleMídia Comandos NetBIOS 33h 35h 32h ADAPTER STATUS CANCEL RESET Obtém informações sobre uma interface de rede local ou remota Cancela comandos pendentes Limpa tabelas de nomes e sessões Comando Cód Descrição Comandos Gerais 36h 30h 31h F8h ADD GROUP NAME ADD NAME DELETE NAME FIND NAME Adiciona um nome de grupo na tabela de nomes local Adiciona um nome na tabela de nomes local Remove um nome da tabela de nomes local Determina a localização de um nome na rede Comando Cód Descrição Comandos de suporte a Nomes Lógicos PUC-Rio / DI TeleMídia Comandos NetBIOS (cont.) 10h 17h 12h 11h 16h 14h 15h CALL CHAIN SEND HANG UP LISTEN RECEIVE ANY SEND RECEIVE Cria uma conexão lógica com uma aplicação local ou remota Envia dois buffers de dados através de uma sessão estabelecida Finaliza uma conexão lógica Aceita pedidos de conexões lógicas Recebe dados de qualquer conexão lógica existente Envia dados através de uma conexão lógica Recebe dados através de uma conexão lógica específica 34hSESSION STATUS Recebe informações de estado de todas conexões lógicas ativas Comando Cód Descrição Comandos de suporte ao Serviço de Sessões 57 PUC-Rio / DI TeleMídia Comandos NetBIOS (cont.) Comando Cód Descrição 23hRECEIVE BROADCASTDATAGRAM Recebe um datagrama de qualquer estação da rede 21hRECEIVE DATAGRAM Recebe um datagrama de uma estação específica da rede 22hSEND BROADCASTDATAGRAM Envia um datagrama para todas estações da rede 20hSEND DATAGRAMDATAGRAM Envia um datagrama para uma estação específica da rede Comandos de suporte ao serviço de Datagramas PUC-Rio / DI TeleMídia Network Control Block - NCB 1 1 1 1 4 2 16 16 1 1 4 1 14 1 NCB_COMMAND NCB_RETCODE NCB_LSN NCB_NUM NCB_BUFFER NCB_LENGTH NCB_CALLNAME NCB_NAME NCB_RTO NCB_STO NCB_POST NCB_CMD_CPLT NCB_RESERVE NCB_LANA_NUM Campo Tam Código do comando NetBIOS desejado Código de retorno do comando Número da sessão local (retornado por CALL ou LISTEN) Identifica um nome local (retornado por ADD [GROUP] NAME) Ponteiro para um buffer de dados (segment:offset) Tamanho do buffer de dados Identifica o nome do destinatário (aplicação remota) Identifica o nome do remetente (aplicação local) Valor do timeout para recepção Valor do timeout para transmissão Rotina callback executada ao final de um comando assíncrono Status do comando (FFh - Pendente, 00h - Sucesso, outros - Erro) Área reservada LAN Adapter Number - identificação da placa adaptadora Descrição 58 PUC-Rio / DI TeleMídia NetBIOS NetBIOS Interface : int 5Ch int 2Ah Modelo OSI Enlace Rede Físico Sessão Aplicação Apresentação Transporte Aplicacões NetBIOS ETHERNET IEEE 802.3 TOKEN RING IEEE 802.5 IEEE 802.2 Logical Link Control PUC-Rio / DI TeleMídia Nível de Sessão, Apresentação e Aplicação 59 PUC-Rio / DI TeleMídia RM-OSI - Protocolos de Alto Nível ¾ O RM-OSI ainda define mais três camadas em sua arquitetura. No entanto, na prática, poucas arquiteturas de redes atuais seguem essa estruturação, que passa assim a ganhar apenas o aspecto didático de apresentar quais funções são ainda necessárias. ¾ Como o nível de transporte, essas camadas só existem fim a fim. PUC-Rio / DI TeleMídia RM-OSI em uma Rede em Grafo RedeRede EnlaceEnlace FísicoFísico RedeRede EnlaceEnlace FísicoFísico Aplicação Apresen tação Sessão Transporte Rede Enlace Físico Aplicação Apresen tação Sessão Transporte Rede Enlace Físico Sistema Aberto A Protocolo de Aplicação Protocolo de Apresentação Protocolo de Sessão Protocolo de T ransporte Protocolo de Rede Protocolo de Enlace Protocolo de Nível Fís ico Sis tema Aberto B Sistemas Retransmissores 60 PUC-Rio / DI TeleMídia Nível de Sessão PUC-Rio / DI TeleMídia Nível de Sessão ¾ O objetivo do nível de sessão é fornecer os meios necessários para que seus usuários (normalmente entidades do nível de apresentação) possam organizar e sincronizar seus diálogos e gerenciar suas trocas de dados. ¾ Operando no modo orientado à conexão, o nível de sessão provê os serviços necessários para que seus usuários possam estabelecer conexões, transmitir e receber dados, e encerrar conexões de forma ordenada. ¾ No modo não orientado à conexão o nível de sessão mapeia endereços de transporte em endereços de sessão, repassando os dados que recebe dos seus usuários para o nível de transporte (também operando no modo não-orientado à conexão), e vice- versa. Em outras palavras, suas funções são quase nulas. 61 PUC-Rio / DI TeleMídia Conexão de Sessão ¾ Uma conexão de sessão é mapeada em uma única conexão de transporte em um dado instante. ¾ A duração das conexões de sessão e transporte podem ser diferentes. • Uma conexão de transporte pode suportar várias conexões de sessão consecutivas, ou uma conexão de sessão pode estender-se sobre várias conexões de transporte. • A possibilidade de uma conexão de sessão estender-se sobre mais de uma conexão de transporte permite que o serviço de sessão recupere erros na rede que provoquemo encerramento de conexões de transporte. PUC-Rio / DI TeleMídia Ponto de Sincronização Principal ¾ O ponto de sincronização principal é usado para estruturar a troca de dados emunidades de diálogo. Dois pontos de sincronização principais adjacentes definemuma unidade de diálogo. Unidade de Diálogo Ponto de Sincronização Principal Ponto de Sincronização Principal Ponto de Sincronização Secundário Ponto de Sincronização Secundário Ponto de Sincronização Secundário Tempo 62 PUC-Rio / DI TeleMídia Ponto de Sincronização Principal ¾ Ao definir um ponto de sincronização principal, o usuário suspende a transmissão de dados até que o ponto de sincronização seja reconhecido pelo seu parceiro no diálogo. ¾ O ponto de sincronização principal marca o limite para recuperação de dados, não sendo possível recuperar dados enviados antes do último ponto de sincronização principal transmitido e reconhecido. PUC-Rio / DI TeleMídia Ponto de Sincronização Secundário ¾ Os pontos de sincronização secundários são usados para estruturar a troca de dados dentro de uma unidade de diálogo. ¾ Eles aumentam a flexibilidade em termos de recuperação de falhas. ¾ Após transmitir um ponto de sincronização secundário, o transmissor não precisa suspender a transmissão de novos dados para esperar pelo reconhecimento do ponto de sincronização secundário. ¾ A qualquer momento, é possível ressincronizar o diálogo em qualquer um dos pontos de sincronização secundários dentro da unidade de diálogo corrente, obviamente também é possível retomar o diálogo a partir do seu início, que é definido por um ponto de sincronização principal. ¾ Fica a cargo da aplicação decidir entre a sobrecarga envolvida na emissão e confirmação de pontos de sincronização e a diminuição do tempo de recuperação caso seja necessária uma ressincronizacão do diálogo. 63 PUC-Rio / DI TeleMídia Atividade ¾ Cada atividade consiste em uma ou mais unidades de diálogo. Unidade de Diálogo Ponto de Sincronização Pr incipal Ponto de Sincronização Secundári o Unidade de Diálogo Ponto de Sinc ronização Principal Ponto de Sincr onização Pr incipal Ponto de Sincroni zaçã o Se cu ndário Atividade Tempo PUC-Rio / DI TeleMídia Atividade ¾ Atividades podem ser interrompidas e posteriormente retomadas na mesma conexão ou em conexões de sessão subseqüentes. ¾ Uma atividade pode ser usada, por exemplo, para suspender uma transferênci a em curso, de um arquivo muito longo (atividade A), para que seja transferido um arquivo de maior prioridade (atividade B). ¾ Esse conceito também pode ser usado quando é necessário suspender uma atividade muito longa, por exemplo, no final do expediente de trabalho, para retomá-la no início do próximo expediente. ¾ Cabe salientar que o serviço de sessão simplesmente guarda o último ponto de sincronização (principal ou secundário) confi rmado, permitindo que a atividade seja retomada a partir desse ponto. Cabe ao usuário do serviço de sessão armazenar qualquer outro tipo de informação necessária ao reinício da atividade suspensa. 64 PUC-Rio / DI TeleMídia Atividades e Sessões Conexão de Sess ão Tempo Atividade Capab ili ty Da ta Cap abil ity Data Conexão de Sess ão Atividade C apabi lit y Dat a TempoAtivid ade C apabi lit y Dat a C apabi lit y Dat a C apab ilit y Dat a Tempo Con exão de Sessão Con exão de Sessão Cap abi lity Data Atividade Interrupção da Ati vid ade Rei níci o da Ativ ida de PUC-Rio / DI TeleMídia Token ¾ Um token é um recurso de uma conexão de sessão que é dinamicamente atribuído a um usuário em um dado instante do tempo, concedendo a esse usuário o direito exclusivo de executar determinados serviços. ¾ Quatro tokens são definidos: • Dados: usado para controlar o direito de transmitir dados. • Sincronização secundária: define o usuário que tem direito de emitir pontos de sincronização secundários. • Sincronização principal/Atividade: é usado para gerenciar a emissão de pontos de sincronização principal e a estrutura das atividades. • Encerramento de conexão: define quem tem o direito de encerrar a conexão de sessão. 65 PUC-Rio / DI TeleMídia Nível de Apresentação PUC-Rio / DI TeleMídia Nível de Apresentação ¾ A função do nível de apresentação é compatibilizar a forma como são representadas as informações intercambiadas pelos usuários, realizando transformações adequadas nos dados, antes de seu envio ao nível de sessão. ¾ Transformações típicas dizem respeito à compressão de textos, criptografia, conversão de padrões de terminais e arquivos para padrões de rede e vice- versa. 66 PUC-Rio / DI TeleMídia Sintaxes ¾ Face à complexidade das estruturas intercambiáveis por diversas aplicações, surgem duas questões. • Como podem ser definidas as estruturas de dados a serem intercambiadas? • Como pode uma instância de uma estrutura (p.ex., uma transferência bancária específica) ser intercambiada e compreendida por diferentes sistemas, independentemente da plataforma de hardware ou software utilizadas? ¾ A descrição das estruturas de dados dos objetos a serem intercambiados. ¾ Uma codificação não ambígua para instâncias dessas estruturas. PUC-Rio / DI TeleMídia Sintaxe Abstrata ¾ A sintaxe abstrata para uma estrutura de dados é uma especi ficação da organização dessa estrutura de forma independente da codi ficação interna utilizada por máquinas para representá-la. ¾ Uma sintaxe abstrata torna possível a definição de tipos de dados e permite também que sejam atribuídos valores aos tipos de dados. ¾ Ao invés de se utilizar de uma linguagem de programação, a ISO definiu uma linguagem própria para a especi ficação de estruturas de dados de forma abstrata, linguagem esta padronizada e denominada Abstract Syntax Notation One (ASN.1). 67 PUC-Rio / DI TeleMídia ASN.1 RegFunc ::= [APPLICATION 0] IMPLICIT SET { Nom e, Idade [1] IMPLICIT INTEGER, Profissão [2] VisibleString } Nom e ::= [APPLICATION 1] IMPLICIT SEQUENCE { Ultim oNom e [1] VisibleString, Com plem ento [2] VisibleString OPTIONAL, Prim eiroNom e [3] VisibleString } PUC-Rio / DI TeleMídia Sintaxe Concreta ¾ Definida uma representação abstrata para uma estrutura de dados, várias representações concretas são possíveis. ¾ Denomina-se sintaxe concreta a especificação de um formato para a codificação de instâncias de estruturas de dados a partir de uma sintaxe abstrata. 68 PUC-Rio / DI TeleMídia Representaçoes Concretas do Número Inteiro 534 Esquema de Codificação Endereço Menor Endereço Maior Representaçã o binária usada pelo processador Motorola 68.000 0000 0010 0001 0110 Representaçã o binária usada pelo processador Intel 8086 0001 0110 0000 0010 Representaçã o binária codificada em decimal (BCD) usada no IBM 370 0000 0101 0011 0100 Representaçã o ASCII usada em microcomputa do re s 0011 0101 0011 0011 0011 0100 Representaçã o EBCDIC usada em computadore s de grande porte 1111 0101 1111 0011 1111 0100 PUC-Rio / DI TeleMídia Sintaxe Concreta ¾ Definida uma representação abstrata para uma estrutura de dados, várias representações concretas são possíveis. ¾ Denomina-se sintaxe concreta a especificação de um formato para a codificação de instâncias de estruturas de dados a partir de uma sintaxe abstrata. ¾ Para a definição de uma sintaxe concreta para o padrão ASN.1, a ISO definiu o padrão ASN.1 BER (ASN.1 Basic Encoding Rules) [ISO 90d]. 69 PUC-Rio / DI TeleMídia ASN.1 BER 60 APPLICATION 0, RegFunc tag (IMPLICIT SET constructed) 36 Length of RegFunc fields (54 decimal) 61 APPLICATION 1, Nome tag (IMPLICIT SEQUENCE constructed) 26 Length of Nome fields (38 decimal) A1 UltimoNome tag, (constucted) 08 Length 06 Length A2 Complemento tag, (constructed) 0F Length 1A VisibleString 0D Length A3 PrimeiroNome tag, (constucted) 09 Length 1A VisibleString 07 Length Joaquim PrimeiroNome Value 81 Idade tag (IMPLICIT INTEGER) Length 1F Value (decimal 31) A2 Profissão 0A Length 1A VisibleString 07 Length 1A VisibleString Xavier UltimoNome Value Jose da Silva Complemento Value Alferes Value PUC-Rio / DI TeleMídia Sintaxe de Transferência ¾ A sintaxe concreta utilizada para o intercâmbio é denominada sintaxe de transferência. ¾ Uma possível sintaxe de transferência é a obtida através das regras estabelecidas pelo padrão ASN.1 BER. ¾ A principal função do nível de apresentação é realizar o mapeamento e a conversão entre uma representação utilizada para intercâmbio e a representação interna de aplicações. 70 PUC-Rio / DI TeleMídia Contexto de Apresentação ¾ Em geral, podem ser utilizadas mais de uma combinação de sintaxes abstratas e sintaxes de transferência. ¾ Cada combinação de sintaxe abstrata e sintaxe de transferência é denominada contexto de apresentação. Usuário 1 Função 2Função 1 Usuário 2 Sint Abstr A Função 1 Função 2 Contexto 2Contexto 1 Contexto 1 Contexto 3 Sint. de Transf. T Entidade de Apresentação Entidade de Apresentação Sint Abstr A Sint Abstr B Sint Abstr C Sint. de Transf. T PUC-Rio / DI TeleMídia Camada de Apresentação ¾ O nível de apresentação amplia o serviço do nível de sessão, acrescentando basicamente a negociação das sintaxes de transferênci a utilizadas na comunicação e a transformação das sintaxes usadas pelas aplicações na sintaxes de transferência negociadas. ¾ Os serviços do nível de sessão (por exemplo, estabelecimento de conexão, transferências de dados, gerenciamento de token, encerramento de conexão etc.) são fornecidos às entidades de aplicação na forma de servi ços de apresentação. Quando for esse o caso, a camada de apresentação atua simplesmente repassando as primitivas que dizem respeito aos serviços de sessão entre as entidades de aplicação e de sessão. ¾ Como não existe multiplexação ou splitting no nível de apresentação, uma conexão de apresentação é mapeada em uma única conexão de sessão. 71 PUC-Rio / DI TeleMídia Nível de Apresentação ¾ A coleção dos contextos negociados em uma conexão define o conjunto dos contextos da conexão (Defined Context Set DCS). ¾ Depois do estabelecimento da conexão e, portanto, da definição de um DCS inicial, é possível opcionalmente adicionar-se ou remover-se contextos. ¾ Dados definidos em termos de uma sintaxe abstrata são representados no ambiente local do sistema por uma sintaxe concreta. Uma transformação entre essa sintaxe concreta e a sintaxe de transferênci a é necessári a para que os dados sejam transferidos. ¾ Conceitualmente, essa conversão se dá em duas fases: inicialmente a representação concreta local é mapeada na representação abstrata, e depois, a representação abstrata é transformada na representação concreta de transferência. PUC-Rio / DI TeleMídia Nível de Apresentação ¾ Quando uma representação abstrata local é transformada na representação concreta de transferência, a entidade de apresentação pode aplicar técnicas de compressão ou compactação, para diminuir o volume dos dados transferidos. ¾ A entidade de apresentação pode também utilizar algoritmos de criptografia para evitar que os dados transferidos sejam interpretados por usuários não autorizados. 72 PUC-Rio / DI TeleMídia Nível de Aplicação PUC-Rio / DI TeleMídia Nível de Aplicação ¾ O nível de aplicação oferece aos processos de aplicação os meios para que estes utilizem o ambiente de comunicação OSI. ¾ Nesse nível são definidas funções de gerenciamento e mecanismos genéricos que servem de suporte à construção de aplicações distribuídas. 73 PUC-Rio / DI TeleMídia Nível de Aplicação Nível de Apresentação Usuário do RTSE RTSE ACSE RT-OPEN RT-CLOSE RT-TR ANSFER RT-TU RN-PLEASE RT-TU RN-GIVE RT-ABOR T A-ASSOCI ATE A-RELEASE A-ABORT P-DATA P-MINOR-SYNC HRONI ZE P-ACTIVI TY-STAR T P-ACTIVI TY-EN D P-ACTIVI TY-I NTERRU PT P-ACTIVI TY-D ISCAR D P-ACTIVI TY-R ESUME P-U-EXCEPTI ON-REP ORT P-TOKEN -PLEASE P-CONTROL-GIVE P-CONN ECT P-RELEASE P-ABORT PUC-Rio / DI TeleMídia Perguntas ¾ Como funciona um servidor de processos? E um servidor de nomes? ¾ O que vem a ser um API de transporte? Dê exemplos. ¾ O que representa cada parâmetro de uma associação (association) {protocolo, endereço local, processo local, endereço remoto, processo remoto}? ¾ Como pode ser especificado um SAP de transporte específico para uma associação? Como pode der passado para o protocolo de transporte esta responsabilidade? Quando é útil cada uma das opções? ¾ Detalhe o processo de estabelecimento de conexões usando sockets, explicando cada chamada de sistema realizada e como elas realizam suas funções. ¾ Para que serve a chamada connect em um serviço sem conexão? ¾ O que é NetBIOS, uma API, um protocolo? Como pode ser implementado em uma rede local isolada (não ligada a outras redes)? Como pode ser implementado em uma rede local ligada a Internet? ¾ Compare o NetBIOS com a API Socket. 74 PUC-Rio / DI TeleMídia Perguntas ¾ Como é realizada a chamada às funções do NetBIOS? ¾ Como é realizado o suporte a nomes lógicos? Como isto é realizado pela API Socket? ¾ Quais as funções do nível de Sessão? ¾ Como é realizado o sincronismo em um diálogo? Para queserve? Quando é útil? ¾ Relacione a duração de conexões do nível de Sessão com suas respectivas conexões de Transporte? Por que elas podem ser diferentes? Quando isto é útil? ¾ Para que servem os pontos de sincronização secundários? Eles são necessários ou pode se operar só com pontos de sincronização principais? ¾ Quais as funções do nível de Apresentação? ¾ O que vem a ser sintaxe abstrata, sintaxe concreta e sintaxe de transferência? ¾ O que é um contexto de apresentação? ¾ Baseado nos contestos de apresentação, explica as funções do nível de apresentação. PUC-Rio / DI TeleMídia Sistemas Operacionais de Rede Sistemas Operacionais de Rede Netware UNIX Pathworks WFW Lan Manager Vines 75 PUC-Rio / DI TeleMídia Hardware Sistema Operacional Aplicação Sistemas Operacionais PUC-Rio / DI TeleMídia Aplicação Aplicação Aplicação Hardware SORSOL Hardware SORSOL Hardware SORSOL Sistemas Operacionais 76 PUC-Rio / DI TeleMídia Redirecionamento no Nível de BIOS Hardware do Microcomputador Hardware do Microcomputador BIOS do Microcomputador BIOS do Microcomputador Aplicação do Usuário Aplicação do Usuário Protocolos de Comunicação Protocolos de Comunicação Hardware da Rede Hardware da Rede Sistema Operacional Sistema Operacional RedirecionadorRedirecionador PUC-Rio / DI TeleMídia Redirecionamento no Nível de Sistema Operacional Hardware do Microcomputador Hardware do Microcomputador BIOS do Microcomputador BIOS do Microcomputador Aplicação do Usuário Aplicação do Usuário Protocolos de Comunicação Protocolos de Comunicação Hardware da Rede Hardware da Rede Sistema Operacional Sistema Operacional RedirecionadorRedirecionador 77 PUC-Rio / DI TeleMídia Paradigma Cliente-Servidor Softwares Aplicativos (DBMS, Editores, ...) Redirecionador Sistema Operacional do Cliente (DOS) Driver de Protocolos ( NetBIOS, SPX/IPX,... ) Driver da Placa Interrupção 21h Driver de Protocolos ( NetBIOS, SPX/IPX,... ) Driver da Placa Sistema Operacional do Servidor Driver do Disco Aplicações Servidoras Cliente Servidor BIOS PUC-Rio / DI TeleMídia Arquitetura Peer-to-Peer Hardware SOL SORS SORC Hardware SOL SORS SORC Hardware SOL SORS SORC Aplicação AplicaçãoAplicação 78 PUC-Rio / DI TeleMídia Arquitetura Cliente-Servidor Servidor Dedicado Aplicação Aplicação Hardware SORCSOL Hardware SORCSOL Hardware SOL SORC SORS PUC-Rio / DI TeleMídia Aplicação Aplicação Hardware SORCSOL Hardware SORCSOL Hardware SOL SORS SORC Aplicação Arquitetura Cliente-Servidor Servidor Não Dedicado 79 PUC-Rio / DI TeleMídia Sistemas Operacionais de Redes ¾ MS-NET ¾ PC LAN PROGRAM ¾ 3+ ¾ Windows for Workgroups ¾ LAN Manager Modelo OSI Enlace Rede Físico Sessão Aplicação Apresentação Transporte NetBIOS Aplicações SOR ETHERNET IEEE 802.3 TOKEN RING IEEE 802.5 IEEE 802.2 Logical Link Control PUC-Rio / DI TeleMídia PC LAN PRO GRAM Main Menu - Task Selection 1. Message tasks 2. Printer tasks 3. Disk or directory tasks 4. Print queue tasks 5. Network status tasks 6. Pauseand continue tasks 7. Save or cancel thenetwork setup Choice 3 80 PUC-Rio / DI TeleMídia A> net share c:\word public abracadabra r A> Exemplos de Comandos Net PUC-Rio / DI TeleMídia A> net use f: public abracadabra A> Exemplos de Comandos Net 81 PUC-Rio / DI TeleMídia Comandos Net NET NET CONTINUE NET ERROR NET FILE NET FORWARD NET LOG NET NAME NET PAUSE NET PRINT NET SEND NET SEPARATOR NET START NET USE NET SHARE Comando Ativa o programa menu Reativa uma função que foi suspensa Mostra um log com os erros que ocorreram na rede Mostra o nome do usuário e os bloqueios correntes de um arquivo Estabelece temporariamente um novo endereço para um usuário Encerra ou inicia o “logging” de mensagens para um arquivo/disp. Permite a criação de nomes adicionais para recepção de mensagens Suspende temporariamente a execução de uma função Imprime em uma impressora compartilhada Envia mensagens para outros computadores Insere um separador entre “jobs” em uma impressora compartilhada Inicia a operação de um servidor da rede Conecta um computador a um recurso compartilhado Torna os recursos da rede disponíveis para os usuários Descrição PUC-Rio / DI TeleMídia PC LAN PROGRAM ¾ Arquivo “.bat” com comandos net ¾ Senhas associadas aos recursos compartilhados ¾ Servidores não dedicados 82 PUC-Rio / DI TeleMídia Como proteger as senhas e associar os recursos a um usuário específico ? ¾ Arquivo com comandos net só executável armazenado em um diretório alocado ao usuário PUC-Rio / DI TeleMídia Modelo de Segurança Share-Level ¾ Cada recurso compartilhado possui uma ou mais senhas de acesso. ¾ O dono do recurso é responsável por administrar suas senhas. ¾ Qualquer pessoa que conheça a senha possui acesso ao recurso. ¾ Exemplo: PC LAN Program, Windows for Workgroups, Windows 95, Windows98 , e Windows2000. 83 PUC-Rio / DI TeleMídia Modelo de Segurança User-Level ¾ Cada usuário possui uma senha pessoal que autoriza seu acesso ao sistema ¾ Cada recurso possui uma lista de permissões de acesso ¾ Somente os usuários que pertencem à lista de permissões está autorizado a acessar o recurso ¾ Cabe ao administrador do sistema gerenciar o cadastro de usuários e as listas de permissões dos recursos compartilhados ¾ Exemplo: Netware 3.11, Windows NT PUC-Rio / DI TeleMídia Arquitetura de Sistemas Operacionais de Rede ¾ Arquitetura Peer-to-Peer • Modelo Não Hierárquico • Toda estação possui funcionalidade de Cliente e Servidor • Servidores não dedicados • UNIX, Windows for Workgroups, Netware Lite, Lantastic, PC LAN Program... ¾ Arquitetura Cliente-Servidor • Modelo Hierárquico • Servidores dedicados (ou não) • Netware 3.X, Pathworks, Lan Manager, Vines, ... 84 PUC-Rio / DI TeleMídia Módulo Cliente DOS OS/2 MAC Win PUC-Rio / DI TeleMídia Características ¾ Máquinas já existentes que devem ser incorporadas ao novo ambiente de rede ¾ Grande maioria formada por estações: • Windows ¾ Normalmente exigem recursos limitados de hardware: • CPU • Memória • Disco 85 PUC-Rio / DI TeleMídia Serviços acessados através do Módulo Cliente ¾ Acesso transparente aos recursos remotos e compartilhados: • arquivos • impressoras • outros... ¾ Emulação de Terminal ¾ Correio Eletrônico ¾ Comunicação Interativa ¾ Transferência de Arquivos ¾ outros ... PUC-Rio / DI TeleMídia Diagrama Geral de uma Estação Cliente Sistema Operacional Nativo Software de Rede Sistema Operacional da Estação Cliente Recursos Reais Recursos VirtuaisAplicações do Usuário Hardware 86 PUC-Rio / DI TeleMídia Requisitos do Software de Rede ¾ Baixa utilização dos recursos de hardware da estação cliente ¾ Acesso aos recursos remotos, através de um software Redirecionador ¾ Facilidade de utilização ¾ Alta confiabilidade ¾ Segurança de acesso e utilização PUC-Rio / DI TeleMídia Redirecionador ¾Parte fundamental do Software de Rede. ¾Ofereçe serviços de acesso aos recursos remotos. ¾Permite que aplicações sejam desenvolvidas sem nenhuma preocupação adicional com a localização física de arquivos ou impressoras. ¾ Intercepta os pedidos de serviço solicitados pelas aplicações ao sistema operacional nativo, redirecionando-os para o software de rede, no caso de acesso a recursos remotos 87 PUC-Rio / DI TeleMídia Redirecionador Softwares Aplicativos (DBMS, Editores, ...) Redirecionador Sistema Operacional do Cliente (DOS,...) Protocolos de Transporte ( NetBIOS, SPX/IPX,... ) Driver da Placa Interrupção 21h Protocolos de Transporte ( NetBIOS, SPX/IPX,... ) Driver da Placa Sistema Operacional do Servidor Driver do Disco Aplicações Servidoras Cliente Servidor BIOS PUC-Rio / DI TeleMídia Módulos Servidores Netware WinNT VAX OS/2 88 PUC-Rio / DI TeleMídia I Máquinas caras I Hardware específico para cada tipo de serviço oferecido (Ex.: Servidores de Impressão) I Em alguns casos exige grande poder de processamento (Ex.: Servidores SQL) I Devem ser bastante confiáveis, pois representam ponto central de falhas Características PUC-Rio / DI TeleMídia Servidores de Arquivos ¾ Oferecem serviços de armazenamento e recuperação de arquivos ¾ Controle de acesso simultâneo aos arquivos compartilhados ¾ Controle de Backups ¾ Segurança de acesso ¾ Técnicas de tolerância a falhas 89 PUC-Rio / DI TeleMídia Subsistemas Funcionais dos Servidores de Arquivos ¾ Subsistema de Gerência de Arquivos • Controlam todo acesso físico aos meios de armazenamento • Alguns servidores implementam o seu próprio Subsistema de Gerência de Arquivos a fim de obter melhor eficiência e mais segurança • Alguns servidores utilizam os serviços do sistema operacional nativo ¾ Subsistema de Cache de Disco • Aumentam a eficiência do servidor acessando o disco em blocos grandes de dados, mantendo-os em memória RAM, tentando assim diminuir o número de acessos físicos às unidades de armazenamento ¾ Subsistema de Acesso Compartilhado e Segurança • Controlam o acesso simultâneo aos arquivos • Permitem o compartilhamento e a utilização concorrente dos arquivos PUC-Rio / DI TeleMídia Segurança de Acesso ¾ Parte fundamental do Servidor de Arquivos ¾ Controle de acesso: • ao sistema a partir das estações clientes • direto da estação servidora • aos recursos compartilhados • aos recursos não compartilhados ¾ Acesso restrito a horas específicas ¾ Acesso restrito a partir de estações clientes específicas ¾ Modelos de segurança: • SHARE-LEVEL • USER-LEVEL 90 PUC-Rio / DI TeleMídia Técnicas para melhorar a eficiência do Servidor de Arquivos ¾ Cache de Disco ¾ Cache de Diretório ¾ Elevator Seeking ¾ Directory Hashing ¾ Turbo FAT PUC-Rio / DI TeleMídia Elevator Seeking ¾ A cabeça leitora varre toda a superfície do disco em uma mesma direção atendendo os pedidos nesta ordem, quando chega ao final do disco inverte a direção e recomeça o processo ¾ Todo acesso ao disco é realizado na melhor sequência possível, evitando tempos desnecessários de reposicionamento da cabeça leitora ¾ O acesso é feito respeitando não a ordem de chegada dos pedidos, mas sim a posição atual da cabeça leitora 91 PUC-Rio / DI TeleMídia Directory Hashing - Turbo FAT ¾ Indexação da árvore de diretórios permitindo uma localização mais eficiente dos diretórios e seus componentes ¾ Tabela de Alocação de Arquivos (FAT) modificada, permitindo localização eficiente dos blocos de disco que compõem um arquivo ¾ Muito importante para o servidor de arquivos, pois uma varredura sequencial na tabela de alocação é muito demorada PUC-Rio / DI TeleMídia Técnicas de Tolerância a Falhas ¾ HotFix - Revetoração Automática de Blocos Defeituosos ¾ Disk Mirroring - Espelhamento de Disco ¾ Disk Duplexing - Duplicação de Disco 92 PUC-Rio / DI TeleMídia HotFix Bloco ruim no disco I Detecção e isolamento de blocos defeituosos na mídia de armazenamento I Detecção de erros atrav és de leitura após escrita PUC-Rio / DI TeleMídia Disk Mirroring Servidor de Arquivo Unidade de Disco A Unidade de Disco B Controladora de Disco I Utilização de duas unidades de disco de maneira redundante, ou seja, toda grav ação em uma é espelhada na outra I Em caso de problemas com alguma unidade de disco, a outra é utilizada sem interrupção dos serv iços 93 PUC-Rio / DI TeleMídia Disk Duplexing Serv idor de Arquivo Unidade de Disco A Controladora de Disco A Unidade de Disco B Controladora de Disco B I Identico à técnica de Disk Mirroring, porém cada unidade de disco possui sua própria controladora, aumentando o nív el de tolerância a falhas I Aumenta a eficiência do servidor de arquiv os, pois as duas unidades de disco são operadas em paralelo PUC-Rio / DI TeleMídia Servidores de Impressão ¾ Ofereçem serviços de compartilhamento de impressoras e impressão remota ¾ Controle da fila de impressão associada à impressora, permitindo: • ver a fila de impressão • cancelar impressão • manipular a ordem de impressão 94 PUC-Rio / DI TeleMídia Servidores de Impressão ¾ Normalmente servidores não dedicados ¾ Quando gerenciam várias impressoras com alta carga de utilização, torna-se necessário uma máquina dedicada para esta função ¾ Spool de Impressão • Área de armazenamento temporário dos arquivos a serem impressos • Normalmente localizado em um servidor de arquivos ¾ Servidores de Impressão permitem o posicionamento estrat égico das impressoras em locais de fácil acesso PUC-Rio / DI TeleMídia Servidores de Banco de Dados ¾ Oferecem serviços de banco de dados ¾ SQL ¾ Controle de Transações ¾ Segurança ¾ Controle de Integridade SQL 95 PUC-Rio / DI TeleMídia Evolução dos Sistemas Gerenciadores de Banco de Dados (SGBD) ¾ SGBD Tradicionais ¾ SGBD Tradicionais utilizando um Servidor de Arquivos ¾ SGBD Cliente-Servidores ¾ SGBD Distribuídos PUC-Rio / DI TeleMídia SGBD Tradicionais Pedido Resposta Base de Dados Aplicação SGBD Acesso Físico 96 PUC-Rio / DI TeleMídia SGBD Tradicionais utilizando um Servidor de Arquivos Todo Processamento da pesquisa é executado localmente pelo SGBD Pedido Resposta Aplicação SGBD Servidor de Arquivos Pedido de Arquivos Cliente Acesso Físico Servidor de Arquivos Resposta Base de Dados PUC-Rio / DI TeleMídia SGBD Cliente-Servidor Pedido Resposta Aplicação Cliente SGBD Servidor de Banco de Dados Todo Processamento da pesquisa é executado Todo Processamento da pesquisa é executado remotamente pelo Servidor de Banco de Dados Consulta SQL Cliente Acesso Físico Servidor SGBD Resposta SQL Base de Dados 97 PUC-Rio / DI TeleMídia SGBD Distribuídos Cliente Servidor de Banco de Dados Pedido Resposta Aplicação Cliente SGBD Acesso Físico Servidor SGBD Base de Dados Servidor SGBD Servidor SGBD Todo processamento da pesquisa é executado de maneira distribuída através de diversos Servidores de Banco de Dados PUC-Rio / DI TeleMídia Servidores de Comunicação ¾ Controlam o acesso a enlaces de comunicação, oferecendo serviços de comunicação remota • Linhas Telefônicas Dedicadas ou Discadas • Redes Públicas de Pacotes (X.25) ¾ Gateways de comunicação com mainframes X.25 98 PUC-Rio / DI TeleMídia Implementações Comerciais de Sistemas Operacionais de Rede PUC-Rio / DI TeleMídia Netware 99 PUC-Rio / DI TeleMídia I Desenvolvido pela Novell I Baseado nos protocolos da Xerox : XNS I Protocolos de transporte do Netware Driver SPX/IPX Modelo OSI Enlace Rede Físico Sessão Aplicação Apresentação Transporte Aplicacões SPX/IPX SPX/IPX PUC-Rio / DI TeleMídia Pilha de Protocolos Netware Open Data-Link Interface RIP NCP Netware Applications SPX NetBIOS ETHERNET IEEE 802.3 TOKEN RING IEEE 802.5 FDDIARCNet Modelo OSI Enlace Rede Físico Sessão Aplicação Apresentação Transporte NLSP NetBIOS Applications SAP IPX 100 PUC-Rio / DI TeleMídia Windows 95, 98, 2000 PUC-Rio / DI TeleMídia Protocolos e Aplicações Aplicações Driver da Placa de Interface de Rede Modelo OSI Enlace Rede Físico Sessão Aplicação Apresentação Transporte NetBIOS TCP/IP 101 PUC-Rio / DI TeleMídia Windows 95 ¾ Desenvolvido pela Microsoft ¾ Arquitetura Peer-to-Peer ¾ Solução para integração de pequenos grupos de trabalho (Workgroups) ¾ Conceito de Grupo de Trabalho • pessoas inter-relacionadas • computadores pessoais • compartilhamento usual de recursos • troca frequente de mensagens PUC-Rio / DI TeleMídia Pilha de Protocolos Windows For Workgroups NetBEUI NetBIOS Extend User Interface Server Message Block (SMB) Aplicações TCP/IP WinSock TCP/IP Logical Link Control (LLC 802.2) ETHERNET IEEE 802.3 TOKEN RING IEEE 802.5 X.25FDDI DQ DB IEEE 802.6 Network Device Interface Specification (NDIS) Modelo OSI Rede Físico Sessão Aplicação Apresentação Transporte Enlace 102 PUC-Rio / DI TeleMídia Windows NT PUC-Rio / DI TeleMídia Windows NT ¾ Sistema operacional de rede da Microsoft ¾Recursos de rede integrados ao sistema ¾Clientes: • Windows NT Workstations; • Windows 95; 98, 2000 • MSDOS; • Lan Manager server ou client; • Netware; • Macintosh. ¾ Integração Windows, Netware e Lan Manager ¾Arquitetura cliente-servidor permitindo compartilhamento peer-to-peer 103 PUC-Rio / DI TeleMídia Windows NT ¾ Modelo de segurança user level ¾ Rede organizada em domínios: “agrupamento lógico de servidores e clientes que compartilham informações comuns de segurança e contas de usuário” ¾ vantagens: • login único por usuário; • administração centralizada; • acesso universal a recursos; • organização de usuários em grupos de trabalho. PUC-Rio / DI TeleMídia Controladores de Domínio ¾ Servidores que compartilham informações do domínio são controladores de domínio: • Primary Domain Controller (PDC); • Backup Domain Controller (BDC). ¾ um domínio tem apenas 1 PDC e pelo menos 1 BDC que armazenam o banco de dados de diretório com nomes, senhas e direitos dos usuários e grupos 104 PUC-Rio / DI TeleMídia NetBT Arquitetura TCP/IP Network Card Driver(s) ICMP IGMP ARP IP TCP UDP Windows Sockets NetBIOS Support Network Media TDI Interface NDIS Interface User Mode Kernel Mode PUC-Rio / DI TeleMídia Outros 105 PUC-Rio / DI TeleMídia I Desenvolvido pela Digital I DNA - Digital Network Architecture I Protocolos de transporte do Pathworks Driver DECnet Interface : IOCB Modelo OSI Enlace Rede Físico Sessão Aplicação Apresentação Transporte Aplicacões DECnet DECnet PUC-Rio / DI TeleMídia PathWorks ¾ Sistema operacional de rede desenvolvido pela Digital ¾ Servidores • Intel OS/2 • RISC UNIX • VAX VMS ¾ Clientes • Microsoft Windows • DOS • OS/2 • Macintosh 106 PUC-Rio / DI TeleMídia Pilha de Protocolos PathWorks Data Link Layer (DLL) LAT Local Area Transport (Terminal Protocol) LAST CTERM WAN (Terminal Protocol) LAD Local Area Disk DECnet Phase IV Routing Module Serviços de Disco DECnet NetBIOS DECnet IOCB SETHOST Emulador de TerminalN F T Aplicações NetBIOS DECnet Phase IV NSP Transport F A L M A I L ETHERNET IEEE 802.3 TOKEN RING IEEE 802.5 X.25FDDI DQ DB IEEE 802.6 Network Device Interface Specification (NDIS) Modelo OSI Rede Físico Sessão Aplicação Apresentação Transporte Enlace PUC-Rio / DI TeleMídia I Desenvolvido pela Apple Driver AppleTalk Modelo OSI Enlace Rede Físico Sessão Aplicação Apresentação Transporte Aplicacões AppleTalk AppleTalk 107 PUC-Rio / DI TeleMídia I Desenvolvido pelo Departamento de Defesa Americano (DoD) I Amplamente difundido I Protocolos de transporte do UNIX Driver TCP/IP Interface : Sockets, TLI,... Modelo OSI Enlace Rede Físico Sessão Aplicação Apresentação Transporte Aplicacões TCP/IP S.O. Baseados em TCP/IP PUC-Rio / DI TeleMídia X.25FDDI Internetwork Protocol (IP)Internetwork Protocol (IP) Transmission Control Transmission Control Protocol (TCP)Protocol (TCP) User Datagram ProtocolUser Datagram Protocol (UDP)(UDP) ICMPICMP F T P SS NN MM PP T E L N E T S M T P NN FF SS ETHERNET TOKEN RING DQ DB .. .. .. . . . IEEE 802.2 Logical Link ControlIEEE 802.2 Logical Link Control Driver UNIXDriver UNIX Modelo OSI EnlaceEnlace RedeRede FísicoFísico SessãoSessão AplicaçãoAplicação ApresentaçãoApresentação TransporteTransporte H T T P .. .. .. P I N G Pilhas de Protocolos UNIX 108 PUC-Rio / DI TeleMídia NFS ¾ Desenvolvido pela Sun Microsystems, permite que um sistema tenha acesso a arquivos localizados remotamente de um modo integrado e transparente. ¾ O NFS fornece a ilusão que os discos, impressoras, ou outros dispositivos, fisicamente localizados em um sistema remoto, estão diretamente conectados ao sistema local. ¾ O NFS, ao contrário das outras aplicações Internet, não é implementado por um único utilitário, sendo dividido em três componentes: • o protocolo NFS propriamente dito, uma ferramenta genérica que controla a execução de chamadas a procedimentos remotos (Remote Procedure Call RPC), e uma terceira ferramenta que compatibiliza formatos diferentes de representação de dados denominada XDR (External Data Representation). A divisão foi realizada para permitir que o RPC e o XDR pudessem ser utilizados em outras aplicações. PUC-Rio / DI TeleMídia RPC ¾ No módulo cliente, o programador declara alguns dos procedimentos como sendo remotos, forçando o compilador a incorporar à chamada de procedimento, o código que repassa os argumentos da chamada ao cliente RPC. ¾ No módulo servidor, são implementados os procedimentos a serem compartilhados, que são declarados como procedimentos servidores. ¾ Quando o programa cliente faz uma chamada a um procedimento remoto, os argumentos da chamada são entregues ao cliente RPC, que compõe uma mensagem e a envia ao servidor, passando então a aguardar o retorno do resultado. ¾ O servidor RPC, ao receber uma mensagem invocando a execução de um procedimento, dispara sua execução e, ao seu término, envia os resultados obtidos de volta para o cliente RPC. ¾ O cliente RPC, ao receber de volta a mensagem com o resultado da execução do procedimento remoto, entrega esses resultados ao processo de aplicação, colocando-os nos respectivos argumentos da chamada de procedimento. 109 PUC-Rio / DI TeleMídia XDR ¾ Quando deseja transmitir dados, um programa de aplicação chama os procedimentos XDR que convertem a representação local para a representação de transferência e, em seguida, transmite os dados convertidos. ¾ O processo que recebe os dados chama os procedimentos XDR, que convertem a representação de transferência para a representação local específica. PUC-Rio / DI TeleMídia Nível de Aplicação TCP/IP 110 PUC-Rio / DI TeleMídia Exemplos de Aplicações Internet TCP/IP X.25FDDI Internetwork Protocol (IP)Internetwork Protocol (IP) Transmission Contro l Transmission Contro l Protoco l (TCP)Protoco l (TCP) User Datagram Protoco lUser Datagram Protoco l (UDP)(UDP) ICMPICMP F T P SS NN MM PP T E L N E T S M T P NN FF SS ETH ERNET TOKEN RING DQ DB .. .. .. . . . IEEE 802.2 Logical Link ControlIEEE 802.2 Logical Link Control Driver UNIXDriver UNIX Modelo OSI EnlaceEnlace RedeRede FísicoFísico SessãoSessão AplicaçãoAplicação ApresentaçãoApresentação TransporteTransporte H T T P .. .. .. PUC-Rio / DI TeleMídia DNS ¾ O DNS é um esquema de gerenciamento de nomes, hierárquico e distribuído. ¾ O DNS define: • a sintaxe dos nomes usados na Internet • regras para delegação de autoridade na definição de nomes • umbanco de dados distribuído que associa nomes a atributos (entre eles o endereço IP) • um algoritmo distribuído para mapear nomes emendereços. 111 PUC-Rio / DI TeleMídia Resolução DNS Copacabana.Inf.Puc-Rio.Br ¾ Inicialmente deve ser consultado um servidor central, denominado servidor raiz, para descobrir onde está o servidor Br. ¾ O servidor Br é o responsável pela gerência dos nomes das instituições brasileiras ligadas à Internet. O servidor raiz informa como resultado da consulta o endereço IP de vários servidores de nome para o nível Br (pode existir mais de um servidor de nomes em cada nível, para garantir a continuidade da operação quando um deles pára de funcionar). ¾ Um servidor do nível Br pode então ser consultado, devolvendo o endereço IP do servidor Puc-Rio. ¾ De posse do endereço de um servidor Puc-Rio é possível solicitar que ele informe o endereço de um servidor Inf, quando, finalmente, pode-se consultar o servidor Inf sobre o endereço da máquina Copacabana. PUC-Rio / DI TeleMídia DNS ¾ O DNS não se limita a manter e gerenciar endereços Internet. ¾ Cada nome de domínio é um nó em um banco de dados, que pode conter informações definindo várias propriedades. • Por exemplo, o tipo da máquina e a lista de serviços fornecidos por ela. • O DNS permite que seja definido umalias (nome alternativo) para o nó. • Também é possível utilizar o DNS para armazenar informações sobre usuários, listas de distribuição ou outros objetos. 112 PUC-Rio / DI TeleMídia FTP ¾ O FTP permite que um usuário em um computador transfira, renomeie ou remova arquivos remotos; ou crie, remova e modifique diretórios remotos. ¾ O FTP só permite a transferência de arquivos completos. ¾ Antes de executar qualquer operação o usuário solicitante (cliente) envia seu nome (login name) e sua senha para o servidor, que impede a execução de qualquer operação, caso o usuário não tenha sido registrado. PUC-Rio / DI TeleMídia FTP ¾ A conexão de controle permanece aberta enquanto durar a sessão FTP. Durante uma sessão podem ser transferidos vários arquivos, cada um deles em uma conexão de transferência de dados estabelecida especificamente para tal. conexão de controle do cliente Processo de Controle Proceso de Transferência de Dados Cliente FTP conexão de dados do cliente conexão de controle do servidor conexão de dados do servidor Inter-rede T CP-IP Servidor FTP Processo de Controle Sistema Operacional Proceso de Transferência de Dados Sistema Operacional 113 PUC-Rio / DI TeleMídia HTTP ¾ O HTTP (Hypertext Transfer Protocol) é um protocolo usado para transferência de informações no WWW. ¾ Os dados transferidos pelo HTTP podem ser texto não estruturado, hipertextos, imagens, ou qualquer outro tipo de dados. PUC-Rio / DI TeleMídia Telnet ¾ Permite que um usuário utilizando uma máquina A estabeleça uma sessão interativa com uma máquina (B) na rede. Sistema Operaci onal Clie nte TEL NET cliente envia teclas e recebe atualizações no vídeo do servidor cliente captura teclas e envia atualizações no vídeo Sistema Operacional Servid or TEL NET Inte r-red e TCP-IP teclas pressionadas atuallizações no vídeo servidor recebe teclas do cliente servidor envia atuali zações no vídeo para o c liente 114 PUC-Rio / DI TeleMídia SMTP Usuário envia correspondência Usuário recebe correspondência Cliente (transferência em background) Servidor (recebe as correspondências) Interface com Usuário Spool para correspondências enviadas Caixas postais para correspondências recebidas Conexão TCP para envio de correspondência Conexão TCP para recebimento de correspondência PUC-Rio / DI TeleMídia SMTP ¾ Se a mensagem, por algum motivo, não for transmitida com sucesso, o cliente anota o horário da tentativa e suspende sua execução. ¾ Periodicamente, o cliente acorda e verifica se existem mensagens a serem enviadas na sua área de spool e tenta transmiti-las. ¾ Se uma mensagem não for enviada por um período, por exemplo de dois dias, o serviço de correio eletrônico devolve a mensagem ao remetente, informando que não conseguiu transmiti-la. 115 PUC-Rio / DI TeleMídia SNMP ¾ O sistema de gerenciamento de redes da arquitetura Internet TCP/IP opera na camada de aplicação e baseia-se no protocolo SNMP (Simple Network Management Protocol). ¾ Como no esquema de gerenciamento OSI, os processos que implementam as funções de gerenciamento Internet atuam como agentes ou gerentes. • Os agentes coletam junto aos objetos gerenciados as informações relevantes para o gerenciamento da rede. • O gerente processa as informações recolhidas pelos clientes, com o objetivo de detectar a presença de falhas no funcionamento dos componentes da rede (hosts, gateways, processos executando os protocolos de comunicação etc.), para que possam ser tomadas providências no sentido de contornar os problemas que ocorrem como conseqüência das falhas. PUC-Rio / DI TeleMídia SNMP Software Gerente Software Agente MIB Entidade Gerenciada get, set response, trap Inf ormações de gerenciamento 116 PUC-Rio / DI TeleMídia Perguntas ¾ Qual a diferença de um redirecionador no nível de BIOS de um no nível de sistema operacional? ¾ Qual a diferença entre paradigma cliente-servidor e arquitetura cliente-servidor, com relação a sistemas operacionais de rede? ¾ Qual a diferença, em termos de funções de um módulo cliente para um módulo servidor de um sistema operacional de rede? ¾ Descreva as diferenças de uma arquitetura peer-to-peer, servidor dedicado e servidor não dedicado? Por que todas usam o paradigma cliente-servidor? ¾ O que vem a ser modelo de segurança “share level” e “user level”? ¾ Como poder-se-ia emular um modelo “user level” a partir de um “share level”? PUC-Rio / DI TeleMídia Perguntas ¾ Comente algumas técnicas para se melhorar a eficiência de servidores de arquivos. ¾ Comente alguma técnicas de tolerância a falhas usadas em servidores de arquivo. ¾ Comente sobre a evolução dos servidores de banco de dados, desde a utilização de servidores de arquivos até os servidores de banco de dados distribuídos. Discuta mencionando o impacto das técnicas na eficiência do sistema. ¾ O que é o DNS? Como é realizada a resolução de DNS na Internet? ¾ Como é realizado o protocolo FTP? Quais os tipos de conexões usadase para que servem? Como é possível a transferência simultânea de vários arquivos? ¾ Explique o funcionamento do protocolo SMTP. ¾ Explique o funcionamento do protocolo SNMP. __MACOSX/Slides/Arquivos Originais/._03.grupo.pdf Slides/P1/.DS_Store __MACOSX/Slides/P1/._.DS_Store Slides/P1/1.Intro.pdf 1 1 PUC-Rio / DI TeleMídia Redes de Comunicação de Dados PUC -Rio Departamento de Informática Luiz Fernando Gomes Soares lfgs@inf.puc-rio.br A Evolução da Informática nas Empresas 2 2 Centro de Processamento de Dados Departamento Pessoal Departamento Financeiro Diretoria Sala de Reuniões Departamento Comercial Processamento Batch PUC-Rio / DI TeleMídia ENIAC -1946 (Universidade da Pensilvânia) 3 3 PUC-Rio / DI TeleMídia Centro de Processamento de Dados Departamento Pessoal Departamento Financeiro Diretoria Sala de Reuniões Departamento Comercial Processamento Batch 4 4 Centro de Processamento de Dados Departamento Pessoal Departamento Financeiro Diretoria Sala de Reuniões Departamento Comercial Processamento On-Line PUC-Rio / DI TeleMídia Surgem os Microcomputadores 5 5 Centro de Processamento de Dados Departamento Pessoal Departamento Financeiro Diretoria Sala de Reuniões Departamento Comercial Computadores Pessoais PUC-Rio / DI TeleMídia Surgem os Microcomputadores 6 6 PUC-Rio / DI TeleMídia Redes de Computadores Sistema de Comunicação Centro de Processamento de Dados Departamento Pessoal Departamento Financeiro Diretoria Sala de Reuniões Departamento Comercial Redes Locais de Computadores 7 7 Centro de Processamento de Dados Departamento Pessoal Departamento Financeiro Diretoria Departamento Comercial Sala de Distribuição Sala de Reuniões Integração Total 8 8 PUC-Rio / DI TeleMídia 9 9 � Tecnologia Digital – Multimídia • Processamnto integrado de áudio, vídeo, dados, etc. – Novas tecnologias de transmissão • fibra ótica • altas velocidades • digitalização das redes públicas • redes integradas PUC-Rio / DI TeleMídia Redes de Computadores Sistema de Comunicação 10 10 PUC-Rio / DI TeleMídia Aplicações Topologia Meios e Métodosde Transmissão Protocolos PUC-Rio / DI TeleMídia Bibliografia � Redes de Computadores Das MANs, LANs e WANs às redes ATM Soares, L.F.G; Souza, G.L.; Colcher, S. Editora Campus 1995 � Computer Networks Tanenbaum, A. Prentice Hall � Internetworking with TCP/IP, Vol 1 Comer, D.E. Prentice Hall � SLIDES: http://www2.telemidia.puc-rio.br/inf/labredes/ 11 11 PUC-Rio / DI TeleMídia � Provas P3 = 25/06 P4 = 02/07 Calendário __MACOSX/Slides/P1/._1.Intro.pdf Slides/P1/2.Conceitos.pdf 1 1 PUC-Rio / DI TeleMídia Redes de Comunicação de Dados PUC -Rio Departamento de Informática Luiz Fernando Gomes Soares lfgs@inf.puc-rio.br PUC-Rio / DI TeleMídia Redes de Computadores Sistema de Comunicação 2 2 PUC-Rio / DI TeleMídia Qual a melhor forma de interligar os computadores considerando que eles estão a dezenas de quilômetros uns dos outros? PUC-Rio / DI TeleMídia Totalmente Ligados 3 3 PUC-Rio / DI TeleMídia Tipos de Ligação ou Simplex Half-duplex Full-duplex PUC-Rio / DI TeleMídia Situação dos anos 1970 a meados dos anos 1990 4 4 PUC-Rio / DI TeleMídia Redes Geograficamente Distribuídas (Distâncias Maiores que Dezenas de Quilômetros) Custo de Comunicação Elevado Circuitos para satélites Enlaces de microondas Cabos de longa distância PUC-Rio / DI TeleMídia Redes Completamente Ligadas ¾ Numa rede com N estações, por exemplo, seriam necessárias N(N-1)/2 ligações ponto a ponto para que se pudesse conectar todos os pares de estações através de linhas dedicadas. ¾ Dessa forma, o custo do sistema cresce com o quadrado do número de estações, tornando tal topologia economicamente inviável para redes grandes e com estações dispersas. 5 5 PUC-Rio / DI TeleMídia Anel PUC-Rio / DI TeleMídia Redes Geograficamente Distribuídas (Distâncias Maiores que Dezenas de Quilômetros) Custo de Comunicação Elevado Circuitos para satélites Enlaces de microondas Cabos de longa distância Baixas Velocidades Altas Taxas de Erro 6 6 PUC-Rio / DI TeleMídia Parcialmente Ligados PUC-Rio / DI TeleMídia PBX Central PBX Rede Telefônica 7 7 PUC-Rio / DI TeleMídia PBX PBX Rede Telefônica Central PUC-Rio / DI TeleMídia Comutação de Circuitos I Estabelecimento da Conexão (Roteamento) I Transferência de Informação I Desconexão Fases Um caminho permanece dedicado entre origem e destino durante todo o tempo de conexão A B C D E 8 8 PUC-Rio / DI TeleMídia Comutação de Circuitos Mensagem T 1 2 3 4 Estabelecimento da Conexão Término da Conexão Tempo de Propagação Transmissão da Mensagem Tempo de Transmissão PUC-Rio / DI TeleMídia Comutação de Circuitos Características ¾ Necessidade de estabelecimento de conexão (roteamento no momento da conexão) ¾ Canal dedicado ¾ Endereçamento necessário apenas na conexão ¾ Retardo de transferência dos dados constante 9 9 PUC-Rio / DI TeleMídia Comutação de Mensagens I É necessário um cabeçalho em cada mensagem para identificação de endereço de origem e destino AC EB A B C D E PUC-Rio / DI TeleMídia I Roteamento I Armazenamento A B C D E AC EB Comutação de Mensagens 10 10 PUC-Rio / DI TeleMídia 1 2 3 4 T Mensagem Cabeçalho Mensagem Mensagem Comutação de Mensagens PUC-Rio / DI TeleMídia Comutação de Mensagens Características ¾ Não existe fase de estabelecimento de chamada nem de desconexão ¾ Store-and-Forward ¾ Cada mensagem possui cabeçalho com informações necessárias ao seu encaminhamento ¾ Pode introduzir grandes atrasos nas mensagens 11 11 PUC-Rio / DI TeleMídia A B C D E Comutação de Pacotes 2EB 1EB 1 AC2AC3AC I É necessário um cabeçalho em cada pacote para identificação de endereço de origem e destino PUC-Rio / DI TeleMídia A B C D E Comutação de Pacotes I Cada pacote pode ser roteado de forma independente 1 AC 3AC 1EB 2AC 2EB 12 12 PUC-Rio / DI TeleMídia A B C D E Comutação de Pacotes I Cada pacote pode ser roteado de forma independente 1 AC 3AC 2EB 2AC 1EB I É necessário armazenar temporariamente os pacotes em nós intermediários I Os pacotes podem chegar fora de sequência no destino PUC-Rio / DI TeleMídia Comutação de Pacotes Transmissão dos Pacotes 1 2 3 4 1 2 3 1 2 3 1 2 3 Cabeçalho Dados 13 13 PUC-Rio / DI TeleMídia Comutação de Pacotes Características ¾ Não há necessidade de estabelecimento de conexão ¾ Canal compartilhado ¾ Endereçamento necessário em todos os pacotes ¾ Retardo de transferência dos dados é uma variável aleatória PUC-Rio / DI TeleMídia Formato do Pacote InformaçãoOrigemDestino 14 14 PUC-Rio / DI TeleMídia Rede Geograficamente Distribuída PUC-Rio / DI TeleMídia Rede Geograficamente Distribuída 15 15 PUC-Rio / DI TeleMídia DCEs Fronteira da sub-rede de Comunicação DSEs Rede Geograficamente Distribuída PUC-Rio / DI TeleMídia Redes Geograficamente Distribuídas ¾ De 1950 a 1970 vários estudos foram conduzidos sobre redes geograficamente distribuídas de computadores. ¾ O mais significativo em termos de impacto foi, provavelmente, a ARPANET, colocada em funcionamento em setembro de 1969. ¾ Inicialmente, a ARPANET se utilizava de linhas diretas, ponto a ponto, convencionais entre equipamentos internos da rede (chamados roteadores). 16 16 PUC-Rio / DI TeleMídia Rede Geograficamente Distribuída Host Roteador PUC-Rio / DI TeleMídia Rede Geograficamente Distribuída Inter-rede Host Roteador Rede 17 17 PUC-Rio / DI TeleMídia Redes Geograficamente Distribuídas (Distâncias Maiores que Dezenas de Quilômetros) Custo de Comunicação Elevado Circuitos para satélites Enlaces de microondas Cabos de longa distância Baixas Velocidades Altas Taxas de Erro REDES PÚBLICAS PUC-Rio / DI TeleMídia Redes Localmente Distribuídas (Distâncias Menores que Dezenas de Quilômetros) Custo de Comunicação Baixo Altas Velocidades Baixas Taxas de Erro 18 18 PUC-Rio / DI TeleMídia Rede Local (Distâncias Menores que Dezenas de Quilômetros) PUC-Rio / DI TeleMídia Rede Local (Distâncias Menores que Dezenas de Quilômetros) 19 19 PUC-Rio / DI TeleMídia Rede Local (Distâncias Menores que Dezenas de Quilômetros) PUC-Rio / DI TeleMídia Sistema de Comunicação ¾ Redes Geograficamente Distribuídas (WANs - Wide Area Networks) ¾ Redes Locais (LANs - Local Area Networks) ¾ Redes Metropolitanas (MANs - Metropolitan Area Networks) 20 20 PUC-Rio / DI TeleMídia Perguntas ¾ Qual a diferença de objetivos na construção de uma máquina de arquitetura distribuída e de uma rede de computadores? ¾ Por que a topologia parcialmente ligada é a única viável em redes com meios de transmissão caros, de baixa velocidade e alta taxa de erro? ¾ Por que a comutação de circuitos é ineficiente na transmissão de dados textuais? Como a comutação de pacotes resolve o problema? ¾ Por que em uma rede comutada por pacotes, pacotes podem chegar fora de ordem? ¾ Dê as características das redes comutadas por circuito, comutadas por mensagem e comutadas por pacotes. ¾ Por que e quando é necessário o endereçamento em redes comutadas por circuito, comutadas por mensagem e comutadas por pacotes? ¾ Por que as redes foram construídas com dois tipos distintos de nós, no jargão Internet hosts (hospedeiros) e routers (roteadores)? ¾ Como surgiu o conceito de inter redes, e com ele a rede Internet? ¾ O que viabilizou as topologias utilizadas em redes locais? Por que essas redes foram chamadas de locais? __MACOSX/Slides/P1/._2.Conceitos.pdf Slides/P1/3.ModeloOSI.pdf 25 25 PUC-Rio / DI TeleMídia Arquitetura OSI ¾ Open System Interconection ¾ ISO ¾ Sete camadas funcionais PUC-Rio / DI TeleMídia (N)-service entity (N)-service entity (N-1)-service provider (N)-service protocol specification (N-1)-service access point Fornecedores e Usuários de Serviço 26 26 PUC-Rio / DI TeleMídia (N)-service user (N-1)-service entity (N-1)-service entity (N-2)-service provider (N)-service user (N-1)-service provider (N-1)-service protocol specification (N-1)-service access point (N-2)-service access point Fornecedores e Usuários de Serviço PUC-Rio / DI TeleMídia Terminologia RM-OSI ¾ Um serviço representa um conjunto de funções oferecidas a um usuário por um provedor (fornecedor). O serviço oferecido por um provedor é acessado por um usuário através de um ponto de acesso ao serviço (Service Access Point SAP). Usuário do serviço (N) Usuário do serv iço (N) pontos de acesso ao serv iço (N) pontos de acesso ao serviço (N-1) Fornecedor do serv iço (N) p rotocolo d o serviço (N) Entidade do serviço (N) E nt idade do serv iço (N) Fornecedor do serv iço (N-1) pr otocolo do serviço (N-1 ) Enti dade do serviço (N-1) Ent idade do serv iço (N-1) Camada (N) Camada (N-1) 27 27 PUC-Rio / DI TeleMídia Tipos de Serviço ¾ Um protocolo pode oferecer serviços de dois tipos: • Serviços orientados a conexão • Serviços sem conexão ¾ Como visto anteriormente, na comutação de pacotes o estabelecimento de conexão antes da troca de dados não é obrigatória e sim opcional. PUC-Rio / DI TeleMídia Serviços Orientados a Conexão O serviço é dividido em três fases de operação: ¾ Estabelecimento da conexão: nessa fase, os usuários e o fornecedor do serviço negociam parâmetros e opções que irão determinar o modo como o serviço será utilizado. ¾ Transferência de dados: nessa fase, os usuários do serviço trocam dados. ¾ Liberação da conexão: nessa fase, a ligação entre os usuários é desfeita. 28 28 PUC-Rio / DI TeleMídia Serviços Não Orientados a Conexão ¾ Unidade de dados são transmitidas do SAP de origem para um ou mais SAPs de destino, sem que para isso seja estabelecida uma conexão entre eles. ¾ Toda a informação necessária para transmitir a unidade de dados (endereço, parâmetros de qualidade do serviço etc.) é passada para a camada que vai fornecer o serviço, junto com os dados a serem transmitidos. PUC-Rio / DI TeleMídia Perfis Funcionais ¾ Deve ser ressaltado que o RM-OSI, por si só, não define a arquitetura de uma rede. Isso acontece porque ele não especi fica com exatidão os serviços e protocolos de cada camada. Ele simplesmente “ diz o que cada camada deve fazer”. ¾ O fato de dois sistemas distintos seguirem o RM-OSI não garante que eles possam trocar informações entre si, pois o modelo permite que sejam usadas diferentes opções de serviços/protocolos para as várias camadas. ¾ Para que dois sistemas quaisquer possam trocar informações é necessário que escolham opções compatíveis de serviço/protocolo para todas as camadas do modelo. ¾ Com o objetivo de definir grupos de opções de serviços/protocolos padronizados, a ISO elaborou o conceito de perfis funcionais. Se dois sistemas seguirem o mesmo perfil funcional eles garantidamente irão comunicar-se, pois nesse caso as opções de serviço/protocolo adotadas serão compatíveis. 29 29 PUC-Rio / DI TeleMídia RM-OSI ¾ O RM-OSI propõe uma estrutura com sete níveis como referência para a arquitetura dos protocolos de redes de computadores. Nível 7 Nível 6 Nível 5 Nível 4 Nível 3 Nível 2 Nível 1 Nível 7 Nível 6 Nível 5 Nível 4 Nível 3 Nível 2 Nível 1 Sistema Aberto A Protocolo do Nível 7 Protocolo do Nível 6 Protocolo do Nível 5 Protocolo do Nível 4 Protocolo do Nível 3 Protocolo do Nível 2 Protocolo do Nível 1 Interface 1/2 Interface 2/3 Interface 3/4 Interface 4/5 Interface 5/6 Interface 6/7 Interface 1/2 Interface 2/3 Interface 3/4 Interface 4/5 Interface 5/6 Interface 6/7 Sistema Aberto B PUC-Rio / DI TeleMídia Modelo OSI Aplicação Transporte Rede Enlace Físico Sessão Apresentação Usuário 30 30 PUC-Rio / DI TeleMídia E R E R R ER E R ERRE R E R ERRE R Rede Enlace Rede Enlace ER E R R E R F F F F FF F FF Físico Físico F F F IS3 IS1 IS2 IS41 AB 2 AB3 AB OSI ES ES A B PUC-Rio / DI TeleMídia E R E R R ER E R ERRE R E R ERRE RTransporte Rede Enlace Transporte Rede Enlace ER E R R E R F F F F FF F FF Físico Físico F F F IS3 IS1 IS2 IS4 1 AB 2 AB 3 AB OSI ES A ES B 31 31 PUC-Rio / DI TeleMídia Nível de Transporte ¾ O nível de rede não garante necessariamente que um pacote chegue a seu destino, e pacotes podem ser perdidos ou mesmo chegar fora da seqüência original de transmissão. Para fornecer uma comunicação fim a fim verdadeiramente confiável é necessário um outro nível de protocolo, que é justamente o nível de transporte. Esse nível vai isolar dos níveis superiores a parte de transmissão da rede. ¾ O objetivo principal da camada de transporte é, então, tornar transparentes para seus usuários possíveis variações da confiabilidade do serviço fornecido pela camada de rede. PUC-Rio / DI TeleMídia Nível de Transporte ¾ Na camada de transporte a comunicação é verdadeiramente fim a fim, isto é, a entidade da camada de transporte da máquina de origem se comunica apenas com a entidade de transporte da máquina de destino. Isto pode não acontecer nos níveis físico, de enlace e de rede onde a comunicação também se dá entre máquinas adjacentes (intermediários na comunicação) na rede. 32 32 PUC-Rio / DI TeleMídia Níveis 1 a 4 em uma Rede em Grafo RedeRede EnlaceEnlace FísicoFísico RedeRede EnlaceEnlace FísicoFísico Transporte Rede Enlace Físico Transporte Rede Enlace Físico Protocolo de Aplicação Protocolo de Transporte Protocolo de Rede Protocolo de Enlace Protocolo de Nível Físico Sistemas Retransmissores Sistema Aberto A Sistema Aberto B PUC-Rio / DI TeleMídia¾Circuito Virtual E R E R R ER E R ERRE R E R ERRE RTransporte Rede Enlace Transporte Rede Enlace ER E R R E R F F F F FF F FF Físico Físico F F F IS3 IS1 IS2 IS4 OSI ES A ES B 33 33 PUC-Rio / DI TeleMídia E R E R R ER E R ERRE R E R ERRE R Aplicação Transporte Rede Enlace Aplicação Transporte Rede Enlace ER E R R E R F F F F FF F FF Físico Físico F F F IS3 IS1 IS2 IS4 Sessão Sessão Apresentação Apresentação OSI ES A ES B PUC-Rio / DI TeleMídia Perguntas ¾ Qual a diferença entre um hub e um switch? ¾ Dê duas formas de implementação de um switch, diga suas vantagens e desvantagens, salientando em que condições são mais favoráveis seus usos. ¾ Faça uma análise da topologia em estrela com relação ao custo, confiabilidade, desempenho e escalabilidade. ¾ Por que uma anel tende logicamente a uma barra? ¾ Por que um concentrador único de uma rede em anel funciona como um hub? ¾ Faça uma análise da topologia em anel com relação ao custo, confiabilidade, desempenho e escalabilidade. ¾ O que é um hub em uma topologia em barra? ¾ Faça uma análise da topologia em barra com rela ção ao custo, confiabilidade, desempenho e escalabilidade. ¾ Qual a diferença entre uma topologia física e uma lógica? Dê exemplos. ¾ Por que a A instalação física das redes tem sofrido uma forte tendência na direção da utilização de hubs? ¾ Podemos dizer que a extensão de uma rede em estrela é uma rede em grafo? Como isto se dá? ¾ Por que é conveniente a divisão de uma grande rede em vária redes menores interligadas? Qual o nome que se dá às estações responsáveis pela interligação dessas redes? 34 34 PUC-Rio / DI TeleMídia Perguntas ¾ O que são serviços orientados a conexão e serviços sem conexão? ¾ Faz sentido um serviço orientado a conexão em uma rede comutada por pacotes? ¾ Como pode haver uma serviço orientado a conexão em uma rede onde os pacotes podem seguir caminhos diferentes na rede? ¾ Quais os serviços obrigatórios de cada camada do modelo ISO- OSI? ¾ Se duas redes seguem o modelo OSI elas obrigatoriamente são interoperáveis? Por que? O que são perfis funcionais? PUC-Rio / DI TeleMídia Transmissão de Dados no Modelo OSI Aplicação Apresentação Sessão Transporte Rede Enlace Físico Aplicação Apresentação Sessão Transporte Rede Enlace Físico DadosDados A Dados DadosAA DadosAAS DadosAAST DadosAASTR EDadosAASTRE EDadosAASTREF F ADados DadosAA DadosAAS DadosAAST DadosAASTR EDadosAASTRE EDadosAASTREF F Usuário Transmissor Usuário Receptor 35 35 PUC-Rio / DI TeleMídia RS-232C RS-488 HDLC SDLC TCP LU 6.2 ISO Session 8327 X-400 X-25 Nível 3 LAP B X-21 V-28 X-25 Aplicação Transporte Rede Enlace Físico Sessão Apresentação Usuário IP ISO 8473 ISO Presentation 8823 { ISO8073-TP4 ISO 8571 - FTAM Implementações das Camadas OSI PUC-Rio / DI TeleMídia Arquitetura Internet Aplicação T ransporte Inte r-rede Inte rface de Rede Host A Host B Aplicação Transporte Inter-rede Interface de Rede Inter-rede mensagem idêntica pacote idêntico Gateway datagrama idêntico quadro idêntico quadro idêntico datagrama idêntico In terfac e de Re de Interface de R ede Rede Física 1 Intra-rede Intra-rede Rede Física 2 36 36 PUC-Rio / DI TeleMídia Arquitetura OSI e Internet Arquitetura Internet Aplicação Transporte Inter-rede Interface de Rede Intra-rede Aplicação Apresentação Sessão Transporte Rede Enlace Físico Arquitetura OSI PUC-Rio / DI TeleMídia Arquiteturas e Protocolos __MACOSX/Slides/P1/._3.ModeloOSI.pdf Slides/P1/4.NívelFísico.pdf 37 37 PUC-Rio / DI TeleMídia Nível Físico PUC-Rio / DI TeleMídia Nível Físico ¾ O nível físico fornece as caract erísticas mecânicas, elétricas, funcionais e de procedimento para ativar, manter e desativar conexões físicas para a transmissão de bits entre entidades de nível de enlace (ou ligação), possivelmente através de sistemas intermediários. ¾ O protocolo de nível físico dedica-se à transmissão de uma cadeia de bits. Ao projetista desse protocolo cabe decidir como representar 0's e 1's, quantos microssegundos durará um bit (intervalo de sinalização), se a transmissão será hal f-duplex ou full-duplex, como a conexão será estabelecida e desfeita, quantos pinos terá o conector da rede e quais seus significados, bem como outros detalhes elétricos e mecânicos. ¾ A função do nível físico é permitir o envio de uma cadeia de bits pela rede sem se preocupar com o seu significado ou com a forma como esses bits são agrupados. Não é função desse nível tratar de problemas tais como erros de transmissão. 38 38 PUC-Rio / DI TeleMídia Banda Passante ¾ Ainda no século XIX, um famoso matemático francês chamado Jean Fourier provou que qualquer sinal periódico, expresso como uma função do tempo g(t), com período T0, pode ser considerado como uma soma (possivelmente infinita) de senos e cossenos de diversas freqüências. PUC-Rio / DI TeleMídia ou ∑ ∞ = ++= 1 0 )2cos( 2 )( n nn nftcctg θpi ( ) ( )∑∑ ∞ = ∞ = ++= 11 0 2cos22 1)( n n n n nftbnftsenaatg pipi 39 39 PUC-Rio / DI TeleMídia RESUMINDO ¾ Todo e qualquer sinal pode ser decomposto através de uma soma (finita ou infinita) de ondas cossenoidais. ¾ Representar um sinal no domínio do tempo é representar o valor da amplitude do sinal para cada instante do tempo ¾ Representar um sinal no domínio da frequência é representar a amplitude de cada onda cossenoidal que compõe o sinal, ou seja, representar o seu espectro de frequência. PUC-Rio / DI TeleMídia Banda Passante ¾ Denomina-se banda passante de um sinal o intervalo de freqüências que compõem este sinal. ¾ A largura de banda desse sinal é o tamanho de sua banda passante (ou seja, a diferença entre a maior e a menor freqüência que compõem o sinal). 40 40 PUC-Rio / DI TeleMídia ¾ Banda de Frequências (Banda Passante) • Intervalo de frequências que compõe o sinal – Ex.: um sinal digital temuma banda de frequências ¾ Largura de Banda • Diferença da maior para a menor frequência da banda do sinal – Ex.: um sinal digital temlargura de banda infinita. Banda Passante e Largura de Banda de um Sinal 0 , +∞ PUC-Rio / DI TeleMídia Distorção de Frequência ¾ Nenhum meio de transmissão é capaz de transmitir sinais sem que hajam perdas de energia durante o processo. ¾ Perdas de energia signifi cam reduções na amplitude de sinais componentes. ¾ Se todos os sinais componentes fossem igualmente reduzidos em amplitude, o sinal resultante seria todo reduzido em amplitude, mas não distorcido. ¾ Infelizmente, a característica dos meios de transmissão é a de provocar perdas nos diversos sinais componentes em diferentes proporções, provocando a distorção do sinal resultante transmitido. 41 41 PUC-Rio / DI TeleMídia Banda Passante TransmissorTransmissor ReceptorReceptor Banda Passante do Receptor Banda Passante do Transmissor Banda Passante do Meio PUC-Rio / DI TeleMídia Banda Passante do Meio Físico ¾ Chamaremos banda passante do meio físico àquela faixa de freqüências que permanece praticamente preservada pelo meio. 42 42 PUC-Rio / DI TeleMídia Banda Passante Necessária ¾ No caso de transmissão de sinais digitais, torna-se interessante definir a banda passante necessária como a largura de banda mínima capaz de garantir que o receptor ainda recupere a informação digital originalmente transmitida. PUC-Rio / DI TeleMídia 0 2 4 6 8 10 12 14 16 18 20 0 0. 3 0. 6 0 2 4 6 8 10 12 14 16 18 200 0. 3 0. 6 0 2 4 6 8 10 12 14 16 18 20 0 0. 3 0. 6 0 2 4 6 8 10 12 14 16 18 200 0. 3 0. 6 0 2 4 6 8 10 12 14 16 18 20 0 0. 3 0. 6 H a r m ô n i c o s 43 43 PUC-Rio / DI TeleMídia Recuperação do Sinal Digital Transmissão T Intervalos de sinalização T Instantes de amostragem ReceptorReceptorTransmissorTransmissor T Sinal recuperado PUC-Rio / DI TeleMídia Relação entre Banda Passante e Taxa de Transmissão 0 1 0 0 400 10 - MHz Mbps⇔ X 010 X X 0 400 100 - MHz Mbps⇔ X X X 0 44 44 PUC-Rio / DI TeleMídia Modulação PUC-Rio / DI TeleMídia Utilização da Banda Passante Meio de Transmissão 0 40 400 “Desperdício” Como melhorar a utilização do meio de transmissão ? 45 45 PUC-Rio / DI TeleMídia Utilização da Banda Passante do Meio de Transmissão C0 0 40 400 C1 C2 80 160 PUC-Rio / DI TeleMídia Multiplexação na Frequência 46 46 PUC-Rio / DI TeleMídia Multiplexação por Divisão da Frequência F1 F2 F3 F4 PUC-Rio / DI TeleMídia MODEM Filtro Demodulador R1R1 f 1 Filtro Demodulador R2R2 Filtro Modulador T2T2 f2 Filtro Modulador T1T1 MODEM 47 47 PUC-Rio / DI TeleMídia Comutação na Frequência PUC-Rio / DI TeleMídia Comutação na Frequência Comutador Canal 3 Canal 12 48 48 PUC-Rio / DI TeleMídia Multiplexação no Tempo PUC-Rio / DI TeleMídia Multiplexação no Tempo T A1 Banda DesperdiçadaDados B1 C1 D1 A2 B2 C2 D2 Primeiro Ciclo Segundo Ciclo Para computador remoto A B C D I Multiplexação Síncrona (TDM) (synchronous Time Division Multiplexing) B1: Canal Chav eado Ponto-a-Ponto A1: Canal Dedicado Ponto-a-Ponto 49 49 PUC-Rio / DI TeleMídia Mutiplexação ¾ No tempo (TDM): • Síncrona (STDM): – O tempo é dividido em ciclos de tamanho (bits) fixo, que se repetemao longo do tempo. – O ciclo é dividido em segmentos de tamanho fixo, de acordo com sua posição – O canal é formado por uma seqüência de segmentos: – A alocação do canal pode ser estática ou dinâmica PUC-Rio / DI TeleMídia Comutação Síncrona no Tempo 50 50 PUC-Rio / DI TeleMídia Comutação no STM Quadro 125 µµµµ s Quadro 125 µµµµ s Comutador STM Canal 3 Canal 12 PUC-Rio / DI TeleMídia Comutação de Circuitos ¾ Chaveamento por Divisão Espacial • (Space Division Switching - SDS) – Cada nó fecha um circuito físico entre entrada e saída ¾ Chaveamento por Divisão da Frequência • (Frequency Division Switching - FDS) – Cada nó chaveia de um canal de uma linha de entrada para um canal de uma linha de saída – O circuito formado pelos nós é uma sequência de canais de frequência ¾ Chaveamento por Divisão do Tempo • (Time Division Switching - TDS) – Cada nó chaveia de um canal de uma linha de entrada para um canal de uma linha de saída – O circuito formado pelos nós é uma sequencia de canais em linhas TDM síncronas 51 51 PUC-Rio / DI TeleMídia Multiplexação Assíncrona PUC-Rio / DI TeleMídia TDM Assíncrono Para o Meio Físico A B C D A1 B1 B2 C2 Capacidade Extra DisponívelCabeçalho T t1 t2 52 52 PUC-Rio / DI TeleMídia Comutação de Pacotes PUC-Rio / DI TeleMídia Comutação de Pacotes Comutador STM 53 53 PUC-Rio / DI TeleMídia Meios de Transmissão PUC-Rio / DI TeleMídia Par Trançado 54 54 PUC-Rio / DI TeleMídia Par Trançado ¾ Dois fios metálicos (em geral de cobre) enrolados em espiral • trançado: tende a manter constante as propriedades elétricas ao longo do caminho de transmissão • melhor desempenho que umpar emparalelo para distâncias grandes ¾ Propriedades dependem do diâmetro e da qualidade dos fios utilizados • taxas de transmissão podem chegar a alguns poucos megabits por segundo, dependendo da distância entre os extremos • bastante susceptível a ruídos (BLINDAGEM) • menor custo por comprimento • alta maleabilidade - facilidade de instalação PUC-Rio / DI TeleMídia Par Trançado Unshielded Twisted Pair 55 55 PUC-Rio / DI TeleMídia Par Trançado Blindado Shielded Twisted Pair PUC-Rio / DI TeleMídia Conector RJ-45 56 56 PUC-Rio / DI TeleMídia Conector Token-Ring PUC-Rio / DI TeleMídia Cabo Coaxial 57 57 PUC-Rio / DI TeleMídia Cabo Coaxial ¾ Condutor cilíndrico interno circundado por tubo metálico (separados por material dielétrico) • condutor interno: em geral de cobre • tubo metálico: blindagem eletrostática • material dielétrico: ar seco ou plástico ¾ Popular em TV a cabo ¾ Suporta taxas de transmissão mais altas que o par trançado, para uma mesma distância • alcança, tipicamante, 10 Mbps em distancias da ordem de 1 Km ¾ Boa imunidade a ruído ¾ Custo por comprimento maior que o do par trançado ¾ Menor maleabilidade que o par trançado - mais difícil de instalação PUC-Rio / DI TeleMídia Cabo Coaxial Grosso (Thick Coaxial Cable) 58 58 PUC-Rio / DI TeleMídia Cabo Coaxial Fino (Thin Coaxial Cable) PUC-Rio / DI TeleMídia Conector BNC 59 59 PUC-Rio / DI TeleMídia Conector BNC T PUC-Rio / DI TeleMídia Fibra Ótica 60 60 PUC-Rio / DI TeleMídia Fibra Ótica ¾ Filamento de sílica ¾ Atenuação não depende da frequência • permite taxas altíssimas – 16 Gbps (em laboratório) ¾ Imune a interferências eletromagnéticas ¾ Isolamento completo entre transmissor e receptor ¾ Custo por comprimento mais elevado ¾ Ligações complicadas PUC-Rio / DI TeleMídia Fibra Ótica 61 61 PUC-Rio / DI TeleMídia Conectores ST PUC-Rio / DI TeleMídia Fibra Ótica Modulador Amplificador Detetor Fonte de luz Fibra Ótica Sensor ótico Sinais Elétricos Sinais ElétricosSinais Óticos 62 62 PUC-Rio / DI TeleMídia Fibra Ótica ¾ Diodo Emissor de Luz (Light Emitting Diode - LED) • atinge taxas da ordemde 150 Mbps • potênciasuficiente para o sinal se propagar de 10 a 15 Kmsemrepetidores ¾ Laser • monocromático • coerente (ondas alinhadas emfase) • intensidade alta • raios paralelos PUC-Rio / DI TeleMídia Fibra Ótica ¾ Monomodo Diferentes índices de refração 5 µ m 75 µ m 63 63 PUC-Rio / DI TeleMídia Fibra Ótica ¾ Multimodo Diferentes índices de refração 50 µ m 100 µ m PUC-Rio / DI TeleMídia Fibra Ótica ¾ Multimodo com Índice Gradual 100 µ m 64 64 PUC-Rio / DI TeleMídia Codificação e Transmissão de Informação PUC-Rio / DI TeleMídia Transmissão ¾ O transmissor e o receptor são máquinas de estado que precisam ser sincronizadas (terem seus relógios ajustados em frequência e fase) ¾ Como sincronizar ? 1) enviar em um canal separado dos dados o relógio do transmissor 2) obrigar o circuito receptor a trabalhar com uma frequência maior que a do transmissor 3) enviar dados e relógio juntos em um mesmo canal 65 65 PUC-Rio / DI TeleMídia Transmissão Serial Assíncrona Stop Parity Start Start Transmissão serial 1 0 1 0 0 1 1 PUC-Rio / DI TeleMídia Transmissão ¾ O transmissor e o receptor são máquinas de estado que precisam ser sincronizadas (terem seus relógios ajustados em frequência e fase) ¾ Como sincronizar ? 1) enviar em um canal separado dos dados o relógio do transmissor 2) obrigar o circuito receptor a trabalhar com uma frequência maior que a do transmissor 3) enviar dados e relógio juntos em um mesmo canal 66 66 PUC-Rio / DI TeleMídia Código Manchester • bit “1” - transição positiva (subida) no meio do intervalo desinalização do bit • bit “0” - transição negativa (descida) no meio do intervalo de sinalização do bit Bits Sinal NRZ Onda de Relógio Manchester 0 1 1 0 0 0 1 1 0 1 0 PUC-Rio / DI TeleMídia Codificação Manchester ¾ Sincronismo entre transmissor e receptor ¾ Detecção de portadora ¾ Detecção de colisão ¾ Transmissão de quatro símbolos • “0” • “1” • “J” • “K” 67 67 PUC-Rio / DI TeleMídia Perguntas ¾ O que é uma transmissão simplex, half-duplex e full-duplex? Dê duas formas de implementação de uma comunicação full duplex. ¾ O que é uma ligação ponto-a-ponto e multiponto? ¾ O que é representar um sinal no domínio do tempo? E no domínio da frequência? ¾ O que é banda passante e largura de banda de umsinal? Qual a largura de banda de umsinal digital? ¾ O que é banda passante necessária de umsinal? ¾ Qual a diferença entre sinal e informação? ¾ Um sinal pode ser deformado semque se perca informação? Dê exemplo? ¾ Por que um meio físico de alta velocidade é chamado de meio de banda larga? PUC-Rio / DI TeleMídia Perguntas ¾ O que é modulação? Qual a diferença para a multiplexação de frequência? ¾ O que é multiplexação no tempo? ¾ O que é multiplexação síncrona e assíncrona? ¾ Qual a diferença entre TDM e TDMA? ¾ Qula a diferença entre FDM e FDMA? ¾ O que é comutação? O que é comutação na frequência e no tempo? ¾ O que é um comutador síncrono e assíncrono no tempo? Em que tipos de redes são utilizados? Quais as multiplexações são utilizadas em suas linhas? ¾ O que são as hierarquias plessiócronas? ¾ Qual a diferença entre uma fibra monomodo, multimodo e multimodo com índice gradual? ¾ Para que serve a codificação manchester? Como através dela é possível realizar a detecção de portadora e a detecção de colisão? Pode existir colisão em ligação ponto-a-ponto? Por que a codificação manchester é chamada dibit? 68 68 PUC-Rio / DI TeleMídia Perguntas ¾ Considere um sinal analógico cujo espectro é ilustrado na figura abaixo Se considerarmos que a banda passante necessária para manter uma boa qualidade desse sinal (definida por uma determinada aplicação) corresponde à faixa na qual a amplitude das componentes permanece maior ou igual a maior amplitude de todas as componentes (Amax) dividida por , pergunta-se: • Utilizando FDM em um meio físico cuja banda passante vai de 800 kHz a 900 kHz, quantos canais do sinal acima podem ser acomodados considerando que é necessário inserir bandas de guarda (bandas entre canais) de 500 Hz ? • Considerando o mesmo meio físico da questão a), quais serão as faixas de freqüência que os filtros de cada canal deverá atuar? Freqüência (Hz) Ampli tude dos Sina is Componente s Amax 2 max A 500 10 00 1500 20 00 250 0 3 000 350 0 PUC-Rio / DI TeleMídia Nível de Enlace __MACOSX/Slides/P1/._4.NívelFísico.pdf Slides/P1/5.EnlaceObrigatório.pdf 69 69 PUC-Rio / DI TeleMídia Camada de Enlace ¾ Delimitação e transmissão de quadros ¾ Detecção de erros ¾ Controle de Acesso ¾ Correção de erros que por ventura ocorram no nível físico (opcional) ¾ Controle de fluxo (opcional) ¾ Multiplexação (opcional) Aplicação Apresentação Sessão Transporte Rede Enlace Físico PUC-Rio / DI TeleMídia Delimitação de Quadros Para cri ar e reconhecer os limites dos quadros são usados basicamente cinco métodos. ¾ Contagem de caracteres ¾ Transparência de caracteres ¾ Transparência de bits ¾ Violação de código ¾ Caça ao cabeçalho 70 70 PUC-Rio / DI TeleMídia Contagem de Caracter ¾ Na contagem de caracteres, um campo no cabeçalho informa o número de caracteres do quadro. ¾ Supondo que um quadro vem logo a seguir a outro, fica assim determinado o fim de um quadro e o início de outro. ¾ Para delinear o primeiro quadro ou resincronizar a delimitação, pode ser utilizado, por exemplo, o quinto método: “ caçada do cabeçalho”. PUC-Rio / DI TeleMídia Transparência de Caracteres ¾ A transparência de caracteres baseia-se na utilização de caracteres delimitadores. O método utiliza caracteres especiais para indicar o início e o final do quadro. ¾ O problema dessa abordagem é que os caracteres delimitadores podem aparecer entre os dados transmitidos no quadro. Para contornar esse problema, toda vez que um delimitador aparece nos dados, é inserido (stuffed) antes dele um outro caracter especial. Quando o destinatário recebe um delimitador precedido do caracter especial ele conclui que, nesse caso, o caracter delimitador faz parte dos dados do quadro. 71 71 PUC-Rio / DI TeleMídia Transparência de Bits ¾ Transparência de bits (bit stuffing) utiliza seqüências especiais de bits, denominadas flags, para delimitar os quadros. Para evitar que ocorrências da seqüência delimitadora nos dados sejam interpretadas incorretamente, bits adicionais são acrescentados aos dados, de forma semelhante à transparência de caracteres. ¾ O protocolo HDLC utiliza essa técnica e usa o padrão 01111110 como delimitador. Sempre que o transmissor encontra seis bits consecutivos iguais a 1 nos dados que vai transmitir, ele insere (stuffs) um bit 0 na cadeia de bits. Quando o receptor encontra seis bits 1 consecutivos, seguidos de um bit 0, ele automaticamente retira (destuffs) o bit 0. PUC-Rio / DI TeleMídia Violação de Códigos ¾ O quarto método baseia-se na violação de códigos do nível físico. ¾ Esse método só pode ser usado em redes cuja codificação dos bits no meio físico possui alguma forma de redundância. ¾ Por exemplo, na codificação Manchester (utilizado nas redes Ethernet e token ring) o bit 0 é codificado por uma transição negativa no sinal, e o bit 1 por uma transição positiva. Os símbolos onde não há transi ção (J e K) não são usados para representar dados, podendo ser então utilizados para delimitar os quadros. ¾ Outros exemplos de utilização da violação de códigos podem ser encontrados nos códigos blocados 4 entre 5 (utilizado nas redes FDDI e ATM) e 8 entre 10 (utilizado nas redes Fiberchannel e ATM) 72 72 PUC-Rio / DI TeleMídia Codificação 4 entre 5 Símbolo Valor (5bits) Símbolos de Dados 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 Símbolos de Controle Quiet Idle Halt J K T Control Reset Control Set 11110 01001 10100 10101 01010 01011 01110 01111 10010 10011 10110 10111 11010 11011 11100 11101 00000 11111 00100 11000 10001 01101 00111 11001 PUC-Rio / DI TeleMídia Codificação NRZI Bits NRZ Relógio Manchester 0 1 1 0 0 0 1 1 0 1 0 NRZI 73 73 PUC-Rio / DI TeleMídia Caça ao Cabeçalho ¾ Neste método, o cabeçalho do quadro é terminado com um campo para detecção de erro, denominado HEC (header error check). ¾ Inicialmente, no estado de caça (HUNT), o quadro é monitorado bit a bit, através de uma janela de tamanho igual ao tamanho do cabeçalho, incluindo o campo HEC). A cada entrada de um bit do quadro nessa janela, a corretude do “suposto cabeçalho” é veri ficada (at ravés do “ suposto HEC”). Quando uma seqüência correta é detectada o início do quadro está delimitado. ¾ Seu final pode ser delimitado, ou pelo quadro ter um tamanho fixo que se sabe a priori (como é o caso da utilização desse método em redes ATM), por contagem de caracteres, ou por um outro método qualquer. PUC-Rio / DI TeleMídia Técnicas de Detecção de Erro ¾ Paridade ¾ Checksum ¾ CRC 74 74 PUC-Rio / DI TeleMídia Formato do Pacote Informação FCSOrigemDestino EDSD PUC-Rio / DI TeleMídia Controle de Acesso ¾ Cabe ao nível de enlace disciplinar o acesso ao meio. Este controle pode ser centralizado ou distribuído. ¾ No controle centralizado, uma máquina fica responsável pelo controle do acesso (estação primária), que é por ela gerenciado através do envio de um quadro poll perguntando se cada uma das outras máquinas (estações secundári as) possui dados a transmitir (lembre-se que a ligação pode ser ponto-a-ponto ou multiponto. Em caso positivo a estação secundária transmite seus dados após receber o quadro poll. ¾ No controle distribuído as estações são consideradas logicamente iguais tendo o mesmo direito de acesso ao enlace. Nesse modo de operação todas as estações são responsáveis pelo controle de acesso ao meio físico. 75 75 PUC-Rio / DI TeleMídia Multiplexação x Acesso ¾ FDM • FDMA ¾ TDM • TDMA PUC-Rio / DI TeleMídia Alguns exemplos de protocolos de acesso (M) ¾ Centralizado • Modo de resposta normal do protocolo HDLC [ISO 84a, ISO 84b, ISO 84c]. ¾ Distribuído: • subcamada Medium Access Control (MAC) do padrão IEEE 802.3: CSMA/ CD (usado nas redes Ethernet) • subcamada Medium Access Control (MAC) do padrão IEEE 802.4: token bus • subcamada Medium Access Control (MAC) do padrão IEEE 802.5: token ring • subcamada Medium Access Control (MAC) do padrão IEEE 802.6: DQDB • subcamada Medium Access Control (MAC) do padrão ANSI X3T9: FDDI 76 76 PUC-Rio / DI TeleMídia Protocolos de Acesso ao Meio PUC-Rio / DI TeleMídia Características dos Protocolos ¾ Capacidade ¾ Estabilidade em sobrecarga ¾ Justiça (“fairness”) ¾ Prioridade ¾ Retardo de transferência 77 77 PUC-Rio / DI TeleMídia Protocolos de Acesso Baseados em Contenção PUC-Rio / DI TeleMídia Aloha 78 78 PUC-Rio / DI TeleMídia Aloha Tempo R2 Timeout + Backoff Transmissor 2 T1 R1T2 PUC-Rio / DI TeleMídia Aloha ¾ Capacidade • Aloha 18% ¾ Equidade ¾ Prioridade ¾ Retardo de transferência ¾ Estabilidade em sobrecarga 79 79 PUC-Rio / DI TeleMídia Slotted Aloha Tempo T1 T2 PUC-Rio / DI TeleMídia Aloha X Slotted-Aloha T1 Tempo ocioso T1 Aloha Slotted-Aloha 80 80 PUC-Rio / DI TeleMídia Aloha X Slotted-Aloha Tempo de Desperdício Tempo de Desperdício Aloha Slotted-Aloha PUC-Rio / DI TeleMídia Aloha ¾ Capacidade • Aloha 18% • Sloted Aloha 36% ¾ Equidade ¾ Prioridade ¾ Retardo de transferência ¾ Estabilidade em sobrecarga 81 81 PUC-Rio / DI TeleMídia CSMA (Carrier Sense Multiple Access) PUC-Rio / DI TeleMídia CSMA Tempo T1 T2 82 82 PUC-Rio / DI TeleMídia CSMA R2 R2 Timeout + Backoff Transmissor 2 T1 T2 Tempo PUC-Rio / DI TeleMídia CSMA Estação Ativa Transmite Colisão? Sim Não Sim Não Meio Livre? Retardo Aleatório 83 83 PUC-Rio / DI TeleMídia IEEE 802.11 – CSMA/CA Quero Transmitir O meio está livre? Não Sim Esperar um tempo aleatório O meio ainda está livre? Transmitir Esperar um tempo aleatório O ACK chegou? Não Sim Fim Não PUC-Rio / DI TeleMídia CSMA/CD Tempo T1 T2 T3 Colisão 84 84 PUC-Rio / DI TeleMídia O Protocolo CSMA/CD ¾ O protocolo CSMA/CD é um dos mais populares, por ser o protocolo de acesso das redes Ethernet. Para regular o acesso ao enlace, todas as estações nele ligadas, deve realizar o seguinte algoritmo: Estação Ativa Transmite Colisão? Sim Não Sim Não Meio Livre? Para de transmitir Espera um retardo Aleatório SUCESSO PUC-Rio / DI TeleMídia A B CSMA/CD B detecta a colisão 85 85 PUC-Rio / DI TeleMídia A B A recebe o pacote enviado por B, e não sabe que seu pacote sofreu colisão CSMA/CD PUC-Rio / DI TeleMídia A B A detecta a colisão CSMA/CD 86 86 PUC-Rio / DI TeleMídia CSMA/CD ¾M >= 2 C Tp • M é o tamanho do pacote em bits • C é a taxa de transmissão da rede em bps • Tp é o tempo de propagação do sinal no meio PUC-Rio / DI TeleMídia CSMA/CD ¾ E = 1 / (1 + 3,4 a) ¾ a = Tp / P • P é o tempo de transmissão de umpacote 87 87 PUC-Rio / DI TeleMídia CSMA/CD ¾ E = 1 / (1 + 3,4 a) ¾ a = Tp / P • P é o tempo de transmissão de umpacote ¾ P = M / C Tp = L / Vc ¾ a = L.C / Vc.M = L.C / k PUC-Rio / DI TeleMídia Protocolos de Acesso Ordenado 88 88 PUC-Rio / DI TeleMídia Protocolos de Acesso Ordenado ¾ Retardo de transferência limitado ¾ Justo (“fair”) ¾ Estável em sobrecarga PUC-Rio / DI TeleMídia 89 89 PUC-Rio / DI TeleMídia C C V V C V C V PUC-Rio / DI TeleMídia Inserção de Retardo RDR RDT 1 2 3 Registro de Recepção Registro de Transmissão Anel Interface 90 90 PUC-Rio / DI TeleMídia Perguntas ¾ Quais as funções obrigatórias e opcionais do nível de enlace? ¾ Faça todas as combinações possíveis dos algoritmos para delimitação de início e fimde pacotes e destaque aquelas que não funcionam. ¾ Explique a detecção de erro por CRC. ¾ Como pode ser feita a detecção de colisão emuma rede CSMA? E emuma rede CSMA-CD? Por que o serviço da primeira é chamado de confiável e o da segunda de não confiável? Qual o melhor? ¾ Por que existe um tamanho de mensagem mínimo em uma rede CSMA- CD? Como esse tamanho varia com a maior distância entre estações da rede e a taxa de transmissão utilizada? ¾ Porque a eficiência de uma rede CSMA-CD tambémdepende da distância e da taxa de transmissão? PUC-Rio / DI TeleMídia Perguntas ¾ Sabendo-se que: • o tamanho mínimo (em octetos) que deve ter a soma dos campos INFO e PAD em uma rede utilizando CSMA/CD é 64 octetos; • as estações são ligadas diretamente a um comutador (switch) por um enlace cujo comprimento é igual a 100m; • a velocidade de propagação no meio (enlace) é igual a 250.000 km/s. • cada comutador interligando duas estações introduz um retardo equivalente ao tempo de transmissão de 13 octetos, em cada comutação; • a taxa de transmissão é de 100 Mbps; • Qual a distância máxima entre duas estações na rede? • Sintaxe da mensagem ¾ Obs: 1)No cálculo da mensagem mínima, o preâmbulo e o campo SD não devemser levados emconsideração. FCSPreâmbulo SD DA PADINFOLengthSA 7 1 6 6 2 4 (octetos) 91 91 PUC-Rio / DI TeleMídia Perguntas ¾ Imagine que você queira utilizar uma rede CSMA/CD, de acordo com o padrão IEEE-802.3, para transmissão de voz digitalizada. Sabe-se que cada pessoa falando (enviando voz ou silêncio) gera na rede uma taxa de dados (informação) de 48Kbps, e que, por motivos de retardo de empacotamento e perdas, o tamanho do segmento de informação de voz a ser transportado emum pacote é de no máxi mo 48 bits (campo INFO). Pelo padrão mencionado, a sintaxe do pacotede dados é a apresentada na figura abaixo. Suponha que a rede opera a 10Mbps em um cabo coaxial cuja velocidade da luz é de 210.000 Km/seg, cabo cujo comprimento pode atingir até 2,5 Km. Supondo ainda que o tempo de geração de pacotes de voz é aleatório, pergunta-se: E = (M/C) / (M/C + 3,4 tp) • 1) Qual o tamanho total da mensagem transmitida? • 2) Quantas estações transmitindo voz simultaneamente poderemos ter no máximo nesta rede? • 3) No caso da pergunta anterior, qual é a taxa de transmissão efetiva da rede, isto é, aquela utilizada na transmissão dos segmentos de dados de voz? FCSPreâmbulo SD DA PADINFOLengthSA 7 1 6 6 2 4 (octetos) PUC-Rio / DI TeleMídia Perguntas ¾ Os itens abaixo estão relacionados aos trabalhos de laboratório referentes aos níveis físico e de enlace. Responda de acordo com a implementação de sua equipe: • Explique como foram realizadas a transmissão e recepção de bytes no nível físico? • Qual o critério utilizado para a escolha do IFS? O que acontece quando escolho um IFS muito grande ou muito pequeno? • Suponha que em sua rede, as estações E1 e E2 estejam executando o programa que implementa o nível de enlace e o físico, mas que a estação F esteja executando somente o nível físico. O IFS da rede é de 3 segundos e suponha também que o tempo de transmissão de um quadro Q de tamanho máximo é de 0,5 segundos. Considere agora os seguintes eventos: – No instante 0s, a estação E1 detectou meio livre (ela já vinha “escutando” o meio) e imediatamente começou a transmitir Q por difusão (broadcast). – No instante 1s, o nível de enlace da estação E2 recebeu um quadro Q para transmitir para E1. – No instante 2s, a estação F iniciou uma transmissão de 0,25s de alguns bytes. Ao final de 10 segundos, o que aconteceu na rede? Quando E2 começou a transmitir? Quem recebeu o quê? 92 92 PUC-Rio / DI TeleMídia Token Ring ¾ Single Packet ¾ Single Token ¾ Multiple Token PUC-Rio / DI TeleMídia TR Single Packet 93 93 PUC-Rio / DI TeleMídia R T Single Packet PUC-Rio / DI TeleMídia TR Single Packet 94 94 PUC-Rio / DI TeleMídia Single Packet PUC-Rio / DI TeleMídia TR Single Token 95 95 PUC-Rio / DI TeleMídia R T Single Token PUC-Rio / DI TeleMídia TR Single Token 96 96 PUC-Rio / DI TeleMídia R T Single Token PUC-Rio / DI TeleMídia Multiple Token T1R 1 97 97 PUC-Rio / DI TeleMídia Multiple Token T1R 1 PUC-Rio / DI TeleMídia Multiple Token T1R 1 98 98 PUC-Rio / DI TeleMídia Multiple Token T1R 1 T2 R 2 PUC-Rio / DI TeleMídia Multiple Token T1R 1 T2 R 2 99 99 PUC-Rio / DI TeleMídia Token Ring ¾ Capacidade ¾ Equidade ¾ Prioridade ¾ Retardo de transferência ¾ Estabilidade em sobrecarga PUC-Rio / DI TeleMídia Padrão IEEE 802.3 100 100 PUC-Rio / DI TeleMídia Histórico PUC-Rio / DI TeleMídia Padrão IEEE 802.3 ¾ Formato da PDU da Camada MAC 56 Bits Preâmbulo 48 (16) Bits 48 (16) Bits 16 Bits 368 Bits - 12 KBits 32 Bits Destinatário Remetente Comprimento Dados FCS 8 Bits SD PAD 101 101 PUC-Rio / DI TeleMídia Padrão IEEE 802.3 ¾ Semântica do Protocolo da Camada MAC • CSMA-CD • Espera Aleatória Exponencial Truncada – o número de intervalos da espera varia de 0 a 2n – nas primeiras 10 tentativas n varia de 1 a 10, nas tentativas subsequêntes, n continua como valor 10. – depois de 16 tentativas malsucedidas, a interface reporta tempo de acesso infinito. PUC-Rio / DI TeleMídia Padrões do Nível Físico IEEE 802.3 ¾ 10Base5 ¾ 10Base2 ¾ 10BROAD36 ¾ 10BaseT ¾ 10BaseF ¾ 100BaseT 102 102 PUC-Rio / DI TeleMídia Comprimento Máximo de um Segmento Segmento Distancia máxima 10Base5 500 metros 10Base2 185 metros 10BaseF Depende da tecnologia de transmissão (até 2 Km) 10BaseT 100 - 150 metros 10Broad36 3600 metros PUC-Rio / DI TeleMídia IEEE 802.3 10Base5 Conector “N” Macho Conector de pressão (MDI) Conector AUI de 15 pinos Cabo Coaxial Grosso Interface ETHERNET com MAU externo MAU Cabo AUI Terminador 50 Ohm 103 103 PUC-Rio / DI TeleMídia Número Máximo de Estações por Segmento 10Base5 500 metros Distância mínima 2.5 metros Estação 1 Estação 100Estação 99Estação 2 100 estações por segmento PUC-Rio / DI TeleMídia I Taxa de transmissão: 10 Mbps I Transmissão: Banda Básica (Baseband) I Codificação: Manchester I Cabeamento: Coaxial Grosso 50 Ohms (Thick Coax) I Topologia física em Barramento IEEE 802.3 10Base5 104 104 PUC-Rio / DI TeleMídia IEEE 802.3 10Base2 Conector BNC Macho Terminador BNC Macho 50 Ohm Conector T BNC MDI BNC Fêmea Cabo Coaxial Fino Interface ETHERNET com MAU interno PUC-Rio / DI TeleMídia Número Máximo de Estações por Segmento 10Base2 185 metros Distância mínima 0.5 metros Estação 1 Estação 30Estação 29Estação 2 30 estações por segmento 105 105 PUC-Rio / DI TeleMídia IEEE 802.3 10Base2 ¾ Também conhecido como Thin-Ethernet ou Cheapernet ¾ Taxa de transmissão: 10 Mbps ¾ Transmissão: Banda Básica (Baseband) ¾ Codificação: Manchester ¾ Cabeamento: Coaxial Fino 50 Ohm ¾ Topologia física em Barramento PUC-Rio / DI TeleMídia IEEE 802.3 10BaseT Par trançado Interface ETHERNET com MAU interno Plugs RJ-45 100 m Interface ETHERNET com MAU interno 106 106 PUC-Rio / DI TeleMídia IEEE 802.3 10BaseT Par trançado Conector AUI 15 Pinos Conector BNC Interface ETHERNET com MAU interno Plugs RJ-45 R PUC-Rio / DI TeleMídia Distância máxima 100 metros HUB Par Trançado UTP 100 estações por Hub IEEE 802.3 10BaseT 107 107 PUC-Rio / DI TeleMídia I Taxa de transmissão: 10 Mbps I Transmissão: Banda Básica (Baseband) I Codificação: Manchester I Cabeamento: Par Trançado I Topologia física em Barramento-Estrela IEEE 802.3 10BaseT PUC-Rio / DI TeleMídia Regra 5-4-3 ¾ 5 Segmentos ¾ 4 Repetidores ¾ 3 Segmentos Povoados 108 108 PUC-Rio / DI TeleMídia Fast Ethernet PUC-Rio / DI TeleMídia ¾ Estações ligadas em estrela a um hub central ¾ Sub-camada MAC do IEEE 802.3 ¾ Opções de nível físico: • 100BASE-TX: 2 pares UTP Categoria 5 ou 2 pares STP • 100BASE -T4: 4 pares UTP Categoria 3, 4 ou 5 • 100BASE-FX: 2 fibras óticas multimodo degrau 62,5/125 µ ¾ Hubs com portas operando a 10 e 100 Mbps ¾ Ligações das estações ao meio feita pela interface MII 100BASE-T (Fast Ethernet) IEEE 802.3u 109 109 PUC-Rio / DI TeleMídia 100BASE-T (Fast Ethernet) IEEE 802.3u Físico EnlaceEnlace MAC OSI IEEE MIIMII LLC 100BASE-TX 100BASE-T4 100BASE-FX Repetidor 100BASE-T MAC 802.3MAC 802.3 PUC-Rio / DI TeleMídia Switched Ethernet 110 110 PUC-Rio / DI TeleMídia Switches Ethernet Porta de 10 Mbps Porta de 10 Mbps Porta de 10 MbpsPorta de 10 Mbps Porta de 10 Mbps Porta de 10 Mbps Porta de 10 Mbps Porta de 30 Mbps Via de Alta Velocidade PUC-Rio / DI TeleMídia Switches ¾ Comutação feita por software: memória compartilhada store-and forward switch (buffered switch). • FCS verificado antes da transferência ¾ Comutação feita por hardware: estabelecimento de circuito entre porta de origem e destino durante a transmissão de um quadro cut-through switch • Latência pequena 111 111 PUC-Rio / DI TeleMídia Gigabit Ethernet PUC-Rio / DI TeleMídia Histórico - Gigabit Ethernet ¾ Novembro de 1995: Formação do grupo de estudo sobre redes de alta velocidade ¾ Julho de 1996: Criação da força tarefa IEE 802.3z - Gigabit Ethernet ¾ Início de 1997: Primeiro draft ¾ Junho de 1998: Versão final do padrão 112 112 PUC-Rio / DI TeleMídia Gigabit Ethernet ¾ Permitir a operação half- e full-duplex a taxas de 1000 Mbps (atualmente a 10Gbps) ¾ Usar o formato do pacote Ethernet 802.3 ¾ Usar o método de acesso CSMA/CD com suporte para um repetidor por segmento ¾ Ser compatível com as tecnologias 10BASE-T e 100BASE-T PUC-Rio / DI TeleMídia Interfaces Físicas ¾ 1000BASE-SX (fibra ótica multimodo) ¾ 1000BASE-LX (fibras óticas monomodo e multimodo) ¾ 1000BASE-CX (cabo de cobre blindado e balanceado) 113 113 PUC-Rio / DI TeleMídia Ethernet e FibreChannel no IEEE802.3z IEEE 80 2.2 LLC IEEE 80 2.3 CS MA /C D FC -4 U pp er- La yer M ap pin g I EEE 8 02. 3 Ph ysi cal Laye r IE EE 80 2.3 E th er net F C- 3 Co m mo n S er vi ces F C- 2 S ign al ing F C- 1 Enco de /D ecod e FC - 0 I nt er fa ce an d M edi a AN S I X 3T1 1 Fib reC h an n el I EEE 8 02 .2 LLC CS MA /CD o r F ull Du pl ex MA C 8B /10 B Enc od e/D eco de S e ri aliz er / D eser ial ize r Co nn ect or IEE E 8 02 .3 z G i gab i t Et he rn et PUC-Rio / DI TeleMídia Modos de Operação ¾ Assim como o Fast Ethernet, GbE opera nos modos half- e full-duplex. ¾ Operando no modo half-duplex, o GbE conserva o método de controle de acesso do padrão Ethernet, CSMA/CD. ¾ A maioria dos comutadores capacita ao usuário selecionar o modo de operação de cada porta, permitindo-o migrar aos poucos conexões compartilhadas half-duplex para conexões ponto-a-ponto full-duplex. ¾ No modo full-duplex, os pacotes viajam em ambas as direções simultaneamente sobre dois caminhos numa mesma conexão, com uma banda passante agregada igual ao dobro da banda da conexão hal f- duplex, ou seja, 2 Gbps (20Gbps). ¾ A GbE apresentam dois tipos de topologia: chaveada e compartilhada. 114 114 PUC-Rio / DI TeleMídia Camada Física ¾ 1000BASE-LX: destinado a conexões de maior distância, atingindo 550m com fibras multimodo e até 3Km com fibras monomodo. ¾ 1000BASE-SX: ideal para conexões de baixo custo, interligando pontos mais próximos, alcançando no máximo 550m. ¾ 1000BASE-CX: cobre, com até 25 metros. ¾ 1000BASE-T: cobre, com até 100 metros. PUC-Rio / DI TeleMídia Distância Máximas 115 115 PUC-Rio / DI TeleMídia A Camada PMA ¾ A subcamada PMA (physical media attachment) do GbE é idêntica à FC1 do FibreChannel, que descreve a sincronização e a serialização/deserialização dos dados. ¾ A serialização fornece o suporte a múltiplos esquemas de codificação, apropriada para cada tipo de mídia. ¾ A PMA é também responsável por recuperar o sinal de relógio a partir dos dados codificados, utilizando um circuito Phased Lock Loop. PUC-Rio / DI TeleMídia A Camada PCS ¾ A subcamada PCS (Physical Coding Sublayer) é responsável pelo esquema múltiplo de codificação do protocolo de transmissão, incluindo caracteres especiais e controle de erro. ¾ Esta subcamada gerencia também o processo de negociação realizado pelo NIC com a rede para determinar a velocidade da rede (10, 100 ou 1000 Mbps) e o modo de operação (hal f- ou full-duplex). ¾ O esquema de codificação do GbE é o mesmo 8B/10B especificado na camada FC1 • O mecanismo é bastante similar à codificação 4B/5B usada na FDDI, a não ser pelo balanceamento DC. A codificação 4B/5B foi rejeitada pelo FibreChannel devido à falta de balanceamento DC, que pode provocar um aquecimento dos lasers dependendo dos dados enviados, se transmitir mais 1’s do que 0’s. 116 116 PUC-Rio / DI TeleMídia GMII ¾ A GMII (Gigabit Media Independent Interface): • Manipula dados não codificados através de caminhos independentes de transmissão e recepção de 8-bits, operando a 125 MHz. Suporta, portanto, as operações halfe full-duplex. • Transmite sinais de relógio, de presença de portadora e de ausência de colisão. ¾ A GMII garante compatibilidade reversa, dando suporte às três velocidades das implementações anteriores do Ethernet. PUC-Rio / DI TeleMídia Enlace: CSMA/CD ¾ Ethernet: 10 Mbps e 64 bytes de tamanho mínimo de pacote, estações distantes até 2 Km podem detectar colisões. ¾ Fast Ethernet: a taxa de transmissão é dez vezes mais rápida e o formato dos pacotes permaneceu inalterado, distância caiu para 200 m. ¾ Para evitar que o mesmo ocorresse com o Gigabit Ethernet (uma distância máxima de 20 m seria impraticável), o comitê 802.3z redefiniu a subcamada MAC para manter os mesmos 200 m. 117 117 PUC-Rio / DI TeleMídia Enlace: CSMA/CD ¾ Consiste basicamente em aumentar o slot size de 64 para 512 bytes. ¾ Quando transmitidos, os pacotes menores que 512 bytes são seguidos por um sinal especial enviado pela subcamada MAC, enquanto a estação continuar monitorando a ocorrência de colisões. A adição de bits extras ao pacote completa o comprimento mínimo do slot size. Pacotes maiores que 512 bytes não são estendidos. ¾ O slot time do GbE deveria ser 640 bytes (tempo gasto pelo Fast Ethernet para transmitir 64 bytes a 100 Mbps), mas, o 802.3z decidiu que 640 bytes seri a muito inefi ciente, e determinou o valor de 512 bytes. Para isso, foram tomadas outras medidas: o número de repetidores por segmento caiu para 1 e a margem de segurança das especificações foi praticamente eliminada. PUC-Rio / DI TeleMídia Pacote GbE ¾ Note que o tamanho mínimo de 64 bytes do pacote não foi alterado. P reamble SFD DA SA Type / Length Dados FCS Extensão 64 bytes min 512 bytes min Duração do Evento de Deteção de Portadora SFD: Delimitador de Início de Pacote DA: Endereço de Destino SA: Endereço de Origem FCS: Seqüência de Verificação do Pacote 118 118 PUC-Rio / DI TeleMídia Enlace GbE ¾ No pior caso, se o tráfego da rede consistisse apenas de pacotes de 64 bytes, a vazão efetiva do GbE seria de 120 Mbps. ¾ Em condições normais, a média da distribuição do tamanho dos pacotes Ethernet de uma rede varia em torno de 200 a 500 bytes, o que equivaleria a uma vazão de 300 a 400 Mbps. PUC-Rio / DI TeleMídia Enlace GbE ¾ Para minimizar os efeitos da extensão de portadora no desempenho da rede foi incorporado a rajada de pacotes (frame bursting) no algoritmo do CSMA/CD: uma estação pode transmitir vários pacotes pequenos seguidos sem interrupção, agrupando-os no máximo até 1500 bytes. ¾ É importante salientar que estes ajustes no CSMA/CD, como a extensão de port adora e a raj ada de pacotes, apenas são necessários quando o Gigabit Ethernet opera no modo half- duplex, que consta do padrão apenas para manter compatibilidade. 119 119 PUC-Rio / DI TeleMídia Enlace GbE ¾ O modo de transmissão full-duplex elimina a necessidade de protocolos de controle de acesso, pois as estações enviam e recebem dados por pares de fios distintos. ¾ Geralmente é utilizado apenas nas configurações ponto-a-ponto, e as implementações precisam estar de acordo com as especificações ratificadas pelo grupo 802.3x em Março de 1997. ¾ A transmissão full-duplex permite que a banda passante da rede possa ser facilmente duplicada com custos relativamente baixos. PUC-Rio / DI TeleMídia Padrão IEEE 802.4 120 120 PUC-Rio / DI TeleMídia Semântica do Protocolo da Camada MAC 802.4 ¾Passagem de Permissão em Barra PUC-Rio / DI TeleMídia Canais de Frequência “Broadband” IEEE 802 Canal de Retorno Limite da faixa de frequência (MHz) Canal de Transmissão Limite da faixa de frequência (MHz) T 7 T 8 T 9 T 10 T 11 T 12 T 13 T 14 2’ 3’ 4’ 4A’ 5’ 6’ FM1’ FM2’ FM3’ 5,75 11,75 17,75 23,75 29,75 35,75 41,75 47,75 53,75 59,75 65,75 71,75 77,75 83,75 89,75 95,75 101,75 H I 7 J K L M N O P Q R S T U V W 162 168 174 216 222 228 234 240 246 252 258 264 270 276 282 288 294 121 121 PUC-Rio / DI TeleMídia Padrão IEEE 802.5 PUC-Rio / DI TeleMídia Sintaxe do Protocolo da Camada MAC 802.5 • SD - Delimitador de Início de Quadro (Start Delimiter) • AC - Controle de Acesso (Access Control) • FC - Controle de Quadro (Frame Control) • DA - Endereço do Destinatário (Destination Address) • SA - Endereço do Remetente (Source Address) • FCS - Controle de Erros (Frame Check Sequence) • ED - Delimitador de Fim de Quadro (End Delimiter) • FS - Status do Quadro (Frame Status) SD AC FC DA SA FCS ED FSPDU LLC Formato Geral 1 octeto 1 octeto 1 octeto 2 a 6 octetos 2 a 6 octetos 4 octetos 1 octeto 1 octeto 122 122 PUC-Rio / DI TeleMídia Sintaxe do Protocolo da Camada MAC 802.5 SD AC ED Permissão 1 octeto ppp t m rrr • ppp prioridade corrente • t permissão (0 - livre) • m monitor • rrr reserva de prioridade PUC-Rio / DI TeleMídia Semântica do Protocolo da Camada MAC 802.5 ¾ Passagem de Permissão em Anel • Sem prioridade • Com prioridade 123 123 PUC-Rio / DI TeleMídia Padrões do Nível Físico IEEE 802.5 I Taxa de transmissão: 4 Mbps I Transmissão: Banda Básica (Baseband) I Codificação: Manchester Diferential I Número máximo de repetidores: 250 I Cabeamento: IPar Trançado (STP ou UTP) 150 Ohms I Topologia física : Anel-Estrela PUC-Rio / DI TeleMídia Padrões do Nível Físico IEEE 802.5 I Taxa de transmissão: 16 Mbps I Transmissão: Banda Básica (Baseband) I Codificação: Manchester Diferential I Número máximo de repetidores: 250 I Cabeamento: IPar Trançado STP 150 Ohms IPar Trançado UTP 100 Ohms (em estudo) I Topologia física : Anel-Estrela 124 124 PUC-Rio / DI TeleMídia IEEE 802.5 Interface Token-Ring com MAU interno Interface Token-Ring com MAU interno Par Trançado Blindado Ring IN Ring OUT HUB PUC-Rio / DI TeleMídia Padrão IEEE 802.11 125 125 PUC-Rio / DI TeleMídia Redes Móveis PUC-Rio / DI TeleMídia IEEE 802.11 - Introdução ¾ Motivação • Substituir cabeamento físico por conexões sem fio • Prédios históricos • Infraestruturas complexas • Reduzir custos de instalação e manutenção • Dar suporte a usuário que tendem a trocar de localização física com freqüência ¾ Grupo de trabalho iniciado em1990 para criar umpadrão para WLAN • 2.4 GHz ISM (Industrial, Scientific, and Medical) • 7 anos depois 802.11 operando 1 a 2 Mbps 126 126 PUC-Rio / DI TeleMídia Padrões IEEE 802.11 ¾ 802.11 – Taxas de 1 ou 2 Mb/s na banda de 2.4GHz, utiliza tanto Frequency Hopping Spread Spectrum (FHSS) como Direct Sequence Spread Spectrum (DSSS). ¾ 802.11a – Taxas de 54Mb/s na banda de 5GHz, utiliza Orthogonal Frequency Division Multiplexing (OFDM) ao invés do FHSS ou DSSS. ¾ 802.11b – Taxas de 5,5 ou 11 Mb/s (também pode operar em 1 ou 2 Mb/s) na banda de 2.4GHz, utilizando apenas DSSS. ¾ 802.11g – Taxas de 20+ Mb/s na banda de 2.4GHz. PUC-Rio / DI TeleMídia IEEE 802.11 Wireless LAN ¾ Tipos de redes • Com infra-estrutura • Sem infra-estrutura (Ad Hoc) 127 127 PUC-Rio / DI TeleMídia WLAN Com Infra-estrutura ¾ A transferência de dados acontece sempre entre uma Estação Móvel (EM) e um Ponto de Acesso (AP). ¾ O AP também pode servir como ponte entre a rede móvel e a fixa. ¾ Topologia em estrela. O AP controla o fluxo de toda a rede. ¾ Pode usar esquemas de acesso com ou sem colisão. ¾ Perde confiabilidade, pois o funcionamento da rede depende do AP. PUC-Rio / DI TeleMídia WLAN Sem Infra-estrutura (ad hoc) ¾ A transferência de dados acontece diretamente entre as EM’s. ¾ Uma estação A só pode se comunicar com uma estação B se B estiver dentro do raio de ação de A ou se existir uma ou mais estações entre A e B que possamencaminhar a mensagem. ¾ As EM são mais complexas pois devem implementar mecanismos de acesso ao meio, mecanismos para controlar problemas de “ estações escondidas” e mecanismos para prover alguma qualidade de serviço 128 128 PUC-Rio / DI TeleMídia WLAN Sem Infra-estrutura (ad hoc) PUC-Rio / DI TeleMídia IEEE 802.11 – Camada Física ¾ Definiu originalmente duas técnicas de transmissão por rádio, na banda 2,4GHz, e uma por infravermelho para as taxas de 1 e 2 Mb/s: • Infrared PHY: Fornece operação a 1Mb/s, com 2Mb/s opcional. A versão de 1Mb/s usa modulação 16-PPM (Pulse Position Modulation com 16 posições), e a versão de 2Mb/s utiliza modulação 4-PPM. • Direct Sequence Spread Spectrum Radio PHY (DSSS): Provê operação em ambas as velocidades (1 e 2 Mb/s). A versão de 1Mb/s utiliza a modulação DBPSK (Differential Binary Phase Shift Keying), enquanto que a de 2Mb/s usa modulação DQPSK (Differential Quadrature Phase Shift Keying). • Frequency Hopping Spread Spectrum Radio PHY (FHSS): Fornece operação 1 Mb/s, com 2 Mb/s opcional. A versão de 1Mb/s utiliza 2 níveis da modulação GFSK (Gaussian Frequency Shift Keying), e a de 2Mb/s utiliza 4 níveis da mesma modulação, com chaveamento de freqüência entre 79 canais de 1MHz com objetivo de restringir acesso aos dados. 129 129 PUC-Rio / DI TeleMídia IEEE 802.11 – Camada Física Rádio Infravermelho Frequências 2,4 GHz 3x1014 Hz Cobertura máxima 30 – 240m ou 15km 10 a 30m Requer visada direta? Não Sim Requer licença? Não Não PUC-Rio / DI TeleMídia IEEE 802.11 – Media Access Control ¾ A Camada MAC é única para WLANs, porém muito similar a MAC do 802.3 • É projetada para suportar múltiplos usuários em um meio compartilhado. • O transmissor escuta o meio, para verificar que está livre, antes de transmitir. • Não é possível detectar colisão, pois sistemas rádio não podem transmitir e escutar o meio ao mesmo tempo. ¾ A Camada MAC usa então o protocolo CSMA/CA – Carrier Sense Multiple Access with Collision Avoidance. 130 130 PUC-Rio / DI TeleMídia IEEE 802.11 – CSMA/CA Quero Transmitir O meio está livre? Não Sim Esperar um tempo aleatório O meio ainda está livre? Transmitir Esperar um tempo aleatório O ACK chegou? Não Sim Fim Não PUC-Rio / DI TeleMídia IEEE 802.11 – CSMA/CA AP BSS 131 131 PUC-Rio / DI TeleMídia MAC – Problema de nós escondidos ¾ EM podem escutar AP, mas EMs não se escutam. ¾ Gera colisão, pois mais de um móvel transmite ao mesmo tempo. ¾ Como as EMs que transmitiram não receberam os ACKs dos pacotes que colidiram, elas assumem que aconteceu uma colisão, esperam um tempo aleatório e retransmitem. PUC-Rio / DI TeleMídia MAC – Problema de nós escondidos AP BSS Colisão 132 132 PUC-Rio / DI TeleMídia MAC – Solução para o problema de nós escondidos ¾ O 802.11 especifica então (como opcional) Request to Send/Clear to Send (RTS/CTS). ¾ O transmissor envia um RTS e espera o AP responder com um CTS. ¾ Como os pacotes RTS/CTS ocupam a rede, geralmente só é utilizado para a transmissão de pacotes grandes, onde a retransmissão é critica. PUC-Rio / DI TeleMídia Outras características da Camada MAC ¾ Adiciona o CRC Checksum, para verificar se os dados transmitidos estão corretos. ¾ Faz Packet Fragmentation, que divide pacotes grandes em pacotes menores, melhorando o funcionamento quando a rede está congestionada. ¾ Faz associação a APs ¾ Define métodos para limitar a latência, permitindo aplicações de voz e vídeo ¾ Faz o controle de potência, visando economizar as baterias ¾ Define técnicas para aumentar a segurança 133 133 PUC-Rio / DI TeleMídia MAC – Associações a APs Arquitetura Celular ¾ A camada MAC é responsável por associar uma EM a um AP. A EM escolhe o AP baseando-se em taxa de pacotes errados e potência do sinal. ¾ Após ser associada a um AP a EM sintoniza o canal usado por este AP e periodicamente verifica todos os outros canais em busca de um AP melhor. Se encontrar umAP melhor a EM sintoniza o canal deste novo AP. ¾ Geralmente dentro de um prédio existem muitos APs, logo será necessário fazer o reuso de frequência tomando cuidado para não colocar APs commesmo canal juntos. PUC-Rio / DI TeleMídia MAC – Métodos para Limitar a Latência ¾ A camada MAC define dois protocolos de acesso: • Point Coordination Function (PCF) • Distributed Coordination Function (DCF) ¾ Quando o sistema está operando em modo PCF cada EM transmite na sua vez (similar ao token ring), limitando assim a latência. 134 134 PUC-Rio / DI TeleMídia MAC – Gerenciamento de Energia ¾ A camada MAC define dois modos de operação: • Continuous Aware Mode – Neste modo o rádio fica sempre ligado. • Power Save Polling Mode – Modo de economia de energia PUC-Rio / DI TeleMídia MAC – Segurança ¾ A camada MAC fornece mecanismos para aumentar a segurança: • Wired Equivalent Privacy(WEP) – Tem o objetivo de fornecer um nível de segurança equivalente ao das LANs cabeadas. • Fornece mecanismos de criptografia. 135 135 PUC-Rio / DI TeleMídia Perguntas ¾ Dada uma rede em anel com inserção de retardo, com N estações, tamanho de pacote máximo igual a M bits, taxa de transmissão igual a T bps, distância entre estações de igual comprimento L metros, e velocidade de propagação no meio igual a V metros/segundo. • Qual o tempo de espera máximo para se poder iniciar um a transmissão? • Qual o tempo máximo que um pacote chega inteiramente ao destino, desde o momento que foi iniciada sua transmissão? • Qual o tempo de transferência máximo da rede? PUC-Rio / DI TeleMídia Perguntas ¾ Dada uma rede em anel token-ring single packet, com N estações, tamanho de pacote máximo igual a M bits, taxa de transmissão igual a T bps, distância entre estações de igual comprimento L metros, e velocidade de propagação no meio igual a V metros/segundo. • Qual o tempo de espera máximo para se poder iniciar um a transmissão? • Qual o tempo máximo que um pacote chega inteiramente ao destino, desde o momento que foi iniciada sua transmissão? • Qual o tempo de transferência máximo da rede? 136 136 PUC-Rio / DI TeleMídia Perguntas ¾ Dada uma rede em anel token-ring single token, com N estações, tamanho de pacote máximo igual a M bits, taxa de transmissão igual a T bps, distância entre estações de igual comprimento L metros, e velocidade de propagação no meio igual a V metros/segundo. • Qual o tempo de espera máximo para se poder iniciar um a transmissão? • Qual o tempo máximo que um pacote chega inteiramente ao destino, desde o momento que foi iniciada sua transmissão? • Qual o tempo de transferência máximo da rede? PUC-Rio / DI TeleMídia Perguntas ¾ Dada uma rede em anel token-ring multiple token, com N estações, tamanho de pacote máximo igual a M bits, taxa de transmissão igual a T bps, distância entre estações de igual comprimento L metros, e velocidade de propagação no meio igual a V metros/segundo. • Qual o tempo de espera máximo para se poder iniciar um a transmissão? • Qual o tempo máximo que um pacote chega inteiramente ao destino, desde o momento que foi iniciada sua transmissão? • Qual o tempo de transferência máximo da rede? 137 137 PUC-Rio / DI TeleMídia Perguntas ¾ Suponha uma rede em anel com protocolo "token ring - single token". Sabendo que: • 1) A rede possui um perímetro de 10Km. • 2) A rede possui 100 estações que podem ser inseridas em qualquer posição do anel. • 3) A taxa de transmissão na rede é de 100Mbps. • 4) O retardo máximo de transferência permitido pelas aplicações é de 5,07 mseg • 5) A velocidade de propagação da luz no meio de transmissão é de 200.000 Km/s Calcule: • 1) O tamanho máximo do pacote em bytes • 2) O tempo de acesso máximo da rede • 3) O tempo de transmissão máximo Dica: Não deixe de levar em consideração a latência do anel (faça o cálculo para os dois casos possíveis e veja qual não leva ao absurdo – o cálculo dos dois casos será exigido na correção da questão). Você pode desprezar o retardo introduzido por uma estação no anel ao repetir um pacote. PUC-Rio / DI TeleMídia Perguntas ¾ Explique o algoritmo de espera aleatória binária truncada. ¾ Quais os cuidados que se deve ter ao se fazer u ma ligação multiponto? Por que casar o final da barra? Por que a ligação com o meio tem de ter alta impedância? Por que deve ser respeitada uma distância entre estações? Por que os terras têmde ser isolados? Como isso pode ser feito? ¾ Quais os cuidados a seremtomados emuma ligação ponto-a-ponto? ¾ Por que o tamanho mínimo do pacote Ethernet não teve de ser diminuído na Fast-Ethernet? Por que teve de ser diminuído na Gigabit-Ethernet? Quais outros cuidados tiveram de ser tomados nesta diminuição? Por que esses cuidados só são necessários na GbE no modo half-duplex? ¾ Emuma rede IEEE-805, o que é o bit da monitora? Qual o tempo que uma rede deve esperar para entrar no modo “claim-token”? 138 138 PUC-Rio / DI TeleMídia Perguntas ¾ O que é uma rede infra-estruturada e uma rede ad-hoc? ¾ Como uma estação base escolhe sua estação radio-base? ¾ Como funciona o protocolo CSMA-CA? ¾ O que o padrão IEEE-802.11 introduz para reduzir o problema de estações escondidas? __MACOSX/Slides/P1/._5.EnlaceObrigatório.pdf Slides/P2/.DS_Store __MACOSX/Slides/P2/._.DS_Store Slides/P2/6.EnlaceOpcional.pdf 1 PUC-Rio / DI TeleMídia Redes de Computadores PUC -Rio Departamento de Informática Luiz Fernando Gomes Soares lfgs@inf.puc-rio.br PUC-Rio / DI TeleMídia Camada de Enlace ¾ Delimitação e transmissão de quadros ¾ Detecção de erros ¾ Controle de Acesso ¾ Correção de erros que por ventura ocorram no nível físico (opcional) ¾ Controle de fluxo (opcional) ¾ Multiplexação (opcional) Aplicação Apresentação Sessão Transporte Rede Enlace Físico 2 PUC-Rio / DI TeleMídia Correção de Erro ¾ Uma vez detectado o erro, o quadro é descartado e, opcionalmente, é enviado um aviso ao sistema que o transmitiu. A recuperação do erros, se desejada, pode ser realizada por retransmissão. ¾ Alternativamente o nível de enlace pode utilizar bits de redundância que lhe permitam não só detectar erros, mas também corrigi-los, sem a necessidade de retransmissão. A correção de erros sem retransmissão é particularmente útil em enlaces onde o custo de comunicação e o retardo de transferência são elevados, como por exemplo, em enlaces de satélites. PUC-Rio / DI TeleMídia Correção de Erro Os três procedimentos mais utilizados para controlar erros são: ¾ algoritmo de bit alternado (stop-and-wait), ¾ janela n com retransmissão integral (go-back-n) e ¾ janela n com retransmissão seletiva (selective repeat). 3 PUC-Rio / DI TeleMídia Bit alternado ¾ No algoritmo de bit alternado o transmissor só envia um novo quadro quando recebe o reconhecimento do quadro enviado anteriormente. ¾ Após a transmissão, o transmissor espera um certo tempo pelo reconhecimento. Caso este tempo se esgote (timeout), o quadro é retransmitido. ¾ Considerando que os quadros podem ser transmitidos mais de uma vez, é necessário numerá-los para que o receptor possa distinguir quadros originais de retransmissões. Como o transmissor só envia um novo quadro depois do anterior ser reconhecido, só é preciso um bit para diferenciar quadros sucessivos. O primeiro quadro é numerado com o bit 0, o segundo com o bit 1, o terceiro com o bit 0, e assim sucessivamente. PUC-Rio / DI TeleMídia Bit Alternado Quadro 0 ACK 0 ACK 0 Quadro 0 Transmissor Receptor T Intervalos de Timeout ACK 1 Quadro 1 Quadro 1 Quadro 1 Quadro 1 ACK 1 ACK 1 ACK 1 Quadro 1 Quadro 1 4 PUC-Rio / DI TeleMídia Janela de Transmissão ¾ A técnica de bit alternado oferece uma solução simples porém ineficiente para o controle de erro, pois, enquanto o transmissor espera por reconhecimentos o canal de comunicação não é utilizado. ¾ Para aumentar a eficiênci a na utilização dos canais de comunicação foram elaborados protocolos que permitem que o transmissor envie diversos quadros mesmo sem ter recebido reconhecimentos dos quadros anteriormente enviados. O número máximo de quadros, devidamente numerados, que podem ser enviados sem que tenha chegado um reconhecimento define a largura da janela de transmissão. PUC-Rio / DI TeleMídia Controle com Janelas ¾ Como no protocolo de bit alternado, o transmissor fica sabendo que ocorreu um erro em um quadro por ele enviado quando seu reconhecimento não chega, após decorrido um intervalo de tempo suficiente para tal. Nesse caso, dois procedimentos podem ser implementados para recuperar o erro: • Retransmissão integral: todos os quadros a partir do que não foi reconhecido são retransmitidos. • Retransmissão seletiva: apenas o quadro que não foi reconhecido é retransmitido. ¾ Para aumentar ainda mais a eficiência na utilização do canal de transmissão, em ambos os casos o receptor não precisa enviar um reconhecimento para cada quadro que recebe. O transmissor ao receber o reconhecimento do quadro n conclui que os quadros enviados antes dele, foram recebidos corretamente. 5 PUC-Rio / DI TeleMídia Controle de Erro com Janela Deslizante a) Protocolo com retransmissão integral Quadros descartados 0 1 2 3 4 5 6 7 8 2 3 4 5 6 7 8 9 10 0 1 EE 33 44 55 66 77 88 2 3 4 5 6 7 8 9 Intervalo de TIMEOUT A2 A3 A6 A8 b) Protocolo com retransmissão seletiva 0 1 2 3 4 5 6 7 8 2 3 4 5 6 9 10 11 12 0 1 EE 3 4 5 6 7 8 2 33 44 55 66 9 10 11 Intervalo de TIMEOUT Quadros bufferizados Intervalo de TIMEOUT Intervalo de TIMEOUT A1 A2 A9 A10 Quadros descartados PUC-Rio / DI TeleMídia Controle de Fluxo ¾ Outro problema tratado pelo nível de enlace diz respeito a situações onde o transmissor sistematicamente envia quadros mais depressa que o destinatário pode receber. ¾ A solução para essa situação é introduzir um mecanismo de controle de fluxo para compatibilizar as velocidades do transmissor e do receptor. 6 PUC-Rio / DI TeleMídia Controle de Flu xo ¾ No protocolo de bit alternado, o próprio mecanismo de retransmissão de quadros controla o fluxo, pois um novo quadro só é enviado depois do receptor ter processado o quadro anterior e enviado um reconhecimento. PUC-Rio / DI TeleMídia Janela Deslizante ¾ Nos protocolos com janela n maior que 1, o controle do fluxo é feito com base em quadros especiais ou em janelas de transmissão e recepção. ¾ O número máximo de quadros que o transmissor pode enviar é determinado pela largura (T) de sua janela de controle de fluxo. Após enviar T quadros sem receber nenhuma atualização da janela, o transmissor suspende o envio de dados, só voltando a fazê-lo após receber uma resposta de controle que indica que o receptor está pronto para processar novos quadros. 7 PUC-Rio / DI TeleMídia Multiplexação da Conexão Física ¾ Finalmente, dado que uma estação tem o controle do acesso ao meio físico, ela pode multiplexar entre vários usuários do nível de rede (que interagem com o nível de enlace através de SAPs de enlace), o acesso à conexão física, ora enviando um quadro provindo de um usuário do nível de rede, ora de outro. PUC-Rio / DI TeleMídia Tipos de Serviço ¾ Como usual em todos as camadas do RM-OSI, a camada de enlace pode oferecer ao nível de rede serviços orientados a conexão e serviços não orientados a conexão. ¾ Dentre os serviços mais usuais podem ser destacados: • Serviço sem conexão e sem reconhecimento (apenas detecção de erros no nível de enlace): também conhecido como serviço de datagrama não confiável. • Serviço sem conexão e com reconhecimento (detecção e correção de erros no nível de enlace): também conhecido como serviço de datagrama confiável. • Serviço com conexão (usualmente com controle de erro e fluxo no enlace). 8 PUC-Rio / DI TeleMídia Camada de Enlace ¾ Orientados a Caracter • BSC - Binary Synchronous Comunication ¾ Orientados a Bit • HDLC - High Level Data-Link Control – LAP-B – LAP-D – LAP-M – LLC • SDLC - Syncronous Data Link Control (IBM) PUC-Rio / DI TeleMídia High Level Data-Link Control ¾ Transmissão Síncrona de Quadros ¾ Bit Stuffing ¾ Controle de Erro • Deteção: CRC • Correção: Retransmissão ¾ Controle de Fluxo ¾ Vários modos de operação 9 PUC-Rio / DI TeleMídia Padrão IEEE 802.2 PUC-Rio / DI TeleMídia IEEE 802.2 ¾ O padrão IEEE 802.2 é um exemplo de protocolo que, juntamente à subcamada MAC, implementa as funções necessárias da camada de enlace. ¾ O padrão define como é realizado o controle de erro, de fluxo e a multiplexação, de forma a realizar os tipos de serviço orientados a conexão e sem conexão. 10 PUC-Rio / DI TeleMídia Camada de Controle de Enlace Lógico IEEE 802.2 ¾ Independência da camada MAC ¾ LSAPs ¾ Multiplexação ¾ Controle de erros e de fluxo ¾ Tipos de operação ¾ Classes de procedimentos Logical Link Control (LLC) Medium Access Control (MAC) Physical Layer (PHY) PUC-Rio / DI TeleMídia Camadas, Protocolos e Interfaces Nív el Superior LLC MAC Físico LLC MAC Físico Protocolo LLC Interface LLC/Nív el Superior Interface LLC/MAC Interface LLC/MAC Nív el Superior Interface LLC/Nív el Superior 11 PUC-Rio / DI TeleMídia IEEE 802.2 - Multiplexação MAC Físico MAC Físico ( )( )( ) ( )( ) Endereço LLC (SAP) 1 2 3 Usuário 1 2 Rede Usuário Usuário Usuário Usuário LLC LLC Endereço MAC PUC-Rio / DI TeleMídia Formato da Unidade de Dados do Protocolo LLC (PDU LLC) 8 Bits 8 Bits 8 ou 16 Bits N x 8 Bits DSAP SSAP Controle Dados DSAP: endereço do ponto de acesso ao serv iço LLC destino SSAP: endereço do ponto de acesso ao serviço LLC origem 12 PUC-Rio / DI TeleMídia Especificação da Interface LLC/Nível Superior ¾ Operação Tipo 1 • serviço semconexão e semreconhecimento • transferências de dados ponto a ponto, entre grupos, ou por difusão ¾ Operação Tipo 2 • serviço orientado a conexão (controle de fluxo, sequenciação e recuperação de erros) • conexões ponto a ponto ¾ Operação Tipo 3 (Addendum 2) • serviço sem conexão e co m reconhecimento (sequenciação e recuperação de erros) • conexões ponto a ponto PUC-Rio / DI TeleMídia Classes de Serviço IEEE 802.2 ¾ Classe I • Operação Tipo 1 ¾ Classe II • Operação Tipo 1 e Tipo 2 ¾ Classe III • Operação Tipo 1 e Tipo 3 ¾ Classe IV • Operação Tipo 1, 2 e 3 13 PUC-Rio / DI TeleMídia Serviço Sem Conexão e Sem Reconhecimento Rede LLC MAC Físico