RED2-EngTel (página)

De MediaWiki do Campus São José
Ir para navegação Ir para pesquisar

Carga horária, Ementas, Bibliografia, Professores

RED2-Redes de computadores 2

Plano de Ensino 2014-1

Dados Importantes

Professor: Jorge H. B. Casagrande.
Email: casagrande@ifsc.edu.br
Atendimento paralelo: 4a feira 11:35h - 12:30h e 4a feira 19:25h - 20:20h (Sala dos professores de TELE - ao lado da reprografia)
Endereço do grupo: https://www.facebook.com/groups/1446441625588108/
Link alternativo para Material de Apoio da disciplina: http://www.sj.ifsc.edu.br/~casagrande/RED

Toda vez que voce encontrar a marcação ao lado de alguma atividade extra, significa que essa atividade será computada na avaliação individual. O prazo estabelecido para entrega estará destacado ao lado da atividade. Portanto, não perca o prazo limite para entrega. Atividades entregues fora do prazo não serão aceitas!

Recados Importantes


20/02 ATENÇÃO: Uma avaliação só pode ser recuperada somente se existir justificativa reconhecida pela coordenação. Desse modo, deve-se protocolar a justificativa no prazo de 48 horas, contando da data e horário da avaliação, e aguardar o parecer da coordenação. O não cumprimento desse procedimento implica a impossibilidade de fazer a recuperação, e assim a reprovação na disciplina.

21/02 Uso da Wiki: A partir dessa data,todo o repositório de material de apoio e referências de nossas aulas passam a usar a Wiki de tele. Para interação fora da sala de aula, acessem nosso grupo do facebook. Os planos de uso do Moodle que eu comentei para vocce serão adiados em função do projeto ampliado que o IFSC está construindo para usar esse ambiente.


Material de Apoio

Atividades Extras
Listas de exercícios
Laboratórios
Slides utilizados durante algumas aulas
Manuais e outros

Diário de aulas RED29005 - 2014-1 - Prof. Jorge H. B. Casagrande

Aula 1 - 12/02 - Parte1: Introdução a Comunicação de Dados

Aula 1 - 12/02 - Parte1: Introdução a Comunicação de Dados

Usando o quadro e slides, exploramos:

  • Apresentação da disciplina;
  • Conceitos importantes em comunicação de dados;
  • Componentes de uma infra-estrutura de telecomunicações;
  • Modelo Básico de comunicação de dados.
Aula 2 - 13/02 - Parte1: Componentes de Redes e Comunicação Serial

Aula 2 - 13/02 - Parte1: Componentes de Redes e Comunicação Serial

  • Componentes do modelo básico de comunicação de dados;
  • Comunicação Assíncrona e Síncrona e protocolos da camada de enlace;
Aula 3 - 19/02 - Parte1: Interfaces Digitais

Aula 3 - 19/02 - Parte1: Interfaces Digitais

  • Interfaces digitais RS232, V35, V36, RS485 e G703;
  • Protocolos da camada física usando os sinais de controle da ID e padronizações;
Aula 4 - 20/02 - Parte1: Meios de Transmissão e Modens Analógicos

Aula 4 - 20/02 - Parte1: Meios de Transmissão e Modens Analógicos e Redes Discadas

  • Par de fios como meio de transmissão;
  • Redes Privadas e Redes Discadas;
  • Modens analógicos: modulações, padronizações e facilidades adicionais;
  • Lista 1 - exercícios de revisão da parte 1.
Aula 5 - 26/02 - Parte1: Modens Digitais e Redes Privadas

Aula 5 - 26/02 - Parte1: Modens Digitais e Redes Privadas

  • Um pouco mais sobre modens Analógicos e redes privadas;
  • Modens Digitais
Aula 6 - 27/02 - Parte1: Laboratório de comunicação entre DTEs

Aula 6 - 27/02 - Parte1: Laboratório de comunicação entre DTEs

  • Laboratório - Circuito Básico de comunicação de dados, comunicação entre DTEs
Aula 7 - 20/03 - Parte1: Laboratório de Comunicação de Dados e Enlaces de Teste

Aula 7 - 20/03 - Parte1: Laboratório de Comunicação de Dados e Enlaces de Teste

  • Laboratório - Circuito Básico de comunicação de dados, comunicação entre modens digitais;
  • Identificação das interfaces digitais e dos cabos lógicos e adaptadores V35;
  • Uso do Teste Set e das facilidades de Enlaces de teste.
Aula 8 - 26/03 - Parte 1: Laboratório de Interligação entre LANs com uso de roteadores em modo físico - Conexões Físicas

Aula 8 - 26/03 - Parte 1: Laboratório de Interligação entre LANs com uso de roteadores em modo físico - Conexões Físicas

Resumo da aula:

  • Serviços da Camada de enlace
  • Laboratório - Interligação entre LANs com uso de roteadores em modo físico

Bibliografia relacionada:

  • Parte III e capítulos 10 e 11 do livro "Comunicação de Dados e Redes de Computadores, 4a ed.", de Behrouz Forouzan
  • Capítulo 3 do livro "Redes de Computadores" de Andrew Tanenbaum.

Fundamentos Teóricos


Enlaces lógicos

Equipamentos de rede se comunicam por meio de enlaces (links). Um enlace é composto por uma parte física, composta pelo meio de transmissão e o hardware necessário para transmitir e receber um sinal que transporta a informação, e uma parte lógica, responsável por empacotar os dados a serem transmitidos. O diagrama abaixo ilustra um enlace entre dois equipamentos, realçando as formas com que a informação é representada durante a transmissão e recepção. Nesse diagrama, a parte lógica está representada no bloco Enlace, e a parte física está no bloco Física; a informação transmitida, representada por Dados, pode ser, por exemplo, um datagrama IP.

Datalink-phy.png

O enlace lógico tem uma dependência total em relação à parte física. Isso quer dizer que o tipo de tecnologia de transmissão existente na parte física traz requisitos para o projeto da parte lógica.

Deste ponto em diante, a parte lógica será chamada simplesmente de Camada de Enlace, e a parte física de Camada Física.

Em nosso estudo vamos investigar enlaces ponto-a-ponto, os quais necessitam de protocolos específicos. Para ficar mais claro o que deve fazer um protocolo de enlace ponto-a-ponto, vamos listar os serviços típicos existentes na camada de enlace.

Serviços da camada de enlace

Data-link.png

Os serviços identificados na figura acima estão descritos a seguir. 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

Protocolos de enlace ponto-a-ponto

Dois protocolos de enlace ponto-a-ponto muito utilizados são:

  • PPP (Point-to-Point Protocol): proposto no início dos anos 90 pelo IETF (ver RFC 1661), e amplamente utilizado desde então. Este protocolo não faz controle de erros nem de fluxo, portanto se quadros sofrerem erros de transmissão serão sumariamente descartados no receptor. Originalmente muito usado em acesso discado, recentemente sua aplicação se concentra em enlaces por linhas dedicadas, enlaces sem-fio 3G, e uma versão modificada para acesso doméstico ADSL (PPPoE). Ver mais detalhes na seção 11.7 do livro Comunicação de Dados e Redes de Computadores, de Behrouz Forouzan.
  • HDLC (High-level Data Link Control): criado nos anos 70, foi largamente utilizado em enlaces ponto-a-ponto, porém atualmente foi substituído pelo PPP na maioria dos cenários em que era usado. Este protocolo faz controle de erros e de fluxo usando um mecanismo ARQ do tipo Go-Back-N (com janela de tamanho 7 ou 127). Ainda se aplica a enlaces ponto-a-ponto em linhas dedicadas, enlaces por satélite e aplicações específicas (ver por exemplo este artigo sobre seu uso missões espaciais em um artigo da Nasa). Ver mais detalhes na seção 11.6 do livro Comunicação de Dados e Redes de Computadores, de Behrouz Forouzan.


Ambos protocolos possuem o mesmo formato de quadro. Na verdade, o PPP copiou o formato de quadro do HDLC, apesar de não utilizar os campos Address e Control. O campo Flag, que tem o valor predefinido , serve para delimitar quadros, assim o receptor sabe quando inicia e termina cada quadro.

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


Esses protocolos foram criados para uso com comunicação serial síncrona (ver capítulo 4, seção 4.3 do livro Comunicação de Dados e Redes de Computadores, de Behrouz Forouzan). O PPP funciona também com comunicação serial assíncrona.


LABORATÓRIO 3: enlaces PPP e HDLC com roteadores

Para esta atividade será criada uma rede composta por três roteadores Cisco, que estarão interligados como mostrado abaixo:


Rede-modems.png


Criar os circuitos com modems operando a 2 Mbps.


O experimento deve ser realizado com os seguintes passos:

  1. Acesse a interface de gerência (console) do seu roteador. O roteador R2 está no rack esquerdo, o roteador R1 está no rack do centro, e R2 está no rack direito. Para acessar a console, faça o seguinte:
    1. Conecte um cabo serial cross na interface serial RS-232 do seu computador. Conecte esse cabo também na interface console do roteador, que fica no painel traseiro. Como os roteadores estão distantes das bancadas, será necessário usar as tomadas azuis, que conectam as bancadas aos racks.
    2. Execute o programa minicom, que abre um terminal de texto via porta serial. Ele deve ser configurado para se comunicar pela porta serial /dev/ttyS0, com 9600 bps, 8 bits de dados e 1 stop-bit (isso aparece descrito assim: 9600 8N1).
      sudo minicom -s
      
    3. Se o minicom estiver correto, você deverá ver a interface CLI do roteador (Command Line Interface). Caso contrário, confira se o cabo serial está bem encaixado, e se os parâmetros do minicom estão certos.
  2. Configure os roteadores da seguinte forma:
    • R1:
      > enable     (password "a")
      # configure terminal
      (conf)# interface fastethernet 0
      (conf-intf)# ip address 192.168.20.254 255.255.255.0
      (conf-intf)# no shutdown
      (conf-intf)# exit
      (conf)# interface serial 0
      (conf-intf)# encapsulation ppp
      (conf-intf)# ip address 10.1.1.2 255.255.255.252
      (conf-intf)# no shutdown
      (conf-intf)# exit
      (conf)# ip route 0.0.0.0 0.0.0.0 serial 0
      (conf)# exit
       # wr
      
    • R2:
      > enable
      # configure terminal
      (conf)# interface fastethernet 0
      (conf-intf)# ip address 192.168.10.254 255.255.255.0
      (conf-intf)# no shutdown
      (conf-intf)# exit
      (conf)# interface serial 0
      (conf-intf)# encapsulation ppp
      (conf-intf)# ip address 10.1.1.6 255.255.255.252
      (conf-intf)# no shutdown
      (conf-intf)# exit
      (conf)# ip route 0.0.0.0 0.0.0.0 serial 0
      (conf)# exit
       # wr
      
    • R3:
      > enable
      # configure terminal
      (conf)# interface ethernet 0
      (conf-intf)# ip address 192.168.1.231 255.255.255.0
      (conf-intf)# no shutdown
      (conf-intf)# exit
      (conf)# interface serial 0
      (conf-intf)# encapsulation ppp
      (conf-intf)# ip address 10.1.1.5 255.255.255.252
      (conf-intf)# no shutdown
      (conf-intf)# exit
      (conf)# interface serial 1
      (conf-intf)# encapsulation ppp
      (conf-intf)# ip address 10.1.1.1 255.255.255.252
      (conf-intf)# no shutdown
      (conf-intf)# exit
      (conf)# ip route 0.0.0.0 0.0.0.0 192.168.1.1
      (conf)# exit
       # wr
      
  1. Para conferir as configurações das interfaces, use o comando show interface (detalhado) ou show ip interface brief (resumidos configuração e status):
# show interface serial 0
  1. Assim que os enlaces forem estabelecidos, o que pode ser conferido com o comando show interface aplicado às interaces seriais, conclua a configuração da rede (rotas nos pcs e roteadores). Ela deve ser configurada de forma que um computador possa se comunicar com qualquer outro computador da outra rede, e também acessar a Internet. Para isso, use os comandos nos PCs como:
 * sudo ifconfg eth0 x.x.x.x netmask m.m.m.m up - para atribuir outro endereço na placa de rede
 * sudo route add default gw x.x.x.x - para atribuir um novo gateway para a placa de rede
 * sudo route add -net x.x.x.x netmask m.m.m.m eth0 - para associar uma nova rede a interface eth0
 * route -n  - para ver a tabela atual de roteamento
 E monte a tabela de roteamento com o comando (conf)# ip route x.x.x.x m.m.m.m y.y.y.y onde x é o endereço de rede com mask m a ser alcançado e y é o próximo salto (endereço da interface do próximo roteador). O y também pode ser o nome da interface.
Solução para os roteadores:
    • R1:
        > enable     (password "a")
        # configure terminal
        (conf)# ip route 192.168.20.0 255.255.255.0 fastethernet 0
        (conf)# ip route 192.168.10.0 255.255.255.0 10.1.1.1
        # wr
      
    • R2:
        > enable     (password "a")
        # configure terminal
        (conf)# ip route 192.168.10.0 255.255.255.0 fastethernet 0
        (conf)# ip route 192.168.20.0 255.255.255.0 10.1.1.5
        # wr
      
    • R3:
        > enable     (password "a")
        # configure terminal
        (conf)# ip route 192.168.10.0 255.255.255.0 10.1.1.6
        (conf)# ip route 192.168.20.0 255.255.255.0 10.1.1.2
        (conf)# ip route 192.168.1.0 255.255.255.0 ethernet 0
        # wr
      
      Para o PC do professor
        $ sudo route add -net 192.168.10.0 netmask 255.255.255.0 eth0 
        $ sudo route add -net 192.168.20.0 netmask 255.255.255.0 eth0 
      Para os PCs das subredes direita e esquerda
        $ sudo ifconfg eth0 192.168.x.y netmask 255.255.255.0 up  - x={10,20}; y={1,2,3,4}
        $ sudo route add default gw 192.168.x.254 - x={10,20} 
      
      # Verificar e anotar todas as configurações dos componentes de redes, modens, cabos, adaptadores, manobras dos cabos, etc...
      # Acessar as redes mutuamente qualquer computador de um subrede deve acessar qualquer outro da outra subrede;
      # Acessar a internet em todos os PCs;
      # Teste a vazão pelos enlaces ponto-a-ponto. Em algum computador da subrede esquerda execute: <syntaxhighlight lang=bash>
      netperf -f k -H 192.168.1.1
      
      Realize pelo menos três medidas para cada teste e use a média desses valores como resultado final;
  1. Faça isso também usando um computador da subrede da direita e depois entre computadores das subredes direta e esquerda.
  2. Excute o netperf entre computadores da mesma subrede, anote os valores e compare com o anterior que atravessa a rede até atingir a rede 192.168.1.1.
  3. É possível usar o protocolo HDLC ao invés do PPP, bastando nos roteadores substituir o comando encapsulation ppp por encapsulation hdlc. Após fazer essa alteração, e se certificar de os enlaces foram reativados, repita e anote as mesmas medições de vazão acima agora com HDLC;
  4. Observe as informações fornecidas pelos roteadores sobre os enlaces ponto-a-ponto. Para isso, execute show interface nas interfaces seriais, e leia o sumário resultante.
Aula 9 - 26/03 - Parte 1: Laboratório de Interligação entre LANs com uso de roteadores em modo físico - Configuração dos Roteadores }


Aula 10 - 26/03 - Parte 1: Laboratório de Interligação entre LANs com uso de roteadores em modo físico - Conectividade e Desempenho }



Aula 11 - 03/04 - Parte 1: Laboratório de Desempenho de LANs }

Aula 11 - 03/04 - Parte 1: Laboratório de Desempenho de LANs

Objetivos

  • Conhecer os equipamentos típicos de uma rede local Ethernet
  • Estimar o desempenho de uma LAN Ethernet comutada (com switch)

Introdução

Redes locais Ethernet (padrão IEEE 802.3 e extensões) são compostas de equipamentos que se comunicam, denominados estações (STA na norma IEEE 802.3), de equipamentos que os interligam (hubs e switches), e do meio de transmissão. A figura abaixo ilustra uma rede local hipotética com seus vários componentes.

Lab1-lan-demo.png


De forma geral, uma estação possui um ou mais adaptadores de rede (placas de rede, ou NIC – Network Interface Card), como na figura abaixo à esquerda. Os adaptadores de rede das estações são conectados a um switch por meio de cabos de rede TP (par trançado) com conectores RJ-45, mostrado na figura abaixo à direita.


Lab1-nic-switch.png


Originalmente LANs Ethernet foram construídas usando um cabo único para interligar as estações (cabo coaxial). Posteriormente surgiram as redes baseadas em hubs, equipamentos que interligavam as estações em nível da camada física (funcionavam como repetidores). Atualmente essas redes são construídas usando switches, equipamentos que interligam as estacões em nível da camada de enlace (na verdade, da subcamada MAC). Um switch apresenta como benefícios, se comparado com hubs:

  1. atuação em nível de MAC: o switch faz o acesso ao meio com CSMA/CD ao encaminhar um quadro, quebrando o domínio de colisão; além disto, um switch pode operar em modo full-duplex, quando então inexiste a possibilidade de colisão.
  2. preservação da capacidade do canal: para quadros unicast, o switch encaminha um quadro somente pela porta onde reside o destinatário.

Essas características importantes devem fazer com que uma LAN com switches tenha um desempenho superior a uma LAN com hubs. Por desempenho entenda-se um número menor de colisões sob tráfego intenso (ou mesmo ausência total de colisões), e maior capacidade de canal vista por cada equipamento conectado ao switch.

A rede de teste para o experimento será composta de computadores ligados a um switch Ethernet a 100 Mbps em modos half ou full-duplex. Serão sintetizados tráfegos intensos, de forma a poder comparar o desempenho das transmissões nos dois casos.

Lab1.png

Roteiro

  1. Observe a placa de rede de seu computador e sua conexão à rede por meio do cabo TP. Os computadores do laboratório estão conectados ao switch Microtec, que reside no rack central. O número da porta onde está conectado seu computador na bancada corresponde à porta do switch. Desconecte o cabo do seu computador e observe o status da porta correspondente no switch (o status é informado por um led, que aceso significa que há equipamento ativo conectado àquela porta). Questão: como será que o switch sabe que um equipamento foi conectado a uma porta ?
  2. Veja que informações o Linux provê a respeito de seu adaptador Ethernet. Usando os comandos administrativos do Linux, descubra:
    • o modelo do adaptador, e seu endereço MAC: ver comandos lspci e ifconfig.
    • seu modo de operação (velocidade, modo duplex, se o enlace está ativo): ver comando ethtool
    • suas estatísticas de operação (quadros transmitidos e recebidos, colisões e erros em geral): ver comandos netstat e ifconfig.
      Após obter essas informações, experimente desconectar o cabo da placa de rede e repetir a execução dos comandos.
  3. Anote os valores dos contadores de quadros e bytes recebidos e enviados pela interface ethernet em seu computador. Use o comando ifconfig para visualizar esses contadores. Anote também o horário em que se fez essa medição.
  4. Os computadores se comunicarão aos pares, usando-se o programa netperf para gerar o tráfego e medir a capacidade do canal:
    netperf -f k -H endereço_IP
    
    (Obs: endereço_IP é o endereço IP computador alvo).
  5. Execute o netperf de forma sincronizada: os computadores devem iniciá-lo simultaneamente. Repita esse procedimento 3 vezes, anotando a taxa de transmissão obtida em cada computador.
  6. Carga de tráfego na rede durante o experimento: anote novamente os valores dos contadores de quadros e bytes recebidos e enviados pela interface ethernet em seu computador. Usando os valores medidos previamente, calcule:
    1. Quantos bytes e quadros foram enviados e recebidos durante o experimento
    2. As taxas médias de transmissão e recepção pela sua interface ethernet
    3. A utilização do seu link ethernet. Obs: a utilização é a razão entre quantos bytes foram enviados, e quantos bytes poderiam ser enviados ininterruptamente durante o experimento. O mesmo vale para os bytes recebidos.
  7. Repita os passos 4 a 6, mas antes configure os computadores para operarem em modo 100baseT half-fuplex:
    sudo ethtool -s eth0 speed 100 duplex half autoneg off
    
    Houve diferença nas taxas de bits obtidas ? Caso sim, qual deve ser a explicação ?
  8. As interfaces de rede dos computadores podem operar a 1000 Mbps (gigabit), mas o switch do laboratório opera a 100 Mbps. Pode-se medir a capacidade de transmissão do computador através dessas interfaces se os computadores forem conectados aos pares. Assim, conecte o cabo da interface de rede de seu computador à interface do computador ao seu lado. Em seguida faça os seguintes experimentos:
    1. Em cada computador deve-se gerar um arquivo de nome “teste”, com 1GB de conteúdo aleatório:
      dd if=/dev/urandom of=teste bs=65536 count=16384
      
    2. O arquivo deve ser transferido de um computador a outro. No computador que irá receber o arquivo execute:
      nc -l 10000 > recebido
      
      .. e no que irá transmitir execute:
      date +%s.%N; nc IP_do_outro_computador 10000 < teste; date +%s.%N
      
    3. No computador transmissor aparecerão dois números, que correspondem aos instantes de início e fim de transmissão. Calcule quanto tempo demorou a transmissão, e em seguida a taxa de bits obtida. Compare essa taxa com a capacidade nominal da interface de rede (1000 Mbps).
    4. Repita duas vezes os passos ii e iii , e anote os valores de taxa de bits obtidos. Houve variação nas medições ?
    5. Repita os passos 2 a 4, porém executando o seguinte comando no receptor:
      nc -l 10000 > /dev/null
      
      Houve diferença nos valores obtidos para a taxa de bits ? Caso afirmativo, qual deve ser explicação ?
Aula 12 - 09/04 - Parte 1:


Aula 36 - 10/07 - Parte 4: Encerramento da Disciplina

Aula 36 - 10/07: Encerramento da Disciplina

  • Avaliações de Recuperação A1 e A2


Curso de Engenharia de Telecomunicações