Beruflich Dokumente
Kultur Dokumente
Funes
Transporta pacotes da estao remetente a receptora Protocolos da camada de rede em cada estao, roteador
Trs funes importantes:
Determinao do caminho: rota seguida por pacotes da origem ao destino. Algoritmos de roteamento Comutao: mover pacotes dentro do roteador da entrada sada apropriada Estabelecimento da chamada: algumas arquiteturas de rede requerem determinar o caminho antes de enviar os dados
A abstrao mais importante provida pela camada de rede: circuito virtual ou datagrama?
Circuitos Virtuais
Caminho da origem ao destino se comporta como um circuito telefnico
Estabelecimento de cada chamada antes do envio dos dados Cada pacote tem um identificador de CV (e no endereos origem/destino) Cada roteador no caminho da origem ao destino mantm o estado para cada conexo que o atravessa
Circuitos Virtuais
Usados para estabelecer, manter, destruir CV Usados em ATM, frame-relay, X.25 No usados na Internet de hoje
Rede de Datagramas
No requer estabelecimento de chamada na cada de rede Roteadores: no guardam estado sobre conexes fim-afim
No existe o conceito de conexo na camada de rede
Endereamento
Prover identificao de forma nica de um host na rede ao qual faz parte seja uma LAN ou Internet
Roteamento
Prover a escolha de rotas por onde os pacotes iro trafegar para que cheguem ao seu destino
Enacpsulamento
Encapsular pacotes recebidos de camadas superiores num datagrama
Fragmentao
Permite que um datagrama viaje por diferentes redes sem a preocupao com as tecnologias executadas
Introduo ao Protocolo IP
O Protocolo IP
Internet Procotol (IP) um protocolo da camada de rede encaminhamento dos dados numa rede
Presta todos os servios de rede
Interconexo Roteamento (Encaminhamento) Endereamento Fragmentao Encapsulamento
responsvel
pelo
Caractersticas do IP
Datagrama (no orientado a conexo)
No necessrio estabelecer conexo antes do envio de um pacote IP Os pacotes IPs podem ser enviados a qualquer momento Os pacotes IPs podem chegar no destinatrio fora de ordem
Servio no confivel
No h garantias de entrega do pacote IP ao destinatrio Problema de perdas de pacotes devem ser tratados nas camadas superiores (transporte ou aplicao)
Endereamento
Os equipamentos conectados Internet so identificados atravs de seu endereo IP O endereo IP permite identificar de forma nica qualquer equipamento na Internet
Exemplo: Transporte de um conteiner de A para B O container A contm o endereo de seu destino (endereo B) vsivel
Para sair da entidade A o container colocado em um caminho (meio fsico de transporte utilizado para um transporte local equivale ao protocolo Ethernet). Este caminho no tem como endereo de destino o endereo de B, e sim, o endereo do terminal de carga da estao de trem (endereo X) O caminho (pacote Ethernet) leva o container (pacote IP) segundo as regras de trnsito local da cidade (protocolo Ethernet)
Cabealho IPv4
Endereamento IP
O IP um protocolo da Camada de Rede
um endereo lgico nico em toda a rede, portanto, quando estamos navegando na Internet estamos utilizando um endereo IP nico mundialmente, pois a Internet uma rede mundial Em redes locais podemos utilizar alguns endereos que no so vlidos na Internet. Estes so reservados para redes locais, mas cada mquina da rede local utilizar um nico IP nesta rede local
Endereamento IP
Permite identificar unicamente uma interface de rede de um equipamento na Internet
O endereo IP no pode ser arbitrariamente atribudo a uma interface de rede
Cada rede possui uma faixa de endereos que podem ser alocados a equipamentos
Fsico: Atribudo na camada de Enlace (MAC), e indica o prximo host da rede onde o pacote ser entregue
Endereo IPV4
Um endereo IP consiste em 4 bytes ou 32 bits. Ao invs de trabalhar com 32 bits por vez, comum a prtica de segmentao dos 32 bits de um endereo IP em quatro campos de 8 bits chamados de octetos
Cada octeto convertido em um nmero de base decimal na escala de 0-255. Estes so separados por ponto. Este formato chamado de notao decimal pontuada. Em uma rede, estes nmeros devem ser nicos e seguem algumas regras que veremos a seguir:
Host x Rede
Cada endereo IP inclui uma identificao de rede e uma de host (mquina):
A identificao de rede (endereo de rede) identifica os sistemas que esto localizados no mesmo segmento fsico de rede na abrangncia de roteadores IPs. Todos os sistemas na mesma rede fsica devem ter a mesma identificao de rede. A identificao de rede deve ser nica na rede
A identificao de host (endereo de host) identifica uma estao de trabalho, servidor, roteador, ou outro host TCP/IP (n da rede) dentro de uma rede. O endereo para cada host deve ser nico para a identificao de rede
Host x Rede
Classes IP
Existem 5 classes (A, B, C, D, E) de endereos IP, que iro variar conforme a quantidade de endereos de rede existentes em cada classe O objetivo das classes determinar qual a parte do endereo IP pertence a rede e qual parte do endereo IP pertence ao host, alm de permitir uma melhor distribuio dos endereos IPss
Classe A
O primeiro byte do endereo est entre 1 e 127
Exemplo: 13.0.0.1 / 80.10.69.12 / 37.25.10.99 No endereos de Classe A, o primeiro nmero identifica a rede e os outros trs identificam o prprio host
Classe B
O primeiro byte est entre 128 e 191
Exemplo: 133.0.0.1 / 140.10.69.12 / 190.25.10.99 Nos endereos Classe B, os dois primeiros nmeros identificam a rede e os outros dois nmeros identificam o host
Classe C
O primeiro byte do endereo est entre 192 e 223
Exemplo: 200.0.0.1 / 220.10.69.12 / 195.25.10.99 Nos endereos Classe C, os trs primeiros nmeros identificam a rede e os ltimos nmeros identificam o prprio host
Classe D
O primeiro byte do endereo est entre 224 e 239 Exemplo: 225.0.0.1 / 239.10.69.12 / 226.25.10.99
Est classe est reservada para criar agrupamentos de computadores para o uso de Multicast (acesso apenas a endereos que estejam configurados para receber os dados). No podemos utilizar esta faixa de endereos para enderear os computadores de usurio na rede TCP/IP
Classe E
O primeiro byte do endereo est entre 240 e 247
A classe E um endereo reservado e utilizado para testes e novas implementaes (IETF Internet Engeneering Task Force) e controles do TCP/IP
Conflitos IP
Para definirmos os IPs de uma rede, precisamos seguir duas regras:
Na mesma rede, os IPs de todas as mquinas devem estar na mesma rede
Por exemplo: Endereos Classe A (13.0.0.1, onde 13 a rede e 0.0.1 o host) Todos os hosts desta rede devem estar na mesma rede, ou seja, com IPs comeados por 13
Conflitos IP
Mscara de Sub-Rede
Existem casos onde faz-se necessrio subdividir uma rede em redes menores. Imagine o administrador de uma rede que contm 16 milhes de hosts. Ele dever utiliza uma rede Classe A
A mscara de rede foi criada para formar sub-redes menores, e tambm possibilitar uma melhor utilizao dos endereos IP disponveis Em resumo, o parmetro mscara de sub-rede serve para confirmar ou alterar o funcionamento das Classes de endereos padres do TCP/IP Sempre dever ser configurado o IP e a mscara em uma rede
Mscara de Sub-Rede
Mscara de Sub-Rede
Em uma rede, o primeiro endereo da rede identifica o endereo da rede em si, e no poder ser utilizado em nenhum equipamento O ltimo endereo tambm no poder ser utilizado, pois reservado para broadcast dentro daquela rede
Exemplo:
IP: 200.220.171.4 Mscara: 255.255.255.0 Rede: 200.220.171.0 Broadcast: 200.220.171.255
Mscara de Sub-Rede
Tambm pode ser necessrio, em casos especiais, subdividir ainda mais as classes de endereos IP; Para isso existem outras mscaras de IP conforme exemplos abaixo:
IP: 200.220.171.0 Mask: 255.255.255.0
Endereos entre: 200.220.171.0 e 200.220.171.255
Discusso
Por que enderear as mquinas de uma rede?
Em uma mesma rede podemos ter mquinas com o mesmo nmero IP? Em redes diferentes podemos ter mquinas com o mesmo nmero IP? Para que usar a mscara de sub-rede?
Endereo IPv5
Protocolo de (experimental) fluxo em tempo real
Endereo IPv6
Com a exploso da Internet e com o surgimento constante de novos servios, os atuais IPv4 esto se tornando escassos. Surge ento, a necessidade de implementarmos um novo padro de endereamento (IPv6) Ele um nmero que foi criado para substituir o antigo IPv4. Possui 128 bits, enquanto o IPv4 possui apenas 32 bits
Exemplo em representao hexadecimal: 1080:0:0:0:8:800:200C:417A
Qualidade de Servio
Autenticao e Privacidade
endereo
IPv4
IPv4 x IPv6
MTU (bytes)
1500 1492 4352 4464
X.25
576
O controle de fragmentao se d baseado em trs campos do cabealho IP, que so: Identificao, Flags e Deslocamento do Fragmento (fragmentation offset)
ALGORITMOS DE ROTEAMENTO
Algoritmos de Roteamento
A principal funo da camada de rede rotear pacotes Quando um pacote chega no roteador, o roteador indexa a tabela de redirecionamento e determina a interface de sada para a qual o pacote deve ser redirecionado Algoritmos de roteamento executados nos roteadores trocam e processam informaes para configurar e atualizar as tabelas de redirecionamento A meta determinar boas rotas!
Algoritmos de Roteamento
Redes de datagrama ou circuito virtual
Algoritmos de roteamento so necessrios independentemente do servio provido pela camada de rede:
Rede datagrama diferentes pacotes entre um dado par fonte-destino podem tomar rotas distintas Redes circuito virtual todos os pacotes entre um par fonte-destino tomam o mesmo caminho, a rota construda quando o circuito estabelecido
Propriedades desejveis
Corretude, Simplicidade, Robustez, Estabilidade, Justia, Optimalidade
Princpio da Optimalidade
Diz que se J est no caminho timo do roteador I ao roteador K, ento o caminho timo de J para K cair na mesma rota
Como consequncia, o conjunto de rotas timas de todas as fontes para um dado destino forma uma rvore com raiz no destino
A meta dos algoritmoes de roteamento encontrar essas rvores para todos os roteadores
Algoritmos Globais
Usa o conhecimento global da rede (todas as conectividades e seus custos)
O processamento das rotas de menor custo pode ser feito em um n central ou replicado em vrios ns
Algoritmos Descentralizados
O clculo dos caminhos mnimos feito de modo distribudo, interativo e assncrono
No requer que os ns conheam todas as conectividades da rede e seus custos, cada n inicia apenas com a informao de custos dos seus enlaces diretos Os ns trocam informaes com os vizinhos diretos para ento calcular os custos para os demais destinos
Algoritmos dessa classe so chamados algoritmos de vetor distncia (distance vector DV)
Dinmicos
As rotas mudam com a mudana de carga e topologia da rede As informaes podem ser obtidas localmente ou dos vizinhos O algoritmo pode executar periodicamente ou em resposta aos eventos e mudan~ca (ex: topologiam, custos dos enlaces)
No-sensveis
Os custos dos enlaces no refletem o nvel de congestionamento (ex: algoritmos de roteamento na Internet: RIP, OSPF, BGP)
Inundao (flooding)
Todo pacote redirecionado para todas as sadas (exceto aquela por onde o pacote chegou)
Dificuldades e alternativas: Gera um nmero infinito de pacotes duplicados (requer medida de controle)
Incluir um contador de saltos no cabealho do pacote que deve ser decrementado por cada roteador, quando o contador chega a zero o pacote deve ser descartado Manter informao sobre quais pacotes foram redirecionados (o emissor dever incluir um nmero de sequncia em cada pacote) Inundao seletiva (o pacote duplicado para as linhas de sada com maior chance de estarem na direo correta)
Construir um pacote com tudo o que aprendeu (identidade do emissor, nmero de sequncia e idade, lista de vizinhos e atraso calculado para cada vizinho)
Enviar esse pacote para todos os outros roteadores Computar o menor caminho para todos os outros roteadores
Algoritmo de Dijkstra
Escolhido um vrtice como raiz da busca, o algoritmo calcula o custo mnimo deste vrtice para todos os demais vrtices do grafo
Ele bastante simples e com um bom desempenho, a restrio mais importante que ele no garante exatido da soluo na ocorrncia de custos com valores negativos
O algoritmo parte da estimativa inicial para o custo mnimo e vai sucessivamente ajustando esta estimativa
Considera que um vrtice est fechado quando j foi obtido um caminho de custo mnimo do vrtice raiz de busca at esse vrtice
Algoritmo LS
Quando o LS termna, tem-se para cada n (roteador) o seu predecessor no caminho mnimo Com essa informao possvel determinar todos os caminhos de custo mnimo do roteador fonte a todos os destinos
A tabela de redirecionamento atualizada armazenando para cada destino o n (roteador) do prximo salto
Algoritmo de roteamento DV
Cada roteador X mantm as seguintes informaes:
O custo c(x,v) do enlace de X ligado diretamente a V, para todo vizinho V de X O vetor distncia de x, com a estimativa de custo a todos os destinos (roteadores) y em N O vetor de distncia de cada um de seus vizinhos
Algoritmo de roteamento DV
Execuo do algoritmo:
De tempos em tempos, cada n envia uma cpia do seu vetor de distncia para cada um de seus vizinhos Quando um n recebe um vetor de distncia , ele salva e atualiza o seu vetor de distncias Se o vetor distncia de X alterar, X envia o seu novo vetor de distncias para todos os seus vizinhos
Algoritmo de roteamento DV
Atualizao da tabela de redirecionamento:
Para atualizar a tabela de redirecionamento do roteador para um dado destino Y, o n X precisa saber apenas o n vizinho V que o mais prximo salto no caminho mnimo at Y
Dentro do prprio algoritmo, para cada destino Y, o n X determina o vizinho V e atualiza a sua tabela
Contagem at o infinito
Contagem at o Infinito
Contagem at o Infinito
Contagem at o Infinito
Comparao entre LS e DV
Ambos so usados na Internet Complexidade de mensagens
LS requer O (V * A) e sempre que o custo de um enlace muda, o novo custo deve ser enviado a todos os ns DV requer trocas de mensagens apenas entre vizinhos diretos a cada interao, mas o tempo para o algoritmo convergir depende de vrios fatores
Robustez
No LS, como cada n computa a sua tabela de redirecionamento, a presena de ns falhos no causa problemas srios No DV, informaes corrompidas podem afetar toda a rede, uma vez que elas so repassadas e usadas para o clculo de outras distncias
ROTEAMENTO NA INTERNET
A comunicao na Internet
Funcionamento Geral:
A camada de transporte recebe um stream de dados e os divide em datagramas (podem ter at 64 Kbytes) Cada datagrama transmitido na Internet, podendo ser fragmentado em pedaos menores Quando todos os pedaos chegam ao destino, o datagrama remontado e entregue camada de transporte
Protocolo IP
A cola que mantm a Internet o protocolo IP (projetado desde o incio com o objetivo de interconectar redes existentes)
Um endereo IP no se refere a um host propriamente, mas a uma interface de rede (se um host est em duas redes, ele deve ter dois endereos IP)
O datagrama IP transmitido da esquerda para a direita (ordem big-endian), os bits mais significativos so campo de verso
Mscara de subredes
Mscara de subredes so escritas na forma usual (decimal separados por ponto), seguindo de barra e nmero de bits da rede + subrede. Ex: a mscara 255.255.255.0 escrita como 255.255.255.0/22 (22 bits o tamanho da mscara)
Exemplos de subredes
Mscara 255.255.252.0
10000010 00110010 00000100 00000000 (130.50.4.0/22) 10000010 00110010 00001000 00000000 (130.50.8.0/22) 10000010 00110010 00001100 00000000 (130.50.12.0/22)
Quando um pacote endereado para 130.50.15.6 recebido, feito um AND com a mscara de subrede 255.255.252.0/22 para dar o endereo 130.50.12.0 Este endereo buscado na tabela de redirecionamento para encontrar o enlace de sada
Uma soluo foi o CIDR (Roteamento Interdomnio sem Classes RFC 1519): alocar os endereos IPs restantes em blocos de tamanho variados sem relao com as classes
Para enviar um datagrama, a camada de rede deve passar o prprio datagrama (pacote da camada superior) e o endereo MAC do destino O ARP usado pelo emissor do fram para traduzir o endereo IP em endereo MAC de um host de uma mesma subrede
Funcionamento do ARP
Transmisso entre hosts da mesma subrede
Cada host ou roteador tem uma tabela ARP com os mapeamentos IP/MAC O campo TTL (Time-To-Lived) indica quando o mapeamento deve ser retirado da tabela (um tempo tpico 20min) Quando o mapeamento desejado no encontrado na tabela, o emissor constroi um pacote especial chamada pacote ARP, o qual inclui campos para endereo IP e MAC do emissor e receptor
Funcionamento do ARP
Transmisso entre hosts da mesma subrede
O propsito desse pacote perguntar a todos os ns da rede o endereo MAC correspondente ao IP dado O pacote entregue ao mdulo ARP em cada n da subrede Cada n checa se o seu endereo IP combina com o endereo IP do destinatrio Um dos ns devolver o pacote ARP com o mapeamento desejado O n que solicitou a consulta pode ento atualizar a sua tabela ARP
Funcionamento do DHCP
DHCP baseado na ideia de um servidor especial que designa endereos IP para hosts que os requisitam O servidor DHCP no precisa estar na mesma LAN do host, nesse caso um agente DHCP necessrio em cada LAN Para receber um endereo IP, o host envia por broadcast um pacote DHCP Discovery O agente DHCP intercepta todos os broadcasts DHCP e reencaminha os pacotes para o servidor DHCP A nica informao necessria para o agente DHCP o endereo IP do servidor DHCP
Funcionamento do DHCP
Pacotes que trafegam para fora dessa subrede no podem usar esses endereos porque outras redes podem fazer o mesmo
Operao do NAT
Dificuldades do NAT
Como direcionar um pacote para um host dentro da rede NAT?
Os projetistas do NAT observaram que a maioria dos pacotes IP carregam payload TCP ou UDP e decidiram usar o campo de nmero de porta desse cabealho para completar a operao do NAT
Funcionamento do NAT
Envio de pacotes
Sempre que um pacote da rede interna chega ao NAT, o IP fonte traduzido e o nmero da porta fonte substitudo por um ndice na tabela de traduo NAT (at 65K entradas) Cada entrada na tabela contm o endereo IP e a porta original Os checksum IP e TCP/UDP so recomputados e inseridos no pacote
Funcionamento do NAT
Recebimento de pacotes
Quanto um pacote chega no box NAT, o nmero da porta fonte extrado e usado para indexar a tabela de mapeamento do NAT Quando a entrada localizada, o IP interno e a porta TCP originais so extrados e inseridos no pacote Os checksums so recomputados e inseridos no pacote O pacote ento passado para o roteador usando o endereo 10.x.y.z
Crticas ao NAT
Nmero de portas so para enderear processos, e no hosts (violao da arquitetura em camadas) O protocolo NAT viola o argumento de interao fim-afim entre hosts sem interferir em nmero IP e porta Faz a Internet um tipo de rede orientada conexo (o NAT precisa manter informaes sobre cada conexo) Funciona apenas para aplicaes que usam os protocolos TCP/UDP Deveria-se usar IPv6 para lidar com o problema de espao de endereos IPv4
RIP
RIP
O custo mximo de um caminho limitado em 15, o que restringe o uso do RIP em ASs com dimetros menor que 15 saltos
No RIP atualizaes de roteamento so trocadas entre vizinhos a cada 30 seg (aproximadamente) usando a mensagem RIP response message ou RIP advertisements
A mensagem enviada contm uma lista de at 25 subredes destino dentro do AS, junto com a distncia do emissor a cada uma delas
Cada roteador mantm uma tabela de roteamento: tabela de redirecionamento + vetor de distncia
RIP
OSPF (Open Shortest Path First): projetado como sucessor do RIP, apresenta vrias caractersticas avanadas
A verso mais atual do OSPF defina na RFC2328 um protocolo que usa flooding (inundao) para obter informaes do grafo de roteadores e o algoritmo de caminhos mnimo de Dijkstra Os custos individuais de cada enlace so configurados pelo administrador da rede Os roteadores divulgam as informaes de estado de enlace sempre que h mudanas, e periodicamente (cerca de 30min) para aumentar a robustez
Roteamento na Internet
Segurana: trocas de mensagens entre roteadores (ex: atualizao de LS) podem ser autenticadas
Diferentes mtricas de distncia: incluindo distncia fsica, atraso, e outras Vrias rotas de mesmo custo: permite que vrias rotas de mesmo custo sejam usadas (balanceamento de carga) Suporte integrado para roteamento unicast e multicast: MOSPF (Multicast OSPF) prov extenses ao OSPF para oferecer roteamento multicast Suporte para hierarquia dentro de um domnio nico de roteamento: possibilita estruturar um AS de forma hierrquica
Para cada conexo TCP, os dois roteadores nas portas de conexo so chamados peers BGP e a conexo TCP com todas as mensagens trocadas chamada BGP session Uma sesso BGP que envolve dois ASs chamada external BGP session e uma sesso entre roteadores do mesmo AS chamada internal BGP session (iBGP)
As distncias para cada destino so ranqueadas (rotas que violam polticas de uso so marcadas com distncia = infinito) O roteador escolhe a rota de menor custo A funo custo no faz parte do protocolo e pode ser qualquer funo que o administrador do sistema deseje
Protocolo ICMP
Arquiteturalmente o ICMP est acima do protocolo IP, uma vez que as mensagens ICMP so transportadas dentro de um datagrama IP (da mesma maneira que segmentos TCP e UDP)
Mensagens ICMP possuem um campo de tipo e cdigo acrescidas do cabealho e dos primeiros 8 bytes do datagrama IP que gerou a mensagem ICMP (assim o emissor pode determinar o datagrama que causou o erro)
Protocolo ICMP
Exemplo:
O programa ping envia uma mensagem ICMP do tipo 8, cdigo 0 O receptor envia de volta uma mensagem do tipo 0, cdigo 0 O programa traceroute usa as respostas ICMP para realizar a sua tarefa