Protocolos de Enlace
Redes Industriais Semestre 01/2015 Engenharia de Controle e Automação
FENG – ENGENHARIA DE CONTROLE E AUTOMAÇÃO
Revisão OSI
Revisão OSI
FENG – ENGENHARIA DE CONTROLE E AUTOMAÇÃO
Revisão OSI
Revisão OSI
FENG – ENGENHARIA DE CONTROLE E AUTOMAÇÃO
Implementações
Modelo OSI
Rede Internet
Rede Industrial
Camada Fisica
FENG – ENGENHARIA DE CONTROLE E AUTOMAÇÃO
Camada Fisica - Codificações
Camada Fisica
§ As informações podem ser transmitidas por fios, fazendo-se variar alguma propriedade física, como voltagem (tensão elétrica) ou corrente.
§ Representando o valor dessa voltagem ou corrente como uma função de tempo com um valor único, f(t), podemos criar um modelo para o
comportamento do sinal e analisá-lo matematicamente
FENG – ENGENHARIA DE CONTROLE E AUTOMAÇÃO
Camada Fisica
Modulações
FENG – ENGENHARIA DE CONTROLE E AUTOMAÇÃO
Modulação em Redes HART
Exemplo de Pacote – Rede CAN
FENG – ENGENHARIA DE CONTROLE E AUTOMAÇÃO
Camada Enlace
§ A principal tarefa da camada de enlace de dados é transformar um canal de transmissão bruta em uma linha que pareça livre de erros de
transmissão não detectados para a camada de rede.
§ Serviços oferecidos à camada de rede
§ Três possibilidades razoáveis oferecidas com freqüência são:
§ 1. Serviço sem conexão e sem confirmação
§ 2. Serviço sem conexão com confirmação
§ 3. Serviço orientado a conexões com confirmação.
Camada Enlace
Dentre os fatores com os quais a camada de Enlace deve preocupar-se estão:
§ a forma como os bits provenientes da camada Física serão agrupados em quadros;
§ os mecanismos de detecção e correção de erros a serem
implantados, uma vez que as informações trocadas através da camada Física não são isentas de erros de transmissão;
§ os mecanismos de controle de fluxo para limitar o volume de informação trocados
§ entre entidades fonte e destino;
§ a gestão das ligações entre as entidades;
§ o controle de acesso ao meio, em redes de difusão.
FENG – ENGENHARIA DE CONTROLE E AUTOMAÇÃO
Camada Enlace
§ Nas redes de difusão a camada de enlace de dados é usualmente decomposta em duas subcamadas, conforme proposta da IEEE:
§ Controle Lógico de Enlace (LLC - Logical Link Control), responsável pelo estabelecimento de conexões e oferecimento de serviços de
comunicação às camadas de rede.
§ Controle de Acesso ao Meio (MAC - Medium Access Control), responsável pelo acesso ordenado e compartilhado do canal de comunicação (no caso, um barramento);
Enlace - Subcamada LLC
§ A subcamada LLC da camada de Enlace de Dados oferece serviços classificados em três principais categorias, estas dependendo do sistema no qual elas serão implantadas:
§ serviço sem conexão e sem reconhecimento (não confiável);
§ serviço sem conexão com reconhecimento (confiável);
§ serviço orientado à conexão (confiável).
§ Os serviços orientados à conexão são caracterizados por três principais etapas:
§ a etapa de estabelecimento de conexão, durante a qual são definidos todos os parâmetros relacionados à conexão, como por exemplo, os contadores de seqüência de quadros;
§ a etapa de transmissão de dados, durante a qual são realizadas todas as trocas de informação correspondentes ao diálogo entre duas máquinas;
FENG – ENGENHARIA DE CONTROLE E AUTOMAÇÃO
Enlace - Subcamada LLC
§ A comunicação entre as camadas de Rede e de Enlace é feita através de primitivas de serviço (request, indication, response e confirm) da interface entre as duas camadas
Enlace - Conceito de Quadros (Frames)
§ Transforma as sequencias de bits em “frames”
§ Identificação dos limites do quadro
§ Enquadramento por contagem:
§ Problema – Campo de tamanho pode ser adulterado por erros
§ Solução – Detecção de erros
FENG – ENGENHARIA DE CONTROLE E AUTOMAÇÃO
Enlace - Conceito de Quadros (Frames)
Como saber onde começar outro quadro?
Conceito de Quadros (Frames)
§ Os quadros são marcados com bytes com valores especiais
§ Mas estes bytes podem existir dentro da mensagem a ser enviada
FENG – ENGENHARIA DE CONTROLE E AUTOMAÇÃO
Bit e Byte Stuffing
Exemplo de Bit Stuffing
FENG – ENGENHARIA DE CONTROLE E AUTOMAÇÃO
Subcamada MAC
§ Protocolos Deterministicos
§ caracterizados pela concessão do direito ao acesso
independentemente das necessidades de transmissão de cada nó da estação
§ baixo desempenho, uma vez que muito tempo pode ser perdido no caso de estações que não tenham mensagens a transmitir
§ TDMA (Time Division Multiple Access)
§ Mestre-Escravo
§ Token-Passing
§ Protocolos Não-Deterministicos
§ protocolos de competição, uma vez que as estações querendo transmitir vão competir pelo meio de transmissão.
§ CSMA/CD (Carrier Sense Multiple Access / Collision Detection)
CSMA/CD
CSMA/CD – Algoritmo Básico
1. Se o meio estiver livre, transmita; caso contrário, vá para o passo 2.
2. Se o meio estiver ocupado, continue a ouvir até que o canal esteja livre e, então, transmita imediatamente.
3. Se uma colisão for detectada durante a transmissão, transmita um pequeno sinal especial (jam signal ) para garantir que todas as estações saberão da colisão e, então, pare de transmitir.
FENG – ENGENHARIA DE CONTROLE E AUTOMAÇÃO
CSMA/CD – Tempo de Detecção da Colisão
§ Com o CSMA/CD, a quantidade de capacidade desperdiçada é reduzida ao tempo de detectar a colisão.
§ Questão:
Qual é o valor desse tempo?
CSMA/CD – Tempo de Detecção da Colisão
§ Exemplo:
§ Nó A inicia a transmissão. Imediatamente antes do quadro chegar ao nó B, este está pronto para transmitir e, como ele ainda não está
ciente da transmissão de A, inicia a sua transmissão.
§ Uma colisão ocorre quase que imediatamente. Ela é reconhecida por B , que cessa imediatamente a sua transmissão. Esta colisão deve se propagar de volta até A para que este tome ciência dela.
§ Por essa linha de raciocínio, para que uma colosão possa ser detectada, o tempo de transmissão de um quadro não pode ser menor do que duas vezes o retardo de propagação fim-a-fim. Esse tempo é conhecido como slot time da rede.
§ Em outras palavras, o slot time é definido como sendo duas vezes o tempo que um pulso eletrônico (OSI nível 1) leva para atravessar a
FENG – ENGENHARIA DE CONTROLE E AUTOMAÇÃO
CDMA/CD – Slot Time
§ Nas redes Ethernet com taxa de transmissão de 10Mbps o tamanho
mínimo dos frames foi fixado em 512 bits (64 bytes), o que corresponde a um tempo de transmissão de 51,2 microsegundos. Esse tamanho de
quadro é uma decisão histórica e, na prática, impraticável a sua alteração.
§ Obs: o jam signal tem tamanho 32 bits.
CSMA/CD - Espera Aleatória Exponencial Truncada
§ Supondo um slot time de 51.2µs:
1. Quando ocorrer a primeira colisão, envie um “jamming signal” para prevenir que mais dados sejam enviados (obs: jam signal = 32 bits).
2. Retransmita o frame após ou 0 segundos ou 51.2µs, escolhido randomicamente.
3. Se houver falha (nova colisão), retransmita o frame após ou 0s, ou 51.2µs, ou 102.4µs, ou 153.6µs.
4. E isso ainda não funcionar, retransmita o frame após k · 51.2µs, onde k é um número randômico entre 0 e 23 − 1.
5. Em geral, após uma i-ésima tentativa (falha), retransmita o frame
FENG – ENGENHARIA DE CONTROLE E AUTOMAÇÃO
Resumo CSMA/CD
§ Para baixas cargas, o CSMA/CD pode chegar a uma utilização de até 98%.
§ Para grandes volumes de tráfego, o método exibe uma certa instabilidade.
§ Retardo de transferência máximo também não pode ser garantido pelo método.
§ CSMA/CD com espera aleatório exponencial truncada tornou-se um padrão internacional.
Enlace - Detecção de Erros
§ Os erros que podem ocorrer sobre os suportes de transmissão tem como causas os mais diversos fenômenos físicos, como por exemplo, o ruído térmico, provocado pela agitação dos elétrons nos cabos de cobre.
§ Independentemente do fenômeno causador de erro, estes tendem a gerar normalmente verdadeiros pacotes de erros (error bursts) e não erros
simples.
§ O controle de erros de transmissão é uma das funções mais importantes asseguradas pela camada de enlace (usualmente implementado na
subcamada LLC).
FENG – ENGENHARIA DE CONTROLE E AUTOMAÇÃO
Controle de Paridade
§ 00100110, o bit de paridade vale 1
0 xor 0 xor 1 xor 0 xor 0 xor 1 xor 1 xor 0 = 1, paridade impar
§ Emissor envia 001001101
§ O receptor, calcula a paridade novamente e compara com o último bit enviado; se houver diferença, houve erro de transmissão
§ Limitação:
§ Se um número par de bits foram transmitidos com erro, o método não é capaz de detectar o erro.
Paridade Longitudinal
(BSC - Block Check Sum)
§ Alem de enviar o bit de paridade, envia uma palavra (byte) com o XOR de todas as palavras a serem enviadas.
§ Esta técnica é largamente utilizada em protocolos de rede mais simples, mas tem uma eficiência limitada
FENG – ENGENHARIA DE CONTROLE E AUTOMAÇÃO
CRC – Cyclic Redundancy Code
§ Considera-se que os bits de uma cadeia de caracteres são os coeficientes de um polinômio.
§ Por exemplo, a palavra 110001 contém 6 bits e representa o polinômio x5 + x4 + 1
§ A técnica consiste em adicionar a um bloco de dados um conjunto de bits de controle, de modo que o quadro (dados + bits de controle) seja
divisível por um polinômio G(x)
§ Na recepção, a entidade de Enlace efetua a divisão dos bits compondo o quadro pelo polinômio gerador. Caso o resto seja diferente de zero, é
caracterizada então a ocorrência de um erro de transmissão.
CRC – Cyclic Redundancy Code
§ Exemplos de polinomios geradores, G(x)
§ CRC-12 = x12 + x11+x3 + x2+x +1
§ CRC-16 =x16 + x15+x2+1
§ CRC-CCITT = x16 + x12+x5 +1
§ O polinômio CRC-CCITT é capaz de detectar:
§ todos os erros de paridade
§ todos os erros de 2 bits
§ todos os pares de erros de 2 bits cada
§ blocos de erros não excedendo 16 bits
FENG – ENGENHARIA DE CONTROLE E AUTOMAÇÃO
Exemplo de Calculo - CRC
Protocolos de Enlace – Transmissões Confiaveis
§ Se há erros, não é possível recuperar o dado diretamente, é preciso aguardar a confirmação do destinatário (Acknowledgement, ACK)
§ Stop-and-wait:
FENG – ENGENHARIA DE CONTROLE E AUTOMAÇÃO
Stop-and-wait (Problemas)
§ Problema para o Receptor!!
Stop-and-wait
§ Uso de numeros de sequencia
§ Transmissor envia pacote 0;
§ Receptor envia ACK 0;
§ Se o ACK é perdido, trasnmissor temporiza e reenvia pacote 0;
§ Receptor sabe qua acabou de receber 0, descarta o pacote, mas reenvia ACK 0
§ Transm. Recebe ACK 0, envia pacote 1
§ Apenas 0 e 1 são necessarios
FENG – ENGENHARIA DE CONTROLE E AUTOMAÇÃO
Janela Deslizante (Sliding Window)
§ Permite varios pacotes “em transito”, sem confirmação de recebimento
§ Comportamento do receptor frente a perdas depende da sua janela de recepção
§ Go-Back-N
§ Problema: Muitos pacotes podem ser recebidos corretamente e ter que ser reenviados
Janela Deslizante (Sliding Window)
§ Recepção Seletiva
§ Problema: Complexidade de manter varios pacotes recebidos fora de ordem
FENG – ENGENHARIA DE CONTROLE E AUTOMAÇÃO
Janela Deslizante (Sliding Window)
§ Recepção Seletiva
§ O envio do NAK2 acelera o reenvio do pacote 2.
Ethernet/IP