Administração e Projeto de Redes Material de estudo para Tecnologia em Processamento de Dados Volume 1 27/02/2006 2 Esclarecimentos Esse material é de apoio para as aulas da disciplina e não substitui a leitura da bibliografia básica Os professores da disciplina irão focar alguns dos tópicos da bibliografia assim como poderão adicionar alguns detalhes não presentes na bibliografia, com base em suas experiências profissionais O conteúdo de slides com o título “Comentários adicionais” seguido de um texto, se refere a comentários adicionais ao slide cujo texto indica e tem por objetivo incluir alguma informação adicional aos conteúdo do slide correspondente. 3 Bibliografia básica Soares: Redes de Computadores: Das LANs, MANs e WANs às Redes ATM, Ed. Campus, 2ª Edição, RJ, 1995 Luiz Fernando Gomes Soares Guido Lemos Sérgio Colcher Kurose: Redes de Computadores e a Internet: Uma nova abordagem, Ed. Pearson, 1ª Edição, SP, 2003 James F. Kurose Keith W. Ross (Nota: os códigos “Soares” e “Kurose” estarão sendo referenciados ao longo desse material) Semestre 1 Tópico 1 Introdução do curso com apresentação do conteúdo programático e regras administrativas. Semestre 1 Tópico 2 Soares: Cap.1 Kurose: Tópicos 1.1 e 1.2 6 Evolução dos sistemas de computação (1/3) Década de 50: Processamento Batch Mainframe processando em lotes (batch), informações originadas em cartão perfurado ou fitas magnéticas Usuários só tinham acesso ao resultado do processamento ao final do mesmo, no escaninho de saída do CPD O processamento ocorria em fila (FIFO - First In First Out) Demanda de infra-estrutura complexa e cara (temperatura e umidade controlada, grande consumo de energia). 7 Evolução dos sistemas de computação (2/3) Década de 60: Processamento Time-Sharing Mainframe com processamento em tempo compartilhado (Time sharing) onde o processador aloca frações muito curtas de tempo para cada um dos processos ativos. Não existe fila de processamento Terminais interativos remotos interligados ao Mainframe processando em tempo compartilhado com vários programas e usuários. Cada um tinha a percepção de que estava usando sozinho, pois não precisava esperar acabar um processamento para iniciar o próximo Demanda de infra-estrutura complexa e cara (temperatura e umidade controlada, grande consumo de energia). 8 Década de 60: Time sharing Terminais de baixo custo conectados no mesmo prédio onde estava o Mainframe. 9 Evolução dos sistemas de computação (3/3) Década de 70: Processamento distribuído Aparecimento dos Mini e Microcomputadores Terminais interativos remotos interligados ao Mainframe processando em tempo compartilhado com vários programas e usuários. Cada um tinha a percepção de que estava usando sozinho, pois não precisava esperar acabar um processamento para iniciar o próximo Demanda de infra-estrutura menos complexa e cara (controle de temperatura mais simples, sem controle de umidade e menor consumo de energia) Compartilhamento de periféricos de alto custo entre os computadores (impressora, plotter, disco) através de meios caros e de curta distância. 10 Rede de Computadores - Definição Sistema de comunicação interconectando computadores Sistema de comunicação: Meios de transmissão (enlaces físicos) Regras para concretizar a comunicação (protocolos) Redes locais (LAN – Local Area Network) Redes metropolitanas (MAN – Metropolitan Area Network) Redes de longa distância (WAN – Wide Area Network) Parâmetros que permitem diferenciar as redes: Tecnologias dos meios de comunicação Cobertura geográfica Velocidade de comunicação (taxa de transferência de dados) Taxa de erro característica do meio de transmissão. 11 Comentários adicionais: Rede de Computadores - Definição Inicialmente só existiam os conceitos LAN e WAN. MAN surge com o aparecimento do padrão IEEE 802.6 (1981) padrão para transporte de dados em alta velocidade numa região metropolitana. MAN tem características semelhantes as das LANs, mas cobrindo distâncias maiores. 12 Configurações LAN x MAN x WAN MAN LAN Barramento Estrela WAN Anel 13 Comentários adicionais: Configurações LAN x MAN x WAN Na MAN existem 2 barramentos que saem do Head-End. Cada um atende uma direção da transmissão, um que o sinal sai e outro que o sinal chega. 14 Soluções Wireless x Cobertura Wireless LAN Wifi (Wireless Fidelity) (IEEE 802.11) Uso local (hot-spot) Bluetooth Curta distância Cobertura externa WiMAX - Worldwide Interoperability for Microwave Access (IEEE 802.16) 15 Soluções via serviço telefonia celular Rede GPRS Usa tecnologia GSM Velocidade entre 9,6 Kbps e 115 Kbps Rede WCDMA Usa rede CDMA Velocidade até 2Mbps. 16 O que é um protocolo ? Um protocolo humano e um protocolo de rede de computadores: Alô TCP pedido de conexão Alô TCP resposta de conexão Que horas são? Get http://gaia.cs.umass.edu/index.htm 2:00 <arquivo> tempo 17 Protocolo - Definição Conjunto de regras e convenções que permitem a troca confiável de informação entre dois ou mais dispositivos de comunicação de dados. 18 Funções do protocolo de Comun. Dados Estabelecer as características da interface física e funcional dos sinais digitais: elétricas, mecânicas e funcionais Estabelecer o código de representação da informação, formatação e velocidade Estabelecer as regras de controle de endereçamento Estabelecer os processos de recuperação de erros: perda de informação por erros, congestionamento, interrupção da comunicação Estabelecer as regras de controle de fluxo e prioridades. 19 O que é a Internet? milhões de elementos de computação interligados: hosts, sistemas finais pc’s, estações de trabalho, servidores telefones digitais, torradeiras de pão, etc. roteador servidor ISP regional distribuídas enlaces de comunicação fibra, cobre, rádio, satelite roteadores: enviam pacotes (blocos) de dados através da rede móvel ISP local executando aplicações estação rede corporativa 20 Aplicações IP “quentes Moldura IP para retratos http://www.ceiva.com/ O menor servidor Web do mundo http://www-ccs.cs.umass.edu/~shri/iPic.html Torradeira e previsão do tempo pela Web http://dancing-man.com/robin/toasty/ 21 O que é a Internet? protocolos: controlam o envio e a recepção de mensagens e.g., TCP, IP, HTTP, FTP, PPP Internet: “rede de redes” fracamente hierárquica Internet pública e Internets privadas (intranets) Internet standards RFC: Request for comments IETF: Internet Engineering Task Force routeador estação servidor móvel ISP local ISP regional rede corporativa Rede de Computadores – Parâmetros de Comparação (1/3) 22 Custo (proporcional ao desempenho: complexidade do protocolo e do meio de comunicação): considerar custo de investimento e custo de operação Retardo de transferência: tempo decorrido do momento em que a informação está pronta para entrar no sistema de comunicação até que chega no seu destino. É a soma de: Retardo de acesso: tempo decorrido do momento em que a mensagem está pronta para ser transmitida e o instante em que o meio de comunicação permite Retardo de transmissão (latência): tempo de trânsito da mensagem através do meio de comunicação. 23 Comentários adicionais: Rede de Computadores – Parâmetros de Comparação (1/3) Custo: 1. Definir custo de investimento, isso é, compra, imobilizado ou CAPEX – Capital Expenses, e custo de operação, isso é, despesa, aluguel, manutenção, serviço ou OPEX – Operational Expenses 2. Dar exemplos Retardo de acesso: 1. Exemplificar retardo de acesso com o que ocorre em uma LAN usando tecnologia Ethernet: fenômeno da colisão (esse conceito será melhor explicado mais tarde) 2. Exemplificar retardo de transferência falando de ligação telefônica fixa e celular (constatar que ao falar pelo celular, demora uma fração de segundo para sua voz chegar ao destino: tempo de digitalização e reconstituição da voz no destino como retardo de acesso e tempo de transmissão como latência. Comunicação via Fibra óptica tem muito menor latência que a via satélite, via rede Frame Relay/ ATM/ X25 tem mais latência que ligação ponto-aponto. Rede de Computadores – Parâmetros de Comparação (2/3) 24 Modularidade: capacidade da rede aceitar alteração de suas características (desempenho, funcionalidade, capacidade,...) sem precisar alterar o projeto inicial Compatibilidade/ Interoperabilidade: capacidade da rede em se interligar com dispositivos de outros modelos ou fabricantes com a mesma funcionalidade ou os mesmos dispositivos de versões diferentes. 25 Comentários adicionais: Rede de Computadores – Parâmetros de Comparação (2/3) Exemplificar: Modularidade (roteador para uso doméstico e roteador de uso corporativo com módulos plug-ins) Interoperabilidade (roteadores Cisco, 3Com, Juniper, Linksys,... São compatíveis entre si). Rede de Computadores – Parâmetros de Comparação (3/3) 26 Confiabilidade: característica do dispositivo em não falhar. É medida em taxa de falhas (MTBF – Mean Time Between Failure). Exemplo: 1 falha a cada 50.000 horas Mantenabilidade: característica da facilidade em sofrer manutenção. É medida em tempo de reparo (MTTR – Mean Time to Repair). Exemplo: 4 horas Disponibilidade: característica do dispositivo em estar em funcionamento. Exemplo: 0,99992 ou 99,992% Indisponibilidade: inverso da Disponibilidade = (1 – Disponibilidade). Exemplo: 0,00008 ou 42 minutos por ano Disponibilidade = MTBF / (MTBF + MTTR) . 27 Comentários adicionais: Rede de Computadores – Parâmetros de Comparação (3/3) Do exemplo da definição >> Disponibilidade = 50.000 / (50.000 + 4) = 0,99992 Indisponibilidade = 0,00008 1 ano tem 365 dias x 24 horas x 60 minutos x Indisponibilidade = tempo anual de indisponibilidade = 42 minutos Exercitar outros exemplos numéricos. 28 Cálculo da Disponibilidade de um sistema Dados: Disponibilidade dos componentes do sistema Topologia do sistema Exemplo com 2 componentes: Associação série Dispo = 0,9 Dispo = 0,9 Dispo = D1 x D2 x ... Dispo = 0,9 x 0,9 = 0,81 Dispo = 0,9 Dispo = 0,9 Associação paralela Dispo = 1 – (I1 x I2 x ...) Dispo = 1- (0,1 x 0,1) = 0,99 . 29 Comentários adicionais: Cálculo da Disponibilidade de um sistema Associação série: Disponibilidade = Produto das disponibilidades dos componentes série Nesse caso, a disponibilidade do sistema diminui, pois o sistema só funciona se TODOS os componentes NÃO falharem. Usar o valor das Disponibilidades A fórmula vale para qualquer quantidade de componentes colocados em série. Associação paralela: Disponibilidade = 1 – Produto das indisponibilidades dos componentes em paralelo Nesse caso, a disponibilidade aumenta, pois o sistema pára somente se TODOS os componentes falharem. Usar o valor das Indisponibilidades A fórmula da Indisponibilidade vale para qualquer quantidade de componentes em paralelo. 30 Exercício: Análise de Disponibilidade a) Calcule a Disponibilidade para as seguintes topologias (valores didáticos): MTBF = 10.000 horas D=MTBF / (MTBF + MTTR) = ?? MTTR = 10 horas b) D=0,9 D=0,9 D=?? c) D=0,9 D=0,8 D=0,9 D=?? d) D=0,9 D=0,8 D=0,9 D=?? D=0,5 31 Comentários adicionais: Exercício: Análise de Disponibilidade a) D = 10000 / 10010 = 0,999 b) D = 0,9 x 0,9 = 0,81 c) D = 0,9 x 0,8 x 0,9 = 0,648 d) Dica: calcular primeiro a disponibilidade equivalente dos links redundantes (paralelos) links paralelos equivalente > D = 1 – 0,2 x 0,5 = 0,9 disponibilidade dos 3 elementos > D = 0,9 x 0,9 x 0,9 = 0,729. Semestre 1 Tópico 3 Soares: Cap.2 Kurose: Tópicos 1.3 e 1.4 33 Composição da rede borda da rede: aplicações e hosts núcleo da rede: roteadores rede de redes redes de acesso, meios físicos: enlaces de comunicação 34 Topologias de rede Rede peer-to-peer Poucos usuários Compartilhamento de recursos Arquitetura Cliente-Servidor 35 Comentários adicionais: Topologias de rede A rede peer-to-peer é mais simples e barata, mas muito mais limitada e de difícil administração. Muito usada em redes pequenas compartilhando recursos como impressoras, acesso Internet, Disco. Na arquitetura cliente-servidor, parte do sistema está no servidor e parte no cliente e ambos interagem. Existe um conceito chamado de “3Tier”, onde existe um terceiro elemento intermediário (o terceiro parceiro) que interage com o cliente e o servidor, criando quase que um “isolamento” do sistema, também chamado de “Mediation”. 36 Topologias de rede Rede “a”: uso de concentradores para reduzir o custo da comunicação. Maior vulnerabilidade da rede Rede “b”: rede mista. Conceito Internet. Baixa vulnerabilidade. Maior custo. 37 Comentários adicionais: Topologias de rede Comentar que a topologia “a” é utilizada pelas empresas que implementam suas redes de comunicação de dados privativa assim como ainda é a utilizada pelas provedoras de serviço de comunicação de dados (X25, Frame Relay e ATM) e também pelo sistema telefônico. Comentar que a topologia “b” é a da Internet ou nas redes corporativas ou das provedoras de serviço utilizando protocolo IP. 38 Tipos de ligação Ponto-a-ponto Multiponto 39 Forma de uso do meio de comunicação Simplex Half-duplex ou Full-duplex 40 Topologia Estrela 41 Topologia em Anel 42 Rede totalmente ligada Todos os nós têm ligação entre sí 2-a-2 Quantidade de links é a COMBINAÇÃO 2-a-2 (“p”=2) dos “n” nós C(n,p) = n! / (p! x (n-p)!) Valor aproximado no caso 2-a-2 = n2/2 No exemplo: C(5,2) = 5! / (2! X 3!) = 10 É a solução mais segura, MAS... Não é uma solução econômica. 43 As bordas da rede sistemas finais (hosts): modelo cliente/servidor executam programas de aplicação localizam-se nas extremidades da rede Exemplo: WWW, email o cliente toma a iniciativa enviando pedidos que são respondidos por servidores Exemplo: WWW client (browser)/ server; email client/server modelo peer-to-peer: Prevê simetria de comunicação Exemplo: teleconferência. Borda da rede: serviço orientado à conexão 44 Meta: transferência de dados entre sistemas finais handshaking: estabelece as condições para o envio de dados antes de envia-los atualmente Alô: protocolo humano transferência de dados confiável e seqüêncial, orientada a cadeia de bytes estados de “conexão” controlam a troca de mensagens entre dois hosts TCP - Transmission Control Protocol realiza o serviço orientado à conexão da Internet serviço TCP [RFC 793] controle de fluxo: perdas: reconhecimentos e retransmissões evita que o transmissor afogue o receptor controle de congestão: transmissor reduz sua taxa quando a rede fica congestionada. 45 Borda da rede: serviço sem conexão Meta: transferência de dados entre sistemas finais o mesmo de antes! UDP - User Datagram Protocol [RFC 768]: Oferece o serviço sem conexão da Internet transferência de dados não confiável sem controle de fluxo sem controle de congestão App’s usando TCP: HTTP (WWW), FTP (file transfer), Telnet (remote login), SMTP (email) App’s usando UDP: streaming media, teleconferência, telefonia IP. 46 O núcleo da rede malha de roteadores interconectados A questão fundamental: como os dados são transferidos através da rede? comutação de circuitos: usa um canal dedicado para cada conexão. Ex: rede telefônica comutação de pacotes: dados são enviados em “blocos” discretos, na base FIFO. 47 Núcleo da Rede: Comutação de Circuitos Recursos fim-a-fim são reservados por “chamada” taxa de transmissão, capacidade dos comutadores recursos dedicados: não há compartilhamento desempenho análogo aos circuitos físicos (QoS garantido) exige estabelecimento de conexão Exemplo semelhante: processo de ligação telefônica. 48 Comentários adicionais: Núcleo da Rede: Comutação de Circuitos Recursos da rede (ex., capacidade de transmissão) dividida em “pedaços” Pedaços alocados às chamadas Pedaço do recurso disperdiçado se não for usado pelo dono da chamada (sem divisão) Formas de divisão da capacidade de transmissão em “pedaços” divisão em freqüência divisão temporal. 49 Núcleo da rede: comutação de pacotes A B cada fluxo de dados fim-afim é dividido em pacotes cada pacote usa toda a banda disponível ao ser transmitido recursos são usados na medida do necessário Não há alocação fixa de recursos 10 Mbits/s Ethernet multiplexação estatística C 1.5 Mbits/s fila de pacotes esperando pelo enlace de saída D 45 Mbits/s E contenção de recursos: a demanda agregada por recursos pode exceder a capacidade disponível congestão: filas de pacotes, aumento do tempo de envio, perda de pacotes store and forward: pacotes se movem de um roteador para o outro antes de serem retransmitidos transmite no enlace espera vez no enlace. 50 Comentários adicionais: Núcleo da rede: comutação de pacotes Comentar que na comutação de pacotes não existe alocação fixa de recursos Comentar da necessidade de dimensionamento de buffers. 51 Núcleo da rede: Comutação de Pacotes Comportamento store and forward: “como uma onda no mar” 52 Comutação de Pacotes versus de Circuitos Comutação de Pacotes permite que mais usuários usem a mesma rede! Exemplo: Enlace de 1 Mbit/s cada usuário a 100Kbits/s quando “ativo” Usuário ativo 10% do tempo N usuários Solução para comutação de circuitos: 10 usuários Solução para comutação de pacotes: com 35 usuários, probabilidade > 10 ativos menor que 0,0004. enlace de 1 Mbit/s 53 Comentários adicionais: Comutação de Pacotes versus de Circuitos Cálculo da probabilidade usando Distribuição Binomial: P(x=k) = C(n,k) p^k q^(n-k) N qtdd de tentativas k qtdd de sucessos p probabilidade de sucesso q probabilidade de insucesso (1-p) P(x=k) probabilidade do evento ocorrer exatamente k vezes em n tentativas No caso, calcular P(x=0) + P(x=1) + ... + P(x=10) = (x menor ou igual a 10) = 0,9996 P(x > 10) = 1- P(x<=10) = 1 - 0,9996 = 0,0004 Veja planilha Excel com esses cálculos (Distribuicao binomial.xls). 54 Comutação de Pacotes versus de Circuitos A comutação de pacotes é melhor sempre? Boa para dados esporádicos (tráfego em rajadas) Boa para pacotes de tamanho pequeno para melhor compartilhamento de recursos Não há estabelecimento de chamada Problema devido ao alto tráfego: Congestão excessiva: atraso e perda de pacotes (descarte) Necessário protocolos para transferência confiável e controle de congestionamento (controle de fluxo). 55 Exercício: Análise de disponibilidade Analisar alternativas de melhoria de disponibilidade da seguinte rede, através de mudanças na topologia da mesma e calcular a melhoria obtida no índice de disponibilidade entre os nós 1 e 4: 5 DRoteador=DLink=0,9 4 3 8 7 9 2 6 1 56 Comentários adicionais: Exercício: Análise de disponibilidade Os valores de disponibilidade são meramente para efeitos didáticos. Os valores reais são bem melhores que isso) Disponibilidade 1-4 antes da mudança: trecho 1-2-4: D=0,9 x 0,9 x 0,9 x 0,9 x 0,9 = 0,59 Disponibilidade 1-4 interligando o nó 4 com o 7: aparece o caminho alternativo 1-6-7-4. Cálculo da disponibilidade equivalente: Passo 1: Elementos série: link 1-2, nó 2, link 2-4 > D=0,9 x 0,9 x 0,9 = 0,729 > I = 1- 0,729 = 0,271 Passo 2: Elementos série: link 1-6, nó 6, link 6-7, nó 7, link 7-4 > D=0,9 x 0,9 x 0,9 x 0,9 x 0,9 = 0,59 > I = 1-0,59 = 0,41 Passo 3: resultado do passo 1 em paralelo com resultado passo 2 > D = (1-0,271 x 0,41) = 0,888 Passo 4: associação série nó 1, resultado passo 3 e nó 4 > D = 0,9 x 0,888 x 0,9 = 0,719 Conclusão: a disponibilidade que era 0,59 melhorou para 0,719.