Conteúdo Programático Redes de Computadores e a Internet Antônio Abelém abelem@ufpa.br 1. Introdução e Conceitos Básicos 2. Camada de Aplicação 3. Camada de Transporte 4. Camada de Rede 1: Introdução 1 1: Introdução 2 Bibliografia Avaliação KUROSE & ROSSI. Computer Networking: A Top-Down Approach Featuring the Internet. 2ª edição. 2002. Prova Título da tradução: Redes de Computadores e a Internet. Ed. Pearson Brasil. 1ª edição. 2001. TANENBAU, A. Computer Network. 4ª edição. Prentice Hall, 2002. Título da tradução: Redes de Computadores. 3ª edição. PHB, 2000. COER, D. Internetworking with TCP/IP. 4ª edição. Prentice Hall, 2001. Interligação em Rede com TCP/IP. Vol.1. Ed. Campus. 2001. YEINI, Y.The Network Book. http://www1.cs.columbia.edu/netbook/ Artigos diversos. Trabalho prático Suporte da disciplina Lista de discussão Página WEB: http://www.cultura.ufpa.br/abelem/ 1: Introdução 3 1: Introdução 4
O que é a Internet: os componentes O que é a Internet: os componentes milhões de dispositivos interligados: hospedeiros, sistemas terminais PCs, estações, servidores PDAs, telefones, torradeiras executando aplicações de s de comunicação fibra, cobre, rádio, satélite Roteadores/comutadores: encaminham blocos de dados pela roteador servidor Provedor local Rede corporativa estação móvel Provedor regional 1: Introdução 5 protocolos: controlam envio, recepção de mensagens p.ex., TCP, IP, HTTP, FTP, PPP Internet: de s aproximadamente hierárquica Internet pública contra intranet privada Padrões Internet RFC: Request for comments IETF: Internet Engineering Task Force roteador servidor Provedor local Rede corporativa estação móvel Provedor regional 1: Introdução 6 O que é a Internet: os serviços O que é um protocolo? Infra-estrutura de comunicação possibilita aplicações distribuídas: WWW, correio, jogos, comércio eletrônico. Voz, vídeo. outras? serviços de comunicação oferecidos: sem conexão orientado a conexão protocolos humanos: que horas são? queria perguntar... apresentações mensagens específicas enviadas ações específicas tomadas ao receber mensagens, ou em outros eventos protocolos de : máquinas em vez de gente toda comunicação na Internet governada por protocolos protocolos definem formato, ordem de mensagens enviadas e recebidas entre entidades de, e ações tomadas ao enviar ou receber uma mensagem 1: Introdução 7 1: Introdução 8
O que é um protocolo? Detalhes sobre a estrutura da Um protocolo humano e um protocolo de : Oi! Oi! Que horas são? 2:00 Tempo P: Outro protocolo humano? TCP pedido de conexão. TCP resposta. Get http://gaia.cs.umass.edu/index.htm <arquivo> 1: Introdução 9 Bordada: aplicações e hospedeiros núcleo da : roteadores de s s de acesso, meios físicos: s de comunicação 1: Introdução 10 A borda da : Borda da : serviço orientado a conexão sistemas terminais: executam aplicações p.ex. WWW, correio na borda da modelo cliente/servidor cliente solicita, recebe serviço do servidor p.ex., cliente WWW (browser)/ servidor; cliente/servidor de correio modelo entre pares (p2p): interação simétrica p.ex.: teleconferências 1: Introdução 11 eta: transferência de dados entre sistemas handshaking : preparação para iniciar transferência protocolo humano: Oi!, Oi! criar estado em 2 sistemas em comunicação TCP - Transmission Control Protocol serviço orientado a conexão da Internet serviço TCP [RFC 793] transf. dados: fluxo de bytes ordenado, confiável perdas: reconhecimentos e retransmissões controle de fluxo: remetente não vai afogar o receptor controle de congestionamento: remetentes reduzem a taxa de envio quando congestionada 1: Introdução 12
Borda da : serviço sem conexão Núcleo da Rede eta: transferência de dados entre sistemas mesma que antes! UDP - User Datagram Protocol [RFC 768]: serviço sem conexão da Internet transf. de dados não confiável sem controle de fluxo sem controle de congestionamento Aplics. usando TCP: HTTP (WWW), FTP (transf. de arquivo), Telnet (acesso remoto), STP (correio) Aplics. usando UDP: mídia com streaming, teleconferências, telefonia pela Internet 1: Introdução 13 malha conexa de roteadores a questão fundamental: como se transfere dados através da? comutação de circuitos: circuito dedicado por chamada: de telefonia comutação de pacotes: dados enviados pela em quantias discretas 1: Introdução 14 Núcleo da Rede: comutação de circuitos Recursos fim a fim reservados para a chamada banda de, capacidade de comutação recursos dedicados: não há compartilhamento desempenho como circuitos (garantido) requer fase inicial ( setup ) 1: Introdução 15 Núcleo da Rede: comutação de circuitos Recursos de (p.ex., banda) retalhado em pedaços pedaços alocados a chamadas recurso ocioso se não usado pela chamada (não há compartilhamento) divisão de banda em pedaços divisão por frequência divisão por tempo 1: Introdução 16
Núcleo da Rede: comutação de pacotes Núcleo da : comutação de pacotes Cada fluxo de dados fim a fim dividido em pacotes pacotes de usuários A, B compartilham recursos cada pacote usa banda inteira do recursos usados a demanda Retalhamento de banda Alocação dedicada Reserva de recursos Contenção por recursos: demandaagregadapode exceder os recursos disponíveis congestionamento: fila de pacotes, espera para uso do armazena, reencaminha: pacotes movem um a cada vez transmite pelo aguarda vez p/ o próx. 1: Introdução 17 A B Ethernet 10 bps fila de pacotes aguardando de saída multiplexação estatística 2 bps D Comutação de pacotes X comutação de circuitos: analogia humana de restaurante outras analogias humanas? C 34 bps E 1: Introdução 18 Comutação de pacotes X comutação de circuitos Comutação de pacotes permitir admitir mais usuários! Comutação de pacotes X comutação de circuitos Comutação de pacotes será sempre o melhor? de 1 bit cada usuário: 100Kbps quando ativo ativo 10% do tempo N usuários comutação de circuitos: 10 users comutação de pacotes: com 35 usuários, probabilidade > 10 ativos menor que 0,004 de 1 bps 1: Introdução 19 Fantástico para dados em rajadas compartilha recursos não requer inicialização (setup) Congestionamento excessivo: retardo e perdas protocolos necessários para transferência confiável de dados, controle de congestionamento P: Como prover comportamento de circuitos? Garantias de banda necessárias para aplicações de áudio/vídeo é um problema ainda sem solução. 1: Introdução 20
Redes de pacotes: roteamento eta: mover pacotes entre roteadores da origem ao destino existem diversos algoritmos de seleção de rota (cap. 4) de datagramas: endereço de destino determina próximo passo rotas podem mudar durante uma sessão analogia: dirigindo, perguntando o caminho de circuitos virtuais: cada pacote carrega rótulo (ID de circuito virtual), rótulo determina próximo passo rota fixa determinada em tempo de estabelecimento da chamada, permanece fixa durante a chamada roteadores mantêm estado por chamada 1: Introdução 21 Redes de acesso e meios físicos P: Como ligar sistemas terminais ao 1o roteador? s de accesso residencial s de accesso institucional (escola, empresa) s de accesso móvel Características principais: banda (bits per second) da de acesso? compartilhada ou dedicada? 1: Introdução 22 Acesso residencial: acesso ponto a ponto Discado via modem até 56Kbps, acesso direto ao roteador (conceitualmente) RDSI: digital de serviços integrados (DVI - Telemar): 128Kbps, conexão digital ao roteador ADSL: asymmetric digital subscriber line até 1 bps casa ao roteador até 8 bps roteador a casa disponibilidade de ADSL : Acesso residencial: cable modems HFC: hybrid fiber coax assimétrico: até 10bps p/ a casa, 1 bps para a de cabo e fibra liga a casa ao roteador do provedor acesso compartilhado ao roteador pelas casas problemas: dimensionamento, congestionamento disponibilidade: via cias. de TV a cabo, p.ex., NET, TVA Telefônica, Telemar (RJ,G,BA, PA) 1: Introdução 23 1: Introdução 24
Acesso institucional: s locais Redes de acesso sem fio local (LAN) da empresa/univ. liga sistema terminal ao 1o roteador Ethernet: cabo compartilhado ou dedicado usado para acesso ao roteador 10 bps, 100bps, Gigabit Ethernet disponibilidade: instituições, s locais domésticas em breve de acesso sem fio liga ao roteador s locais sem fio: espectro de rádio substitui cabo p.ex., Wavelan 2, 11 e 54bps Wavelan tb usada para ligações ponto a ponto acesso sem fio não local CDPD: acesso sem fio ao roteador do provedor via de telefonia celular roteador estação base sistemas móveis 1: Introdução 25 1: Introdução 26 eios físicos eios físicos: cabo coaxial, fibra físico: bit de dados transmitido propagados através do meio guiado: sinais propagam em meios sólidos: cobre, fibra meios não guiados: sinais propagam livremente, p.ex., rádio Par trançado (TP) dois fios isolados de cobre Categoria 3: fio telefônico tradicional, ethernet de 10 bps Categoria 5: ethernet de 100bps Cabo coaxial: fio (portador do sinal) dentro de um fio (blindagem) banda básica: canal único no cabo banda larga: múltiplos canais no cabo bidirecional uso era comum em Ethernet de 10bps Cabo de fibra ótica: fibra de vidro iluminada por pulsos de luz operação de alta velocidade: Ethernet de 100bps transmissão de alta velocidade ponto a ponto (p.ex., 10 Gbps) baixa taxa de erros 2 tipos de fibra: monomodo, multimodo 1: Introdução 27 1: Introdução 28
eios físicos: rádio sinal enviado pelo espectro eletromagnético sem fio físico bidirecional efeitos sobre propagação do ambiente: reflexão obstrução por objetos interferência Tipos de de rádio: microondas p.ex. canais até 155 bps local (p.ex., wavelan) 2bps, 11bps, 54bps longa distância (p.ex., celular) p.ex. CDPD, 10 s Kbps satélite canais de até 50bps (ou múltiplos canais menores) retardo ponto a ponto de 270 ms geosíncrono X LEOS (Low Earth Orbit Satellite) 1: Introdução 29 Retardo em s de pacotes Pacotes experimentam retardo em caminhos fim a fim quatro causas de retardo a cada A B transmissão Processamento no nó processamento no nó: verifica erros de bits determina saída filas tempo gasto aguardando envio no de saída depende do nível de congestionamento propagação enfileiramento 1: Introdução 30 Retardo em s de pacotes Camadas de Protocolos Retardo de transmissão: R=banda do (bps) L=tamanho do pacote (bits) tempo para transmitir pacote no = L/R A B transmissão propagação Retardo de propagação: d = comprimento do s = velocidade de propagação (~2x10 8 m/sec) retardo propagação = d/s Note: s e R são quantidades muito diferentes! Redes são complexas! uitos componentes: hospedeiros roteadores s de diversos meios aplicações protocolos hardware, software Pergunta: Existe alguma esperança de organizar a estrutura da? Ou, pelo menos, organizar nossa discussão de s? Processamento no nó enfileiramento 1: Introdução 31 1: Introdução 32
Organização de viagens aéreas Organização de viagens aéreas: outra visão passagem (compra) passagem (reclama) passagem (compra) passagem (reclama) bagagem (entrega) bagagem (recupera) bagagem (entrega) bagagem (recupera) portão (embarque) portão (desembarque) portão (embarque) portão (desembarque) decolagem aterrissagem decolagem aterrissagem uma série de passos 1: Introdução 33 Camadas: cada camada implementa um serviço através das ações internas da própria camada uso dos serviços providos pela camada inferior 1: Introdução 34 Viagens aéreas em camadas: serviços Implementação distribuída das funcionalidades em camadas entrega balcão a balcão de passageiros/bagagem entrega de bagagem do check-in à esteira entrega pessoas: p. embarque ao p. desembarque entrega de avião: aeroporto a aeroporto da origem ao destino Aeroporto de embarque passagem (compra) bagagem (entrega) portão (embarque) decolagem passagem (reclama) bagagem (recupera) portão (desembarque) aterrissagem locais intermediários de tráfego aéreo Aeroporto de desembarque 1: Introdução 35 1: Introdução 36
Por quê usar camadas? Ao lidar com sistemas complexos: estrutura explícita permite identificação, relações entre componentes de sistema complexo modelo de referência para discussão modularização facilita manutenção, atualização do sistema mudanças de implementação do serviço da camada é transparente ao resto do sistema p.ex., mudança no procedimento do portão não afeta o resto do sistema 1: Introdução 37 Por quê usar camadas? Princípio do Dividir para Conquistar modularização facilita manutenção, atualização do sistema Projetar uma como um conjunto hierárquico de camadas Cada nível utiliza os serviços oferecidos pelo nível imediatamente inferior para implementar e oferecer os seus serviços ao nível imediatamente superior O projeto de um nível está restrito a um contexto específico e supõe que os problemas fora deste contexto já estejam devidamente resolvidos Camada n... Camada 3 Camada 2 Camada 1 1: Introdução 38 Níveis, Protocolos e Interfaces Arquiteturas de Comunicação Interface n-1/n Sistema A Nível n Protocolo de Nível n Sistema B Nível n Protocolo de Nível n-1 Nível n-1 Nível n-1...... Interface n-1/n odelo de Referência OSI odelo de referência para interconexão de sistemas abertos Arquitetura IEEE 802 Interface 3/4 Interface 2/3 Interface 1/2 Protocolo de Nível 4 Nível 4 Nível 4 Protocolo de Nível 3 Nível 3 Nível 3 Protocolo de Nível 2 Nível 2 Nível 2 Protocolo de Nível 1 Nível 1 Nível 1 Interface 3/4 Interface 2/3 Interface 1/2 Conjunto de Padrões para Redes Locais Arquitetura TCP/IP (Internet) Arquitetura baseada no conceito de interligação de s Padrão de fato atual 1: Introdução 39 1: Introdução 40
Arquitetura TCP/IP (Internet) Camadas da Arquitetura TCP/IP Desenvolvido pelo Departamento de Defesa Americano (DARPA) Padrão de fato Aplicação Transporte Evolução da ARPANET Começo do projeto no início dos anos 70 Arquitetura baseada no conceito de inter-s Interface de Rede Intra-Rede ou Hardware Inter- Rede 1: Introdução 41 1: Introdução 42 Nós na Arquitetura TCP/IP Pilha de protocolos da Internet Host A Aplicação Transporte Inter- Interface de Datagrama idêntico Quadro idêntico Rede Física 1 intra- ensagem idêntica Pacote idêntico Roteador Interface de Inter- Interface de Datagrama idêntico Quadro idêntico Rede Física 2 intra- Host B Aplicação Transporte Inter- Interface de 1: Introdução 43 : suporta aplicações de ftp, smtp, http : transferência de dados entre sistemas terminais tcp, udp : roteamento de datagramas da origem ao destino ip, protocolos de roteamento : transferência de dados entre elementos de vizinhos ppp, ethernet : bits nos fios 1: Introdução 44
Camadas: comunicação lógica Cada camada: distribuída entidades implementam funções da camada em cada nó entidades realizam ações, trocam mensagens com pares Camadas: comunicação lógica P.ex.: obtém dados da apl. inclui endereços, info para confiabilidade para formar datagrama envia datagrama ao par espera receber ack (reconhecimento) do par analogia: correios dados dados ack application transport network link physical dados 1: Introdução 45 1: Introdução 46 Camadas: comunicação dados dados Camadas de protocolos e dados Cada camada recebe dados da camada superior acrescenta cabeçalho com informação para criar nova unidade de dados passa nova unidade de dados para camada inferior Ht HnHt Hl HnHt origem destino Ht HnHt Hl HnHt mensagem segmento datagrama quadro 1: Introdução 47 1: Introdução 48