58
Artur Arsenio Redes de Computadores 2010/2011 Departamento de Engenharia Informática 1 Redes de Computadores Redes de Computadores Camada Rede

4 2 camada rede 2010

Embed Size (px)

Citation preview

1. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica1Redes de ComputadoresRedes de ComputadoresCamada Rede 2. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica2 Camada de RedeObteno Dinmica de Endereos IP atribudo peloadministrador do sistemae configuradomanualmenteOu por DHCP atribuio dinmica deum endereo (plug-and-play)[RFC 2131]Endereo IP de uma interfaceindividual (host portion)DHCP (Dynamic Host Configuration Protocol) Atribuio dinmica permite reutilizao dos endereos IP Apropriado para communicaes mveis (PDAs, portteis, etc)DHCP (Dynamic Host Configuration Protocol) Atribuio dinmica permite reutilizao dos endereos IP Apropriado para communicaes mveis (PDAs, portteis, etc) 3. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica3 Camada de RedeDHCP Cenriode UtilizaoComputador difunde amensagem DHCPdiscoverServidor DHCPresponde com DHCPofferComputador pede oendereo IP DHCPrequestServidor confirmaendereo IP DHCPACKServidor DHCP: 223.1.2.5 4. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica4 Camada de Rede10.0.0.110.0.0.210.0.0.310.0.0.4138.76.29.7rede local10.0.0/24InternetpblicaTraduo de endereos de redeNAT Network Address Translation[RFC 2663, RFC 3022]Todos os datagramas aodeixar a rede local tm omesmo endereo (pblico) IP(NAT IP): 138.76.29.7, masnmero de porto diferenteOs datagramas com fontee destino nesta rede tmendereos 10.0.0/24Motivao - visto do mundo exterior todos os elementos locais usam um s endereo IPno h necessidade de requisitar uma coleco de endereos da entidade competente basta um endereo IPpodem mudar-se os endereos na rede local sem notificar o mundo exteriormuda-se de ISP sem mudar os endereos da rede local, e sem mudar os ns da rede exterioros elementos da rede local no so endereveis explicitamente a partir do mundo exterior contribuindo para um aumento de segurana. 5. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica5 Camada de RedeEncaminhador NAT Tarefasdatagramas de sada: substituir (endereo IP privado deorigem, porto #) de cada datagrama de sada por (endereoNAT IP pblico, novo porto #) . . . Os clientes/servidores remotos respondem usando comoendereo de destino (endereo NAT IP pblico, novo porto #).guardar (na tabela de traduo NAT) todos os pares(endereo IP privado de origem, porto #), (endereo NAT IPpblico, novo porto #).datagramas de entrada: substituir (endereo NAT IP pblico,novo porto #) no campo de endereo de destino de cadadatagrama de entrada o valor correspondente na tabela detraduo NAT (endereo IP privado de origem, porto #). 6. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica6 Camada de RedeNAT Exemplo10.0.0.110.0.0.210.0.0.3O: 10.0.0.1, 3345D: 128.119.40.186, 80110.0.0.4138.76.29.71: mquina 10.0.0.1envia datagrama p/128.119.40.186, 80Tabela de traduo NATendereo pblico endereo privado138.76.29.7, 5001 10.0.0.1, 3345 O: 128.119.40.186, 80D: 10.0.0.1, 3345 4O: 138.76.29.7, 5001D: 128.119.40.186, 8022: router NATmuda end. origemdo datagrama de10.0.0.1, 3345 p/138.76.29.7,5001, e actualizatabelaO: 128.119.40.186, 80D: 138.76.29.7, 5001 33: Resposta chega p/ end.destino: 138.76.29.7, 50014: router NAT muda endereode destino do datagrama de138.76.29.7, 5001 para 10.0.0.1, 3345 7. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica7 Camada de Redecampo do nmero do porto com 16-bits: 216 = 65.536 ligaes simultneas com um nico endereoImplementao do NAT algo controversa os ns encaminhadores deviam processar apenas o que diz respeito aonvel de rede somente at camada 3 viola o princpio de que o nvel de transporte funciona estritamenteextremo a extremopossibilidade do uso de NAT deve ser levado em conta pelos programadores deaplicaes (e.g. P2P) Connection reversal portos devem ser usados para enderear processos, em vez de mquinas escassez de endereos deve ser resolvida por outros mecanismos (IPv6).NAT: Implementao 8. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica8 Camada de RedeICMP: Internet Control Message ProtocolUsado por computadores e ns(routers) para comuniaes decontrolo da camada de rede informao de errosunreachable hostdestination network unreachableunreachable protocol, ... pedido/resposta de ecousado pelo comando pingNa camada de rede acima do IP mensagens ICMP so inseridas(no campo de dados) nosdatagramas IPTipo Cdigo descrio0 0 resposta de eco (ping)3 0 rede de destino inalcanvel3 1 mquina destino inalcanvel3 2 protocolo destino inalcanvel3 3 porto destino inalcanvel3 6 rede destino desconhecida3 7 mquina destino desconhecida4 0 fonte (controle de congesto- no usado)8 0 pedido eco (ping)9 0 anncio do caminho10 0 descobrir encaminhador (router)11 0 TTL expirado12 0 erro de cabealho IPTipo Cdigo descrio0 0 resposta de eco (ping)3 0 rede de destino inalcanvel3 1 mquina destino inalcanvel3 2 protocolo destino inalcanvel3 3 porto destino inalcanvel3 6 rede destino desconhecida3 7 mquina destino desconhecida4 0 fonte (controle de congesto- no usado)8 0 pedido eco (ping)9 0 anncio do caminho10 0 descobrir encaminhador (router)11 0 TTL expirado12 0 erro de cabealho IP[RFC 792] 9. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica9 Camada de RedeTraceroute funcionamento com ICMPOrigem envia uma srie de segmentosUDP para o destino Primeiro tem TTL =1 Segundo tem TTL=2, etc. Usa n de porto UDP pouco provvel Comea temporizado p/ cada datagramaQuando n-simo datagrama chega aon-simo router: Router descarta datagramatemporizador expirado Envia para a origem uma mensagemICMP (tipo 11, cdigo 0) Mensagem inclui nome e endereo IP dorouterQuando a msg ICMP chega, origemcalcula RTTTraceroute faz isto 3 vezesCritrio de paragemSegmento UDPeventualmente chega mquina destinoDestino retorna pacoteICMP porto inalcanvel(tipo 3, cdigo 3)Quando origem recebeeste pacote ICMP, terminaCritrio de paragemSegmento UDPeventualmente chega mquina destinoDestino retorna pacoteICMP porto inalcanvel(tipo 3, cdigo 3)Quando origem recebeeste pacote ICMP, termina 10. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica10 Camada de RedeMotivao inicial endereos de 32 bits insuficiente espao de endereos estaria completamente atribudo at 2008viso pessimista do incio dos anos 90Motivao adicional formato cabealho pode ajudar a aumentar a velocidade de processamento do n cabealho pode incluir campos dedicados ao fornecimento de QoS podem introduzir-se novos tipos de endereo, e.g., anycastEncaminhamento instantneo para o melhor de um conjunto de servidores replicadosBreve histria Recomendado pelo IPng Area Directors do IETF em Toronto, Julho de 1994, RFC 1752,(The Recommendation for the IP Next Generation Protocol) . Nov. 1994: recomendao aprovada pelo Internet Engineering Steering Group O corpo principal do protocolo IPv6 um Draft Standard do IETF desde 1998IPv6 verso 6 do Protocolo InternetNext Generation Internet Protocol, IPng [RFC 1752]IPv6 [RFC 2460] 11. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica11 Camada de RedePacotes IPv6Version (4 bits) valor 6 no IPv6Priority (ou Traffic Class - 8 bits) identifica a prioridade de um datagramanum fluxo. Semelhante ao campo TOS (tipo de servio) do IPv4Flow Label (20 bits) identifica datagramas do mesmo fluxo (flow) o conceito de fluxo no est bem definidoPayload len (16 bits) unsigned integer, n de bytes de dadosNext header (8 bits) identifica o protocolo que processa os dadosHop Limit n max hops q restam (decrementado em cada router, 0=drop)Formato do datagrama IPv6Cabealho de tamanho fixo de 40 bytesFragmentao/Reagrupamento no permitido no IPv6 em routers, apenas sistemas terminaisChecksum removido completamente para reduzir tempo de processamento em cada (router)Opes permitidas, porm fora do cabealho indicadas pelo campo Next HeaderICMPv6 verso nova do ICMP tipos adicionais de mensagens, e.g. Packet Too BigMudanas do IPv4 para IPv6 12. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica12 Camada de RedeTransiodo IPv4 para IPv6Como a rede pode funcionar com uma mistura de routers IPv4 e IPv6? [RFC 2893]Sistemas IPv6 backwardcompatible - podemprocessar (enviar, receber,encaminhar) datagramasIPv4Sistemas IPv4 no suportamdatagramas IPv6 E nem todos os routerspodem ser actualizadossimultaneamenteDual-Stack Routers comum stack IPv4 e outro IPv6Tneis datagramas IPv6carregados em datagramasIPv4 entre routers IPv4IPv6 dentro de IPv4 quando necessrioTuneis 13. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica13 Camada de RedeDHCP, NAT, ICMP, IPv6 RevisoServios da camada de rede Circuitos virtuais DatagramasFuncionamento de um encaminhador (router)Camada de rede na Internet: o protocolo IPPrincpios de encaminhamento seleco de um caminhoOutros aspectos da camada de rede na Internet DHCP, NAT, ICMP, IPv6Encaminhamento hierrquicoEncaminhamento na Internet intra domnio inter domnioEncaminhamento multicastDHCP - ObtenoDinmica de EndereosIPTraduo de endereosde rede NATTarefas, Exemplo eimplementaoICMP: Internet ControlMessage ProtocolTraceroute:funcionamento comICMPIPv6Pacotes IPv6Transiodo IPv4 para IPv6DHCP - ObtenoDinmica de EndereosIPTraduo de endereosde rede NATTarefas, Exemplo eimplementaoICMP: Internet ControlMessage ProtocolTraceroute:funcionamento comICMPIPv6Pacotes IPv6Transiodo IPv4 para IPv6 14. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica14 Camada de RedeEscala (centenas de milhes dedestinos)no se podem memorizar todosem cada tabela deencaminhamentoA troca de informao para aconstruo das tabelas esgotaria acapacidade da redeAutonomia administrativainternet = rede de redesCada instituio / organizao/ empresa tem o direito deusar mecanismos deencaminhamento prpriosA hiptese assumida de quetodos os ns so idnticosa rede plana no verdade, na prtica...Encaminhamento Hierrquico 15. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica15 Camada de RedeEncaminhamento HierrquicoNs no mesmo AS utilizam o mesmo protocolo de encaminhamento intra-ASNs em diferentes AS podem utilizar diferentes protocolos de encaminhamento intra-ASNs gateway ou fronteira ns especiais em cada AS utilizam um protocolo de encaminhamento intra-AS com todos os nsdesse AS so responsveis pelo encaminhamento para destinos fora desse ASutilizam um protocolo de encaminhamento inter-AS com os restantes nsgatewayOrganizao de ns em regies autnomas, autonomous systems (AS) 16. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica16 Camada de RedeEncaminhamento Intra-AS e Inter-ASTabela de encaminhamento configurada pelos algoritmos intra-AS e inter-ASC.bA.aA.cB.aabadbcabcencaminhamento inter-AS,intra-AS na gateway A.cCamada de redeCamada de ligao de dadosCamada fsicaGateways ou n fronteirausam encaminhamento inter-AS entre elesusam encaminhamento intra-AS com os ns do seu ASACB 17. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica17 Camada de Rede3b1d3a1c2aAS3AS1AS21a2c2b1b3cRouter em AS1 recebe umdatagrama cujo destino estfora de AS1Router dever encaminhar opacote p/ um dos routers defronteira, mas qual?AS1 precisa de1. aprender quais destinos que soatingiveis via AS2 e quais soatingiveis via AS32. propagar esta informao paratodos os routers em AS1Tarefas do encaminhamento inter-SATarefas do Encaminhamento Inter-AS 18. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica18 Camada de Rede3b1d3a1c2aAS3AS1AS21a2c2b1b3cTabela de encaminhamento no router 1dAS1 aprende atravs do protocolo inter-AS que a sub-rede x atingivel via AS3 (router de fronteira 1c) mas no via AS2Protocolo Inter-AS propaga informao de alcane dos destinospara todos os routers internosRouter 1d determina atravs da informao de encaminhamentointra-AS que sua interface I est no caminho mnimo para 1cColoca par (x,I) na tabela de encaminhamentoExemplo Definio da tabela deencaminhamento no router 19. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica19 Camada de RedeRouter aprendeatravs do protocolointer-AS que a sub-rede x atingivel viamltiplos routers defronteiraUsa informao deencaminhamento doprotocolo intra-ASpara determinar oscaminhos mnimosp/ cada n fronteiraEncaminhamentobatata quente:escolhe o routerfronteira que tem ocaminho de menorcustoDetermina na tabela deencaminhamento inter-face I que leva ao rou-ter fronteira de menorcusto. Insere (x,I) natab. encaminhamentoAS1 aprende agora atravs do protocolo inter-AS que a sub-rede x alcanvel via AS3 e via AS2Para configurar a tabela de encaminhamento, o router 1d deve determinarpara qual router de fronteira ele deve enviar pacotes com destino x Isto tambm tarefa do protocolo de encaminhamento inter-AS!Encaminhamento batata quente (hot potato): envia pacote para o router defronteira mais prximoExemplo: Seleco entre ASs mltiplos 20. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica20 Camada de RedeEncaminhamento na InternetA Internet constituda por SistemasAutnomos Autonomous Systems (AS)interligados entre siProtocolos nos 2 nveis de encaminhamentoInter-AS: protocolo nico BGP Border Gateway Protocol Intra-AS: cada administrador responsvelpela escolha do protocolo usado Conhecidos como Interior GatewayProtocols (IGP) IGPs mais comuns: RIP, OSPF, IGRPNs fronteira Inter-AS (exterior gateway)Ns interiores Intra-ASHierarquia de ASs na InternetRIP: Routing Information Protocol(RFC 2453 Nov. 1998)OSPF: Open Shortest Path First(v2, RFC 2328 Abril 1998)IGRP: Interior Gateway RoutingProtocol (Cisco propr.) 21. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica21 Camada de RedeEncaminhamento Hierrquico - RevisoServios da camada de rede Circuitos virtuais DatagramasFuncionamento de um encaminhador (router)Camada de rede na Internet: o protocolo IPPrincpios de encaminhamento seleco de um caminhoOutros aspectos da camada de rede na Internet DHCP, NAT, ICMP, IPv6Encaminhamento hierrquicoEncaminhamento na Internet intra domnio inter domnioEncaminhamento multicastEncaminhamentoIntra-AS e Inter-ASTarefas do encaminha-mento Inter-ASExemplo: Definioda tabela deencaminha-mento norouterExemplo: Selecoentre ASs mltiplosEncaminhamentoIntra-AS e Inter-ASTarefas do encaminha-mento Inter-ASExemplo: Definioda tabela deencaminha-mento norouterExemplo: Selecoentre ASs mltiplos 22. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica22 Camada de RedeRIP: Algoritmo de vector de distnciasIncludo na distribuio de BSD-UNIX,1982Custos definidos entre router de origeme subnet de destino entre routers no algoritmo DVMtrica de distncia: # de saltos (max =15 saltos) n de subredes atravessadas no caminhomais curto entre o router de origem e asubrede de destino, incluindo estaDCBAu vwxyzdestino saltosu 1v 2w 2x 3y 3z 2Do router A para sub-redesRFC 1058, RFC 2453 Nov. 1998Anncios RIPVectores de distncia: trocadosde 30 em 30 segundos via RIPResponse Message (tambmchamada mensagem de anncioRIP, RIP advertisement)Cada Anncio: contm at ummximo de 25 caminhos parasubredes, juntamente com custosEncaminhamento Intra-AS na Internet:RIP (Routing Information Protocol) 23. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica23 Camada de RedeRede Destino Prximo Router n de saltos at ao destinow A 2y B 2z B 7x -- 1. . ....CTabela de encaminhamento em Dw x yzA D B...Exemplo RIP...Subredes w,x,y,z 24. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica24 Camada de RedeDest Prox Saltosw - 1x - 1z C 4. ...Anncio de A para DCw x yzA D B...Rede Destino Prximo Router n de saltos at ao destinow A 2y B 2z B A 7 5x -- 1. . ....Tabela de encaminhamento em DExemplo RIP - Anncio...Subredes w,x,y,z 25. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica25 Camada de RedeSe no forem ouvidas mensagens de anncio (advertisement) numperodo de 180s da parte de um vizinho ele declarado inexistente (ou elefoi abaixo ou ento a ligao para ele)1. caminhos que incluam esse vizinho so retirados da tabela2. so enviadas mensagens de anncio aos restantes vizinhos3. os vizinhos por sua vez enviam novas mensagens se as suas tabelastiverem mudado a falha rapidamente propagada a toda a redeRouter pode pedir informao sobre custos de ligaes de vizinhos atravsde RIP request messagesReverso envenenado usado para impedir rotas cclicas ping-pong(distncia infinita = 16 ligaes)Aspectos de Implementao RIP Falha de uma Ligao 26. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica26 Camada de RedeAspectos de Implementao RIP:Processamento de tabelasAs tabelas de encaminhamento RIP so geridas por um processo nacamada de aplicao chamado route-d (routing daemon)As mensagens de anncio so enviadas periodicamente usando oprotocolo de transporte UDP (porto 520) 27. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica27 Camada de RedeRIP: Processamento de Tabelas ExemploTrs redes classe C (LANs) directamente ligadasN para enviar todos os datagramas com endereos que noconstam da tabela - default routerEndereo multicast: 224.0.0.0, Interface Loopback: 127.0.0.1N: giroflee.eurocom.frle003U193.55.114.6224.0.0.014345425585031326492Use0UG193.55.114.129defaultqaa02U192.168.3.5192.168.3.le03U193.55.114.6193.55.114.fa02U192.168.2.5192.168.2.lo00UH127.0.0.1127.0.0.1InterfaceRefFlagsGatewayDestination 28. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica28 Camada de RedeOSPF usado por ISPs de nveis mais altos o RIP mais usado por ISPs de nvel mais baixo e redes empresariaisAlgoritmo de estado das ligaes Disseminao de pacotes de estado das ligaes (LS packet)caso mude o estado da ligao (alterao do custo ou no estado up/down)e actualizado no minimo uma vez em cada 30 minutos Mapa da topologia conhecido em todos os nsClculo dos caminhos usando o algoritmo de Dijkstra OSPF no determina definio de custos (hop, inverso da capacidade, etc)muitas vezes definem-se os custos de modo a obter fluxos de trfego pretendidos routers testam estado ligaes atravs de mensagens HELLO aos vizinhosAs mensagens de anncio so disseminadas por inundao pelo AS as mensagens de anncio OSPF de divulgao para toda a rede tmapenas uma entrada por cada n vizinho protocolo OSPF usa directamente o IP, ao invs de TCP ou UDPEncaminhamento Intra-AS na Internet:OSPF (Open Shortest Path First)[RFC 2328]open protocol: protocolo pblico 29. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica29 Camada de RedeSegurana todas as mensagens OSPF so autenticadas para impedir acessos no autorizadosMltiplos caminhos caminhos de igual custo para o mesmo destinopodem ser mantidos (RIP permite apenas um)Mtricas diferentes para a mesma ligao dependendo do tipo deservio (campo TOS dos datagramas) e.g., ligao satlite com custo baixo para trfego de melhor esforo ecustos elevados para trfego de tempo realMulticast suporte integrado de uni/multicast [RFC 1584] OSPF multicast (MOSPF) usa a topologia construda para OSPF unicastHierarquia suporta hierarquia de ns em domnios de larga dimenso Um AS pode ser configurado em reas, cada rea corre o seu alg. OSPFCaracteristicas avanadas no existentes no RIPCaractersticas do OSPF 30. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica30 Camada de RedeHierarquia no OSPFHierarquia em dois nveis - arealocal, backbone. anncios do estado das ligaescirculam apenas numa rea cada n tem conhecimento detalhadoda rea em que se insere; cada n conhece apenas a direcopara as redes noutras reas.Ns de fronteira de rea (Areaborder routers): conhecem asdistncias para as redes na sua reae anunciam para os restantes ns defronteira de reaNs do backbone: executam oprotocolo OSPF apenas no conjuntodos ns do mesmo tipo 31. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica31 Camada de RedeEncaminhamento Inter-ASEncaminhamento Inter-AS na Internet BGP (Border Gateway Protocol)BGP4: standard, verso 4 [RFC 1771, e tambm RFCs 1772, 1773]BGP fornece a cada AS meios de:1. Obter informao sobre alcane desub-redes a partir de informaorecebida de ASs vizinhos2. Propagar informao sobre alcanede outras subredes para todos osrouters internos ao AS3. Determinar bons caminhos parasub-redes a partir de informaosobre alcane e polticas do ASPermite que uma sub-rede anunciea sua existncia para o resto daInternet: Estou aqui! destinos no so mquinas so prefixos CDIR, cada representandouma subrede ou colecco de subredes 32. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica32 Camada de RedeFundamentos do BGPPar de routers (pares BGP) trocaminformao de encaminhamentoatravs de ligaes TCP semi-permanentes: sesses (e/i)BGP sesses BGP no correspondem aligaes fsicasQuando um AS2 anuncia umprefixo para AS1, AS2 est aprometer que vai enviar queleprefixo quaisquer datagramasdestinados ao mesmo AS2 pode agregar prefixos nosseus annciosDistribuio da Informao sobre AlcanceCom sesso eBGP 3a-to-1c, AS3envia informao sobre alcane deprefixos para AS11c pode usar iBGP para distribuirnova informao de alcance deprefixo para todos os routers AS11b pode reanunciar a novainformao de alcance para AS2atravs da sesso eBGP 1b-to-2aQuando um router aprende sobre umnovo prefixo, cria uma entrada para oprefixo na sua tabela deencaminhamento3b1d3a1c 2aAS3AS1 AS21a2c2b1b3ceBGP sessioniBGP session 33. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica33 Camada de RedeBGP (Border Gateway Protocol)Protocolo de vector de caminhos(Path vector protocol)Semelhante ao protocolo devector de distnciasCada n da fronteira de umAS envia aos seus vizinhos(tambm fronteiras de AS) oscustos atravs dele paracada destino incluindo adescrio do caminho(sequncia de ns visitados) e.g. o n X envia o caminhoque conhece para o destinoZ:Path (X,Z) = X,Y1,Y2,Y3,,ZExemplos: o n X envia um caminho conhecidoao n WW pode ou no escolher o caminhoanunciado com base em Custo Convenincias comerciais/polticas Critrios tcnicos: evitar caminhos fechadosSe W aceita o caminho comunicado por X,ento anuncia aos vizinhos:Path (W,Z) = (w,x), Path (X,Z)Um n pode controlar o trfego queencaminha escolhendo os anncios quefaz e.g. no quer encaminhar trfego para Y no anuncia nenhum caminho para YProtocolo muito complexo 34. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica34 Camada de RedeAtributos do CaminhoQuando um prefixo anunciado, o anncio inclui atributosBGP. prefixo + atributos = caminhoDois atributos importantes: AS-PATH: contm os ASs pelos quais o anncio para o prefixopassou: AS 67 AS 17 NEXT-HOP: indica o router especfico, interno ao AS, que levaao AS do prximo saltoPode haver mltiplas ligaes do AS actual ao AS do prximo saltoQuando um router de fronteira recebe um anncio decaminho, usa a poltica de importao (import policy) paraaceitar/declinar 35. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica35 Camada de RedeSeleco do CaminhoRouter pode aprender sobre mais de 1 caminhopara algum prefixo de uma subrede deve selecionar o caminhoRegras de eliminao1. Valor do atributo preferncia local associado aocaminho: deciso poltica2. Menor AS-PATH3. Router NEXT-HOP mais prximoroteamento batata quente - escolhe AS com orouter fronteira que tem o caminho de menor custo4. Critrios adicionais 36. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica36 Camada de RedeBGP troca mensagens usando o protocolo TCP porto 179Mensagens BGP OPEN: inicia a ligao TCP e envia autenticao do emissor UPDATE: anncio de caminhos KEEPALIVE: mantm uma ligao aberta na ausncia demensagens de UPDATE; usada para responder mensagemOPEN NOTIFICATION: reporta erros em mensagens anteriores;usada para fechar uma ligaoMensagens BGP 37. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica37 Camada de RedePolticas de Encaminhamento BGPA,B,C so redes de fornecedoresX,W,Y so clientes das redes de fornecedoresX com duas interfaces (multi-homed)ligadas a duas redes X no vai encaminhar de B para C ... para tal, X no vai anunciar a B ocaminho para CA anuncia para B o caminho AWB anuncia para X o caminho BAWB no anuncia para C caminho BAW B no obtm lucro peloencaminhamento CBAW, j quenem W ou C so clientes de B B quer C a encaminhar para W via A B quer encaminhar apenas para/dosseus clientesABCWXYlegendaredeclienteredeprovedor 38. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica38 Camada de RedeConsideraes de EscalaEncaminhamento hierrquico poupa espao nas tabelas de encaminhamento eeconomiza mensagens de actualizao das condies da redeFlexibilidade: se dominio (AS) torna-se demasiado grande, pode ser divididoConsideraes polticasInter-AS: as administraes dos domnios querem controlar como e por onde oseu trfego encaminhado atravs da internet.Intra-AS: no tm em geral requisitos de natureza polticaConsideraes de desempenhoInter-AS: interesses polticos podem prevalecerIntra-AS: critrios tcnicos de velocidade e optimizao de recursosPorqu diferentes protocolosInter-AS e Intra-AS 39. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica39 Camada de RedeEncaminhamento naInternet - RevisoServios da camada de rede Circuitos virtuais DatagramasFuncionamento de um encaminhador (router)Camada de rede na Internet: o protocolo IPPrincpios de encaminhamento seleco de um caminhoOutros aspectos da camada de rede na Internet DHCP, NAT, ICMP, IPv6Encaminhamento hierrquicoEncaminhamento na Internet intra domnio inter domnioEncaminhamento multicastEncaminhamento Intra-ASna InternetRIP (Routing InformationProtocol)ExemploRIP: Falha de umaLigaoRIP: Processamento deTabelasOSPF (Open ShortestPath First)Caractersticas do OSPFHierarquia no OSPFEncaminhamento Inter-ASna InternetBGP (Border GatewayProtocol)MensagensProtocolos Inter vs Intra-ASEncaminhamento Intra-ASna InternetRIP (Routing InformationProtocol)ExemploRIP: Falha de umaLigaoRIP: Processamento deTabelasOSPF (Open ShortestPath First)Caractersticas do OSPFHierarquia no OSPFEncaminhamento Inter-ASna InternetBGP (Border GatewayProtocol)MensagensProtocolos Inter vs Intra-AS 40. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica40 Camada de RedeDuplicaona criaoduplicaoR1R2R3 R4Encaminhamento Unicast Ponto-a-PontoEncaminhamento Broadcast Envia pacotes de um n paratodos os outros ns na rede Duplicao na fonte ineficientee requer IPs de todos os destinosEncaminhamento Multicast entrega cpias do mesmo pacotea um grupo de receptores(subconjunto da rede)Broadcasting e o Multicasting Ponto-Multiponto: suportam, aonvel da camada de rede, aplica-es com vrios participantes:e.g., video on demand, interacti-ve games, software distribution. Broadcast no Gnutella, no OSPFEncaminhamento Broadcast- Duplicao na fonteMltiplas ligaes ponto a pontoversus ligao broadcast 41. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica41 Camada de RedeEncaminhamento Broadcast Duplicao dentro da redeInundao: quando n recebe pacotesde broadcast, envia cpia para todos osvizinhos Problemas: ciclos e tempestades debroadcastInundao controlada: n somente fazbroadcast com o pacote se j no o tiverfeito antes com o mesmo pacote N mantm lista sobre broadcastIDs dospacotes para os quais j fez broadcastDescarta pacotes recebidos, j na lista Segunda abordagem: envia pelo caminhoinverso (Reverse Path Forwarding - RPF)s re-encaminha pacote se chegou pelocaminho unicast mnimo entre n e fontervores minimas (spanning trees) Nenhum pacote redundante recebidopor outro nR1R2R3 R4Duplicao dentro da rededuplicaotransmissoduplicada 42. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica42 Camada de RedeABGDFCEABGDFCEBroadcast iniciado em A Broadcast iniciado em FSpanning TreesConstri-se uma rvore Uma spanning tree de um grafo G=(N,E) um grafo G=(N,E) E um subconjunto de E, G conectado e no contm ciclosNs encaminham cpias somente ao longo desta rvore (spanning tree)Minimum Spanning Tree rvore cujo custo (soma do custo dos ramos) ominimo de todos os grafos de spanning trees possveis 43. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica43 Camada de RedeABGDEcF12345Construo da rvorepasso-a-passoABGDEcFrvore construdaAboardagem Center-Based Define-se um n central Cada n envia mensagem de juntar ponto-a-ponto (unicast) para o n central Mensagem re-encaminhada at que chegue a um n j pertencente rvoreSpanning Tree ConstruoExemplo: N central E 44. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica44 Camada de Redeirouter com membrodo grupo ligadorouter sem membrosdo grupo multicastligadosligao usada para oenvio, i indica a ordemde adio da ligaopelo algoritmoLEGENDAR1R2R3R4R5R6 R72163 45S: fonteEnvio pelo Caminho Inversose (datagrama mcast recebido num canal de entrada no caminhomnimo de volta para a fonte)ento inunda o datagrama por todos os canais de sadaseno ignora o datagramaInformao no router de caminhos mnimos unicast dele para a fontecada router tem um comportamento de envio simples:rvore de Caminhos Minimos - rvore de encaminhamento mcastcomposta pelos caminhos mnimos da fonte para todos os receptoresReverse Path Forwarding RPF: Aboardagem Source-Based 45. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica45 Camada de Rede resultado uma rvore de caminho mnimo inversa especfica para a fonte- pode ser uma m escolha para ligaes de dados assimtricasR1R2R3R4R5R6 R7datagrama vai ser re-encaminhadoLEGENDAS: fontedatagrama no vai serre-encaminhadorouter com membro dogrupo ligadorouter sem membros dogrupo multicast ligadosExemplo Envio pelo Caminho Inverso(Reverse Path Forwarding) 46. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica46 Camada de Redervore de encaminhamento contm sub-rvores sem membros do grupo no h necessidade de enviar datagramas pelas sub-rvores mensagens de poda enviadas para trs pelo router sem nenhummembro do grupo para a frenteR1R2R3R4R5R6 R7mensagem de podaLEGENDAS: fonteligao com envio mcastPPProuter com membro dogrupo ligadorouter sem membros dogrupo multicast ligadosEnvio pelo Caminho Inverso- poda (pruning) 47. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica47 Camada de RedeEndereos de grupo e ProtocolosMulticastEndereos de grupo m-cast atribudosa todos os participantes no grupoA Internet usa endereos da classe Dpara m-casto 224.0.0.0 - 239.255.255.255Distribuio de endereos m-cast gerida pelo protocolo IGMPProtocolos para multicastLAN-to-router (ou host-to-router)IGMP, entre host local e o seu Router+Router-to-routerAlgoritmos multicasting da camada de redeCore Based Trees (CBT)ou, Center-Based approachSource Based TreesDistance Vector Multicast RoutingProtocol (DVMRP)Protocol Independent Multicast IGMP(PIM)Multicast Open Shortest Path First(MOSPF)Necessrio identificar subgrupo m-cast a que se destina a mensagem desnecessrio no Broadcastrouter commembro dogrupo ligadorouter sem membrosdo grupo ligados 48. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica48 Camada de RedeEncaminhamento Multicast LAN-to-routerProtocolo IGMPIGMP opera entre host local e seu router Tipicamente via a LAN (e.g., Ethernet)IGMP usa directamente o IP nmero de protocolo no IP: 2Router interroga queries os Hosts locaispor info sobre m-cast group membershipRouter liga Hosts activos rvore m-castvia um protocolo m-castHosts respondem com membership reportsHost envia leave-group msg para sair optional j que o router verificaperiodicamente (conceito soft state) leave-group causa sada imediataInternet Group Multicast Protocol v3 [RFC 3376]Tipos de Mensagens IGMPhost leaves thegrouphostleave group(opcional)host wants to joingrouphostmembershipreportquery for specificm-cast grouproutermembershipquery:specificquery for currentactive multicastgroupsroutermembershipquery:generalObjectivoEnviadoporIGMP msgtype 49. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica49 Camada de RedeEncaminhamento Multicastrouter-to-routerProblema: achar a rvoremelhor (e.g., menor custo) queinterliga todos os membroslocais do grupo mcast rvore: nem todos os caminhosentre routers so usadosrvore nica usada portodos os membros do grupoa raz (A) o CORE ou oponto Rendez Voustodas as mensagens vopelo CORECada fonte (A,B) a raz dasua prpria rvore porgrupo fazendo ligao comtodos os membrosrvore distinta de cadafonte para os receptoresOpes na construo de rvoresCORE-BASED/SHARED TREE(rvore Partilhada)SOURCE BASED TREE(rvore baseada na origem) 50. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica50 Camada de Redervore na fonte (source-based or source-rooted) vs rvore partilhada (shared tree)Partilhada Core-Based/Shared Tree grupo usa uma rvore nicarvore de custo mnimo (Steiner) rvore baseada em um centro rvores utilizam normalmente menosligaes (considerar minimo despanning tree vs. shortest path tree)Baseada na origem Source-Rooted uma rvore por fontervores de caminhos mnimos envio pelo caminho inverso nenhum ponto nico de falha singlepoint-of-failure (o CORE) menos trafego centralizado ( volta doCORE no caso da rvore partilhada)pacote enviado pelo caminho maiscurto para o receptorOpes de sinalizao para construir rvore Receiver-initiated: receptores enviammensagens para a origem. A rvore formada pelo caminho que as mensagensseguem at fonte. Broadcast & Prune: um n usa Reverse-Path Forwarding para fazer o broadcast darvore. Receptores fazem a poda da rvorecaso no queiram receber os dados Um router que recebe pacotes mcastmas no contm mquinas mcastligadas envia uma mensagem de podaao upstream router.Opes de sinalizao para construir rvore Receiver-initiated: receptores enviammensagens para a origem. A rvore formada pelo caminho que as mensagensseguem at fonte. Broadcast & Prune: um n usa Reverse-Path Forwarding para fazer o broadcast darvore. Receptores fazem a poda da rvorecaso no queiram receber os dados Um router que recebe pacotes mcastmas no contm mquinas mcastligadas envia uma mensagem de podaao upstream router. 51. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica51 Camada de Redervore de Steinerrvore de Steiner: rvore de custo mnimo ligandotodos os routers com membros locais do grupomcast problema NP-completo existem excelentes heursticas no usada na prtica:complexidade computacionalnecessita informaes sobre a rede inteiramonoltica: recalculada sempre que um router precisa seradicionado ou retirado 52. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica52 Camada de RedeExemplo: Assumir escolha do centro R6(anunciado por exemplo numa pgina web)ordem em que as mensagens dejuntar so geradasLEGENDA1R1R2R3R4R5R6 R7231router com membro do grupo ligadorouter sem membros do grupo ligadosrvores Partilhadasrvore de envio nica partilhada portodosum router eleito como centro da rvorepara juntar-se a um grupo: novos membros juntam-se e deixam arvore com mensagens explicitas decontrolo de juntar e libertar router de fora envia msg-juntar unicastendereada ao router central msg-juntar processada pelos routersintermedirios e encaminhada para o centro msg-juntar ou chega a um ramo da rvorej existente para este centro, ou chega aocentrocaminho seguido por msg-juntar torna-se umnovo ramo da rvore para este routerManuteno do caminho router downstream emite ECHO-REQUEST router upstream refresca o estado do canal e responde com ECHO-REPLYManuteno do caminho router downstream emite ECHO-REQUEST router upstream refresca o estado do canal e responde com ECHO-REPLY 53. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica53 Camada de RedeDVMRP foi o primeiro protocolo m-cast na InternetInicialmente - inundao: a fonte envia datagrama inicial por broadcastpara todos os routers (usando o caminho inverso (RPF - Reverse PathForwarding) - rvore baseada na fontervore RPF baseada em tabelas de encaminhamento prprias doDVMRP, construdas por meio da comunicao entre routers DVMRP nada assume sobre o encaminhamento unicast subjacenteMensagens de poda pruning fluem para cimaRouters sem hosts activos (nesse grupo m-cast) saem da rvoreRecursivamente, routers interiores sem descendentes activosremovem-se da rvore aps timeout (3 minutos na Internet)rvores Baseadas na Fonte DVMRP: Distance Vector Multicast Routing ProtocolEncaminhamento Multicast na Internet [RFC1075] 54. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica54 Camada de RedeTneisComo ligar ilhas de routers multicast num mar de routers unicast?datagrama mcast encapsulado dentro de um datagrama normalsem endereo multicastdatagrama IP normal enviado atravs de um tnel via IP unicast regularpara o router mcast receptorrouter mcast receptor desencapsula para obter datagrama mcastTopologia fsica Topologia lgica 55. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica55 Camada de RedeDenso (Dense Mode) Disperso (Sparse mode)rvores Baseadas na Fonte PIM: Protocol Independent Multicastmembros do grupo densamenteempacotados, em estreitaproximidaderequer maior disponibilidade delargura de bandanmero de redes com membros do grupopequeno em relao ao nmero de redesinterligadasmembros do grupo muito dispersosmenor disponibilidade de largura de bandano depende de nenhum algoritmo de encaminhamento unicastsubjacente (trabalha com todos)participao dos routers nosgrupos assumida at que osrouters se removam explicitamenteconstruo da rvore mcast ditadapelos dados (e.g., RPF)sem participao at que os routers sejuntem explicitamenteconstruo da rvore mcast ditada pelosreceptores (e.g., baseada em centro)Modos de distribuio multicast 56. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica56 Camada de RedeRPF com inundao e podaSemelhante ao DVMRPDiferena: uso das tabelas de encaminhamento unicastRouters que no esto no caminho de um membro do grupo enviammensagens de podaProtocolo de encaminhamento unicast subjacente fornece asinformaes referentes ao datagrama a chegar, necessrias ao RPFInundao menos complicada (menos eficiente) que a do DVMRPPossui mecanismo no protocolo para router detectar se n folhaPIM DM (Protocol IndependentMulticast - Dense Mode) 57. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica57 Camada de RedePIM - SM(Sparse Mode)abordagem baseada em centrorouter envia msg de juntar parao ponto de encontro(rendezvous point - RP) routers intermediriosactualizam estado eencaminham msg. de juntaraps se juntar via RP, routerpode mudar para rvorebaseada na fonte performance melhorada menos concentrao caminhos menoresR1R2R3R4R5R6R7juntarjuntarjuntarmulticast dos dadosa partir do pontode encontro (RP)ponto deencontrofonte(s):dados via router unicast para o RP,que os distribui ao longo da rvorecom raiz no RPRP pode estender rvore mcast paracima at a fonteRP pode enviar msg. parar p/ fonte seno houver receptores ligados ningum est a ouvir! 58. Artur ArsenioRedes de Computadores 2010/2011Departamento de Engenharia Informtica58 Camada de RedeServios da camada de rede Circuitos virtuais DatagramasFuncionamento de um encaminhador (router)Camada de rede na Internet: o protocolo IPPrincpios de encaminhamento seleco de um caminhoOutros aspectos da camada de rede na Internet DHCP, NAT, ICMP, IPv6Encaminhamento hierrquicoEncaminhamento na Internet intra domnio inter domnioEncaminhamento multicastEncaminhamentoBroadcast na InternetEncaminhamentoMulticast na InternetIGMPrvores Partilhadasrvores Baseadas naFonteDVMRP: Distance VectorMulticast Routing ProtocolPIM: Modo DensoPIM: Modo DispersoEncaminhamentoBroadcast na InternetEncaminhamentoMulticast na InternetIGMPrvores Partilhadasrvores Baseadas naFonteDVMRP: Distance VectorMulticast Routing ProtocolPIM: Modo DensoPIM: Modo DispersoEncaminhamento Multicast