Beruflich Dokumente
Kultur Dokumente
O modelo OSI
Os ensinamentos deste capítulo não são estritamente necessários para quem quer
apenas instalar e operar uma pequena rede. Nem são necessários para quem vai
utilizar os recursos de uma rede, mesmo que seja de grande porte. São entretanto
fundamentas para quem deseja se tornar um especialista em redes. Daremos algumas
noções sobre os sinais elétricos usados em comunicação de dados, e do modelo OSI,
usado total ou parcialmente pela maioria das redes modernas.
Sinais elétricos
Um sinal elétrico é uma tensão que varia ao longo do tempo. Os sinais elétricos úteis
são aqueles que transmitem algum tipo de informação. Este é o caso dos sinais
elétricos que trafegam em uma rede de computadores, mas existem vários outros
tipos. Podemos classificar os sinais elétricos em duas categorias: analógicos e
digitais.
Sinais analógicos
Os sinais analógicos podem assumir uma infinidade de valores ao longo do tempo, e
cada um desses valores tem significado. Por exemplo, nos sinais elétricos que
representam os sons captados por um microfone, uma tensão mais elevada
corresponde a um som mais alto. Uma variação mais rápida representa um som
agudo, enquanto uma variação mais lenta representa um som grave.
Os sinais elétricos analógicos mais comuns são aqueles que representam o som. São
captados por microfones, são amplificados e enviados para alto-falantes. Também
são analógicos os sinais de vídeo que são gravados em uma fita de VCR, ou que são
captados por uma antena de TV. Existem inúmeros outros tipos.
12-2 Como montar e configurar sua rede de PCs
Figura 1
Exemplo de sinal
analógico.
Um sinal elétrico pode sempre ser representado por um gráfico do valor da sua
tensão em função do tempo, como vemos na figura 1.
Sinais digitais
Praticamente todos os sinais elétricos usados em computação são digitais. A maioria
dos sinais analógicos utilizados em computação são digitalizados para que possam
ser processados e armazenados. Um sinal digital também é representado por uma
tensão que pode assumir uma infinidade de valores. Cuidado: muitos textos ensinam
que um sinal digital pode assumir apenas dois valores, 0 e 1. Na verdade o sinal
elétrico não é matematicamente perfeito a ponto de representar apenas dois valores.
Esta infinidade de valores é entretanto interpretada como uma seqüência numérica.
Figura 2
Uma seqüência de valores
binários e a sua representação
por um sinal elétrico digital.
Capítulo 12 – O modelo OSI 12-3
O importante é que apesar de exibirem tensões não muito precisas, podem ser
destacadas faixas de tensão bem distintas, que representam valores numéricos. Ao
interpretarmos os sinais digitais, devemos esquecer as tensões e trabalhar apenas
com os números que representam. Por isso muitos textos ensinam que os sinais
digitais assumem apenas dois valores. Corrigindo, esses sinais representam apenas
dois valores numéricos, tipicamente 0 e 1, apesar de assumirem uma infinidade de
valores de voltagem.
Figura 3
Transmissão paralela de 8 bits.
Figura 4
Transmissão serial.
Sinais diferenciais
As interfaces de rede padrão Ethernet, usadas na maioria das redes modernas,
utilizam sinais diferenciais. Este é um método de transmissão praticamente imune a
ruídos e interferências eletromagnéticas. Ao invés de transmitir um único sinal
elétrico, são transmitidos dois sinais, sendo que um é igual ao outro, mas com o sinal
algébrico invertido. Podemos entender o seu funcionamento com o diagrama da
figura 5.
Figura 5
Funcionamento da
transmissão diferencial.
Capítulo 12 – O modelo OSI 12-5
Um transmissor diferencial envia seu sinal elétrico duas vezes, por dois fios
diferentes. Os sinais são +V e –V. Cabe ao receptor diferencial, calcular a diferença
dos sinais recebidos e dividir o resultado por 2. Teríamos então [+V – (-V)]/2 = V.
A vantagem deste processo é a eliminação do erro captado. Se ao longo do caminho
ocorre interferência, ambos os fios captarão o mesmo sinal de erro e. As tensões que
chegam ao receptor são portanto +V+e e –V+e. O receptor calcula a diferença e
divide por 2, e o resultado é: [(+V+e) – (-V+e)]/2 = V. O sinal de erro é
algebricamente cancelado pelo receptor. Desta forma o método diferencial permite
atingir distâncias maiores.
Cabos coaxiais usados em rede não usam o método diferencial. Entretanto o sinal é
envolvido por uma blindagem que é o fio de terra. Esta blindagem evita que
interferências sejam captadas. Já os cabos UTP usados na maioria das redes
modernas possuem quatro pares trançados, sendo que dois deles são usados. Um par
faz a transmissão de dados (TD+ / TD-), e o outro faz a recepção (RD+ / RD-).
de antenas. Além disso seria necessário usar uma antena gigantesca. Como é possível
então, transmitir e sintonizar estações e rádio?
Figura 6
Canais usados em
uma rede sem fio
padrão IEEE
802.11b.
A figura 6 mostra três canais independentes usados em uma rede sem fio IEEE
802.11b. É usada a faixa entre 2400 MHz e 2483 MHz. Esta faixa pode utilizar três
canais simultâneos, usando portadoras de 2412 MHz, 2437 MHz e 2462 MHz.
Quando falamos de sinais digitais, a sua banda não é a faixa de freqüências que
representa, e sim, o número de bits transportados a cada segundo. Em uma rede Fast
Ethernet, por exemplo, a largura de banda (bandwidth) é 100 Mbits/s. Em
transmissões paralelas é comum medir a largura de banda em MB/s (megabytes por
segundo) ou kB/s (kilobytes por segundo), enquanto nas transmissões seriais é
comum medir a banda digital em Mbits/s (megabits/s) ou kbits/s (kilobits por
segundo). A tabela abaixo mostra a largura de banda digital de alguns dispositivos.
Todas essas larguras de banda são teóricas. Na prática não podem ser sustentadas
por muito tempo, já que em geral não e possível operar 100% do tempo na taxa
máxima. Por exemplo, em uma rede Fast Ethernet, são usados bits adicionais para
endereçamento e correção de erro, resultando em taxas médias menores.
Transmissão de dados
Vimos que existem circuitos eletrônicos capazes de enviar sinais elétricos que
representam bits. Seqüências de oito bits formam bytes, e seqüências de bytes
formam blocos de dados. O objetivo é transferir dados entre máquinas diferentes.
Várias técnicas devem ser utilizadas para permitir uma comunicação confiável.
Protocolos
Quando duas máquinas trocam dados entre si, ambas precisam utilizar a mesma
linguagem, ou seja, o mesmo protocolo. Por exemplo, na comunicação entre um
12-8 Como montar e configurar sua rede de PCs
Nas redes e outros meios que operam com velocidades mais elevadas, os protocolos
são orientados por blocos, e não por caracteres. Este tipo de transmissão é mais
eficiente que a de bytes (ou caracteres) individuais. Quando o transmissor precisa
enviar um bloco, são necessários os seguintes dados:
O receptor por sua vez, ao receber o bloco de dados, envia ao transmissor uma
resposta de reconhecimento. O transmissor saberá então que aquele bloco foi
recebido com sucesso, e poderá enviar o próximo bloco.
Figura 7
Os dados são
acompanhados de
bytes adicionais no
inicio e no final.
Endereçamento
Nos protocolos mais simples, o cabeçalho e a finalização podem ser formados por
um único byte. Por exemplo, na comunicação entre um computador e um periférico,
não é necessário identificar o transmissor e o receptor, já que são únicos. Já nos
barramentos nos quais são conectados múltiplos dispositivos (USB, SCSI, Firewire),
é preciso que no cabeçalho exista uma identificação do receptor, ou melhor do
“alvo”. Não é preciso identificar o mestre ou host, que será no caso, o computador
Capítulo 12 – O modelo OSI 12-9
Nas redes de computadores, várias máquinas podem ser origem e várias podem ser
destino dos dados. Portanto nos protocolos de rede é preciso que o cabeçalho
contenha identificações para o transmissor e para o receptor.
Controle de erro
A maioria dos meios físicos usados em comunicação de dados estão sujeitos a erros
por diversas causas. É verdade que o uso do par diferencial reduz bastante a
interferência, principal causadora de erros. Outros fatores entretanto podem ser
causadores de erros, que precisam portanto ser detectados para que possam ser
corrigidos. A maioria dos protocolos de comunicação utiliza um mecanismo de
detecção de erros. Esses mecanismos consistem em adicionar no final de um bloco
de dados, bytes adicionais para checagem, análogos aos dígitos verificadores que
usamos em documentos e em números de contas bancárias. O mecanismo de
checagem mais simples é o checksum. Consiste em somar os valores de todos os
bytes transmitidos, e enviar esta soma no final do bloco de dados. O receptor faz
então a mesma soma e verifica se a sua soma é igual à soma feita pelo transmissor.
Se for igual, enviará uma resposta de confirmação ao transmissor. Se for diferente,
enviará uma resposta negativa, indicando erro. O transmissor deverá então repetir a
transmissão e aguardar pelo reconhecimento do receptor.
Colisão
A colisão pode ser considerada como uma “trombada” de sinais elétricos em uma
rede. Ocorre quando duas ou mais máquinas enviam dados simultaneamente em um
meio que só permite uma transmissão de cada vez. Nas rede Ethernet, o mesmo cabo
é compartilhado entre diversas máquinas. Todas podem enviar seus dados, mas não
de forma simultânea. Mesmo quando aparentemente duas ou mais máquinas estão
transmitindo, na verdade uma só transmite enquanto as outras esperam. Ao final de
cada bloco transmitido por uma máquina, as demais têm chance de transmitir. Tudo
é feito de tal forma que todas podem transmitir seus pacotes aos poucos, porém em
intervalos de tempo intercalados.
12-10 Como montar e configurar sua rede de PCs
Quando uma estação da rede precisa transmitir um bloco, verifica antes se a rede
está em repouso. Se existir uma transmissão em curso, a estação espera até que o
bloco termine e que a rede fique novamente livre. Uma vez com a rede livre, a
estação transmite seus dados, mas ao mesmo tempo faz a sua leitura. Se os dados
lidos forem diferentes dos dados transmitidos, fica caracterizado que ocorreu uma
colisão, ou seja, duas ou mais estações tentaram transmitir ao mesmo tempo. As
estações envolvidas devem retransmitir automaticamente seus dados, entretanto esta
nova tentativa de transmissão poderá resultar em nova colisão. Para evitar este
problema, as estações que detectam colisão aguardam um intervalo de tempo
aleatório (porém pequeno) antes de tentarem novamente a transmissão. Sendo
aleatório o intervalo de tempo, uma estação fatalmente irá esperar menos que a
outra, e iniciará a sua transmissão. A outra, ou as outras estações envolvidas na
colisão mas que esperaram intervalos de tempo aleatórios menores detectarão que o
barramento está agora ocupado, e irão esperar pela sua vez. Este método é chamado
CSMA/CD (Carrier Sense Multiple Access with Collison Detection).
Topologias de rede
A topologia de uma rede é a forma pela qual as suas diversas estações estão
conectadas. Existem alguns padrões clássicos que mostraremos a seguir: barramento,
estrela, anel e árvore.
Barra
Todas as máquinas da rede são ligadas ao longo de um barramento, formando uma
linha. Este é o caso das redes Ethernet com cabo coaxial. A figura 8 mostra alguns
computadores ligados em rede através de um cabo coaxial. Mostra também a
representação da rede através de um grafo. O grafo é um conjunto de nós
interligados por ramos. No caso das redes, os nós são os computadores, hubs,
switches e outros equipamentos. Os ramos são as seções de cabos que os interligam.
Figura 8
Rede em barra.
Estrela
As estações da rede são ligadas a um nó central. Este nó pode ser um hub ou switch,
no qual são ligadas as estações. Uma rede Ethernet com cabos UTP recai nesta
Capítulo 12 – O modelo OSI 12-11
A figura 9 mostra uma rede em estrela bastante típica. É formada por um hub ou
switch, no qual estão ligados oito computadores. O grafo que representa esta rede
tem uma topologia de estrela. O hub ou switch é o nó central, no qual estão ligados
os demais nós que representam os computadores.
Figura 9
Rede em estrela.
Anel
Nas redes em anel as estações foram uma cadeia fechada. Citamos como exemplo as
redes Token Ring, criadas pela IBM. Neste tipo de rede, cada computador é ligado
ao anterior e ao posterior, e o último é ligado ao primeiro, formando um ciclo
fechado, como vemos na figura 10. O grafo que representa esta rede também é
mostrado na figura.
12-12 Como montar e configurar sua rede de PCs
Figura 10
Rede em anel.
Árvore
É equivalente a várias redes em estrela ligadas entre si. É o caso de conexões de
múltiplos hubs ou switches. O primeiro nó da rede da figura 11 é o switch. Nele
estão ligados quatro hubs, e em cada um deles são ligados por sua vez, quatro
computadores.
Figura 11
Rede em
árvore.
LAN e WAN
Existem redes de vários portes. As mais simples podem ter apenas dois PCs, como é
o caso das redes domésticas. Redes em pequenas empresas podem ter alguns poucos
computadores. Em médias empresas podem existir dezenas. Em empresas maiores
podemos ter centenas ou milhares de computadores. Em um caso extremo, temos a
Internet, formada por milhões de computadores.
Capítulo 12 – O modelo OSI 12-13
Chamamos de rede local (Local Area Network, ou LAN), aquela que fica localizada
em um espaço geográfico bem restrito, como um prédio. É possível interligar seus
computadores, por exemplo, usando cabos Ethernet, hubs e switches.
Divisão em camadas
Um dos mais importantes aspectos na comunicação de dados é a independência entre
os módulos envolvidos. Entre os vários assuntos estudados neste livro, você
observou vários casos em que os componentes são independentes. Por exemplo:
similar. Nem foi preciso alterar comandos do sistema operacional para lidar com
compartilhamentos. A independência entre os componentes de rede torna a sua
evolução mais rápida.
Dizemos que os módulos de nível inferior (ou físico) são aqueles mais próximos do
hardware e do meio de comunicação. Os módulos de nível superior são aqueles mais
próximos do usuário, como navegadores e programas de correio eletrônico.
Um trabalho escolar
Vamos ilustrar este conceito de independência entre módulos utilizando um exemplo
bem simples. Este exemplo poderia ser considerado como um “trabalho escolar” em
um curso de ciência da computação. O objetivo é construir uma interface capaz de
transmitir e receber bytes, criar um software para transmitir e receber blocos de
dados e criar um software para transmitir e receber arquivos. O trabalho poderia ser
dividido em três grupos:
Note que graças à independência entre esses três módulos, as três equipes podem
trabalhar de forma independente. Uma equipe precisa saber apenas quais são as
funções que devem oferecer para os níveis superiores, ou utilizar dos níveis
inferiores. Por exemplo, a equipe que cria o protocolo PTE deve usar as funções
TXBYTE e RXBYTE e oferecer ao nível superior, as funções TXBLOCK e
RXBLOCK.
Capítulo 12 – O modelo OSI 12-15
Apenas a equipe (1) deve trabalhar com hardware. As equipes (2) e (3) têm seu
trabalho independente do hardware, ou seja, não precisam saber o tipo de hardware a
ser utilizado na conexão. As três equipes devem trabalhar com software. A equipe
(1) tem parte do seu trabalho em hardware, parte em software. O tipo de software
que vão utilizar é aquele que chamamos de software básico. Será criado uma espécie
de driver para a interface de comunicação.
A equipe (3) irá operar com um software aplicativo. Deverá se preocupar com
detalhes como interface com o usuário e acesso a arquivos. Este software pode ser
criado com qualquer linguagem de programação de alto nível, normalmente usadas
para criação de aplicativos.
Figura 12
Sistema de
comunicação em
camadas.
Figura 13
Conexão virtual entre
camadas 2.
Figura 14
Conexão virtual entre
as camadas 3.
O modelo OSI
Os sistemas de comunicação modernos são baseados, total ou parcialmente, em um
modelo de 7 camadas criado pela ISO (International Standards Organization). Este
modelo é chamado de OSI (Open System Interconnection), mostrado na figura 15.
Figura 15
O modelo OSI.
12-18 Como montar e configurar sua rede de PCs
Apesar de ser mais complexo que nosso modelo acadêmico de três camadas, o
modelo OSI têm características em comum:
b) Apenas a camada 1 (física) tem uma comunicação direta real com a camada
correspondente do outro computador.
corrigir erros. Por exemplo, as colisões são detectadas aqui. Os dados que são
passados para a camada superior (camada de rede) são portanto isentos de erros.
Também é feito aqui o controle dos dados no buffer do receptor. Quando o
transmissor envia dados em velocidade maior que o receptor pode armazenar ou
processar, esta camada faz a sincronização para que o buffer do receptor não fique
cheio. O receptor terá como avisar ao transmissor que faça uma pausa até que os
dados recebidos sejam armazenados ou processados.
Esta camada leva em conta a codificação dos dados, e também faz eventuais
conversões. Leva em conta por exemplo o código usado para a representação de
caracteres (ex: ASCII / UNICODE). Compressão de dados e criptografia também
podem ser feitos nesta camada.
Figura 16
Representação da
rede no modelo OSI.
O padrão OSI foi proposto para uma uniformização das redes, entretanto nem todos
os sistemas o seguem à risca. O TCP/IP, por exemplo, usado na maioria das redes
modernas, não segue o modelo OSI, apesar de também ser dividido em camadas com
uma configuração bastante parecida.