Redes de Computadoreshalestino/rc/TransmissaoDados.pdf · 2010-09-23 · Transmissão de dados...
Transcript of Redes de Computadoreshalestino/rc/TransmissaoDados.pdf · 2010-09-23 · Transmissão de dados...
1
Redes de Computadores
Transmissão de dados
Escola Superior de Tecnologia e Gestão
Instituto Politécnico de Bragança
Abril de 2006
Transmissão de dados Redes de Computadores 2
Códigos de caracteres
• A informação é manuseada em blocos de 8 bits (bytes ou octetos) ou múltiplos (palavras)
• A unidade de comunicação (estrutura) mais elementar presente ainda hoje em muitos sistemas de comunicação é o caracter– Nesses casos são usados códigos (e.g. ASCII) que para além da representação de dados alfa-numéricos (equivalência bits ↔ caracteres) incluem caracteres que suportam funções associadas ao processo de comunicação e organização dos dados
– Em códigos de caracteres baseados em 7 bits o 8º éusado como bit de paridade
2
Transmissão de dados Redes de Computadores 3
Transmissão em paralelo• Bits compondo uma palavra de dados são conduzidos
simultaneamente ao longo de um conjunto de canais– sendo um canal para cada bit
– Exemplos:
• Comunicação entre CPU e memória
• Computador e impressora
F F
O O
N N
T T
E E
D D
E E
S S
T T
I I
N N
O O
TERRA (sinal de referência)TERRA (sinal de referência)
8 bits (dados)8 bits (dados)
Transmissão de dados Redes de Computadores 4
Transmissão em série/paralelo
• Os n bits são
serializados um a
um para o canal
de transmissão
3
Transmissão de dados Redes de Computadores 5
Transmissão em paralelo vs. série
• Vantagens
– Velocidade de transmissão é n vezes superior• Exemplo: transmissão de um byte (paralelo) demora tanto como a de um bit (série)
• Desvantagens
– Indicada apenas para pequenas distâncias• Custo dos canais de transmissão são elevados
• Problemas de skew (desfasamento/desvio na recepção com emissão em simultâneo), derivados de diferenças físicas entre os condutores agravam-se com a distância
Transmissão de dados Redes de Computadores 6
Conversão paralelo ↔ série
• USART (Universal Synchronous/ AsynchcronousReceiver Transmitter)
• Desempenha adicionalmente funções de sincronização e detecção e correcção de erros
Emissor
Receptor
4
Transmissão de dados Redes de Computadores 7
Sincronizações necessárias
• Para que o receptor consiga interpretar
correctamente a sequência de bits que recebe,
necessita de determinar inequivocamente:
– O início de cada célula temporal correspondente a um
bit por forma a poder fazer a amostragem do sinal mais
ou menos a metade desse intervalo de tempo –
sincronização ao bit ou sincronização de relógio
– O início de cada caracter/byte – sincronização ao
caracter
– O início de cada bloco/quadro de caracteres –
sincronização ao quadro
Transmissão de dados Redes de Computadores 8
Transmissão em série• Um problema fundamental da comunicação série é a manutenção de
sincronismo entre o transmissor e o receptor:– e se houver uma sequência de 0’s ou de 1’s muito longa?
• Essencialmente usam-se duas soluções:– comunicação síncrona: transmitir o sinal de relógio:
• ou numa linha separada
• ou juntamente com os bits a transmitir
– comunicação assíncrona: transmitir outros elementos de sincronização
5
Transmissão de dados Redes de Computadores 9
Transmissão em série assíncrona
• A designação Transmissão Assíncrona traduz factos relacionados– a ocorrência irregular (assíncrona) dos caracteres enviados de forma independente• Método adequado quando os dados a transmitir são gerados de uma forma intermitente
– a inexistência de uma referência temporal comum ao emissor e receptor, isto é, o relógio do receptor éindependente do do emissor (embora deva ter a mesma frequência nominal)
– A necessidade que cada caracter seja tratado independentemente em termos de sincronização pelo que o receptor resincroniza-se no início da recepção de cada caracter
Transmissão de dados Redes de Computadores 10
Transmissão em série assíncrona (2)
• O sincronismo de bit realiza-se com base na sincronização de caracter– Caracteres são enviados um a um com intervalos variáveis entre si
– Na ausência de transmissão (idle) o nível de sinal mantém-se constante (1 lógico)
– Cada caracter é precedido de um bit (Start bit) com o valor lógico 0
– A transição 1→0 produzida pelo Start bit indica o início do caracter (sincronismo de caracter) e fornece a referência de fase para o relógio do receptor
• Os bits subsequentes são recuperados por amostragem a partir do Start bit
• O caracter é seguido de Stop bits (valor lógico 1) para permitir distinguir o próximo Start bit, mesmo que não haja intervalo idle entre caracteres
6
Transmissão de dados Redes de Computadores 11
Transmissão em série assíncrona (3)
• No receptor a palavra recebida no registo SIPO poderáser sujeita a um mecanismo de detecção/correcção de erros antes de ser armazenada em memória
• Este método de transmissão não requer elevada precisão na frequência de relógio do receptor– Basta garantir o sincronismo de bit durante um caracter, pois o
processo de sincronização recomeça com o início do caracterseguinte
– Para garantir o sincronismo de bit durante um caracter énecessário que o relógio do receptor esteja sincronizado em fase com o Start bit, o que não é fácil de garantir dado o facto de o relógio ser gerado independentemente dos dados
– O problema da sincronização de fase pode ser minimizado usando um relógio com uma frequência múltipla da frequência nominal (e.g. 8 ou 16 vezes)
Transmissão de dados Redes de Computadores 12
Sincronização ao bit
7
Transmissão de dados Redes de Computadores 13
Sincronização ao bit (2)
• Os relógios do emissor e receptor (TxC e RxC) não se encontram sincronizados
• A recepção só será bem sucedida se a amostragem do sinal RxD for feita aproximadamente a meio do bit do sinal RxD
• O receptor deve usar um relógio com frequência N vezes superior (tipicamente N=16) à do relógio do emissor
• O start bit é amostrado decorridos não mais que N/2 ciclos do relógio de recepção, após a transição 1→0
• Os restantes bits são amostrados de N em N ciclos do relógio de recepção, após amostragem do start bit
• Quanto maior a frequência de RxC relativamente a TxC maior a exactidão da amostragem na recepção
Transmissão de dados Redes de Computadores 14
Sincronização ao caracter
• O dispositivo de recepção deve estar configurado para trabalhar com o mesmo número de bits por caracter e stop bits que o dispositivo de emissão
• Depois de detectado o start bit, a sincronização ao caracter é conseguida contando o número de bits amostrados previstos por caracter e confirmando a presença dos stop bits previstos
8
Transmissão de dados Redes de Computadores 15
Sincronização ao quadro
• Necessária quando a mensagem tem vários caracteres
• Consegue-se “encapsulando” a sequência de caracteres entre dois caracteres especiais, não imprimíveis: start-of-text (STX) e end-of-text (ETX)
• E se existe possibilidade de transmissão dos caracteres delimitadores no interior do próprio quadro? (Ex.: transmissão binária de um ficheiro)– Solução: Byte stuffing – antecedem-se os delimitadores de início (STX) e fim (ETX) por outro caracter especial (Data Link Escape - DLE) e duplicam-se todos os caracteres DLE interiores
Transmissão de dados Redes de Computadores 16
Sincronização ao quadro (2)
9
Transmissão de dados Redes de Computadores 17
Caracterização• Simples e económico
• Ineficiente– Start e Stop bits introduzem um overhead de 2 a 3 bits por caracter
• A precisão do método não é adequada para transmissão de blocos de dados (tramas) com número elevado de bits (devido à sobrecarga representada pelos Start bits e Stop bits )
• O método é apenas aceitável para transmissão a baixa velocidade e a pequena distância (devido àreduzida imunidade ao ruído e à elevada susceptibilidade a erros de amostragem –“deslizes” nos instantes de amostragem)
Transmissão de dados Redes de Computadores 18
Transmissão em série síncrona• Método mais adequado à transmissão de grandes quantidades de
dados a débitos mais elevados e grandes distâncias – mais eficiente
• Blocos/quadros completos de caracteres transmitidos como uma sequência ininterrupta de bits, sem pausa entre os caracteres
• Entre dois quadros sucessivos é transmitido o caracter SYN (synchronous iddle) que permite (re)adquirir a sincronização ao bit e caracter entre emissor e receptor
10
Transmissão de dados Redes de Computadores 19
Sincronismo entre emissor e receptor
• Durante todo o tempo de recepção do quadro:
– Sequência de bits codificada com sinal de relógio de forma a permitir sincronismo entre emissor e receptor – sincronismo ao bit
– Todos os quadros precedidos de um ou mais caracteres reservados de forma a determinar a fronteira dos caracteres (sequência de bits) –sincronização ao caracter
– Cada quadro encapsulado num par de caracteres delimitadores especiais - sincronização ao quadro
Transmissão de dados Redes de Computadores 20
Sincronização ao bit
• Codificando a informação de sincronização
no próprio sinal transmitido, ou
• Utilizando um relógio na recepção (como na
transmissão assíncrona) mas desta feita
assegurando a sua sincronização com o
relógio de emissão através de uma DPLL, ou
• Esquemas que combinem as duas
abordagens anteriores
11
Transmissão de dados Redes de Computadores 21
Sincronização ao bit
Transmissão de dados Redes de Computadores 22
Codificação de informação de
sincronização (1)• Codificação bipolar
– Bit 1 → pulso positivo
– Bit 0 → pulso negativo
– RZ (return-to-zero)
– Cada vez que o sinal deixa o nível zero gera-se um impulso no relógio local e efectua-se uma amostragem
12
Transmissão de dados Redes de Computadores 23
Codificação de informação de
sincronização (2)• Codificação de Manchester
– Apenas dois níveis (NRZ)
– Bit 1 → transição ascendente
– Bit 0 → transição descendente
– Transição a meio da célula de bit aproveitada para gerar um impulso de relógio e efectuar a amostragem
Transmissão de dados Redes de Computadores 24
Codificação de informação de
sincronização (3)• Codificação de Manchester Diferencial
– Transição no início da célula de bit apenas se o próximo bit for 0
– Mantém-se a transição a meio da célula de bit, mas o impulso
correspondente do relógio de recepção só é gerado no início da
próxima célula, permitindo determinar o valor do bit com base na
observação ou não de uma transição no sinal recebido
13
Transmissão de dados Redes de Computadores 25
Transmissão Síncrona Orientada
ao Caracter• Usada, essencialmente, para transmissão de blocos de caracteres (ex: ficheiros binários ou de texto)
• Antes da transmissão de cada bloco são transmitidos dois ou mais caracteres do tipo synchronous idle (SYN). Permitem que o receptor:– obtenha e mantenha sincronização ao bit
– Interprete a sequência dos bits nos limites correctos do caracter, isto é, fornecem sincronização orientada ao caracter
• A sincronização ao quadro é conseguida através de um par de delimitadores STX-ETX (da mesma forma que na transmissão assíncrona)
Transmissão de dados Redes de Computadores 26
Transmissão Síncrona Orientada
ao Caracter (2)
14
Transmissão de dados Redes de Computadores 27
Transmissão Síncrona Orientada
ao Caracter (3)• Uma vez obtida sincronização ao bit, o receptor entra no
“modo de busca” (hunt mode):– A sequência de bits é interpretada em janelas de 8 bits
– Se uma janela coincide com o caracter SYN, está obtida a sincronização
– Caso contrário deslocam-se os limites da janela de um bit e a nova sequência de 8 bits é reinterpretada
• Obtida sincronização ao caracter, o receptor procura o delimitador STX, ao qual se seguirá o quadro e por fim o caracter ETX
• O sincronismo conseguido pode ser mantido se após emissão do quadro se transmitirem caracteres do tipo SYN
• A transmissão de blocos de caracteres binários socorre-se de técnicas de byte/character stuffing (à semelhança do que acontece na transmissão assíncrona)
Transmissão de dados Redes de Computadores 28
Transmissão Síncrona Orientada
ao Bit
• Necessidade dos delimitadores STX e ETX e dos
caracteres DLE para byte stuffing tornam a
transmissão síncrona orientada ao caracter
relativamente ineficiente para a transmissão de
dados binários
• Transmissão Síncrona orientada ao bit resolve
essa limitação através de 3 variantes:
– Variante baseada em flag bytes
– Variante usada em redes locais de difusão (broadcast)
– Outra variante usada em redes locais
15
Transmissão de dados Redes de Computadores 29
Variante baseada em flag bytes
Transmissão de dados Redes de Computadores 30
Variante baseada em flag bytes (2)
• Antes da transmissão da flag o emissor transmite um sequência de idle bytes (01111111) a fim de permitir ao receptor adquirir sincronismo ao bit
• O início e o fim de cada quadro são assinalados pela mesma sequência de 8 bits (01111110), designada por flag byte (flag pattern)
• Após identificar a flag, o receptor continua com a leitura do resto da sequência até identificar nova flag que assinala fim de quadro– Consequentemente o interior do quadro pode ter um número arbitrário de
bits (não necessariamente um múltiplo de 8)
• E se for transmitida dentro do quadro uma sequência igual à da flag?
• A técnica de bit stuffing garante que a sequência da flag nunca se iráencontrar no interior do quadro– Na transmissão do quadro, a detecção de cinco 1s à saída do registo PISO
implica a inserção automática de um bit 0 na sequência
– Na recepção, sempre que é detectado um bit 0 após cinco 1s, esse bit éremovido antes da sequência resultante ser guardada no registo SIPO
16
Transmissão de dados Redes de Computadores 31
Variante usada em redes locais de
difusão• Para que todos os receptores se possam sincronizar com o emissor, este transmite um preâmbulo consistindo em 10 pares de bits ‘10’
• Obtido o sincronismo ao bit, cada receptor procura, bit a bit, a sequência delimitadora do início do quadro (10101011)
• Segue-se um cabeçalho de dimensões fixas (com o endereço de destino) e dois bytes com a dimensão do interior do quadro
• Uma vez que a dimensão da “cauda” é fixa, e sabendo a dimensão do interior, o receptor determina, por contagem, o último byte do quadro sem necessitar de um delimitador específico no fim
Transmissão de dados Redes de Computadores 32
Variante usada em redes locais de
difusão (2)
17
Transmissão de dados Redes de Computadores 33
Outra variante usada em redes locais
• O início e o fim do quadro são assinalados por “sequências proibidas”
• Por exemplo: usando codificação de Manchester, o sinal mantém o mesmo nível que no bit anterior (J) ou o nível oposto (K), sem que haja transição a meio da célula de bit
• Desta feita, o delimitador de início de quadro é a sequência proibida JK0JK000 e o de fim é a sequência JK1JK111
• Uma vez que J e K se baseiam em codificação não standard então o interior do quadro nunca poderáconter essas sequências, podendo efectuar-se, sem problemas a transmissão em modo binário
Transmissão de dados Redes de Computadores 34
Outra variante usada em redes locais
(2)