Post on 07-Oct-2015
description
Camada de Enlace de dados: Introducao eServicos
Rafael Guimaraes
Rede de Computadores II
Aula 2
Aula 2 Rafael Guimaraes 1 / 23
Sumario
Sumario
1 Motivacao
2 Objetivos
3 Introducao
4 Deteccao e Correcao de Erros
Aula 2 Rafael Guimaraes 2 / 23
Motivacao
Sumario
1 Motivacao
2 Objetivos
3 Introducao
4 Deteccao e Correcao de Erros
Aula 2 Rafael Guimaraes 3 / 23
Motivacao
Motivacao
Segunda camada na Pilha TCP/IP;
Comunicacao eficiente e confiavel entre dois computadores adjacentesconectadas por um canal de comunicacao;
Encapsula datagramas da camada de rede;
Caminho de comunicacao entre hospedeiros consistem em enlaces;
Aula 2 Rafael Guimaraes 4 / 23
Objetivos
Sumario
1 Motivacao
2 Objetivos
3 Introducao
4 Deteccao e Correcao de Erros
Aula 2 Rafael Guimaraes 5 / 23
Objetivos
Objetivos
Introduzir a camada de enlace;
Entender os princpios embutidos nos servicos da camada de enlace;
Deteccao e correcao de erro;Controle de acesso de enlaces compartilhados;Enderecamento da camada de enlace;Transferencia confiavel de dados e controle de fluxo;
Entender como e feita a deteccao e correcao de erros na camada deenlace.
Aula 2 Rafael Guimaraes 6 / 23
Introducao
Sumario
1 Motivacao
2 Objetivos
3 Introducao
4 Deteccao e Correcao de Erros
Aula 2 Rafael Guimaraes 7 / 23
Introducao
Camada de Enlace: Introducao
Terminologias
Hospedeiros e roteadores sao nos;
Canais de comunicacao que conectam nos adjacentes ao longo do caminho de
comunicacao sao enlaces:
Enlaces com fio;Enlaces sem fio;LANs;
Pacote de camada-2 e um quadro, encapsula o datagrama;
Aula 2 Rafael Guimaraes 8 / 23
Introducao
Camada de Enlace: Introducao
Aula 2 Rafael Guimaraes 9 / 23
Introducao
Camada de Enlace: Introducao
Funcao
Camada de enlace tem a responsabilidade de transferir um datagrama de um no para o
no adjacente sobre um enlace.
Aula 2 Rafael Guimaraes 10 / 23
Introducao
Camada de Enlace: Contexto
Datagrama transferido por protocolos de enlace diferentes sobre enlacesdiferentes;
ex: Ethernet no primeiro enlace, Frame Relay nos enlaces intermediarios,802.11 no ultimo enlace.
Cada protocolo de enlace prove servicos diferentes
ex: pode ou nao prover transferencia confiavel sobre o enlace.
Aula 2 Rafael Guimaraes 11 / 23
Introducao
Servicos da Camada de Enlace
Enquadramento, acesso ao enlace
- Encapsula datagramas em quadros acrescentando cabecalhos e trailer;- Implementa acesso ao canal se o meio e compartilhado;- Enderecos fsicos usados nos cabecalhos dos quadros para Identificar afonte e o destino dos quadros
- Diferente do endereco IP !
Entrega confiavel entre dois equipamentos fisicamente conectados
- Raramente usado em enlaces com baixa taxa de erro.- Enlaces sem fio (wireless): altas taxas de erro.
Aula 2 Rafael Guimaraes 12 / 23
Introducao
Servicos da Camada de Enlace
Controle de fluxo:
- Limitacao da transmissao entre transmissor e receptor;
Deteccao de erros:
- Erros causados pela atenuacao do sinal e por rudos;- O receptor detecta a presenca de erros;- Avisa o transmissor para reenviar o quadro perdido ;
Correcao de erros:
- O receptor identifica e corrige o bit com erro(s) sem recorrer a` retransmissao;
Servicos Half-Duplex e Full-Duplex;
Aula 2 Rafael Guimaraes 13 / 23
Deteccao e Correcao de Erros
Sumario
1 Motivacao
2 Objetivos
3 Introducao
4 Deteccao e Correcao de Erros
Aula 2 Rafael Guimaraes 14 / 23
Deteccao e Correcao de Erros
Deteccao vs. Correcao de Erros
Correcao de erros:
- Maior redundancia/overhead;- Recomendado quando nao ha enlace reverso ou para enlaces submetidos alongos atrasos;
Deteccao de erros:
- Menor redundancia;- Deteccao pode gerar retransmissao;
Comparacao (bloco de 1000 bits):
- Correcao: 10 bits de checagem;- Deteccao: 1 bit de checagem;
Aula 2 Rafael Guimaraes 15 / 23
Deteccao e Correcao de Erros
Distancia de Hamming
Utilizada para caracterizar as propriedades de correcao e deteccao deerro de um codigo;
Distancia de Hamming entre duas sequencias binarias:
- Numero de posicoes em que os bits sao diferentes;
Distancia de Hamming de um codigo:
- Mnima distancia de Hamming entre todos os possveis pares depalavras-codigo;
Deteccao de d erros:
- Requer um codigo de distancia d+ 1;
Correcao de d erros:
- Requer um codigo de distancia 2d+ 1;
Aula 2 Rafael Guimaraes 16 / 23
Deteccao e Correcao de Erros
Verificacoes de paridade
Maneira simples de deteccao de erros;
Sequencia de bits:
- PAR: 0111001;- IMPAR: 0111000;
Receptor precisa apenas contar quantos 1s existe na palavra recebida;
Problema: erros de 2,4,6,... bits;
Podemos utilizar a paridade bidimensional;
Aula 2 Rafael Guimaraes 17 / 23
Deteccao e Correcao de Erros
Codigos CRC
Codigos de checagem de redundancia cclica (CRC)
Codigos de paridade de 1 bit nao sao adequados para erros em rajadas;
Codigos mais comuns de deteccao de erros na camada de enlace de dados:
- Codigos de checagem de redundancia cclica (CRC);- Adequados para detectar erros em rajadas;
O CRC adiciona L bits de checagem a cada quadro;
Codigos polinomiais;
O CRC e capaz de detectar:
- Erros em rajada de tamanho L;- Todos os padroes de erros de 1, 2 ou 3 bits;- Um numero aleatorio de erros com probabilidade 1 2L.
Aula 2 Rafael Guimaraes 18 / 23
Deteccao e Correcao de Erros
Funcionamento
Representacao polinomial
E util representar os quadros de bits como polinomios com coeficientes binarios:
ex: 1001 = 1x3 + 0x2 + 0x1 + 1x0 = x3 + 1.
Aritmetica modulo 2. Por exemplo:
Adicao: 0 + 0 = 1 + 1 = 0 ; 0 + 1 = 1 + 0 = 1;Subtracao = Adicao;Multiplicacao: 0 x 0 = 1 x 0 = 0 x 1 = 0 ; 1 x 1 = 1;
Aula 2 Rafael Guimaraes 19 / 23
Deteccao e Correcao de Erros
Funcionamento
Construcao do Codigo
Polinomio gerador G(x) de grau L;
Palavra a ser codificada e representado por M(x);
Formacao da palavra codigo:
Formar o produto xLM(x);Dividir xLM(x) por G(x), usando divisao polinomial modulo 2, onde R(x)denota o resto da divisao;Palavra codigo a transmitir: T (x) = xLM(x)R(x).
Aula 2 Rafael Guimaraes 20 / 23
Deteccao e Correcao de Erros
Funcionamento
Receptor
O receptor divide a mensagem recebida por G(x). Se o resto nao for zero, houvealgum erro.
Erros de transmissao: E(x);
[T (x) + E(x)] /G(x) E(x)/G(x)
Erro nao sera detectado somente se E(x) for divisvel por G(x).
Aula 2 Rafael Guimaraes 21 / 23
Deteccao e Correcao de Erros
Funcionamento
Exemplo
Aula 2 Rafael Guimaraes 22 / 23
Deteccao e Correcao de Erros
Caractersticas
Protecao do CRC
Protecao contra erros de 1 bit: G(x) com mais de um termo;
Protecao contra erros de 2 bits: G(x) nao divide xk + 1, para k ate o tamanhomaximo do quadro;
Protecao contra numero mpar de erros: G(x) contem fator x+ 1;
Com L bits de checagem, ate L erros em rajadas sao detectados.
Aula 2 Rafael Guimaraes 23 / 23
MotivaoObjetivosIntroduoDeteco e Correo de Erros