SlideShare une entreprise Scribd logo
1  sur  119
Télécharger pour lire hors ligne
Universidade Federal da Paraíba
                              Centro de Ciências Aplicadas e Educação
                              Departamento de Ciências Exatas




      Redes de Computadores:
      Camada de Redes


                                         Prof. Rafael Marrocos Magalhães
                                                            rafael@dce.ufpb.br

    11 de Outubro de 2011                                                                                                 UFPB - CCAE - DCE


    Esta apresentação contém partes, ou mesmo slides inteiros, da apresentação original disponibilizada por J.F Kurose e K.W. Ross, com permissão para
                   utilização como material de apoio instrucional. E, conforme solicitação do original, incluí aqui a nota de direito autoral.

segunda-feira, 17 de outubro de 11                                                                                                                       1
Motivação

                                      Como os hosts
                                       se comunicam
                                     através das redes?




segunda-feira, 17 de outubro de 11                        2
Sumário
             Introdução
             Redes de circuitos virtuais e de datagramas
             O que há dentro de um roteador?
             O Protocolo da Internet (IP)
             Algoritmos de roteamento
             Roteamento na Internet


segunda-feira, 17 de outubro de 11                         3
Capítulo 4: desta Unidade 4
             Objetivos
           Camada de rede
          Objetivos do capítulo:
          !  entender os princípios por trás dos serviços da
                  camada de rede:
                    "      modelos de serviço da camada de rede
                    "      repasse versus roteamento
                    "      como funciona um roteador
                    "      roteamento (seleção de caminho)
                    "      lidando com escala
                    "      tópicos avançados: IPv6, mobilidade
          !  instanciação, implementação na Internet



segunda-feira, 17 de outubro de 11                                4
Sumário
             Introdução
             Redes de circuitos virtuais e de datagramas
             O que há dentro de um roteador?
             O Protocolo da Internet (IP)
             Algoritmos de roteamento
             Roteamento na Internet


segunda-feira, 17 de outubro de 11                         5
Camada
Camada de rede
  Camada de rede                      de Rede
!  !  segmento detransporte do
   segmento de transporte do             aplicação
                                              aplicação
      hosp. emissorao receptor
                    ao receptor
                                        transporte

   hosp. emissor
                                             transporte
                                           rede
                                          enlace rede

    !  o lado emissor encapsula
                                                enlace
                                           física

!  o lado emissor encapsula
                                              física

      segmentos em datagramas
                                                            rede        rede
                                                           enlace redeenlace rede
   segmentos em datagramas                   rede
                                            enlace
                                                           física      física
                                                                  enlace      enlace
   !  o lado receptor entre
                                                  rede
                                            física            física rede física
                                                enlace rede
!  o lado receptor entre
                                                                     enlace
                                                física enlace rede
      segmentos à camada de                            física
                                                              enlace
                                                                     física rede
                                                                            enlace
   segmentos à camada de
      transporte                                          rede
                                                              física        física
                                                                               rede

   transporte
                                                         enlace               enlace

   !  protocolos da camada de
                                                         física               física
                                                                   rede
                                                                    rede                rede
                                                                  enlace
                                                                   enlace              enlace
      rede em cada hosp.,
!  protocolos da camada de
                                                                   física
                                                                  física
                                                                             rede
                                                                                       física
                                                                                           aplicação
                                                                            enlace
      roteador
                                                          rede

   rede em cada hosp.,
                                                                                          transporte
                                                         enlace             física           rede
                                                                        rede
                                            rede         física        enlace               enlace aplicação

   !  roteador examina campos
   roteador                                enlace
                                           física
                                                                  rede física
                                                                  enlace
                                                                                             física transporte
                                                                                                      rede
                                                                                  rede
      de cabeçalho em todos os                  rede              física         enlace              enlace

!  roteador examina campos                     enlace                            física              física

      datagramas IP que passam                 física

   depor ele
       cabeçalho em todos os
   datagramas IP que passam
   por ele
 segunda-feira, 17 de outubro de 11                                                                           6
Duas funçõesda entrada
                                                 !  repasse: mover
                                             pacotes
                                                                                    an

                                do roteador para a                                  ! 
       Duas importantes funções saída apropriada do
       da camada de rede        roteador

    !  repasse: mover                             !  roteamento:
                                             analogia:
          pacotes da entrada                         determinar rota                ! 

          do roteador para a
          saída apropriada do
                                             X
                                             !  roteamento: processo
                                                     seguida pelos pacotes
                                                de planejamento da
                                                     da origem ao destino
          roteador                              viagem da origem ao
                                                      "  algoritmos de roteamento
                                                destino
    !  roteamento:
          determinar rota                    !  repasse: processo de
          seguida pelos pacotes                passar por um único
          da origem ao destino                 cruzamento
            "     algoritmos de roteamento
segunda-feira, 17 de outubro de 11                                                   7
analogia:

! 
                      Analogia
     roteamento: processo funções
       Duas importantes
   deda camada de rede
       planejamento da
   viagem da origem ao
   destino
    !  repasse: mover                             analogia:
       pacotes da entrada
!  repasse: processo de                           !  roteamento: processo
       do roteador para a
   passar por um único do                           de planejamento da
       saída apropriada
   cruzamento
       roteador
                                             X      viagem da origem ao
                                                    destino
        !  roteamento:
               determinar rota                    !  repasse: processo de
               seguida pelos pacotes                passar por um único
               da origem ao destino                 cruzamento
                 "     algoritmos de roteamento
segunda-feira, 17 de outubro de 11                                          8
e repasse
                                                 algoritmo de roteamento
       Interação
         entre                                     tabela de repasse local

       repasse e                                  valor do cab. enlace saída
                                                          0100   3
      roteamento                                          0101
                                                          0111
                                                                 2
                                                                 2
                                                          1001   1



                                     valor no cab. do
                                     pacote chegando

                                                        0111               1

                                                                       3 2




segunda-feira, 17 de outubro de 11                                             9
Estabelecimento de conexão
          Estabelecimento de conexão

         !  3a função importante em   algumas arquiteturas de rede:
             "  ATM, frame relay, X.25
         !  antes que os datagramas fluam, dois hospedeiros finais
            e roteadores entre eles estabelecem conexão virtual
             "  roteadores são envolvidos
         !  serviço de conexão da camada de rede versus
            transporte:
             "  rede: entre dois hospedeiros (também pode
                envolver roteadores entre eles, no caso de VCs)
             "  transporte: entre dois processos



segunda-feira, 17 de outubro de 11                                    10
Modelos de serviços
        Modelo de serviço de rede
        Modelo de de serviço de rede
          Modelo serviço de rede
        P: Que modelo de serviço é o melhor para o “canal” que
       P: QueQue modelo serviçodoo é o melhor para“canal” que
            P: modelo de de serviço melhor para
        transporta datagramas é remetente aoodestinatário?
                                                      o “canal” que
       transporta datagramas do remetente ao ao destinatário?
            transporta datagramas do remetente destinatário?
       exemplo de serviços para       exemplo de serviços para
          datagramas serviços para exemplo de de serviços para
      exemplo de serviços para
           exemplo de                   exemplo serviços para
                                         fluxo de datagramas:
         datagramas
              datagramas
          individuais:                 fluxo de de datagramas:
                                           fluxo datagramas:
                                      !  entrega de datagrama
         individuais:
              individuais:          !  entrega de de datagrama
                                        !  entrega datagrama
                                         na ordem
       !  entrada garantida
      !  entrada garantida
           !  entrada garantida        na ordem
                                           na ordem
       !  entrega garantida com       !  largura de banda
           !  entrega garantida com !  largura de de banda
      !  entrega limitado com
                   garantida            !  largura banda
                                         mínima garantida
          atraso                           mínima garantida
                                       mínima garantida
              atraso limitado
         atraso limitado
                                      !  restrições sobre
                                        !  restrições sobre
                                    !  restrições sobre
                                         mudanças no
                                       mudanças no no
                                           mudanças
                                         espaçamento entre
                                           espaçamento entre
                                       espaçamento entre
                                         pacotes
                                           pacotes
                                       pacotes


segunda-feira, 17 de outubro de 11                                    11
Modelos de serviço da
          Modelos de
 camada de rede:                     serviços




segunda-feira, 17 de outubro de 11              12
Sumário
             Introdução
             Redes de circuitos virtuais e de datagramas
             O que há dentro de um roteador?
             O Protocolo da Internet (IP)
             Algoritmos de roteamento
             Roteamento na Internet


segunda-feira, 17 de outubro de 11                         13
Serviço com e sem sem conexão
                 Serviço com e conexão
                 da camada de rede
                 !  rede de datagrama fornece serviço sem
                    conexão da camada de rede
                 !  rede VC fornece serviço com conexão da
                    camada de rede
                 !  análogo aos serviços da camada de
                    transporte, mas:
                          "  serviço:
                                    hospedeiro a hospedeiro
                          "  sem escolha: a rede oferece um ou outro
                          "  implementação: no núcleo da rede



segunda-feira, 17 de outubro de 11                                     14
Circuitos virtuais
                          Circuitos Virtuais
                Circuitos virtuais
             “Caminho da origem ao destino comporta-se como um
               circuito telefônico” destino comporta-se como um
                “Caminho da origem ao
                          com respeito ao desempenho
                       "  circuito telefônico”
                       "  ações da redeao desempenho caminho
                          "  com respeito ao longo do                      da origem ao destino
                               "     ações da rede ao longo do caminho da origem ao destino

        !  estabelecimento e término para cada chamada antes que os
            !  estabelecimento e término para cada chamada antes que os
           dados possam fluir
               dados possam fluir
        !  cada pacote carrega identificador VC (não(não endereço do
            !  cada pacote carrega identificador VC endereço do
           hospedeiro de destino)
               hospedeiro de destino)
            !  cada roteador no caminho origem-destino mantém “estado”
        !  cada roteador no caminho origem-destino mantém “estado”
               para cada conexão que estiver passando
           para cada conexão que estiver passando
            !  recursos do enlace e roteador (largura de banda, buffers)
        !  recursos ser enlace e roteador (largura de = serviço buffers)
               podem do alocados ao VC (recursos dedicados banda,
           podem ser alocados ao VC (recursos dedicados = serviço
               previsível)
                previsível)


segunda-feira, 17 de outubro de 11                                                                15
Implementação
               Implementação do VC                         do CV
               um VC consiste em:
                        1.       caminho da origem ao destino
                        2.       números de VC, um número para cada enlace ao
                                 longo do caminho
                        3.       entradas em tabelas de repasse nos
                                 roteadores ao longo do caminho
               !  pacote pertencente ao VC carrega número
                  do VC (em vez do endereço de destino)
               !  número do VC pode ser alterado em cada
                  enlace
                        "        novo número de VC vem da tabela de repasse


segunda-feira, 17 de outubro de 11                                              16
Tabela de
   Tabela de repasse                    número do VC
                  repasse                                    22
                                             12                   32

                                                 1       3
                                                     2

   tabela de repasse no              número da
   roteador noroeste:                interface




        Roteadores mantêm informação de estado da conexão!

segunda-feira, 17 de outubro de 11                                     17
Circuitos virtuais:
     CircuitosProtocolos de sinalização
         CV:  virtuais:
        protocolos de sinalização
        protocolos de sinalização
      !  usados para estabelecer, manter e manter e terminar
          !  usados para estabelecer, terminar VC                  VC
          !  usados em ATM, frame-relay,
      !  usados em ATM, frame-relay, X.25         X.25
      !      não usados na Internet de hoje de hoje
              !  não usados na Internet




       aplicação
                  5. Fluxo de dados iniciado      6. Recebe dados aplicação
            aplicação
      transporte
         rede             5. Fluxo de dados iniciado
                  4. Chamada conectada                         6. transporte
                                                3. Chamada aceita Recebe dados
          transporte                                                 rede
        enlace    1. Inicia chamada          2. Chamada chegando
               rede       4. Chamada conectada               3. Chamada aceita
                                                                    enlace
         física
              enlace 1. Inicia chamada                   2. Chamada chegando
                                                                     física
                       física


segunda-feira, 17 de outubro de 11                                          18
RedesRedes de Datagramas
             de datagrama
        !  sem estabelecimento de chamada
           na camada de rede
        !  roteadores: sem estado sobre conexões fim a fim
                 "     sem conceito em nível de rede da “conexão”
        !  pacotes repassados usando endereço do hospedeiro
               de destino
                 "     pacotes entre mesmo par origem-destino podem tomar
                       caminhos diferentes

         aplicação                                                        aplicação
        transporte                                                       transporte
           rede    1. Envia dados                        2. Recebe dados    rede
          enlace                                                           enlace
           física                                                           física



segunda-feira, 17 de outubro de 11                                                    19
Tabela de repasse
            Tabela de
             repasse                                         4 bilhões de entradas
                                                             possíveis
                             Faixa de endereços de destino        Interface de enlace!

           11001000 00010111 00010000 00000000
                           até                                           0
           11001000 00010111 00010111 11111111!

           11001000 00010111 00011000 00000000
                          até                                            1
           11001000 00010111 00011000 11111111 !

           11001000 00010111 00011001 00000000
                          até                                           2
           11001000 00010111 00011111 11111111 !

                                     senão                               3!

segunda-feira, 17 de outubro de 11                                                       20
Tabela de        Otimização por prefixo
 oncordância do prefixo mais longo
    repasse
mais longo

             Concordância do prefixo    Interface do enlace
        11001000 00010111 00010              0
        11001000 00010111 00011000           1
        11001000 00010111 00011              2
                  senão                      3!


     Exemplos

    DA: 11001000 00010111 00010110 10100001        Qual interface?


     DA: 11001000 00010111 00011000 10101010       Qual interface?

 segunda-feira, 17 de outubro de 11                                  21
Redes de datagramas
     Rede dede datagramas VC:VC:
       Rede datagramas ou ou                         ou CV?
     por quê?
       por quê?
 Internet (datagrama)
    Internet (datagrama)             ATM (VC)(VC)
                                        ATM
 !  troca de dados entre             !  evoluída da telefonia
     !  troca de dados entre              !  evoluída da telefonia
    computadores
        computadores                 !  conversação humana:
                                          !  conversação humana:
     "  serviço “elástico”, sem          "  requisitos de
         "  serviço “elástico”, sem           "  requisitos de
        requisitos de temporização          temporização estritos,
            requisitos de temporização           temporização estritos,
        estritos                            confiabilidade
            estritos                             confiabilidade
 !  sistemas finais                      "  necessário para serviço
     !  sistemas finais                       "  necessário para serviço
    “inteligentes” (computadores)           garantido
        “inteligentes” (computadores)            garantido
     "  pode adaptar, realizar       !  sistemas finais “burros”
         "  pode adaptar, realizar        !  sistemas finais “burros”
        controle, recup. de erros
            controle, recup. de erros "  telefones
     "  simples dentro da rede,               "  telefones
         "  simples dentro da rede,      "  complexidade dentro da
        complexidade na “borda”
            complexidade na “borda”         rede complexidade dentro da
                                              " 
 !  muitos tipos de enlace                       rede
     !  muitos tipos de enlace
     "  diferentes características
         "  diferentes características
     "  serviço uniforme difícil
         "  serviço uniforme difícil
segunda-feira, 17 de outubro de 11                                         22
Sumário
             Introdução
             Redes de circuitos virtuais e de datagramas
             O que há dentro de um roteador?
             O Protocolo da Internet (IP)
             Algoritmos de roteamento
             Roteamento na Internet


segunda-feira, 17 de outubro de 11                         23
Visão geral da arquitetura
  Visão geral da arquitetura do Roteador
do roteador
Duas funções principais do roteador:
!  executar algoritmos/protocolo de roteamento (RIP, OSPF, BGP)
!       repassar datagramas do enlace de entrada para saída




segunda-feira, 17 de outubro de 11                            24
Funções da porta de entrada
                 A porta de entrada



        Camada física:
      recepção por bit
    Camada de enlace                 Comutação descentralizada:
            de dados:                !  dado destino do datagrama, porta de
      p. e., Ethernet                   saída de pesquisa usando tabela de
                                        repasse na memória da porta de entrada
       ver Capítulo 5
                                     !  objetivo: processamento completo da
                                        porta de entrada na ‘velocidade de linha’
                                     !  fila: se datagramas chegarem mais
                                        rápido que taxa de repasse no elemento
                                        de comutação

segunda-feira, 17 de outubro de 11                                                  25
Comutação por memória
      Comutação por memória
      Roteadores de primeira geração:
      !  computadores tradicionais com a comutação via
       controle direto da CPU
      !  pacote copiado para a memória do sistema
      !  velocidade limitada pela largura de banda da
       memória (2 travessias de barramento por datagrama)
                                     porta     memória   porta
                                     entrada             saída




                                                                 Barramento do sistema



segunda-feira, 17 de outubro de 11                                                       26
Comutação por um
                             barramento
                         Comutação por barramento

                         !  datagrama da memória da porta de
                            entrada à memória da porta de saída
                            por um barramento compartilhado
                         !  disputa pelo barramento: velocidade
                            da comutação limitada pela largura de
                            banda do barramento
                         !  barramento Cisco 5600 de 32 Gbps:
                            velocidade suficiente para roteadores
                            de acesso e corporativos


segunda-feira, 17 de outubro de 11                                  27
Comutação por rede de
         Comutação por uma rede de
                    interconexão
         interconexão

          !  contorna limitações de largura de banda do
             barramento
          !  redes Banya, outras redes de interconexão
             desenvolvidas inicialmente para conectar
             processadores no multiprocessador
          !  projeto avançado: fragmenta datagrama em células
             de tamanho fixo, comuta células através do
             elemento de comutação
          !  Cisco 12000: comuta 60 Gbps através da rede de
             interconexão



segunda-feira, 17 de outubro de 11                              28
A porta de saída
       Portas de saída




       !  Buffering exigido quando os datagramas chegam do elemento
          de comutação mais rápido que a taxa de transmissão
       !  Disciplina de escalonamento escolhe entre os datagramas
          enfileirados para transmissão



segunda-feira, 17 de outubro de 11                                    29
Enfileiramento na porta
       Enfileiramento da porta de saída
     de saída




     !  buffering quando a taxa de chegada via comutador excede a
        velocidade da linha de saída
     !  enfileiramento (atraso) e perda devidos a estouro de buffer na
        porta de saída!
segunda-feira, 17 de outubro de 11                                       30
Enfileiramento da porta
   Enfileiramento da porta de entrada
   de entrada
  !  elemento de comutação
     mais lento que portas de
     entrada combinadas ->
     enfileiramento possível nas
     filas de entrada
  !  bloqueio de cabeça de fila
     (HOL) : datagrama
     enfileirado na frente da
     fila impede que outros na
     fila sigam adiante
  !  atraso de enfileiramento
     e perda devidos a estouro
     no buffer de entrada


segunda-feira, 17 de outubro de 11     31
Sumário
             Introdução
             Redes de circuitos virtuais e de datagramas
             O que há dentro de um roteador?
             O Protocolo da Internet (IP)
             Algoritmos de roteamento
             Roteamento na Internet


segunda-feira, 17 de outubro de 11                         32
A camada de rede da
          A camada de rede da Internet
     Internet
        Funções na camada de rede do hospedeiro e roteador:

                                                 Camada de transporte: TCP, UDP


                                     prots. roteamento               protocolo IP
                                     • seleção caminho               • convs. de endereçamento
                                     • RIP, OSPF, BGP                • formato de datagrama
  Camada                                                             • convs. manuseio de pacote
  de rede                                                tabela de
                                                                     protocolo ICMP
                                                          repasse    • informe de erro
                                                                     • “sinalização” do roteador

                                                         Camada de enlace

                                                           Camada física

segunda-feira, 17 de outubro de 11                                                                 33
do datagrama IP
                          O formato do datagrama IP


                                      Formato do datagrama IP




                                      Quanto overhead com TCP?

d com TCP?                            !  20 bytes de TCP
                                      !  20 bytes de IP

TCP                                   !  = 40 bytes + overhead da camada de aplicação

 segunda-feira, 17 de outubro de 11                                                     34
Fragmentação
      Fragmentação e reconstrução do IP
   e reconstrução do IP
!  enlaces de rede têm MTU
   (tamanho máx. transferência) –
   maior quadro em nível de enlace
   possível.
    "  diferentes tipos de enlace,
       diferentes MTUs
!  grande datagrama IP dividido
   (“fragmentado”) dentro da rede
    "  um datagrama torna-se
       vários datagramas
    "  “reconstruído” somente no
       destino final
    "  bits de cabeçalho IP usados
       para identificar, ordenar
       fragmentos relacionados

segunda-feira, 17 de outubro de 11        35
Exemplo de/fragmentação

                                                       tam.    ID fragflag desloc.
 Exemplo                                                = 4000 = x   =0      =0
 !  datagrama de 4000
                                                      Um datagrama grande torna-se
    bytes                                             vários datagramas menores
 !  MTU = 1500 bytes
                                                            tam.    ID fragflag desloc.
                                                             = 1500 = x   =1      =0
    1480 bytes no
    campo de dados                                          tam.    ID fragflag desloc.
                                                             = 1500 = x   =1     = 185
                                     deslocamento =
                                     1480/8                 tam.    ID fragflag desloc.
                                                             = 1040 = x   =0     = 370




segunda-feira, 17 de outubro de 11                                                        36
Endereçamento genérico
                           Prática em sala de aula!




segunda-feira, 17 de outubro de 11                    37
Endereçamento
        Endereçamento IP:                          IP: Introdução
        introdução
                                                       223.1.1.1

     !  endereço IP:                                                            223.1.2.1
        identificador de 32                            223.1.1.2
                                                              223.1.1.4   223.1.2.9
        bits para interface de
        hospedeiro e roteador                         223.1.1.3    223.1.3.27
                                                                                223.1.2.2

     !  interface: conexão
        entre hospedeiro/
        roteador e enlace físico                       223.1.3.1                223.1.3.2
              "     roteadores normalmente
                    têm várias interfaces
              "     hospedeiro normalmente
                    tem uma interface      223.1.1.1 = 11011111 00000001 00000001 00000001
              "     endereços IP associados               223       1        1        1
                    a cada interface

segunda-feira, 17 de outubro de 11                                                           38
Endereçamento IP: sub-redes
Sub-redes
!  endereço IP:                              223.1.1.1

    "  parte da sub-rede (bits                                     223.1.2.1
                                             223.1.1.2
       de alta ordem)                               223.1.1.4   223.1.2.9
    "  parte do host (bits de
       baixa ordem)                         223.1.1.3
                                                                       223.1.2.2
                                                          223.1.3.27
!      O que é uma sub-rede?
                                                                 sub-rede
         "      dispositivo se conecta à
                mesma parte da sub-           223.1.3.1                223.1.3.2
                -rede do endereço IP
         "      pode alcançar um ao
                outro fisicamente sem
                roteador intermediário     rede consistindo em 3 sub-redes


segunda-feira, 17 de outubro de 11                                                 39
Endereçamento IP: endereço rede(sub)
                                        223.1.1.0/24
                                                               223.1.2.0/24
   Receita
   !  para determinar as
      sub-redes, destaque
      cada interface de seu
      hospedeiro ou
      roteador, criando ilhas
      de redes isoladas.
      Cada rede isolada é
      denominada sub-red

                                                223.1.3.0/24
                                     Máscara de sub-rede: /24
segunda-feira, 17 de outubro de 11                                            40
223.1.1.2

  Quantas
Quantas?                                            223.1.1.1                    223.1.1.4
     sub-redes
      existem                                                      223.1.1.3

       aqui?                                             223.1.9.2         223.1.7.0

                     6
                                             223.1.9.1                                  223.1.7.1
                                                             223.1.8.1   223.1.8.0

                                                 223.1.2.6                           223.1.3.27

                                     223.1.2.1               223.1.2.2   223.1.3.1            223.1.3.2


segunda-feira, 17 de outubro de 11                                                                        41
Endereçamento IP: CIDR CIDR
             Endereçamento IP:
     CIDR: Classless InterDomain Routing (roteamento
       interdomínio sem classes)
               "  parte de sub-rede do endereço de tamanho
                  arbitrário
               "  formato do endereço: a.b.c.d/x, onde x é # bits na
                  parte de sub-rede do endereço


                                     parte de            parte do
                                     sub-rede             hosp.
                         11001000 00010111 00010000 00000000
                                        200.23.16.0/23
segunda-feira, 17 de outubro de 11                                     42
Endereços IP:
       Endereçamento IP: como configurar?
       como obter um?

       P: Como um hospedeiro obtém endereço IP?

       !  fornecido pelo administrador do sistema em um
          arquivo
           "  Windows: painel de controle->rede
              ->configuração->tcp/ip->propriedades
           "  UNIX: /etc/rc.config
       !  DHCP: Dynamic Host Configuration Protocol: recebe
          endereço dinamicamente do servidor
           "  “plug-and-play”


segunda-feira, 17 de outubro de 11                            43
DHCP: Dynamic Host Configuration Protocol
    DHCP: Dynamic Host
   Configuration Protocol
   Objetivo: permitir que o hospedeiro obtenha dinamicamente
     seu endereço IP do servidor de rede quando se conectar à
     rede
            pode renovar seu prazo no endereço utilizado
            permite reutilização de endereços (só mantém endereço enquanto
              conectado e “ligado”)
            aceita usuários móveis que queiram se juntar à rede (mais adiante)
   Visão geral do DHCP:
            "  host broadcasts “DHCP discover” msg [optional]
            "  servidor DHCP responde com msg “DHCP offer” [opcional]
            "  hospedeiro requer endereço IP: msg “DHCP request”
            "  servidor DHCP envia endereço: msg “DHCP ack”


segunda-feira, 17 de outubro de 11                                               44
CP – cenário
        DHCP: cenário cliente/servidor
nte/servidor

                A         223.1.1.1      servidor          223.1.2.1
                                           DHCP
                            223.1.1.2
                                  223.1.1.4   223.1.2.9
                B
                                                    223.1.2.2          cliente DHCP
                       223.1.1.3      223.1.3.27                E      chegando precisa de
                                                                       endereço nesta rede
                         223.1.3.1                 223.1.3.2




 segunda-feira, 17 de outubro de 11                                                          45
DHCP: cenário cliente/servidor
             servidor DHCP: 223.1.2.5                   Descoberta DHCP

                                                         src : 0.0.0.0, 68
                                                         dest.: 255.255.255.255,67      cliente
                                                         yiaddr: 0.0.0.0               chegando
                                                         transaction ID: 654

                                                          Oferta DHCP
                                                           src: 223.1.2.5, 67
                                                           dest: 255.255.255.255, 68
                                                           yiaddrr: 223.1.2.4
                                                           transaction ID: 654
                                                           Lifetime: 3600 secs
                                     Solicitação DHCP
                                      src: 0.0.0.0, 68
                                      dest:: 255.255.255.255, 67
                                      yiaddrr: 223.1.2.4
                                      transaction ID: 655
                            tempo     Lifetime: 3600 secs

                                                         DHCP ACK
                                                           src: 223.1.2.5, 67
                                                           dest: 255.255.255.255, 68
                                                           yiaddrr: 223.1.2.4
                                                           transaction ID: 655
                                                           Lifetime: 3600 secs

segunda-feira, 17 de outubro de 11                                                                46
DHCP: não apenas o endereço IP
            DHCP:
            mais do que endereço IP

            DHCP pode retornar mais do que apenas o
             endereço IP alocado na sub-rede:
                      "  endereço    do roteador do primeiro salto para o
                         cliente
                      "  nome e endereço IP do servidor DNS
                      "  máscara de rede (indicando parte de rede
                         versus hospedeiro do endereço)



segunda-feira, 17 de outubro de 11                                          47
DHCP: exemplo maior
        DHCP: exemplo

                DHCP          DHCP                           !  conexão de laptop precisa do
                DHCP           UDP                              seu endereço IP, endereço do
                                IP
                                                                roteador do primeiro salto,
                DHCP

                DHCP           Eth
                               Phy                              endereço do servidor DNS:
                            DHCP                                use DHCP
                                                             !  solicitação DHCP encapsulada
                                                                no UDP, encapsulada no IP,
                                     DHCP
                      DHCP
                                                 168.1.1.1      encapsulado no Ethernet
                      DHCP            UDP
                      DHCP             IP                       802.1
                     DHCP             Eth   roteador         !  broadcast de quadro
                                      Phy   (roda DHCP)         Ethernet (dest: FFFFFFFFFFFF)
                                                                na LAN, recebido no roteador
                                                                rodando DHCP
                                                             !  Ethernet demultiplexado para
                                                                IP demultiplexado, UDP
                                                                demultiplexado para DHCP

segunda-feira, 17 de outubro de 11                                                              48
DHCP: exemplo maior

                                DHCP
                   DHCP
                                     UDP                        !  servidor DCP formula
                   DHCP
                                                                   DHCP ACK contendo
                   DHCP              IP                            endereço IP do cliente,
                                     Eth
                                                                   endereço IP do
                                                                   roteador do primeiro
                   DHCP

                                     Phy                           salto para cliente, nome
                                                                   & endereço IP do
                        DHCP
                                      DHCP                         servidor DNS
                         DHCP                                   !  encapsulamento do
                                       UDP
                                                                   servidor DHCP, quadro
                         DHCP
                                           IP     roteador         repassado ao cliente,
                        DHCP
                         DHCP             Eth
                                                  (roda DHCP)      demultiplexando para
                                          Phy
                                                                   DHCP no cliente
                                                                !  cliente agora sabe seu
                                                                   endereço IP, nome e
                                                                   endereço IP do servidor
                                                                   DSN, endereço IP do seu
                                                                   roteador do primeiro salto
segunda-feira, 17 de outubro de 11                                                              49
Endereçamento IP: como obter?
      Endereços IP:
      como obter um?
        P: Como a rede obtém a parte de sub-rede do endereço
           IP?
        R: Recebe parte alocada do espaço de endereços do seu
           ISP

          Bloco do ISP
          Bloco do ISP               11001000 00010111 00010000 00000000 200.23.16.0/20
                                     11001000 00010111 00010000 00000000 200.23.16.0/20

          Organização 0
          Organização 0              11001000
                                     11001000 00010111
                                              00010111   00010000
                                                         00010000 00000000
                                                                   00000000   200.23.16.0/23
                                                                               200.23.16.0/23
          Organização 1
          Organização 1              11001000
                                     11001000 00010111
                                              00010111   00010010
                                                         00010010 00000000
                                                                   00000000   200.23.18.0/23
                                                                               200.23.18.0/23
          Organização 2
          Organização 2              11001000
                                     11001000 00010111
                                              00010111   00010100
                                                         00010100 00000000
                                                                   00000000   200.23.20.0/23
                                                                               200.23.20.0/23
           ...
            ...                                …..
                                                …..                    ….
                                                                       ….           ….
                                                                                    ….
          Organização 7
          Organização 7              11001000 00010111
                                     11001000 00010111   00011110 00000000
                                                         00011110 00000000    200.23.30.0/23
                                                                              200.23.30.0/23



segunda-feira, 17 de outubro de 11                                                              50
Endereçamento hierárquico:
 Endereçamento hierárquico: agregação de rota
agregação de rota
           Endereçamento hierárquico permite anúncio eficiente da informação de
           roteamento:


        Organização 0
               200.23.16.0/23
        Organização 1
                                                                “Envie-me qualquer
                200.23.18.0/23                                  coisa com endereços
        Organização 2                                           começando com
                200.23.20.0/23           .   Fly-By-Night-ISP   200.23.16.0/20”
                                         .
                                     .   .                                             Internet
                                     .
        Organização 7                .
              200.23.30.0/23
                                                                 “Envie-me qualquer
                                               ISPs-R-Us
                                                                 coisa com endereços
                                                                 começando com
                                                                 199.31.0.0/16”


segunda-feira, 17 de outubro de 11                                                                51
Endereçamento hierárquico:
   Endereçamento hierárquico: rota mais específica
      rotas mais específicas
         ISPs-R-Us tem uma rota mais específica para Organização 1
           Organização 0
                   200.23.16.0/23

                                                                “Envie-me qualquer
                                                                coisa com endereços
            Organização 2                                       começando com
                    200.23.20.0/23       .   Fly-By-Night-ISP   200.23.16.0/20”
                                         .
                                     .   .                                            Internet
                                     .
            Organização 7            .
                 200.23.30.0/23
                                                                 “Envie-me qualquer
                                               ISPs-R-Us
                                                                 coisa com endereços
               Organização 1                                     começando com 199.31.0.0/16
                                                                 ou 200.23.18.0/23”
                       200.23.18.0/23



segunda-feira, 17 de outubro de 11                                                               52
Endereçamento IP:
                  Endereçamento IP: ...
         a última palavra...

         P: Como um ISP recebe bloco de endereços?
         R: ICANN: Internet Corporation for Assigned
                   Names and Numbers
                   "  aloca endereços
                   "  administra o DNS
                   "  atribui nomes de domínio e resolve disputas




segunda-feira, 17 de outubro de 11                                  53
E quando os endereços
                                  IP acabarem?

                                     Mais um suspiro: NAT




segunda-feira, 17 de outubro de 11                          54
NAT: Network Address
             NAT: Network Address Translation
            Translation
                              restante da                      rede local
                               Internet                (p. e., rede doméstica)
                                                               10.0.0/24         10.0.0.1

                                                    10.0.0.4
                                                                                  10.0.0.2
                                      138.76.29.7

                                                                                  10.0.0.3


 todos os datagramas saindo da rede   datagramas com origem ou
  local têm mesmo endereço IP NAT       destino nesta rede têm
      de origem: 138.76.29.7, mas      endereço 10.0.0/24 para
    diferentes números de porta de  origem/destino (como sempre)
                origem


segunda-feira, 17 de outubro de 11                                                           55
NAT: Network Address Translation

       !  motivação: rede local usa apenas um endereço IP no que
              se refere ao mundo exterior:
               "  intervalo de endereços não necessário pelo ISP:
                  apenas um endereço IP para todos os dispositivos
               "  pode mudar os endereços dos dispositivos na rede
                  local sem notificar o mundo exterior
               "  pode mudar de ISP sem alterar os endereços dos
                  dispositivos na rede local
               "  dispositivos dentro da rede local não precisam ser
                  explicitamente endereçáveis ou visíveis pelo mundo
                  exterior (uma questão de segurança).


segunda-feira, 17 de outubro de 11                                     56
NAT: Implementação
         Implementação: roteador NAT deve:
         Implementação: roteador NAT deve:
         Implementação: roteador NAT deve:
           "  enviando datagramas: substituir (endereço IP de
            "  enviando datagramas: substituir (endereço IP de
            "  enviando datagramas: substituir (endereço IP de
               origem, # porta) de cada datagrama saindo por
               origem, # porta) de cada datagrama saindo por
                origem, # porta) de cada datagrama saindo por
               (endereço IP da NAT, novo # porta)
               (endereço IP da NAT, novo # porta)
                (endereço IP da NAT, novo # porta)
                 ... ... ... clientes/servidores remotos responderão usando
                             clientes/servidores remotos responderão usando
                             clientes/servidores remotos responderão usando
                       (endereço IP da NAT, novo # porta) como endereço
                       (endereço IP da NAT, novo # porta) como endereço
                        (endereço IP da NAT, novo # porta) como endereço
                       de destino
                       de destino
                        de destino

                 "  lembrar (na tabela de tradução NAT) de cada par de
                 "  lembrar (na tabela de tradução NAT) de cada par de
                 "  lembrar (na tabela de tradução NAT) de cada par de
                       tradução (endereço IP de origem, # porta) para
                       tradução (endereço IP de origem, # porta) para
                        tradução (endereço IP de origem, # porta) para
                       (endereço IP da NAT, novo # porta)
                       (endereço IP da NAT, novo # porta)
                        (endereço IP da NAT, novo # porta)

                 "  recebendo datagramas: substituir (endereço IP da
                 "  recebendo datagramas: substituir (endereço IP da
                 "  recebendo datagramas: substituir (endereço IP da
                       NAT, novo # porta) nos campos de destino de cada
                       NAT, novo # porta) nos campos de destino de cada
                       NAT, novo # porta) nos campos de destino de cada
                       datagrama chegando por (endereço IP origem, # porta)
                       datagrama chegando por (endereço IP origem, # porta)
                       datagrama chegando por (endereço IP origem, # porta)
                       correspondente, armazenado na tabela NAT
                       correspondente, armazenado na tabela NAT
                       correspondente, armazenado na tabela NAT

segunda-feira, 17 de outubro de 11                                            57
NAT: Funcionamento

 2: roteador NAT
                                                           1: hospedeiro 10.0.0.1
 muda endereço de
                                                           envia datagrama para
 origem do
                                                           128.119.40.186, 80
 datagrama de
 10.0.0.1, 3345 para
 138.76.29.7, 5001,
 atualiza tabela




                       3: Resposta chega
                       endereço destino:      4: roteador NAT muda endereço
                        138.76.29.7, 5001     de destino do datagrama de
                                              138.76.29.7, 5001 para 10.0.0.1, 3345

segunda-feira, 17 de outubro de 11                                                  58
NAT: Funcionamento

         !  campo de número de porta de 16 bits:
                   "  60.000    conexões simultâneas com um único
                         endereço no lado da LAN!
         !  NAT é controvertido:
            "  roteadores só devem processar até a camada 3
            "  viola argumento de fim a fim
                            •  a possibilidade de NAT deve ser levada em conta pelos
                               projetistas da aplicação, p. e., aplicações P2P
                   "  a   falta de endereços deverá ser resolvida pelo
                         IPv6

segunda-feira, 17 de outubro de 11                                                     59
Problema da travessia
                       NAT: Problema!
            da NAT
         !  cliente quer se conectar ao
               servidor com endereço
                                                                                          10.0.0.1
               10.0.0.1                                   Client
                  "    endereço do servidor 10.0.0.1               ?
                       local à LAN (cliente não pode
                       usá-lo como endereço destino)                           10.0.0.4

                  "    apenas um endereço NAT visível
                                                            138.76.29.7
                       externamente: 138.76.29.7                          roteador
                                                                            NAT
         !  solução 1: configure a NAT
               estaticamente para repassar
               as solicitações de conexão
               que chegam a determinada
               porta ao servidor
                  "    p. e., (123.76.29.7, porta 2500)
                       sempre repassado para 10.0.0.1
                       porta 25000

segunda-feira, 17 de outubro de 11                                                                   60
NAT: Problema!

         !  solução 2: Universal Plug and
               Play (UPnP) Internet Gateway                                  10.0.0.1
               Device (IGD) Protocol. Permite
               que o hospedeiro com NAT:                               IGD
                !  descubra endereço IP                           10.0.0.4
                   público (138.76.29.7)
                                                138.76.29.7    NAT
                !  inclua/remova mapeamentos
                                                              router
                   de porta (com tempos de
                   posse)

                  ou seja, automatizar
                    configuração estática do
                    mapa de porta NAT

segunda-feira, 17 de outubro de 11                                                      61
NAT: Problema!
                !  solução 3: repasse (usado no Skype)
                         "  cliente com NAT estabelece conexão com repasse
                         "  cliente externo se conecta ao repasse
                         "  repasse liga pacotes entre duas conexões



                       2. conexão com                    1. conexão com
                       relay iniciado                    relay iniciado
                       pelo cliente                      pelo hospedeiro      10.0.0.1
                                        3. relaying      de NAT
          Cliente
                                        estabelecido
                                                       138.76.29.7 roteador
                                                                    NAT



segunda-feira, 17 de outubro de 11                                                       62
ICMP: Internet Control Message Protocol
     ICMP: Internet Control
     Message Protocol
     !  usado por hospedeiros &
                                          Tipo   Cód,   Descrição
        roteadores para comunicar
                                          0      0      resposta de eco (ping)
        informações em nível de rede      3      0      rede de destino inalcançável
         "  relato de erro: hospedeiro,   3      1      hosp. de destino inalcançável
            rede, porta, protocolo        3      2      protocolo de destino inalcançável
            inalcançável                  3      3      porta de destino inalcançável
                                          3      6      rede de destino desconhecida
         "  eco de solicitação/
                                          3      7      hosp. de destino desconhecido
            resposta (usado por ping)     4      0      redução da fonte (controle de
     !  camada de rede “acima” do IP:                   congestionamento – não usado)
         "  msgs ICMP transportadas
                                          8      0      solicitação de eco (ping)
                                          9      0      anúncio de rota
            em datagramas IP
                                          10     0      descoberta do roteador
     !  mensagem ICMP: tipo, código       11     0      TTL expirado
        mais primeiros 8 bytes do         12     0      cabeçalho IP inválido
        datagrama IP causando erro


segunda-feira, 17 de outubro de 11                                                          63
Traceroute e ICMP
                Traceroute e ICMP
       !  origem envia série de                   !  quando a mensagem ICMP
               segmentos UDP ao destino              chega, origem calcula RTT
                 "     primeiro tem TTL = 1       !  traceroute faz isso 3 vezes
                 "     segundo tem TTL = 2 etc.   Critério de término
                 "     número de porta            !  segmento UDP por fim chega
                       improvável
                                                     no hospedeiro de destino
       !  quando no datagrama
                                                  !  destino retorna pacote ICMP
               chegar no no roteador:
                                                     “host inalcançável” (tipo 3,
                 "     roteador descarta             código 3)
                       datagrama
                                                  !  quando origem recebe esse
                 "     e envia à origem uma msg
                       ICMP (tipo 11, código 0)      ICMP, termina.
                 "     mensagem inclui nome do
                       roteador & endereço IP


segunda-feira, 17 de outubro de 11                                                  64
IPv6: Internet Protocol Ver.6
                       IPv6

               !  motivação inicial: espaço de endereço de 32
                  bit logo estará completamente alocado
               !  motivação adicional:
                        "  formato de cabeçalho ajuda a agilizar
                           processamento e repasse
                        "  mudanças no capítulo para facilitar QoS
                        formato de datagrama IPv6:
                        "  cabeçalho de 40 bytes de tamanho fixo
                        "  fragmentação não permitida




segunda-feira, 17 de outubro de 11                                   65
Cabeçalho IPv6
                     IPv6: Cabeçalho IPv6
            prioridade: identificar prioridade entre datagramas no fluxo
            rótulo de fluxo: identificar datagramas no mesmo “fluxo.”
                             (conceito de “fluxo” não bem definido)
            próximo cabeçalho: identificar protocolo da camada superior
                                 para dados




segunda-feira, 17 de outubro de 11                                         66
IPv6: Outras mudanças
             Outras mudanças do IPv4

             !  soma de verificação: removida inteiramente
                para reduzir tempo de processamento em cada
                salto
             !  opões: permitidas, mas fora do cabeçalho,
                indicadas pelo campo de “Próximo Cabeçalho”
             !  ICMPv6: nova versão do ICMP
                      "  tipos de mensagem adicionais, p. e. “Pacote Muito
                         Grande”
                      "  funções de gerenciamento de grupo multicast




segunda-feira, 17 de outubro de 11                                           67
Transição IPv4 → IPv6
         Transição de IPv4 para IPv6

           !  nem todos os roteadores podem ser
                  atualizados simultaneamente
                    "  sem “dia de conversão”
                    "  como a rede operará com roteadores IPv4 e IPv6
                       misturados?
           !  implantação      de túnel: IPv6 transportado como
                  carga útil no datagrama IPv4 entre roteadores
                  IPv4



segunda-feira, 17 de outubro de 11                                      68
Transição IPv4 → IPv6

     Implantação
     Implantação
     de um túnel                             de túnel
                                       A        B                       E       F
       Visão lógica:                                     túnel

                                      IPv6     IPv6                     IPv6   IPv6

                                       A        B                        E      F
     Visão física:
                                      IPv6     IPv6   IPv4       IPv4   IPv6   IPv6




segunda-feira, 17 de outubro de 11                                                    69
Transição IPv4 → IPv6

            Visão lógica:



            Visão física:




     Implantação
     de um túnel
segunda-feira, 17 de outubro de 11                           70
Sumário
             Introdução
             Redes de circuitos virtuais e de datagramas
             O que há dentro de um roteador?
             O Protocolo da Internet (IP)
             Algoritmos de roteamento
             Roteamento na Internet


segunda-feira, 17 de outubro de 11                         71
e repasse
                                                 algoritmo de roteamento
       Interação
         entre                                     tabela de repasse local

       repasse e                                  valor do cab. enlace saída
                                                          0100   3
      roteamento                                          0101
                                                          0111
                                                                 2
                                                                 2
                                                          1001   1



                                     valor no cab. do
                                     pacote chegando

                                                        0111               1

                                                                       3 2




segunda-feira, 17 de outubro de 11                                             72
Abstração de grafo
       Abstração de grafo
                                                  5
                                                      3
                                                  v           w   5
                                              2
                                      u           2           1       z
                                                          3
                                          1                       2
      Grafo: G = (N,E)
                                                  x   1
                                                              y

      N = conjunto de roteadores = { u, v, w, x, y, z }

      E = conjunto de enlaces = { (u,v), (u,x), (v,x), (v,w), (x,w), (x,y), (w,y), (w,z), (y,z) }


          Comentário: Abstração de grafo é útil em outros contextos de rede

          Exemplo: P2P, onde N é conj. de pares e E é conj. de conexões TCP


segunda-feira, 17 de outubro de 11                                                                  73
Abstração de grafo: custos
        Abstração de grafo: custos

                                     5                       •  c(x,x’) = custo do enlace (x,x’)
                                         3
                                     v           w   5         - p. e., c(w,z) = 5
                            2
                    u                2           1       z
                                             3               •  custo poderia ser sempre 1, ou
                        1                            2       inversamente relacionado à largura
                                     x   1
                                                 y           ou inversamente relacionado ao
                                                             congestionamento

                Custo do caminho (x1, x2, x3,…, xp) = c(x1,x2) + c(x2,x3) + … + c(xp-1,xp)

        Pergunta: Qual é o caminho de menor custo entre u e z?

        algoritmo de roteamento: algoritmo que encontra o
        caminho de menor custo

segunda-feira, 17 de outubro de 11                                                                 74
Classificação de algoritmos de roteamento
         Classificação do algoritmo
          Classificação do algoritmo
         de roteamento
          de roteamento
      informação global ouou
        informação global                     Estático ou ou dinâmico?
                                                Estático dinâmico?
         descentralizada?
           descentralizada?                   estático:
                                                 estático:
      global:                                 !  rotas mudam lentamente
        global:                                  !  rotas mudam lentamente
      !  todos os roteadores têm topologia       com o tempo
        !  todos os roteadores têm topologia         com o tempo
         completa, informação de custo do     dinâmico:
           completa, informação de custo do      dinâmico:
         enlace                               !  rotas mudam mais
           enlace                                !  rotas mudam mais
      !  algoritmos de “estado do enlace”        rapidamente
        !  algoritmos de “estado do enlace”          rapidamente
      descentralizada:                            "  atualização periódica
        descentralizada:                              "  atualização periódica
      !  roteador conhece vizinhos                "  em resposta a
        !  roteador conhece vizinhos                  "  em resposta a
         conectados fisicamente, custos de           mudanças no custo do
           conectados fisicamente, custos de
         enlace para vizinhos                            mudanças no custo do
                                                     enlace
           enlace para vizinhos                          enlace
      !  processo de computação iterativo,
        !  processo de computaçãovizinhos
         troca de informações com iterativo,
           troca de informações com vizinhos
      !  algoritmos de “vetor de distância”
        !  algoritmos de “vetor de distância”

segunda-feira, 17 de outubro de 11                                               75
Algoritmo de roteamento
          Alg. de roteamento: Estado de Enlace
             de estado do enlace
                                                notação:
          algoritmo de Dijkstra                 !  c(x,y): custo do enlace
          !  nova topologia, custos de enlace     do nó x até y; = ! se não
             conhecidos de todos os nós           forem vizinhos diretos
              "  realizado por “broadcast de
                                                !  D(v): valor atual do
                 estado do enlace”
                                                   custo do caminho da
              "  todos os nós têm a mesma
                                                   origem ao destino v
                 informação
                                                !  p(v): nó predecessor ao
          !  calcula caminhos de menor
                                                   longo do caminho da
             custo de um nó (“origem”) para
                                                   origem até v
             todos os outros nós
              "  da tabela de repasse para      !  N': conjunto de nós cujo
                 esse nó                           caminho de menor custo
          !  iterativo: após k iterações,
                                                   é definitivamente
             sabe caminho de menor custo           conhecido
             para k destinos
segunda-feira, 17 de outubro de 11                                            76
Alg. de roteamento: Estado de Enlace
            Algoritmo de Dijkstra
                        1 Inicialização:                 Algoritmo de Dijkstra
                        2 N' = {u}
                        3 para todos os nós v
                        4    se v adjacente a u
                        5      então D(v) = c(u,v)
                        6    senão D(v) = !
                        7
                        8 Loop
                        9 acha w não em N' tal que D(w) é mínimo
                        10 acrescenta w a N'
                        11 atualiza D(v) para todo v adjacente a w e não em N' :
                        12     D(v) = min( D(v), D(w) + c(w,v) )
                        13 /* novo custo para v é custo antigo para v ou custo conhecido
                        14 do caminho mais curto para w + custo de w para v */
                        15 até todos os nós em N'



segunda-feira, 17 de outubro de 11                                                         77
Algoritmo de Dijkstra:
          Alg. de roteamento: Estado de Enlace
             exemplo
     Etapa                      N'   D(v),p(v)       D(w),p(w) D(x),p(x)    D(y),p(y)   D(z),p(z)
         0                       u         2,u             5,u       1,u           !           !
         1                     ux          2,u             4,x                    2,x          !
         2                    uxy          2,u             3,y                               4,y
         3                   uxyv                          3,y                               4,y
         4                  uxyvw                                                            4,y
         5                 uxyvwz

                                                 5
                                                     3
                                                 v           w   5
                                             2
                                     u           2           1       z
                                                         3
                                         1                       2
                                                 x   1
                                                             y
                                                                            Algoritmo de
                                                                         Dijkstra: Exemplo
segunda-feira, 17 de outubro de 11                                                                  78
Algoritmo de Dijkstra:
      Alg. de roteamento: Estado de Enlace
     exemplo (2)
      árvore resultante do caminho mais curto a partir de u:


                                                 v    w
                                         u                z
                                                 x    y

     tabela de repasse resultante em u:
                       destino               enlace
                                     v       (u,v)
                                     x       (u,x)
                                     y       (u,x)               Algoritmo de
                                     w       (u,x)
                                                              Dijkstra: Exemplo
                                     z       (u,x)
segunda-feira, 17 de outubro de 11                                                79
Alg. de roteamento: Estado de Enlace
               Algoritmo de Dijkstra,
               discussão   Algoritmo de Dijkstra: Discussão
               complexidade do algoritmo: n nós
               !  cada iteração: precisa verificar todos os nós, w, não em N
               !  n(n+1)/2 comparações: O(n2)
               !  implementações mais eficientes possíveis: O(nlogn)
               oscilações possíveis:
               !  p. e., custo do enlace = quantidade de tráfego transportado



                   1      A                        A               A                 A
                                     1+e     2+e       0   0             2+e   2+e       0
               D        0 0              B   D 1+e 1 B     D               B   D 1+e 1 B
                                                                   0 0
                   0                 e        0     0          1         1+e    0     e
           1
                          C                      C                 C               C
                                         1
                         e
                                             … recalcula   … recalcula         … recalcula
               inicialmente
                                             roteamento


segunda-feira, 17 de outubro de 11                                                           80
Alg.Algoritmo de vetorVetor de Distância
          de roteamento: de
                     distância
                     Equação de Bellman-Ford (programação dinâmica)
                     defina
                     dx(y) : = custo do caminho de menor custo de x
                       para y

                     depois

                     dx(y) = min {c(x,v) + dv(y) }
                                     v


                     onde min assume todos os vizinhos v de x



segunda-feira, 17 de outubro de 11                                    81
Alg. de roteamento: Vetor de Distância
                Exemplo de Bellman-Ford

                            5                        claramente, dv(z) = 5, dx(z) = 3, dw(z) = 3
                                     3
                            v                w   5
                       2
               u              2              1       z   equação B-F diz:
                                         3
                   1                             2          du(z) = min { c(u,v) + dv(z),
                            x                y
                                     1                                    c(u,x) + dx(z),
                                                                          c(u,w) + dw(z) }
                                                                  = min {2 + 5,
                                                                          1 + 3,
                                                                          5 + 3} = 4
              nó que alcança mínimo é o próximo salto
              no caminho mais curto     tabela de repasse


segunda-feira, 17 de outubro de 11                                                                 82
Alg. de roteamento:
              Algoritmo de vetor
             Algoritmo de Vetor de Distância
                   de distância
                   !  Dx(y) = estimativa do menor custo de x para y
                   !  nó x sabe custo de cada vizinho v: c(x,v)
                   !  nó x mantém vetor de distância Dx = [Dx(y): y
                      "N]
                   !  nó x também mantém vetor de distância de
                      seus vizinhos
                            "  para   cada vizinho v, x mantém
                                 Dv = [Dv(y): y " N ]




segunda-feira, 17 de outubro de 11                                    83
Alg. de roteamento:
             Algoritmo de Vetor de Distância
               Algoritmo de vetor
                         de distância (4)
                       ideia básica:
                       !  de tempos em tempos, cada nó envia sua própria
                          estimativa de vetor de distância aos vizinhos
                       !  assíncrono
                       !  quando um nó x recebe nova estimativa DV do
                          vizinho, ele atualiza seu próprio DV usando a
                          equação de B-F:
                         Dx(y) ! minv{c(x,v) + Dv(y)} para cada nó y N

                    !  sob condições modestas, naturais, a estimativa   Dx
                          (y) converge para o menor custo real dx(y)



segunda-feira, 17 de outubro de 11                                           84
Alg. de roteamento:
             Algoritmo de vetor de
             Algoritmo de Vetor de Distância
             distância (5)
             iterativo, assíncrono: cada                   Cada nó:
                iteração local causada por:
             !  mudança de custo do enlace
                                                            espera (mudança no custo
                local                                       do enlace local ou msg do
             !  mensagem de atualização do                  vizinho)
                DV do vizinho
                                                            recalcula estimativas
             distribuído:
             !  cada nó notifica os vizinhos
                    apenas quando seu DV muda               se DV a qualquer destino
                      "     vivinhos, então, notificam      tiver mudado, notifica
                            seus vizinhos, se necessário    vizinhos




segunda-feira, 17 de outubro de 11                                                      85
Dx(y) = min{c(x,y) + Dy(y), c(x,z) + Dz(y)}
                                              = min{2+0 , 7+1} = 2
        tabela nó x
                   custo para                         custo para
                   x y z                              x y z
                x               0 2 7              x 0 2 3
                y              !! !                y 2 0 1                         Dx(z) = min{c(x,y) +


                                              de
                 de




                z              !! !                z 7 1 0                             Dy(z), c(x,z) + Dz(z)}
        tabela nó             y                                                    = min{2+1 , 7+0} = 3
                               custo para
                               x y z
                x              ! ! !
                y              2 0 1                                                             y
                                                                                             2       1
                 de




                z              !! !
        tabela nó             z                                                          x               z
                               custo para                                                        7
                               x y z
                          x !! !
                          y !! !
                 de




                          z 71 0
                                                                                     tempo

segunda-feira, 17 de outubro de 11                                                                              86
Dx(y) = min{c(x,y) + Dy(y), c(x,z) + Dz(y)}
                                              = min{2+0 , 7+1} = 2
     tabela nó x
                custo para                             custo para          custo para
                x y z                                 x y z                 x y z
                                                                                         Dx(z) = min{c(x,y) +
             x              0 2 7                  x 0 2 3                x 0 2 3        Dy(z), c(x,z) + Dz(z)}
             y              !! !                   y 2 0 1                y 2 0 1        = min{2+1 , 7+0} = 3

                                              de
              de




                                                                     de
             z              !! !                   z 7 1 0                z 3 1 0
     tabela nó             y
                            custo para                custo para            custo para
                            x y z                     x y z                  x y z
             x              ! ! !                  x 0 2 7                x 0 2 3
             y              2 0 1                  y 2 0 1                y 2 0 1                  y
                                              de




                                                                                               2       1


                                                                     de
              de




             z              !! !                   z 7 1 0                z 3 1 0
     tabela nó             z                                                               x               z
                                                     custo para            custo para              7
                            custo para
                            x y z                    x y z                 x y z

                       x !! !                      x 0 2 7                x 0 2 3
                       y !! !                      y 2 0 1                y 2 0 1
                                                                    de
                                              de
              de




                       z 71 0                      z 3 1 0                z 3 1 0
                                                                                 tempo

segunda-feira, 17 de outubro de 11                                                                                87
Alg. de roteamento:
           Vetor de distância:
           Algoritmo de Vetor de Distância
           mudanças de custo do enlace
              mudanças de custo do enlace:                                            1
              !  nó detecta mudança de custo no enlace local                                  y
                                                                                          4        1
              !  atualiza informação de roteamento, recalcula
                                                                                     x                 z
                 vetor de distância                                                           50
              !  se DV mudar, notifica vizinhos

                                     no tempo t0, y detecta a mudança do custo do enlace, atualiza
                                     seu DV e informa aos seus vizinhos.
        “boas
                                     no tempo t1, z recebe a atualização de y e atualiza sua tabela.
        notícias
                                     Calcula um novo custo mínimo para x e envia seu DV aos vizinhos.
        correm
        rápido”                      no tempo t2, y recebe a atualização de z e atualiza sua tabela
                                     de distância. Menores custos de y não mudam, e daí y não
                                     envia qualquer mensagem a z.



segunda-feira, 17 de outubro de 11                                                                         88
Alg. de roteamento:
             Algoritmo de Vetor de Distância
              mudanças de custo do enlace:
                                                                      60
              !  boas notícias correm rápido                                  y
              !  más notícias correm lento – problema
                                                                          4        1
                 da “contagem até o infinito”!                        x                z
                                                                              50
              !  44 iterações antes que o algoritmo
                 estabilize: ver texto
              reverso envenenado:
              !  se Z passa por Y para chegar a X:
                       "     Z diz a Y que sua distância (de Z) até
                             X é infinita (de modo que Y não
                             roteará para X passando por Z)
              !  isso solucionará completamente o
                     problema da contagem até o infinito?


segunda-feira, 17 de outubro de 11                                                         89
Comparação entre algoritmos: LS x DV
            Comparaçãodos algoritmos
              LS e DV
           complexidade da mensagem                         robustez: o que acontece
           !  LS: com n nós, E enlaces, O(nE)                 se roteador der
              mensagens enviadas                              defeito?
           !  DV: troca apenas entre vizinhos               LS:
               "  tempo de convergência varia                  "    nó pode anunciar custo
                                                                    do enlace incorreto
           velocidade de convergência
                                                               "    cada nó calcula apenas
           !  LS: algoritmo          O(n2)   requer O(nE)
                                                                    sua própria tabela
              mensagens
               "  pode ter oscilações                       DV:
           !  DV: tempo de convergência varia                  "    nó DV pode anunciar
                                                                    custo do caminho
               "  podem ser loops de
                                                                    incorreto
                  roteamento
                                                               "    tabela de cada nó usada
               "  problema da contagem até o
                                                                    por outros
                  infinito
                                                                     •  erro se propaga pela
                                                                        rede
segunda-feira, 17 de outubro de 11                                                             90
Roteamento Hierárquico
              Roteamento hierárquico
                             nosso estudo de roteamento até aqui – o ideal:
                             !  todos os roteadores idênticos
                             !  rede “achatada”
                             … não acontece na prática

              escala: com 200 milhões              autonomia administrativa
                de destinos:                       !  Internet = rede de redes
              !  não pode armazenar todos          !  cada administrador de rede
                 os destinos nas tabelas de          pode querer controlar o
                 roteamento!                         roteamento em sua própria
              !  troca de tabela de                  rede
                 roteamento atolaria os
                 enlaces!


segunda-feira, 17 de outubro de 11                                                 91
Roteamento Hierárquico


        !  roteadores agregados em                roteador de borda
           regiões, “sistemas
                                                  !  Enlace direto com roteador
           autônomos” (AS)
                                                     em outro AS
        !  roteadores no mesmo AS
           rodam o mesmo protocolo
           de roteamento
                  "     protocolo de roteamento
                        “intra-AS”
                  "     roteadores em ASes
                        diferentes podem
                        executar protocolo de
                        roteamento intra-AS
                        diferente



segunda-feira, 17 de outubro de 11                                                92
Sistemas Autônomos Interconcetados
                  ASes interconectados

                   3c
                   3a                                                      2c
              3b                                                     2a
                 AS3                                                             2b
                                          1c                               AS2
                                     1a             1b
                                          1d               AS1
                                                                            !  tabela de repasse
                                                                                 configurada por algoritmo
                                                                                 de roteamento intra e
                                             algoritmo       algoritmo
                                                           de roteamento
                                                                                 inter-AS
                                           de roteamento
                                              intra-AS        inter-AS           "    intra-AS define entradas
                                                                                      para destinos internos
                                                   tabela de
                                                    repasse                      "    inter-AS & intra-AS
                                                                                      definem entradas para
                                                                                      destinos externos



segunda-feira, 17 de outubro de 11                                                                               93
RC SL04 - Camada de Rede
RC SL04 - Camada de Rede
RC SL04 - Camada de Rede
RC SL04 - Camada de Rede
RC SL04 - Camada de Rede
RC SL04 - Camada de Rede
RC SL04 - Camada de Rede
RC SL04 - Camada de Rede
RC SL04 - Camada de Rede
RC SL04 - Camada de Rede
RC SL04 - Camada de Rede
RC SL04 - Camada de Rede
RC SL04 - Camada de Rede
RC SL04 - Camada de Rede
RC SL04 - Camada de Rede
RC SL04 - Camada de Rede
RC SL04 - Camada de Rede
RC SL04 - Camada de Rede
RC SL04 - Camada de Rede
RC SL04 - Camada de Rede
RC SL04 - Camada de Rede
RC SL04 - Camada de Rede
RC SL04 - Camada de Rede
RC SL04 - Camada de Rede
RC SL04 - Camada de Rede
RC SL04 - Camada de Rede

Contenu connexe

Tendances

Segurança nas redes sociais
Segurança nas redes sociaisSegurança nas redes sociais
Segurança nas redes sociaisRicardo Melo
 
Aula 01 - Introdução ao curso - Projeto de Redes de Computadores
Aula 01 - Introdução ao curso - Projeto de Redes de ComputadoresAula 01 - Introdução ao curso - Projeto de Redes de Computadores
Aula 01 - Introdução ao curso - Projeto de Redes de ComputadoresDalton Martins
 
Informática Aplicada - Rede de computadores
Informática Aplicada - Rede de computadoresInformática Aplicada - Rede de computadores
Informática Aplicada - Rede de computadoresAnderson Pontes
 
Redes Avançadas - 4.Multimídia sobre Redes de Pacotes
Redes Avançadas - 4.Multimídia sobre Redes de PacotesRedes Avançadas - 4.Multimídia sobre Redes de Pacotes
Redes Avançadas - 4.Multimídia sobre Redes de PacotesMauro Tapajós
 
Processos para legalizar ou construir uma casa em 7 Lagoas MG
Processos para legalizar ou construir uma casa em 7 Lagoas MGProcessos para legalizar ou construir uma casa em 7 Lagoas MG
Processos para legalizar ou construir uma casa em 7 Lagoas MGLuiz Avelar
 
Nbr5419 1 proteção contra descargas atmosféricas - parte 1- princípios gerais
Nbr5419 1  proteção contra descargas atmosféricas - parte 1- princípios geraisNbr5419 1  proteção contra descargas atmosféricas - parte 1- princípios gerais
Nbr5419 1 proteção contra descargas atmosféricas - parte 1- princípios geraisElkjaer Braz
 
Novas perspectivas na investigação de cibercrimes no brasil e no mundo
Novas perspectivas na investigação de cibercrimes no brasil e no mundoNovas perspectivas na investigação de cibercrimes no brasil e no mundo
Novas perspectivas na investigação de cibercrimes no brasil e no mundoJosé Mariano Araujo Filho
 
Modalidades obrigações powerpoint
Modalidades obrigações powerpointModalidades obrigações powerpoint
Modalidades obrigações powerpointPedro Cechet
 
Banco de Dados II: Aspectos de Segurança em Banco de Dados (aula 13)
Banco de Dados II: Aspectos de Segurança em Banco de Dados (aula 13)Banco de Dados II: Aspectos de Segurança em Banco de Dados (aula 13)
Banco de Dados II: Aspectos de Segurança em Banco de Dados (aula 13)Gustavo Zimmermann
 
Planeamento Rede
Planeamento RedePlaneamento Rede
Planeamento RedeJoão Sousa
 
Direitos de autor
Direitos de autorDireitos de autor
Direitos de autor12anogolega
 
Aula 1 - Conceitos de TI e PDTI
Aula 1 - Conceitos de TI e PDTIAula 1 - Conceitos de TI e PDTI
Aula 1 - Conceitos de TI e PDTIFilipo Mór
 
Sistemas de informações gerenciais kenneth c. laudon - jane p
Sistemas de informações gerenciais   kenneth c. laudon - jane pSistemas de informações gerenciais   kenneth c. laudon - jane p
Sistemas de informações gerenciais kenneth c. laudon - jane pTarciso Ferreira
 
Pavimentação - Restauração de Pavimentos Flexíveis
Pavimentação - Restauração de Pavimentos FlexíveisPavimentação - Restauração de Pavimentos Flexíveis
Pavimentação - Restauração de Pavimentos Flexíveisdeborastj
 

Tendances (20)

Web Design Responsivo
Web Design ResponsivoWeb Design Responsivo
Web Design Responsivo
 
Segurança nas redes sociais
Segurança nas redes sociaisSegurança nas redes sociais
Segurança nas redes sociais
 
Aula 01 - Introdução ao curso - Projeto de Redes de Computadores
Aula 01 - Introdução ao curso - Projeto de Redes de ComputadoresAula 01 - Introdução ao curso - Projeto de Redes de Computadores
Aula 01 - Introdução ao curso - Projeto de Redes de Computadores
 
Informática Aplicada - Rede de computadores
Informática Aplicada - Rede de computadoresInformática Aplicada - Rede de computadores
Informática Aplicada - Rede de computadores
 
Redes Avançadas - 4.Multimídia sobre Redes de Pacotes
Redes Avançadas - 4.Multimídia sobre Redes de PacotesRedes Avançadas - 4.Multimídia sobre Redes de Pacotes
Redes Avançadas - 4.Multimídia sobre Redes de Pacotes
 
Processos para legalizar ou construir uma casa em 7 Lagoas MG
Processos para legalizar ou construir uma casa em 7 Lagoas MGProcessos para legalizar ou construir uma casa em 7 Lagoas MG
Processos para legalizar ou construir uma casa em 7 Lagoas MG
 
Nbr5419 1 proteção contra descargas atmosféricas - parte 1- princípios gerais
Nbr5419 1  proteção contra descargas atmosféricas - parte 1- princípios geraisNbr5419 1  proteção contra descargas atmosféricas - parte 1- princípios gerais
Nbr5419 1 proteção contra descargas atmosféricas - parte 1- princípios gerais
 
Privacidade na Internet
Privacidade na InternetPrivacidade na Internet
Privacidade na Internet
 
Novas perspectivas na investigação de cibercrimes no brasil e no mundo
Novas perspectivas na investigação de cibercrimes no brasil e no mundoNovas perspectivas na investigação de cibercrimes no brasil e no mundo
Novas perspectivas na investigação de cibercrimes no brasil e no mundo
 
Orçamento (rede)
Orçamento (rede)Orçamento (rede)
Orçamento (rede)
 
Comunicação de dados
Comunicação de dadosComunicação de dados
Comunicação de dados
 
49778140 projeto-de-rede
49778140 projeto-de-rede49778140 projeto-de-rede
49778140 projeto-de-rede
 
Modalidades obrigações powerpoint
Modalidades obrigações powerpointModalidades obrigações powerpoint
Modalidades obrigações powerpoint
 
Banco de Dados II: Aspectos de Segurança em Banco de Dados (aula 13)
Banco de Dados II: Aspectos de Segurança em Banco de Dados (aula 13)Banco de Dados II: Aspectos de Segurança em Banco de Dados (aula 13)
Banco de Dados II: Aspectos de Segurança em Banco de Dados (aula 13)
 
Planeamento Rede
Planeamento RedePlaneamento Rede
Planeamento Rede
 
Direitos de autor
Direitos de autorDireitos de autor
Direitos de autor
 
Aula 1 - Conceitos de TI e PDTI
Aula 1 - Conceitos de TI e PDTIAula 1 - Conceitos de TI e PDTI
Aula 1 - Conceitos de TI e PDTI
 
Sistemas de informações gerenciais kenneth c. laudon - jane p
Sistemas de informações gerenciais   kenneth c. laudon - jane pSistemas de informações gerenciais   kenneth c. laudon - jane p
Sistemas de informações gerenciais kenneth c. laudon - jane p
 
Pavimentação - Restauração de Pavimentos Flexíveis
Pavimentação - Restauração de Pavimentos FlexíveisPavimentação - Restauração de Pavimentos Flexíveis
Pavimentação - Restauração de Pavimentos Flexíveis
 
Direito Civil Contratos
Direito Civil ContratosDireito Civil Contratos
Direito Civil Contratos
 

En vedette

SC - EAD - SL01 - Conceitos Básicos
SC - EAD - SL01 - Conceitos BásicosSC - EAD - SL01 - Conceitos Básicos
SC - EAD - SL01 - Conceitos BásicosUFPB
 
SC - EAD - SL03 - Contextos ee Aplicação da EAD
SC - EAD - SL03 - Contextos ee Aplicação da EADSC - EAD - SL03 - Contextos ee Aplicação da EAD
SC - EAD - SL03 - Contextos ee Aplicação da EADUFPB
 
SC - EAD - SL05 - Criação e Desenvolvimeto de Cursos
SC - EAD - SL05 - Criação e Desenvolvimeto de CursosSC - EAD - SL05 - Criação e Desenvolvimeto de Cursos
SC - EAD - SL05 - Criação e Desenvolvimeto de CursosUFPB
 
SC - EAD - SL06 - O Ensino e o Instrutor
SC - EAD - SL06 - O Ensino e o InstrutorSC - EAD - SL06 - O Ensino e o Instrutor
SC - EAD - SL06 - O Ensino e o InstrutorUFPB
 
SC - EAD - SLAP - Apresentação
SC - EAD - SLAP - ApresentaçãoSC - EAD - SLAP - Apresentação
SC - EAD - SLAP - ApresentaçãoUFPB
 
RC - SLAP - Apresentação da disciplina de Redes (2011-1)
RC - SLAP - Apresentação da disciplina de Redes (2011-1)RC - SLAP - Apresentação da disciplina de Redes (2011-1)
RC - SLAP - Apresentação da disciplina de Redes (2011-1)UFPB
 
ACII - SL06 - Virtualizacao
ACII - SL06 - VirtualizacaoACII - SL06 - Virtualizacao
ACII - SL06 - VirtualizacaoUFPB
 
ACII - SLAP - Apresentacao
ACII - SLAP - ApresentacaoACII - SLAP - Apresentacao
ACII - SLAP - ApresentacaoUFPB
 
ACII - SL03 - Armazenamento Secundario
ACII - SL03 - Armazenamento SecundarioACII - SL03 - Armazenamento Secundario
ACII - SL03 - Armazenamento SecundarioUFPB
 
RC - SL01 - Introdução às Redes de Computadores
RC - SL01 - Introdução às Redes de ComputadoresRC - SL01 - Introdução às Redes de Computadores
RC - SL01 - Introdução às Redes de ComputadoresUFPB
 
SC - EAD - SL02 - Contextualização Histórica
SC - EAD - SL02 - Contextualização HistóricaSC - EAD - SL02 - Contextualização Histórica
SC - EAD - SL02 - Contextualização HistóricaUFPB
 
ACII - SL04 - Introducao a redes de computadores
ACII - SL04 - Introducao a redes de computadoresACII - SL04 - Introducao a redes de computadores
ACII - SL04 - Introducao a redes de computadoresUFPB
 
RC - SL03 - Camada de Transporte
RC - SL03 - Camada de TransporteRC - SL03 - Camada de Transporte
RC - SL03 - Camada de TransporteUFPB
 
ACII - SL02 - Representação computacional
ACII - SL02 - Representação computacionalACII - SL02 - Representação computacional
ACII - SL02 - Representação computacionalUFPB
 
ACII - SL07 - Introducao aos sistemas distribuidos
ACII - SL07 - Introducao aos sistemas distribuidosACII - SL07 - Introducao aos sistemas distribuidos
ACII - SL07 - Introducao aos sistemas distribuidosUFPB
 
RC - SL02 - Camada de Aplicacao
RC - SL02 - Camada de AplicacaoRC - SL02 - Camada de Aplicacao
RC - SL02 - Camada de AplicacaoUFPB
 
Aula 9 camada de rede
Aula 9   camada de redeAula 9   camada de rede
Aula 9 camada de redewab030
 
ACII - SL01 - Marcos da evolução computacional
ACII - SL01 - Marcos da evolução computacionalACII - SL01 - Marcos da evolução computacional
ACII - SL01 - Marcos da evolução computacionalUFPB
 
ACII - SL05 - Armazenamento Distribuido
ACII - SL05 - Armazenamento DistribuidoACII - SL05 - Armazenamento Distribuido
ACII - SL05 - Armazenamento DistribuidoUFPB
 

En vedette (20)

SC - EAD - SL01 - Conceitos Básicos
SC - EAD - SL01 - Conceitos BásicosSC - EAD - SL01 - Conceitos Básicos
SC - EAD - SL01 - Conceitos Básicos
 
SC - EAD - SL03 - Contextos ee Aplicação da EAD
SC - EAD - SL03 - Contextos ee Aplicação da EADSC - EAD - SL03 - Contextos ee Aplicação da EAD
SC - EAD - SL03 - Contextos ee Aplicação da EAD
 
SC - EAD - SL05 - Criação e Desenvolvimeto de Cursos
SC - EAD - SL05 - Criação e Desenvolvimeto de CursosSC - EAD - SL05 - Criação e Desenvolvimeto de Cursos
SC - EAD - SL05 - Criação e Desenvolvimeto de Cursos
 
SC - EAD - SL06 - O Ensino e o Instrutor
SC - EAD - SL06 - O Ensino e o InstrutorSC - EAD - SL06 - O Ensino e o Instrutor
SC - EAD - SL06 - O Ensino e o Instrutor
 
SC - EAD - SLAP - Apresentação
SC - EAD - SLAP - ApresentaçãoSC - EAD - SLAP - Apresentação
SC - EAD - SLAP - Apresentação
 
RC - SLAP - Apresentação da disciplina de Redes (2011-1)
RC - SLAP - Apresentação da disciplina de Redes (2011-1)RC - SLAP - Apresentação da disciplina de Redes (2011-1)
RC - SLAP - Apresentação da disciplina de Redes (2011-1)
 
ACII - SL06 - Virtualizacao
ACII - SL06 - VirtualizacaoACII - SL06 - Virtualizacao
ACII - SL06 - Virtualizacao
 
ACII - SLAP - Apresentacao
ACII - SLAP - ApresentacaoACII - SLAP - Apresentacao
ACII - SLAP - Apresentacao
 
ACII - SL03 - Armazenamento Secundario
ACII - SL03 - Armazenamento SecundarioACII - SL03 - Armazenamento Secundario
ACII - SL03 - Armazenamento Secundario
 
RC - SL01 - Introdução às Redes de Computadores
RC - SL01 - Introdução às Redes de ComputadoresRC - SL01 - Introdução às Redes de Computadores
RC - SL01 - Introdução às Redes de Computadores
 
SC - EAD - SL02 - Contextualização Histórica
SC - EAD - SL02 - Contextualização HistóricaSC - EAD - SL02 - Contextualização Histórica
SC - EAD - SL02 - Contextualização Histórica
 
ACII - SL04 - Introducao a redes de computadores
ACII - SL04 - Introducao a redes de computadoresACII - SL04 - Introducao a redes de computadores
ACII - SL04 - Introducao a redes de computadores
 
RC - SL03 - Camada de Transporte
RC - SL03 - Camada de TransporteRC - SL03 - Camada de Transporte
RC - SL03 - Camada de Transporte
 
ACII - SL02 - Representação computacional
ACII - SL02 - Representação computacionalACII - SL02 - Representação computacional
ACII - SL02 - Representação computacional
 
ACII - SL07 - Introducao aos sistemas distribuidos
ACII - SL07 - Introducao aos sistemas distribuidosACII - SL07 - Introducao aos sistemas distribuidos
ACII - SL07 - Introducao aos sistemas distribuidos
 
Camada de Rede
Camada de RedeCamada de Rede
Camada de Rede
 
RC - SL02 - Camada de Aplicacao
RC - SL02 - Camada de AplicacaoRC - SL02 - Camada de Aplicacao
RC - SL02 - Camada de Aplicacao
 
Aula 9 camada de rede
Aula 9   camada de redeAula 9   camada de rede
Aula 9 camada de rede
 
ACII - SL01 - Marcos da evolução computacional
ACII - SL01 - Marcos da evolução computacionalACII - SL01 - Marcos da evolução computacional
ACII - SL01 - Marcos da evolução computacional
 
ACII - SL05 - Armazenamento Distribuido
ACII - SL05 - Armazenamento DistribuidoACII - SL05 - Armazenamento Distribuido
ACII - SL05 - Armazenamento Distribuido
 

Similaire à RC SL04 - Camada de Rede

Prot comutacao roteam camada de rede-2012
Prot comutacao roteam camada de rede-2012Prot comutacao roteam camada de rede-2012
Prot comutacao roteam camada de rede-2012Valldo
 
Aula 7 camada de transporte
Aula 7   camada de transporteAula 7   camada de transporte
Aula 7 camada de transportewab030
 
3ª Unidade Modelo OSI e TCP/IP
3ª Unidade Modelo OSI e TCP/IP3ª Unidade Modelo OSI e TCP/IP
3ª Unidade Modelo OSI e TCP/IPCleiton Cunha
 
Lista exerc conceitos-mod-ref
Lista exerc conceitos-mod-refLista exerc conceitos-mod-ref
Lista exerc conceitos-mod-refredesinforma
 
31283575 protocolos-de-transporte-tcp-e-udp
31283575 protocolos-de-transporte-tcp-e-udp31283575 protocolos-de-transporte-tcp-e-udp
31283575 protocolos-de-transporte-tcp-e-udpKievnny Mendonca
 
Redes de computadores douglas rocha mendes
Redes de computadores   douglas rocha mendesRedes de computadores   douglas rocha mendes
Redes de computadores douglas rocha mendesWilliam Nascimento
 
Camada de enlace e redes locais capitulo 5
Camada de enlace e redes locais   capitulo 5Camada de enlace e redes locais   capitulo 5
Camada de enlace e redes locais capitulo 5fernandao777
 
Aula 4 introducao iii
Aula 4   introducao iiiAula 4   introducao iii
Aula 4 introducao iiiwab030
 
IntroducaoRedesInternet.ppt redes de computadores
IntroducaoRedesInternet.ppt redes de computadoresIntroducaoRedesInternet.ppt redes de computadores
IntroducaoRedesInternet.ppt redes de computadoresLinaKelly3
 
Downloads telecom com_dados_exercicios_exercicio_parte 1 geral
Downloads telecom com_dados_exercicios_exercicio_parte 1 geralDownloads telecom com_dados_exercicios_exercicio_parte 1 geral
Downloads telecom com_dados_exercicios_exercicio_parte 1 geralRonaldo Souza
 

Similaire à RC SL04 - Camada de Rede (20)

Prot comutacao roteam camada de rede-2012
Prot comutacao roteam camada de rede-2012Prot comutacao roteam camada de rede-2012
Prot comutacao roteam camada de rede-2012
 
Cap04a
Cap04aCap04a
Cap04a
 
Aula 7 camada de transporte
Aula 7   camada de transporteAula 7   camada de transporte
Aula 7 camada de transporte
 
Cap03a
Cap03aCap03a
Cap03a
 
TCP/IP
TCP/IPTCP/IP
TCP/IP
 
3ª Unidade Modelo OSI e TCP/IP
3ª Unidade Modelo OSI e TCP/IP3ª Unidade Modelo OSI e TCP/IP
3ª Unidade Modelo OSI e TCP/IP
 
Redes aula4
Redes aula4Redes aula4
Redes aula4
 
Lista exerc conceitos-mod-ref
Lista exerc conceitos-mod-refLista exerc conceitos-mod-ref
Lista exerc conceitos-mod-ref
 
Cap2
Cap2Cap2
Cap2
 
31283575 protocolos-de-transporte-tcp-e-udp
31283575 protocolos-de-transporte-tcp-e-udp31283575 protocolos-de-transporte-tcp-e-udp
31283575 protocolos-de-transporte-tcp-e-udp
 
Redes de computadores douglas rocha mendes
Redes de computadores   douglas rocha mendesRedes de computadores   douglas rocha mendes
Redes de computadores douglas rocha mendes
 
Camada de enlace e redes locais capitulo 5
Camada de enlace e redes locais   capitulo 5Camada de enlace e redes locais   capitulo 5
Camada de enlace e redes locais capitulo 5
 
Camadas osi redes
Camadas osi   redesCamadas osi   redes
Camadas osi redes
 
Aula 4 introducao iii
Aula 4   introducao iiiAula 4   introducao iii
Aula 4 introducao iii
 
IntroducaoRedesInternet.ppt
IntroducaoRedesInternet.pptIntroducaoRedesInternet.ppt
IntroducaoRedesInternet.ppt
 
IntroducaoRedesInternet.ppt redes de computadores
IntroducaoRedesInternet.ppt redes de computadoresIntroducaoRedesInternet.ppt redes de computadores
IntroducaoRedesInternet.ppt redes de computadores
 
Downloads telecom com_dados_exercicios_exercicio_parte 1 geral
Downloads telecom com_dados_exercicios_exercicio_parte 1 geralDownloads telecom com_dados_exercicios_exercicio_parte 1 geral
Downloads telecom com_dados_exercicios_exercicio_parte 1 geral
 
Lista04
Lista04Lista04
Lista04
 
Exercicio parte1
Exercicio parte1Exercicio parte1
Exercicio parte1
 
Modelo osi[1]
Modelo osi[1]Modelo osi[1]
Modelo osi[1]
 

Dernier

LIVRO A BELA BORBOLETA. Ziraldo e Zélio.
LIVRO A BELA BORBOLETA. Ziraldo e Zélio.LIVRO A BELA BORBOLETA. Ziraldo e Zélio.
LIVRO A BELA BORBOLETA. Ziraldo e Zélio.HildegardeAngel
 
PPT _ Módulo 3_Direito Comercial_2023_2024.pdf
PPT _ Módulo 3_Direito Comercial_2023_2024.pdfPPT _ Módulo 3_Direito Comercial_2023_2024.pdf
PPT _ Módulo 3_Direito Comercial_2023_2024.pdfAnaGonalves804156
 
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptxQUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptxIsabellaGomes58
 
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdf
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdfBRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdf
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdfHenrique Pontes
 
Slides criatividade 01042024 finalpdf Portugues.pdf
Slides criatividade 01042024 finalpdf Portugues.pdfSlides criatividade 01042024 finalpdf Portugues.pdf
Slides criatividade 01042024 finalpdf Portugues.pdfpaulafernandes540558
 
O guia definitivo para conquistar a aprovação em concurso público.pdf
O guia definitivo para conquistar a aprovação em concurso público.pdfO guia definitivo para conquistar a aprovação em concurso público.pdf
O guia definitivo para conquistar a aprovação em concurso público.pdfErasmo Portavoz
 
Gametogênese, formação dos gametas masculino e feminino
Gametogênese, formação dos gametas masculino e femininoGametogênese, formação dos gametas masculino e feminino
Gametogênese, formação dos gametas masculino e femininoCelianeOliveira8
 
HORA DO CONTO5_BECRE D. CARLOS I_2023_2024
HORA DO CONTO5_BECRE D. CARLOS I_2023_2024HORA DO CONTO5_BECRE D. CARLOS I_2023_2024
HORA DO CONTO5_BECRE D. CARLOS I_2023_2024Sandra Pratas
 
QUIZ DE MATEMATICA SHOW DO MILHÃO PREPARAÇÃO ÇPARA AVALIAÇÕES EXTERNAS
QUIZ DE MATEMATICA SHOW DO MILHÃO PREPARAÇÃO ÇPARA AVALIAÇÕES EXTERNASQUIZ DE MATEMATICA SHOW DO MILHÃO PREPARAÇÃO ÇPARA AVALIAÇÕES EXTERNAS
QUIZ DE MATEMATICA SHOW DO MILHÃO PREPARAÇÃO ÇPARA AVALIAÇÕES EXTERNASEdinardo Aguiar
 
A Inteligência Artificial na Educação e a Inclusão Linguística
A Inteligência Artificial na Educação e a Inclusão LinguísticaA Inteligência Artificial na Educação e a Inclusão Linguística
A Inteligência Artificial na Educação e a Inclusão LinguísticaFernanda Ledesma
 
PRÉ-MODERNISMO - GUERRA DE CANUDOS E OS SERTÕES
PRÉ-MODERNISMO - GUERRA DE CANUDOS E OS SERTÕESPRÉ-MODERNISMO - GUERRA DE CANUDOS E OS SERTÕES
PRÉ-MODERNISMO - GUERRA DE CANUDOS E OS SERTÕESpatriciasofiacunha18
 
Slide de exemplo sobre o Sítio do Pica Pau Amarelo.pptx
Slide de exemplo sobre o Sítio do Pica Pau Amarelo.pptxSlide de exemplo sobre o Sítio do Pica Pau Amarelo.pptx
Slide de exemplo sobre o Sítio do Pica Pau Amarelo.pptxconcelhovdragons
 
Baladão sobre Variação Linguistica para o spaece.pptx
Baladão sobre Variação Linguistica para o spaece.pptxBaladão sobre Variação Linguistica para o spaece.pptx
Baladão sobre Variação Linguistica para o spaece.pptxacaciocarmo1
 
Slides Lição 3, Betel, Ordenança para congregar e prestar culto racional, 2Tr...
Slides Lição 3, Betel, Ordenança para congregar e prestar culto racional, 2Tr...Slides Lição 3, Betel, Ordenança para congregar e prestar culto racional, 2Tr...
Slides Lição 3, Betel, Ordenança para congregar e prestar culto racional, 2Tr...LuizHenriquedeAlmeid6
 
organizaao-do-clube-de-lideres-ctd-aamar_compress.pdf
organizaao-do-clube-de-lideres-ctd-aamar_compress.pdforganizaao-do-clube-de-lideres-ctd-aamar_compress.pdf
organizaao-do-clube-de-lideres-ctd-aamar_compress.pdfCarlosRodrigues832670
 
Aula - 2º Ano - Cultura e Sociedade - Conceitos-chave
Aula - 2º Ano - Cultura e Sociedade - Conceitos-chaveAula - 2º Ano - Cultura e Sociedade - Conceitos-chave
Aula - 2º Ano - Cultura e Sociedade - Conceitos-chaveaulasgege
 
PLANEJAMENTO anual do 3ANO fundamental 1 MG.pdf
PLANEJAMENTO anual do  3ANO fundamental 1 MG.pdfPLANEJAMENTO anual do  3ANO fundamental 1 MG.pdf
PLANEJAMENTO anual do 3ANO fundamental 1 MG.pdfProfGleide
 
Educação São Paulo centro de mídias da SP
Educação São Paulo centro de mídias da SPEducação São Paulo centro de mídias da SP
Educação São Paulo centro de mídias da SPanandatss1
 

Dernier (20)

LIVRO A BELA BORBOLETA. Ziraldo e Zélio.
LIVRO A BELA BORBOLETA. Ziraldo e Zélio.LIVRO A BELA BORBOLETA. Ziraldo e Zélio.
LIVRO A BELA BORBOLETA. Ziraldo e Zélio.
 
PPT _ Módulo 3_Direito Comercial_2023_2024.pdf
PPT _ Módulo 3_Direito Comercial_2023_2024.pdfPPT _ Módulo 3_Direito Comercial_2023_2024.pdf
PPT _ Módulo 3_Direito Comercial_2023_2024.pdf
 
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptxQUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
 
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdf
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdfBRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdf
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdf
 
Slides criatividade 01042024 finalpdf Portugues.pdf
Slides criatividade 01042024 finalpdf Portugues.pdfSlides criatividade 01042024 finalpdf Portugues.pdf
Slides criatividade 01042024 finalpdf Portugues.pdf
 
O guia definitivo para conquistar a aprovação em concurso público.pdf
O guia definitivo para conquistar a aprovação em concurso público.pdfO guia definitivo para conquistar a aprovação em concurso público.pdf
O guia definitivo para conquistar a aprovação em concurso público.pdf
 
Gametogênese, formação dos gametas masculino e feminino
Gametogênese, formação dos gametas masculino e femininoGametogênese, formação dos gametas masculino e feminino
Gametogênese, formação dos gametas masculino e feminino
 
HORA DO CONTO5_BECRE D. CARLOS I_2023_2024
HORA DO CONTO5_BECRE D. CARLOS I_2023_2024HORA DO CONTO5_BECRE D. CARLOS I_2023_2024
HORA DO CONTO5_BECRE D. CARLOS I_2023_2024
 
QUIZ DE MATEMATICA SHOW DO MILHÃO PREPARAÇÃO ÇPARA AVALIAÇÕES EXTERNAS
QUIZ DE MATEMATICA SHOW DO MILHÃO PREPARAÇÃO ÇPARA AVALIAÇÕES EXTERNASQUIZ DE MATEMATICA SHOW DO MILHÃO PREPARAÇÃO ÇPARA AVALIAÇÕES EXTERNAS
QUIZ DE MATEMATICA SHOW DO MILHÃO PREPARAÇÃO ÇPARA AVALIAÇÕES EXTERNAS
 
A Inteligência Artificial na Educação e a Inclusão Linguística
A Inteligência Artificial na Educação e a Inclusão LinguísticaA Inteligência Artificial na Educação e a Inclusão Linguística
A Inteligência Artificial na Educação e a Inclusão Linguística
 
PRÉ-MODERNISMO - GUERRA DE CANUDOS E OS SERTÕES
PRÉ-MODERNISMO - GUERRA DE CANUDOS E OS SERTÕESPRÉ-MODERNISMO - GUERRA DE CANUDOS E OS SERTÕES
PRÉ-MODERNISMO - GUERRA DE CANUDOS E OS SERTÕES
 
Slide de exemplo sobre o Sítio do Pica Pau Amarelo.pptx
Slide de exemplo sobre o Sítio do Pica Pau Amarelo.pptxSlide de exemplo sobre o Sítio do Pica Pau Amarelo.pptx
Slide de exemplo sobre o Sítio do Pica Pau Amarelo.pptx
 
Baladão sobre Variação Linguistica para o spaece.pptx
Baladão sobre Variação Linguistica para o spaece.pptxBaladão sobre Variação Linguistica para o spaece.pptx
Baladão sobre Variação Linguistica para o spaece.pptx
 
Slides Lição 3, Betel, Ordenança para congregar e prestar culto racional, 2Tr...
Slides Lição 3, Betel, Ordenança para congregar e prestar culto racional, 2Tr...Slides Lição 3, Betel, Ordenança para congregar e prestar culto racional, 2Tr...
Slides Lição 3, Betel, Ordenança para congregar e prestar culto racional, 2Tr...
 
organizaao-do-clube-de-lideres-ctd-aamar_compress.pdf
organizaao-do-clube-de-lideres-ctd-aamar_compress.pdforganizaao-do-clube-de-lideres-ctd-aamar_compress.pdf
organizaao-do-clube-de-lideres-ctd-aamar_compress.pdf
 
Aula - 2º Ano - Cultura e Sociedade - Conceitos-chave
Aula - 2º Ano - Cultura e Sociedade - Conceitos-chaveAula - 2º Ano - Cultura e Sociedade - Conceitos-chave
Aula - 2º Ano - Cultura e Sociedade - Conceitos-chave
 
treinamento brigada incendio 2024 no.ppt
treinamento brigada incendio 2024 no.ppttreinamento brigada incendio 2024 no.ppt
treinamento brigada incendio 2024 no.ppt
 
(76- ESTUDO MATEUS) A ACLAMAÇÃO DO REI..
(76- ESTUDO MATEUS) A ACLAMAÇÃO DO REI..(76- ESTUDO MATEUS) A ACLAMAÇÃO DO REI..
(76- ESTUDO MATEUS) A ACLAMAÇÃO DO REI..
 
PLANEJAMENTO anual do 3ANO fundamental 1 MG.pdf
PLANEJAMENTO anual do  3ANO fundamental 1 MG.pdfPLANEJAMENTO anual do  3ANO fundamental 1 MG.pdf
PLANEJAMENTO anual do 3ANO fundamental 1 MG.pdf
 
Educação São Paulo centro de mídias da SP
Educação São Paulo centro de mídias da SPEducação São Paulo centro de mídias da SP
Educação São Paulo centro de mídias da SP
 

RC SL04 - Camada de Rede

  • 1. Universidade Federal da Paraíba Centro de Ciências Aplicadas e Educação Departamento de Ciências Exatas Redes de Computadores: Camada de Redes Prof. Rafael Marrocos Magalhães rafael@dce.ufpb.br 11 de Outubro de 2011 UFPB - CCAE - DCE Esta apresentação contém partes, ou mesmo slides inteiros, da apresentação original disponibilizada por J.F Kurose e K.W. Ross, com permissão para utilização como material de apoio instrucional. E, conforme solicitação do original, incluí aqui a nota de direito autoral. segunda-feira, 17 de outubro de 11 1
  • 2. Motivação Como os hosts se comunicam através das redes? segunda-feira, 17 de outubro de 11 2
  • 3. Sumário Introdução Redes de circuitos virtuais e de datagramas O que há dentro de um roteador? O Protocolo da Internet (IP) Algoritmos de roteamento Roteamento na Internet segunda-feira, 17 de outubro de 11 3
  • 4. Capítulo 4: desta Unidade 4 Objetivos Camada de rede Objetivos do capítulo: !  entender os princípios por trás dos serviços da camada de rede: "  modelos de serviço da camada de rede "  repasse versus roteamento "  como funciona um roteador "  roteamento (seleção de caminho) "  lidando com escala "  tópicos avançados: IPv6, mobilidade !  instanciação, implementação na Internet segunda-feira, 17 de outubro de 11 4
  • 5. Sumário Introdução Redes de circuitos virtuais e de datagramas O que há dentro de um roteador? O Protocolo da Internet (IP) Algoritmos de roteamento Roteamento na Internet segunda-feira, 17 de outubro de 11 5
  • 6. Camada Camada de rede Camada de rede de Rede !  !  segmento detransporte do segmento de transporte do aplicação aplicação hosp. emissorao receptor ao receptor transporte hosp. emissor transporte rede enlace rede !  o lado emissor encapsula enlace física !  o lado emissor encapsula física segmentos em datagramas rede rede enlace redeenlace rede segmentos em datagramas rede enlace física física enlace enlace !  o lado receptor entre rede física física rede física enlace rede !  o lado receptor entre enlace física enlace rede segmentos à camada de física enlace física rede enlace segmentos à camada de transporte rede física física rede transporte enlace enlace !  protocolos da camada de física física rede rede rede enlace enlace enlace rede em cada hosp., !  protocolos da camada de física física rede física aplicação enlace roteador rede rede em cada hosp., transporte enlace física rede rede rede física enlace enlace aplicação !  roteador examina campos roteador enlace física rede física enlace física transporte rede rede de cabeçalho em todos os rede física enlace enlace !  roteador examina campos enlace física física datagramas IP que passam física depor ele cabeçalho em todos os datagramas IP que passam por ele segunda-feira, 17 de outubro de 11 6
  • 7. Duas funçõesda entrada !  repasse: mover pacotes an do roteador para a !  Duas importantes funções saída apropriada do da camada de rede roteador !  repasse: mover !  roteamento: analogia: pacotes da entrada determinar rota !  do roteador para a saída apropriada do X !  roteamento: processo seguida pelos pacotes de planejamento da da origem ao destino roteador viagem da origem ao "  algoritmos de roteamento destino !  roteamento: determinar rota !  repasse: processo de seguida pelos pacotes passar por um único da origem ao destino cruzamento "  algoritmos de roteamento segunda-feira, 17 de outubro de 11 7
  • 8. analogia: !  Analogia roteamento: processo funções Duas importantes deda camada de rede planejamento da viagem da origem ao destino !  repasse: mover analogia: pacotes da entrada !  repasse: processo de !  roteamento: processo do roteador para a passar por um único do de planejamento da saída apropriada cruzamento roteador X viagem da origem ao destino !  roteamento: determinar rota !  repasse: processo de seguida pelos pacotes passar por um único da origem ao destino cruzamento "  algoritmos de roteamento segunda-feira, 17 de outubro de 11 8
  • 9. e repasse algoritmo de roteamento Interação entre tabela de repasse local repasse e valor do cab. enlace saída 0100 3 roteamento 0101 0111 2 2 1001 1 valor no cab. do pacote chegando 0111 1 3 2 segunda-feira, 17 de outubro de 11 9
  • 10. Estabelecimento de conexão Estabelecimento de conexão !  3a função importante em algumas arquiteturas de rede: "  ATM, frame relay, X.25 !  antes que os datagramas fluam, dois hospedeiros finais e roteadores entre eles estabelecem conexão virtual "  roteadores são envolvidos !  serviço de conexão da camada de rede versus transporte: "  rede: entre dois hospedeiros (também pode envolver roteadores entre eles, no caso de VCs) "  transporte: entre dois processos segunda-feira, 17 de outubro de 11 10
  • 11. Modelos de serviços Modelo de serviço de rede Modelo de de serviço de rede Modelo serviço de rede P: Que modelo de serviço é o melhor para o “canal” que P: QueQue modelo serviçodoo é o melhor para“canal” que P: modelo de de serviço melhor para transporta datagramas é remetente aoodestinatário? o “canal” que transporta datagramas do remetente ao ao destinatário? transporta datagramas do remetente destinatário? exemplo de serviços para exemplo de serviços para datagramas serviços para exemplo de de serviços para exemplo de serviços para exemplo de exemplo serviços para fluxo de datagramas: datagramas datagramas individuais: fluxo de de datagramas: fluxo datagramas: !  entrega de datagrama individuais: individuais: !  entrega de de datagrama !  entrega datagrama na ordem !  entrada garantida !  entrada garantida !  entrada garantida na ordem na ordem !  entrega garantida com !  largura de banda !  entrega garantida com !  largura de de banda !  entrega limitado com garantida !  largura banda mínima garantida atraso mínima garantida mínima garantida atraso limitado atraso limitado !  restrições sobre !  restrições sobre !  restrições sobre mudanças no mudanças no no mudanças espaçamento entre espaçamento entre espaçamento entre pacotes pacotes pacotes segunda-feira, 17 de outubro de 11 11
  • 12. Modelos de serviço da Modelos de camada de rede: serviços segunda-feira, 17 de outubro de 11 12
  • 13. Sumário Introdução Redes de circuitos virtuais e de datagramas O que há dentro de um roteador? O Protocolo da Internet (IP) Algoritmos de roteamento Roteamento na Internet segunda-feira, 17 de outubro de 11 13
  • 14. Serviço com e sem sem conexão Serviço com e conexão da camada de rede !  rede de datagrama fornece serviço sem conexão da camada de rede !  rede VC fornece serviço com conexão da camada de rede !  análogo aos serviços da camada de transporte, mas: "  serviço: hospedeiro a hospedeiro "  sem escolha: a rede oferece um ou outro "  implementação: no núcleo da rede segunda-feira, 17 de outubro de 11 14
  • 15. Circuitos virtuais Circuitos Virtuais Circuitos virtuais “Caminho da origem ao destino comporta-se como um circuito telefônico” destino comporta-se como um “Caminho da origem ao com respeito ao desempenho "  circuito telefônico” "  ações da redeao desempenho caminho "  com respeito ao longo do da origem ao destino "  ações da rede ao longo do caminho da origem ao destino !  estabelecimento e término para cada chamada antes que os !  estabelecimento e término para cada chamada antes que os dados possam fluir dados possam fluir !  cada pacote carrega identificador VC (não(não endereço do !  cada pacote carrega identificador VC endereço do hospedeiro de destino) hospedeiro de destino) !  cada roteador no caminho origem-destino mantém “estado” !  cada roteador no caminho origem-destino mantém “estado” para cada conexão que estiver passando para cada conexão que estiver passando !  recursos do enlace e roteador (largura de banda, buffers) !  recursos ser enlace e roteador (largura de = serviço buffers) podem do alocados ao VC (recursos dedicados banda, podem ser alocados ao VC (recursos dedicados = serviço previsível) previsível) segunda-feira, 17 de outubro de 11 15
  • 16. Implementação Implementação do VC do CV um VC consiste em: 1.  caminho da origem ao destino 2.  números de VC, um número para cada enlace ao longo do caminho 3.  entradas em tabelas de repasse nos roteadores ao longo do caminho !  pacote pertencente ao VC carrega número do VC (em vez do endereço de destino) !  número do VC pode ser alterado em cada enlace "  novo número de VC vem da tabela de repasse segunda-feira, 17 de outubro de 11 16
  • 17. Tabela de Tabela de repasse número do VC repasse 22 12 32 1 3 2 tabela de repasse no número da roteador noroeste: interface Roteadores mantêm informação de estado da conexão! segunda-feira, 17 de outubro de 11 17
  • 18. Circuitos virtuais: CircuitosProtocolos de sinalização CV: virtuais: protocolos de sinalização protocolos de sinalização !  usados para estabelecer, manter e manter e terminar !  usados para estabelecer, terminar VC VC !  usados em ATM, frame-relay, !  usados em ATM, frame-relay, X.25 X.25 !  não usados na Internet de hoje de hoje !  não usados na Internet aplicação 5. Fluxo de dados iniciado 6. Recebe dados aplicação aplicação transporte rede 5. Fluxo de dados iniciado 4. Chamada conectada 6. transporte 3. Chamada aceita Recebe dados transporte rede enlace 1. Inicia chamada 2. Chamada chegando rede 4. Chamada conectada 3. Chamada aceita enlace física enlace 1. Inicia chamada 2. Chamada chegando física física segunda-feira, 17 de outubro de 11 18
  • 19. RedesRedes de Datagramas de datagrama !  sem estabelecimento de chamada na camada de rede !  roteadores: sem estado sobre conexões fim a fim "  sem conceito em nível de rede da “conexão” !  pacotes repassados usando endereço do hospedeiro de destino "  pacotes entre mesmo par origem-destino podem tomar caminhos diferentes aplicação aplicação transporte transporte rede 1. Envia dados 2. Recebe dados rede enlace enlace física física segunda-feira, 17 de outubro de 11 19
  • 20. Tabela de repasse Tabela de repasse 4 bilhões de entradas possíveis Faixa de endereços de destino Interface de enlace! 11001000 00010111 00010000 00000000 até 0 11001000 00010111 00010111 11111111! 11001000 00010111 00011000 00000000 até 1 11001000 00010111 00011000 11111111 ! 11001000 00010111 00011001 00000000 até 2 11001000 00010111 00011111 11111111 ! senão 3! segunda-feira, 17 de outubro de 11 20
  • 21. Tabela de Otimização por prefixo oncordância do prefixo mais longo repasse mais longo Concordância do prefixo Interface do enlace 11001000 00010111 00010 0 11001000 00010111 00011000 1 11001000 00010111 00011 2 senão 3! Exemplos DA: 11001000 00010111 00010110 10100001 Qual interface? DA: 11001000 00010111 00011000 10101010 Qual interface? segunda-feira, 17 de outubro de 11 21
  • 22. Redes de datagramas Rede dede datagramas VC:VC: Rede datagramas ou ou ou CV? por quê? por quê? Internet (datagrama) Internet (datagrama) ATM (VC)(VC) ATM !  troca de dados entre !  evoluída da telefonia !  troca de dados entre !  evoluída da telefonia computadores computadores !  conversação humana: !  conversação humana: "  serviço “elástico”, sem "  requisitos de "  serviço “elástico”, sem "  requisitos de requisitos de temporização temporização estritos, requisitos de temporização temporização estritos, estritos confiabilidade estritos confiabilidade !  sistemas finais "  necessário para serviço !  sistemas finais "  necessário para serviço “inteligentes” (computadores) garantido “inteligentes” (computadores) garantido "  pode adaptar, realizar !  sistemas finais “burros” "  pode adaptar, realizar !  sistemas finais “burros” controle, recup. de erros controle, recup. de erros "  telefones "  simples dentro da rede, "  telefones "  simples dentro da rede, "  complexidade dentro da complexidade na “borda” complexidade na “borda” rede complexidade dentro da "  !  muitos tipos de enlace rede !  muitos tipos de enlace "  diferentes características "  diferentes características "  serviço uniforme difícil "  serviço uniforme difícil segunda-feira, 17 de outubro de 11 22
  • 23. Sumário Introdução Redes de circuitos virtuais e de datagramas O que há dentro de um roteador? O Protocolo da Internet (IP) Algoritmos de roteamento Roteamento na Internet segunda-feira, 17 de outubro de 11 23
  • 24. Visão geral da arquitetura Visão geral da arquitetura do Roteador do roteador Duas funções principais do roteador: !  executar algoritmos/protocolo de roteamento (RIP, OSPF, BGP) !  repassar datagramas do enlace de entrada para saída segunda-feira, 17 de outubro de 11 24
  • 25. Funções da porta de entrada A porta de entrada Camada física: recepção por bit Camada de enlace Comutação descentralizada: de dados: !  dado destino do datagrama, porta de p. e., Ethernet saída de pesquisa usando tabela de repasse na memória da porta de entrada ver Capítulo 5 !  objetivo: processamento completo da porta de entrada na ‘velocidade de linha’ !  fila: se datagramas chegarem mais rápido que taxa de repasse no elemento de comutação segunda-feira, 17 de outubro de 11 25
  • 26. Comutação por memória Comutação por memória Roteadores de primeira geração: !  computadores tradicionais com a comutação via controle direto da CPU !  pacote copiado para a memória do sistema !  velocidade limitada pela largura de banda da memória (2 travessias de barramento por datagrama) porta memória porta entrada saída Barramento do sistema segunda-feira, 17 de outubro de 11 26
  • 27. Comutação por um barramento Comutação por barramento !  datagrama da memória da porta de entrada à memória da porta de saída por um barramento compartilhado !  disputa pelo barramento: velocidade da comutação limitada pela largura de banda do barramento !  barramento Cisco 5600 de 32 Gbps: velocidade suficiente para roteadores de acesso e corporativos segunda-feira, 17 de outubro de 11 27
  • 28. Comutação por rede de Comutação por uma rede de interconexão interconexão !  contorna limitações de largura de banda do barramento !  redes Banya, outras redes de interconexão desenvolvidas inicialmente para conectar processadores no multiprocessador !  projeto avançado: fragmenta datagrama em células de tamanho fixo, comuta células através do elemento de comutação !  Cisco 12000: comuta 60 Gbps através da rede de interconexão segunda-feira, 17 de outubro de 11 28
  • 29. A porta de saída Portas de saída !  Buffering exigido quando os datagramas chegam do elemento de comutação mais rápido que a taxa de transmissão !  Disciplina de escalonamento escolhe entre os datagramas enfileirados para transmissão segunda-feira, 17 de outubro de 11 29
  • 30. Enfileiramento na porta Enfileiramento da porta de saída de saída !  buffering quando a taxa de chegada via comutador excede a velocidade da linha de saída !  enfileiramento (atraso) e perda devidos a estouro de buffer na porta de saída! segunda-feira, 17 de outubro de 11 30
  • 31. Enfileiramento da porta Enfileiramento da porta de entrada de entrada !  elemento de comutação mais lento que portas de entrada combinadas -> enfileiramento possível nas filas de entrada !  bloqueio de cabeça de fila (HOL) : datagrama enfileirado na frente da fila impede que outros na fila sigam adiante !  atraso de enfileiramento e perda devidos a estouro no buffer de entrada segunda-feira, 17 de outubro de 11 31
  • 32. Sumário Introdução Redes de circuitos virtuais e de datagramas O que há dentro de um roteador? O Protocolo da Internet (IP) Algoritmos de roteamento Roteamento na Internet segunda-feira, 17 de outubro de 11 32
  • 33. A camada de rede da A camada de rede da Internet Internet Funções na camada de rede do hospedeiro e roteador: Camada de transporte: TCP, UDP prots. roteamento protocolo IP • seleção caminho • convs. de endereçamento • RIP, OSPF, BGP • formato de datagrama Camada • convs. manuseio de pacote de rede tabela de protocolo ICMP repasse • informe de erro • “sinalização” do roteador Camada de enlace Camada física segunda-feira, 17 de outubro de 11 33
  • 34. do datagrama IP O formato do datagrama IP Formato do datagrama IP Quanto overhead com TCP? d com TCP? !  20 bytes de TCP !  20 bytes de IP TCP !  = 40 bytes + overhead da camada de aplicação segunda-feira, 17 de outubro de 11 34
  • 35. Fragmentação Fragmentação e reconstrução do IP e reconstrução do IP !  enlaces de rede têm MTU (tamanho máx. transferência) – maior quadro em nível de enlace possível. "  diferentes tipos de enlace, diferentes MTUs !  grande datagrama IP dividido (“fragmentado”) dentro da rede "  um datagrama torna-se vários datagramas "  “reconstruído” somente no destino final "  bits de cabeçalho IP usados para identificar, ordenar fragmentos relacionados segunda-feira, 17 de outubro de 11 35
  • 36. Exemplo de/fragmentação tam. ID fragflag desloc. Exemplo = 4000 = x =0 =0 !  datagrama de 4000 Um datagrama grande torna-se bytes vários datagramas menores !  MTU = 1500 bytes tam. ID fragflag desloc. = 1500 = x =1 =0 1480 bytes no campo de dados tam. ID fragflag desloc. = 1500 = x =1 = 185 deslocamento = 1480/8 tam. ID fragflag desloc. = 1040 = x =0 = 370 segunda-feira, 17 de outubro de 11 36
  • 37. Endereçamento genérico Prática em sala de aula! segunda-feira, 17 de outubro de 11 37
  • 38. Endereçamento Endereçamento IP: IP: Introdução introdução 223.1.1.1 !  endereço IP: 223.1.2.1 identificador de 32 223.1.1.2 223.1.1.4 223.1.2.9 bits para interface de hospedeiro e roteador 223.1.1.3 223.1.3.27 223.1.2.2 !  interface: conexão entre hospedeiro/ roteador e enlace físico 223.1.3.1 223.1.3.2 "  roteadores normalmente têm várias interfaces "  hospedeiro normalmente tem uma interface 223.1.1.1 = 11011111 00000001 00000001 00000001 "  endereços IP associados 223 1 1 1 a cada interface segunda-feira, 17 de outubro de 11 38
  • 39. Endereçamento IP: sub-redes Sub-redes !  endereço IP: 223.1.1.1 "  parte da sub-rede (bits 223.1.2.1 223.1.1.2 de alta ordem) 223.1.1.4 223.1.2.9 "  parte do host (bits de baixa ordem) 223.1.1.3 223.1.2.2 223.1.3.27 !  O que é uma sub-rede? sub-rede "  dispositivo se conecta à mesma parte da sub- 223.1.3.1 223.1.3.2 -rede do endereço IP "  pode alcançar um ao outro fisicamente sem roteador intermediário rede consistindo em 3 sub-redes segunda-feira, 17 de outubro de 11 39
  • 40. Endereçamento IP: endereço rede(sub) 223.1.1.0/24 223.1.2.0/24 Receita !  para determinar as sub-redes, destaque cada interface de seu hospedeiro ou roteador, criando ilhas de redes isoladas. Cada rede isolada é denominada sub-red 223.1.3.0/24 Máscara de sub-rede: /24 segunda-feira, 17 de outubro de 11 40
  • 41. 223.1.1.2 Quantas Quantas? 223.1.1.1 223.1.1.4 sub-redes existem 223.1.1.3 aqui? 223.1.9.2 223.1.7.0 6 223.1.9.1 223.1.7.1 223.1.8.1 223.1.8.0 223.1.2.6 223.1.3.27 223.1.2.1 223.1.2.2 223.1.3.1 223.1.3.2 segunda-feira, 17 de outubro de 11 41
  • 42. Endereçamento IP: CIDR CIDR Endereçamento IP: CIDR: Classless InterDomain Routing (roteamento interdomínio sem classes) "  parte de sub-rede do endereço de tamanho arbitrário "  formato do endereço: a.b.c.d/x, onde x é # bits na parte de sub-rede do endereço parte de parte do sub-rede hosp. 11001000 00010111 00010000 00000000 200.23.16.0/23 segunda-feira, 17 de outubro de 11 42
  • 43. Endereços IP: Endereçamento IP: como configurar? como obter um? P: Como um hospedeiro obtém endereço IP? !  fornecido pelo administrador do sistema em um arquivo "  Windows: painel de controle->rede ->configuração->tcp/ip->propriedades "  UNIX: /etc/rc.config !  DHCP: Dynamic Host Configuration Protocol: recebe endereço dinamicamente do servidor "  “plug-and-play” segunda-feira, 17 de outubro de 11 43
  • 44. DHCP: Dynamic Host Configuration Protocol DHCP: Dynamic Host Configuration Protocol Objetivo: permitir que o hospedeiro obtenha dinamicamente seu endereço IP do servidor de rede quando se conectar à rede pode renovar seu prazo no endereço utilizado permite reutilização de endereços (só mantém endereço enquanto conectado e “ligado”) aceita usuários móveis que queiram se juntar à rede (mais adiante) Visão geral do DHCP: "  host broadcasts “DHCP discover” msg [optional] "  servidor DHCP responde com msg “DHCP offer” [opcional] "  hospedeiro requer endereço IP: msg “DHCP request” "  servidor DHCP envia endereço: msg “DHCP ack” segunda-feira, 17 de outubro de 11 44
  • 45. CP – cenário DHCP: cenário cliente/servidor nte/servidor A 223.1.1.1 servidor 223.1.2.1 DHCP 223.1.1.2 223.1.1.4 223.1.2.9 B 223.1.2.2 cliente DHCP 223.1.1.3 223.1.3.27 E chegando precisa de endereço nesta rede 223.1.3.1 223.1.3.2 segunda-feira, 17 de outubro de 11 45
  • 46. DHCP: cenário cliente/servidor servidor DHCP: 223.1.2.5 Descoberta DHCP src : 0.0.0.0, 68 dest.: 255.255.255.255,67 cliente yiaddr: 0.0.0.0 chegando transaction ID: 654 Oferta DHCP src: 223.1.2.5, 67 dest: 255.255.255.255, 68 yiaddrr: 223.1.2.4 transaction ID: 654 Lifetime: 3600 secs Solicitação DHCP src: 0.0.0.0, 68 dest:: 255.255.255.255, 67 yiaddrr: 223.1.2.4 transaction ID: 655 tempo Lifetime: 3600 secs DHCP ACK src: 223.1.2.5, 67 dest: 255.255.255.255, 68 yiaddrr: 223.1.2.4 transaction ID: 655 Lifetime: 3600 secs segunda-feira, 17 de outubro de 11 46
  • 47. DHCP: não apenas o endereço IP DHCP: mais do que endereço IP DHCP pode retornar mais do que apenas o endereço IP alocado na sub-rede: "  endereço do roteador do primeiro salto para o cliente "  nome e endereço IP do servidor DNS "  máscara de rede (indicando parte de rede versus hospedeiro do endereço) segunda-feira, 17 de outubro de 11 47
  • 48. DHCP: exemplo maior DHCP: exemplo DHCP DHCP !  conexão de laptop precisa do DHCP UDP seu endereço IP, endereço do IP roteador do primeiro salto, DHCP DHCP Eth Phy endereço do servidor DNS: DHCP use DHCP !  solicitação DHCP encapsulada no UDP, encapsulada no IP, DHCP DHCP 168.1.1.1 encapsulado no Ethernet DHCP UDP DHCP IP 802.1 DHCP Eth roteador !  broadcast de quadro Phy (roda DHCP) Ethernet (dest: FFFFFFFFFFFF) na LAN, recebido no roteador rodando DHCP !  Ethernet demultiplexado para IP demultiplexado, UDP demultiplexado para DHCP segunda-feira, 17 de outubro de 11 48
  • 49. DHCP: exemplo maior DHCP DHCP UDP !  servidor DCP formula DHCP DHCP ACK contendo DHCP IP endereço IP do cliente, Eth endereço IP do roteador do primeiro DHCP Phy salto para cliente, nome & endereço IP do DHCP DHCP servidor DNS DHCP !  encapsulamento do UDP servidor DHCP, quadro DHCP IP roteador repassado ao cliente, DHCP DHCP Eth (roda DHCP) demultiplexando para Phy DHCP no cliente !  cliente agora sabe seu endereço IP, nome e endereço IP do servidor DSN, endereço IP do seu roteador do primeiro salto segunda-feira, 17 de outubro de 11 49
  • 50. Endereçamento IP: como obter? Endereços IP: como obter um? P: Como a rede obtém a parte de sub-rede do endereço IP? R: Recebe parte alocada do espaço de endereços do seu ISP Bloco do ISP Bloco do ISP 11001000 00010111 00010000 00000000 200.23.16.0/20 11001000 00010111 00010000 00000000 200.23.16.0/20 Organização 0 Organização 0 11001000 11001000 00010111 00010111 00010000 00010000 00000000 00000000 200.23.16.0/23 200.23.16.0/23 Organização 1 Organização 1 11001000 11001000 00010111 00010111 00010010 00010010 00000000 00000000 200.23.18.0/23 200.23.18.0/23 Organização 2 Organização 2 11001000 11001000 00010111 00010111 00010100 00010100 00000000 00000000 200.23.20.0/23 200.23.20.0/23 ... ... ….. ….. …. …. …. …. Organização 7 Organização 7 11001000 00010111 11001000 00010111 00011110 00000000 00011110 00000000 200.23.30.0/23 200.23.30.0/23 segunda-feira, 17 de outubro de 11 50
  • 51. Endereçamento hierárquico: Endereçamento hierárquico: agregação de rota agregação de rota Endereçamento hierárquico permite anúncio eficiente da informação de roteamento: Organização 0 200.23.16.0/23 Organização 1 “Envie-me qualquer 200.23.18.0/23 coisa com endereços Organização 2 começando com 200.23.20.0/23 . Fly-By-Night-ISP 200.23.16.0/20” . . . Internet . Organização 7 . 200.23.30.0/23 “Envie-me qualquer ISPs-R-Us coisa com endereços começando com 199.31.0.0/16” segunda-feira, 17 de outubro de 11 51
  • 52. Endereçamento hierárquico: Endereçamento hierárquico: rota mais específica rotas mais específicas ISPs-R-Us tem uma rota mais específica para Organização 1 Organização 0 200.23.16.0/23 “Envie-me qualquer coisa com endereços Organização 2 começando com 200.23.20.0/23 . Fly-By-Night-ISP 200.23.16.0/20” . . . Internet . Organização 7 . 200.23.30.0/23 “Envie-me qualquer ISPs-R-Us coisa com endereços Organização 1 começando com 199.31.0.0/16 ou 200.23.18.0/23” 200.23.18.0/23 segunda-feira, 17 de outubro de 11 52
  • 53. Endereçamento IP: Endereçamento IP: ... a última palavra... P: Como um ISP recebe bloco de endereços? R: ICANN: Internet Corporation for Assigned Names and Numbers "  aloca endereços "  administra o DNS "  atribui nomes de domínio e resolve disputas segunda-feira, 17 de outubro de 11 53
  • 54. E quando os endereços IP acabarem? Mais um suspiro: NAT segunda-feira, 17 de outubro de 11 54
  • 55. NAT: Network Address NAT: Network Address Translation Translation restante da rede local Internet (p. e., rede doméstica) 10.0.0/24 10.0.0.1 10.0.0.4 10.0.0.2 138.76.29.7 10.0.0.3 todos os datagramas saindo da rede datagramas com origem ou local têm mesmo endereço IP NAT destino nesta rede têm de origem: 138.76.29.7, mas endereço 10.0.0/24 para diferentes números de porta de origem/destino (como sempre) origem segunda-feira, 17 de outubro de 11 55
  • 56. NAT: Network Address Translation !  motivação: rede local usa apenas um endereço IP no que se refere ao mundo exterior: "  intervalo de endereços não necessário pelo ISP: apenas um endereço IP para todos os dispositivos "  pode mudar os endereços dos dispositivos na rede local sem notificar o mundo exterior "  pode mudar de ISP sem alterar os endereços dos dispositivos na rede local "  dispositivos dentro da rede local não precisam ser explicitamente endereçáveis ou visíveis pelo mundo exterior (uma questão de segurança). segunda-feira, 17 de outubro de 11 56
  • 57. NAT: Implementação Implementação: roteador NAT deve: Implementação: roteador NAT deve: Implementação: roteador NAT deve: "  enviando datagramas: substituir (endereço IP de "  enviando datagramas: substituir (endereço IP de "  enviando datagramas: substituir (endereço IP de origem, # porta) de cada datagrama saindo por origem, # porta) de cada datagrama saindo por origem, # porta) de cada datagrama saindo por (endereço IP da NAT, novo # porta) (endereço IP da NAT, novo # porta) (endereço IP da NAT, novo # porta) ... ... ... clientes/servidores remotos responderão usando clientes/servidores remotos responderão usando clientes/servidores remotos responderão usando (endereço IP da NAT, novo # porta) como endereço (endereço IP da NAT, novo # porta) como endereço (endereço IP da NAT, novo # porta) como endereço de destino de destino de destino "  lembrar (na tabela de tradução NAT) de cada par de "  lembrar (na tabela de tradução NAT) de cada par de "  lembrar (na tabela de tradução NAT) de cada par de tradução (endereço IP de origem, # porta) para tradução (endereço IP de origem, # porta) para tradução (endereço IP de origem, # porta) para (endereço IP da NAT, novo # porta) (endereço IP da NAT, novo # porta) (endereço IP da NAT, novo # porta) "  recebendo datagramas: substituir (endereço IP da "  recebendo datagramas: substituir (endereço IP da "  recebendo datagramas: substituir (endereço IP da NAT, novo # porta) nos campos de destino de cada NAT, novo # porta) nos campos de destino de cada NAT, novo # porta) nos campos de destino de cada datagrama chegando por (endereço IP origem, # porta) datagrama chegando por (endereço IP origem, # porta) datagrama chegando por (endereço IP origem, # porta) correspondente, armazenado na tabela NAT correspondente, armazenado na tabela NAT correspondente, armazenado na tabela NAT segunda-feira, 17 de outubro de 11 57
  • 58. NAT: Funcionamento 2: roteador NAT 1: hospedeiro 10.0.0.1 muda endereço de envia datagrama para origem do 128.119.40.186, 80 datagrama de 10.0.0.1, 3345 para 138.76.29.7, 5001, atualiza tabela 3: Resposta chega endereço destino: 4: roteador NAT muda endereço 138.76.29.7, 5001 de destino do datagrama de 138.76.29.7, 5001 para 10.0.0.1, 3345 segunda-feira, 17 de outubro de 11 58
  • 59. NAT: Funcionamento !  campo de número de porta de 16 bits: "  60.000 conexões simultâneas com um único endereço no lado da LAN! !  NAT é controvertido: "  roteadores só devem processar até a camada 3 "  viola argumento de fim a fim •  a possibilidade de NAT deve ser levada em conta pelos projetistas da aplicação, p. e., aplicações P2P "  a falta de endereços deverá ser resolvida pelo IPv6 segunda-feira, 17 de outubro de 11 59
  • 60. Problema da travessia NAT: Problema! da NAT !  cliente quer se conectar ao servidor com endereço 10.0.0.1 10.0.0.1 Client "  endereço do servidor 10.0.0.1 ? local à LAN (cliente não pode usá-lo como endereço destino) 10.0.0.4 "  apenas um endereço NAT visível 138.76.29.7 externamente: 138.76.29.7 roteador NAT !  solução 1: configure a NAT estaticamente para repassar as solicitações de conexão que chegam a determinada porta ao servidor "  p. e., (123.76.29.7, porta 2500) sempre repassado para 10.0.0.1 porta 25000 segunda-feira, 17 de outubro de 11 60
  • 61. NAT: Problema! !  solução 2: Universal Plug and Play (UPnP) Internet Gateway 10.0.0.1 Device (IGD) Protocol. Permite que o hospedeiro com NAT: IGD !  descubra endereço IP 10.0.0.4 público (138.76.29.7) 138.76.29.7 NAT !  inclua/remova mapeamentos router de porta (com tempos de posse) ou seja, automatizar configuração estática do mapa de porta NAT segunda-feira, 17 de outubro de 11 61
  • 62. NAT: Problema! !  solução 3: repasse (usado no Skype) "  cliente com NAT estabelece conexão com repasse "  cliente externo se conecta ao repasse "  repasse liga pacotes entre duas conexões 2. conexão com 1. conexão com relay iniciado relay iniciado pelo cliente pelo hospedeiro 10.0.0.1 3. relaying de NAT Cliente estabelecido 138.76.29.7 roteador NAT segunda-feira, 17 de outubro de 11 62
  • 63. ICMP: Internet Control Message Protocol ICMP: Internet Control Message Protocol !  usado por hospedeiros & Tipo Cód, Descrição roteadores para comunicar 0 0 resposta de eco (ping) informações em nível de rede 3 0 rede de destino inalcançável "  relato de erro: hospedeiro, 3 1 hosp. de destino inalcançável rede, porta, protocolo 3 2 protocolo de destino inalcançável inalcançável 3 3 porta de destino inalcançável 3 6 rede de destino desconhecida "  eco de solicitação/ 3 7 hosp. de destino desconhecido resposta (usado por ping) 4 0 redução da fonte (controle de !  camada de rede “acima” do IP: congestionamento – não usado) "  msgs ICMP transportadas 8 0 solicitação de eco (ping) 9 0 anúncio de rota em datagramas IP 10 0 descoberta do roteador !  mensagem ICMP: tipo, código 11 0 TTL expirado mais primeiros 8 bytes do 12 0 cabeçalho IP inválido datagrama IP causando erro segunda-feira, 17 de outubro de 11 63
  • 64. Traceroute e ICMP Traceroute e ICMP !  origem envia série de !  quando a mensagem ICMP segmentos UDP ao destino chega, origem calcula RTT "  primeiro tem TTL = 1 !  traceroute faz isso 3 vezes "  segundo tem TTL = 2 etc. Critério de término "  número de porta !  segmento UDP por fim chega improvável no hospedeiro de destino !  quando no datagrama !  destino retorna pacote ICMP chegar no no roteador: “host inalcançável” (tipo 3, "  roteador descarta código 3) datagrama !  quando origem recebe esse "  e envia à origem uma msg ICMP (tipo 11, código 0) ICMP, termina. "  mensagem inclui nome do roteador & endereço IP segunda-feira, 17 de outubro de 11 64
  • 65. IPv6: Internet Protocol Ver.6 IPv6 !  motivação inicial: espaço de endereço de 32 bit logo estará completamente alocado !  motivação adicional: "  formato de cabeçalho ajuda a agilizar processamento e repasse "  mudanças no capítulo para facilitar QoS formato de datagrama IPv6: "  cabeçalho de 40 bytes de tamanho fixo "  fragmentação não permitida segunda-feira, 17 de outubro de 11 65
  • 66. Cabeçalho IPv6 IPv6: Cabeçalho IPv6 prioridade: identificar prioridade entre datagramas no fluxo rótulo de fluxo: identificar datagramas no mesmo “fluxo.” (conceito de “fluxo” não bem definido) próximo cabeçalho: identificar protocolo da camada superior para dados segunda-feira, 17 de outubro de 11 66
  • 67. IPv6: Outras mudanças Outras mudanças do IPv4 !  soma de verificação: removida inteiramente para reduzir tempo de processamento em cada salto !  opões: permitidas, mas fora do cabeçalho, indicadas pelo campo de “Próximo Cabeçalho” !  ICMPv6: nova versão do ICMP "  tipos de mensagem adicionais, p. e. “Pacote Muito Grande” "  funções de gerenciamento de grupo multicast segunda-feira, 17 de outubro de 11 67
  • 68. Transição IPv4 → IPv6 Transição de IPv4 para IPv6 !  nem todos os roteadores podem ser atualizados simultaneamente "  sem “dia de conversão” "  como a rede operará com roteadores IPv4 e IPv6 misturados? !  implantação de túnel: IPv6 transportado como carga útil no datagrama IPv4 entre roteadores IPv4 segunda-feira, 17 de outubro de 11 68
  • 69. Transição IPv4 → IPv6 Implantação Implantação de um túnel de túnel A B E F Visão lógica: túnel IPv6 IPv6 IPv6 IPv6 A B E F Visão física: IPv6 IPv6 IPv4 IPv4 IPv6 IPv6 segunda-feira, 17 de outubro de 11 69
  • 70. Transição IPv4 → IPv6 Visão lógica: Visão física: Implantação de um túnel segunda-feira, 17 de outubro de 11 70
  • 71. Sumário Introdução Redes de circuitos virtuais e de datagramas O que há dentro de um roteador? O Protocolo da Internet (IP) Algoritmos de roteamento Roteamento na Internet segunda-feira, 17 de outubro de 11 71
  • 72. e repasse algoritmo de roteamento Interação entre tabela de repasse local repasse e valor do cab. enlace saída 0100 3 roteamento 0101 0111 2 2 1001 1 valor no cab. do pacote chegando 0111 1 3 2 segunda-feira, 17 de outubro de 11 72
  • 73. Abstração de grafo Abstração de grafo 5 3 v w 5 2 u 2 1 z 3 1 2 Grafo: G = (N,E) x 1 y N = conjunto de roteadores = { u, v, w, x, y, z } E = conjunto de enlaces = { (u,v), (u,x), (v,x), (v,w), (x,w), (x,y), (w,y), (w,z), (y,z) } Comentário: Abstração de grafo é útil em outros contextos de rede Exemplo: P2P, onde N é conj. de pares e E é conj. de conexões TCP segunda-feira, 17 de outubro de 11 73
  • 74. Abstração de grafo: custos Abstração de grafo: custos 5 •  c(x,x’) = custo do enlace (x,x’) 3 v w 5 - p. e., c(w,z) = 5 2 u 2 1 z 3 •  custo poderia ser sempre 1, ou 1 2 inversamente relacionado à largura x 1 y ou inversamente relacionado ao congestionamento Custo do caminho (x1, x2, x3,…, xp) = c(x1,x2) + c(x2,x3) + … + c(xp-1,xp) Pergunta: Qual é o caminho de menor custo entre u e z? algoritmo de roteamento: algoritmo que encontra o caminho de menor custo segunda-feira, 17 de outubro de 11 74
  • 75. Classificação de algoritmos de roteamento Classificação do algoritmo Classificação do algoritmo de roteamento de roteamento informação global ouou informação global Estático ou ou dinâmico? Estático dinâmico? descentralizada? descentralizada? estático: estático: global: !  rotas mudam lentamente global: !  rotas mudam lentamente !  todos os roteadores têm topologia com o tempo !  todos os roteadores têm topologia com o tempo completa, informação de custo do dinâmico: completa, informação de custo do dinâmico: enlace !  rotas mudam mais enlace !  rotas mudam mais !  algoritmos de “estado do enlace” rapidamente !  algoritmos de “estado do enlace” rapidamente descentralizada: "  atualização periódica descentralizada: "  atualização periódica !  roteador conhece vizinhos "  em resposta a !  roteador conhece vizinhos "  em resposta a conectados fisicamente, custos de mudanças no custo do conectados fisicamente, custos de enlace para vizinhos mudanças no custo do enlace enlace para vizinhos enlace !  processo de computação iterativo, !  processo de computaçãovizinhos troca de informações com iterativo, troca de informações com vizinhos !  algoritmos de “vetor de distância” !  algoritmos de “vetor de distância” segunda-feira, 17 de outubro de 11 75
  • 76. Algoritmo de roteamento Alg. de roteamento: Estado de Enlace de estado do enlace notação: algoritmo de Dijkstra !  c(x,y): custo do enlace !  nova topologia, custos de enlace do nó x até y; = ! se não conhecidos de todos os nós forem vizinhos diretos "  realizado por “broadcast de !  D(v): valor atual do estado do enlace” custo do caminho da "  todos os nós têm a mesma origem ao destino v informação !  p(v): nó predecessor ao !  calcula caminhos de menor longo do caminho da custo de um nó (“origem”) para origem até v todos os outros nós "  da tabela de repasse para !  N': conjunto de nós cujo esse nó caminho de menor custo !  iterativo: após k iterações, é definitivamente sabe caminho de menor custo conhecido para k destinos segunda-feira, 17 de outubro de 11 76
  • 77. Alg. de roteamento: Estado de Enlace Algoritmo de Dijkstra 1 Inicialização: Algoritmo de Dijkstra 2 N' = {u} 3 para todos os nós v 4 se v adjacente a u 5 então D(v) = c(u,v) 6 senão D(v) = ! 7 8 Loop 9 acha w não em N' tal que D(w) é mínimo 10 acrescenta w a N' 11 atualiza D(v) para todo v adjacente a w e não em N' : 12 D(v) = min( D(v), D(w) + c(w,v) ) 13 /* novo custo para v é custo antigo para v ou custo conhecido 14 do caminho mais curto para w + custo de w para v */ 15 até todos os nós em N' segunda-feira, 17 de outubro de 11 77
  • 78. Algoritmo de Dijkstra: Alg. de roteamento: Estado de Enlace exemplo Etapa N' D(v),p(v) D(w),p(w) D(x),p(x) D(y),p(y) D(z),p(z) 0 u 2,u 5,u 1,u ! ! 1 ux 2,u 4,x 2,x ! 2 uxy 2,u 3,y 4,y 3 uxyv 3,y 4,y 4 uxyvw 4,y 5 uxyvwz 5 3 v w 5 2 u 2 1 z 3 1 2 x 1 y Algoritmo de Dijkstra: Exemplo segunda-feira, 17 de outubro de 11 78
  • 79. Algoritmo de Dijkstra: Alg. de roteamento: Estado de Enlace exemplo (2) árvore resultante do caminho mais curto a partir de u: v w u z x y tabela de repasse resultante em u: destino enlace v (u,v) x (u,x) y (u,x) Algoritmo de w (u,x) Dijkstra: Exemplo z (u,x) segunda-feira, 17 de outubro de 11 79
  • 80. Alg. de roteamento: Estado de Enlace Algoritmo de Dijkstra, discussão Algoritmo de Dijkstra: Discussão complexidade do algoritmo: n nós !  cada iteração: precisa verificar todos os nós, w, não em N !  n(n+1)/2 comparações: O(n2) !  implementações mais eficientes possíveis: O(nlogn) oscilações possíveis: !  p. e., custo do enlace = quantidade de tráfego transportado 1 A A A A 1+e 2+e 0 0 2+e 2+e 0 D 0 0 B D 1+e 1 B D B D 1+e 1 B 0 0 0 e 0 0 1 1+e 0 e 1 C C C C 1 e … recalcula … recalcula … recalcula inicialmente roteamento segunda-feira, 17 de outubro de 11 80
  • 81. Alg.Algoritmo de vetorVetor de Distância de roteamento: de distância Equação de Bellman-Ford (programação dinâmica) defina dx(y) : = custo do caminho de menor custo de x para y depois dx(y) = min {c(x,v) + dv(y) } v onde min assume todos os vizinhos v de x segunda-feira, 17 de outubro de 11 81
  • 82. Alg. de roteamento: Vetor de Distância Exemplo de Bellman-Ford 5 claramente, dv(z) = 5, dx(z) = 3, dw(z) = 3 3 v w 5 2 u 2 1 z equação B-F diz: 3 1 2 du(z) = min { c(u,v) + dv(z), x y 1 c(u,x) + dx(z), c(u,w) + dw(z) } = min {2 + 5, 1 + 3, 5 + 3} = 4 nó que alcança mínimo é o próximo salto no caminho mais curto tabela de repasse segunda-feira, 17 de outubro de 11 82
  • 83. Alg. de roteamento: Algoritmo de vetor Algoritmo de Vetor de Distância de distância !  Dx(y) = estimativa do menor custo de x para y !  nó x sabe custo de cada vizinho v: c(x,v) !  nó x mantém vetor de distância Dx = [Dx(y): y "N] !  nó x também mantém vetor de distância de seus vizinhos "  para cada vizinho v, x mantém Dv = [Dv(y): y " N ] segunda-feira, 17 de outubro de 11 83
  • 84. Alg. de roteamento: Algoritmo de Vetor de Distância Algoritmo de vetor de distância (4) ideia básica: !  de tempos em tempos, cada nó envia sua própria estimativa de vetor de distância aos vizinhos !  assíncrono !  quando um nó x recebe nova estimativa DV do vizinho, ele atualiza seu próprio DV usando a equação de B-F: Dx(y) ! minv{c(x,v) + Dv(y)} para cada nó y N !  sob condições modestas, naturais, a estimativa Dx (y) converge para o menor custo real dx(y) segunda-feira, 17 de outubro de 11 84
  • 85. Alg. de roteamento: Algoritmo de vetor de Algoritmo de Vetor de Distância distância (5) iterativo, assíncrono: cada Cada nó: iteração local causada por: !  mudança de custo do enlace espera (mudança no custo local do enlace local ou msg do !  mensagem de atualização do vizinho) DV do vizinho recalcula estimativas distribuído: !  cada nó notifica os vizinhos apenas quando seu DV muda se DV a qualquer destino "  vivinhos, então, notificam tiver mudado, notifica seus vizinhos, se necessário vizinhos segunda-feira, 17 de outubro de 11 85
  • 86. Dx(y) = min{c(x,y) + Dy(y), c(x,z) + Dz(y)} = min{2+0 , 7+1} = 2 tabela nó x custo para custo para x y z x y z x 0 2 7 x 0 2 3 y !! ! y 2 0 1 Dx(z) = min{c(x,y) + de de z !! ! z 7 1 0 Dy(z), c(x,z) + Dz(z)} tabela nó y = min{2+1 , 7+0} = 3 custo para x y z x ! ! ! y 2 0 1 y 2 1 de z !! ! tabela nó z x z custo para 7 x y z x !! ! y !! ! de z 71 0 tempo segunda-feira, 17 de outubro de 11 86
  • 87. Dx(y) = min{c(x,y) + Dy(y), c(x,z) + Dz(y)} = min{2+0 , 7+1} = 2 tabela nó x custo para custo para custo para x y z x y z x y z Dx(z) = min{c(x,y) + x 0 2 7 x 0 2 3 x 0 2 3 Dy(z), c(x,z) + Dz(z)} y !! ! y 2 0 1 y 2 0 1 = min{2+1 , 7+0} = 3 de de de z !! ! z 7 1 0 z 3 1 0 tabela nó y custo para custo para custo para x y z x y z x y z x ! ! ! x 0 2 7 x 0 2 3 y 2 0 1 y 2 0 1 y 2 0 1 y de 2 1 de de z !! ! z 7 1 0 z 3 1 0 tabela nó z x z custo para custo para 7 custo para x y z x y z x y z x !! ! x 0 2 7 x 0 2 3 y !! ! y 2 0 1 y 2 0 1 de de de z 71 0 z 3 1 0 z 3 1 0 tempo segunda-feira, 17 de outubro de 11 87
  • 88. Alg. de roteamento: Vetor de distância: Algoritmo de Vetor de Distância mudanças de custo do enlace mudanças de custo do enlace: 1 !  nó detecta mudança de custo no enlace local y 4 1 !  atualiza informação de roteamento, recalcula x z vetor de distância 50 !  se DV mudar, notifica vizinhos no tempo t0, y detecta a mudança do custo do enlace, atualiza seu DV e informa aos seus vizinhos. “boas no tempo t1, z recebe a atualização de y e atualiza sua tabela. notícias Calcula um novo custo mínimo para x e envia seu DV aos vizinhos. correm rápido” no tempo t2, y recebe a atualização de z e atualiza sua tabela de distância. Menores custos de y não mudam, e daí y não envia qualquer mensagem a z. segunda-feira, 17 de outubro de 11 88
  • 89. Alg. de roteamento: Algoritmo de Vetor de Distância mudanças de custo do enlace: 60 !  boas notícias correm rápido y !  más notícias correm lento – problema 4 1 da “contagem até o infinito”! x z 50 !  44 iterações antes que o algoritmo estabilize: ver texto reverso envenenado: !  se Z passa por Y para chegar a X: "  Z diz a Y que sua distância (de Z) até X é infinita (de modo que Y não roteará para X passando por Z) !  isso solucionará completamente o problema da contagem até o infinito? segunda-feira, 17 de outubro de 11 89
  • 90. Comparação entre algoritmos: LS x DV Comparaçãodos algoritmos LS e DV complexidade da mensagem robustez: o que acontece !  LS: com n nós, E enlaces, O(nE) se roteador der mensagens enviadas defeito? !  DV: troca apenas entre vizinhos LS: "  tempo de convergência varia "  nó pode anunciar custo do enlace incorreto velocidade de convergência "  cada nó calcula apenas !  LS: algoritmo O(n2) requer O(nE) sua própria tabela mensagens "  pode ter oscilações DV: !  DV: tempo de convergência varia "  nó DV pode anunciar custo do caminho "  podem ser loops de incorreto roteamento "  tabela de cada nó usada "  problema da contagem até o por outros infinito •  erro se propaga pela rede segunda-feira, 17 de outubro de 11 90
  • 91. Roteamento Hierárquico Roteamento hierárquico nosso estudo de roteamento até aqui – o ideal: !  todos os roteadores idênticos !  rede “achatada” … não acontece na prática escala: com 200 milhões autonomia administrativa de destinos: !  Internet = rede de redes !  não pode armazenar todos !  cada administrador de rede os destinos nas tabelas de pode querer controlar o roteamento! roteamento em sua própria !  troca de tabela de rede roteamento atolaria os enlaces! segunda-feira, 17 de outubro de 11 91
  • 92. Roteamento Hierárquico !  roteadores agregados em roteador de borda regiões, “sistemas !  Enlace direto com roteador autônomos” (AS) em outro AS !  roteadores no mesmo AS rodam o mesmo protocolo de roteamento "  protocolo de roteamento “intra-AS” "  roteadores em ASes diferentes podem executar protocolo de roteamento intra-AS diferente segunda-feira, 17 de outubro de 11 92
  • 93. Sistemas Autônomos Interconcetados ASes interconectados 3c 3a 2c 3b 2a AS3 2b 1c AS2 1a 1b 1d AS1 !  tabela de repasse configurada por algoritmo de roteamento intra e algoritmo algoritmo de roteamento inter-AS de roteamento intra-AS inter-AS "  intra-AS define entradas para destinos internos tabela de repasse "  inter-AS & intra-AS definem entradas para destinos externos segunda-feira, 17 de outubro de 11 93