Mudanças entre as edições de "RED2-EngTel (página)"

De MediaWiki do Campus São José
Ir para navegação Ir para pesquisar
(247 revisões intermediárias por 20 usuários não estão sendo mostradas)
Linha 1: Linha 1:
= [[RED2-EngTel|Carga horária, Ementas, Bibliografia, Professores]]=
+
'''Professores da Unidade Curricular'''
 +
 
 +
{{Professor|2015-1|[[Jorge Henrique B. Casagrande]] }}
 +
{{Professor|2014-2|[[Jorge Henrique B. Casagrande]] [[RED29005 2014-2|(Diario de aulas)]]}}
 +
{{Professor|2014-1|[[Jorge Henrique B. Casagrande]] [[RED29005 2014-1|(Diario de aulas)]]}}
 +
 
 +
 
 +
= [[RED2-EngTel|Carga horária, Ementas, Bibliografia]]=
 +
 
 +
 
 +
=[[RED2-EngTel (Plano de Ensino) | Plano de Ensino]]=
 +
 
 +
=Dados Importantes=
 +
''Professor'': [[Jorge Henrique B. Casagrande]]
 +
<br>''Email'': casagrande@ifsc.edu.br
 +
<br>''Atendimento paralelo'': 3as das 11:35 às 12:25h e 5as feira das 17:35h - 18:25 (Sala dos professores de TELE - ao lado da reprografia)
 +
<br> ''Endereço do grupo'': https://www.facebook.com/groups/667983626639907/
 +
<br> ''Link alternativo para Material de Apoio da disciplina'': http://www.sj.ifsc.edu.br/~casagrande/RED
 +
<br> Muitos conteúdos da disciplina estão sendo extraídos do material do professor '''Marcelo Sobral''' o qual já registro aqui meus agradecimentos pela autorização e apoio. Alguns deles foram inseridos ou adaptados para se ajustar ao planejamento ou perfil da turma.
 +
<br><br> Toda vez que voce encontrar a marcação <math>\blacklozenge</math> ao lado de alguma atividade, significa que essa atividade estará sendo computada na avaliação como AE ou AI. 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!'''
 +
 
 +
=Avaliações=
  
 
=Resultados das Avaliações=
 
=Resultados das Avaliações=
 +
  
 
{| border="1" cellpadding="5" cellspacing="0"  
 
{| border="1" cellpadding="5" cellspacing="0"  
 
!Aluno
 
!Aluno
![http://www.sj.ifsc.edu.br/~casagrande/RED/exercicios/lista1.pdf Lista 1 ]
+
!AE1
![http://www.sj.ifsc.edu.br/~casagrande/RED/exercicios/lista2.pdf Lista 2 ]
+
!AE2
![[Atividade Resumo1|Resumo1]]
+
![AI]
!Individual
+
![[A1_2015_1| A1]]
![http://www.sj.ifsc.edu.br/~casagrande/RED/trabalhos/PesquisaCampo.pdf PC]
+
![[A2_2015_1| A2]]
!A1
+
!A3
!A2
+
!A4
 +
![[A5_2015_1| A5]]
 
!REC A1
 
!REC A1
 
!REC A2
 
!REC A2
 +
!REC A3
 +
!REC A4
 +
!REC A5
 +
!MÉDIA
 +
!NF
 +
!CONCEITO
 
|-
 
|-
|Danilo  ||100 ||80 ||90 || || ||48 || || ||
+
|Adalvir || || || || || || || || || || || || || || || ||
 
|-
 
|-
|Elton ||100 ||90 || 85|| || || 42 || || ||
+
|Clarice  || || || || || || || || || || || || || || || ||
 
|-
 
|-
|Ernani ||100 || 90 ||- || || ||- || || ||
+
| Fernando  || || || || || || || || || || || || || || || ||
 
|-
 
|-
|Flavia ||100 ||90  ||85 || || ||42 || || ||
+
| Gabriel  || || || || || || || || || || || || || || || ||
 
|-
 
|-
|Jean ||100  || 80 ||90 || || ||36 || || ||
+
| Giulio  || || || || || || || || || || || || || || || ||
 
|-
 
|-
|Leonan ||100  ||95 || 90|| || ||82 || || ||
+
| Gustavo V.  || || || || || || || || || || || || || || || ||
 
|-
 
|-
|Letícia || 100 || 90  || 80|| || ||- || || ||
+
| João  || || || || || || || || || || || || || || || ||
 
|-
 
|-
|Marcus ||100 ||95 ||90 || || ||60  || || ||
+
| Lucas  || || || || || || || || || || || || || || || ||
 
|-
 
|-
|Tamara || 100 || 90  || 80|| || || 38 || || ||
+
| Ronaldo  || || || || || || || || || || || || || || || ||
 
|-
 
|-
|Thiago Henrique ||100 || 90  ||95 || || ||63  || || ||
+
| Stephany    || || || || || || || || || || || || || || || ||
 
|-
 
|-
|Thiago Werner ||100  || 90  ||95 || || || 56 || || ||
+
| Vinícius  || || || || || || || || || || || || || || || ||
 +
|-
 +
| Walter  || || || || || || || || || || || || || || || ||
 
|-
 
|-
 
|}
 
|}
  
;Atividades Extras
+
'''LEGENDA E DETALHES'''
:Listas de exercícios
 
:* [http://www.sj.ifsc.edu.br/~casagrande/RED/exercicios/lista1.pdf Lista 1  <math>\blacklozenge</math>] '''prazo:''' 20/03/14 às 12:00Hs. '''Execução''': em dupla. '''Como:''' Manuscrita, impressa ou via email<br>
 
:* [http://www.sj.ifsc.edu.br/~casagrande/RED/exercicios/lista2.pdf Lista 2  <math>\blacklozenge</math>] '''prazo:''' 30/04/14 às 12:00Hs. '''Execução''': em dupla. '''Como:''' Manuscrita, impressa ou via email<br>
 
:* [http://www.sj.ifsc.edu.br/~casagrande/RED/exercicios/lista3.pdf Lista 3 ]  Camada de enlace e Padrões IEEE 802
 
:* Atividade - [[Atividade Resumo1|Resumo 1]] <math>\blacklozenge</math> '''prazo:''' 14/05/14 às 12:00Hs. '''Execução''': em dupla. '''Como:''' Manuscrita, impressa ou via email<br>
 
  
;Pesquisa de Campo
+
;'''AE''' = Atividades Extras: 10% da Avaliação - abrange uma ou mais tarefas a serem divulgadas ao longo do semestre;
* [http://www.sj.ifsc.edu.br/~casagrande/RED/trabalhos/PesquisaCampo.pdf PC] - <math>\blacklozenge</math> '''prazos:''' 25/06 - formação das equipes e empresa alvo; 09/07/14 - Apresentação às 07:30Hs. '''Execução''': em grupo. '''Como:''' Apresentação oral 15 minutos<br>
+
;'''AI''' = Avaliação Individual: 10% da Avaliação final - abrange desempenho, assiduidade, cumprimento de tarefas em sala ou de listas de exercícios;
 
+
;'''An''' = Avaliação ''n'': 20% da Avaliação (n=4) - Programadas para cada parte do programa;
'''COMPOSIÇÃO DA NOTA FINAL''': '''NF''' = 0,8(média{MaiorNota{(A1,REC A1);MaiorNota(A21,REC A2)}}) + 0,1(AEs+avaliação individual) + 0,1(Pesquisa de campo)
+
;'''REC An''' = Recuperação da Avaliação An: A recuperação de todas An serão em data única e o aluno só tem a obrigação de recuperar An<60;
 +
;'''NF''' = Nota Final com critério de arredondamento de +/-5 pontos considerando a fórmula abaixo: '''NF''' = 0,16(soma{MaiorNota{An,REC An}}) + 0,1(médiaAE) + 0,1(AI)
  
 
Se '''NF''' < 6,0  = '''D''' --> '''Reprovado''' <br>
 
Se '''NF''' < 6,0  = '''D''' --> '''Reprovado''' <br>
Linha 56: Linha 83:
 
Se  '''NF''' >= 90 = '''A''' --> '''Aprovado'''<br>
 
Se  '''NF''' >= 90 = '''A''' --> '''Aprovado'''<br>
  
=[[RED2-EngTel (Plano de Ensino) | Plano de Ensino 2014-1]]=
+
=Recados Importantes=
  
=Dados Importantes=
+
<br> '''05/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 [https://www.facebook.com/groups/667983626639907/ grupo] do facebook.  
''Professor'': [[Jorge Henrique B. Casagrande]]
 
<br>''Email'': casagrande@ifsc.edu.br
 
<br>''Atendimento paralelo'': 4a feira 11:35h - 12:30h e 4a feira 16:35h - 17:30h (Sala dos professores de TELE - ao lado da reprografia)
 
<br> ''Endereço do grupo'': https://www.facebook.com/groups/1446441625588108/
 
<br> ''Link alternativo para Material de Apoio da disciplina'': http://www.sj.ifsc.edu.br/~casagrande/RED
 
<br><br> Toda vez que voce encontrar a marcação <math>\blacklozenge</math> 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=
+
<br> '''05/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.
  
==Conteúdos para a avaliação A2==  
+
=Material de Apoio=
  
'''10/06 A2''' Os capítulos e seções de nosso livro texto (Forouzan) na tabela a seguir serão a base do conteúdo para a avaliação A2. '''Adicione a eles''', os assuntos explicados em sala de aula e resumidos nos '''slides apresentados''' e todo o conteúdo da '''wiki''' com todos os seus '''roteiros'''. Os exercícios propostos na '''lista 3''' também estão associados para fixação desses conteúdos. Lembrem-se que estou sempre à disposição para resolver suas dúvidas, mesmo fora da sala de aula:
+
;Atividades extra sala de aula
  
{| border="1"
+
:* [http://tele.sj.ifsc.edu.br/~casagrande/RED/lista1_2014_2.pdf LISTA1] de exercícios para a avaliação A1
!Capítulo
+
<!--:* [http://tele.sj.ifsc.edu.br/~casagrande/RED/lista2_2014_2.pdf LISTA2] de exercícios para a avaliação A2
!Inclui Seções
+
:* [http://tele.sj.ifsc.edu.br/~casagrande/RED/lista3_2014_2.pdf LISTA3] de exercícios para a avaliação A3
!Comentários
+
:* [http://tele.sj.ifsc.edu.br/~casagrande/RED/lista4_2014_2.pdf LISTA4] de exercícios para a avaliação A4
|-
+
-->
|12 || Só 12.1 ||
+
;Slides utilizados durante algumas aulas
|-
 
|13 || Todas ||
 
|-
 
|14 || Todas || exceto 14.2 Bluetooth
 
|-
 
|15 || Todas ||
 
|-
 
|}
 
  
==Conteúdo do livro texto para a avaliação A1==
+
:* [http://www.sj.ifsc.edu.br/~casagrande/RED/slides/redes_circuitos_virtuais.pdf Redes de Circuitos Virtuais]
'''24/04 A1''' Os capítulos e seções de nosso livro texto (Forouzan) na tabela a seguir serão a base do conteúdo para a avaliação A1. Adicione a eles, os assuntos explicados em sala de aula e resumidos nos slides apresentados, em especial as partes que tratam do '''modelo básico de comunicação de dados''' e '''interfaces digitais''', essenciais sobre a camada física bem como todo o conteúdo da '''wiki''' com todos os seus roteiros. Os exercícios propostos nas listas 1 e 2 também estão associados a fixação desses conteúdos embora muitos deles envolvam cálculos, que não será objeto desta primeira avaliação. Lembrem-se que estou sempre à disposição para resolver suas dúvidas, mesmo fora da sala de aula:
 
  
{| border="1"
+
:* [http://www.sj.ifsc.edu.br/~casagrande/RED/slides/protocolos_pp.pdf Protocolos Ponto à Ponto]
!Capítulo
 
!Inclui Seções
 
!Comentários
 
|-
 
|3 || Todas || Somente conceitos - nada de cálculos
 
|-
 
|4 || 4.1 até "Métodos Multinível" (p.111) e 4.3 || Não será cobrado a conversão
 
|-
 
|5 || Só seção 5.1 || Interpretação da largura de banda, ver padrões ITU nos slides
 
|-
 
|6 || Só seção 6.1 || Ver slides da aula de hoje 24/04
 
|-
 
|7 || Só seção 7.1 || Básico sobre meios guiados e seu desempenho
 
|-
 
|8 || Nenhuma|| Oba!!!!
 
|-
 
|9 || Somente 9.2 e 9.3|| Ver padrões ITU nos slides
 
|-
 
|10 || 10.1 e 10.4 a partir de "Polinômios" (p.291)|| CRC com polinômio é mais simples. Vou fazer exercício em sala
 
|-
 
|11 || 11.1 à 11.3 e 11.6 e 11.7 ||  Foco maior no conceito e estrutura dos frames, bit e byte stuffing.
 
|-
 
|}
 
  
<br> '''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 [https://www.facebook.com/groups/1446441625588108/ 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.
+
:* [http://www.sj.ifsc.edu.br/~casagrande/RED/slides/InterfacesDigitais.pdf Interfaces Digitais]  
  
<br> '''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.
+
:* [http://www.sj.ifsc.edu.br/~casagrande/RED/slides/modens.pdf Modens e enlaces de teste]
 +
<!--
 +
:* [http://tele.sj.ifsc.edu.br/~casagrande/RED/slides/lan.pdf REDES LOCAIS]
 +
:* [http://tele.sj.ifsc.edu.br/~casagrande/RED/slides/vlan.pdf IEEE802.3q VLAN]
 +
:* [http://tele.sj.ifsc.edu.br/~casagrande/RED/slides/stp.pdf IEEE802.3d]
 +
:* [http://tele.sj.ifsc.edu.br/~casagrande/RED/slides/ieee.pdf Arquitetura IEEE802.3]
 +
-->
  
=Material de Apoio=
+
;Manuais e outros
 +
* [http://www.sj.ifsc.edu.br/~msobral/RCO2/manuais/Guia_DT2048_SHDSL_T_E_S_VG_210.5088.00-1.pdf Guia Rápido de Configuração Modem DT2048SHDSL;]
 +
* [http://tele.sj.ifsc.edu.br/~casagrande/RED/apoio/Manual_NR-2G_3200_e_4200.pdf manual Router NR2G] da Digitel;
 +
* [http://www.sj.ifsc.edu.br/~casagrande/RED/apoio/Globalink3420guia.pdf guia rápido de configuração Globalink UP3420;]
 +
* [http://www.sj.ifsc.edu.br/~casagrande/RED/apoio/Globalink3420.pdf Manual de configuração Gloalink3420;]
 +
* [http://www.sj.ifsc.edu.br/~casagrande/RED/apoio/DT34.pdf Manual de configuração DT34.]
 +
<!--
 +
* [http://www.sj.ifsc.edu.br/~casagrande/RED/apoio/DAS-3324.pdf Manual DSLAM DLINK DAS3324.]
 +
* [http://www.sj.ifsc.edu.br/~casagrande/RED/apoio/DAS-3324guia.pdf Guia rápido DSLAM DLINK DAS3324.]
 +
-->
  
;Slides utilizados durante algumas aulas
+
* [http://www.cisco.com/warp/cpropub/45/tutorial.htm Tutorial sobre a interface CLI de roteadores Cisco]
:* [http://www.sj.ifsc.edu.br/~casagrande/RED/slides/fundamentos1.pdf Aulas 1 e 2]
+
* [http://www.cisco.com/en/US/tech/tk713/tk507/technologies_tech_note09186a008019cfa7.shtml#ppp01 Resolução de problemas com PPP em roteadores Cisco]
:* [http://www.sj.ifsc.edu.br/~casagrande/RED/slides/fundamentos2.pdf Aulas 3,4 e 17]
+
* [http://www.cisco.com/en/US/products/hw/routers/ps221/products_password_recovery09186a0080094773.shtml Recuperação de senha em roteadores Cisco 1700 e 1800]
:* [http://tele.sj.ifsc.edu.br/~msobral/IER/slides/aula1-2012-1.pdf Aula 8: Slides prof. Sobral - Introdução a camada de enlace], [http://www.sj.ifsc.edu.br/~msobral/RCO2/slides/aula3-ppp.pdf PPP], [http://www.sj.ifsc.edu.br/~msobral/RCO2/slides/aula3-hdlc.pdf HDLC]
+
<!--
:* [http://www.sj.ifsc.edu.br/~msobral/RCO2/slides/aula8.pdf Aulas 18 e 19] LANs e acesso ao meio.
+
* [http://tele.sj.ifsc.edu.br/~casagrande/RED/apoio/dlink Alguns procedimentos para o switch D-Link DES-3526 em português]
:* [http://tele.sj.ifsc.edu.br/~msobral/RCO2/slides/aula9-ieee.pdf Aula 19] Arquitetura IEEE 802 e Redes locais IEEE 802.3 (Ethernet).
+
-->
:* [http://www.sj.ifsc.edu.br/~msobral/RCO2/slides/aula10.pdf Aula 21 ] Introdução à VLANs.
 
  
;Manuais e outros
 
* [http://www.sj.ifsc.edu.br/~msobral/RCO2/manuais/Guia_DT2048_SHDSL_T_E_S_VG_210.5088.00-1.pdf Guia Rápido de Configuração Modem DT2048SHDSL]
 
  
 
== Bibliografia ==
 
== Bibliografia ==
  
* ''Comunicação de Dados e Redes de Computadores, 4a edição'', de Behrouz Forouzan.
 
 
* ''Redes de Computadores e a Internet, 5a edição'', de James Kurose.
 
* ''Redes de Computadores e a Internet, 5a edição'', de James Kurose.
 
* ''Redes de Computadores, 4a edição'', de Andrew Tanenbaum.
 
* ''Redes de Computadores, 4a edição'', de Andrew Tanenbaum.
* [http://www.sj.ifsc.edu.br/~msobral/IER/ Antiga página da disciplina (2009-1 e 2009-2)]
+
* ''Comunicação de Dados e Redes de Computadores, 4a edição'', de Behrouz Forouzan.
 +
 
 +
<!--* [http://www.sj.ifsc.edu.br/~msobral/IER/ Antiga página da disciplina (2009-1 e 2009-2)]-->
 
* [http://www.sj.ifsc.edu.br/~msobral/RCO2/docs.html Links para outros materiais, normas, artigos, e apostilas do prof. Jorge Casagrande]
 
* [http://www.sj.ifsc.edu.br/~msobral/RCO2/docs.html Links para outros materiais, normas, artigos, e apostilas do prof. Jorge Casagrande]
 
* [http://books.google.com/books?id=C9ZN-jYKHpMC&printsec=frontcover&dq=forouzan&hl=pt-BR&ei=fvt2TP3eCMH58Aa77cS1Bw&sa=X&oi=book_result&ct=result&resnum=3&ved=0CDMQ6AEwAg#v=onepage&q&f=false Comunicação de dados e Redes de Computadores, de Berhouz Forouzan (alguns capítulos no Google Books)]
 
* [http://books.google.com/books?id=C9ZN-jYKHpMC&printsec=frontcover&dq=forouzan&hl=pt-BR&ei=fvt2TP3eCMH58Aa77cS1Bw&sa=X&oi=book_result&ct=result&resnum=3&ved=0CDMQ6AEwAg#v=onepage&q&f=false Comunicação de dados e Redes de Computadores, de Berhouz Forouzan (alguns capítulos no Google Books)]
Linha 143: Linha 145:
 
Para pesquisar o acervo das bibliotecas do IFSC:
 
Para pesquisar o acervo das bibliotecas do IFSC:
 
* [http://biblioteca.ifsc.edu.br/sophia/ Acesso ao acervo da Biblioteca do IFSC]
 
* [http://biblioteca.ifsc.edu.br/sophia/ Acesso ao acervo da Biblioteca do IFSC]
 
== Curiosidades ==
 
 
* [http://www.cisco.com/warp/cpropub/45/tutorial.htm Tutorial sobre a interface CLI de roteadores Cisco]
 
* [http://www.cisco.com/en/US/tech/tk713/tk507/technologies_tech_note09186a008019cfa7.shtml#ppp01 Resolução de problemas com PPP em roteadores Cisco]
 
* [http://www.cisco.com/en/US/products/hw/routers/ps221/products_password_recovery09186a0080094773.shtml Recuperação de senha em roteadores Cisco 1700 e 1800]
 
* [http://tele.sj.ifsc.edu.br/~msobral/RCO2/docs/dlink Alguns procedimentos para o switch D-Link DES-3526 em português]
 
  
 
== Softwares ==
 
== Softwares ==
Linha 156: Linha 151:
 
* [http://tele.sj.ifsc.edu.br/~msobral/IER/ipkit/ IPKit]: um simulador de encaminhamento IP (roda direto dentro do navegador)
 
* [http://tele.sj.ifsc.edu.br/~msobral/IER/ipkit/ IPKit]: um simulador de encaminhamento IP (roda direto dentro do navegador)
  
=Diário de aulas RED29005 - 2014-1 - Prof. Jorge H. B. Casagrande=
+
=Diário de aulas RED29005 - 2015-1 - Prof. Jorge H. B. Casagrande=
  
{{Collapse top |Aula 1 - 12/02 - Parte1: Introdução a Comunicação de Dados }}
+
{{Collapse top |05/02 - Redes de Longa Distância - WAN }}
 +
 
 +
==05/02 - Redes de Longa Distância - WAN==
  
==Aula 1 - 12/02 - Parte1: Introdução a Comunicação de Dados ==
 
Usando o quadro e slides, exploramos:
 
 
* Apresentação da disciplina;
 
* Apresentação da disciplina;
* Conceitos importantes em comunicação de dados;
+
* Visão geral de uma WAN;  
 
* Componentes de uma infra-estrutura de telecomunicações;
 
* Componentes de uma infra-estrutura de telecomunicações;
* Modelo Básico de comunicação de dados.
 
  
 
{{Collapse bottom}}
 
{{Collapse bottom}}
{{Collapse top |Aula 2 - 13/02 - Parte1: Componentes de Redes e Comunicação Serial }}
 
  
==Aula 2 - 13/02 - Parte1: Componentes de Redes e Comunicação Serial ==
+
{{Collapse top |10/02 - Redes Privativas }}
* Componentes do modelo básico de comunicação de dados;
 
* Comunicação Assíncrona e Síncrona e protocolos da camada de enlace;
 
  
{{Collapse bottom}}
+
==10/02 - Redes Privadas ==
{{Collapse top |Aula 3 - 19/02 - Parte1: Interfaces Digitais }}
 
  
==Aula 3 - 19/02 - Parte1: Interfaces Digitais ==
+
* O modelo básico de comunicação de dados;
* Interfaces digitais RS232, V35, V36, RS485 e G703;
+
* Evolução das Redes Locais baseadas em hospedeiros para as Redes Privativas de longa distância;
* Protocolos da camada física usando os sinais de controle da ID e padronizações;
+
* Da Unidade de Derivação Digital (UDD) para os ServerSwitches ou switches KVM;
 +
* A Linha Privativa de Comunicação de Dados (LPCD);
 +
* O Serviço de Linha Dedicada Digital (SLDD) como base na formação de Redes Privativas;
  
 
{{Collapse bottom}}
 
{{Collapse bottom}}
{{Collapse top |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==
+
{{Collapse top | 12/02 - Redes de Circuitos Virtuais}}
* Par de fios como meio de transmissão;
 
* Redes Privadas e Redes Discadas;
 
* Modens analógicos: modulações, padronizações e facilidades adicionais;
 
* '''[http://www.sj.ifsc.edu.br/~casagrande/RED/slides/fundamentos1.pdf Lista 1 <math>\blacklozenge</math>]'''- exercícios de revisão da parte 1.
 
  
{{Collapse bottom}}
+
==12/02 - Redes de Circuitos Virtuais ==
{{Collapse top |Aula 5 - 26/02 - Parte1: Modens Digitais e Redes Privadas }}
 
  
==Aula 5 - 26/02 - Parte1: Modens Digitais e Redes Privadas ==
+
* Experimento: Comunicação entre Computadores via porta serial;
* Um pouco mais sobre modens Analógicos e redes privadas;
+
* A banda passante e os meios metálicos de transmissão;
* Modens Digitais
+
* O exemplo da evolução do backbone da RNP;
 +
* A Multiplexação como solução no compartilhamento e otimização do uso de enlaces de transmissão.
  
{{Collapse bottom}}
 
{{Collapse top |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
 
  
 
{{Collapse bottom}}
 
{{Collapse bottom}}
{{Collapse top |Aula 7 - 20/03 - Parte1: Laboratório de Comunicação de Dados e Enlaces de Teste }}
+
   
 
+
{{Collapse top | 24/02 - Redes de Circuitos Virtuais - Frame Relay e MPLS}}
==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.
 
 
 
{{Collapse bottom}}
 
{{Collapse top |Aula 8 - 26/03 - Parte1: Laboratório de Interligação entre LANs com uso de roteadores - Conexões Físicas }}
 
 
 
==Aula 8 - 26/03 - Parte1: Laboratório de Interligação entre LANs com uso de roteadores - Conexões Físicas  ==
 
 
 
Para esta atividade será criada uma rede composta por três roteadores Cisco, que estarão interligados como mostrado abaixo:
 
 
 
[[imagem:Rede-modems.png|600px]]
 
 
 
Criar os circuitos com modems operando a 2 Mbps. Os Modens da DIGITEL modelo DT2048SHDSL devem possuir a seguinte configuração: (chaves em ON)
 
* Modens do rack central: DIP1-todas; DIP2-7,8; DIP3-todas OFF; DIP4-5
 
* Modens do rack direito e esquerdo: DIP1-todas; DIP2-7,8; DIP3-todas OFF; DIP4-5
 
 
 
{{Collapse bottom}}
 
{{Collapse top |Aula 9 - 27/03 - Parte2: Laboratório de Interligação entre LANs com uso de roteadores - Configuração dos Roteadores e Introdução A camada de Enlace }}
 
 
 
==Aula 9 - 27/03 - Parte2: Laboratório de Interligação entre LANs com uso de roteadores em modo físico - Configuração dos Roteadores e Introdução A camada de Enlace ==
 
 
 
'''Resumo da aula:'''
 
* Serviços da Camada de enlace
 
* Laboratório - Continuação da 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 ===
 
 
 
* [http://tele.sj.ifsc.edu.br/~msobral/IER/slides/aula1-2012-1.pdf Slides prof. Sobral - Introdução a camada de enlace]
 
 
 
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.
 
 
 
[[imagem:Datalink-phy.png|600px]]
 
 
 
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 =====
 
 
 
[[Image: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:
 
* '''[http://www.sj.ifsc.edu.br/~msobral/RCO2/slides/aula3-ppp.pdf PPP] (''Point-to-Point Protocol''):''' proposto no início dos anos 90 pelo IETF (ver [http://www.ietf.org/rfc/rfc1661.txt 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.
 
* '''[http://www.sj.ifsc.edu.br/~msobral/RCO2/slides/aula3-hdlc.pdf 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 [[Desempenho_ARQ|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 [http://www.spaceops.org/2002/papers/SpaceOps02-P-T5-21.pdf 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 <math>7E_H</math>, serve para delimitar quadros, assim o receptor sabe quando inicia e termina cada quadro.
 
 
 
[[imagem:Ppp-frame.png|400px]]
 
<br>''Quadro PPP ou HDLC (tamanho de campos dados em bytes)''<br>
 
 
 
 
 
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 [http://pt.wikipedia.org/wiki/Comunica%C3%A7%C3%A3o_serial_ass%C3%ADncrona comunicação serial assíncrona].
 
 
 
Agora, usando os conceitos básicos sobre enlaces PPP e HDLC, continue o laboratório da aula anterior, realizando os seguintes passos:
 
 
 
# 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:
 
## 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.
 
## 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). <syntaxhighlight lang=bash>
 
sudo minicom -s
 
</syntaxhighlight>
 
## 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.
 
# Configure os roteadores da seguinte forma:
 
#* '''R1:''' <syntaxhighlight lang=text>
 
> 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
 
</syntaxhighlight>
 
 
 
#* '''R2:''' <syntaxhighlight lang=text>
 
> 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
 
</syntaxhighlight>
 
 
 
#* '''R3:''' <syntaxhighlight lang=text>
 
> 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
 
</syntaxhighlight>
 
 
 
# Para conferir as configurações das interfaces, use o comando ''show interface'' (detalhado) ou ''show ip interface brief'' (resumidos configuração e status):
 
<syntaxhighlight lang=text>
 
# show interface serial 0
 
</syntaxhighlight>
 
 
 
 
 
{{Collapse bottom}}
 
{{Collapse top |Aula 10 - 27/03 - Parte2: Laboratório de Interligação entre LANs com uso de roteadores - Conectividade e Desempenho }}
 
 
 
==Aula 10 - 27/03 - Parte2: Laboratório de Interligação entre LANs com uso de roteadores em modo físico - Conectividade e Desempenho  ==
 
 
 
Para finalizar o laboratório das duas aulas anteriores, vamos analisar a conectividade  de todas as subredes, incluindo o acesso à internet. Após isso vamos fazer uma avaliação sobre o desempenho dessa conectividade comparando os links com PPP e HDLC entre os roteadores.
 
===Roteiro===
 
 
 
# 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:''' <syntaxhighlight lang=text>
 
  > 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 </syntaxhighlight>
 
#:'''R2:''' <syntaxhighlight lang=text>
 
  > 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 </syntaxhighlight>
 
#:'''R3:''' <syntaxhighlight lang=text>
 
  > 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 </syntaxhighlight>
 
# Para o PC do professor <syntaxhighlight lang=text>
 
  $ 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 </syntaxhighlight>
 
# Para os PCs das subredes direita e esquerda <syntaxhighlight lang=text>
 
  $ sudo ifconfg eth0 192.168.x.y netmask 255.255.255.0 up  onde x={10,20}; y={1,2,3,4}
 
  $ sudo route add default gw 192.168.x.254 onde x={10,20} </syntaxhighlight>
 
# 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</syntaxhighlight>
 
#:Realize pelo menos três medidas para cada teste e use a média desses valores como resultado final;
 
# Faça isso também usando um computador da subrede da direita e depois entre computadores das subredes direta e esquerda.
 
# 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.
 
# É 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;
 
# 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.
 
 
 
{{Collapse bottom}}
 
{{Collapse top |Aula 11 - 02/04 - Parte2: Laboratório de Desempenho de LANs }}
 
 
 
==Aula 11 - 02/04 - Parte2: 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.
 
 
 
[[imagem:Lab1-lan-demo.png|400px]]
 
 
 
 
 
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.
 
 
 
 
 
[[imagem:Lab1-nic-switch.png|400px]]
 
 
 
 
 
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:
 
 
 
# '''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.
 
# '''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.
 
 
 
[[imagem:Lab1.png]]
 
 
 
=== Roteiro ===
 
 
 
# 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 ?
 
# 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 [http://manpages.ubuntu.com/manpages/hardy/man8/lspci.8.html lspci] e  [http://manpages.ubuntu.com/manpages/hardy/man8/ifconfig.8.html ifconfig].
 
#* seu modo de operação (velocidade, modo duplex, se o enlace está ativo): ver comando [http://manpages.ubuntu.com/manpages/hardy/man8/ethtool.8.html ethtool]
 
#* suas estatísticas de operação (quadros transmitidos e recebidos, colisões e erros em geral): ver comandos [http://manpages.ubuntu.com/manpages/hardy/man8/netstat.8.html netstat] e [http://manpages.ubuntu.com/manpages/hardy/man8/ifconfig.8.html ifconfig].<br>Após obter essas informações, experimente desconectar o cabo da placa de rede e repetir a execução dos comandos.
 
# Anote os valores dos contadores de quadros e bytes recebidos e enviados pela interface ethernet em seu computador. Use o comando [http://manpages.ubuntu.com/manpages/hardy/man8/ifconfig.8.html ifconfig] para visualizar esses contadores. Anote também o horário em que se fez essa medição.
 
# Os computadores se comunicarão aos pares, usando-se o programa [http://manpages.ubuntu.com/manpages/lucid/man1/netperf.1.html netperf] para gerar o tráfego e medir a capacidade do canal:<syntaxhighlight lang=bash>netperf -f k -H endereço_IP</syntaxhighlight>(Obs: endereço_IP é o endereço IP computador alvo).
 
# Execute o [http://manpages.ubuntu.com/manpages/lucid/man1/netperf.1.html 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.
 
# '''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:
 
## Quantos bytes e quadros foram enviados e recebidos durante o experimento
 
## As taxas médias de transmissão e recepção pela sua interface ethernet
 
## 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.
 
# Repita os passos 4 a 6, mas antes configure os computadores para operarem em modo 100baseT half-fuplex: <syntaxhighlight lang=bash>
 
sudo ethtool -s eth0 speed 100 duplex half autoneg off
 
</syntaxhighlight>Houve diferença nas taxas de bits obtidas ? Caso sim, qual deve ser a explicação ?
 
# 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:
 
## Em cada computador deve-se gerar um arquivo de nome “teste”, com 1GB de conteúdo aleatório: <syntaxhighlight lang=bash>
 
dd if=/dev/urandom of=teste bs=65536 count=16384
 
</syntaxhighlight>
 
## O arquivo deve ser transferido de um computador a outro. No computador que irá receber o arquivo execute:<syntaxhighlight lang=bash>
 
nc -l 10000 > recebido
 
</syntaxhighlight>.. e no que irá transmitir execute:<syntaxhighlight lang=bash>
 
date +%s.%N; nc IP_do_outro_computador 10000 < teste; date +%s.%N
 
</syntaxhighlight>
 
## 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).
 
## Repita duas vezes os passos ii e iii , e anote os valores de taxa de bits obtidos. Houve variação nas medições ?
 
## Repita os passos 2 a 4, porém executando o seguinte comando no receptor: <syntaxhighlight lang=bash>
 
nc -l 10000 > /dev/null
 
</syntaxhighlight>Houve diferença nos valores obtidos para a taxa de bits ? Caso afirmativo, qual deve ser explicação ?
 
 
 
{{Collapse bottom}}
 
{{Collapse top |Aula 12 - 09/04 - Parte2: A Camada de Enlace na Prática}}
 
 
 
==Aula 12 - 09/04 - Parte2: A camada de enlace na prática ==
 
* Discussão sobre os resultados dos laboratórios;
 
* Revisão sobre os serviços da camada de enlace;
 
* Os protocolos HDLC e PPP como base das redes comerciais;
 
 
 
{{Collapse bottom}}
 
{{Collapse top |Aula 13 - 10/04 - Parte2: A Camada de Enlace na Prática}}
 
  
==Aula 13 - 10/04 - Parte2: A Camada de Enlace na Prática ==
+
==24/02 - Redes de Circuitos Virtuais - Frame Relay e MPLS ==
* Finalização do Laboratório da aula 11 (!!!) :P
 
  
{{Collapse bottom}}
+
* Redes de Circuitos Virtuais - Frame Relay e ATM;
{{Collapse top |Aula 14 - 16/04 - Parte 2: Revisão de conteúdos das Camadas 1 e 2}}
+
* Redes virtuais com MPLS;
 +
* Experimento com netkit: Rede MPLS
  
==Aula 14 - 16/04 - Parte2: Revisão de conteúdos das Camadas 1 e 2 ==
 
* Resolução de exercícios da lista 1 em sala;
 
  
{{Collapse bottom}}
+
* '''''Referências sobre MPLS:'''''
{{Collapse top |Aula 15 - 17/04 - Parte 2: O uso do NETKIT}}
+
** Capítulo 5 (seção 5.8) do livro ''Redes de Computadores e a Internet, 5a ed.'', de James Kurose.
 +
** Capítulo 5 (seção 5.4.5) do livro ''Redes de Computadores, 4a ed.'', de Andrew Tanenbaum (ou seção 5.6.5 da 5ª ed.).
 +
** [http://en.wikipedia.org/wiki/Multiprotocol_Label_Switching MPLS na Wikipedia]
 +
** [http://www.ietf.org/rfc/rfc3031.txt RFC 3031: MPLS  Architecture]
 +
** [http://www.ietf.org/rfc/rfc3032.txt MPLS Label Stack Encoding]
 +
* [http://www.sj.ifsc.edu.br/~msobral/RCO2/docs/mpls-linux Documentação sobre os experimentos com MPLS (tirados do projeto MPLS-Linux)]
  
==Aula 15 - 17/04 - Parte2: O uso do NETKIT ==
+
[http://en.wikipedia.org/wiki/Multiprotocol_Label_Switching MPLS] é um  mecanismo para redes de telecomunicações de alto desempenho que encaminha e transporta dados de um nó da rede a outro. Isso se faz por meio de links virtuais entre nós distantes um do outro, semelhante ao conceito de ''circuitos virtuais''. Diversos protocolos podem ser transportados por MPLS, tais como IP e Ethernet (note que o primeiro é um protocolo de rede, mas o segundo é um ''"protocolo"'' de enlace). Assim, MPLS se apresenta como uma tecnologia de transporte de dados em redes de longa distância, como ilustrado na figura abaixo.
  
=== O uso do NETKIT ===
+
[[imagem:Mpls-network.jpg]]
  
A partir de hoje iremos usar o [[Netkit]] para simular vários experimentos sem a necessidade de recorrer a complicadas instalações físicas que envolvem muitos componentes de rede e consequentemente muitos pontos de prováveis problemas de funcionamento. Para usar essa ferramente vá até o link [[Netkit]] e faça uma leitura até o item 4.1.5 para entender como se utiliza esta poderosa ferramenta. Após isso faça os experimentos seguintes.  
+
Simplificadamente, um cabeçalho (''shim header'') é adicionado a cada PDU a ser transportada pela rede MPLS. O rótulo contém um número identificador chamado de rótulo (''label'', e similar ao ''VCI'' visto em circuitos virtuais), junto com alguns bits de controle. Os roteadores dentro da rede MPLS encaminham essas PDUs com base somente no conteúdo desse cabeçalho, comutando-os de acordo com os valores de rótulo (''label  switching''). Note que MPLS não faz roteamento, e sim comutação de circuitos virtuais: os circuitos devem ser previamente estabelecidos para que o encaminhamento de PDUs entre origem e destino possa ser realizada. Desta forma, MPLS parece ser um  protocolo que fica entre as camadas de rede e de enlace, como mostrado na  figura a seguir.
  
====[http://tele.sj.ifsc.edu.br/~casagrande/RED/labs/netkit/lan.tar.gz LAN simples]====
+
[[imagem:Mpls_protocolstack.jpg]]  ---->  [[imagem:MPLS_D2.gif‎]]
  
Uma LAN com quatro computadores (pc1, pc2, pc3, pc4). Os computadores virtuais têm IPs 192.168.0.X, sendo X o número computador (ex: pc1 tem IP 192.168.0.1). Use ping para fazer testes de comunicação. Veja o arquivo ''Lab.conf'' (configuração da rede). A rede criada nesse experimento está mostrada abaixo:
 
  
[[imagem:Exemplo-Lan1-netkit.png]]
+
O cabeçalho MPLS possui apenas 32 bits, como  mostrado  abaixo. O valor de rótulo ocupa 20 bits, o que possibilita pouco mais de 1 milhão de diferentes rótulos (<math>2^{20}</math>). Há um  campo ''Time To Live'' (ou simplesmente ''TTL'') com 8 bits, com mesma finalidade que o campo homônimo existente em PDUS IPv4: evitar que um erro de configuração em um roteador faça com que PDUs fiquem circulando  eternamente em um ''loop'' na rede. O valor desse campo ''TTL'' é decrementado por cada roteador que encaminhe a PDU e, se o valor chegar a 0, a PDU é descartada. O campo ''Exp'' com 3 bits foi pensado para codificar a classe de serviço da PDU, a qual pode ser usada por mecanismos de qualidade de serviço (''QoS'') existentes na rede. Por exemplo, o valor de ''Exp'' pode ser usado como prioridade da PDU em um  determinado roteador dentro da rede MPLS. Por fim, o bit ''S'' (''bottom of stack'') informa se esse é o último cabeçalho MPLS na PDU, uma vez que podem-se empilhar dois ou mais desses  cabeçalhos.
  
Ao executar esse experimento quatro abas dos computadores virtuais surgirão (um para cada pc virtual). Realize um ping entre os pcs para constatar a operação da LAN.
 
  
====[http://tele.sj.ifsc.edu.br/~casagrande/RED/labs/netkit/bridge.tar.gz  LAN com switch]====
+
[[imagem:Mpls-label.png]]
  
Uma LAN com quatro computadores (pc1, pc2, pc3, pc4) interligados por um switch. O switch é implementado por um computador com Linux com 4 portas ethernet. Analise o arquivo ''Lab.conf''. A rede do experimento está mostrada abaixo:
 
  
[[imagem:Exemplo-Bridge-netkit.png]]
+
A terminologia MPLS possui nomes próprios para diversos componentes da arquitetura. Como ocorre em outras tecnologias, existem conceitos conhecidos apresentados porém com nomes diferentes. A tabela  abaixo descreve alguns termos importantes existentes no MPLS:
  
====[http://tele.sj.ifsc.edu.br/~casagrande/RED/labs/netkit/lan2.tar.gz LAN com 2 switches]====
 
 
Uma LAN com 6 computadores (pc1 a pc6) interligados por dois switches (switch1 e switch2). Ambos switches são implementados por computadores com Linux com 4 portas ethernet. Observe os valores de tempo de teste dos pings entre pcs de um mesmo switch e entre os dois switches. Compare com a LAN simples (com hub). A rede do experimento está mostrada abaixo:
 
 
[[imagem:Exemplo-lan2.png]]
 
 
====[http://tele.sj.ifsc.edu.br/~casagrande/RED/labs/netkit/lan-ext.tar.gz  Uplink para a rede real]====
 
 
O Netkit possibilita que se criem links para a rede real, e com isto as máquinas virtuais podem acessar a rede externa e mesmo a Internet. O link para a rede real funciona como um enlace ponto-a-ponto ethernet entre uma máquina virtual e a máquina real (o sistema hospedeiro), como pode ser visto neste exemplo:
 
 
[[imagem:Netkit-uplink.png]]
 
 
A criação do link para rede externa deve ser feita com o link especial ''uplink''. Ele deve ter um endereço IP que será usado somente para criar o link entre a máquina virtual e o sistema hospedeiro. O IP no sistema hospedeiro é sempre o último endereço possível dentro da subrede especificada (no exemplo, seria o IP 10.0.0.2).
 
 
<syntaxhighlight lang=text>
 
pc2[eth1]=uplink:ip=10.0.0.1/30
 
</syntaxhighlight>
 
 
Se outras máquinas virtuais precisarem acessar a rede externa, devem ter rotas configuradas para usarem o gateway onde foi feito o ''uplink''. Além disso, será necessário ativar o NAT nesse gateway. O NAT pode ser ativado em máquinas virtuais do tipo ''gateway''. Em sua configuração deve-se informar qual a interface de saída onde será feito o NAT:
 
 
<syntaxhighlight lang=text>
 
pc2[type]=gateway
 
 
pc2[nat]=eth1
 
</syntaxhighlight>
 
 
Assim, todos datagramas que sairem pela interface ''eth1'' do gateway ''pc2'' terão seus endereços IP de origem substituídos pelo endereço IP dessa interface.
 
 
Por fim, a criaçao do ''uplink'' implica executar alguns comandos como ''root'' no sistema hospedeiro. Assim, ao ativar a rede o Netkit irá usar o ''sudo'' para executar esses comandos. Por isso é possível que a sua senha seja solicitada durante a inicialização da rede virtual.
 
 
===== Uplink em modo ''bridge'' =====
 
 
Às vezes uma interface de uma máquina virtual precisa ser exposta na rede real, como se ela pertencesse ao sistema hospedeiro. Neste caso, deve-se criar uma ''bridge'' entre a interface da máquina virtual e uma interface real do sistema hospedeiro (de forma semelhante ao que faz o Virtualbox e outros tipos de máquinas virtuais). Uma ''bridge'' é um mecanismo existente no Linux para interligar interfaces ethernet em nível de enlace, como se elas formassem um ''switch''. O procedimento para criar uma ''bridge'' integrada a uma interface do tipo ''uplink'' do Netkit é um tanto trabalhoso, e por isso esse processo foi automatizado.
 
 
A criação de um ''uplink'' em modo bridge deve ser feita usando o  parâmetro ''bridge'' ao se declarar uma interface de rede, como mostrado abaixo:
 
 
<syntaxhighlight lang=text>
 
pc[eth0]=uplink:bridge=eth0:ip=192.168.1.100/24
 
</syntaxhighlight>
 
 
Neste exemplo, será criada uma ''bridge'' entre a interface ''eth0'' da máquina virtual ''pc'' e a interface ''eth0'' do sistema hospedeiro. Como com isso a interface da máquina virtual estará exposta na rede real, seu endereço IP pode pertencer à subrede da rede real. Se esse endereço IP for de alguma outra subrede, a máquina virtual não conseguirá se comunicar com as máquinas reais, tampouco acessar a Internet. Mas isso pode ser desejável se a intenção for interligar redes virtuais que estejam sendo executadas em diferentes computadores.
 
 
{{Collapse bottom}}
 
 
{{Collapse top |Aula 16 - 23/04 - Parte 2: Comutação de Circuitos Virtuais}}
 
==Aula 16 - 23/04 - Parte2: Comutação de Circuitos Virtuais ==
 
* não compareci - aula será recuperada
 
 
{{Collapse bottom}}
 
 
{{Collapse top |Aula 17 - 24/04 - Parte 2: Comutação de Circuitos Virtuais}}
 
 
==Aula 17 - 24/04 - Parte2: Comutação de Circuitos Virtuais ==
 
Conteúdos Relacionados com:
 
* Capítulo 6 e 18 do livro "''Comunicação de Dados e Redes de Computadores''", de Berhouz Forouzan
 
* Capítulo 2 do livro "''Redes de Computadores''", de Andrew Tanenbaum
 
 
:* [http://www.sj.ifsc.edu.br/~casagrande/RED/exercicios/lista2.pdf Lista 2  <math>\blacklozenge</math>] '''prazo:''' 30/04/14 às 12:00Hs. '''Execução''': em dupla. '''Como:''' Manuscrita, impressa ou via email<br>
 
 
=== Ferramenta de apoio para configuração de redes: O IPKIT ===
 
 
Como vimos na aula anterior, o Netkit é uma ótima opção para complementar o estudo. Ele funciona como um laboratório de redes, onde se pode criar redes como aquelas que exemplificamos em sala de aula ou mesmo inventar novas redes.  Seu uso se destina a fixar conceitos, para que o eventual uso e configuração dos equipamentos reais seja facilitado.
 
 
Além do Netkit, o seguinte simulador de roteamento IP, que roda dentro do próprio navegador, pode ajudar a exercitar a divisão de sub redes e a criação de rotas estáticas.
 
* [http://tele.sj.ifsc.edu.br/~msobral/IER/ipkit/ Ipkit: Simulador de encaminhamento IP]
 
 
==== Exercícios ====
 
 
1. Usando o [[Netkit]] crie as seguintes redes. Não esqueça de definir as rotas estáticas.
 
 
[[imagem:Rede1-1.png|400px]]
 
{{collapse top|Arquivo do experimento}}
 
<syntaxhighlight lang=text>
 
pc1[type]=generic
 
pc2[type]=generic
 
pc3[type]=generic
 
r1[type]=gateway
 
r2[type]=gateway
 
 
pc1[eth0]=link0:ip=192.168.0.1/24
 
pc2[eth0]=link1:ip=192.168.1.2/24
 
pc3[eth0]=link2:ip=192.168.2.3/24
 
 
r1[eth0]=link0:ip=192.168.0.254/24
 
r1[eth1]=link1:ip=192.168.1.254/24
 
 
r2[eth0]=link0:ip=192.168.0.253/24
 
r2[eth1]=link2:ip=192.168.2.254/24
 
 
pc1[default_gateway]=192.168.0.254
 
pc2[default_gateway]=192.168.1.254
 
pc3[default_gateway]=192.168.2.254
 
 
r1[route]=192.168.2.0/24:gateway=192.168.0.253
 
r2[route]=192.168.1.0/24:gateway=192.168.0.254
 
</syntaxhighlight>
 
{{collapse bottom}}
 
 
 
 
[[imagem:rco2-Rede-intro2.png|400px]]
 
{{collapse top|Arquivo do experimento}}
 
<syntaxhighlight lang=text>
 
pc1[type]=generic
 
pc2[type]=generic
 
pc3[type]=generic
 
pc4[type]=generic
 
r1[type]=gateway
 
r2[type]=gateway
 
r3[type]=gateway
 
r4[type]=gateway
 
 
pc1[eth0]=lan1:ip=192.168.1.1/24
 
pc2[eth0]=lan2:ip=192.168.2.1/24
 
pc3[eth0]=lan3:ip=192.168.3.1/24
 
pc4[eth0]=lan4:ip=192.168.4.1/24
 
 
r1[eth0]=lan1:ip=192.168.1.254/24
 
r1[eth1]=lan2:ip=192.168.2.254/24
 
 
r2[eth0]=lan2:ip=192.168.2.254/24
 
r2[eth1]=lan3:ip=192.168.3.254/24
 
 
r3[eth0]=lan1:ip=192.168.1.254/24
 
r3[eth1]=lan4:ip=192.168.4.254/24
 
 
r4[eth0]=lan3:ip=192.168.3.254/24
 
r4[eth1]=lan4:ip=192.168.4.254/24
 
</syntaxhighlight>
 
{{collapse bottom}}
 
 
<!--<br>[http://tele.sj.ifsc.edu.br/~msobral/RCO2/Lab2.conf Arquivo do experimento (Lab2.conf)]-->
 
 
 
[[imagem:rco2-Rede-intro3.png|350px]]
 
{{collapse top|Arquivo do experimento}}
 
<syntaxhighlight lang=text>
 
pc1[type]=generic
 
pc2[type]=generic
 
pc3[type]=generic
 
pc4[type]=generic
 
r1[type]=gateway
 
r2[type]=gateway
 
 
pc1[eth0]=lan1:ip=10.0.1.1/26
 
pc2[eth0]=lan2:ip=192.168.1.1/24
 
pc3[eth0]=lan3:ip=192.168.2.129/26
 
pc4[eth0]=lan4:ip=192.168.2.193/26
 
 
r1[eth0]=lan1:ip=10.0.1.62/26
 
r1[eth1]=lan2:ip=192.168.1.254/24
 
 
r2[eth0]=lan2:ip=192.168.1.253/24
 
r2[eth1]=lan3:ip=192.168.2.190/26
 
r2[eth2]=lan4:ip=192.168.2.254/26
 
</syntaxhighlight>
 
{{collapse bottom}}
 
 
2. Teste a comunicação entre os computadores e roteadores usando o comando ping. Use também o tcpdump ou wireshark para monitorar as interfaces de rede.
 
 
* Slides sobre multiplexadores [http://www.sj.ifsc.edu.br/~casagrande/RED/slides/fundamentos2.pdf Aulas 3 e 4] (a partir do item "Redes de Telecomunicações")
 
{{Collapse bottom}}
 
 
{{Collapse top |Aula 18 - 30/04 - Parte 2: Redes Locais}}
 
 
==Aula 18 - 30/04 - Parte2: Redes Locais ==
 
 
* Solução de exercícios sobre CRC polinomial e Checksum.
 
 
* Slides (autoria do professor Marcelo Sobral): [http://www.sj.ifsc.edu.br/~msobral/RCO2/slides/aula8.pdf LANs e acesso ao meio]
 
 
=== Conceituação sobre Redes Locais (LAN) ===
 
 
<!-- * O problema do acesso ao meio -->
 
 
==== Características e pontos-chaves ====
 
 
Obs: obtido de STALLINGS, 2005:
 
 
* Uma LAN consiste de um '''meio de transmissão compartilhado''' e um conjunto de hardware e software para servir de interface entre dispositivos e o meio de transmissão, além de regular o acesso ao meio de forma ordenada.
 
* As topologias usadas em LANs são anel (''ring''), barramento (''bus''), árvore (''tree'') e estrela (''star''). Uma LAN em anel consiste de um laço fechado formado por repetidores que possibilitam que dados circulem ao redor do anel. Um repetidor pode funcionar também como um ponto de acesso de um dispositivo. Transmissão geralmente se dá na forma de '''quadros''' (''frames''). As topologias barramento e árvore são segmentos de cabos passivos a que os dispositivos são acoplados. A transmissão de um quadro por um dispositivo (chamado de '''estação''') pode ser escutada por qualquer outra estação. Uma LAN em estrela inclui um nó central onde as estações são acopladas.
 
* Um conjunto de '''padrões''' definido para LANs especifica uma faixa de taxas de dados e abrange uma variedade de topologias e meios de transmissão.
 
* Na maioria dos casos, uma organização possui múltiplas LANs que precisam ser interconectadas. A abordagem mais simples para esse problema se vale de equipamentos chamados de '''pontes''' (''bridges''). Os conhecidos ''switches Ethernet'' são exemplos de pontes.
 
* [http://en.wikipedia.org/wiki/Network_switch Switches] formam os blocos de montagem básicos da maioria das LANs (não muito tempo atrás [http://en.wikipedia.org/wiki/Ethernet_hub hubs] também eram usados).
 
 
==== Algumas tecnologias ====
 
 
* [http://en.wikipedia.org/wiki/Ethernet Ethernet (IEEE 802.3)]: largamente utilizada hoje em dia, na prática domina amplamente o cenário de redes locais.
 
* [http://en.wikipedia.org/wiki/Token_ring Token Ring (IEEE 802.5)]: foi usada nos anos 80 e início dos anos 90, mas está em desuso ... muito difícil de encontrar uma rede local deste tipo hoje em dia.
 
* [http://en.wikipedia.org/wiki/Myrinet Myrinet]: criada especificamente para interligar servidores de alta capacidade de processamento em [http://en.wikipedia.org/wiki/Cluster_%28computing%29 clusters]. Atualmente pouco usada, pois redes ethernet as substituíram em clusters e data centers.
 
* [http://en.wikipedia.org/wiki/InfiniBand Infiniband]: especificamente criada para interligar equipamentos para fins de computação de alto-desempenho. Mantém-se na ativa nesse nicho específico.
 
 
==== Topologias ====
 
 
Uma ''topologia de rede'' diz respeito a como os equipamentos estão interligados. No caso da rede local, a topologia tem forte influência sobre seu funcionamento e sobre a tecnologia adotada. Dependendo de como se desenha a rede, diferentes mecanismos de comunicação são necessários (em particular o que se chama de ''acesso ao meio''). A eficiência da rede (aproveitamento da capacidade de canal, vazão) e sua escalabilidade (quantidade de computadores e equipamentos que podem se comunicar com qualidade aceitável) também possuem relação com a topologia. A tabela abaixo exemplifica topologias conhecidas de redes locais.
 
  
 
{| border="1" cellpadding="2"
 
{| border="1" cellpadding="2"
!Topologia
+
  !Termo
!Exemplo
 
!Tecnologias
 
|-
 
|''Estrela''|| [[imagem:lan-Star.png|60px]] || Ethernet (IEEE 802.3) com hubs e switches
 
|-
 
|''Anel''<br>(em desuso) || [[imagem:lan-Ring.png|100px]] || Token-ring (IEEE 802.5), FDDI
 
|-
 
|''Barramento''<br>(em desuso)|| [[imagem:lan-Bus.png|80px]]|| Ethernet (IEEE 802.3)
 
|-
 
|''Árvore'' || [[imagem:lan-Tree.png|140px]] || Ethernet (IEEE 802.3) com hubs e switches
 
|-
 
|''Árvore-gorda (Fat-tree)'' ||[[imagem:lan-Fat-tree.png|140px]] || Ethernet (IEEE 802.3) com hubs e switches
 
|}
 
 
 
==== Exemplos de uso de redes locais====
 
 
 
Exemplos de redes locais são fáceis de apresentar. Praticamente toda rede que interconecta computadores de usuários é uma rede local - mesmo no caso de redes sem-fio, um caso especial a ser estudado mais a frente. A rede do laboratório de Redes 1, onde temos nossas aulas, é uma rede local. Os demais computadores da escola formam outra rede local. Quando em casa se instala um roteador ADSL e se conectam a ele um ou mais computadores, cria-se também uma rede local. Portanto, redes locais são extremamente comuns e largamente utilizadas. Ainda assim, cabem alguns outros exemplos de possíveis redes locais, mostrados abaixo:
 
 
 
 
 
[[imagem:Lan2-2011-1.png|600px]]
 
<br>''Uma LAN típica com um link para Internet''
 
 
 
 
 
[[imagem:Cisco-datacenter.jpg|400px]]
 
<br>''Uma LAN que integra servidores em um datacenter''
 
 
 
 
 
[[imagem:San.gif|400px]]
 
<br>''Um tipo de LAN especial para interligar servidores de armazenamento (storage), chamada SAN (Storage Area Network)''
 
 
 
 
 
{{Collapse bottom}}
 
{{Collapse top |Aula 19 - 07/05 - Parte 2: Redes Locais e Padrões IEEE}}
 
 
 
== Aula 19 - 07/05 - Parte 2: Redes Locais e e Padrões IEEE ==
 
 
 
* Continuação apresentação dos slides (autoria do professor Marcelo Sobral): [http://www.sj.ifsc.edu.br/~msobral/RCO2/slides/aula8.pdf LANs e acesso ao meio]
 
 
 
* Bibliografia Associada:
 
** Capítulos 12 e 13 do livro "Comunicação de Dados e Redes de Computadores", de Behrouz 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.
 
 
 
Veja abaixo o desenho usado por Bob Metcalfe, um dos criadores da Ethernet, para apresentação em uma conferência em 1976.''
 
 
 
[[Imagem:Ethernet.png|600px]]
 
 
 
Até hoje esses conceitos se mantiveram. Atualmente temos os seguintes elementos em uma rede Ethernet:
 
* '''Estações:''' equipamentos que se comunicam pela rede. Ex: computadores e roteadores.
 
* '''Interface de rede (NIC):''' dispositivo embutido em cada estação com a finalidade de prover o acesso à rede. Implementa as camadas PHY e MAC.
 
* '''Meio de transmissão:''' representado pelos cabos por onde os quadros ethernet são transmitidos. Esses cabos são conectados às interfaces de rede das estações.
 
* '''Switch:''' equipamento de interconexão usado para interligar as estações. Cada estação é conectada a um switch por meio de um cabo. Um switch usualmente possui múltiplas interfaces de rede (12, 24 ou mais). Uma rede com switches apresenta uma topologia física em estrela.
 
 
 
 
 
[[imagem:Lan2-2011-1.png]]
 
<br>''Uma LAN com switches''
 
 
 
... mas no início redes Ethernet não eram assim ! Leia o material de referência para ver como eram essas redes num passado não muito distante.
 
 
 
=== Arquitetura IEEE 802 ===
 
 
 
 
 
Define um conjunto de normas e tecnologias no escopo das camadas física (PHY) e de enlace. A camada de enlace é dividida em duas subcamadas:
 
* '''LLC (Logical Link Control):''' o equivalente a um protocolo de enlace de fato, porém na prática de uso restrito (pouco utilizada).
 
* '''MAC (Medium Access Control):''' um protocolo de acesso ao meio de transmissão, que depende do tipo de meio físico e tecnologia de comunicação. Esse tipo de protocolo é necessário quando o meio de transmissão é compartilhado.
 
 
 
 
 
[[imagem:Arq-ieee.png|400px]]
 
 
 
==== Protocolo de acesso ao meio (MAC) ====
 
 
 
Parte da camada de enlace na arquitetura IEEE 802, tem papel fundamental na comunicação entre estações. O MAC é responsável por:
 
* '''Definir um formato de quadro''' onde deve ser encapsulada uma PDU de um protocolo de camada superior.
 
 
 
 
 
[[imagem:Quadro-ethernet.png|600px]]
 
<br>''Quadro ethernet''
 
 
 
 
 
* '''Endereçar as estações''', já que o meio de transmissão é multiponto (ver campos ''Endereço Destino (destination address)'' e ''Endereço de origem (source address)'' no quadro Ethenet).
 
 
 
* '''Acessar o meio para efetuar a transmissão de quadros''', resolvendo conflitos de acesso quando necessário. Um conflito de acesso (chamado de ''colisão'') pode ocorrer em alguns casos quando mais de uma estação tenta transmitir ao mesmo tempo.
 
 
 
 
 
[[imagem:Csmacd-fluxograma.jpg]]
 
<br>''Fluxograma para o acesso ao meio com CSMA/CD.''
 
 
 
 
 
O acesso ao meio com CSMA/CD é probabilístico: uma estação verifica se o meio está está livre antes de iniciar uma transmissão, mas isso não impede que ocorra uma colisão (apenas reduz sua chance). Se acontecer uma colisão, cada estação envolvida usa esperas de duração aleatória para desempate, chamadas de ''backoff''. A ideia é que as estações sorteiem valores de espera diferentes, e assim a que tiver escolhido um valor menor consiga transmitir seu quadro. Veja o fluxograma acima para entender como isso é feito. As colisões e esperas (''backoffs'') impedem que esse protocolo de acesso ao meio aproveite totalmente a capacidade do meio de transmissão.
 
 
 
* [http://www.datacottage.com/nch/eoperation.htm Veja animacões que mostram o tratamento de colisões]
 
 
 
No entanto, '''nas gerações atuais do padrão IEEE 802.3 (Gigabit Ethernet e posteriores) o CSMA/CD não é mais utilizado'''. Nessas atualizações do padrão, o  modo de comunicação é full-duplex (nas versões anteriores, que operavam a 10 e 100 Mbps, há a possibilidade de ser half ou full-duplex). Se as comunicações são full-duplex, então '''conceitualmente não existem colisões'''. Isso se deve ao fato de que nessas novas versões cada estação possui uma via exclusiva para transmitir e outra para receber, portanto não existe mais um meio compartilhado.
 
 
 
==== Utilização do meio de transmissão em uma rede local com MAC do tipo CSMA/CD ====
 
 
 
Nesta seção mostra-se como estimar o desempenho do CSMA/CD por meio de experimentos para medir a utilização máxima do meio. Esses experimentos podem ser feitos usando uma rede real, com computadores interligados por ''hubs'', ou com um simulador. Em ambos os casos deve-se fazer com que vários computadores gerem tráfego intenso na rede, e calcular ao final a utilização do meio da seguinte forma:
 
 
 
<math>
 
U = \frac{total~bytes~recebidos}{taxa~bits \cdot duracao~do~experimento}
 
</math>
 
 
 
O ''total de quadros recebidos'' pode ser obtido em qualquer um dos computadores.
 
 
 
{{collapse top|Experiência com uma rede real}}
 
 
 
Para fazer com uma rede real:
 
 
 
* [[RCO2-lab2|Roteiro da experiência]]
 
 
 
'''Resultados:'''
 
<syntaxhighlight lang=text>
 
64 53046660
 
128 61992856
 
256 67413192
 
512 70684436
 
756 71989464
 
1024 77967480
 
1500 73797088
 
</syntaxhighlight>
 
 
 
Com esses dados deve-se plotar um gráfico da quantidade de bytes recebidos X tamanho dos quadros. Na tabela acima, os tamanhos de quadros estão na 1a coluna, e a quantidade de bytes recebidos está na 2a coluna.
 
 
 
[[imagem:Csma-cd.png|400px]]
 
 
 
<br>''Desempenho do MAC CSMA/CD (Carrier Sense Multiple Access/Collision Detection): o gráfico acima mostra o resultado de um experimento feito em laboratório com 6 computadores transmitindo quadros intensamente e simultaneamente para um único computador. A cada transmissão simultânea variou-se o tamanho dos quadros transmitidos (mostrado no eixo X), e anotou-se quantos bytes foram recebidos no computador receptor (eixo Y). Os computadores foram interligados por um hub.''
 
{{collapse bottom}}
 
 
 
{{collapse top|Experiência com uma rede simulada}}
 
 
 
Para fazer a experiência pode-se usar também o simulador Omnet++ (veja em: [[Omnetpp-Instalacao|Instale o Omnet++ 4]])
 
 
 
O gráfico abaixo foi obtido com uma simulação via Omnet++:
 
 
 
[[imagem:Csma-perf-sim.png]]
 
 
 
As simulações tiveram os seguintes parâmetros:
 
* Quadros de 256, 512 e 1480 bytes
 
* 2 a 45 estações
 
* Geração de tráfego por estação com intervalos entre quadros dados por uma distribuição exponencial com média 15*tamanho_quadro_em_bits*0.11us (0.11us é o tempo aproximado de um bit)
 
{{collapse bottom}}
 
 
 
{{collapse top|Análise de desempenho do CSMA/CD}}
 
 
 
Uma análise feita no capítulo 4 do livro "Redes de Computadores, 4a ed." de Andrew Tanenbaum fornece a seguinte previsão aproximada de desempenho para o CSMA/CD em uma rede Ethernet a 10 Mbps.
 
 
 
* ''Utilização do meio:''
 
 
 
<math>U = \frac{1}{1 + \frac{2BLe}{cF}}</math>
 
 
 
* '''''B:''''' taxa de bits nominal
 
* '''''L:''''' comprimento do meio de transmissão
 
* '''''c: ''''' velocidade de propagação do sinal
 
* '''''F:''''' comprimento do quadro
 
 
 
[[Image:Csma-perf.png|400px]]
 
 
 
Essa figura mostra curvas para a utilização do meio em função da quantidade de estações prontas para transmitir, e para diferentes tamanhos de quadro. A conclusão é que quadros menores proporcionam desempenho inferior, assim como uma quantidade maior de estações resulta em uma provável menor utilização do meio. No entanto essa análise considera a rede numa situação de carga muito alta, o que não acontece normalmente. Há também algumas simplificações no desenvolvimento da análise, tal como considerar que a probabilidade de retransmissão constante em cada ''slot'', ao invés de analisar o algoritmo de recuo exponencial binário (''backoff''). Finalmente, esse resultado tem sentido para um meio de transmissão compartilhado, mas a atualmente as redes locais ethernet trabalham com meios de transmissão exclusivos (''ethernet comutada e full-duplex'', em que não há risco de colisão).
 
 
 
Para fins de comparação, veja os resultados obtidos com as redes simuladas anteriormente.
 
{{collapse bottom}}
 
 
 
====Atividade Extra: Artigo resumo sobre desempenho da ethernet====
 
 
 
[[Atividade Resumo1]]
 
 
 
==== A arquitetura IEEE802====
 
 
 
* Arquitetura IEEE 802 e Redes locais IEEE 802.3 (Ethernet): [http://tele.sj.ifsc.edu.br/~msobral/RCO2/slides/aula9-ieee.pdf slides].
 
 
 
 
 
{{Collapse bottom}}
 
 
 
{{Collapse top |Aula 20 - 08/05 - Avaliação A1 }}
 
 
 
==Aula 20 - 08/05 - Avaliação A1==
 
* Avaliação A1 - Parte1 e Parte2 (introdução camada 2)
 
 
 
{{Collapse bottom}}
 
 
 
{{Collapse top |Aula 21 - 14/05 - Correção em sala da avaliação A1}}
 
 
 
==Aula 21 - 14/05 - Parte 2 - Arquitetura IEEE==
 
 
 
* Correção da Prova A1.
 
 
 
{{Collapse bottom}}
 
 
 
{{Collapse top |Aula 22 - 15/05 - Parte2 - Arquitetura IEEE}}
 
 
 
==Aula 22 - 15/05 - Parte 2 - Arquitetura IEEE==
 
 
 
Conteúdo Associado:
 
* Capítulo 13 do livro "''Comunicação de Dados e Redes de Computadores, 4a ed.''", de Behrouz Forouzan.
 
* Capítulo 5 do livro "''Redes de Computadores e a Internet, 5a ed.''", de James Kurose.
 
* Capítulo 4 do livro "''Redes de Computadores, 4a ed.''", de Andrew Tanenbaum.
 
 
 
Início das atividades:
 
 
 
* Continuação e finalização [http://tele.sj.ifsc.edu.br/~msobral/RCO2/slides/aula9-ieee.pdf slides] sobre arquitetura IEEE 802 e Redes locais IEEE 802.3 (Ethernet):
 
 
 
{{Collapse bottom}}
 
 
 
{{Collapse top |Aula 23 - 21/05 - Parte2 - Segmentação de redes e redes locais virtuais (VLANs)}}
 
 
 
==Aula 23 - 21/05 - Parte 2 - Segmentação de redes e redes locais virtuais (VLANs)==
 
 
 
Conteúdo Associado:
 
* Capítulo 15 do livro "''Comunicação de Dados e Redes de Computadores, 4a ed.''", de Behrouz Forouzan.
 
 
 
=== Tecnologias de LAN switches ===
 
 
 
Switches ''store-and-forward'' X ''cut-through''
 
* Leia este [http://tele.sj.ifsc.edu.br/~msobral/RCO2/docs/switch-internals.pdf bom texto] sobre estruturas internas de switches.
 
* [http://www.cisco.com/en/US/tech/tk389/tk689/technologies_tech_note09186a00800a7af3.shtml#switchtechs Bom texto sobre switches]
 
* [http://www.cisco.com/en/US/prod/collateral/switches/ps9441/ps9670/white_paper_c11-465436.html Texto sobre tecnologias de switches (store-and-forward e cut-through)]
 
 
 
Algumas animações mostrando o funcionamento de switches ''store-and-forward'' e ''cut-through'':
 
* [http://www.sj.ifsc.edu.br/~msobral/RCO2/videos/q0142.mov Animacão sobre switches cut-through]
 
* [http://www.sj.ifsc.edu.br/~msobral/RCO2/videos/q0141.mov Animacão sobre switches store-and-forward]
 
* [http://www.sj.ifsc.edu.br/~msobral/RCO2/videos/q0143.mov Animacão sobre switches simétricos (todas portas com mesma taxa de bits)]
 
* [http://www.sj.ifsc.edu.br/~msobral/RCO2/videos/q0144.mov Animacão sobre switches assimétricos (portas com diferentes taxas de bits)]
 
 
 
=== Laboratório sobre LANs ===
 
 
 
* [[RCO2-lab3|Experiência sobre LANs]]
 
 
 
=== Interligando redes locais ===
 
 
 
==== Interligação de LANs (norma IEEE802.1D) ====
 
 
 
* Como um  switch aprende que endereços MAC estão em cada porta ?
 
* Como um switch encaminha um quadro cujo destinatário é desconhecido ?
 
* Como um switch propaga quadros em broadcast ?
 
** [http://www.sj.ifsc.edu.br/~msobral/RCO2/slides/lan-switch-transparent.swf Animação sobre o funcionamento de switches (Cisco)]
 
 
 
* Ver [http://www.sj.ifsc.edu.br/~msobral/RCO2/slides/aula10.pdf slides] sobre introdução à VLANs.
 
 
 
A equipe que administra a rede do campus São José estudou uma reestruturação dessa rede. Como diferentes setores e públicos a utilizam, e para diferentes propósitos, concluiu-se que seria apropriado segmentá-la em algumas subredes. Isso possibilitaria facilitar o controle de quem usa a rede, além do policiamento do tráfego. Para isso, a subrede geral do campus precisaria ser segmentada inicialmente em cinco novas subredes, denominadas:
 
 
 
{| border="1" cellpadding="2"
 
  !Segmento
 
 
  !Descrição
 
  !Descrição
!Subrede IP
 
 
  |-
 
  |-
  |'''Pedagogica''' || Pontos das salas de aula e laboratórios de informática|| 172.18.32.0/20
+
  |''LSP'' || Label Switching Path, o análogo a circuito virtual.
 
  |-
 
  |-
  |'''Administrativa''' || Pontos de setores administrativos|| 172.18.16.0/20
+
  |''LSR'' || Label Switching Router, ou roteador capaz de comutar PDUs MPLS.
 
  |-
 
  |-
  |'''DMZ''' || Servidores acessíveis de fora da escola (ex: Wiki, WWW)|| 200.135.37.64/26
+
  |''LER'' || Label Edge Router,  ou roteador que faz a interface entre a rede MPLS (onde se encaminham  PDUs exclusivamente com base nos rótulos), e a rede externa (onde não se usa MPLS). A rede externa pode ser qualquer outra rede, como IPv4, IPv6 ou mesmo LAN Ethernet. Note que LER é um  tipo especial de LSR,  e podem ser denominados também como ''LSR ingress'' (''LSR'' de entrada na rede MPLS) e ''LSR egress'' (''LSR'' de saída da rede MPLS).
 
  |-
 
  |-
  |'''BD''' || Servidores que hospedam bancos de dados (ex: LDAP, MySQL)|| 172.18.240.0/24
+
  |''LFIB'' || Label Forwarding Information Base, ou o conjunto de informações existentes nos LSR usadas para fazer o encaminhamento das PDUS MPLS. Pode ser entendida como uma estrutura análoga à tabela de comutação de circuitos virtuais.
 
  |-
 
  |-
|'''LAN''' || Demais pontos de rede || 172.18.0.0/20
 
 
  |}
 
  |}
  
  
A figura abaixo mostra a estrutura proposta para a rede do campus São José, composta pelas cinco novas subredes e as subredes dos laboratórios de Redes 1 e Redes 2. Como se pode observar, o roteador/firewall Cisco ASA 5510 se torna um nó central da rede, pois interliga todas suas subredes (com exceção dos laboratórios de Redes 1 e Redes 2).
+
Usando os termos acima, podem-se descrever redes MPLS demonstrativas como mostrado  a seguir. Na  primeira rede há dois LSP: um vai do ''Host X'' ao ''Host Z'' e está identificado com PDUS em amarelo, e outro vai de ''Host  X'' ao ''Host Y'' e tem PDUs em azul. O número dentro de cada PDU informa os valores de rótulo usados  ao longo dos LSP. Assim como em circuitos virtuais em  geral (e como em Frame  Relay e ATM), os valores de rótulo podem ser modificados por cada roteador que os comute.
  
 +
[[imagem:Mplsrouters.gif]]
  
[[imagem:Nova-rede-ifsc-sj.png|600px]]
+
=== Conceitos básicos sobre comutação de rótulos ===
  
 +
A comutação de rótulos feita nos LSR é muito parecida com comutação de circuitos virtuais. Ao receber uma PDU MPLS, um LSR decide o que fazer com ela com base no número do rótulo e na interface de rede de onde ela foi recebida. Porém há um  detalhe específico do MPLS: uma ou mais interfaces podem ser associadas em um  ''labelspace MPLS'', sendo esse ''labelspace'' usado para identificar de onde foi recebida uma PDU. Desta forma, um  LSR na  verdade decide o que fazer com uma PDU com base em seu rótulo e no  seu ''labelspace''. Dentro do LSR essa operação se chama ''ILM'' (''Input Label Mapping'').
  
Existe mais de uma forma de implantar uma estrutura como essa, as quais serão apresentadas nas próximas subseções.
+
'''''ILM''' é a função que identifica uma PDU recebida e mapeia seu rótulo para um '''labelspace'''''
  
==== Segmentação física ====
+
Um caso especial  trata de PDUs que entram na rede MPLS. Por exemplo, uma PDU IPv4, originada de uma rede externa, deve ser transportada pela rede MPLS. Nesse caso, o ''LER'' (roteador de borda) deve associar essa PDU a um rótulo MPLS e encaminhá-lo pela rede MPLS. A identificação de uma PDU externa à rede MPLS, com  base nas informações dessa PDU, se chama  ''FEC'' (''Forwarding Equivalence Class'').
  
A segmentação física é uma solução aparentemente simples e direta. Cada subrede deve ser composta de uma estrutura exclusiva, contendo seus switches e cabeamentos. No entanto, para adotar esse tipo de segmentação, algumas modificações precisarão ser feitas na infraestrutura de rede existente. Observe a estrutura física da rede do campus:
+
Uma vez identificada uma PDU recebida, o  LSR deve encaminhá-la de acordo com instruções predefinidas em sua ''LFIB''. Dentro de sua LFIB essas instruções são chamadas de ''NHLFE'' (''Next-Hop Label Forwarding Entry''), e contêm a '''operação MPLS''' a ser realizada e a interface de saída por onde encaminhar a PDU. As operações MPLS possíveis estão descritas na tabela abaixo:
  
[[imagem:Rede-ifsc-sj.png|600px]]
 
  
 
+
{| border="1" cellpadding="2"
O que seria necessário fazer para implantar uma segmentação física ?
+
!Operação
 
+
!Descrição
==== Segmentação com VLANs ====
+
|-
 
+
|''SWAP'' || Troca o valor de rótulo. Essa operação deve ser usada para comutação dentro da rede MPLS. Mesmo  quando  o novo valor de rótulo for idêntico ao anterior essa operação deve ser realizada.
Se a reestruturação pudesse ser efetuada com mínimas modificações na estrutura física (incluindo cabeamento), a implantação da nova rede seria mais rápida e menos custosa. Para isso ser possível, seria necessário que a infraestrutura de rede existente tivesse a capacidade de agrupar portas de switches, separando-as em segmentos lógicos. Quer dizer, deveria ser possível criar '''redes locais virtuais''', como mostrado na seguinte figura:
+
|-
 
+
|''PUSH'' || Adiciona um cabeçalho MPLS com um determinado valor de rótulo. Essa operação deve ser usada principalmente  nos ''LER'',  quando  uma PDU entra na rede MPLS.
[[imagem:Vlans.png]]
 
 
 
No exemplo acima, três redes locais virtuais ('''VLAN''') foram implantadas nos switches. Cada rede local virtual é composta por um certo número de computadores, que podem estar conectados a diferentes switches. Assim, uma rede local pode ter uma estrutura lógica diferente da estrutura física (a forma como seus computadores estão fisicamente interligados). Uma facilidade como essa funcionaria, de certa forma, como um ''patch panel'' virtual, que seria implementado diretamente nos switches.
 
 
 
'''Redes locais virtuais''' são técnicas para implantar duas ou mais redes locais com topologias arbitrárias, usando como base uma infraestrutura de rede local física. Isso é semelhante a máquinas virtuais, em que se criam computadores virtuais sobre um computador real.
 
 
 
'''Exemplo:''' a configuração do [[Netkit]] mostrada abaixo cria uma pequena rede composta por um switch e quatro computadores. Além disso, foram definidas duas VLANs (VLAN 5 e VLAN 10). Com isso, os computadores ''pc1'' e ''pc4'' pertencem a VLAN 5, e os computadores ''pc2'' e ''pc3'' estão na VLAN 10. Execute a rede abaixo e teste a comunicação entre os computadores - quais computadores conseguem se comunicar ?.
 
 
 
{| border="0" cellpadding="3"
 
 
  |-
 
  |-
  | <syntaxhighlight lang=text>
+
  |''POP'' || Remove o cabeçalho MPLS. Essa operação deve ser usada principalmente nos ''LER'', quando uma PDU sai da rede MPLS.
sw[type]=switch
 
pc1[type]=generic
 
pc2[type]=generic
 
pc3[type]=generic
 
pc4[type]=generic
 
 
 
# As portas do switch
 
sw[eth0]=port0:vlan_untagged=5
 
sw[eth1]=port1:vlan_untagged=10
 
sw[eth2]=port2:vlan_untagged=10
 
sw[eth3]=port3:vlan_untagged=5
 
 
 
# Ligando os computadores ao switch
 
pc1[eth0]=port0:ip=192.168.0.1/24
 
pc2[eth0]=port1:ip=192.168.0.2/24
 
pc3[eth0]=port2:ip=192.168.0.3/24
 
pc4[eth0]=port3:ip=192.168.0.4/24
 
</syntaxhighlight> || [[imagem:Vlans-ex1.png]]
 
|}
 
 
 
==== Padrão IEEE 802.1q ====
 
 
 
Os primeiros switches com suporte a VLANs as implementavam de forma legada (i.e. não seguiam um padrão da indústria). Isso impedia que houvesse interoperabilidade entre equipamentos de diferentes fabricantes. Logo a IEEE formou um grupo de trabalho para propor mecanismos padronizados para implantar VLANs, dando origem ao padrão [http://tele.sj.ifsc.edu.br/~msobral/RCO2/docs/ieee/802.1Q-2005.pdf IEEE 802.1q]. Os fabricantes de equipamentos de rede o adataram largamente, suplantando outras tecnologias legadas (ex: [http://www.cisco.com/en/US/tech/tk389/tk689/technologies_tech_note09186a0080094665.shtml ISL] e [http://www.cisco.com/en/US/tech/tk389/tk689/technologies_tech_note09186a0080094c52.shtml VTP] da Cisco). Com isso, VLANs IEEE 802.1q podem ser criadas usando switches de fabricantes diferentes.
 
 
 
Atualmente, a implantação de VLANs depende de switches com suporte ao padrão IEEE 802.1q. Assim, verifique quais dos switches do laboratório possuem suporte a VLAN:
 
* D-Link DES-526 [http://www.sj.ifsc.edu.br/~msobral/IER/roteiros/manual-des3526.pdf (manual)]
 
* Micronet SP 1658B [http://www.sj.ifsc.edu.br/~msobral/IER/roteiros/SP1658B_Manual.pdf (manual)]
 
* 3Com 3224 [http://www.3com.com/prod/pt_la_amer/detail.jsp?tab=prodspec&sku=3C16479 (especificações)]
 
 
 
Uma VLAN é identificada por um número, chamado VID (''VLAN Identifier''), sendo que a VLAN com VID 1 é considerada a ''VLAN default'' (configuração de fábrica). Em um switch com suporte a VLAN IEEE 802.1q, cada porta possui um (ou mais ...) VID, o que define a que VLAN pertence. Assim, para criar uma VLAN, devem-se modificar os VID das portas de switches que dela farão parte. Por exemplo, em uma pequena rede com duas VLANs as portas dos switches podem estar configuradas da seguinte forma:
 
 
 
 
 
{| border="0" cellpadding="2"
 
 
  |-
 
  |-
|[[imagem:Bridge3.png]] || <syntaxhighlight lang=text>
 
switch1[type]=switch
 
switch2[type]=switch
 
pc1[type]=generic
 
pc2[type]=generic
 
pc3[type]=generic
 
pc4[type]=gateway
 
pc5[type]=generic
 
pc6[type]=generic
 
 
pc1[default_gateway]=192.168.0.4
 
pc2[default_gateway]=192.168.0.4
 
pc3[default_gateway]=192.168.1.4
 
pc5[default_gateway]=192.168.1.4
 
pc6[default_gateway]=192.168.0.4
 
 
switch1[eth0]=sw1-port0:vlan_untagged=5
 
switch1[eth1]=sw1-port1:vlan_untagged=5
 
switch1[eth2]=sw1-port2:vlan_untagged=10
 
switch1[eth3]=link-sw1-sw2:vlan_tagged=5,10
 
 
switch2[eth0]=sw2-port0:vlan_tagged=5,10
 
switch2[eth1]=sw2-port1:vlan_untagged=10
 
switch2[eth2]=sw2-port2:vlan_untagged=5
 
switch2[eth3]=link-sw1-sw2:vlan_tagged=5,10
 
 
pc1[eth0]=sw1-port0:ip=192.168.0.1/24
 
pc2[eth0]=sw1-port1:ip=192.168.0.2/24
 
pc3[eth0]=sw1-port2:ip=192.168.1.3/24
 
pc4[eth0]=sw2-port0:vlan_tagged=(5,ip=192.168.0.4/24),(10,ip=192.168.1.4/24)
 
pc5[eth0]=sw2-port1:ip=192.168.1.5/24
 
pc6[eth0]=sw2-port2:ip=192.168.0.6/24
 
</syntaxhighlight>
 
 
|}
 
|}
  
Além do VID, a configuração da porta de um switch deve especificar o modo de operação da VLAN:
 
* '''tagged:''' cada quadro transmitido ou recebido por essa porta deve conter o número da VLAN a que pertence. Esse modo é usado normalmente em portas que interligam switches.
 
* '''untagged:''' quadros que entram e saem pela porta não possuem informação sobre a VLAN a que pertencem. Usado normalmente para conectar computadores e servidores a switches.
 
  
 +
A comutação fica completa ao se juntarem o mapeamento de entrada (''ILM'') com as ''NHLFE'', no caso de comutação dentro da rede MPLS. No caso de entrada de PDUs na rede MPLS, a operação se chama  ''FTN'' (''Fec-To-Nhlfe''), que nada mais é que regras para associar os rótulos MPLS a essas PDUS. No  exemplo da PDU IPv4, pode-se usar o endereço IPv4 de destino  dessa PDU para escolher que rótulo MPLS deve  ser usado. Isso está sumarizado na  figura abaixo.
  
Esses modos '''tagged''' e '''untagged''' implicam haver uma forma de um quadro Ethernet informar a que VLAN pertence. Isso é usado para restringir a propagação de quadros, fazendo com que sejam recebidos e transmitidos somente por portas de switches que fazem parte de suas VLANs.  
+
[[imagem:Mpls-lfib.png]]
  
 +
=== Atividade com MPLS  ===
  
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 abaixo,  compõe-se de 4 bytes situados entre os campos de endereço de origem e ''Type''. O identificador de VLAN (VID) ocupa 12 bits, o que possibilita portanto 4096 diferentes VLANs.
+
* [http://www.sj.ifsc.edu.br/~casagrande/RED/lab_mpls1.pdf 1o Experimento com MPLS]
 +
** Os experimentos usarão o [[Netkit#Switches_MPLS|Netkit e MPLS]]
 +
** Lab do netkit com o experimento:
  
 +
<code>
 +
e2[type]=mpls
 +
e3[type]=mpls
 +
e4[type]=mpls
 +
e5[type]=mpls
 +
a1[type]=generic
 +
a2[type]=generic
 +
 +
# FEC: mapeia subrede destino para nhlfe
 +
e2[fec]=172.16.20.0/24:nhlfe=1
 +
e4[fec]=172.16.10.0/24:nhlfe=1
 +
 +
# NHLFE: como encaminhar PDUs MPLS
 +
e2[nhlfe]=1:interface=eth0:label=1000:ip=10.0.2.3
 +
e3[nhlfe]=1:interface=eth0:label=2001:ip=10.0.2.2
 +
e3[nhlfe]=2:interface=eth1:label=1001:ip=10.0.6.4
 +
e4[nhlfe]=1:interface=eth1:label=2000:ip=10.0.6.3
  
[[imagem:Quadro-8021q.png]]
+
# ILM: como identificar PDUs MPLS recebidas
<br>''Quadro ethernet com a TAG IEEE 802.1q''
+
e2[ilm]=2001:labelspace=0
 
+
e3[ilm]=2000:labelspace=0:nhlfe=1
 
+
e3[ilm]=1000:labelspace=0:nhlfe=2
A ''tag'' de VLAN, inserida em quadros Ethernet, está diretamente relacionada com os modos '''tagged''' e '''untagged''' de portas de switches. Portas em modo '''tagged''' transmitem e recebem quadros que possuem ''tag'', e portas em modo '''untagged''' recebem e transmitem quadros que não possuem ''tag''. Isso foi pensado para tornar a implantação de VLANs transparente para os usuários finais, pois seus computadores não precisarão saber que existem VLANs (i.e. não precisarão interpretar ''tags''). Por isso equipamentos que não interpretam ''tags'' são denominados ''VLAN-unaware'' (desconhecem VLAN), e equipamentos que recebem e transmitem quadros com ''tag'' são referidos como ''VLAN-aware'' (conhecem VLAN).
+
e4[ilm]=1001:labelspace=0
 
 
 
 
'''Exemplo: simulador de switch com VLAN:'''
 
<br>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).
 
 
 
[[imagem:Simulador-vlan.png|link=http://www2.rad.com/networks/2006/vlan/demo.htm|Um simulador de VLANs]]
 
 
 
=== Redes locais e VLANs ===
 
 
 
==== Atividade ====
 
 
 
Na figura abaixo, a rede da esquerda está fisicamente implantada em uma pequena empresa. No entanto, uma reestruturação tem como objetivo modificá-la de acordo com o diagrama mostrado à direita. Essa alteração da rede deve ser feita sem adicionar switches ou modificar o cabeamento (tampouco devem-se mudar as conexões de pontos de rede às portas de switches). Faça essa modificação usando o [[Netkit]].
 
 
 
[[imagem:Vlan-ex1.png]]
 
 
 
# '''Criar a topologia física:'''<syntaxhighlight lang=text>
 
sw1[type]=switch
 
sw2[type]=switch
 
pc1[type]=generic
 
pc2[type]=generic
 
pc3[type]=generic
 
pc4[type]=generic
 
pc5[type]=generic
 
pc6[type]=generic
 
 
   
 
   
sw1[eth0]=sw1-port0
+
# Labelspace: os mapeamentos de labelspaces a interfaces
sw1[eth1]=sw1-port1
+
e2[labelspace]=0:interfaces=eth0
sw1[eth2]=sw1-port2
+
e3[labelspace]=0:interfaces=eth0,eth1
sw1[eth3]=link-sw1-sw2
+
e4[labelspace]=0:interfaces=eth1
 
   
 
   
sw2[eth0]=sw2-port0
+
e2[eth0]=link2:ip=10.0.2.2/24
sw2[eth1]=sw2-port1
+
e2[eth1]=link8:ip=172.16.10.2/24
sw2[eth2]=sw2-port2
+
e2[eth3]=link1:ip=10.0.1.2/24
sw2[eth3]=link-sw1-sw2
+
e3[eth0]=link2:ip=10.0.2.3/24
 +
e3[eth1]=link6:ip=10.0.6.3/24
 +
e4[eth0]=link4:ip=10.0.4.4/24
 +
e4[eth1]=link6:ip=10.0.6.4/24
 +
e4[eth2]=link7:ip=172.16.20.4/24
 +
e5[eth0]=link4:ip=10.0.4.5/24
 +
e5[eth1]=link1:ip=10.0.1.5/24
 +
 
 +
a1[eth2]=link8:ip=172.16.10.10/24
 +
a2[eth2]=link7:ip=172.16.20.20/24
 
   
 
   
pc1[eth0]=sw1-port0
+
a1[default_gateway]=172.16.10.2
pc2[eth0]=sw1-port1
+
a2[default_gateway]=172.16.20.4
pc6[eth0]=sw1-port2
 
  
pc3[eth0]=sw2-port0
 
pc4[eth0]=sw2-port1
 
pc5[eth0]=sw2-port2
 
 
</syntaxhighlight>
 
</syntaxhighlight>
  
# '''Criar a topologia lógica usando VLANs'''<br>''... isso é com vocês!''
+
* '''Exercício''': Considere o roteiro realizado em sala e faça o LSP entre A2 e A1 passar por E5 ao invés de E3 - Ou seja, isso implica modificar a configuração dos roteadores E2, E3, E4 e E5:
 
 
==== A nova rede do IFC-SJ ====
 
 
 
Voltando à segmentação da rede do campus São José, vamos implantar a nova rede usando VLANs.
 
  
 +
[[imagem:Exercicio-mpls-1.png|600px]]
  
{| border="0" cellpadding="2"
+
<!--
|-
+
* '''E4:''' mudar a ''NHLFE'' para que o LSP A2->A1 vá para E5.
|[[imagem:Ifsc-sj-simples.png|400px]] || [[imagem:Ier-seta.png]]|| [[imagem:Nova-rede-ifsc-sj.png|400px]]
+
* '''E5:''' fazer a comutação A2->A1 que antes ficava em E3.
|}
+
* '''E2:'''  modificar o ''labelspace 0'' para que contenha a interface ''eth3''.
 +
* '''E3:''' removida a configuração da comutação A2->A1
  
Primeiro isso será realizado usando o [[Netkit]], e em seguida será implantado no laboratório. Para simplificar a rede, vamos assumir que a topologia física está implantada como mostrado na figura acima, à esquerda.
+
Solução:
  
{{collapse top | Configuração da rede do IFSC-SJ}}
+
<code>
<syntaxhighlight lang=text>
+
e2[type]=mpls
# switches
+
e3[type]=mpls
sw-rnp[type]=switch
+
e4[type]=mpls
sw-redes1[type]=switch
+
e5[type]=mpls
sw-redes2[type]=switch
+
a1[type]=generic
sw-coinf[type]=switch
+
a2[type]=generic
sw-labdes[type]=switch
 
 
# gateways
 
asa5510[type]=gateway
 
gw-redes1[type]=gateway
 
gw-redes2[type]=gateway
 
 
   
 
   
# computadores e servidores
+
# FEC: mapeia subrede destino para nhlfe
bd[type]=generic
+
e2[fec]=172.16.20.0/24:nhlfe=1
dmz1[type]=generic
+
e4[fec]=172.16.10.0/24:nhlfe=1
dmz2[type]=generic
 
adm1[type]=generic
 
adm2[type]=generic
 
adm3[type]=generic
 
pedag1[type]=generic
 
pedag2[type]=generic
 
pc-redes1[type]=generic
 
pc-redes2[type]=generic
 
 
   
 
   
# Portas dos switches
+
# NHLFE: como encaminhar PDUs MPLS
sw-rnp[eth0]=rnp-port0
+
e2[nhlfe]=1:interface=eth0:label=1000:ip=10.0.2.3
sw-rnp[eth1]=rnp-port1
+
e3[nhlfe]=1:interface=eth1:label=1001:ip=10.0.6.4
sw-rnp[eth2]=rnp-port2
+
e4[nhlfe]=1:interface=eth0:label=2000:ip=10.0.4.5
sw-rnp[eth3]=rnp-port3
+
e5[nhlfe]=1:interface=eth1:label=2001:ip=10.0.1.2
sw-rnp[eth4]=rnp-port4
 
sw-rnp[eth5]=rnp-port5
 
 
sw-redes1[eth0]=redes1-port0
 
sw-redes1[eth1]=redes1-port1
 
 
sw-redes2[eth0]=redes2-port0
 
sw-redes2[eth1]=redes2-port1
 
 
sw-coinf[eth0]=coinf-port0
 
sw-coinf[eth1]=coinf-port1
 
sw-coinf[eth2]=coinf-port2
 
# Ligações entre switches
 
sw-coinf[eth3]=rnp-port5
 
sw-coinf[eth4]=labdes-port3
 
 
sw-labdes[eth0]=labdes-port0
 
sw-labdes[eth1]=labdes-port1
 
sw-labdes[eth2]=labdes-port2
 
sw-labdes[eth3]=labdes-port3
 
 
# Ligações dos computadores aos switches
 
asa5510[eth0]=rnp-port0:ip=172.18.0.254/16
 
bd[eth0]=rnp-port1:ip=172.18.0.10/16
 
dmz1[eth0]=rnp-port2:ip=172.18.0.11/16
 
adm1[eth0]=rnp-port3:ip=dhcp
 
gw-redes1[eth1]=rnp-port4:ip=172.18.0.100/16
 
 
pc-redes1[eth0]=redes1-port1:ip=192.168.1.2/24
 
gw-redes1[eth0]=redes1-port0:ip=192.168.1.1/24
 
 
pc-redes2[eth0]=redes2-port1:ip=192.168.2.2/24
 
gw-redes2[eth0]=redes2-port0:ip=192.168.2.1/24
 
 
dmz2[eth0]=coinf-port0:ip=172.18.0.13/16
 
adm2[eth0]=coinf-port1:ip=dhcp
 
pedag1[eth0]=coinf-port2:ip=dhcp
 
 
adm3[eth0]=labdes-port0:ip=dhcp
 
pedag2[eth0]=labdes-port1:ip=dhcp
 
gw-redes2[eth1]=labdes-port2:ip=172.18.0.101/16
 
 
# ASA 5510 é servidor dhcp da LAN ...
 
asa5510[dhcp]=eth0:range=172.18.100.1,172.18.100.250:gateway=172.18.0.254
 
 
# Gateways default dos computadores que usam IP fixo
 
gw-redes1[default_gateway]=172.18.0.254
 
gw-redes2[default_gateway]=172.18.0.254
 
pc-redes1[default_gateway]=192.168.1.1
 
pc-redes2[default_gateway]=192.168.2.1
 
bd[default_gateway]=172.18.0.254
 
dmz1[default_gateway]=172.18.0.254
 
dmz2[default_gateway]=172.18.0.254
 
</syntaxhighlight>
 
{{collapse bottom}}
 
  
 +
# ILM: como identificar PDUs MPLS recebidas
 +
e2[ilm]=2001:labelspace=0
 +
e3[ilm]=1000:labelspace=0:nhlfe=1
 +
e4[ilm]=1001:labelspace=0
 +
e5[ilm]=2000:labelspace=0:nhlfe=1
  
<!-- ==== Atividade Extra: leitura da semana ====
+
 +
# Labelspace: os mapeamentos de labelspaces a interfaces
 +
e2[labelspace]=0:interfaces=eth0,eth3
 +
e3[labelspace]=0:interfaces=eth0,eth1
 +
e4[labelspace]=0:interfaces=eth0,eth1
 +
e5[labelspace]=0:interfaces=eth0,eth1
  
#O assunto da próxima leitura tem relação com VLANs. Leiam o seguinte texto:
+
[http://tele.sj.ifsc.edu.br/~msobral/RCO2/docs/gvrp-white-paper.pdf Garp VLAN Registration Protocol]
+
e2[eth0]=link2:ip=10.0.2.2/24
#Quais são as características dos switches do laboratório ?
+
e2[eth1]=link8:ip=172.16.10.2/24
** D-Link DES-526 [http://www.sj.ifsc.edu.br/~msobral/IER/roteiros/manual-des3526.pdf (manual)]
+
e2[eth3]=link1:ip=10.0.1.2/24
** Micronet SP 1658B [http://www.sj.ifsc.edu.br/~msobral/IER/roteiros/SP1658B_Manual.pdf (manual)]
+
e3[eth0]=link2:ip=10.0.2.3/24
** 3Com 3224 [http://tele.sj.ifsc.edu.br/~msobral/RCO2/docs/3Com-2824.pdf (especificações)]
+
e3[eth1]=link6:ip=10.0.6.3/24
-->
+
e4[eth0]=link4:ip=10.0.4.4/24
 
+
e4[eth1]=link6:ip=10.0.6.4/24
{{Collapse bottom}}
+
e4[eth2]=link7:ip=172.16.20.4/24
 
+
e5[eth0]=link4:ip=10.0.4.5/24
{{Collapse top |Aula 24 - 22/05 - Parte2: Protegendo a rede com Spannig Tree Protocol (STP) - IEEE802.3d}}
+
e5[eth1]=link1:ip=10.0.1.5/24
 
 
==Aula 24 - 22/05 - Parte2: Protegendo a rede com Spannig Tree Protocol (STP) - IEEE802.3d==
 
 
 
* Explicações adicionais sobre VLANs e solução da rede [[imagem:Vlan-ex1.png]] da aula anterior:
 
  
<syntaxhighlight lang=text>
+
a1[eth2]=link8:ip=172.16.10.10/24
sw1[type]=switch
+
a2[eth2]=link7:ip=172.16.20.20/24
sw2[type]=switch
 
pc1[type]=generic
 
pc2[type]=generic
 
pc3[type]=generic
 
pc4[type]=generic
 
pc5[type]=generic
 
pc6[type]=generic
 
 
sw1[eth0]=sw1-port0:vlan_untagged=1
 
sw1[eth1]=sw1-port1:vlan_untagged=3
 
sw1[eth2]=sw1-port2:vlan_untagged=2
 
sw1[eth3]=link-sw1-sw2:vlan_tagged=1,2,3
 
 
sw2[eth0]=sw2-port0:vlan_tagged=1,2,3
 
sw2[eth1]=sw2-port1:vlan_untagged=3
 
sw2[eth2]=sw2-port2:vlan_untagged=1
 
sw2[eth3]=link-sw1-sw2:vlan_tagged=1,2,3
 
 
   
 
   
pc1[eth0]=sw1-port0:ip=192.168.1.1/24
+
a1[default_gateway]=172.16.10.2
pc2[eth0]=sw1-port1:ip=192.168.3.2/24
+
a2[default_gateway]=172.16.20.4
pc6[eth0]=sw1-port2:ip=192.168.2.6/24
 
 
 
pc3[eth0]=sw2-port0:vlan_tagged=(1,ip=192.168.1.3/24),(2,ip=192.168.2.3/24),(3,ip=192.168.3.3/24)
 
pc4[eth0]=sw2-port1:ip=192.168.3.4/24
 
pc5[eth0]=sw2-port2:ip=192.168.1.5/24
 
</syntaxhighlight>
 
 
 
=== O problema dos ciclos (caminhos fechados) em uma rede local ethernet ===
 
 
 
Bibliografia associada:
 
* Capítulo 15 do livro "''Comunicação de Dados e Redes de Computadores, 3a ed.''", de Behrouz Forouzan.
 
* Capítulo 5 do livro "''Redes de computadores e a Internet, Uma abordagem Top-Down. 5a edição'', de James Kurose.
 
* Capítulo 4 do livro "''Redes de Computadores, 4a ed.''", de Andrew Tanenbaum.
 
 
 
Outros materiais:
 
* Introdução a STP (ver [http://www.sj.ifsc.edu.br/~msobral/RCO2/slides/aula11.pdf transparências])
 
* [http://tele.sj.ifsc.edu.br/~msobral/RCO2/docs/spanning_tree1.swf Uma animação sobre STP].
 
* [http://www.sj.ifsc.edu.br/~msobral/RCO2/docs/stp.pdf Um texto explicativo sobre  STP]
 
* [http://en.wikipedia.org/wiki/Spanning_tree_protocol STP na  Wikipedia]
 
 
 
Após implantar a [[RCO2-2012-1#Atividade_3|nova rede do IF-SC SJ]], a equipe da gerência de rede passou a acompanhar seu uso pela comunidade escolar. E um certo dia um aluno acidentalmente pegou um cabo e ligou em duas tomadas de rede em um laboratório (que está na Subrede ''Pedagógica''). Quer dizer, ele fez algo assim com um dos switches da rede:
 
 
 
 
 
[[imagem:Curto-lan.png]]
 
 
 
 
 
A interligação acidental de duas portas de um switch cria um ciclo na rede local (''loop''). Mas isso pode ser feito também de forma intencional, pois em LANs grandes pode ser desejável ter enlaces redundantes, para evitar que a interrupção de um enlace isole parte da rede. A existência de interligações alternativas portanto é algo que pode ocorrer em uma rede local, seja por acidente ou com a finalidade de conferir algum grau de tolerância a falhas na infraestrutura da rede. Um caso em que uma rede possui um ciclo intencionalmente colocado pode ser visto na LAN abaixo:
 
 
 
[[imagem:LAN-anel-stp.png]]
 
 
 
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 ficaria travada 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 manualmente tira o sentido de ter tal configuração para tolerância a falhas (e não impede um "acidente" como aquele descrito no início desta secão), por isso foi criado o protocolo [http://en.wikipedia.org/wiki/Spanning_Tree_Protocol STP] (''Spanning Tree Protocol'', definido na norma IEEE 802.1d) para realizar automaticamente essa tarefa.
 
  
 +
</syntaxhighlight>
 +
-->
  
 
{{Collapse bottom}}
 
{{Collapse bottom}}
  
{{Collapse top |Aula 25 - 28/05 - Parte 2:  Protegendo a rede com Spannig Tree Protocol (STP) - IEEE802.3d - continuação }}
+
{{Collapse top | 26/02 - MPLS - Labelspaces e Tunels }}
  
==Aula 25 - 28/05 - Parte 2:  Protegendo a rede com Spannig Tree Protocol (STP) - IEEE802.3d - continuação==
+
== 26/02 - MPLS - Labelspaces e Tunels ==
  
Voltando ao problema do loop acidental (ou proposital...) colocado entre portas de um mesmo switch, vamos avaliar o que ocorreria na prática sem um protocolo STP.
+
=== Atividade ===
  
 +
* [http://tele.sj.ifsc.edu.br/~casagrande/RED/mpls_labelspaces.pdf Roteiro sobre labelspaces e túneis MPLS]
  
[[imagem:Curto-lan.png]]
+
'''Laboratório do netkit sobre labelspaces:'''
  
 +
<code>
  
Para ver a consequência dessa ação aparentemente inocente, experimente reproduzi-la em uma rede feita com o [[Netkit]]:
+
e1[type]=mpls
 
+
e2[type]=mpls
{| border="0" cellpadding="2"
+
e3[type]=mpls
|-
+
e4[type]=mpls
|[[imagem:Stp-ex1.png]] || <syntaxhighlight lang=text>
+
e5[type]=mpls
pc1[type]=generic
+
a1[type]=generic
pc2[type]=generic
+
a2[type]=generic
sw[type]=switch
+
a3[type]=generic
 
+
sw[eth0]=port0
+
# FEC: mapeia subrede destino para nhlfe
sw[eth1]=port1
+
e2[fec]=172.16.20.0/24:nhlfe=1
 
+
e4[fec]=172.16.10.0/24:nhlfe=1
pc1[eth0]=port0:ip=192.168.0.1/24
 
pc2[eth0]=port1:ip=192.168.0.2/24
 
 
 
# ... a barbeiragem do usuário da rede no switch !
 
sw[eth2]=link-barbeiragem
 
sw[eth3]=link-barbeiragem
 
</syntaxhighlight>
 
|}
 
 
 
 
 
'''O que ocorreu ao tentar pingar de pc1 para pc2 ?'''
 
 
 
* Abra  a ferramenta "monitor do sistema" do UBUNTU para constatar a carga de processamento do processador de seu PC e conclua o que está acontecendo.
 
 
 
Agora vamos observar o STP em ação na rede abaixo
 
 
 
[[imagem:LAN-anel-stp.png]]
 
 
 
* Configuração para o Netkit:
 
 
 
<syntaxhighlight lang=text>
 
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
 
</syntaxhighlight>
 
 
 
Abra o wireshark ou tcpdump em qualquer interface da rede e observe todos os parâmetros do pacote BPDU trocados entre Switches. Neste momento o algorítimo do STP já executou todas as suas etapas e convergiu bloqueando portas para tornar a rede em uma topologia tipo árvore. Os pacotes BPDU irão aparecer periodicamente nessa rede até que exista uma falha ou mudança na topologia física para que exista uma nova etapa do algorítimo STP.
 
 
   
 
   
<!---=== Atividade ===
+
# NHLFE: como encaminhar PDUs MPLS
 
+
e2[nhlfe]=1:interface=eth0:label=1000:ip=10.0.2.3
Vamos realizar [[RCO2-lab4|um experimento]] para entender melhor como funciona o STP.  
+
e3[nhlfe]=1:interface=eth0:label=1000:ip=10.0.2.2
 +
e3[nhlfe]=2:interface=eth1:label=1000:ip=10.0.6.4
 +
e4[nhlfe]=1:interface=eth1:label=1000:ip=10.0.6.3
  
Usem o arquivo de configuração do Netkit a seguir para o experimento:
+
# ILM: como identificar PDUs MPLS recebidas
 
+
e2[ilm]=1000:labelspace=0
<syntaxhighlight lang=text>
+
e3[ilm]=1000:labelspace=0:nhlfe=2
sw1[type]=switch
+
e3[ilm]=1000:labelspace=1:nhlfe=1
sw2[type]=switch
+
e4[ilm]=1000:labelspace=0
sw3[type]=switch
 
sw4[type]=switch
 
pc1[type]=generic
 
pc2[type]=generic
 
pc3[type]=generic
 
pc4[type]=generic
 
 
   
 
   
# Ativação do STP nos switches
+
#Labelspace: os mapeamentos de labelspaces a interfaces
sw1[stp]=on
 
sw2[stp]=on
 
sw3[stp]=on
 
sw4[stp]=on
 
 
sw1[eth0]=sw1-sw2
 
sw1[eth1]=sw1-port1
 
sw1[eth2]=sw1-sw3
 
sw1[eth3]=sw1-sw4
 
 
sw2[eth0]=sw1-sw2
 
sw2[eth1]=sw2-port1
 
sw2[eth2]=sw2-sw3
 
sw2[eth3]=sw2-sw4
 
 
sw3[eth0]=sw1-sw3
 
sw3[eth1]=sw3-port1
 
sw3[eth2]=sw2-sw3
 
sw3[eth3]=sw3-sw4
 
 
sw4[eth0]=sw1-sw4
 
sw4[eth1]=sw2-sw4
 
sw4[eth2]=sw3-sw4
 
sw4[eth3]=sw4-port4
 
 
 
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
 
pc4[eth0]=sw4-port4:ip=192.168.0.4/24
 
</syntaxhighlight>
 
-->
 
 
 
 
 
Switches reais usualmente possuem suporte a [[IER-2011-1#Interliga.C3.A7.C3.A3o_de_LANs_e_Spanning_Tree_Protocol_.28STP.29|STP (''Spanning Tree Protocol'')]] para possibilitar haver enlaces redundantes em uma rede local. No Netkit podem-se criar redes em que se usa o STP, que deve ser ativado no switches.
 
 
 
 
 
Para criar essa rede no Netkit pode-se usar a seguinte configuração:
 
  
<syntaxhighlight lang=text>
+
e2[labelspace]=0:interfaces=eth0
sw1[type]=switch
+
e3[labelspace]=0:interfaces=eth0
sw2[type]=switch
+
e3[labelspace]=1:interfaces=eth1
sw3[type]=switch
+
e4[labelspace]=0:interfaces=eth1
pc1[type]=generic
 
pc2[type]=generic
 
pc3[type]=generic
 
 
   
 
   
# Ativação do STP nos switches
+
e1[eth1]=link9:ip=172.16.30.1/24
sw1[stp]=on:bridge_priority=1024
+
e1[eth2]=link3:ip=10.0.3.1/24
sw2[stp]=on:bridge_priority=128
+
e1[eth3]=link5:ip=10.0.5.1/24
sw3[stp]=on:bridge_priority=500
+
e2[eth0]=link2:ip=10.0.2.2/24
 +
e2[eth1]=link8:ip=172.16.10.2/24
 +
e2[eth2]=link3:ip=10.0.3.2/24
 +
e2[eth3]=link1:ip=10.0.1.2/24
 +
e3[eth0]=link2:ip=10.0.2.3/24
 +
e3[eth1]=link6:ip=10.0.6.3/24
 +
e3[eth2]=link5:ip=10.0.5.3/24
 +
e4[eth0]=link4:ip=10.0.4.4/24
 +
e4[eth1]=link6:ip=10.0.6.4/24
 +
e4[eth2]=link7:ip=172.16.20.4/24
 +
e5[eth0]=link4:ip=10.0.4.5/24
 +
e5[eth1]=link1:ip=10.0.1.5/24
  
sw1[eth0]=sw1-sw2
+
a1[eth2]=link8:ip=172.16.10.10/24
sw1[eth1]=sw1-port1
+
a2[eth2]=link7:ip=172.16.20.20/24
sw1[eth2]=sw1-sw3
+
a3[eth0]=link9:ip=172.16.30.30/24
 
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
+
a1[default_gateway]=172.16.10.2
pc2[eth0]=sw2-port1:ip=192.168.0.2/24
+
a2[default_gateway]=172.16.20.4
pc3[eth0]=sw3-port1:ip=192.168.0.3/24
+
a3[default_gateway]=172.16.30.1
</syntaxhighlight>
 
 
 
A configuração do STP se faz pelo atributo especial ''stp'' a ser especificado para cada switch. A opção ''on'' ativa o STP, e ''bridge_priority'' define a prioridade do switch no escopo do STP.
 
 
 
Como os switches podem ser configurados com múltiplas vlans, o STP deve ser ativado apropriadamente. Isso significa que cada vlan deve ter o STP rodando de forma independente. A configuração do Netkit para especificar o STP para cada vlan segue abaixo:
 
  
<syntaxhighlight lang=text>
 
sw1[type]=switch
 
 
# Ativação do STP nos switches
 
sw1[stp]=on:bridge_priority=1024:vlan=5
 
sw1[stp]=on:bridge_priority=512:vlan=10
 
 
</syntaxhighlight>
 
</syntaxhighlight>
  
Nesse exemplo, o switch ''sw1'' tem o STP ativado na vlans 5 e 10. Os parâmetros do STP inclusive podem ser diferentes em cada vlan, já que ele opera em cada uma de forma independente (i.e. o STP em uma vlan não interfere com o STP em outra vlan). Vlans em que o stp não foi explicitamente ativado usarão a configuração default do stp, a qual é definida omitindo-se informação sobre vlan:
+
'''Laboratório do netkit sobre túneis:'''
 
 
<syntaxhighlight lang=text>
 
# Configuração default do STP em um switch ... vale para todas as vlans em que
 
# o stp não foi configurado individualmente.
 
sw1[stp]=on
 
 
 
# A configuração default pode conter quaisquer opções do stp, menos vlan:
 
sw2[stp]=on:bridge_priority=2000
 
</syntaxhighlight>
 
 
 
Um último detalhe sobre o STP diz respeito ao custo e prioridade de cada porta do switch. No STP usado em switches reais, o custo de uma porta é dado pela sua velocidade. Assim, portas mais velozes têm custo menor que portas mais lentas, como por exemplo portas 1 Gbps comparadas a 100 Mbps. No Netkit não existe essa diferenciação entre as interfaces ethernet por serem emuladas, mas pode-se especificar manualmente o custo de cada interface a ser usado pelo STP. A configuração necessária deve ser colocada em cada porta da seguinte forma:
 
 
 
<syntaxhighlight lang=text>
 
sw1[type]=switch
 
 
 
# Ativação do STP nos switches
 
sw1[stp]=on:bridge_priority=1024
 
 
 
sw1[eth0]=port0:stp_cost=10
 
sw1[eth1]=port1:stp_cost=100
 
</syntaxhighlight>
 
 
 
Assim, nesse exemplo a interface eth0 do switch ''sw1'' tem custo STP 10, e a interface eth1 tem custo 100. Os custos de interfaces de acordo com a norma IEEE 802.1d pode ser visto na seguinte tabela:
 
 
 
[[imagem:Stp-custos.png]]
 
 
 
 
 
A lista completa de opções que podem ser usadas na configuração do STP no Netkit segue abaixo:
 
 
 
<syntaxhighlight lang=text>
 
# STP no switch:
 
# bridge_priority: prioridade do switch no STP
 
# hello_time: intervalo entre envios de BPDU
 
# max_age: tempo máximo que o STP pode ficar sem receber uma atualização de BPDU de outro switch
 
# forward_delay: atraso para enviar uma BPDU notificando uma mudança de configuração do STP
 
# on: ativa o STP
 
# off: inicia com STP desativado
 
 
 
sw1[stp]=on:vlan=10:bridge_priority=100:hello_time=2:max_age=10:forward_delay=1
 
 
 
# Porta do switch: pode ter as opções stp_cost (custo da porta) e stp_prio (prioridade da porta)
 
sw1[eth0]=port0:stp_cost=10:stp_prio=1
 
 
 
</syntaxhighlight>
 
 
 
* Faça o exercício proposto pelo professor envolvendo agora, VLANs e o STP na mesma rede.
 
 
 
 
 
<!-- = 24/04: Acrescentando enlaces redundantes na rede da escola =
 
 
 
Voltando à segmentação da rede do campus São José, vamos acrescentar alguns enlaces para conferir um grau de tolerância a falhas:
 
 
 
 
 
{| border="0" cellpadding="2"
 
|-
 
|[[imagem:Ifsc-sj-simples.png|400px]] || [[imagem:Ier-seta.png]]|| [[imagem:Nova-rede-ifsc-sj.png|400px]]
 
|}
 
  
 
+
<code>
Dada a dimensão da rede, isso será realizado usando o [[Netkit]]. Sendo assim, implante a rede acima e ative o STP para tratar os caminhos fechados. Em seguida, experimente modificar alguns links para verificar se a rede continua funcionando.
+
e1[type]=mpls
 
+
e2[type]=mpls
{{collapse top|Modelo da rede do IFSC-SJ para o Netkit}}
+
e3[type]=mpls
<syntaxhighlight lang=text>
+
e4[type]=mpls
# switches
+
e5[type]=mpls
sw-rnp[type]=switch
+
a1[type]=generic
sw-redes1[type]=switch
+
a3[type]=generic
sw-redes2[type]=switch
+
a4[type]=generic
sw-coinf[type]=switch
 
sw-labdes[type]=switch
 
 
   
 
   
# gateways
+
# FEC: mapeia subrede destino para nhlfe
asa5510[type]=gateway
+
e1[fec]=172.16.10.0/24:nhlfe=1
gw-redes1[type]=gateway
+
e2[fec]=172.16.30.0/24:nhlfe=1
gw-redes2[type]=gateway
 
 
   
 
   
# computadores e servidores
+
# NHLFE: como encaminhar PDUs MPLS
bd[type]=generic
+
e1[nhlfe]=1:interface=eth2:label=500:ip=10.0.3.2
dmz1[type]=generic
+
e2[nhlfe]=1:interface=eth3:label=100:ip=10.0.1.5
dmz2[type]=generic
+
e3[nhlfe]=1:interface=eth2:label=300:ip=10.0.5.1
adm1[type]=generic
+
e4[nhlfe]=1:interface=eth1:label=3000:ip=10.0.6.3
adm2[type]=generic
+
e5[nhlfe]=1:label=200:nhlfe=2
adm3[type]=generic
+
e5[nhlfe]=2:interface=eth0:label=2000:ip=10.0.4.4
pedag1[type]=generic
+
 
pedag2[type]=generic
+
# ILM: como identificar PDUs MPLS recebidas
pc-redes1[type]=generic
+
e1[ilm]=300:labelspace=0
pc-redes2[type]=generic
+
e2[ilm]=500:labelspace=0
 +
e3[ilm]=3000:labelspace=0
 +
e3[ilm]=200:labelspace=0:nhlfe=1
 +
e4[ilm]=2000:labelspace=0:nhlfe=1
 +
e5[ilm]=100:labelspace=0:nhlfe=1
 
   
 
   
# Portas dos switches
+
# Labelspace: os mapeamentos de labelspaces a interfaces
sw-rnp[eth0]=rnp-port0
+
e1[labelspace]=0:interfaces=eth3
sw-rnp[eth1]=rnp-port1
+
e2[labelspace]=0:interfaces=eth2
sw-rnp[eth2]=rnp-port2
+
e3[labelspace]=0:interfaces=eth1
sw-rnp[eth3]=rnp-port3
+
e4[labelspace]=0:interfaces=eth0
sw-rnp[eth4]=rnp-port4
+
e5[labelspace]=0:interfaces=eth1
sw-rnp[eth5]=rnp-port5
 
 
sw-redes1[eth0]=redes1-port0
 
sw-redes1[eth1]=redes1-port1
 
 
sw-redes2[eth0]=redes2-port0
 
sw-redes2[eth1]=redes2-port1
 
 
sw-coinf[eth0]=coinf-port0
 
sw-coinf[eth1]=coinf-port1
 
sw-coinf[eth2]=coinf-port2
 
# Ligações entre switches
 
sw-coinf[eth3]=rnp-port5
 
sw-coinf[eth4]=labdes-port3
 
 
sw-labdes[eth0]=labdes-port0
 
sw-labdes[eth1]=labdes-port1
 
sw-labdes[eth2]=labdes-port2
 
sw-labdes[eth3]=labdes-port3
 
 
# Ligações dos computadores aos switches
 
asa5510[eth0]=rnp-port0:ip=172.18.0.254/16
 
bd[eth0]=rnp-port1:ip=172.18.0.10/16
 
dmz1[eth0]=rnp-port2:ip=172.18.0.11/16
 
adm1[eth0]=rnp-port3:ip=dhcp
 
gw-redes1[eth1]=rnp-port4:ip=172.18.0.100/16
 
 
pc-redes1[eth0]=redes1-port1:ip=192.168.1.2/24
 
gw-redes1[eth0]=redes1-port0:ip=192.168.1.1/24
 
 
pc-redes2[eth0]=redes2-port1:ip=192.168.2.2/24
 
gw-redes2[eth0]=redes2-port0:ip=192.168.2.1/24
 
 
dmz2[eth0]=coinf-port0:ip=172.18.0.13/16
 
adm2[eth0]=coinf-port1:ip=dhcp
 
pedag1[eth0]=coinf-port2:ip=dhcp
 
 
adm3[eth0]=labdes-port0:ip=dhcp
 
pedag2[eth0]=labdes-port1:ip=dhcp
 
gw-redes2[eth1]=labdes-port2:ip=172.18.0.101/16
 
 
# ASA 5510 é servidor dhcp da LAN ...
 
asa5510[dhcp]=eth0:range=172.18.100.1,172.18.100.250:gateway=172.18.0.254
 
 
# Gateways default dos computadores que usam IP fixo
 
gw-redes1[default_gateway]=172.18.0.254
 
gw-redes2[default_gateway]=172.18.0.254
 
pc-redes1[default_gateway]=192.168.1.1
 
pc-redes2[default_gateway]=192.168.2.1
 
bd[default_gateway]=172.18.0.254
 
dmz1[default_gateway]=172.18.0.254
 
dmz2[default_gateway]=172.18.0.254
 
</syntaxhighlight>
 
{{collapse bottom}}
 
-->
 
  
{{Collapse bottom}}
+
e1[eth1]=link9:ip=172.16.30.1/24
 +
e1[eth2]=link3:ip=10.0.3.1/24
 +
e1[eth3]=link5:ip=10.0.5.1/24
 +
e2[eth0]=link2:ip=10.0.2.2/24
 +
e2[eth1]=link8:ip=172.16.10.2/24
 +
e2[eth2]=link3:ip=10.0.3.2/24
 +
e2[eth3]=link1:ip=10.0.1.2/24
 +
e3[eth0]=link2:ip=10.0.2.3/24
 +
e3[eth1]=link6:ip=10.0.6.3/24
 +
e3[eth2]=link5:ip=10.0.5.3/24
 +
e3[eth3]=link10:ip=172.16.40.3/24
 +
e4[eth0]=link4:ip=10.0.4.4/24
 +
e4[eth1]=link6:ip=10.0.6.4/24
 +
e4[eth2]=link7:ip=172.16.20.4/24
 +
e5[eth0]=link4:ip=10.0.4.5/24
 +
e5[eth1]=link1:ip=10.0.1.5/24
  
{{Collapse top |Aula 26 - 29/05 - Parte 2: Controle de Acesso com IEEE 802.1x e Trunking IEEE 802.1ax}}
+
a1[eth2]=link8:ip=172.16.10.10/24
 
+
a3[eth0]=link9:ip=172.16.30.30/24
==Aula 26 - 29/05 - Parte 2: Controle de Acesso com IEEE 802.1x e Trunking IEEE 802.1ax==
+
a4[eth0]=link10:ip=172.16.40.40/24
 
+
* [http://tele.sj.ifsc.edu.br/~casagrande/RED/exercicios/lista3.pdf 3a lista de exercícios]
+
a1[default_gateway]=172.16.10.2
 
+
a3[default_gateway]=172.16.30.1
===Fazendo controle de acesso em redes locais===
+
a4[default_gateway]=172.16.40.3
 
 
 
 
Vamos usar como exemplo o cenário da rede do IFSC-SJ: A gerência de rede concluiu que deve-se controlar os acessos aos pontos da rede da escola. Com isso, somente usuários devidamente autenticados e autorizados poderão se comunicar usando os pontos de rede. A forma com que isso deve ser feito deve impedir inclusive que uma pessoa conecte um laptop a uma tomada de rede, e consiga acessar a rede. Além disso, o acesso pode ser negado ou concedido dependendo do tipo de usuário (aluno, funcionário, professor, visitante) e da localização do ponto de rede. O mecanismo de segurança capaz de fazer isso deve agir portanto diretamente nas portas de switches, habilitando-as ou bloqueando-as dependendo do usuário que tentar usar o equipamento nela conectado.
 
 
 
=== Padrão IEEE 802.1x ===
 
  
* Ver [http://www.sj.ifsc.edu.br/~msobral/RCO2/slides/aula12.pdf slides]
 
* [http://www.sj.ifsc.edu.br/~msobral/RCO2/docs/802.1x_book_c2.pdf Capítulo de um livro sobre IEEE 802.1x]
 
<!-- [http://www.sj.ifsc.edu.br/~msobral/RCO2/roteiros/lab10.pdf Roteiro da experiência]
 
** [http://www.sj.ifsc.edu.br/~msobral/RCO2/roteiros/rco2.conf Arquivo de configuração do wpa_supplicant (rco2.conf)]-->
 
 
 
O padrão [http://www.sj.ifsc.edu.br/~msobral/RCO2/docs/ieee/802.1X-2004.pdf 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. Esses mecanismos são implementados em três componentes que forma a estrutura de controle de acesso IEEE 802.1x, mostrada na figura abaixo:
 
 
[[imagem:Ieee-8021x.png]]
 
 
* '''Supplicant:''' o cliente que deseja se autenticar. Implementado com um software (ex: [http://hostap.epitest.fi/wpa_supplicant/ wpa_supplicant], [http://open1x.sourceforge.net/ 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 [http://en.wikipedia.org/wiki/RADIUS 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.
 
 
[[imagem: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.
 
* ... [http://freeradius.org/features/eap.html e muitos outros !]
 
 
==== Controle de acesso IEEE 802.1x ====
 
 
O controle de acesso [[RCO2-2012-1#Padr.C3.A3o_IEEE_802.1x|IEEE 802.1x]] possibilita liberar ou bloquear portas de switches mediante a identificação de usuários válidos. Para usá-lo no Netkit deve-se  fazer o seguinte:
 
# Nos switches ativa-se a autenticação com IEEE 802.1x, fornecendo-se uma lista de usuários e respectivas senhas. Além disso, identificam-se quais portas dos switches que exigirão que usuários se autentiquem (portas autenticadoras). <syntaxhighlight lang=text>
 
sw[type]=switch
 
 
# Podem-se definir quantos usuários e senhas forem desejados.
 
sw[8021x]=1:users=usuario1/senha1,usuario2/senha2
 
 
# A interface eth0 do switch é uma porta autenticadora, mas a interface eth1 não.
 
sw[eth0]=port0:8021x_authenticator=1
 
sw[eth1]=port1
 
 
</syntaxhighlight>
 
</syntaxhighlight>
# Nos computadores que se conectarão aos switches deve-se informar o usuário e senha para fins de autenticação. <syntaxhighlight lang=text>
 
pc[type]=generic
 
  
pc[eth0]=port0:8021x_user=usuario1/senha1:ip=10.0.0.1/24
+
{{Collapse bottom}}
</syntaxhighlight>
 
  
Juntando os dois exemplos acima, pode-se definir uma pequena rede para fins de demonstração do controle de acesso:
+
{{Collapse top | 03/03 - Protocolos de Enlace Ponto à Ponto }}
  
<syntaxhighlight lang=text>
+
== 03/03 - Protocolos de Enlace Ponto à Ponto ==
sw[type]=switch
 
pc1[type]=generic
 
pc2[type]=generic
 
  
# Podem-se definir quantos usuários e senhas forem desejados.
+
'''Resumo da aula:'''
sw[8021x]=1:users=usuario1/senha1,usuario2/senha2
+
* Revisão sobre MPLS;
 +
* Slides sobre [http://www.sj.ifsc.edu.br/~casagrande/RED/slides/protocolos_pp.pdf Protocolos Ponto à Ponto];
 +
* Serviços da Camada de enlace.
  
# Necessário um endereço IP para fins de gerenciamento do switch
+
'''Bibliografia relacionada:'''
sw[management_ip]=10.0.0.10/24:vlan=1
+
* Seção 5.7 do livro "Redes de Computadores" do Kurose 5a ed.
 +
* 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.
  
# A interface eth0 do switch é uma porta autenticadora, mas a interface eth1 não.
+
'''Fundamentos Teóricos'''
sw[eth0]=port0:8021x_authenticator=1
 
sw[eth1]=port1
 
  
pc1[eth0]=port0:8021x_user=usuario1/senha1:ip=10.0.0.1/24
+
=== Enlaces lógicos ===
pc2[eth0]=port1:ip=10.0.0.2/24
 
</syntaxhighlight>
 
  
Ao executar a rede acima, deve-se conseguir fazer um ping entre ''pc1'' e ''pc2''. Se quiser testar com maiores detalhes o controle de acesso e vê-lo em ação, experimente fazer o seguinte:
+
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.
# No ''pc2'' deixe o ping em execução (''ping 10.0.0.1'')
 
# No ''pc1'' execute o utilitário ''wpa_cli''. Esse programa permite controlar o ''supplicant'', que vem a ser o programa responsável por realizar a autenticação com IEEE 8021x. Ao iniciar o ''wpa_cli'' mostra um prompt (''>''), onde se podem executar comandos de consulta ou modificacão do ''supplicant''.
 
## Execute ''status'', e veja as informações sobre a autenticação mantidas pelo ''supplicant''.
 
## Execute ''logoff'', e em seguida observe como estão as resposta do ping no ''pc2''. As respostas devem etr parado ...
 
## Execute ''logon'', e novamente observe o ping no ''pc2''. Após alguns segundos as respostas devem voltar a ser recebidas.
 
  
===== Definindo um IP de gerenciamento =====
+
[[imagem:Datalink-phy.png|600px]]
  
Um switch pode possuir um endereço IP para fins de gerenciamento. No momento, isso é usado somente para que um switch consiga rodar um servidor Radius e atender pedidos de acesso vindos de outros switches. O IP de gerenciamento precisa estar vinculado a uma das VLANs do switch:
+
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.
  
<syntaxhighlight lang=text>
+
Deste ponto em diante, a ''parte lógica'' será chamada simplesmente de '''Camada de Enlace''', e a parte física de '''Camada Física'''.
sw[management_ip]=192.168.0.10/24:vlan=5
 
</syntaxhighlight>
 
  
No exemplo acima, o switch ''sw'' possui o IP de gerenciamento 192.168.0.10, que está vinculado a VLAN 5. Apenas um IP por switch hpode ser definido.
+
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.  
  
Como o tipo ''switch'' especializa o tipo ''generic'', é possível definir rotas em um switch que possui um IP de gerenciamento. Isso pode ser feito da mesma forma que em máquinas virtuais genéricas (i.e. usando os atributos [[Netkit#Rotas_est.C3.A1ticas|''default_gateway'' ou ''route'']]).
+
===== Serviços da camada de enlace =====
  
===== Usando um servidor Radius =====
+
[[Image:Data-link.png]]
  
Em uma infraestrutura de controle de acesso IEEE 8021.X, usualmente o servidor de autenticação reside em um equipamento em separado. Desta forma, os autenticadores (switches e ''access points'') podem efetuar a autenticação usando uma base de usuários comum. Apesar do padrão IEEE 8021.X não definir como deve ser implementado o servidor de autenticação, os fabricantes de equipamentos adotaram o serviço Radius para assumir esse papel. Com isso, para implantar o servidor de autenticação deve-se instalar um servidor Radius em algum equipamento, e fazer com que os autenticadores o utilizem para para autenticar os acessos.  
+
Os serviços identificados na figura acima estão descritos a seguir. A eles foram acrescentados outros dois:
  
No Netkit a implantação de um servidor Radius foi simplificada e integrada à configuração do controle de acesso descrita no [[Netkit#Controle_de_acesso_IEEE_802.1x|início desta seção]]. Por questão de simplicidade, o servidor Radius deve ser implantado em um switch. assim, a configuração de um switch que deve operar como servidor Radius é:
+
* '''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
  
<syntaxhighlight lang=text>
+
==== Protocolos de enlace ponto-a-ponto ====
sw2[8021x]=1:users=u1/p1,u2/p2:radius_clients=10.0.0.10,10.0.0.254
 
</syntaxhighlight>
 
  
O parâmetro ''users'' lista os usuários e senhas autenticados pelo Radius, e ''radius_clients'' lista os endereços IP dos clientes Radius (que são os demais switches). Em ambos os casos, as informações devem ser escritas como listas separadas por vírgulas.
+
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 [http://www.ietf.org/rfc/rfc1661.txt 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 5.7 do livro do Kurose e 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 [[Desempenho_ARQ|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 onde a presença de ruídos no meio de transmissão é relevante ou se deseja confiabilidade na entrega de pacotes na camada 2. Ver mais detalhes na seção 11.6 do livro ''Comunicação de Dados e Redes de Computadores'', de Behrouz Forouzan.
  
Os clientes Radius precisam definir que servidor Radius irão utilizar. A configuração de um switch que é cliente Radius poderia ser esta:
 
  
<syntaxhighlight lang=text>
+
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 <math>7E_H</math>, serve para delimitar quadros, assim o receptor sabe quando inicia e termina cada quadro.
sw[8021x]=1:radius_server=10.0.0.5
 
</syntaxhighlight>
 
  
Note que os clientes Radius devem ser capazes de alcançarem o servidor Radius. Quer dizer, se clientes e servidor Radius estiverem em subredes IP diferentes, devem existir rotas para que eles possam se comunicar.
+
[[imagem:Ppp-frame.png|400px]]
 +
<br>''Quadro PPP ou HDLC (tamanho de campos dados em bytes)''<br>
  
Um exemplo de uma rede com dois switches, sendo um deles um servidor Radius, está mostrada a seguir:
+
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 [http://pt.wikipedia.org/wiki/Comunica%C3%A7%C3%A3o_serial_ass%C3%ADncrona comunicação serial assíncrona].
  
{| border="0" cellpadding="2"
+
{{Collapse bottom}}
|-
 
|<syntaxhighlight lang=text>
 
pc1[type]=generic
 
pc2[type]=generic
 
sw[type]=switch
 
sw2[type]=switch
 
  
sw[8021x]=1:radius_server=10.0.0.5
+
{{Collapse top | 05/03 - Protocolos HDLC e PPP }}
sw2[8021x]=1:users=aluno/teste:radius_clients=10.0.0.10
 
  
sw[management_ip]=10.0.0.10/24:vlan=1
+
== 05/03 - Protocolos HDLC e PPP ==
sw2[management_ip]=10.0.0.5/24:vlan=1
 
  
pc1[eth0]=sw-port0:ip=10.0.0.1/24:8021x_user=aluno/teste
+
'''Resumo da aula:'''
pc2[eth0]=sw-port1:ip=10.0.0.2/24:8021x_user=aluno/teste
 
sw[eth0]=sw-port0:8021x_authenticator=1
 
sw[eth1]=sw-port1:8021x_authenticator=1
 
sw[eth2]=sw-port2
 
 
 
sw2[eth0]=sw-port2
 
</syntaxhighlight>||[[imagem:Ex-radius.png]]
 
|}
 
 
 
==Padrão IEEE802.1ax (anterior IEEE802.1ad) Agregamento de enlaces==
 
 
 
=== Agregação de enlace (bonding ou trunking) ===
 
 
 
O Linux possui suporte a agregação de enlaces, em que se agrupam interfaces ethernet de forma a parecerem uma única interface (chamado de [http://www.linuxhorizon.ro/bonding.html Linux Channel Bonding]). A interface agregada tem prefixo ''bond'', e assim deve ser identificada como ''bond0'', ''bond1'' e assim por diante. Para criar um enlace agregado no Netkit basta declarar em um switch uma interface desse tipo. A sintaxe da declaração é praticamente idêntica a de interfaces ethernet, como se pode ver abaixo:
 
 
 
<syntaxhighlight lang=text>
 
pc1[type]=generic
 
pc2[type]=generic
 
sw1[type]=switch
 
sw2[type]=switch
 
 
 
pc1[eth0]=sw1-port0:ip=192.168.0.1/24
 
pc2[eth0]=sw2-port0:ip=192.168.0.2/24
 
 
 
sw1[eth0]=sw1-port0
 
sw2[eth0]=sw2-port0
 
 
 
# Define em cada switch uma interface bond0 que agrega dois enlaces.
 
# O enlace agregado deve ser composto por uma ou mais interfaces ethernet.
 
# O nome do enlace agregado é sw1-sw2 no exemplo.
 
 
 
sw1[bond0]=sw1-sw2:interfaces=eth1,eth2
 
sw2[bond0]=sw1-sw2:interfaces=eth1,eth2
 
</syntaxhighlight>
 
 
 
Nesse exemplo o enlace agregado foi criado entre os switches ''sw1'' e ''sw2''. Como se pode notar, existe uma opção de configuração adicional ''interfaces'', usada para listar as interfaces ethernet a serem agrupadas. Essas interfaces não devem ser declaradas explicitamente. Além disso, não se podem configurar VLANs na interface agregada (''bond0'' no exemplo).  Por fim, mais de um enlace agregado pode ser criado no mesmo switch, bastando identificá-los por interfaces ''bond'' diferentes (''bond1'', ''bond2'', ...).
 
 
 
O exemplo acima cria a seguinte rede:
 
 
 
[[imagem:Bond.png]]
 
 
 
===Cascateamento versus Empilhamento===
 
 
 
Os switches ainda possuem uma facilidade em nível físico chamada empilhamento (ou stack) que tem a função de ampliar as capacidades de portas sem comprometer significativamente a latência de pacotes em trânsito (fase forwarding). O mais eficiente, porém com mais custo, é o empilhamento por backplane onde um cabo proprietário de comprimento não maior que 1 metro, é conectado entre portas de entrada e saída específicas para este fim, geralmente na trazeira do switch, formando um anel dos swicthes empilhados. Os switches empilhados se comportam como um só e a gerência deles é muito mais facilitada com um único endereço IP. Já o cascateamento usando portas comuns ou portas específicas de altas taxas (fibra) chamadas UPLINK, mesmo usando o agregamento de link exposto na seção anterior, resolve a questão do congestionamento de toda a transferência de dados oriundas/destinadas aos ramos descendentes destas portas mas torna-se difícil a gerência de cada switch e a latência além de reduzir o desempenho da rede pode impedir até o funcionamento de algorítimos como o STP.
 
  
 +
* Finalização dos Slides sobre [http://www.sj.ifsc.edu.br/~casagrande/RED/slides/protocolos_pp.pdf Protocolos HDLC e PPP];
 +
* Explicações adicionais sobre bit e byte stuffing;
  
 
{{Collapse bottom}}
 
{{Collapse bottom}}
  
{{Collapse top |Aula 27 - 04/06 - Parte3: Redes sem Fio e o Padrão IEEE 802.11}}
+
{{Collapse top | 10/03 - Detecção e Correção de Erros}}
  
==Aula 27 - 04/06 - Redes sem fio e o Padrão IEEE 802.11 ===
+
== 10/03 - Detecção e Correção de Erros ==
  
<!-- * [http://tele.sj.ifsc.edu.br/~casagrande/RCO2/listas/2012-1/lista3.pdf 3a lista de exercícios]-->
+
'''Resumo da aula:'''
 
 
* Ver [http://www.sj.ifsc.edu.br/~msobral/RCO2/slides/aula15.pdf slides]
 
* Ver capítulo 15 do livro ''Comunicação de Dados e Redes de Computadores, 3a ed.'', de Behrouz Forouzan.
 
* Ver capítulo 6 do livro ''Redes de Computadores e a Internet, 3a ed.'', de James Kurose.
 
* Ver capítulo 4 (seção 4.4) do livro ''Redes de Computadores, 4a ed.'', de Andrew Tanenbaum.
 
* Ver este [http://www.sj.ifsc.edu.br/~msobral/RCO2/docs/livros/livro-802_11.chm livro on-line] sobre redes IEEE 802.11. (precisa do ''gnochm'' ou ''chmsee'' para ser lido)
 
 
 
=== Introdução ===
 
 
 
Redes sem-fio se tornaram uma tecnologia largamente difundida e de uso corriqueiro, principalmente em sua versão para redes locais. Graças a ela, as pessoas não precisam usar cabos para ter acesso à rede, e podem se comunicar em qualquer localização dentro do alcance da rede sem-fio. Mesmo usuários em movimento podem se manter em comunicação pela rede sem-fio. Essas características atraentes da tecnologia fazem com que ela seja naturalmente desejável nas LANs
 
 
 
A implantação de uma rede sem-fio deve atender alguns requisitos levantados pelo administrador de uma rede, os quais serão discutidos ao longo desta seção. Antes de pensar nos detalhes a serem observados, devem-se conhecer as características de comunicação de dados por um canal sem-fio e os mecanismos inventados para efetuar esse tipo de comunicação.
 
  
=== Alguns usos de redes sem-fio ===
+
* Abordagem sobre erros em sistemas de telecomunicações: Erro de bit, erro de rajada;
 
+
* Uso do campo FCS (Frame Check Sequence) nos protocolos da camada 2 para fins de de detecção de erro;
[[imagem:WLAN-comum.gif]]<br>
+
* Check de paridade simples em sistemas assíncronos de comunicação de dados;
''Redes locais sem-fio''
+
* Paridade bidimensional ou longitudinal;
 
+
* Revisão sobre a técnica de CheckSum;
 
+
* CRC ficou para a próxima aula.
[[imagem:Wireless_point_to_point.jpg]]<br>
 
''Enlaces ponto-a-ponto de média/longa distância''
 
 
 
 
 
[[imagem:Wlan-train.png]]<br>
 
''Prover conectividade em ferrovias''
 
 
 
 
 
[[imagem:Body-network.jpg]]<br>
 
''Redes de dispositivos acoplados ao corpo de uma pessoa''
 
 
 
 
 
[[imagem:SensorWebImageForEnewsJuly2.jpg]]<br>
 
''Redes de sensores''
 
 
 
 
 
[[imagem:v2v.jpg]]<br>
 
''Redes entre veículos (experimental)''
 
 
 
===O Padrão IEEE 802.11===
 
 
 
Dentre as várias tecnologias de comunicação sem-fio existentes, o padrão IEEE 802.11 para redes locais tem ampla utilização. Conhecido popularmente como Wi-Fi (um trocadilho com Hi-Fi, uma qualidade atribuída a aparelhos de som e que significa ''High-Fidelity''), está presente praticamente em todos os lugares hoje em dia - desde escolas, empresas, aeroportos, supermercados, restaurantes, cafés e residências, e até mesmo em espaços abertos de cidades (ver ''Cidades Digitais''). Muitos dos problemas existentes nesse tipo de rede (alguns resolvidos e outros não), e características de funcionamento, são comuns a outras tecnologias menos conhecidas, porém também importantes em suas áreas de aplicação. Por isso nosso estudo se concentrará nesse padrão de redes sem-fio, para conhecê-lo com razoável profundidade. Como consequência, além de entender como funciona uma rede IEEE 802.11, os conhecimentos obtidos habilitarão a compreensão de outras tecnologias de redes sem-fio.
 
 
 
* Apresentaram-se as possíveis formas de organização de uma rede IEEE 802.11:
 
** '''Rede infraestruturada:''' uso de uma estação central, que intermedia as transmissões das demais estações.<br><br>[[imagem:Infrastructure-bss.png]]<br>
 
** '''Rede Ad-Hoc:''' estações se comunicam livremente com suas estações vizinhas.<br><br>[[imagem:Adhoc-bss.png]]<br>
 
** '''Rede Mesh:''' estações se comunicam livremente, mesmo que existam múltiplos saltos (''multihop'').<br><br>[[imagem:Mesh_topology.gif]]<br>
 
  
 
{{Collapse bottom}}
 
{{Collapse bottom}}
  
{{Collapse top |Aula 28 - 05/06 - Parte 3: Desempenho de Redes IEEE 802.11}}
+
{{Collapse top | 12/03 - Interfaces Digitais}}
  
==Aula 28 - 05/06 - Parte 3: Desempenho de Redes IEEE 802.11==
+
== 12/03 - Interfaces Digitais ==
  
=== Teste de desempenho de uma rede IEEE 802.11 ===
+
'''Atenção:''' liberada a [http://tele.sj.ifsc.edu.br/~casagrande/RED/lista1_2014_2.pdf LISTA1] de exercícios para a avaliação A1
 
 
Será feito um  experimento para configurar, usar e verificar a vazão de uma rede local sem-fio IEEE 802.11. Também será investigado o tráfego nessa rede, usando o analisador de protocolo wireshark.
 
 
 
==== Objetivos ====
 
 
 
* configurar uma rede local sem-fio (WLAN)
 
* investigar o funcionamento e desempenho da WLAN
 
 
 
==== Introdução ====
 
 
 
As WLANs IEEE 802.11 podem ser implantadas com ou sem um ponto de acesso (AP – Access Point), que funciona como uma estação-base. O AP auxilia na coordenação do acesso ao meio, e usualmente funciona como uma ponte entre a WLAN e uma LAN cabeada. A figura abaixo mostra WLANs com AP.
 
 
 
[[imagem:WLAN-comum.gif]]
 
 
 
 
 
Um conjunto de estações que se comunica via rede sem-fio é chamado de BSS (Basic Service Set) na terminologia IEEE 802.11. Um conjunto de dois ou mais BSS se chama ESS (Extended Service Set), como pode ser visto na figura abaixo:
 
 
 
 
 
[[imagem:80211-ds.png|400px]]
 
 
 
 
 
O experimento de hoje diz respeito tanto à criação de uma WLAN com um BSS baseado em AP, quanto à investigação da influência de diversos fatores na comunicação entre as estações. Entre esses fatores citam-se a distância para o AP, a existência de obstáculos, a localização espacial, a interferência entre diferentes estações, e a existência de mais de um AP.
 
 
 
==== Roteiro ====
 
 
 
Dois APs têm endereços em suas LANs IP 192.168.1.250 e 192.168.1.251, e estão conectados à rede do laboratório. O experimento implica configurar alguns computadores para serem estações sem-fio na WLAN, e em seguida fazer uma série de experimentos quanto ao funcionamento da WLAN.
 
 
 
# Há interfaces de rede sem fio disponíveis do tipo USB do fabricante TP-linK. Conecte-a ao computador verifique se foi reconhecida (use “ifconfig -a” e procure por interfaces com nome ''ra'').
 
# Para testar a interface, deve-se procurar os APs existentes. Use o Network Manager, que pode ser acessado a partir da barra de tarefas. A rede sem-fio a ser usada tem ESSID “REDES1”. Associe a interface de rede sem-fio a esse ESSID clicando em seu nome na listagem das redes sem-fio mostrada pelo Network Manager.
 
# Usando o comando ''sudo iwconfig'', verifique se seu computador se associou ao AP. Observe também a intensidade do sinal e outras informações sobre o enlace sem-fio. Desative a interface de rede cabeada com comando ''sudo ifconfig eth0 down'', e então teste a comunicação com ''ping 192.168.1.1''. Se não funcionar, revise a configuração da interface sem-fio.
 
# Verifique a que AP sua estação se associou (use iwconfig). Identifique o BSSID, canal de comunicação, intensidade de sinal e taxa de dados obtidos. Confronte esses dados com a configuração e status na interface gráfica de configuração das APs. Para isso basta colocar o endereço IP da AP que voce está associado no browser e inserir o login "admin" (sem preencher o campo senha);
 
# Pode-se medir a vazão entre uma estação sem-fio e uma cabeada (quer dizer, entre a WLAN e a LAN, passando pelo AP), e também entre duas estações sem-fio. Use o aplicativo netperf para medir a taxa de transmissão entre sua estação sem-fio e o computador 192.168.1.1, que está na rede cabeada. Você deve executar este comando: <syntaxhighlight lang=bash>
 
netperf -f k -H 192.168.1.1
 
</syntaxhighlight>Repita a medição várias vezes, anotando os valores obtidos. Qual a média da vazão '''em Mbps''' obtida em suas medições? compare com a taxa atual da associação;
 
# Repita a experiência, porém fazendo a medição entre sua estação sem-fio e a de outra equipe. Qual a vazão obtida nesse caso? Foi melhor ou pior do que no caso da estação cabeada? Qual seria a explicação?
 
# Para verificar o desempenho sob uma maior intensidade de tráfego, todas as equipes devem gerar tráfego intenso simultaneamente em direção à estação 192.168.1.1. Isto deve ser feito da seguinte forma: todas as equipes usam o netperf ao mesmo tempo para medir a capacidade do enlace sem-fio. Quer dizer, todos devem executar sincronizadamente o comando: <syntaxhighlight lang=bash>
 
netperf -f k -H 192.168.1.1
 
</syntaxhighlight>
 
# O experimento do item anterior também pode ser repetido com uma situação mais próxima do real, como o download de um grande arquivo. Assim, todas as equipes devem fazer o download de um arquivo de grande tamanho, usando o comando: <syntaxhighlight lang=bash>
 
wget http://tele.sj.ifsc.edu.br/~msobral/rmu/videos/wsm-bonus4.avi
 
</syntaxhighlight>Repare na taxa de transferência sustentável, e se ela oscila ao longo do tempo.
 
# Use o wireshark para investigar a comunicação pela rede sem-fio (na interface ra0). Repare nos endereços e demais informações dos quadros. <syntaxhighlight lang=bash>
 
sudo wireshark
 
</syntaxhighlight>
 
# Repita a captura de quadros com o wireshark, porém antes execute os seguintes comandos: <syntaxhighlight lang=bash>
 
sudo ifconfig ra0 down
 
sudo iwconfig ra0 mode monitor
 
sudo ifconfig ra0 up
 
sudo wireshark
 
</syntaxhighlight>No wireshark selecione Capture → Options. Escolha a interface ra0, e clique em Start. Observe os quadros coletados, entre eles Beacon, Data, Associate Request. Compare as informações contidas nos quadros com aquelas descritas nos slides sobre redes sem-fio IEEE 802.11. Note também as semelhanças e diferenças com quadros Ethernet.
 
 
 
Leia o conteúdo da seção abaixo e com os dados observados no experimento responda as questões a seguir:
 
 
 
'''Questões para Avaliar o experimento, tipo... pra prova!!!'''
 
* Quais os equipamentos envolvidos na rede sem-fio experimentada? Faça um esboço da rede usada!
 
* Como um dispositivo WSTA entra na rede sem-fio? Existe um procedimento para que isso ocorra?
 
* Como ocorrem as transmissões nessa rede sem-fio? Compare a transmissão de quadros nesse tipo de rede com transmissões em rede ethernet com CSMA/CD.
 
* Qual a taxa de transmissão por quadro ? Existe mais de uma taxa possível? Como isso funciona em uma rede com muitos dispositivos ?
 
 
 
==== Componentes de uma rede sem-fio IEEE 802.11 ====
 
 
 
Uma rede local sem-fio (WLAN) IEEE 802.11 é implantada por um equipamento especial chamado de ''ponto de acesso'' (AP - Access Point). Esse equipamento estabelece uma WLAN, de forma que computadores, smartphones, PDAs, laptops, tablets (e outros dispositivos possíveis) possam se comunicar pelo canal sem-fio. Esses dispositivos são denominados ''estações sem-fio'' (WSTA  - Wireless Station), e se comunicam usando o AP como intermediário. Isso significa que todas as transmissões na WLAN são intermediadas pelo AP: ou estão indo para o AP, ou vindo dele. Além disso, uma WSTA somente pode se comunicar na WLAN se primeiro se associar ao AP - isto é, se registrar no AP, sujeitando-se a um procedimento de autenticação.
 
 
 
Do ponto de vista da organização da WLAN, a menor estrutura possível é o BSS (Basic Service Set), mostrado na figura abaixo. Um BSS é formado por um AP e as WSTA a ele associadas. O BSS possui um nome, identificado pela sigla SSID (Service Set Identifier), que deve ser definido pelo gerente de rede. O BSS opera em um único canal, porém as transmissões podem ocorrer com diferentes taxas de bits (cada quadro pode ser transmitido com uma taxa, dependendo da qualidade do canal sem-fio conforme medida pela WSTA que faz a transmissão). Por fim, apenas uma transmissão pode ocorrer a cada vez, o que implica o uso de um protocolo de acesso ao meio (MAC) pelas WSTA e AP.
 
 
 
 
 
[[imagem:Wlan1.png|300px]]
 
 
 
 
 
O AP opera em nível de enlace, de forma parecida com um switch ethernet (porém sua tarefa é um pouco mais complexa ...). Isso quer dizer que o AP não usa o protocolo IP para decidir como encaminhar os quadros das WSTA, e assim não faz roteamento. Uma consequência desse modo de operação do AP é que a junção de dois ou mais AP por meio de um switch ethernet, com seus respectivos BSS, faz com que WSTAs em diferentes BSS possa se comunicar como se fizessem parte da mesma rede local. A união de dois ou mais BSS, mostrada na figura a seguir, se chama ESS (Extended Service Set). Em um ESS, todos os BSS possuem o mesmo SSID. No entanto, ao se criar um ESS deve-se cuidar para evitar que BSS vizinhos usem o mesmo canal.
 
 
 
[[imagem:Wlan2.png|800px]]
 
 
 
 
 
As redes IEEE 802.11b e IEEE 802.11g usam a frequência 2.4 GHz para seus canais, que são espaçados a cada 5 MHz. As redes IEEE 802.11a e IEEE 802.11n usam a frequência de 5 GHz. No caso de IEEE 802.11g, ainda a mais comum de ser usada, os canais são numerados de 1 a 11. Apesar de haver 11 canais, apenas três deles (no máximo) não apresentam sobreposição. Isso se deve à modulação OFDM usada nessa rede, que na prática ocupa uma largura de banda de pouco mais de 20 MHz. A tabela abaixo mostra os canais usados em IEEE 802.11g, indicando a lista de canais interferentes de cada canal.
 
 
 
[[imagem:Wlan-canais.png]]
 
 
 
===== Sistemas de Distribuição =====
 
 
 
 
 
Em uma rede IEEE 802.11, vários BSS podem se combinar para formarem um ESS (Extended Station Set). A interligação entre os AP deve ser feita em nível de enlace, seja por uma rede cabeada ou por links sem-fio. Essa interligação é denominada Sistema de Distribuição, estando exemplificada na figura abaixo:
 
 
 
 
 
[[imagem:80211-ds.png|400px]]
 
 
 
 
 
O sistema de distribuição funciona como uma ponte entre as WSTA, como mostrado na figura abaixo. Assim, se dois AP forem interligados, as WSTA que pertencem a seus BSS poderão se comunicar como se estivessem na mesma rede local.
 
 
 
 
 
[[imagem:80211-ds2.png|400px]]
 
 
 
 
 
A cobertura de uma área envolve um planejamento que leve em conta as taxas mínimas desejáveis e as características dos equipamentos (potências de transmissão e ganhos de antenas) e do ambiente (existência de obstáculos, reflexões, e fontes de ruído). Além disso, deve-se minimzar a interferência entre BSS vizinhos, o que pode ser feito escolhendo-se canais que não se sobreponham. A figura abaixo mostra conceitualmente como se podem escolher os canais dos AP para atingir esse objetivo.
 
 
 
[[imagem:80211-freq-planning.png]]
 
 
 
 
 
Desta forma, podem-se criar BSS para cobrir uma área e aproveitar melhor a capacidade do meio de transmissão.
 
 
 
[[imagem:80211-cobertura.png]]
 
 
 
Deve-se levar em conta que a qualidade do sinal tem relação com a modulação usada (e da taxa de dados), assim o limiar entre um BSS e outro depende de como as estações medem a qualidade de sinal e quais as taxas mínimas aceitáveis. A figura abaixo ilustra possíveis alcances para diferentes taxas de dados.
 
 
 
[[imagem:80211-ranges-rates.png|400px]]<br>
 
''Taxas em função da distância do AP (exemplo, pois depende das condições do ambiente e dos equipamentos)''
 
 
 
===== Autenticação e associação =====
 
 
 
Originalmente foi definido na norma IEEE 802.11 que uma estação precisa se autenticar e associar a um BSS para poder transmitir dados. Em sua forma mais simples, esses procedimentos demandam apenas quatro quadros de controle no total, sendo dois para cada operação. A sequência de autenticação em sua forma  mais simples é denominada ''Autenticação aberta'', mostrada abaixo:
 
 
 
[[imagem:80211-auth.png]]<br>
 
''Autenticação aberta''
 
 
 
 
 
Como se pode ver, chamar essa operação de autenticação é forçar o uso desse termo porque o AP (que controla o BSS) não confere a identidade informada pela estação. Assim, outra forma de autenticação foi criada para conferir a informação passada pela estação, além de negociar chave de encriptação para ter o sigilo das comunicações. Esse novo método se chama ''Autenticação com chave compartilhada'', sendo implementado pelo WEP (e lembre que isso é inseguro e não deve ser usado em redes reais ;-):
 
 
 
[[imagem:80211-shared-key-auth.png]]<br>
 
''Autenticação com chave compartilhada''
 
 
 
Uma vez estando a estação em estado autenticado, deve ocorrer a associação com o AP. Na associação o AP registra a existência da estação de forma que o sistema de distribuição (''DS'', que interliga os AP) saiba em que AP se encontra essa estação e possa assim lhe encaminhar quadros. A norma IEEE 802.11 proíbe explicitamente a associação a mais de um AP simultaneamente.
 
 
 
[[imagem:80211-associate.png]]<br>
 
''Associação com AP''
 
 
 
===== Transição de BSS =====
 
 
 
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'').
 
 
 
[[imagem: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 (aberto, WPA-PSK à esquerda, ou WPA-EAP à direita)
 
 
 
[[imagem:Auth-rsn1.png]]  [[imagem:Auth-eap.png|400px]]
 
 
 
 
 
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 [http://en.wikipedia.org/wiki/IEEE_802.11r-2008 IEEE 802.11r] propõe um mecanismo para acelerar a autenticação. Porém o atraso de varredura ainda está por melhorar ...
 
 
 
===== Medição da qualidade de enlace =====
 
 
 
Em um [http://www.wirelessforums.org/hardware-discussion/measuring-link-quality-4809.html forum] encontrou-se o seguinte questionamento:
 
 
 
<syntaxhighlight lang=text>
 
Hello,
 
  
 +
'''Resumo da aula:'''
  
the 802.11 standard specifies that link quality should be (for DSSS modulation) calculated from the correlation value obtained
+
* Técnicas polinomiais na detecção e correção de erros na formação do FCS com códigos cíclicos CRC;
when code lock is achieved between the local PN code and the incoming PN codes.
+
* Início dos slides sobre [http://www.sj.ifsc.edu.br/~casagrande/RED/slides/InterfacesDigitais.pdf Interfaces Digitais]  
 
 
In practice however I am convinced that Wi-Fi cards' producers do not calculate it in this way but rather by the percentage of
 
correctly recieved bits or as the difference between signal strength and noise level.
 
 
 
I am currently doing some research on the possibility of using a 802.11 signal in a Wi-Fi LAN for locational purposes and I
 
would like to consider all the information available to estimate a terminal's position. That includes, signal strength, noise
 
level and link quality. However I cannot use link quality if I am not sure of how it is calculated.
 
 
 
Does anyone know how I can find a Wi-Fi card whose vendors specify their method of determining the link quality? Or a card from
 
which I can extract a link quality according to the definition of the standard?
 
</syntaxhighlight>
 
 
 
Há  também um outro [http://www.rigacci.org/wiki/doku.php/doc/appunti/linux/sa/wifi_signal_quality bom texto], com explicações sobre muitos termos usados quando se trata da qualidade do link (tais como RSSI e SNR).
 
 
 
O texto acima questiona como se faz a medição de qualidade de enlace em uma rede sem-fio IEEE 802.11.  Nele se observa que a norma define como se deve fazer isso, mas os  fabricantes provavelmente  não seguem isso à risca. Partindo desse texto, pesquise como um determinado fabricante ou modelo de interface de rede faz essa medição (ex: Atheros, D-Link, Ralink, Intel, Broadcom, ...).
 
 
 
=== Melhorias no padrão IEEE 802.11n ===
 
 
 
Ver [http://tele.sj.ifsc.edu.br/~msobral/RCO2/docs/WFA_802_11n_Industry_June07.pdf este artigo da WiFi Alliance]. A tabela abaixo sumariza as melhorias criadas nesse padrão.
 
 
 
[[image:80211n-melhorias.png|600px]]
 
 
 
 
 
=== Simulações (animações) sobre CSMA/CA ===
 
 
 
** [http://media.pearsoncmg.com/aw/aw_kurose_network_2/applets/csma-ca/withouthidden.html CSMA/CA sem nodos escondidos (Kurose)]
 
** [http://media.pearsoncmg.com/aw/aw_kurose_network_2/applets/csma-ca/withhidden.html CSMA/CA com nodos escondidos (Kurose)]
 
 
 
  
 
{{Collapse bottom}}
 
{{Collapse bottom}}
  
{{Collapse top |Aula 29 - 11/06 - Redes Ad-hoc, Redes Mesh e Redes Infraestruturadas}}
+
{{Collapse top | 17/03 - Desempenho de protocolos PPP e HDLC}}
  
==Aula 29 - 11/06 - Redes Ad-hoc, Redes Mesh e Redes Infraestruturadas==
+
== 17/03 - Desempenho de protocolos PPP e HDLC ==
  
 +
'''Resumo da aula:'''
 +
* Laboratório usando roteadores reais: Comparativo de desempenho com PPP e HDLC.
  
As redes Ad Hoc e Mesh não dependem a rigor de existir uma infraestrutura (a presença de APs no caso das Redes Infraestruturadas) prestabelecida para que as estações possam se comunicar. Nessas formas de organização de redes sem-fio, as estações podem transmitir quadros diretamente entre si, e mesmo entre estações fora do alcance direto. Nesse caso, a transmissão de quadros ocorre em múltiplos saltos (''multihop''), e depende de mecanismos para descobrir caminhos dentro da rede sem-fio. A principal diferença entre redes ad hoc e mesh reside justamente em como se faz a descoberta de caminhos.
+
Para esta atividade já está implementada uma rede composta por três roteadores da Digitel, que estarão interligados como mostrado abaixo:
  
+
[[imagem:Rede-modems.png|600px]]
=== Redes Ad Hoc ===
 
  
'''Características:'''
+
A rede contém dois enlaces dedicados ponto-à-ponto (simulando duas SLDDs formadas por LPCDs à 2 fios) com modems digitais operando a 2 Mbps. Os Modens da DIGITEL modelo DT2048SHDSL estão configurados da seguinte forma: (chaves em ON)
* Ausência de uma estação base (ou ''Access Point'').
+
* Modens do rack central: DIP1-todas; DIP2-7,8; DIP3-todas OFF; DIP4-5 - Modo NTU (terminação de rede), relógio interno, 2048Kbps, e interface V.35 padrão ISO2110;
* Cada estação pode se comunicar diretamente com qualquer outra estação em seu alcance.
+
* Modens do rack direito e esquerdo: DIP1-todas; DIP2-7,8; DIP3-todas OFF; DIP4-5 - Modo LTU (terminação de linha), relógio regenerado, 2048Kbps, e interface V.35 padrão ISO2110;
* Problemas dos nodos  escondidos e expostos se manifestam intensamente.
 
* Demandam roteamento especializado para a descoberta de caminhos, quando necessário fazer encaminhamento em múltiplos saltos.
 
** '''Descoberta de caminhos:''' no caso de redes IEEE 802.11, depende de uso de tecnologia adicional e fora do escopo da rede sem-fio. Por exemplo, se as estações se comunicarem com IPv4 ou IPv6, podem-se usar protocolos de roteamento IP (ex: [http://en.wikipedia.org/wiki/Ad_hoc_On-Demand_Distance_Vector_Routing AODV], [http://en.wikipedia.org/wiki/OLSR OLSR]). Isso demanda a configuração adicional desses protocolos, e não garante uma integração plena com a rede sem-fio - quer dizer, esses protocolos de roteamento podem não conseguir escolher os melhores caminhos, pois podem não ter acesso a todas as informações sobre as qualidades de links entre as estações.
 
  
[[imagem:Adhoc1.jpg]]
+
Todos os roteadores estão configurados com protocolos HDLC em suas interfaces serias WAN e rodando o algoritmo de roteamento RIP em sua forma mais básica para evitar a configuração de rotas estáticas na interligação das LANs do switch direito e esquerdo.
<br>''Podem  possibilitar a criação de uma rede local temporária em um ambiente previamente sem infraestrutura (AP)''
 
  
 +
;Iniciando o experimento
  
[[imagem:Adhocnet.gif|400px]]
+
# Acesse a interface de gerência (console) do roteador R1 ou R2. O roteador R1 está no rack esquerdo, o roteador R3 está no rack central, e R2 está no rack direito. Para acessar a console, faça o seguinte:
<br>''Podem formar redes temporárias entre equipamentos móveis''
+
## Conecte o cabo serial específico na interface serial RS232 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.
 
+
## 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 57600 bps, 8 bits de dados e 1 stop-bit (isso aparece descrito assim: 57600 8N1) e sem controles de fluxo. <syntaxhighlight lang=bash>
 
+
sudo minicom -s
[[imagem:Vanet.gif|400px]]
 
<br>''Podem  ser usadas como base para aplicações inovadoras, como  redes veiculares ''
 
 
 
=== Redes Mesh ===
 
 
 
De forma geral, redes mesh são compostas por um conjunto de nodos capazes de descobrir caminhos dentro da rede, os quais são usados pelos demais nodos da rede para que possam se comunicar. Assim, os nodos roteadores formam uma ''malha'' cujos caminhos idealmente são compostos pelos enlaces de melhor qualidade. Apesar de não existirem estações base (i.e. pontos de acesso), essa rede provê uma certa infraestrutura para que nodos acessem a rede e se comuniquem. Além disso, assume-se que os nodos roteadores sejam estáticos ou possuam baixo grau de mobilidade, de forma que seus enlaces sejam duradouros. Essa forma de organização se apresenta em diferentes redes sem-fio, tais como redes metropolitanas e redes industriais. Recentemente, uma extensão ao padrão IEEE 802.11 vem sendo discutida para possibilitar a formação de redes mesh com esse tipo de rede.
 
 
 
O padrão [http://en.wikipedia.org/wiki/IEEE_802.11s IEEE 802.11s] propõe mecanismos para o estabelecimento de redes mesh. No escopo de redes IEEE 802.11, estações capazes de formarem redes mesh (chamadas de ''mesh points'') descobrem automaticamente suas estações vizinhas e as utilizam para estabelecerem caminhos para outras estações que estejam fora de alcance direto. Para isso, dois componentes importantes da tecnologia foram definidos:
 
* Um estimador de qualidade de enlace para avaliar os enlaces entre estações, e assim poder estabelecer e usar os melhores caminhos dentro da rede.
 
* Um ou mais protocolos de descoberta de caminhos (evita-se o termo ''roteamento'', por estar associado uma função da camada de rede), sendo mandatório o HWMP. Há também o OLSR, que é opcional.
 
 
 
O kernel Linux possui uma [https://github.com/cozybit/open80211s/wiki/HOWTO implementação do IEEE 802.11s] feita em software, explorando a capacidade de muitas interfaces de rede de delegarem as funções de gerenciamento do MAC para o device driver (isso é conhecido como SoftMAC). Assim, pode-se estabelecer e experimentar uma rede mesh IEEE 802.11s usando-se algumas ferramentas do Linux.
 
 
 
===Experimento sobre redes ad hoc e infraestruturadas===
 
 
 
O experimento de hoje diz respeito tanto à criação de uma WLAN com um BSS baseado em AP ou não (ad hoc), quanto à investigação da influência de diversos fatores na comunicação entre as estações. Entre esses fatores citam-se a distância para o AP, a existência de obstáculos, a localização espacial, a interferência entre diferentes estações, e a existência de mais de um AP. O experimento implica configurar um computador para ser uma estação sem-fio na WLAN, e em seguida fazer uma série de experimentos quanto ao funcionamento da WLAN.
 
 
 
====Roteiro====
 
 
 
# Configure um AP com IP da mesma rede do laboratório (ex.:192.168.2.254) com BSSID "AP1", e conecte-o à rede.
 
# Criem pelo menos 4 equipes para criar WSTAs usando interfaces de rede USB sem-fio ou mesmo APs. As Estações podem se comunicar sem a intermediação de um AP. Neste caso, tem-se uma rede sem-fio ad hoc. Isto pode ser útil para criar enlaces temporários entre computadores em ambientes desprovidos de AP. Outra utilidade é a criação de enlaces sem-fio ponto-a-ponto com antenas direcionais. Para criar uma rede ad hoc devem-se configurar as interfaces de rede com os seguintes comandos:<syntaxhighlight lang=bash> ifconfig wlan0 down
 
iwconfig wlan0 essid REDES2 mode Ad-hoc channel 6
 
ifconfig wlan0 10.0.0.X netmask 255.255.255.248 // sendo X um número entre 1 e 6 </syntaxhighlight>
 
# Em seguida teste a comunicação entre os computadores, tentando ping entre eles. Caso não funcione, revise a configuração da interface de rede sem-fio com os comandos do passo anterior.
 
# Faça testes de comunicação com as demais estações sem-fio, usando o netperf: <syntaxhighlight lang=bash> netperf -f k -H IP_de_outra_WSTA </syntaxhighlight>
 
# Após os testes de transmissão com netperf, verifique os contadores de erros de transmissão da interface sem-fio. Em particular, observe “TX excessive retries” (iwconfig), “errors” e “collisions” (ifconfig).
 
# Repita as medições do passo anterior, mas agora operando em modo gerenciado (com AP, infraestruturado). Use: <syntaxhighlight lang=bash> ifconfig wlan0 down
 
iwconfig wlan0 essid REDES2 mode Managed
 
ifconfig wlan0 up </syntaxhighlight> Em qual modo se obteve o melhor desempenho?
 
# Para aproveitar a rede ad hoc recém criada, deve-se usá-la como parte da seguinte rede: [[Arquivo:adhoc.png]]
 
# Nessa rede existem três LANs:
 
#* LAN do laboratório (192.168.x.0/24): possui acesso à Internet pela rede cabeada. Provê acesso às LANs esquerda e direita por meio de um gateway com interface de rede sem-fio;
 
#* LAN esquerda (192.168.100.0/24: composta pelos computadores da bancada da esquerda. O acesso a Internet se faz pelo enlace sem-fio até o gateway existente na LAN do laboratório;
 
#* LAN direita (192.168.200.0/24): composta pelos computadores da bancada da direita. O acesso a Internet se faz pelo enlace sem-fio até o gateway existente na  LAN do laboratório. <br> Note que para as LANs esquerda e direita poderem acessar a Internet, o gateway da LAN do laboratório deve prover NAT a suas respectivas subredes;
 
# Um ESS tem dois ou mais BSS. Até o momento apenas um BSS foi usado. Vamos ativar outro AP em um lado oposto da sala, agora com endereço IP 192.168.x.253 e com mesmo BSSID “AP2” mas com uma potencia de transmissão de 0dBm (1mW). Verifique em qual AP as estações, que estão nesse momento em modo infraestruturado se associam.
 
# Faça uma varredura da rede, para listar as redes existentes com: <syntaxhighlight lang=bash> sudo iwlist wlan0 scan </syntaxhighlight>
 
# Verifique se ambos os APs constam na listagem, e em caso afirmativo, quais suas intensidades de sinal. Configure sua interface de rede para se associar à rede sem-fio, de forma que escolha um dos APs: <syntaxhighlight lang=bash> sudo iwconfig wlan0 essid REDES2 mode Managed
 
#ou voce pode forçar a associação com ou outro AP usando:
 
sudo iwconfig wlan0 essid REDES2 ap AP2 mode Managed
 
 
</syntaxhighlight>
 
</syntaxhighlight>
# Confira qual dos APs foi escolhido. Qual a relação entre intensidade de sinal e a escolha do AP?
+
## 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.
# Quando uma estação se movimenta, saindo do alcance do seu AP e entrando no alcance de outro AP, ocorre sua migração. Essa operação, chamada de '''handover''' implica na associação com o novo AP. Vamos usar um notebook (seu ou do professor) para observar a ocorrência do handover. Movimente o notebook de forma a se distanciar de um AP para o outro, monitorando constantemente o sinal com '''iwlist'''. Em que momento ocorreu o handover? Quanto tempo levou para se efetuar?
+
# O login e senha para acessar a configuração dos routers é "nr2g" e "digitel" respectivamente. Ao entrar na CLI avalie a configuração geral dos routers com o comando DUMP ALL;
# Um bom teste do impacto do handover para estações móveis é observar o handover ocorrer durante um download longo. Voce irá observar este momento quando a taxa de transmissão paralisar ou diminuir drasticamente por alguns segundos.
+
# Voce pode acessar qualquer router usando a facilidade do protocolo telnet. Para tanto, dentro da CLI do router aplique o comando EXEC TELNET [IP da WAN ou LAN]. Voce também podem acessa-los por qualquer computador das redes direita ou esquerda, desde que esses estejam na mesma subrede das interfaces LAN dos routers. Uma vez estando na CLI de um dos routers, voce pode acessar os demais com EXEC TELNET;
 
+
# Observe se a configuração dos routers está como o previsto na janela abaixo. Talvez voce precise ajustar a configuração em algum roteador.
Alguns comandos úteis para ajudar na configuração da rede: <syntaxhighlight lang=bash>
+
# Faça a configuração Básica dos PCs e Roteadores NR2G com HDLC:
#Comandos para visualização e edição do NAT: Para fazer o NAT do tráfego que sai pela interface iface_saida (ex: eth0):
+
#* '''R1:''' <syntaxhighlight lang=text>
iptables -t nat -A POSTROUTING -o iface_saida -j MASQUERADE
+
ESQUERDA >                                                       
 
+
SET LAN LAN0 IP 192.168.20.1 MASK 255.255.255.0 BROADCAST 192.168.20.255       
#Para visualizar as regras do NAT existentes:
+
SET LAN LAN0 UP                                                               
iptables -t nat –L -n -v
+
SET LAN LAN1 PURGE                                                             
 
+
SET WAN WAN0 PROTO HDLC IP 10.1.1.2 MASK 255.255.255.252 PEER 10.1.1.1 UP     
#Comandos para visualização e edição de rotas:
+
SET WAN WAN1 PURGE
#Adicionar a rota default:
+
                                                           
route add default gw IP_gateway
+
SET RIP REDIST-STATIC TRUE REDIST-CONNECTED TRUE REDIST-OSPF FALSE DEFAULTMETRIC 2
 
+
SET RIP WAN0 ENABLED TRUE TYPE ACTIVE                                         
#Remover a rota default:
+
SET RIP WAN0 AUTH TYPE NONE                                                   
route delete default
+
SET RIP UP 
 
+
                                                                   
#Adicionar uma rota estática:
+
SET ROUTES DEFAULT GW1 10.1.1.1 COST1 0                                       
route add -net IP_rede/mascara gw IP_gateway
+
SET ROUTES UP  
 
 
#Remover uma rota estática:
 
route delete -net IP_rede/mascara gw IP_gateway
 
 
 
#Visualizar as rotas:
 
netstat -rn </syntaxhighlight>
 
 
 
 
 
{{Collapse bottom}}
 
 
 
{{Collapse top |Aula 30 - 18/06 - Segurança em redes sem fio }}
 
 
 
==Aula 30 - 18/06 - Segurança em Redes sem fio==
 
 
 
== Uma rede sem-fio para o IFSC-SJ ==
 
 
 
A rede sem-fio do campus Sao Jose do IFSC esta sendo reformulada. A nova rede a ser implantada deve atender os seguintes requisitos:
 
* Apresentar boa cobertura em toda a escola: em todas as localidades do campus, deve-se conseguir uma taxa nominal de ao menos 20 Mbps.
 
* Os usuarios da rede sem-fio devem ter acesso via segmento ''Pegadogica''.
 
* Para acessar a rede sem-fio, os usuarios devem ser autenticados individualmente.
 
* Todas as comunicacoes dos usuarios devem ser encriptadas.
 
 
 
Para servir de piloto, foram instalados tres pontos de acesso na rede, como se pode ver abaixo:
 
 
 
[[imagem:Ifsc-sj-wlan.png|600px]]
 
 
 
Com o que ja estudamos, o que pode ser feito para atender os requisitos dessa rede sem-fio ?
 
 
 
=== Transição de BSS ===
 
 
 
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'').
 
 
 
[[imagem: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 (aberto, WPA-PSK à esquerda, ou WPA-EAP à direita)
 
 
 
[[imagem:Auth-rsn1.png]]  [[imagem:Auth-eap.png|400px]]
 
 
 
 
 
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 [http://en.wikipedia.org/wiki/IEEE_802.11r-2008 IEEE 802.11r] propõe um mecanismo para acelerar a autenticação. Porém o atraso de varredura ainda está por melhorar ...
 
 
 
A qualidade do sinal depende da modulação usada (e da taxa de dados), assim o limiar entre um BSS e outro depende de como as estações medem a qualidade de sinal e quais as taxas mínimas aceitáveis. A figura abaixo ilustra possíveis alcances para diferentes taxas de dados.
 
 
 
[[imagem:80211-ranges-rates.png|400px]]<br>
 
''Taxas em função da distância do AP (exemplo, pois depende das condições do ambiente e dos equipamentos)''
 
 
 
 
 
Esta outra figura ilustra as taxas em função da distância para um cenário sem obstáculos, e assumindo alguns parâmetros típicos de equipamentos (ver o capítulo 23 do livro ''"802.11 Wireless Networks The Definitive Guide"'').
 
 
 
[[imagem:80211-ranges.png]]
 
 
 
Assim, a cobertura de uma área envolve um planejamento que leve em conta as taxas mínimas desejáveis e as características dos equipamentos (potências de transmissão e ganhos de antenas) e do ambiente (existência de obstáculos, reflexões, e fontes de ruído). Além disso, deve-se minimzar a interferência entre BSS vizinhos, o que pode ser feito escolhendo-se canais que não se sobreponham. A figura abaixo mostra conceitualmente como se podem escolher os canais dos AP para atingir esse objetivo.
 
 
 
[[imagem:80211-freq-planning.png]]
 
 
 
 
 
Desta forma, podem-se criar BSS para cobrir uma área e aproveitar melhor a capacidade do meio de transmissão.
 
 
 
[[imagem:80211-cobertura.png]]
 
 
 
== Seguranca ==
 
 
 
* [http://www.sj.ifsc.edu.br/~msobral/RCO2/slides/aula16.pdf Transparências]
 
** [http://www.sj.ifsc.edu.br/~msobral/RCO2/docs/802.1x_book_c2.pdf Capítulo de um livro  sobre IEEE 802.1x]
 
** [http://www.sj.ifsc.edu.br/~msobral/RCO2/docs/WEP2SecurityAnalysis.ppt Uma análise sobre a segurança WEP]
 
** Ver capítulos 5, 6 e 7 do [http://www.sj.ifsc.edu.br/~msobral/RCO2/docs/livros/livro-802_11.chm livro sobre IEEE 802.11]
 
** Ver capítulo 8 (seção 8.6.4) do livro ''Redes de Computadores, 4a ed.'' de Anndrew Tanenbaum.
 
** [http://techdir.rutgers.edu/wireless.html Bom artigo sobre segurança em redes sem-fio]
 
** [http://aboba.drizzlehosting.com/IEEE/ The Unofficial 802.11 Security Web Page]
 
 
 
 
 
* [http://www.sj.ifsc.edu.br/~msobral/RCO2/roteiros/lab18-2010-2.pdf Roteiro do experimento]
 
** [http://www.sj.ifsc.edu.br/~msobral/RCO2/roteiros/lab18 Arquivos para o wpa_supplicant]
 
** [http://www.aircrack-ng.org/ Aircrack-ng] (software para quebrar chaves WEP e WPA-PSK)
 
*** [http://www.aircrack-ng.org/doku.php?id=simple_wep_crack Um guia rápido para quebra de chaves WEP]
 
*** [http://www.aircrack-ng.org/doku.php?id=cracking_wpa Um tutorial sobre como quebrar WPA/WPA2]
 
 
 
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 à [http://en.wikipedia.org/wiki/Wireless_security segurança em redes sem-fio]:
 
 
 
# ''Acesso indevido:'' uso indevido da infraestrutura por pessoas não-autorizadas.
 
# ''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.
 
# ''Infiltração de equipamentos na rede:'' um ou mais pontos de acesso podem ser infiltrados na rede sem-fio (chamados de [http://en.wikipedia.org/wiki/Rogue_access_point ''Rogue AP'']), 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.
 
 
 
 
 
Adicionalmente, [http://www.esecurityplanet.com/views/article.php/3869221/Top-Ten-WiFi-Security-Threats.htm este site] lista 10 ameaças à segurança de redes sem-fio. E [http://www.techrepublic.com/blog/security/10-wi-fi-security-tips/364 este outro] apresenta 10 dicas para melhorar a segurança de uma rede sem-fio (apesar de ter sido escrito em 2007, isso ainda são válidas).
 
 
 
 
 
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 a técnica de [http://en.wikipedia.org/wiki/Wardriving WarDriving], em que uma pessoa investiga a existência de redes sem-fio a partir de um carro que trafega pelas ruas.
 
 
 
[[imagem:View_from_Wardriver_Windshield.jpg]]
 
 
 
Existem inclusive símbolos ([http://pt.wikipedia.org/wiki/Warchalking ''warchalking'']) usados para indicar em ruas e edifícios a existência de redes sem-fio abertas. Esta rápida explicação sobre ''warchalking'' foi obtida em um [http://www.clubedowarchalking.com.br/index.php?option=com_content&view=article&id=43&Itemid=53 artigo sobre WarChalking]:
 
 
 
<syntaxhighlight lang=text>
 
  O warchalking foi criado pelo web designer Matt Jones que, enquanto almoçava com dois amigos, viu alguns estudantes
 
utilizando conexões wireless para trabalhar a partir de uma praça pública, como se fosse um escritório. Um dos amigos de
 
Matt lembrou-se de uma “linguagem” de sinais utilizada por mendigos e viajantes com o objetivo de informar onde poderiam
 
achar comida grátis, uma cama confortável ou até mesmo encrenca, e surgiu a idéia de demarcar a presença de redes wireless
 
com sinais parecidos.
 
 
</syntaxhighlight>
 
</syntaxhighlight>
 
+
#* '''R2:''' <syntaxhighlight lang=text>
 
+
DIREITA >         
Os símbolos do ''warchalking'' são:
+
SET LAN LAN0 IP 192.168.10.1 MASK 255.255.255.0 BROADCAST 192.168.10.255       
 
+
SET LAN LAN0 UP                                                               
[[imagem:Warchalking2.jpg]]
+
SET LAN LAN1 PURGE                                                             
 
+
SET WAN WAN0 PROTO HDLC IP 10.1.1.6 MASK 255.255.255.252 PEER 10.1.1.5 UP     
 
+
SET WAN WAN1 PURGE
Assim, uma rede sem-fio minimamente bem configurada 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:
+
                                                           
 
+
SET RIP REDIST-STATIC TRUE REDIST-CONNECTED TRUE REDIST-OSPF FALSE DEFAULTMETRIC 2
[[imagem:Wifi-security1.png]]
+
SET RIP WAN0 ENABLED TRUE TYPE ACTIVE                                         
 
+
SET RIP WAN0 AUTH TYPE NONE                                                   
 
+
SET RIP UP 
Para tratar essas questões, deve haver mecanismos de segurança que contemplem os seguintes requisitos:
+
                                                                   
 
+
SET ROUTES DEFAULT GW1 10.1.1.5 COST1 0                                       
# ''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.
+
SET ROUTES UP
# ''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.
 
# ''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.
 
 
 
O primeiro mecanismo de segurança para redes IEEE 802.11 foi WEP (''Wired Equivalent Privacy''), que foi projetado para prover um acesso com mesmo nível de segurança que acesso cabeado. O acesso à rede é concedido a quem conhecer uma senha compartilhada, sendo que as comunicações entre usuários e ponto de acesso são encriptadas (cada usuário obtém uma chave exclusiva, que é gerada durante a negociação inicial com o AP). Na prática, WEP procura prover somente o serviço de sigilo, e nem isso faz bem feito. O seguinte [http://en.wikipedia.org/wiki/Wireless_security fragmento de texto obtido na Wikipedia] explica porque atualmente '''WEP não deve ser usado em hipótese alguma''':
 
 
 
<syntaxhighlight lang=text>
 
WEP is one of the least secure forms of security. A network that is secured with WEP has been cracked in 3 minutes
 
by the FBI.[1] WEP is an old IEEE 802.11 standard from 1999 which was outdated in 2003 by WPA or
 
Wi-Fi Protected Access.
 
 
</syntaxhighlight>
 
</syntaxhighlight>
 
+
#* '''R3:''' <syntaxhighlight lang=text>
Há outros 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), e que estão definidos no padrão [http://en.wikipedia.org/wiki/IEEE_802.11i IEEE 802.11i]. 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.
+
CENTRAL >                                                             
 
+
SET LAN LAN0 IP 192.168.1.231 MASK 255.255.255.0 BROADCAST 192.168.1.255 UP     
[[imagem:Wifi-auth.jpeg]]
+
SET LAN LAN1 PURGE                                                             
 
+
SET WAN WAN0 PROTO HDLC IP 10.1.1.5 MASK 255.255.255.252 PEER 10.1.1.6 UP
Além dos mecanismos WPA, definidos na norma [http://en.wikipedia.org/wiki/IEEE_802.11i-2004 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| Projeto Integrador 2009.2]] as equipes implantaram uma infra-estrutura que usava essa técnica.
+
SET WAN WAN1 PROTO HDLC IP 10.1.1.1 MASK 255.255.255.252 PEER 10.1.1.2 UP
 
+
                                                     
=== Vulnerabilidade também no WPA2 ??? ===
+
SET RIP REDIST-STATIC TRUE REDIST-CONNECTED TRUE REDIST-OSPF FALSE DEFAULTMETRIC 2
 
+
SET RIP WAN0 ENABLED TRUE TYPE ACTIVE                                         
O Maykon Chagas contribuiu com [http://lifehacker.com/5873407/how-to-crack-a-wi+fi-networks-wpa-password-with-reaver um artigo] sobre um software chamado [http://www.tacnetsol.com/products/ Reaver], que é capaz de quebrar a chave WPA-PSK ou WPA2-PSK de um ponto de acesso. Parece que realmente isso é possível, porém de acordo com [http://arstechnica.com/business/2011/12/researchers-publish-open-source-tool-for-hacking-wifi-protected-setup/ este outro artigo] existe uma precondição: o ponto de acesso precisa usar WPS (WiFi Protected Setup), um padrão criado para facilitar a configuração do acesso a redes WiFi com WPA2. Assim, se um ponto de acesso não possui suporte a WPS, ou ele estiver desativado, o método descrito não pode ser usado.
+
SET RIP WAN0 AUTH TYPE NONE                                                   
 
+
SET RIP WAN1 ENABLED TRUE TYPE ACTIVE                                         
A introdução do [http://en.wikipedia.org/wiki/Wi-Fi_Protected_Setup artigo sobre WPS na Wikipedia] explica o propósito desse padrão. De acordo com ele, busca-se evitar que seja preciso digitar longas senhas de acesso, algo necessário para que não sejam facilmente descobertas. Com isso, usuários poderiam ter o acesso facilitado à rede, tendo o benefício de um maior nível de segurança provido pela encriptação usada em WPA2-PSK. Porém o mecanismo implantado no WPS possui ao menos uma grave falha de projeto, que abriu uma brecha de segurança que possibilita descobrir a senha WPA2-PSK em poucas horas.
+
SET RIP WAN1 AUTH TYPE NONE                                                   
 
+
SET RIP UP                                                                     
<syntaxhighlight lang=text>
+
                                             
Wi-Fi Protected Setup (WPS; originally Wi-Fi Simple Config) is a computing standard that attempts to
+
SET ROUTES DEFAULT GW1 192.168.1.1 COST1 0                                     
allow easy establishment of a secure wireless home network.
+
SET ROUTES UP
 
 
Created by the Wi-Fi Alliance and introduced in 2007, the goal of the protocol is to allow home users
 
who know little of wireless security and may be intimidated by the available security options to set
 
up the encryption method WPA2, as well as making it easy to add new devices to an existing network
 
without entering long passphrases. Prior to the standard, several competing solutions were developed
 
by different vendors to address the same need, including Broadcom's SecureEasySetup, Buffalo Inc.'s
 
AOSS, Atheros's JumpStart, Intel's Smart Wireless Technology, and Microsoft's Windows Connect Now.[1]
 
 
 
WPS has been shown to easily fall to brute-force attacks.[2] A major security flaw was revealed in
 
December 2011 that affects wireless routers with the WPS feature, which most recent models have
 
enabled by default. The flaw allows a remote attacker to recover the WPS PIN and, with it, the
 
network's WPA/WPA2 pre-shared key in a few hours.[3] Users have been urged to turn off the WPS
 
feature,[4] although this may not be possible on some router models.[5]
 
 
</syntaxhighlight>
 
</syntaxhighlight>
 
+
# Para conferir as configurações das interfaces, use o comando ''show'' seguido da interface. Exemplo: <syntaxhighlight lang=text>
Nesse mesmo artigo sobre WPS, uma seção explica o princípio do ataque:
+
# SHOW WAN WAN0 ALL
 
 
<syntaxhighlight lang=text>
 
In December 2011 researcher Stefan Viehböck reported a design and implementation flaw that makes
 
brute-force attacks against PIN-based WPS feasible to perform on WPS-enabled Wi-Fi networks. A
 
successful attack on WPS allows unauthorized parties to gain access to the network. The only
 
effective workaround is to disable WPS.
 
 
 
The vulnerability centers around the acknowledgement messages sent between the registrar and
 
enrollee when attempting to validate a PIN. The PIN, which is printed on the side of each
 
WPS-enabled Wi-Fi router, is an eight digit number. Since the last digit is a checksum of
 
the previous digits,[6] there are seven unknown digits in each PIN, yielding 107 = 10,000,000 possible combinations.
 
 
 
When an enrollee attempts to gain access using a PIN, the registrar reports the validity of
 
the first and second halves of the PIN separately. Since the first half of the pin consists
 
of four digits (10,000 possibilities) and the second half has only three active digits
 
(1000 possibilities), at most 11,000 guesses are needed before the PIN is recovered. This
 
is a reduction by four orders of magnitude from the number of PINs that would have to be
 
tested absent the design flaw. As a result, a practical attack can be completed in just
 
a few hours. The ease or difficulty of exploiting this flaw is implementation dependent,
 
as Wi-Fi router manufacturers could defend against such attacks by slowing or disabling
 
the WPS feature after several failed PIN validation attempts.
 
 
 
 
</syntaxhighlight>
 
</syntaxhighlight>
 
+
# Assim que os enlaces forem estabelecidos, o que pode ser conferido com o comando ''show'' interface aplicado às interfaces, ''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:
Esse fato só reforça o que discutimos em aula: à medida que o nível de segurança aumenta, os procedimentos de acesso se complicam. Pode-se emendar que atalhos que procurem atenuar o que diz essa regra apresentam um bom risco de prejudicarem o sistema de segurança.
+
#* 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
 +
# Observe que optamos pelo uso de protocolos de roteamento dinâmico. Procure entender melhor como foi feita essa configuração, a partir do que está no manual, começando pela página 82.
 +
# Para o PC do professor aplique os comandos: <syntaxhighlight lang=bash>
 +
$ 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
 +
$ sudo route add -net 192.168.10.0 netmask 255.255.255.0 gw 192.168.1.231
 +
$ sudo route add -net 192.168.20.0 netmask 255.255.255.0 gw 192.168.1.231 </syntaxhighlight>
 +
# Para os PCs das subredes direita e esquerda: <syntaxhighlight lang=bash>
 +
$ 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.1 - x={10,20} </syntaxhighlight>
 +
# Agora vamos analisar a conectividade  de todas as subredes, incluindo o acesso à internet. Após isso vamos fazer uma avaliação sobre o desempenho dessa conectividade comparando os links com PPP e HDLC entre os roteadores.
 +
# Veja se o status das interfaces e protocolos da WAN e LAN de todos os routers estão em UP. Anote e avalie a configuração de todos os routers e os PCs das duas LANs direita e esquerda.
 +
# Verificar e anotar todas as configurações e instalações dos componentes de redes, modens, cabos, adaptadores, manobras dos cabos, etc...
 +
# Verificar e anotar todas as configurações lógicas dos modens, routers e PCs.
 +
# 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 SOMENTE COM UM ÚNICO PC. Em algum computador da subrede esquerda ou direita execute:<syntaxhighlight lang=bash> netperf -f k -H 192.168.1.1</syntaxhighlight>
 +
# Teste o delay médio da comunicação usando PING aplicado em algum PC da outra subrede.
 +
# Teste a vazão pelos enlaces ponto-a-ponto COM TODOS OS PCs SIMULTANEAMENTE (solicite ao professor para sincronizar o teste de todos). Em todos os  computadores das subredes esquerda e direita execute:<syntaxhighlight lang=bash> netperf -f k -H 192.168.1.1</syntaxhighlight>
 +
# Realize pelo menos três medidas para cada teste e use a média desses valores como resultado final;
 +
# Excute o ''netperf'' entre computadores da ''mesma subrede'', anote os valores e compare com as medidas anteriores;
  
  
 
{{Collapse bottom}}
 
{{Collapse bottom}}
  
{{Collapse top |Aula 31 - 25/06 - MPLS }}
+
{{Collapse top |24/03 - <math>\blacklozenge</math> Comparação de Desempenho entre Protocolos Ponto à Ponto e Frame Relay }}
  
==Aula 31 - 25/06 - MPLS==
+
==24/03 - <math>\blacklozenge</math> Comparação de Desempenho entre Protocolos Ponto à Ponto e Frame Relay==
  
 +
# Recupere a comunicação física e os dados levantados da implementação da aula anterior da rede formada com enlaces ponto à ponto com protocolo HDLC;
 +
# Agora troque o protocolo HDLC dos enlaces por PPPS (protocolo PPP Síncrono - veja pg. 76 do manual). Faça isso primeiramente no router R3 (central) pois será perdido enlace com ele quando mudar o protocolo. Como exemplo, para trocar a configuração na interface WAN0 execute o comando: <syntaxhighlight lang=text>  SET WAN WAN0 PROTO PPPS IP 10.1.1.5 MASK 255.255.255.252 PEER 10.1.1.6 UP </syntaxhighlight> Faça o mesmo para a WAN1 do router central e WAN0s dos routers esquerdo e direito. Não esqueça de aplicar o comando CONFIG SAVE para salvar a configuração atual. Observe o estado dos leds que indicam a presença de dados protocolados entre routers, tanto no frontal dos modens quanto no frontal dos routers. Eles ficaram apagados por um tempo mas devem retornar a acender depois de uns dois ou tres minutos. O led ST no frontal dos routers deve ficar na cor laranja indicando a queda dos links e depois de um tempo devem retornar a cor verde quando tudo estiver ok.
 +
# Repita e anote as mesmas medições de vazão conforme feito anteriormente com protocolo HDLC;
 +
# <math>\blacklozenge</math> '''DESAFIO''': Esta atividade faz parte da avaliação '''AE1''', veja mais detalhes com o professor: Acrescente mais uma rede na LAN1 do router central com endereço 192.168.30.0 também com 4 PCs e implemente uma rede Frame Relay para as 3 redes agora existentes. Determine um CIR de entrada (descida ou download) para todas elas de 1Mbps e um CIR de saída (subida ou upload) para todas elas de 512kbps. Realize novamente as medidas de delay e vazão para a host 192.168.1.1 assim como feito anteriormente para HDLC e PPP. Tabule e discuta os resultados alcançados com as 3 implementações.
  
 
{{Collapse bottom}}
 
{{Collapse bottom}}
  
{{Collapse top |Aula 32 - 26/06 - MPLS }}
+
{{Collapse top | 26/03 - Exercícios}}
  
==Aula 32 - 25/06 - MPLS==
+
== 26/03 - Exercícios ==
  
 +
* Exercícios 4, 5 e 6 da [http://tele.sj.ifsc.edu.br/~casagrande/RED/lista1_2014_2.pdf LISTA1];
 +
* Recapitulação do conteúdo.
  
 
{{Collapse bottom}}
 
{{Collapse bottom}}
  
{{Collapse top |Aula 33 - 02/07 - MPLS }}
+
{{Collapse top | 31/03 - Final de Interfaces Digitais}}
  
==Aula 33 - 02/07 - MPLS==
+
== 31/03 - Final de Interfaces Digitais ==
  
{{Collapse bottom}}
+
'''Resumo da aula:'''
 
 
{{Collapse top |Aula 34 - 03/07 - Avaliação A2 }}
 
 
 
==Aula 34 - 03/07 - Avaliação A2==
 
* Avaliação A2 - Parte 2 e Parte 3
 
 
 
{{Collapse bottom}}
 
 
 
{{Collapse top |Aula 35 - 09/07 - Apresentação Pesquisa de Campo }}
 
 
 
==Aula 35 - 09/07 - Apresentação Pesquisa de Campo==
 
  
* Tempo restante após apresentações usado para tira-dúvidas para a recuperação
+
* Finalização dos slides sobre [http://www.sj.ifsc.edu.br/~casagrande/RED/slides/InterfacesDigitais.pdf Interfaces Digitais];
 +
* Verificar e anotar todos os componentes nas conexões físicas entre modens, routers e PCs do laboratório realizado na aula de 19/03.
 +
* As duas aulas do período da tarde serão utilizadas para finalização das medidas de desempenho com PPP e implementação da rede Frame-Relay proposta na ativiade AE1.
  
 
{{Collapse bottom}}
 
{{Collapse bottom}}
  
{{Collapse top |Aula 36 - 10/07 - Parte 4: Encerramento da Disciplina }}
 
 
==Aula 36 - 10/07: Encerramento da Disciplina==
 
* Avaliações de Recuperação A1 e A2
 
 
{{Collapse bottom}}
 
  
 
{{ENGTELECO}}
 
{{ENGTELECO}}

Edição das 12h14min de 26 de março de 2015

Professores da Unidade Curricular


Carga horária, Ementas, Bibliografia

Plano de Ensino

Dados Importantes

Professor: Jorge Henrique B. Casagrande
Email: casagrande@ifsc.edu.br
Atendimento paralelo: 3as das 11:35 às 12:25h e 5as feira das 17:35h - 18:25 (Sala dos professores de TELE - ao lado da reprografia)
Endereço do grupo: https://www.facebook.com/groups/667983626639907/
Link alternativo para Material de Apoio da disciplina: http://www.sj.ifsc.edu.br/~casagrande/RED
Muitos conteúdos da disciplina estão sendo extraídos do material do professor Marcelo Sobral o qual já registro aqui meus agradecimentos pela autorização e apoio. Alguns deles foram inseridos ou adaptados para se ajustar ao planejamento ou perfil da turma.

Toda vez que voce encontrar a marcação ao lado de alguma atividade, significa que essa atividade estará sendo computada na avaliação como AE ou AI. 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!

Avaliações

Resultados das Avaliações

Aluno AE1 AE2 [AI] A1 A2 A3 A4 A5 REC A1 REC A2 REC A3 REC A4 REC A5 MÉDIA NF CONCEITO
Adalvir
Clarice
Fernando
Gabriel
Giulio
Gustavo V.
João
Lucas
Ronaldo
Stephany
Vinícius
Walter

LEGENDA E DETALHES

AE = Atividades Extras
10% da Avaliação - abrange uma ou mais tarefas a serem divulgadas ao longo do semestre;
AI = Avaliação Individual
10% da Avaliação final - abrange desempenho, assiduidade, cumprimento de tarefas em sala ou de listas de exercícios;
An = Avaliação n
20% da Avaliação (n=4) - Programadas para cada parte do programa;
REC An = Recuperação da Avaliação An
A recuperação de todas An serão em data única e o aluno só tem a obrigação de recuperar An<60;
NF = Nota Final com critério de arredondamento de +/-5 pontos considerando a fórmula abaixo
NF = 0,16(soma{MaiorNota{An,REC An}}) + 0,1(médiaAE) + 0,1(AI)

Se NF < 6,0 = D --> Reprovado
Se 60 =< NF < 75 = C --> Aprovado
Se 75 =< NF < 90 = B --> Aprovado
Se NF >= 90 = A --> Aprovado

Recados Importantes


05/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.


05/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.

Material de Apoio

Atividades extra sala de aula
  • LISTA1 de exercícios para a avaliação A1
Slides utilizados durante algumas aulas
Manuais e outros


Bibliografia

  • Redes de Computadores e a Internet, 5a edição, de James Kurose.
  • Redes de Computadores, 4a edição, de Andrew Tanenbaum.
  • Comunicação de Dados e Redes de Computadores, 4a edição, de Behrouz Forouzan.

Para pesquisar o acervo das bibliotecas do IFSC:

Softwares

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

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

05/02 - Redes de Longa Distância - WAN

05/02 - Redes de Longa Distância - WAN

  • Apresentação da disciplina;
  • Visão geral de uma WAN;
  • Componentes de uma infra-estrutura de telecomunicações;
10/02 - Redes Privativas

10/02 - Redes Privadas

  • O modelo básico de comunicação de dados;
  • Evolução das Redes Locais baseadas em hospedeiros para as Redes Privativas de longa distância;
  • Da Unidade de Derivação Digital (UDD) para os ServerSwitches ou switches KVM;
  • A Linha Privativa de Comunicação de Dados (LPCD);
  • O Serviço de Linha Dedicada Digital (SLDD) como base na formação de Redes Privativas;
12/02 - Redes de Circuitos Virtuais

12/02 - Redes de Circuitos Virtuais

  • Experimento: Comunicação entre Computadores via porta serial;
  • A banda passante e os meios metálicos de transmissão;
  • O exemplo da evolução do backbone da RNP;
  • A Multiplexação como solução no compartilhamento e otimização do uso de enlaces de transmissão.


24/02 - Redes de Circuitos Virtuais - Frame Relay e MPLS

24/02 - Redes de Circuitos Virtuais - Frame Relay e MPLS

  • Redes de Circuitos Virtuais - Frame Relay e ATM;
  • Redes virtuais com MPLS;
  • Experimento com netkit: Rede MPLS


MPLS é um mecanismo para redes de telecomunicações de alto desempenho que encaminha e transporta dados de um nó da rede a outro. Isso se faz por meio de links virtuais entre nós distantes um do outro, semelhante ao conceito de circuitos virtuais. Diversos protocolos podem ser transportados por MPLS, tais como IP e Ethernet (note que o primeiro é um protocolo de rede, mas o segundo é um "protocolo" de enlace). Assim, MPLS se apresenta como uma tecnologia de transporte de dados em redes de longa distância, como ilustrado na figura abaixo.

Mpls-network.jpg

Simplificadamente, um cabeçalho (shim header) é adicionado a cada PDU a ser transportada pela rede MPLS. O rótulo contém um número identificador chamado de rótulo (label, e similar ao VCI visto em circuitos virtuais), junto com alguns bits de controle. Os roteadores dentro da rede MPLS encaminham essas PDUs com base somente no conteúdo desse cabeçalho, comutando-os de acordo com os valores de rótulo (label switching). Note que MPLS não faz roteamento, e sim comutação de circuitos virtuais: os circuitos devem ser previamente estabelecidos para que o encaminhamento de PDUs entre origem e destino possa ser realizada. Desta forma, MPLS parece ser um protocolo que fica entre as camadas de rede e de enlace, como mostrado na figura a seguir.

Mpls protocolstack.jpg ----> MPLS D2.gif


O cabeçalho MPLS possui apenas 32 bits, como mostrado abaixo. O valor de rótulo ocupa 20 bits, o que possibilita pouco mais de 1 milhão de diferentes rótulos (). Há um campo Time To Live (ou simplesmente TTL) com 8 bits, com mesma finalidade que o campo homônimo existente em PDUS IPv4: evitar que um erro de configuração em um roteador faça com que PDUs fiquem circulando eternamente em um loop na rede. O valor desse campo TTL é decrementado por cada roteador que encaminhe a PDU e, se o valor chegar a 0, a PDU é descartada. O campo Exp com 3 bits foi pensado para codificar a classe de serviço da PDU, a qual pode ser usada por mecanismos de qualidade de serviço (QoS) existentes na rede. Por exemplo, o valor de Exp pode ser usado como prioridade da PDU em um determinado roteador dentro da rede MPLS. Por fim, o bit S (bottom of stack) informa se esse é o último cabeçalho MPLS na PDU, uma vez que podem-se empilhar dois ou mais desses cabeçalhos.


Mpls-label.png


A terminologia MPLS possui nomes próprios para diversos componentes da arquitetura. Como ocorre em outras tecnologias, existem conceitos conhecidos apresentados porém com nomes diferentes. A tabela abaixo descreve alguns termos importantes existentes no MPLS:


Termo Descrição
LSP Label Switching Path, o análogo a circuito virtual.
LSR Label Switching Router, ou roteador capaz de comutar PDUs MPLS.
LER Label Edge Router, ou roteador que faz a interface entre a rede MPLS (onde se encaminham PDUs exclusivamente com base nos rótulos), e a rede externa (onde não se usa MPLS). A rede externa pode ser qualquer outra rede, como IPv4, IPv6 ou mesmo LAN Ethernet. Note que LER é um tipo especial de LSR, e podem ser denominados também como LSR ingress (LSR de entrada na rede MPLS) e LSR egress (LSR de saída da rede MPLS).
LFIB Label Forwarding Information Base, ou o conjunto de informações existentes nos LSR usadas para fazer o encaminhamento das PDUS MPLS. Pode ser entendida como uma estrutura análoga à tabela de comutação de circuitos virtuais.


Usando os termos acima, podem-se descrever redes MPLS demonstrativas como mostrado a seguir. Na primeira rede há dois LSP: um vai do Host X ao Host Z e está identificado com PDUS em amarelo, e outro vai de Host X ao Host Y e tem PDUs em azul. O número dentro de cada PDU informa os valores de rótulo usados ao longo dos LSP. Assim como em circuitos virtuais em geral (e como em Frame Relay e ATM), os valores de rótulo podem ser modificados por cada roteador que os comute.

Mplsrouters.gif

Conceitos básicos sobre comutação de rótulos

A comutação de rótulos feita nos LSR é muito parecida com comutação de circuitos virtuais. Ao receber uma PDU MPLS, um LSR decide o que fazer com ela com base no número do rótulo e na interface de rede de onde ela foi recebida. Porém há um detalhe específico do MPLS: uma ou mais interfaces podem ser associadas em um labelspace MPLS, sendo esse labelspace usado para identificar de onde foi recebida uma PDU. Desta forma, um LSR na verdade decide o que fazer com uma PDU com base em seu rótulo e no seu labelspace. Dentro do LSR essa operação se chama ILM (Input Label Mapping).

ILM é a função que identifica uma PDU recebida e mapeia seu rótulo para um labelspace

Um caso especial trata de PDUs que entram na rede MPLS. Por exemplo, uma PDU IPv4, originada de uma rede externa, deve ser transportada pela rede MPLS. Nesse caso, o LER (roteador de borda) deve associar essa PDU a um rótulo MPLS e encaminhá-lo pela rede MPLS. A identificação de uma PDU externa à rede MPLS, com base nas informações dessa PDU, se chama FEC (Forwarding Equivalence Class).

Uma vez identificada uma PDU recebida, o LSR deve encaminhá-la de acordo com instruções predefinidas em sua LFIB. Dentro de sua LFIB essas instruções são chamadas de NHLFE (Next-Hop Label Forwarding Entry), e contêm a operação MPLS a ser realizada e a interface de saída por onde encaminhar a PDU. As operações MPLS possíveis estão descritas na tabela abaixo:


Operação Descrição
SWAP Troca o valor de rótulo. Essa operação deve ser usada para comutação dentro da rede MPLS. Mesmo quando o novo valor de rótulo for idêntico ao anterior essa operação deve ser realizada.
PUSH Adiciona um cabeçalho MPLS com um determinado valor de rótulo. Essa operação deve ser usada principalmente nos LER, quando uma PDU entra na rede MPLS.
POP Remove o cabeçalho MPLS. Essa operação deve ser usada principalmente nos LER, quando uma PDU sai da rede MPLS.


A comutação fica completa ao se juntarem o mapeamento de entrada (ILM) com as NHLFE, no caso de comutação dentro da rede MPLS. No caso de entrada de PDUs na rede MPLS, a operação se chama FTN (Fec-To-Nhlfe), que nada mais é que regras para associar os rótulos MPLS a essas PDUS. No exemplo da PDU IPv4, pode-se usar o endereço IPv4 de destino dessa PDU para escolher que rótulo MPLS deve ser usado. Isso está sumarizado na figura abaixo.

Mpls-lfib.png

Atividade com MPLS

e2[type]=mpls e3[type]=mpls e4[type]=mpls e5[type]=mpls a1[type]=generic a2[type]=generic

  1. FEC: mapeia subrede destino para nhlfe

e2[fec]=172.16.20.0/24:nhlfe=1 e4[fec]=172.16.10.0/24:nhlfe=1

  1. NHLFE: como encaminhar PDUs MPLS

e2[nhlfe]=1:interface=eth0:label=1000:ip=10.0.2.3 e3[nhlfe]=1:interface=eth0:label=2001:ip=10.0.2.2 e3[nhlfe]=2:interface=eth1:label=1001:ip=10.0.6.4 e4[nhlfe]=1:interface=eth1:label=2000:ip=10.0.6.3

  1. ILM: como identificar PDUs MPLS recebidas

e2[ilm]=2001:labelspace=0 e3[ilm]=2000:labelspace=0:nhlfe=1 e3[ilm]=1000:labelspace=0:nhlfe=2 e4[ilm]=1001:labelspace=0

  1. Labelspace: os mapeamentos de labelspaces a interfaces

e2[labelspace]=0:interfaces=eth0 e3[labelspace]=0:interfaces=eth0,eth1 e4[labelspace]=0:interfaces=eth1

e2[eth0]=link2:ip=10.0.2.2/24 e2[eth1]=link8:ip=172.16.10.2/24 e2[eth3]=link1:ip=10.0.1.2/24 e3[eth0]=link2:ip=10.0.2.3/24 e3[eth1]=link6:ip=10.0.6.3/24 e4[eth0]=link4:ip=10.0.4.4/24 e4[eth1]=link6:ip=10.0.6.4/24 e4[eth2]=link7:ip=172.16.20.4/24 e5[eth0]=link4:ip=10.0.4.5/24 e5[eth1]=link1:ip=10.0.1.5/24

a1[eth2]=link8:ip=172.16.10.10/24 a2[eth2]=link7:ip=172.16.20.20/24

a1[default_gateway]=172.16.10.2 a2[default_gateway]=172.16.20.4

</syntaxhighlight>

  • Exercício: Considere o roteiro realizado em sala e faça o LSP entre A2 e A1 passar por E5 ao invés de E3 - Ou seja, isso implica modificar a configuração dos roteadores E2, E3, E4 e E5:

Exercicio-mpls-1.png


26/02 - MPLS - Labelspaces e Tunels

26/02 - MPLS - Labelspaces e Tunels

Atividade

Laboratório do netkit sobre labelspaces:

e1[type]=mpls e2[type]=mpls e3[type]=mpls e4[type]=mpls e5[type]=mpls a1[type]=generic a2[type]=generic a3[type]=generic

  1. FEC: mapeia subrede destino para nhlfe

e2[fec]=172.16.20.0/24:nhlfe=1 e4[fec]=172.16.10.0/24:nhlfe=1

  1. NHLFE: como encaminhar PDUs MPLS

e2[nhlfe]=1:interface=eth0:label=1000:ip=10.0.2.3 e3[nhlfe]=1:interface=eth0:label=1000:ip=10.0.2.2 e3[nhlfe]=2:interface=eth1:label=1000:ip=10.0.6.4 e4[nhlfe]=1:interface=eth1:label=1000:ip=10.0.6.3

  1. ILM: como identificar PDUs MPLS recebidas

e2[ilm]=1000:labelspace=0 e3[ilm]=1000:labelspace=0:nhlfe=2 e3[ilm]=1000:labelspace=1:nhlfe=1 e4[ilm]=1000:labelspace=0

  1. Labelspace: os mapeamentos de labelspaces a interfaces

e2[labelspace]=0:interfaces=eth0 e3[labelspace]=0:interfaces=eth0 e3[labelspace]=1:interfaces=eth1 e4[labelspace]=0:interfaces=eth1

e1[eth1]=link9:ip=172.16.30.1/24 e1[eth2]=link3:ip=10.0.3.1/24 e1[eth3]=link5:ip=10.0.5.1/24 e2[eth0]=link2:ip=10.0.2.2/24 e2[eth1]=link8:ip=172.16.10.2/24 e2[eth2]=link3:ip=10.0.3.2/24 e2[eth3]=link1:ip=10.0.1.2/24 e3[eth0]=link2:ip=10.0.2.3/24 e3[eth1]=link6:ip=10.0.6.3/24 e3[eth2]=link5:ip=10.0.5.3/24 e4[eth0]=link4:ip=10.0.4.4/24 e4[eth1]=link6:ip=10.0.6.4/24 e4[eth2]=link7:ip=172.16.20.4/24 e5[eth0]=link4:ip=10.0.4.5/24 e5[eth1]=link1:ip=10.0.1.5/24

a1[eth2]=link8:ip=172.16.10.10/24 a2[eth2]=link7:ip=172.16.20.20/24 a3[eth0]=link9:ip=172.16.30.30/24

a1[default_gateway]=172.16.10.2 a2[default_gateway]=172.16.20.4 a3[default_gateway]=172.16.30.1

</syntaxhighlight>

Laboratório do netkit sobre túneis:

e1[type]=mpls e2[type]=mpls e3[type]=mpls e4[type]=mpls e5[type]=mpls a1[type]=generic a3[type]=generic a4[type]=generic

  1. FEC: mapeia subrede destino para nhlfe

e1[fec]=172.16.10.0/24:nhlfe=1 e2[fec]=172.16.30.0/24:nhlfe=1

  1. NHLFE: como encaminhar PDUs MPLS

e1[nhlfe]=1:interface=eth2:label=500:ip=10.0.3.2 e2[nhlfe]=1:interface=eth3:label=100:ip=10.0.1.5 e3[nhlfe]=1:interface=eth2:label=300:ip=10.0.5.1 e4[nhlfe]=1:interface=eth1:label=3000:ip=10.0.6.3 e5[nhlfe]=1:label=200:nhlfe=2 e5[nhlfe]=2:interface=eth0:label=2000:ip=10.0.4.4

  1. ILM: como identificar PDUs MPLS recebidas

e1[ilm]=300:labelspace=0 e2[ilm]=500:labelspace=0 e3[ilm]=3000:labelspace=0 e3[ilm]=200:labelspace=0:nhlfe=1 e4[ilm]=2000:labelspace=0:nhlfe=1 e5[ilm]=100:labelspace=0:nhlfe=1

  1. Labelspace: os mapeamentos de labelspaces a interfaces

e1[labelspace]=0:interfaces=eth3 e2[labelspace]=0:interfaces=eth2 e3[labelspace]=0:interfaces=eth1 e4[labelspace]=0:interfaces=eth0 e5[labelspace]=0:interfaces=eth1

e1[eth1]=link9:ip=172.16.30.1/24 e1[eth2]=link3:ip=10.0.3.1/24 e1[eth3]=link5:ip=10.0.5.1/24 e2[eth0]=link2:ip=10.0.2.2/24 e2[eth1]=link8:ip=172.16.10.2/24 e2[eth2]=link3:ip=10.0.3.2/24 e2[eth3]=link1:ip=10.0.1.2/24 e3[eth0]=link2:ip=10.0.2.3/24 e3[eth1]=link6:ip=10.0.6.3/24 e3[eth2]=link5:ip=10.0.5.3/24 e3[eth3]=link10:ip=172.16.40.3/24 e4[eth0]=link4:ip=10.0.4.4/24 e4[eth1]=link6:ip=10.0.6.4/24 e4[eth2]=link7:ip=172.16.20.4/24 e5[eth0]=link4:ip=10.0.4.5/24 e5[eth1]=link1:ip=10.0.1.5/24

a1[eth2]=link8:ip=172.16.10.10/24 a3[eth0]=link9:ip=172.16.30.30/24 a4[eth0]=link10:ip=172.16.40.40/24

a1[default_gateway]=172.16.10.2 a3[default_gateway]=172.16.30.1 a4[default_gateway]=172.16.40.3

</syntaxhighlight>

03/03 - Protocolos de Enlace Ponto à Ponto

03/03 - Protocolos de Enlace Ponto à Ponto

Resumo da aula:

Bibliografia relacionada:

  • Seção 5.7 do livro "Redes de Computadores" do Kurose 5a ed.
  • 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 5.7 do livro do Kurose e 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 onde a presença de ruídos no meio de transmissão é relevante ou se deseja confiabilidade na entrega de pacotes na camada 2. 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.

05/03 - Protocolos HDLC e PPP

05/03 - Protocolos HDLC e PPP

Resumo da aula:

  • Finalização dos Slides sobre Protocolos HDLC e PPP;
  • Explicações adicionais sobre bit e byte stuffing;
10/03 - Detecção e Correção de Erros

10/03 - Detecção e Correção de Erros

Resumo da aula:

  • Abordagem sobre erros em sistemas de telecomunicações: Erro de bit, erro de rajada;
  • Uso do campo FCS (Frame Check Sequence) nos protocolos da camada 2 para fins de de detecção de erro;
  • Check de paridade simples em sistemas assíncronos de comunicação de dados;
  • Paridade bidimensional ou longitudinal;
  • Revisão sobre a técnica de CheckSum;
  • CRC ficou para a próxima aula.
12/03 - Interfaces Digitais

12/03 - Interfaces Digitais

Atenção: liberada a LISTA1 de exercícios para a avaliação A1

Resumo da aula:

  • Técnicas polinomiais na detecção e correção de erros na formação do FCS com códigos cíclicos CRC;
  • Início dos slides sobre Interfaces Digitais
17/03 - Desempenho de protocolos PPP e HDLC

17/03 - Desempenho de protocolos PPP e HDLC

Resumo da aula:

  • Laboratório usando roteadores reais: Comparativo de desempenho com PPP e HDLC.

Para esta atividade já está implementada uma rede composta por três roteadores da Digitel, que estarão interligados como mostrado abaixo:

Rede-modems.png

A rede contém dois enlaces dedicados ponto-à-ponto (simulando duas SLDDs formadas por LPCDs à 2 fios) com modems digitais operando a 2 Mbps. Os Modens da DIGITEL modelo DT2048SHDSL estão configurados da seguinte forma: (chaves em ON)

  • Modens do rack central: DIP1-todas; DIP2-7,8; DIP3-todas OFF; DIP4-5 - Modo NTU (terminação de rede), relógio interno, 2048Kbps, e interface V.35 padrão ISO2110;
  • Modens do rack direito e esquerdo: DIP1-todas; DIP2-7,8; DIP3-todas OFF; DIP4-5 - Modo LTU (terminação de linha), relógio regenerado, 2048Kbps, e interface V.35 padrão ISO2110;

Todos os roteadores estão configurados com protocolos HDLC em suas interfaces serias WAN e rodando o algoritmo de roteamento RIP em sua forma mais básica para evitar a configuração de rotas estáticas na interligação das LANs do switch direito e esquerdo.

Iniciando o experimento
  1. Acesse a interface de gerência (console) do roteador R1 ou R2. O roteador R1 está no rack esquerdo, o roteador R3 está no rack central, e R2 está no rack direito. Para acessar a console, faça o seguinte:
    1. Conecte o cabo serial específico na interface serial RS232 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 57600 bps, 8 bits de dados e 1 stop-bit (isso aparece descrito assim: 57600 8N1) e sem controles de fluxo.
      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. O login e senha para acessar a configuração dos routers é "nr2g" e "digitel" respectivamente. Ao entrar na CLI avalie a configuração geral dos routers com o comando DUMP ALL;
  3. Voce pode acessar qualquer router usando a facilidade do protocolo telnet. Para tanto, dentro da CLI do router aplique o comando EXEC TELNET [IP da WAN ou LAN]. Voce também podem acessa-los por qualquer computador das redes direita ou esquerda, desde que esses estejam na mesma subrede das interfaces LAN dos routers. Uma vez estando na CLI de um dos routers, voce pode acessar os demais com EXEC TELNET;
  4. Observe se a configuração dos routers está como o previsto na janela abaixo. Talvez voce precise ajustar a configuração em algum roteador.
  5. Faça a configuração Básica dos PCs e Roteadores NR2G com HDLC:
    • R1:
      ESQUERDA >                                                        
      SET LAN LAN0 IP 192.168.20.1 MASK 255.255.255.0 BROADCAST 192.168.20.255        
      SET LAN LAN0 UP                                                                 
      SET LAN LAN1 PURGE                                                              
      SET WAN WAN0 PROTO HDLC IP 10.1.1.2 MASK 255.255.255.252 PEER 10.1.1.1 UP       
      SET WAN WAN1 PURGE 
                                                                  
      SET RIP REDIST-STATIC TRUE REDIST-CONNECTED TRUE REDIST-OSPF FALSE DEFAULTMETRIC 2
      SET RIP WAN0 ENABLED TRUE TYPE ACTIVE                                           
      SET RIP WAN0 AUTH TYPE NONE                                                     
      SET RIP UP  
                                                                          
      SET ROUTES DEFAULT GW1 10.1.1.1 COST1 0                                         
      SET ROUTES UP
      
    • R2:
      DIREITA >          
      SET LAN LAN0 IP 192.168.10.1 MASK 255.255.255.0 BROADCAST 192.168.10.255        
      SET LAN LAN0 UP                                                                 
      SET LAN LAN1 PURGE                                                              
      SET WAN WAN0 PROTO HDLC IP 10.1.1.6 MASK 255.255.255.252 PEER 10.1.1.5 UP       
      SET WAN WAN1 PURGE 
                                                                  
      SET RIP REDIST-STATIC TRUE REDIST-CONNECTED TRUE REDIST-OSPF FALSE DEFAULTMETRIC 2
      SET RIP WAN0 ENABLED TRUE TYPE ACTIVE                                           
      SET RIP WAN0 AUTH TYPE NONE                                                     
      SET RIP UP  
                                                                          
      SET ROUTES DEFAULT GW1 10.1.1.5 COST1 0                                         
      SET ROUTES UP
      
    • R3:
      CENTRAL >                                                              
      SET LAN LAN0 IP 192.168.1.231 MASK 255.255.255.0 BROADCAST 192.168.1.255 UP      
      SET LAN LAN1 PURGE                                                              
      SET WAN WAN0 PROTO HDLC IP 10.1.1.5 MASK 255.255.255.252 PEER 10.1.1.6 UP
      SET WAN WAN1 PROTO HDLC IP 10.1.1.1 MASK 255.255.255.252 PEER 10.1.1.2 UP
                                                             
      SET RIP REDIST-STATIC TRUE REDIST-CONNECTED TRUE REDIST-OSPF FALSE DEFAULTMETRIC 2
      SET RIP WAN0 ENABLED TRUE TYPE ACTIVE                                           
      SET RIP WAN0 AUTH TYPE NONE                                                     
      SET RIP WAN1 ENABLED TRUE TYPE ACTIVE                                           
      SET RIP WAN1 AUTH TYPE NONE                                                     
      SET RIP UP                                                                      
                                                    
      SET ROUTES DEFAULT GW1 192.168.1.1 COST1 0                                      
      SET ROUTES UP
      
  6. Para conferir as configurações das interfaces, use o comando show seguido da interface. Exemplo:
    # SHOW WAN WAN0 ALL
    
  7. Assim que os enlaces forem estabelecidos, o que pode ser conferido com o comando show interface aplicado às interfaces, 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
  8. Observe que optamos pelo uso de protocolos de roteamento dinâmico. Procure entender melhor como foi feita essa configuração, a partir do que está no manual, começando pela página 82.
  9. Para o PC do professor aplique os comandos:
    $ 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 
    $ sudo route add -net 192.168.10.0 netmask 255.255.255.0 gw 192.168.1.231
    $ sudo route add -net 192.168.20.0 netmask 255.255.255.0 gw 192.168.1.231
    
  10. 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.1 - x={10,20}
    
  11. Agora vamos analisar a conectividade de todas as subredes, incluindo o acesso à internet. Após isso vamos fazer uma avaliação sobre o desempenho dessa conectividade comparando os links com PPP e HDLC entre os roteadores.
  12. Veja se o status das interfaces e protocolos da WAN e LAN de todos os routers estão em UP. Anote e avalie a configuração de todos os routers e os PCs das duas LANs direita e esquerda.
  13. Verificar e anotar todas as configurações e instalações dos componentes de redes, modens, cabos, adaptadores, manobras dos cabos, etc...
  14. Verificar e anotar todas as configurações lógicas dos modens, routers e PCs.
  15. Acessar as redes mutuamente qualquer computador de um subrede deve acessar qualquer outro da outra subrede;
  16. Acessar a internet em todos os PCs;
  17. Teste a vazão pelos enlaces ponto-a-ponto SOMENTE COM UM ÚNICO PC. Em algum computador da subrede esquerda ou direita execute:
     netperf -f k -H 192.168.1.1
    
  18. Teste o delay médio da comunicação usando PING aplicado em algum PC da outra subrede.
  19. Teste a vazão pelos enlaces ponto-a-ponto COM TODOS OS PCs SIMULTANEAMENTE (solicite ao professor para sincronizar o teste de todos). Em todos os computadores das subredes esquerda e direita execute:
     netperf -f k -H 192.168.1.1
    
  20. Realize pelo menos três medidas para cada teste e use a média desses valores como resultado final;
  21. Excute o netperf entre computadores da mesma subrede, anote os valores e compare com as medidas anteriores;


24/03 - Comparação de Desempenho entre Protocolos Ponto à Ponto e Frame Relay

24/03 - Comparação de Desempenho entre Protocolos Ponto à Ponto e Frame Relay

  1. Recupere a comunicação física e os dados levantados da implementação da aula anterior da rede formada com enlaces ponto à ponto com protocolo HDLC;
  2. Agora troque o protocolo HDLC dos enlaces por PPPS (protocolo PPP Síncrono - veja pg. 76 do manual). Faça isso primeiramente no router R3 (central) pois será perdido enlace com ele quando mudar o protocolo. Como exemplo, para trocar a configuração na interface WAN0 execute o comando:
      SET WAN WAN0 PROTO PPPS IP 10.1.1.5 MASK 255.255.255.252 PEER 10.1.1.6 UP
    
    Faça o mesmo para a WAN1 do router central e WAN0s dos routers esquerdo e direito. Não esqueça de aplicar o comando CONFIG SAVE para salvar a configuração atual. Observe o estado dos leds que indicam a presença de dados protocolados entre routers, tanto no frontal dos modens quanto no frontal dos routers. Eles ficaram apagados por um tempo mas devem retornar a acender depois de uns dois ou tres minutos. O led ST no frontal dos routers deve ficar na cor laranja indicando a queda dos links e depois de um tempo devem retornar a cor verde quando tudo estiver ok.
  3. Repita e anote as mesmas medições de vazão conforme feito anteriormente com protocolo HDLC;
  4. DESAFIO: Esta atividade faz parte da avaliação AE1, veja mais detalhes com o professor: Acrescente mais uma rede na LAN1 do router central com endereço 192.168.30.0 também com 4 PCs e implemente uma rede Frame Relay para as 3 redes agora existentes. Determine um CIR de entrada (descida ou download) para todas elas de 1Mbps e um CIR de saída (subida ou upload) para todas elas de 512kbps. Realize novamente as medidas de delay e vazão para a host 192.168.1.1 assim como feito anteriormente para HDLC e PPP. Tabule e discuta os resultados alcançados com as 3 implementações.
26/03 - Exercícios

26/03 - Exercícios

  • Exercícios 4, 5 e 6 da LISTA1;
  • Recapitulação do conteúdo.
31/03 - Final de Interfaces Digitais

31/03 - Final de Interfaces Digitais

Resumo da aula:

  • Finalização dos slides sobre Interfaces Digitais;
  • Verificar e anotar todos os componentes nas conexões físicas entre modens, routers e PCs do laboratório realizado na aula de 19/03.
  • As duas aulas do período da tarde serão utilizadas para finalização das medidas de desempenho com PPP e implementação da rede Frame-Relay proposta na ativiade AE1.



Curso de Engenharia de Telecomunicações