Redes de Computadores Prof. Fábio M. Costa [email protected] www.inf.ufg.br/~fmc/TPR 1: Introdução 1 Abordagem Seguida no Curso Tradicional (bottom-up) Abordagem Top-Down Aplicação Aplicação Transporte Transporte Rede Rede Enlace Enlace Física Física 1: Introdução 2 Livro Texto e Material de Apoio Computer Networking: A Top-Down Approach Featuring the Internet, 2nd. Ed. James F. Kurose & Keith W. Ross Addison-Wesley, 2003 Edição em Português: Redes de Computadores: Uma nova abordagem baseada na Internet Ed. PearsonEducation, 2002 Site de apoio: http://www.awl.com/kurose-ross Slides: http://www.inf.ufg.br/~fmc/TPR 1: Introdução 3 Parte I: Introdução Objetivo do capítulo: entender o contexto, visão geral, “sentir” o que são redes maior profundidade, detalhes posteriormente no curso abordagem: descritiva uso da Internet como exemplo Resumo: o que é a Internet o que é um protocolo? a borda da rede o núcleo da rede rede de acesso e meio físico desempenho: perda, atraso camadas de protocolos, modelos de serviço backbones, NAPs, ISPs história redes ATM 1: Introdução 4 O que é a Internet: visão dos componentes Milhões de dispositivos de computação conectados: hosts, sistemas finais workstations de PCs, servidores telefones com PDA’s, torradeiras roteador servidor ISP local ISP regional rodando aplicações de rede Enlaces (canais) de comunicação workstation dispositivo móvel fibra, cobre, rádio, satélite Roteadores: encaminham pacotes (pedaços) de dados através da rede Rede da empresa 1: Introdução 5 Alguns dispositivos “interessantes” com acesso à Internet Porta-retrato IP http://www.ceiva.com/ Um minúsculo servidor WEB http://www-ccs.cs.umass.edu/~shri/iPic.html Torradeira conectada à WEB com função de previsão de tempo http://dancing-man.com/robin/toasty/ 1: Introdução 6 O que é a Internet: visão dos componentes Protocolos: controlam o envio e recepção de mensagens ex., TCP, IP, HTTP, FTP, PPP roteador workstation servidor móvel ISP local Internet: “rede de redes” livremente hierárquica Internet pública versus intranet privada Padrões Internet RFC: Request for comments IETF: Internet Engineering Task Force ISP regional Rede da empresa 1: Introdução 7 O que é a Internet: visão dos serviços A infra-estrutura de comunicação permite o uso de aplicações distribuídas: WWW, email, jogos, ecomércio, bacos de dados, votações, compartilhamento de arquivos (ex.: MP3) mais? Serviços de comunicação disponibilizados: sem conexões orientado a conexões 1: Introdução 8 O que é um protocolo? Protocolos humanos: “que horas são?” “tenho uma dúvida” apresentações Protocolos de rede: máquinas ao invés de pessoas todas as atividades de comunicação na Internet são governadas por protocolos … msgs específicas são enviadas, segundo protocolos definem o formato e uma ordem préestabelecida ordem das mensagens enviadas e recebidas pelas entidades da … ações específicas são rede, bem como as ações realizadas quando as tomadas quando da msgs são recebidas, transmissão ou recepção ou acontecem outros destas mensagens 1: Introdução 9 eventos O que é um protocolo? um protocolo humano e um protocolo de rede: Oi TCP connection request Oi TCP connection reply. Que horas são? Get http://gaia.cs.umass.edu/index.htm 2:00 tempo <arquivo> P: Apresente outro protocolo humano! 1: Introdução 10 Uma olhada mais de perto na estrutura da rede: Borda da rede: aplicações e hospedeiros (hosts) Núcleo da rede: roteadores rede de redes Redes de acesso, meio físico: enlaces de comunicação 1: Introdução 11 A borda da rede: Sistemas finais (hosts): rodam programas de aplicação ex.: WWW, email na “extremidade da rede” Modelo cliente/servidor o host cliente faz os pedidos, são atendidos pelos servidores ex.: cliente WWW (browser)/ servidor; cliente/servidor de email Modelo peer-to-peer : interação simétrica entre os hosts ex.: teleconferência, NAPSTER. 1: Introdução 12 Borda da rede: serviço orientado a conexões serviço TCP [RFC 793] Objetivo: transferência de transferência de dados dados entre hosts. handshaking: inicializa (prepara para) a transf. de dados Alô,... alô (protocolo humano) inicializa o “estado” em dois hosts que desejam se comunicar Transmission Control Protocol TCP serviço orientado a conexão da Internet através de um fluxo de bytes ordenados e confiável perda: tratata através de reconhecimentos e retransmissões controle de fluxo : transmissor não inundará o receptor controle de congestionamento : transmissor “diminui a taxa de transmissão” quando a rede está congestionada. 1: Introdução 13 Borda da rede: serviço sem conexão Objetivo: transferência de dados entre sistemas finais mesmo que antes! User Datagram Protocol [RFC 768]: UDP - serviço sem conexão da Internet transferência de dados não confiável não controla o fluxo nem congestionamento Aplicações que usam TCP: HTTP (WWW), FTP (transferência de arquivo), Telnet (login remoto), SMTP (email) Aplicações que usam UDP: streaming media, teleconferência, telefonia Internet 1: Introdução 14 Capítulo 1: Roteiro 1. 2. 3. 4. 5. 6. 7. 8. O que é a Internet? A borda da rede O núcleo da rede Acesso à rede e meios físicos Estrutura da Internet e ISPs Atraso e perda em redes de comutação de pacotes Camadas de protocolos, modelos de serviço Histórico 1: Introdução 15 O Núcleo da Rede Malha de roteadores interconectados A pergunta fundamental: como os dados são transferidos através da rede? comutação de circuitos: circuito dedicado por chamada: rede telefônica comutação de pacotes: os dados são enviados através da rede em pedaços discretos. 1: Introdução 16 Núcleo da Rede: Comutação de Circuitos Recursos fim a fim são reservados para a chamada. banda do enlace, capacidade dos comutadores recursos dedicados: sem compartilhamento desempenho garantido (como em um circuito físico) necessita estabelecimento de conexão 1: Introdução 17 Núcleo da Rede: Comutação de Circuitos Recursos da rede (ex., banda) são divididos em “pedaços” pedaços alocados às chamadas o pedaço do recurso fica ocioso se não for usado pelo seu dono (não há compartilhamento) como é feita a divisão da banda de um canal em “pedaços” (multiplexação): divisão de frequência (FDM) divisão de tempo (TDM) 1: Introdução 18 Comutação de Circuitos: FDM e TDM Exemplo: FDM 4 usuários freqüência tempo TDM freqüencia tempo 1: Introdução 19 Núcleo da Rede: Comutação de Pacotes Disputa por recursos: Cada fluxo de dados fim-a- a demanda total pelos fim é dividido em pacotes recursos pode superar a quantidade disponível pacotes dos usuários A e B compartilham os recursos congestionamento: da rede pacotes são enfileirados, esperando para usar o cada pacote usa toda a enlace banda do canal armazena e retransmite: recursos são usados pacotes se deslocam uma quando necessário, etapa (hop) por vez Divisão da banda em “pedaços” transmite num enlace Alocação dedicada espera a vez no Reserva de recursos próximo enlace 1: Introdução 20 Núcleo da Rede: Comutação de Pacotes Ethernet 10 Mbs A B multiplexação estatística C 1,5 Mbs fila de pacotes esperando pelo enlace de saída D 45 Mbs E Comutação de pacotes versus comutação de circuitos: analogia com restaurantes existem outras analogias humanas? 1: Introdução 21 Núcleo da Rede: Comutação de Pacotes Comutação de pacotes: comportamento de armazenamento e retransmissão (store and forward) Quebra uma mensagem em pedaços menores (pacotes) Store-and-forward: comutador espera a chegada do pacote completo e o encaminha/roteia para o próximo comutador 1: Introdução 22 Comutação de pacotes versus comutação de circuitos A comutação de pacotes permite que mais usuários usem a rede! Enlace de 1 Mbit cada usuário: 100Kbps quando “ativo” ativo 10% do tempo comutação por N usuários circuitos: 10 usuários Enlace de 1 Mbps comutação por pacotes: com 35 usuários, probabilidade > 10 ativos menor que 0,004 1: Introdução 23 Comutação de pacotes versus comutação de circuitos A comutação de pacotes ganha de lavada? Ótima para dados em surtos compartilhamento dos recursos não necessita estabelecimento de conexão Congestionamento excessivo: atraso e perda de pacotes necessita de protocolos para transferência confiável de dados, controle de congestionamento P: Como fornecer um comportamento do tipo circuito? São necessárias garantias de banda para aplicações de áudio e vídeo 1: Introdução ainda é um problema não resolvido (cap. 6) 24 Segmentação de Mensagens Transmissão de mensagens longas como uma única unidade de transmissão store-and-forward da mensagem completa segmentadas em uma série de pacotes transmitidos independentemente pipeline no uso dos componentes da rede! 1: Introdução 25 Segmentação de Mensagens e Desempenho Sem segmentação: cada mensagem precisa ser armazenada completamente em cada comutador antes de ser retransmitida longa espera em cada comutador Uso seqüencial dos componentes da rede desperdício de recursos 1: Introdução 26 Segmentação de Mensagens e Desempenho Com segmentação em pacotes: cada componente da rede pode “trabalhar” em paralelo em pacotes diferentes da mensagem Resulta em um menor atraso total de transmissão da mensagem um fator de 3 neste ex.! Ver applet 1: Introdução 27 Redes comutadas por pacotes: roteamento Objetivo: mover pacotes entre roteadores da origem até o destino serão estudados diversos algoritmos de escolha de caminhos redes de datagrama: o endereço do destino determina próxima etapa rotas podem mudar durante a sessão analogia: dirigir, pedindo informações redes de circuitos virtuais: cada pacote contém uma marca (id. do circuito virtual), a qual determina a próxima etapa caminho fixo determinado no estabelecimento da chamada, permanece fixo durante a chamada roteadores mantêm estados para cada chamada 1: Introdução 28 Redes de Circuitos Virtuais Cada roteador mantém uma tabela de VCs: Uma entrada para cada VC passando por ele Indicando a interface de rede através da qual pacotes de cada VC devem ser encaminhados Cada VC recebe um número único no contexto de um roteador O mesmo VC pode ser identificado através de números diferentes em roteadores (e links) distintos ao longo do caminho Pacotes são identificados pelo número do VC ao qual pertencem 1: Introdução 29 Redes de Circuitos Virtuais (cont.) Protocolo de sinalização Usado para o estabelecimento de circuitos virtuais Antes que transferência de dados real possa ocorrer application transport 5. Data flow begins network 4. Call connected data link 1. Initiate call physical 6. Receive data application 3. Accept call transport 2. incoming call network data link physical 1: Introdução 30 Redes de Circuitos Virtuais: Exemplo De A para B A ---- PS1 ---- PS2 ---- B 12 22 32 Tabela de VCs em PS1: Incoming interface Incoming VC # Outgoing Interface Outgoing VC # 1 12 3 22 2 63 1 18 3 7 2 17 1 97 3 87 ... ... ... ... 1: Introdução 31 Redes de Datagrama Rota determinada para cada pacote individual Pacotes podem seguir rotas diferentes Tabela de rotas em cada roteador indica a próxima etapa (hop) no caminho a ser seguida para se chegar a cada destino conhecido com base no endereço de destino endereços organizados de forma hierárquica • Ex.: rede + máquina Análogo ao sistema postal 1: Introdução 32 Redes de Datagrama (cont.) Não é necessário tempo inicial de preparação da conexão Dados começam a ser transmitidos imediatamente application transport network data link 1. Send data physical application transport 2. Receive data network data link physical 1: Introdução 33 Redes de Datagrama: Exemplo de Tabela de Rotas fmc@zeus:~> netstat -r Kernel IP routing table Destination Gateway 200.137.197.128 apollo.inf.ufg. 200.137.197.192 artemis.inf.ufg 200.137.197.0 * 200.137.197.64 * default ares.inf.ufg.br Genmask 255.255.255.192 255.255.255.192 255.255.255.192 255.255.255.192 0.0.0.0 Flags UG UG U U UG MSS 40 40 40 40 40 Window 0 0 0 0 0 irtt 0 0 0 0 0 Iface eth1 eth1 eth1 eth0 eth1 Genmask 255.255.255.192 255.255.255.192 255.255.255.192 255.255.255.192 0.0.0.0 Flags UG UG U U UG MSS 40 40 40 40 40 Window 0 0 0 0 0 irtt 0 0 0 0 0 Iface eth1 eth1 eth1 eth0 eth1 fmc@zeus:~> fmc@zeus:~> netstat -nr Kernel IP routing table Destination Gateway 200.137.197.128 200.137.197.2 200.137.197.192 200.137.197.6 200.137.197.0 0.0.0.0 200.137.197.64 0.0.0.0 0.0.0.0 200.137.197.1 fmc@zeus:~> 1: Introdução 34 Topologia da Rede Correspondente 200.137.197.192 200.137.197.128 zeus.inf.ufg.br eth0 apollo artemis 200.18.197.2 200.18.197.6 eth1 200.137.197.0 200.137.197.64 200.137.197.1 UFGNet ares.inf.ufg.br 1: Introdução 35 Taxonomia de Redes de Computadores Redes de Telecomunicações Redes de Comutação de Circuitos FDM TDM Redes de Comutação de Pacotes Redes com VCs Redes de Datagrama • O fato de uma rede ser baseada em datagramas não implica em que ela seja orientada a conexões ou sem conexões • A Internet oferece ambos os tipos de serviço às aplicações: orientado a conexões (TCP) e sem conexões (UDP) 1: Introdução 36 Capítulo 1: Roteiro 1. 2. 3. 4. 5. 6. 7. 8. O que é a Internet? A borda da rede O núcleo da rede Acesso à rede e meios físicos Estrutura da Internet e ISPs Atraso e perda em redes de comutação de pacotes Camadas de protocolos, modelos de serviço Histórico 1: Introdução 37 Acesso à rede e meios físicos P: Como conectar os sistemas finais aos roteadores de borda? redes de acesso residencial redes de acesso institucional (escola, empresa) redes de acesso móvel Considere: largura de banda (bits por segundo) da rede de acesso? compartilhada ou dedicada? 1: Introdução 38 Acesso residencial: acesso ponto-a-ponto Discado (Dialup) via modem acesso direto ao roteador; até 56Kbps (teoricamente) Inconveniente: não é possível utilizar o telefone ao mesmo tempo RDSI/ISDN: rede digital de serviços integrados: conexão digital de 128Kbps ao roteador. asymmetric digital subscriber line ADSL: até 1 Mbps casa-pararoteador (provedor) • 4KHz – 50KHz até 8 Mbps roteador-paracasa • 50KHz – 1MHz telefone: 0KHz – 4KHz FDM: Ex.: Serviço Turbo® da Brasil Telecom 1: Introdução 39 Acesso residencial: cable modems HFC: hybrid fiber coax assimétrico: até 10Mbps subida (upstream), 1 Mbps descida (downstream) rede de cabos e fibra conectam as residências ao roteador do ISP acesso compartilhado ao roteador pelas residências questões: congestionamento, dimensionamento implantação: disponível através de empresas de TV a cabo, ex.: AJATO (TVA) e VIRTUA (Net) Aproveita a infraestrutura das redes de TV a cabo 1: Introdução 40 Acesso residencial: cable modems Diagram: http://www.cabledatacomnews.com/cmic/diagram.html 1: Introdução 41 Arquitetura de redes de TV a cabo: Visão geral Tipicamente: 500 a 5.000 casas cable headend rede de distribuição via cabo (simplificada) casa 1: Introdução 42 Arquitetura de redes de TV a cabo: Visão geral cable headend rede de distribuição via cabo (simplificada) casa 1: Introdução 43 Arquitetura de redes de TV a cabo: Visão geral servidores cable headend rede de distribuição via cabo (simplificada) casa 1: Introdução 44 Arquitetura de redes de TV a cabo: Visão geral FDM: V I D E O V I D E O V I D E O V I D E O V I D E O V I D E O D A T A D A T A C O N T R O L 1 2 3 4 5 6 7 8 9 Canais cable headend rede de distribuição via cabo casa 1: Introdução 45 Acesso institucional: rede local rede local (LAN - Local Area Network) da empresa/univ. conecta sistemas finais ao roteador de borda Ethernet: cabos compartilhados ou dedicados conectam o sistema final ao roteador 10 Mbs, 100Mbps, Gigabit Ethernet, 10Gbit Ethernet instalação: instituições, brevemente nas residências LANs: serão vistas no Cap. 5. 1: Introdução 46 Redes de acesso sem fio (wireless) rede de acesso compartilhado sem fio conecta o sistema final ao roteador LANs sem fio: ondas de rádio substituem os fios 802.11b (WiFi): 11Mbps roteador estação base acesso sem fio com maior cobertura GPRS: acesso sem fio ao roteador do ISP através da rede celular • 2,5G 3G ~ 384Kbps (2Mbps???) WAP (Wireless Application Protocol) hosts móveis 1: Introdução 47 Redes locais residenciais Componentes típicos de uma rede local residencial: moden ADSL ou cable modem roteador/firewall Ethernet ponto de acesso para a rede sem fio (wireless) de/para o cable headend cable roteador/ modem firewall Ethernet (switched) wireless laptops wireless access point 1: Introdução 48 Meios Físicos enlace físico: bit de dados transmitido se propaga através do enlace meios guiados: os sinais se propagam em meios sólidos: cobre, fibra meios não guiados: os sinais se propagam livremente (através do ar), ex. rádio Par Trançado (TP Twisted Pair) dois fios de cobre isolados Categoria 3: fios tradicionais de telefonia, 10 Mbps Ethernet Categoria 5 TP: 100Mbps Ethernet 1: Introdução 49 Meios físicos: cabo coaxial, fibra Cabo coaxial: fio (transporta o sinal) dentro de outro fio (blindagem) banda básica (baseband): canal único no cabo banda larga (broadband): múltiplos canais num cabo bidirecional uso comum em Ethernet Cabo de fibra óptica: fibra de vidro transporta pulsos de luz opera em alta velocidade: Ethernet 100Mbps transmissão ponto a ponto de alta velocidade (ex., 10 Gbps) baixa taxa de erros 10Mbs 1: Introdução 50 Meios físicos: rádio sinal transportado em ondas eletromagnéticas não há “fio” físico bidirecional efeitos do ambiente de propagação: reflexão obstrução por objetos interferência Tipos de enlaces de rádio: microondas ex.: canais de até 45 Mbps LAN (ex., IEEE 802.11b) 2Mbps, 11Mbps longa distância (ex., celular) ex. CDPD, 10’s Kbps satélite canal de até 50Mbps (ou múltiplos canais menores) atraso fim a fim de 270 mseg geosíncrono versus LEOS (low earth orbit satellites) 1: Introdução 51 Capítulo 1: Roteiro 1. 2. 3. 4. 5. 6. 7. 8. O que é a Internet? A borda da rede O núcleo da rede Acesso à rede e meios físicos Estrutura da Internet e ISPs Atraso e perda em redes de comutação de pacotes Camadas de protocolos, modelos de serviço Histórico 1: Introdução 52 Estrutura da Internet: rede de redes quase hierárquica provedores de backbones ISP local nacionais/internacionais (NBPs) ex. Embratel, Banco Rural, Global One interconecta com cada um dos outros de forma privada, ou em pontos de troca de tráfego públicos (PTTs) ISPs regionais conectam a NBPs ISP local, empresa conecta a um ISP regional ISP regional NBP B PTT PTT NBP A ISP regional ISP local 1: Introdução 53 Estrutura da Internet: rede de redes no centro da rede: ISPs da camada/nível 1 ex.: Embratel, RNP cobertura nacional / internacional treat each other as equals Interconexão privada entre provedores do nível (tier) 1 Tier 1 ISP Tier 1 ISP NAP Tier 1 ISP Interconexão entre provedores de nível 1 através de pontos de acesso à rede públicos (NAPs ou PTTs) 1: Introdução 54 Provedor de Backbone Nacional ex. Embratel http://www.embratel.net.br/internet/index.html 1: Introdução 55 Provedor de Backbone Nacional ex. RNP http://www.rnp.br/backbone/ 1: Introdução 56 Estrutura da Internet: rede de redes ISPs do nível 2: menores (freqüentemente regionais) Conectam-se a um ou mais ISPs do nível 1 e, possivelmente, a outros ISPs de nível 2 ISP do nível 2 paga a um ISP de nível 1 pela conexão ao resto da Internet ISPs do nível 2 são clientes dos ISPs de nível 1 Tier-2 ISP Tier-2 ISP Tier 1 ISP Tier 1 ISP Tier-2 ISP NAP Tier 1 ISP ISPs de nível 2 também podem se conectar uns com os outros de maneira privada ou via NAPs Tier-2 ISP Tier-2 ISP 1: Introdução 57 Estrutura da Internet: rede de redes ISPs de nível 3 e ISPs locais rede de acesso, mais próxima dos sistemas finais (hosts) local ISP Tier 3 ISP local ISP local ISP local ISP Tier-2 ISP ISPs de nível 3 Tier-2 ISP e ISPs locais são clientes de Tier 1 ISP ISPs de nível NAP mais alto, através dos quais eles se Tier 1 ISP Tier 1 ISP conectam ao resto da Tier-2 ISP Tier-2 ISP Internet local local local ISP ISP ISP Tier-2 ISP local ISP 1: Introdução 58 Estrutura da Internet: rede de redes Um pacote passa através de várias redes! local ISP Tier 3 ISP Tier-2 ISP local ISP local ISP local ISP Tier-2 ISP Tier 1 ISP Tier 1 ISP Tier-2 ISP local local ISP ISP NAP Tier 1 ISP Tier-2 ISP local ISP Tier-2 ISP local ISP 1: Introdução 59 Capítulo 1: Roteiro 1. 2. 3. 4. 5. 6. 7. 8. O que é a Internet? A borda da rede O núcleo da rede Acesso à rede e meios físicos Estrutura da Internet e ISPs Atraso e perda em redes de comutação de pacotes Camadas de protocolos, modelos de serviço Histórico 1: Introdução 60 Atraso em redes comutadas por pacotes os pacotes experimentam Processamento no nó: verificação de bits com erro atraso no caminho fim identif. do enlace de saída a fim Enfileiramento: quatro fontes de tempo de espera no enlace de atraso em cada etapa saída até a transmissão (roteador) transmissão A depende do nível de congestionamento do roteador propagação B processamento enfileiramento no nó 1: Introdução 61 Atraso em redes comutadas por pacotes Atraso de transmissão: R=largura de banda do enlace (bps) L=compr. do pacote (bits) tempo para enviar os bits no enlace = L/R transmissão A Atraso de propagação: d = compr. do enlace s = velocidade de propagação no meio (~2x108 m/seg) atraso de propagação = d/s Nota: s e R são valores muito diferentes! propagação B processamento enfileiramento no nó 1: Introdução 62 Atraso fim-a-fim Atraso em um nó dnodal = dproc + dqueue + dtrans + dprop Atraso fim-a-fim dtotal = N(dproc + dtrans + dprop) assumindo que o atraso de enfileiramento é desprezível (rede sem congestionamento) pacote passa por N-1 roteadores intermediários 1: Introdução 63 Atraso de transmissão versus Atraso de propagação Transmissão: quanto tempo se gasta para o transmissor colocar todos os bits no meio depende da taxa de transmissão do enlace e do tamanho do pacote Propagação: quanto tempo um bit demora para chegar ao outro lado do enlace depende da distância entre origem e destino P: Qual dos dois será o fator dominante? Analisar duas situações especiais: pacotes muito longos e enlaces de curta distância pacotes curtos e enlaces de longa distância 1: Introdução 64 Atraso de transmissão versus Atraso de propagação pacotes muito longos e enlaces de curta distância: atraso de transmissão domina A B pacotes curtos e enlaces de longa distância: atraso de propagação domina A B 1: Introdução 65 Atraso de enfileiramento R=largura de banda do enlace (bps) L=compr. do pacote (bits) a=taxa média de chegada de pacotes intensidade de tráfego = La/R La/R ~ 0: pequeno atraso de enfileiramento La/R -> 1: grande atraso La/R > 1: chega mais “trabalho” do que a capacidade de atendimento, atraso médio infinito! (assumindo capac. de fila infinita!) 1: Introdução 66 Perda de pacotes Na realidade: filas dos roteadores têm tamanho limitado O que acontece quando um pacote chega a um roteador cuja fila está cheia? O pacote é descartado (i.e., perdido)! Taxa de perda de pacotes aumenta à medida que a intensidade do tráfego (La/R) aumenta pacotes perdidos devem ser retransmitidos Medida de desempenho da rede (juntamente com o atraso) 1: Introdução 67 Atrasos e Rotas na Internet Como se mostram os atrasos e perdas na Internet? Programa Traceroute : realiza medidas de atraso da origem para cada roteador ao longo do caminho até o destino na Internet. Para todo i: envia três pacotes que chegarão ao roteador j no caminho em direção ao destino (i.e., três experimentos distintos) roteador j retornará pacotes de resposta à origem origem mede o intervalo de tempo entre a transmissão dos pacotes e a recepção das respostas 3 probes 3 probes 3 probes Introduction 1-68 Atrasos e Rotas na Internet Experimentar com o programa traceroute N-1 roteadores intermediários origem envia N pacotes especiais de “sondagem” ao receber o n-ésimo pacote, o n-ésimo roteador suprime o pacote e envia uma mensagem de volta para a origem ao receber tal mensagem, a origem registra: • o tempo gasto entre o envio do n-ésimo pacote a recepção da respectiva resposta – atraso de ida-evolta para o n-ésimo roteador • nome e endereço do n-ésimo roteador origem reconstrói a rota até o destino http://www.traceroute.org 1: Introdução 69 traceroute: exemplo traceroute: gaia.cs.umass.edu para www.eurecom.fr Três medidas distintas 1 cs-gw (128.119.240.254) 1 ms 1 ms 2 ms 2 border1-rt-fa5-1-0.gw.umass.edu (128.119.3.145) 1 ms 1 ms 2 ms 3 cht-vbns.gw.umass.edu (128.119.3.130) 6 ms 5 ms 5 ms 4 jn1-at1-0-0-19.wor.vbns.net (204.147.132.129) 16 ms 11 ms 13 ms 5 jn1-so7-0-0-0.wae.vbns.net (204.147.136.136) 21 ms 18 ms 18 ms 6 abilene-vbns.abilene.ucaid.edu (198.32.11.9) 22 ms 18 ms 22 ms 7 nycm-wash.abilene.ucaid.edu (198.32.8.46) 22 ms 22 ms 22 ms enlace trans8 62.40.103.253 (62.40.103.253) 104 ms 109 ms 106 ms oceânico 9 de2-1.de1.de.geant.net (62.40.96.129) 109 ms 102 ms 104 ms 10 de.fr1.fr.geant.net (62.40.96.50) 113 ms 121 ms 114 ms 11 renater-gw.fr1.fr.geant.net (62.40.103.54) 112 ms 114 ms 112 ms 12 nio-n2.cssi.renater.fr (193.51.206.13) 111 ms 114 ms 116 ms 13 nice.cssi.renater.fr (195.220.98.102) 123 ms 125 ms 124 ms 14 r3t2-nice.cssi.renater.fr (195.220.98.110) 126 ms 126 ms 124 ms 15 eurecom-valbonne.r3t2.ft.net (193.48.50.54) 135 ms 128 ms 133 ms 16 194.214.211.25 (194.214.211.25) 126 ms 128 ms 126 ms 17 * * * * significa sem resp. (pcte. perdido, roteador não responde) 18 * * * 19 fantasia.eurecom.fr (193.55.113.142) 132 ms 128 ms 136 ms 1: Introdução 70 Capítulo 1: Roteiro 1. 2. 3. 4. 5. 6. 7. 8. O que é a Internet? A borda da rede O núcleo da rede Acesso à rede e meios físicos Estrutura da Internet e ISPs Atraso e perda em redes de comutação de pacotes Camadas de protocolos, modelos de serviço Histórico 1: Introdução 71 “Camadas” de Protocolos As redes são complexas! muitos “pedaços”: hosts roteadores enlaces de diversos meios aplicações protocolos hardware, software Pergunta: Há alguma esperança em organizar a estrutura da rede? Ou pelo menos a nossa discussão sobre redes? 1: Introdução 72 Organização de uma viagem aérea bilhete (compra) bilhete (reclamação) bagagem (check in) bagagem (recup.) portão (embarque) portão (desembarque) decolagem aterrissagem roteamento do avião roteamento do avião roteamento do avião uma série de etapas 1: Introdução 73 Organização de uma viagem aérea: uma visão diferente bilhete (compra) bilhete (reclamação) bagagem (check in) bagagem (recup.) portão (embarque) portão (desembarque) decolagem aterrissagem roteamento do avião roteamento do avião roteamento do avião Camadas: cada camada implementa um serviço através de ações internas à camada depende dos serviços providos pela camada inferior 1: Introdução 74 Viagem aérea em camadas: serviços Transporte balcão a balcão de pessoas+bagagens transporte de bagagens transferência de pessoas: entre portões transporte do avião de pista a pista roteamento do avião da origem ao destino 1: Introdução 75 bilhete (compra) bilhete (reclamação) bagagem (check in) bagagem (recup.) portão (embarque) portão (desembarque) subida aterrissagem roteamento do avião roteamento do avião aeroporto de chegada aeroporto de saída Implementação distribuída da funcionalidade das camadas localidades intermediárias de tráfego aéreo roteam. aviões roteam. aviões roteam. aviões 1: Introdução 76 Por que dividir em camadas? Lidar com sistemas complexos: estrutura explícita permite a identificação e relacionamento entre as partes do sistema complexo modelo de referência em camadas para discussão modularização facilita a manutenção e atualização do sistema mudança na implementação do serviço da camada é transparente para o resto do sistema ex., mudança no procedimento no portão não afeta o resto do sistema divisão em camadas é considerada prejudicial? 1: Introdução 77 Pilha de protocolos Internet aplicação: dá suporte a aplicações de rede ftp, smtp, http transporte: transferência de dados host-a-host tcp, udp rede: roteamento de datagramas da origem até o destino ip, protocolos de roteamento enlace: transferência de dados aplicação transporte rede enlace física entre elementos de rede vizinhos ppp, ethernet física: bits “no fio” 1: Introdução 78 Camadas: comunicação lógica Cada camada: distribuída as “entidades” implementam as funções das camadas em cada nó as entidades executam ações, trocam mensagens entre parceiras aplicação transporte rede enlace física aplicação transporte rede enlace física rede enlace física aplicação transporte rede enlace física aplicação transporte rede enlace física 1: Introdução 79 Camadas: comunicação lógica Ex.: transporte recebe dados da aplicação adiciona endereço e verificação de erro para formar o “datagrama” envia o datagrama para a parceira espera que a parceira acuse o recebimento (ack) analogia: correio dados aplicação transporte transporte rede enlace física aplicação transporte rede enlace física ack dados rede enlace física aplicação transporte rede enlace física dados aplicação transporte transporte rede enlace física 1: Introdução 80 Camadas: comunicação física dados aplicação transporte rede enlace física aplicação transporte rede enlace física rede enlace física aplicação transporte rede enlace física dados aplicação transporte rede enlace física 1: Introdução 81 Camadas de protocolos e dados Cada camada recebe dados da camada superior adiciona informação no cabeçalho para criar uma nova unidade de dados (encapsulamento) passa a nova unidade de dados para a camada inferior no destino: operação inversa: desencapsula a unidade de dados e a repassa para a camada acima fonte destino M Ht M Hr Ht M He Hr Ht M aplicação transporte rede enlace física aplicação Ht transporte Hr Ht rede He Hr Ht enlace física M mensagem M segmento M M datagrama quadro 1: Introdução 82 Capítulo 1: Roteiro 1. 2. 3. 4. 5. 6. 7. 8. O que é a Internet? A borda da rede O núcleo da rede Acesso à rede e meios físicos Estrutura da Internet e ISPs Atraso e perda em redes de comutação de pacotes Camadas de protocolos, modelos de serviço Histórico 1: Introdução 83 História da Internet 1961-1972: Princípios iniciais de comutação de pacotes 1961: Kleinrock - teoria das filas demonstra eficiência da comutação por pacotes 1964: Baran - comutação de pacotes em redes militares 1967: concepção da ARPAnet pela ARPA (Advanced Reearch Projects Agency) 1969: entra em operação o primeiro nó da ARPAnet 1972: demonstração pública da ARPAnet NCP (Network Control Protocol) primeiro protocolo host-host primeiro programa de e-mail ARPAnet com 15 nós 1: Introdução 84 História da Internet 1972-1980: Interconexão de redes novas e proprietárias 1970: rede de satélite ALOHAnet no Havaí 1973: Metcalfe propõe a Ethernet em sua tese de doutorado 1974: Cerf e Kahn arquitetura para a interconexão de redes fim dos anos 70: arquiteturas proprietárias: DECnet, SNA, XNA fim dos anos 70: comutação de pacotes de comprimento fixo (precursor das redes ATM) 1979: ARPAnet tem 200 nós Princípios de interconexão de Cerf e Kahn: minimalismo, autonomia - não é necessária nenhuma mudança interna para interconectar redes modelo de serviço best effort roteadores sem estados controle descentralizado definem a arquitetura atual da Internet 1: Introdução 85 História da Internet 1980-1990: novos protocolos, proliferação de redes 1983: implantação do TCP/IP 1982: definição do protocolo SMTP para e-mail 1983: definição do DNS para tradução de nome para endereço IP 1985: definição do protocolo FTP 1988: controle de congestionamento do TCP novas redes nacionais: Csnet, BITnet, NSFnet, Minitel 100.000 hosts conectados numa conferederação de redes 1: Introdução 86 História da Internet Anos 90: comercialização, a WWW início dos anos 90: ARPAnet desativada 1991: NSF remove restrições ao uso comercial da NSFnet (desativada em 1995) início dos anos 90 : WWW hypertexto [Bush 1945, Nelson 1960’s] HTML, http: Berners-Lee 1994: Mosaic, posteriormente Netscape fim dos anos 90: comercialização da Web 1996: criação do projeto INTERNET2 Final dos anos 90: mais “killer applications”: instant messaging, peer2peer (ex.: Napster) importância de segurança na rede est. mais de 50 milhões de computadores na Internet; mais de 100 milhões de usuários enlaces de backbone operando a Gbps 1: Introdução 87 Internet/BR RNP teve início em 1989. Aberta para uso comercial em 1994 Posição absoluta, janeiro/03: Número de hosts: 2.237.527 9o do Mundo 3o das Américas 1o da América do Sul fonte: Network Wizards, 2003 19.700.000 de Internautas em Dez/2002 (fonte: Nielsen-NetRatings) Mais informações: Comitê Gestor da Internet/BR http://www.cg.org.br 1: Introdução 88 Número de Internautas VEJA, 5/4/2000 1: Introdução 89 Capítulo 1: Resumo Foi coberta uma tonelada de material! visão geral da Internet o que é um protocolo? borda da rede, núcleo, rede de acesso desempenho: perda, atraso camadas e modelos de serviço backbones, PTTs, ISPs história Esperamos que agora você possua: contexto, visão geral, “sentimento” do que sejam redes maior profundidade, detalhes posteriormente no curso 1: Introdução 90