Mudanças entre as edições de "RCO2-2010-1"
Linha 48: | Linha 48: | ||
Há um resumo nas [http://www.sj.ifsc.edu.br/~msobral/RCO2/slides/aula2.pdf transparências]. | Há um resumo nas [http://www.sj.ifsc.edu.br/~msobral/RCO2/slides/aula2.pdf transparências]. | ||
+ | |||
+ | O experimento com o [http://www.sj.ifsc.edu.br/~msobral/RCO2/fcs-rfc.tgz gerador de CRC-16 do PPP] pode ser repetido em casa. Ele é capaz de verificar um quadro PPP, que pode ser conseguido usando-se a opção ''record'' do '''pppd'''. Essa opção grava em um arquivo de ''log'' os conteúdos dos quadros PPP enviados e recebidos, que podem depois serem visualizados (ou terem seu bytes extraídos) com o utilitário '''pppdump'''. Porém o gerador de CRC-16 fornecido inclui dois arquivos contendo quadros PPP previamente coletados: ''quadro_correto.raw'' e ''quadro_errado.raw''. Para fazer os testes, deve-se executar o programa ''testa.py'' (ele usa o arquivo ''quadro_correto.raw'' para fazer os testes): | ||
+ | |||
+ | <syntaxhighlight lang=bash> | ||
+ | # descompacta o arquivo do gerador de CRC-16 | ||
+ | tar czf fcs-rfc.tgz | ||
+ | cd fcs | ||
+ | |||
+ | # executa testa.py com 4 erros de bit por quadro gerados aleatoriamente | ||
+ | ./testa.py 4 | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | O código fonte do gerador de CRC-16 está no arquivo ''fcs-rfc.c'', o qual foi obtido diretamente da [http://tools.ietf.org/html/rfc1662 RFC 1662]. |
Edição das 10h38min de 24 de fevereiro de 2010
Redes de Computadores II: Diário de Aula 2010-1
Professor: Marcelo Maia Sobral (msobral@gmail.com)
Lista de email (forum): rco2@googlegroups.com
Atendimento paralelo: 2a e 4a de 10h às 12 h, 4a de 16h às 17h.
Bibliografia
10/02: Apresentação
Apresentação da disciplina: conteúdo, bibliografia e avaliação, laboratório.
12/02: Introdução
Apresentou-se uma visão geral dos conceitos sobre comunicação de dados, amparada em transparências. Nesta aula se planta a base para iniciar o estudo com maior profundidade da camada de enlace e da camada física.
19/02:
Camada de enlace: objetivos e serviços.
Os serviços identificados na figura acima estão descritos abaixo. A eles foram acrescentados outros dois:
- Encapsulamento (ou enquadramento): identificação das PDUs (quadros) de enlace dentro de sequências de bits enviadas e recebidas da camada física
- Controle de erros: garantir que quadros sejam entregues no destino
- Detecção de erros: verificação da integridade do conteúdo de quadros (se foram recebidos sem erros de bits)
- Controle de fluxo: ajuste da quantidade de quadros transmitidos, de acordo com a capacidade do meio de transmissão (incluindo o atraso de transmissão) e do receptor
- Endereçamento: necessário quando o enlace for do tipo multi-ponto, em que vários equipamentos compartilham o meio de transmissão (ex: redes locais e redes sem-fio)
- Controle de acesso ao meio (MAC): também necessário para meios compartilhados, para disciplinar as transmissões dos diversos equipamentos de forma a evitar ou reduzir a chance de haver colisões (transmissões sobrepostas)
- Gerenciamento de enlace: funções para ativar, desativar e manter enlaces
Nesta aula se criarão enlaces ponto-a-ponto entre computadores, usando o protocolo PPP. A partir de alguns experimentos se discutem os serviços da camada de enlace, em particular o enquadramento e detecção de erros.
Roteiro do primeiro laboratório
Foi apresentado como funciona o enquadramento (ou sincronização de quadro) do tipo sentinela (usado pelo PPP e HDLC). Nesse caso, usa-se uma flag delimitadora para informar o início e fim de quadro. Há uma segunda flag, chamada de escape (ESC), para evitar que um byte com o valor de flag delimitadora, o qual apareça em algum campo do quadro (ex: dados ou campos de controle) seja erroneamente interpretado como fim de quadro.
O roteiro foi executado até a análise de enquadramento do PPP. A detecção de erros ficou para a aula seguinte.
24/02: Camada enlace: detecção de erros
Finalização do roteiro 1, iniciado na aula de 19/02: fazer a injeção de erros (quadros corrompidos) no enlace.
Probabilidade de erros de transmissão (BER - Bit Error Rate), códigos de detecção de erro e CRC.
Há um resumo nas transparências.
O experimento com o gerador de CRC-16 do PPP pode ser repetido em casa. Ele é capaz de verificar um quadro PPP, que pode ser conseguido usando-se a opção record do pppd. Essa opção grava em um arquivo de log os conteúdos dos quadros PPP enviados e recebidos, que podem depois serem visualizados (ou terem seu bytes extraídos) com o utilitário pppdump. Porém o gerador de CRC-16 fornecido inclui dois arquivos contendo quadros PPP previamente coletados: quadro_correto.raw e quadro_errado.raw. Para fazer os testes, deve-se executar o programa testa.py (ele usa o arquivo quadro_correto.raw para fazer os testes):
# descompacta o arquivo do gerador de CRC-16
tar czf fcs-rfc.tgz
cd fcs
# executa testa.py com 4 erros de bit por quadro gerados aleatoriamente
./testa.py 4
O código fonte do gerador de CRC-16 está no arquivo fcs-rfc.c, o qual foi obtido diretamente da RFC 1662.