Title: REDES DE COMPUTADORES
1REDES DE COMPUTADORES
- Camada de Rede
- Professor M.Sc. Carlos Oberdan Rolim
Versão 110614_01
2- A CAMADA DE REDE
- Fornece serviços para o nível de transporte,
sendo, frequentemente, a interface entre a rede
do cliente e a empresa de transporte de dados
(p.ex. Embratel). - SUA PRINCIPAL FUNÇÃO É RECEBER BITS DE DADOS DA
CAMADA SUPERIOR, ORGANIZÁ-LOS EM BLOCOS DE DADOS
(PACOTES EM REDES COM CONEXÃO E DATAGRAMAS EM
REDES SEM CONEXÃO) E DETERMINAR A MELHOR ROTA
PARA QUE ESTES PACOTES ALCANCEM SEU DESTINO,
TENDO COMO BASE ENDEREÇOS LÓGICOS DE ORIGEM E
DESTINO. - A camada de rede deve
- Fornecer serviços independentes da tecnologia da
subrede - Esconder do nível de transporte o número, tipo e
a topologia das subredes existentes - Oferecer ao nível de transporte um esquema de
endereçamento uniforme, independente da
tecnologia da subrede (LAN, MAN, WAN).
3Funções da camada de rede
- transporta pacote da estação remetente à
receptora - protocolos da camada de rede em cada estação,
roteador - três funções importantes
- determinação do caminho rota seguida por pacotes
da origem ao destino. Algoritmos de roteamento
(routing) - comutação mover pacotes dentro do roteador da
entrada à saída apropriada (switching) - estabelecimento da chamada algumas arquiteturas
de rede requerem determinar o caminho antes de
enviar os dados (call setup)
4- A transferência de dados pode ser feita de dois
modos
Modo datagrama Modo circuito virtual
Usado pela Internet Usado pelas operadoras
Subrede não confiável Subrede considerada mais confiável (pouco atraso, perda de pacotes)
Cada pacote contém endereço de origem e destino Cada pacote contém identificação de número do circuito
Subrede não guarda nenhuma informação Subrede precisa guardar informações a respeito da condição dos circuitov
Cada pacote é roteado independentemente Rota fixa é definida na abertura da conexão
Se roteador falha pacotes são perdidos Se roteador falha circuito é desfeito
Controle de congestionamento difícil Controle de congestionamento fácil (a nível de circuito)
5- Algoritmo de Roteamento
- Roteamento é o mecanismo pelo qual se escolhe o
caminho (canal de comunicação) que um pacote deve
seguir para atingir seu destino. - Em redes modo datagrama, cada datagrama tem de
carregar seu endereço destino e a decisão de
roteamento é tomada em cada nó da rede, para cada
datagrama que chega.
6- Algoritmo de Roteamento
- Em redes modo circuito virtual os pacotes não
precisam carregar o endereço destino (só a
identificação da conexão) e a decisão de
roteamento é tomada no estabelecimento da
conexão, após a qual todo pacote segue sempre o
mesmo caminho - roteamento por sessão.
7- Algoritmo de Roteamento
- Um algoritmo de roteamento deve oferecer
- Correticidade (funciona)
- Simplicidade (é fácil de entender/usar)
- Robustez (suporta falhas na rede)
- Estabilidade (fixa caminhos rapidamente)
- Equanimidade (distribui carga de modo justo) e
- Optimalidade (proporciona melhor caminho sempre).
8- Um algoritmo de roteamento pode ser
- Não adaptativo, quando as decisões de roteamento
são definidas antecipadamente (pelo gerente da
rede, p. ex.) e colocadas nos roteadores quando
estes são ligados - roteamento estático - Adaptativo, quando as decisões de roteamento são
redefinidas continuamente, de acordo com a
estrutura da rede (topologia, carga, etc.) -
roteamento dinâmico. - Nesse último caso, o algoritmo de roteamento pode
ser do tipo Vetor-Distância ou Estado-do-Enlace,
cujas características são resumidas na tabela a
seguir.
9(No Transcript)
10- Controle de Congestionamento
- Congestionamento ocorre quando a quantidade de
pacotes na rede é muito grande (normalmente isso
ocorre quando se atinge um patamar da capacidade
de carga dos canais de comunicação).
Padrão de comportamento na ocorrência
de congestionamento
11- O que congestiona?
- Pacotes chegando por canais de comunicação
rápidos, tendo de sair por canais mais lentos - Roteadores lentos
- Roteadores com pouca memória para armazenar
pacotes temporariamente.
12- Como controlar fluxo?
- Modelo circuito aberto (open loop), propõe
resolver os problemas na fase de
projeto/configuração dos roteadores de modo a
(tentar) garantir que não ocorra
congestionamento. Para ajustar alguma coisa,
tem-se de reinicializar tudo. - Modelo circuito fechado (closed loop), propõe
- Monitoração do sistema para detectar quando e
onde o congestionamento ocorre - Passagem dessas informações para pontos de
controle onde alguma ação pode ser tomada - Ajuste da operação do sistema para corrigir o
problema.
13- No modelo circuito fechado, o controle pode ser
- explícito, quando o ponto de congestionamento
avisa (de alguma forma) a origem dos pacotes
(p.ex. ATM com ABR) - implícito, quando a origem dos pacotes deduz que
há congestionamento fazendo observações
localmente (p.ex., pela demora no recebimento de
confirmação de entrega de pacotes, p.ex. TCP/IP).
14- Condicionamento de Tráfego (Traffic Shaping)
- Em redes que oferecem qualidade de serviço
(Quality of Service - QoS), as estações clientes
podem ser forçadas a transmitir a uma taxa
uniforme, previamente acertada com a rede antes
do início da transmissão (via abertura de
conexão). - Dessa forma, recursos podem ser reservados
antecipadamente, de modo que se possa garantir a
não sobrecarga da rede - o tráfego é, sempre que
possível, previsível.
15- Condicionamento de Tráfego (Traffic Shaping)
- Esse tipo de controle (de modelo circuito aberto)
é largamente usado em redes ATM. - Evidentemente, a rede (responsável pela mesma)
deve também fazer um monitoramento de tráfego
para evitar que estações clientes gerem tráfego
fora do padrão solicitado para a rede. - Esse esquema é mais facilmente implementado em
redes baseadas em circuito virtual do que em
redes baseadas em datagrama.
16- Algoritmo do Balde Furado (Leaky Bucket
Algorithm) - Outro mecanismo (de modelo circuito aberto) é o
do Balde Furado, onde uma fila de tamanho finito
age como um depósito de contenção para suportar
rajadas de tráfego descartando o mínimo de
pacotes e colocando-os para transmissão de modo
controlado. - O controle é feito enviando-se para a rede
pacotes sempre em uma velocidade constante
(basicamente em função da capacidade do canal, do
tempo de propagação e do tamanho máximo do pacote
admitido) - tipo um pacote a dada ?T.
17Modelo do Balde Furado para Pacotes
18- Interconexão de Redes
- Problema como interconectar redes heterogêneas ?
- Três problemas com interconexão a nível de enlace
de dados - Expansão difícil para diferentes tecnologias de
enlace de dados. - Expansão difícil com o crescimento de número de
hospedeiros ou redes. - Diferentes espaços de endereçamento.
19 20- Dificuldade de Expansão com diferentes
tecnologias de enlace de dados - Conversão entre estruturas de quadros.
- Problema de escalabilidade quando o número de
tecnologias de enlace de dados aumenta.
21- Espaço de endereço MAC não homogêneo
- O número de bits usado em endereço MAC pode ser.
- Endereços MAC de 48 bits do IEEE
- IBM recomenda outros endereços MAC administrados
localmente (ignorando os endereços MAC
embutidos). - Cada endereço em uma tecnologia de enlace de
dados deve ser universalmente único, mas a sua
unicidade não é garantida quando várias redes são
atravessadas
22- A Solução da camada três para interconexão de
redes - Substituir switches de LAN por switches de camada
três, mais conhecidos como roteadores. - Acrescentar software de IP a cada hospedeiro
final (junto com o todo conjunto de softwares). - Atribuir um endereço IP a cada interface de rede.
23- A Solução da camada três para interconexão de
redes
24- IP escalabilidade para as tecnologias de enlace
de dados
25- Endereçamento
- Ao nível de rede, cada elemento (máquina final ou
intermediária) precisa ser identificado de forma
única na rede, independente da tecnologia da
subrede utilizada. - Rede IP usa hierarquia para conseguir
escalabilidade. - Há pelo menos três níveis
- Um simples hospedeiro IP (servidor.san.uri.br)
- Uma sub-rede IP (san.uri.br)
- Um sistema autônomo (uri.br)
- Criação de um espaço de endereço para
identificação de interfaces de rede. - Classes A a C para unicast e uma classe D para
multicast
26DATAGRAMA IP
comprimento total do datagrama (bytes)
número da versão do protocolo IP
32 bits
tipo de serviço
comp.cab
comprimento do cabeçalho (bytes)
ver
comprimento
para fragmentação/ remontagem
início do fragmento
tipo dos dados (DS)
bits
ident. 16-bits
camada superior
sobre-vida
checksum Internet
número máximo de enlaces restantes (decrementado
a cada roteador)
endereço IP de origem 32 bits
endereço IP de destino 32 bits
protocolo da camadasuperior ao qual entregar os
dados
p.ex. temporizador, registrar rota seguida,
especificar lista de roteadores a visitar.
Opções (se tiver)
dados (comprimento variável, tipicamente um
segmento TCP ou UDP)
27Endereçamento IP
Um endereço de IP não identifica um computador
específico. Pelo contrário, cada endereço de IP
identifica uma conexão entre um computador e uma
rede. Um computador com conexões de rede
múltiplas (por exemplo, router) deve ser
atribuído um endereço IP para cada conexão.
28Endereçamento IP
- Virtual
- só reconhecido por software
- Utilizado para toda a comunicação numa rede de
interconexão - IPv4 inteiro de 32 bits
- Valor distinto para cada Computador/interface
- Fornece uma abstração
- Independente de endereçamento de hardware (MAC)
- Utilizado por
- Protocolos de camada mais altas
- Aplicações
29Endereçamento IP
- Dividido em duas partes
- prefixo identifica a rede
- sufixo identifica o computador/interface
- Autoridade global atribui um prefixo distinto
para a rede - Administrador local atribui sufixo distinto para
o computador/interface
30Endereço IP
31Endereço IP. Notação Decimal
- Representa cada octeto em decimal separado por
pontos - Não é igual a nomes como www.xyz.com.br
129.194.69.68 Endereço IP
129.194 id-rede 1000 0001 1100 0010 69.68
id-computador 0100 0101 0100 0100
- Quatro valores decimais por endereço de 32 bits
- Cada número decimal
- representa oito bits
- está entre 0 e 255 inclusivo
32Endereço IP. Notação Decimal
33Endereçamento hierárquico
34Classe de Endereços IP
35Número de redes e hosts por classe
Classe Primeiros bits Intervalo do 1º octeto Núm. de redes Número de hosts
A 0 1 a 126 128 (28) 16.777.216 (224)
B 10 128 a 191 16.384 (214) 65.536 (2116)
C 110 192 a 223 2.097.152(221) 256 (28)
D 1110 224 a 239 Utilizado para tráfego Multicast Utilizado para tráfego Multicast
E 1111 240 a 254 Reservado para uso futuro Reservado para uso futuro
36Intervalos de endereços por classe
37Endereços Reservados
- Identificador de rede não pode ser 127
- 127 é reservado para fins de loop-back
- Os identificadores de rede e de hospedeiro não
podem ser 255 (todos os bits iguais a 1) - 255 é um endereço para difusão
- Os identificadores de rede e de hospedeiro não
podem ser 0 (todos os bits iguais a 0) - 0 (zero) significa somente esta rede
- O identificador de hospedeiro deve ser único na
rede
38Endereços Privados
- A RFC 1918 define alguns intervalos de IPs como
não roteáveis
39Interconexão usando IP
40Endereçamento IP
Problemas endereçamento original
- Crescimento de Internet
- Tamanho de tabela de routing
- Esgotamento de endereços
- Peso Administrativo
- Má utilização de endereços
41Soluções introduzidas
- NAT (Network Address Translation) 1994 (RFC
1631) - Rede interna -- endereço privado --- Gateway
--- endereço público -- Internet - Endereçamento subrede (subnetting) - 1985
- Subdividir uma classe grande em redes menores ?
mascara de rede (netmask) - Roteamento inter-domínio sem classes (classless
interdomain routing - CIDR) - 1993 - introduzido em 1993 endereçamento IP mais
eficiente e flexível - CIDR é conhecido também como endereçamento
super-rede (supernetting). Os endereçamentos
subrede e super-rede têm basicamente o mesmo
conceito. - IPv6
- Solução completa do problema
42O conceito de subrede
43Máscara de suberede
- Auxilia na definição de que porção do endereço
define rede e host - Classes A, B e C possuem máscaras padrão
- Classe A 255.0.0.0 ou /8
- Classe B 255.255.0.0 ou /16
- Classe C 255.255.255.0 ou /24
- Determina se um host está na subrede local ou
remota - Mascara de rede vista somente dentro da
organização
44Exemplo de máscara de suberede
45Roteamento Interdomínio sem Classes (CIDR)
46Roteamento Interdomínio sem Classes (CIDR)
- O espaço de endereço IP é quebrado em segmentos
- Cada segmento é descrito por um prefixo.
- Um prefixo tem a forma x/y, onde x indica o
prefixo de todos os endereços no segmento, e y
indica o comprimento do segmento. - Por exemplo, o prefixo 128.9/16 representa o
segmento de rede que contém os endereços no
intervalo 128.9.0.0 128.9.255.255
47 Hosts Netmask Quantidade de uma classe C
/32 1 255.255.255.255 1/128
/30 4 255.255.255.252 1/64
/29 8 255.255.255.248 1/32
/28 16 255.255.255.240 1/16
/27 32 255.255.255.224 1/8
/26 64 255.255.255.192 1/4
/25 128 255.255.255.128 1/2
/24 256 255.255.255.0 1
/23 512 255.255.254.0 2
/22 1.024 255.255.252.0 4
/21 2.048 255.255.248.0 8
/20 4.096 255.255.240.0 16
/19 8.192 255.255.224.0 32
/18 16.384 255.255.192.0 64
/17 32.768 255.255.128.0 128
/16 65.536 255.255.0.0 256
48Roteamento Interdomínio sem Classes (CIDR)
- Agregação de prefixos
- Se um provedor de Internet presta serviço a
várias companhias com vários prefixos, pode
(algumas vezes) agregá-los em um único prefixo.
Os outros roteadores podem reduzir o tamanho da
tabela de endereço.
49A Camada de Rede na Internet
- Funções da camada de rede em estações, roteadores
Camada de transporte TCP, UDP
Camada de rede
Camada de enlace
Camada física