IER-2011-2

De MediaWiki do Campus São José
Ir para: navegação, pesquisa

Índice

Instalação de Equipamentos de Redes: Diário de Aula 2011-2

Professor: Marcelo Maia Sobral (msobral@gmail.com)
Lista de email (forum): ier-ifsc@googlegroups.com
Atendimento paralelo: 2a: 14h a 18 h, 4a: 8 a 12h, 14 a 17h

Bibliografia

Para pesquisar o acervo das bibliotecas do IFSC:

Curiosidades

Listas de exercícios

Avaliações

Aluno 1a prova 2a prova 3a prova P.I. FINAL
Alexandre C C A A B
Arnaldo C B D/C A C
Caroline D-/D D/D D/D A D
Eduardo C B C A C
Fernando A B A A A
George B B B - B
Guilherme C D/D C A D
Jhonatta C B A A B
Katia D* D* D* D* D
Luis Gustavo D-/C C B A C
Luiz Neto D-/C C B A C
Marcos C D/D+ D/D+ A D
Mário Antônio D+ D* D* D* D
Michel D- D D* D* D
Patrik D* D* D* D* D
Rodrigo Oliveira D* D* D* D* D
Tiago C D* D* D* D
Willian D-/D* C B A D

Obs:

  • D* = ausente
  • /X = conceito da recuperação

Softwares

  • Netkit: possibilita criar experimentos com redes compostas por máquinas virtuais Linux
  • IPKit: um simulador de encaminhamento IP (roda direto dentro do navegador)

01/08: Introdução

  • Capítulo 13 do livro "Comunicação de Dados e Redes de Computadores", de Berhouz Forouzan
  • Capítulo 5 do livro "Redes de Computadores e a Internet", de James Kurose.
  • Capítulo 4 do livro "Redes de Computadores", de Andrew Tanenbaum

Apresentação da disciplina: conteúdo, bibliografia e avaliação, laboratório.

Apresentou-se uma visão geral dos conceitos sobre comunicação de dados, amparada em transparências. Nesta aula se planta a base para iniciar o estudo com maior profundidade da camada de enlace e da camada física.

Nosso ponto de partida serão pequenas redes compostas por uma ou mais redes locais (LANs) que se interligam, incluindo conexão para a Internet. Em cada rede investigaremos seu funcionamento, incluindo as configurações da subrede IP e os equipamentos usados.

Rede1-IER.png
Figura 1: uma pequena rede local (LAN) com conexão para Internet


Rede2-IER.png
Figura 2: duas redes locais (LAN) interligadas por um enlace de longa distância (WAN)

Será feito um experimento com base nas redes acima.

Ferramentas de apoio ao estudo

Uma limitação que temos está na pouca quantidade de equipamentos para as atividades em laboratório. Para atenuar esse problema, podem-se usar softwares que simulem redes. Existe um software desses em particular, chamado Netkit, que possibilita criar redes virtuais. Essas nada mais são que máquinas virtuais interligadas com switches e links seriais virtuais (isso é, tudo feito por software mas funciona como se fosse de verdade). Com ele se podem criar redes compostas por máquinas virtuais Linux, que são conectadas por links ethernet e PPP. Todos os cenários que usaremos em nosso estudo (com exceção das configurações de modems), poderiam ser reproduzidos com esse software. Existe um guia de instalação e uso publicado na wiki:

Esse guia contém uma coleção de exemplos, para que tenham ideia do que se pode fazer com o Netkit.

O Netkit fica assim como opção para complementar o estudo. Ele funciona como um laboratório de redes, em que se podem criar redes como aquelas que vemos em aula e mesmo inventar novas redes. Seu uso se destina a fixar conceitos, para que o uso dos equipamentos reais seja facilitado.

Além do Netkit, este simulador de roteamento IP, que roda dentro do próprio navegador, pode ajudá-los a exercitar a divisão de subredes e a criação de rotas estáticas.

Exercícios

1. Usando o Ipkit crie as seguintes redes. Não esqueça de definir as rotas estáticas.

Rede1-1.png


Rede1-2.png


Rede1-3.png

2. Reproduza as redes do exercício 1 usando o Netkit. Teste a comunicação entre os computadores e roteadores usando o comando ping. Use também o tcpdump para monitorar as interfaces de rede.

04/08: Protocolos de enlace ponto-a-ponto

  • Ver capítulo 11 do livro "Comunicação de Dados e Redes de Computadores", de Berhouz Forouzan.
  • Capítulo 5 do livro "Redes de Computadores e a Internet", de James Kurose.
  • Ver capítulo 3 do livro "Redes de Computadores", de Andrew Tanenbaum.
  • ver capítulo 2 do livro "Redes de Computadores: uma abordagem de sistemas", de Larry Peterson e Bruce Davie.


Enlaces de dados (Data Link)

Data-link.png

Os serviços identificados na figura acima estão descritos abaixo. A eles foram acrescentados outros dois:

  • Encapsulamento (ou enquadramento): identificação das PDUs (quadros) de enlace dentro de sequências de bits enviadas e recebidas da camada física
  • Controle de erros: garantir que quadros sejam entregues no destino
    • Detecção de erros: verificação da integridade do conteúdo de quadros (se foram recebidos sem erros de bits)
  • Controle de fluxo: ajuste da quantidade de quadros transmitidos, de acordo com a capacidade do meio de transmissão (incluindo o atraso de transmissão) e do receptor
  • Endereçamento: necessário quando o enlace for do tipo multi-ponto, em que vários equipamentos compartilham o meio de transmissão (ex: redes locais e redes sem-fio)
  • Controle de acesso ao meio (MAC): também necessário para meios compartilhados, para disciplinar as transmissões dos diversos equipamentos de forma a evitar ou reduzir a chance de haver colisões (transmissões sobrepostas)
  • Gerenciamento de enlace: funções para ativar, desativar e manter enlaces

Atividade

Nesta aula será configurado um enlace ponto-a-ponto entre duas redes locais com protocolo PPP, porém usando computadores como roteadores. O objetivo é observar os detalhes do protocolo de enlace quanto aos serviços da camada de enlace:

Rede1-lab2.png

Enquadramento

Funcionamento do enquadramento (ou sincronização de quadro) do tipo sentinela (usado pelo PPP e HDLC): usa-se uma flag delimitadora para informar o início e fim de quadro. Há uma segunda flag, chamada de escape (ESC), para evitar que um byte com o valor de flag delimitadora, o qual apareça em algum campo do quadro (ex: dados ou campos de controle) seja erroneamente interpretado como fim de quadro. No caso do PPP e HDLC:

  • 7E: flag delimitadora
  • 7D: flag de escape


Ppp-frame.png
Quadro PPP (tamanho de campos dados em bytes)

Detecção de erros

Probabilidade de erros de transmissão (BER - Bit Error Rate), códigos de detecção de erro e CRC.

Há um resumo nas transparências.

O experimento com o gerador de CRC-16 do PPP pode ser repetido em casa. Ele é capaz de verificar um quadro PPP, que pode ser conseguido usando-se a opção record do pppd. Essa opção grava em um arquivo de log os conteúdos dos quadros PPP enviados e recebidos, que podem depois serem visualizados (ou terem seu bytes extraídos) com o utilitário pppdump. Porém o gerador de CRC-16 fornecido inclui dois arquivos contendo quadros PPP previamente coletados: quadro_correto.raw e quadro_errado.raw. Eles podem ser verificados com o programa fcs (o verificador de CRC-16):

# descompacta o arquivo do gerador de CRC-16
tar czf fcs-rfc.tgz
cd fcs

# Testa o quadro correto
./fcs quadro_correto.raw

# Testa o quadro_errado
./fcs quadro_errado.raw

Há um testador que modifica aleatoriamente uma certa quantidade de bits do quadro_correto.raw, até que encontre um caso em que o erro não seja detectado. Para usá-lo deve-se executar o programa testa.py:

# executa testa.py com 4 erros de bit por quadro gerados aleatoriamente
./testa.py 4

O código fonte do gerador de CRC-16 está no arquivo fcs-rfc.c, o qual foi obtido diretamente da RFC 1662.


Atividade extra-aula

Faça uma pesquisa sobre protocolos de enlace ponto-a-ponto usados em redes sem-fio. Tais enlaces podem ser feitos dentro de ou entre cidades (ex: entre o Morro da Cruz em Florianópolis e São José ou Palhoça), via satélite, ou mesmo entre pontos não tão distantes mas onde não existe infraestrutura cabeada prévia. Descreva as características dos protocolos encontrados (onde são melhor aplicados, e que serviços de enlace são contemplados), e forneça exemplos de onde estão sendo usados. Se conhecer empresas que os utilizem, e para que finalidade, informe em sua pesquisa.

Prazo de entrega: 08/08 (próxima aula).

08/08: A parte física do enlace ponto-a-ponto

Continuação do estudo da implantação da pequena rede: a parte do link WAN.

115200
10.0.0.1:
local
ipcp-accept-remote
nocrtscts
persist
lcp-echo-failure 10
noauth
nodetach
debug
record /hostlab/shared/r1.log


Rede-ier-wan.png


O link WAN a ser investigado corresponde à camada física da arquitetura de redes. Ele se compõe de equipamentos e técnicas criados para fazer a transmissão de dados por meio de sinais elétricos.

Osi-tcpip.png


Serviços da camada física:

Servicos-Camada-Fisica.png
(Adaptado do livro "Comunicação de Dados e Redes de Computadores, 3a ed.", de Berhouz Forouzan)

Laboratório

Uma rede com enlaces WAN feitos com modems digitais SHDSL.

Rede-modems.png

Leitura adicional

Transmissão digital:

15/08: A parte física do enlace ponto-a-ponto: modems e interfaces digitais


Material de referência:


Introdução: ver transparências.

Hoje foi realizada a experiência com modems síncronos, em que se configuram modems SHDSL e se fazem enlaces de testes para localizar problemas em circuitos.

Experimento adicional: visualização de códigos de linha e modulação.

Interfaces digitais

Material de referência:


Em algumas tecnologias de interfaces digitais se usa a terminologia DTE/DCE:

  • DTE: componente que quer se comunicar com outro componente remoto, tal como um PC se comunicando com outro PC, ou um roteador comunicando com outro roteador.
  • DCE: componente que realmente faz a comunicação, ou que efetua as funções de gerador e receptor discutidas em padrões de comunicação (ver RS-232, RS-422 e RS-485, por exemplo). Um modem é um típico exemplo de DCE.


Dte-dce.png


Tabela-ids.png
Tabela comparativa de padrões elétricos de algumas interfaces digitais de uso comum
(obtida dos slides da disciplina de Comunicação de Dados da UNIP)


Tabela-ids-funcionais.png
Tabela comparativa de padrões funcionais de algumas interfaces digitais de uso comum
(obtida dos slides da disciplina de Comunicação de Dados da UNIP)

22/08: Redes locais

Introdução a redes locais



Distinção entre WAN, MAN e LAN

  • Aplicações de cada um desses tipos de rede
  • Tecnologias envolvidas
  • "Backbones" da Internet Brasileira:


Algumas redes WAN:


Uma rede MAN MetroEthernet em Florianópolis.

Man-metro.png

LANs

  • Características
  • Topologias
  • O problema do acesso ao meio


Lan1-2011-1.png
Uma pequena LAN com um link para Internet



Lan2-2011-1.png
Uma LAN um pouco maior, e também com um link para Internet


Lan-media.png
Uma LAN de médio porte

Tecnologias de LAN switches

Atividade extra

Faça uma pesquisa sobre recursos e funcionalidades que podem ser encontrados em switches atualmente encontrados no mercado. Identifique os modelos e fabricantes de switches que foram investigados, e publique-os na seguinte página da wiki :

Switches Ethernet


Ajuda para edição da wiki

29/08: Redes locais: implantação com VLANs/1a avaliação

  • Transparências sobre VLANs
  • 3a lista de exercícios
  • Livro sobre VLANs
  • Ver capítulo 16 do livro Comunicação de Dados e Redes de Computadores", de Berhouz Forouzam (no xerox)
  • Ver capítulo 5 do livro Redes de Computadores e a Internet, de James Kurose (na biblioteca)
  • Ver capítulo 4 do livro Redes de Computadores, de Andrew Tanenbaum (na biblioteca).

LANs virtuais (VLANs – Virtual LANs) são formadas por estações que, apesar de estarem em uma mesma LAN física, formam diferentes LANs lógicas isoladas umas das outras. A figura abaixo ilustra um exemplo com três VLANs implantadas em um único switch. Necessariamente a implantação de VLANs depende de switches (ou pontes) com suporte ao padrão IEEE 802.1q (existem outras tecnologias, como ISL e VTP da Cisco, porém não padronizadas).

Vlans.png


Esta animação possibilita simular a configuração de VLANs em um switch, e efetuar testes de transmissão. Experimente criar diferentes VLANs e observar o efeito em transmissões unicast e broadcast (clique na figura para acessar o simulador).

Um simulador de VLANs


O padrão IEEE 802.1q define, entre outras coisas, uma extensão ao quadro MAC para identificar a que VLAN este pertence. Essa extensão, denominada tag (etiqueta) e mostrada na figura 4, é composta por 4 bytes, e situa-se entre os campos de endereço de destino e ethertype. O identificador de VLAN (VID) ocupa 12 bits, o que possibilita portanto 4096 diferentes VLANs.

8021q.png

Na aula de hoje será criada uma rede composta por subredes implantadas com VLANs.

Conceitos da 1a avaliação

Aluno Conceito
Alexandre C
Arnaldo C
Caroline D-
Eduardo C
Fernando A
George B
Guilherme C
Jhonatta C
Katia D*
Luis Gustavo D-
Luiz Neto D-
Marcos C
Mário Antônio D+
Michel D-
Patrik D*
Rodrigo Oliveira D*
Tiago C
Willian D-

05/09: Redes locais: implantação com VLANs

Continuação da aula de 29/08 ...

  • Topologia lógica X topologia física
  • Domínios de broadcast
  • Portas tagged x portas untagged
  • Vlan trunk



Vantagem Desvantagem
Regras de associação a VLANs precisam ser aplicadas apenas uma vez Tags podem ser interpretadas somente por equipamentos VLAN-aware
Apenas switches de borda precisam conhecer as regras de associação de VLANs Switches de borda devem remover tags ao encaminharem quadros para equipamentos que não são VLAN-aware
Switches de núcleo podem obter maior desempenho ao operarem com um identificador de VLAN explícito Inserção ou remoção de uma tag implica recalcular FCS, possivelmente corrompendo um quadro
Equipamentos terminais VLAN-aware podem reduzir ainda mais a carga de processamento de switches de borda Inserção de tag pode aumentar o comprimento de um quadro além do máximo permitido por equipamentos legados

Tabela comparativa de vantagens e desvantagens do uso de identificadores de VLAN dentro de quadros Ethernet (VLAN tagging)

12/09: Redes locais: continuando a usar VLANs


Exercício para aquecimento (com Netkit): Uma empresa possui uma rede local cuja topologia física está mostrada abaixo:


Vlan-ex1.png


Uma reorganização dessa rede pretende que ela seja dividida em três redes locais e que tenha a seguinte estrutura:

Vlan-ex2.png


  • Essa nova topologia deve ser implantada sem modificar a topologia física. Informe o que deve ser feito e como os equipamentos devem ser configurados para que isso seja realizado.
  • Além disso, essas empresa usará a faixa de endereços 172.18.10.64/26. Defina o endereçamento IP dos equipamentos e as rotas que porventura sejam necessárias.

O arquivo Lab.conf para a topologia física pode ser este:

pc1[type]=generic
pc2[type]=generic
pc3[type]=generic
pc4[type]=generic
pc5[type]=generic
pc6[type]=generic
pc7[type]=generic
pc8[type]=generic
servidor[type]=generic

sw1[type]=switch
sw2[type]=switch
sw3[type]=switch
sw4[type]=switch
sw5[type]=switch

sw1[eth0]=sw1-port0
sw1[eth1]=sw1-port1
sw1[eth2]=sw1-sw3

sw2[eth0]=sw2-port0
sw2[eth1]=sw2-port1
sw2[eth2]=sw2-sw3

sw3[eth0]=sw1-sw3
sw3[eth1]=sw2-sw3
sw3[eth2]=sw4-sw3
sw3[eth3]=sw5-sw3

sw4[eth0]=sw4-port0
sw4[eth1]=sw4-port1
sw4[eth2]=sw4-port2
sw4[eth3]=sw4-sw3

sw5[eth0]=sw5-port0
sw5[eth1]=sw5-port1
sw5[eth2]=sw5-sw3

pc1[eth0]=sw4-port0:ip=192.168.1.1/24
pc2[eth0]=sw4-port1:ip=192.168.1.2/24
pc3[eth0]=sw5-port0:ip=192.168.1.3/24
pc4[eth0]=sw5-port1:ip=192.168.1.4/24
pc5[eth0]=sw4-port2:ip=192.168.1.5/24
pc6[eth0]=sw2-port0:ip=192.168.1.6/24
pc7[eth0]=sw1-port0:ip=192.168.1.7/24
pc8[eth0]=sw1-port1:ip=192.168.1.8/24
servidor[eth0]=sw2-port1:ip=192.168.1.10/24

Foi determinado que as VLANs devem ter a seguinte configuração:

  • VLAN 5: pc4, pc6, pc7, pc8 (subrede 192.168.1.0/24)
  • VLAN 10: pc7, servidor (subrede 192.168.2.0/24)
  • VLAN 15: pc1,pc2,pc3,pc5,pc7 (subrede 192.168.3.0/24)

Após a criação das VLANs, o arquivo Lab.conf ficou assim (note que pc7 precisou ter configurada uma interface virtual para cada VLAN):

pc1[type]=generic
pc2[type]=generic
pc3[type]=generic
pc4[type]=generic
pc5[type]=generic
pc6[type]=generic
pc7[type]=gateway
pc8[type]=generic
servidor[type]=generic

sw1[type]=switch
sw2[type]=switch
sw3[type]=switch
sw4[type]=switch
sw5[type]=switch

sw1[eth0]=sw1-port0:vlan_tagged=5,10,15
sw1[eth1]=sw1-port1:vlan_untagged=5
sw1[eth2]=sw1-sw3:vlan_tagged=5,10,15

sw2[eth0]=sw2-port0:vlan_untagged=5
sw2[eth1]=sw2-port1:vlan_untagged=10
sw2[eth2]=sw2-sw3:vlan_tagged=5,10

sw3[eth0]=sw1-sw3:vlan_tagged=5,10,15
sw3[eth1]=sw2-sw3:vlan_tagged=5,10
sw3[eth2]=sw4-sw3:vlan_tagged=15
sw3[eth3]=sw5-sw3:vlan_tagged=5,15

sw4[eth0]=sw4-port0:vlan_untagged=15
sw4[eth1]=sw4-port1:vlan_untagged=15
sw4[eth2]=sw4-port2:vlan_untagged=15
sw4[eth3]=sw4-sw3:vlan_tagged=15

sw5[eth0]=sw5-port0:vlan_untagged=15
sw5[eth1]=sw5-port1:vlan_untagged=5
sw5[eth2]=sw5-sw3:vlan_tagged=5,15

pc1[eth0]=sw4-port0:ip=192.168.3.1/24
pc2[eth0]=sw4-port1:ip=192.168.3.2/24
pc3[eth0]=sw5-port0:ip=192.168.3.3/24
pc4[eth0]=sw5-port1:ip=192.168.1.4/24
pc5[eth0]=sw4-port2:ip=192.168.3.5/24
pc6[eth0]=sw2-port0:ip=192.168.1.6/24

pc7[eth0]=sw1-port0:vlan_tagged=(5,ip=192.168.1.7/24),(10,ip=192.168.2.7/24),(15,ip=192.168.3.7/24)

pc8[eth0]=sw1-port1:ip=192.168.1.8/24
servidor[eth0]=sw2-port1:ip=192.168.2.10/24

pc1[default_gateway]=192.168.3.7
pc2[default_gateway]=192.168.3.7
pc3[default_gateway]=192.168.3.7
pc4[default_gateway]=192.168.1.7
pc5[default_gateway]=192.168.3.7
pc6[default_gateway]=192.168.1.7
pc8[default_gateway]=192.168.1.7
servidor[default_gateway]=192.168.2.7

Implantando VLANs nos switches do laboratório

Hoje será implantada no laboratório a rede mostrada abaixo:

Rede-vlans.png


Na aula passada essa rede foi criada usando-se o Netkit. Hoje pretende-se repetir o experimento, porém usando equipamentos reais presentes no laboratório.

Agregação de enlace

Após implantada é natural que uma rede cresça ou tenha sua topologia alterada. Assim, seu dimensionamento, pensado (espera-se) cuidadosamente durante seu projeto, pode não ser mais o ideal ou mesmo tornar-se inadequado. Isso é particularmente observado nos equipamentos que interligam a rede, tais como switches de núcleo (core switches).

Num projeto de uma rede de médio ou grande porte, um ou mais switches de núcleo interligam os demais segmentos da rede. Desta forma, por esses switches potencialmente trafega uma grande quantidade de informação. Se os segmentos de rede forem ampliados, a quantidade de tráfego por esses switches possivelmente aumentará. Dependendo do caso, os enlaces entre esses switches e os segmentos de rede poderiam ficar saturados - isto é, não dariam mais conta da intensidade de tráfego que devem transportar. Nesse caso, uma saída poderia ser aumentar as capacidades desses enlaces.

As capacidades de enlaces Ethernet de um switch são determinadas pelas tecnologias por ele suportadas. Isso quer dizer que uma porta de switch tem sua capacidade predefinida, e não há como modificá-la. No entanto, uma forma barata de aumentar a capacidade de enlaces Ethernet é agregar duas ou mais portas de switches para que operem como se fossem uma única porta. Essa técnica tem tanta utilidade que o IEEE (órgão que padroniza diversas tecnologias de camada física e enlace de redes), criou para ele uma norma específica chamada IEEE 802.1AX.


Exemplo de uma LAN com agregação de enlaces - figura obtida do manual do switch D-Link DES-3526


A norma IEEE 802.1AX define como equipamentos devem implementar a agregação de enlaces (link aggregation). Graças a ela, switches de diferentes fabricantes podem interoperar. De acordo com essa norma, a agregação de enlaces implica agrupar portas do switch para operarem como uma única porta, como pode ser visto na figura abaixo. No entanto, cada porta individual mantém suas funções normalmente, com seu MAC trabalhando de forma independente. A agregação de enlaces faz com que os quadros sejam enviados de forma balanceada pelas portas agrupadas, assim distribuindo o tráfego entre elas. O interessante disso é que se uma porta perder comunicação (ex: o cabo for desconectado), o grupo de portas se ajusta para usar somente as portas que possuem comunicação. Assim, além de aumentar a capacidade de enlaces, essa técnica proporciona tolerância a falhas de portas ou enlaces individuais.

Localização da agregação de enlaces na arquitetura de redes IEEE 802 - figura obtida da norma IEEE 802.1AX

Atividade

Na experiência de hoje será implantada uma rede parecida com a aula anterior. Naquela aula foi criada uma rede local com duas VLANs usando dois switches. O enlace entre esses switches transportava tráfego de ambas as VLANs (i.e. operavam com VLAN trunking). Esse enlace pode tanto se tornar um gargalo, quanto um ponto crítico em caso de falha. Assim, na atividade de hoje aquela rede será novamente implantada porém tende a capacidade desse enlace aumentada com agregação de enlace (link aggregation).

19/09: Redes locais: Interligação de LANs e Spanning Tree Protocol (STP)

  • Capítulo 16 do livro "Comunicação de Dados e Redes de Computadores, 3a ed.", de Behrouz Forouzan.
  • Capítulo 4 do livro "Redes de Computadores, 4a ed.", de Andrew Tanenbaum.

Em LANs grandes pode ser necessário ter enlaces redundantes, para evitar que a interrupção de um enlace isole parte da rede. A existência de interligações alternativas portanto tem a finalidade de conferir algum grau de tolerância a falhas na infraestrutura da rede. Assim, uma LAN com uma ligação em anel como mostrado abaixo apresentaria dois enlaces para ligar cada switch ao resto da rede.

LAN-anel-stp.png

sw1[type]=switch
sw2[type]=switch
sw3[type]=switch
pc1[type]=generic
pc2[type]=generic
pc3[type]=generic

# Ativação do STP nos switches
sw1[stp]=on
sw2[stp]=on
sw3[stp]=on

sw1[eth0]=sw1-sw2
sw1[eth1]=sw1-port1
sw1[eth2]=sw1-sw3

sw2[eth0]=sw1-sw2
sw2[eth1]=sw2-port1
sw2[eth2]=sw2-sw3

sw3[eth0]=sw1-sw3
sw3[eth1]=sw3-port1
sw3[eth2]=sw2-sw3

pc1[eth0]=sw1-port1:ip=192.168.0.1/24
pc2[eth0]=sw2-port1:ip=192.168.0.2/24
pc3[eth0]=sw3-port1:ip=192.168.0.3/24

Apesar de desejável em algumas situações, uma topologia de rede com caminhos fechados, como visto na figura acima, não pode ser instalada sem alguns cuidados. Uma rede como essa trancaria devido a um efeito chamado de tempestade de broadcasts (broadcast storm). Isso acontece porque ao receber um quadro em broadcast, um switch sempre o retransmite por todas as demais portas. Para que a rede acima funcione como esperado, uma ou mais portas de switches precisarão ser desativadas de forma que o caminho fechado seja removido. Ter que fazer isso manulamente tira o sentido de ter tal configuração para tolerância a falhas, por isso foi criado o protocolo STP (Spanning Tree Protocol, definido na norma IEEE 802.1d) para realizar automaticamente essa tarefa.

Switches e STP (Spanning Tree Protocol) no Netkit

... ver também:

  • timers do STP (hello e max-age), que influenciam o tempo de convergência do protocolo

26/09: Redes locais: controle de acesso

Ainda STP

Finalização do experimento da aula passada.

Norma IEEE 802.1x

A norma IEEE 802.1x define um framework para controle de acesso a redes locais IEEE 802, sendo usado tanto em redes cabeadas quanto sem-fio. O propósito dessa norma é criar mecanismos para identificar e autorizar ou não o acesso de um usuário à infraestrutura da rede. Assim, um computador que se conecte a uma porta de um switch terá seu acesso à rede liberado somente após ser autenticado e autorizado.

8021x.png


Os mecanismos são implementados em três componentes que forma a estrutura de controle de acesso IEEE 802.1x, mostrada na figura abaixo:

Ieee-8021x.png


  • Supplicant: o cliente que deseja se autenticar. Implementado com um software (ex: wpa_supplicant, xsupplicant).
  • Autenticador: o equipamento que dá acesso à rede para o cliente, e onde é feito o bloqueio ou liberação do uso da rede. Implementado em switches e Access Points (no caso de redes sem-fio).
  • Servidor de Autenticação: o equipamento que verifica as credenciais fornecidas pelo supplicant, e informa ao autenticador se ele pode ou não acessar a rede. Implementado comumente em um servidor Radius.

A autenticação se faz com protocolos específicos definidos na norma IEEE 802.1x:

  • EAP (Extensible Authentication Protocol): protocolo para intercâmbio de informações de autenticação entre supplicant e servidor de autenticação.
  • EAPOL (EAP over LAN): protocolo para transportar as PDUs EAP entre supplicant e autenticador.

Ieee-802x-eap.png

Existem vários métodos EAP, que correspondem a diferentes mecanismos de autenticação. Assim, o método de autenticação pode ser escolhido de acordo com as necessidades de uma rede.

  • EAP-MD5: baseado em login e senha, usa um desafio MD5 para autenticar o usuário.
  • EAP-TLS: baseado em certificados digitais X.509, usados para autenticar a rede para o supplicant, e o supplicant para a rede.
  • EAP-TTLS: também baseado em certificados digitais, mas somente para autenticar a rede pro supplicant. O supplicant se autentica com algum outro método EAP mais simples, como EAP-MD5.
  • ... e muitos outros !

Atividade

Deve ser criada uma infraestrutura no laboratório em que os computadores terão acesso à rede somente após autenticarem-se frente aos switches.

Lab9.png


03/10: Sem aula de IER

... ao invés, houve aula de PRG !

10/10: ADSL e PPPoE

  • Tecnologias de acesso:
    • xDSL
    • CATV
    • MetroEthernet
    • Acesso discado
    • Wireless

PPPoE (PPP over Ethernet)

PPPoE define um método para encapsular quadros PPP dentro de quadros Ethernet, e foi definido na RFC 2516. Ele foi criado para facilitar a integração de usuários discados e banda-larga em provedores de acesso (ISP - Internet Service Providers). Além disso, torna mais fácil o controle de acesso, de uso da rede, e contabilização para usuários que a acessam via rede Ethernet. Assim, é possível implantar uma rede em que os usuários, para conseguirem acesso, precisam se autenticar como em um serviço discado. Uma vez obtido o acesso, pode-se também impor limitações de uso de banda de acordo com o usuário. Exemplos de infraestruturas que podem se beneficiar com essa técnica são redes de condomínios e de prédios comerciais. Finalmente, PPPoE é usado como protocolo de enlace em acessos aDSL, ilustrado na figura abaixo.

Pppoe architecture.gif


No PPPoE suas PDUs são encapsuladas em quadros Ethernet, usando o ethertype 8863H (estágio de descoberta) ou 8864H (estágio de sessão). Devido ao cabeçalho PPPoE (6 bytes) combinado ao identificador de protocolo do quadro PPP (2 bytes), a MTU em enlaces PPPoE não pode ser maior que 1492 bytes. O quadro PPP é simplificado, não possuindo as flags delimitadoras e os campos Address, Control e FCS. A PDU PPPoE é mostrada a seguir:


Pppoe-pdu.png


Em um enlace PPPoE um dos nodos é o host (cliente), e o outro o concentrador de acesso (AC, que tem papel de servidor). O estabelecimento do enlace é iniciado pelo host, que procura um AC e em seguida solicita o início do enlace. Esse procedimento é composto por por dois estágios:

  • Descoberta (Discovery): o cliente descobre um concentrador de acesso (AC) para se conectar. Ocorre uma troca de 4 PDUs de controle:
    • PADI (PPPoE Active Discovery Indication): enviado em broadcast pelo cliente para descobrir os AC.
    • PADO (PPPoE Active Discovery Offer): resposta enviada por um ou mais AC, contendo seus identificadores e nomes de serviços disponíveis (no âmbito do PPPoE).
    • PADR (PPPoE Active Discovery Request): enviado pelo cliente para o AC escolhido, requisitando o início de uma sessão.
    • PADS (PPPoE Active Discovery Session-Confirmation): resposta do AC escolhido.

      Pppoe-discovery.png

  • Sessão (Session): nessa etapa são trocados quadros PPP como no estabelecimento de um enlace PPP usual. A sessão pode ser encerrada com a terminação PPP (i.e., via protocolo LCP), ou com a PDU PPPoE PADT (PPPoE Active Discovery Terminate).

Dicas vistas no laboratório

  1. Sempre que se usar um computador como gateway deve-se ativar essa função, com um desses comandos (no caso do Linux):
    • echo 1 > /proc/sys/net/ipv4/ip_forward
    • sysctl -w net.ipv4.ip_forward=1
  2. Se for necessário usar NAT, uma forma rápida de fazê-lo é (mas existem outras ...):
    • iptables -t nat -A POSTROUTING -o nome_interface_saída -j MASQUERADE
  3. Sempre observe as rotas existentes em suas redes ! Se necessário, rastreie os datagramas quando desconfiar que algo está errado. Você pode usar:
    • traceroute -n IP_destino
    • Usando wireshark ou tcpdump para analisar tráfego

Atividade extra

No roteiro foi proposto um desafio: fazer controle de banda diferenciado por usuários que se conectam com PPPoE. Discutimos que para fazer isso é necessário:

  1. Classificar os usuários nas categorias ouro e prata
  2. Poder executar um programa (ou script) no momento em que o enlace PPP for estabelecido, de forma a configurar o controle de banda de acordo com a categoria de usuário. Deve-se passar a esse programa o IP que o usuário obteve em seu enlace PPPoE, ou o nome da interface PPP que foi criada no AC para esse enlace.

Ficou como tarefa para a turma detalhar como resolver esse problema, e trazer uma solução. Quer dizer, que programas usar e que opções desses programas devem ser configuradas. Imaginem que a solução deve vir pronta para ser implantada.

Quem resolver esse desafio ficará em alta consideração (que se refletirá em seu conceito ;-).

17/10: 2a avaliação

2a avaliação: início 20:40

24/10: Rede sem-fio IEEE 802.11

  • Ver capítulo 15 do livro Comunicação de Dados e Redes de Computadores, 3a ed., de Behrouz Forouzan.
  • Ver capítulo 4 (seção 4.4) do livro Redes de Computadores, 4a ed., de Andrew Tanenbaum.
  • Ver este livro on-line sobre redes IEEE 802.11.
  • Ver transparências

Será feito um experimento para configurar, usar e verificar a vazão de uma rede local sem-fio, e como funciona a comunicação entre a rede sem-fio e a rede cabeada. Também será investigado o tráfego nessa rede, usando o analisador de protocolo wireshark. A rede do experimento será parecida com a da figura abaixo:

Lab11a.png

Em aula foi discutido o MAC CSMA/CA, que usa quadros de confirmação (ACK) para se certificar de que um quadro foi corretamente recebido no destino. Assim, o CSMA/CA implementa uma forma de controle de erros do tipo pare-e-espere (stop-and-wait). Respondendo a uma questão sobre links de rádio de distâncias médias (11 km, como exemplificado por um aluno), levantou-se a questão sobre o ajuste de constantes de tempo do CSMA/CA para se adaptar a essas distâncias. Isso pode ser necessário porque o CSMA/CA foi definido para comunicação de curo alcance, então seus timeouts e demais constantes de tempo foram calculados para distâncias em torno de 100 m ou pouco mais. O artigo abaixo apresenta algumas recomendações sobre o ajuste desses valores:

ACK Timeouts

31/10: Segurança em redes sem-fio IEEE 802.11

Wifi security.jpg

Redes sem-fio oferecem muitos atrativos, como acesso ubíquo, ausência de cabeamento e suporte a usuários móveis. Mas também se sujeitaM a uso indevido, uma vez que pessoas não-autorizadas no alcance do sinal do ponto de acesso podem tentar usá-la para se comunicarem. Em geral três questões fundamentais aparecem no que diz respeito à segurança em redes sem-fio:

  1. Acesso indevido: uso indevido da infraestrutura por pessoas não-autorizadas.
  2. Monitoramento do tráfego da rede: os quadros na rede sem-fio podem ser coletados e interpretados, com possível roubo ou revelação de informação sensível.
  3. Infiltração de equipamentos na rede: um ou mais pontos de acesso podem ser infiltrados na rede sem-fio, fazendo com que pessoas os utilizem para se comunicarem. Assim, o tráfego dessas pessoas pode passar por outra rede, sendo passível de monitoramento.

Por exemplo, redes em locais densamente ocupados (como edifícios) podem ser investigadas por alguém em busca de uma rede aberta ou fácil de ser invadida. Essa pessoa pode simplesmente querer usar o acesso à Internet disponível em alguma rede sem-fio, ou mesmo invadir os equipamentos existentes em tal rede. A figura abaixo mostra uma situação hipotética em que uma pessoa investiga a existência de redes sem-fio a partir de um carro que trafega pelas ruas.

View from Wardriver Windshield.jpg

Assim, uma rede sem-fio minimamente bem configurado deve usar mecanismos de segurança que impeçam ou dificultem seu uso indevido. Em um cenário usual, tal rede sem-fio poderia se apresentar como mostrado abaixo:

Wifi-security1.png


Para tratar essas questões, deve haver mecanismos de segurança que contemplem os seguintes requisitos:

  1. Autenticação de usuários: usuários da rede sem-fio devem se identificar (ou autenticar) na infra-estrutura dessa rede, de forma a se autorizarem ou não seus acessos.
  2. Sigilo das comunicações: o tráfego na rede sem-fio deve ser encriptado, para que não seja inteligível caso sejam capturados por usuários mal-intencionados que estejam monitorando a rede sem-fio.
  3. Autenticação dos pontos de acesso: pontos de acesso devem se identificar para os usuários, para evitar a infiltração de pontos de acesso indevidos na rede.

Há mecanismos de segurança usados em redes IEEE 802.11 que contemplam todos os requisitos acima (WPA-EAP, WPA Enterprise), ou parcialmente (WPA-PSK ou WPA Personal). WPA-EAP aproveita a infraestrutura IEEE 802.1x, junto com técnicas de encriptação entre estações sem-fio, para atender esses requisitos. Já WPA-PSK usa apenas as técnicas de encriptação, não havendo um controle de acesso baseado em usuário. Na figura abaixo se mostra uma pequena rede sem-fio que usa WPA-EAP.

Wifi-auth.jpeg

Além dos mecanismos WPA, definidos na norma IEEE 802.11i, outra forma de implantar controle de acesso em redes sem-fio se vale de um portal de captura. Quando um usuário não identificado acessa a rede, o acesso ao ponto de acesso é concedido mas ao tentar navegar na Web seu acesso é desviado para uma página predefinida. Nessa página o usuário deve se identificar (ex: com login e senha), e em caso de sucesso seu acesso à Internet é liberado. Essa técnica se vale de uma combinação de mecanismos (firewall com filtro IP, serviço Web, uso de programas para autenticação) para controlar o acesso dos usuários. No entanto, não provê sigilo das comunicações nem autenticação de pontos de acesso ao usuário. Sua atratividade reside na simplicidade de implantação e uso (não necessita de supplicant), sendo uma escolha comum em hot spots como aeroportos e cyber cafes. No Projeto Integrador 2009.2 as equipes implantaram uma infra-estrutura que usava essa técnica.


07/11: Infraestrutura de rede sem-fio IEEE 802.11 e handover

Transição de BSS (Handover)

Em redes IEEE 802.11 com mais de um AP, para ampliar a área de cobertura, estações que se movimentam podem precisar migrar de um AP para outro. Essa operação se chama transição de BSS (também conhecida como handover ou roaming).

Handover2.png

A transição se desencadeia quando o sinal do enlace com o AP atual tem sua qualidade abaixo de um determinado limiar. Isso faz com que um novo AP seja procurado (varredura, ou scanning). Ao escolher um novo AP, a estação precisa nele se autenticar e associar. A autenticação depende do método usado (WPA-PSK à esquerda, ou WPA-EAP à direita)

Auth-rsn1.png Auth-eap.png

A associação em si leva apenas dois quadros de controle, como se pode ver abaixo:

Associacao.png

Como se pode deduzir, a transição feita dessa forma não é imediata. Na verdade, ela pode demorar muitos segundos ! Esse atraso de transição pode influenciar negativamente nas comunicações em andamento, uma vez que a transição costuma ocorrer quando o sinal está com baixa qualidade (causando perdas de quadros), além da demora para se completar. Esforços vêm sendo feitos atualmente para reduzir o atraso de transição, e dentre eles a norma IEEE 802.11r propõe um mecanismo para acelerar a autenticação. Porém o atraso de varredura ainda está por melhorar ...


15/11 a 15/12: Projeto Integrador

Projeto Integrador 2011.2