Вы находитесь на странице: 1из 63

1 Introdução...............................................................................................................

4
2 TRANSMISSÃO DE DADOS..................................................................................6
2.1 Analógico X Digital...........................................................................................6
2.2 Modulação.......................................................................................................7
2.3 Velocidades de transmissão..........................................................................10
2.4 Ruídos e distorções na transmissão de dados..............................................11
2.5 Detecção/Correção........................................................................................12
2.6 Canais de transmissão...................................................................................14
2.7 Transmissões Paralelas e Seriais..................................................................16
2.8 Transmissões Síncronas e Assíncronas........................................................16
3 Redes de Computadores......................................................................................18
3.1 Paradigma Cliente Servidor...........................................................................19
3.3 Cabeamento...................................................................................................19
3.4 Topologia .......................................................................................................23
3.5 Comunicação sem fio (WIRELESS)..............................................................24
3.6 O Modelo ISO/OSI.........................................................................................24
4 A INTERNET.........................................................................................................26
4.1 A INTERNET..................................................................................................26
4.2 Como começou a INTERNET........................................................................26
4.3 O modelo TCP/IP...........................................................................................27
4.4 Camada Física...............................................................................................27
4.5 Camada Rede – O protocolo IP.....................................................................31
4.6 Camada Transporte – TCP e UDP................................................................40
4.7 Camada Aplicação.........................................................................................43
4.9Tipos de Conexão/Utilização na INTERNET..................................................54
5 - Segurança em Redes.........................................................................................58
5.1 - Principais tipos de ataque............................................................................58
5.2 – Boas Práticas..............................................................................................58
5.3 – Criptografia..................................................................................................59
5.4 - Algoritmos de Hash......................................................................................59
5.5 - Algoritmos Simétricos..................................................................................59
5.6 - Algoritmos Assimétricos...............................................................................60
5.7 - Certificados digitais......................................................................................60
6 Outros tipos de rede.............................................................................................61
6.1 IPX / SPX........................................................................................................61
6.2 X.25 e Frame Relay.....................................................................................61
6.3 ATM (Assyncronous Transfer Mode).............................................................61
1 Introdução
A Comunicação de Dados tem se mostrado como um dos principais fatores de
mudança em nossa sociedade nos últimos anos, e promete ainda grandes
avanços quando associada a outras tecnologias da informática.

Por exemplo, você já pensou como a comunicação de dados associada a técnicas


de realidade virtual podem resolver o problema de tráfego das grandes cidades?
Ou melhor, se tivermos meios de comunicação suficientemente bons, será que
seremos obrigados a viver em grandes cidades?

Conceitos:

COMPUTADOR LOCAL: máquina na qual você trabalha;

COMPUTADOR REMOTO: Qualquer máquina diferente da que você


trabalha, independente da distância física.

TELE PROCESSAMENTO: significa “processar longe” (TELE=longe -


grego). Na prática da informática, tele processar significa processar dados
fora da máquina em que você está trabalhando no momento, por meio de
transmissão e recepção de dados de/para máquinas remotas.

O tele processamento pode ser considerado uma revolução na área de


informática, aproximando os equipamentos do usuário final, e alterando a forma de
trabalho dos CPD’s.

ANTES DO TELEPROCESSAMENTO (batch)

1. Usuário preenche formulário (papel) e encaminha ao CPD;

2. Preparação processa documentos e encaminha a gravação

3. Gravação transcreve dados para meio magnético;

4. Operação processa dados e emite relatórios para conferência;

5. Conferência emite acertos necessários;

6. Dados corretos, conferência libera processamento final;

7. Operação emite relatórios com resultado do processamento;

8. Dados são encaminhados ao Usuário na forma de relatórios (papel);


COM TELEPROCESSAMENTO (ON-LINE)

1. Usuário digita dados em terminal e transmite para o computador;

2. Computador processa dados, solicitando confirmação/conferencia pelo


usuário se necessário;

3. Usuário recebe resultado do processamento (poucos segundos depois);

Este processo, além de melhorar consideravelmente a qualidade do serviço de


processamento de dados, acaba por reduzir custos com pessoal.
2 TRANSMISSÃO DE DADOS

2.1 Analógico X Digital


Os circuitos eletrônicos atualmente existentes foram criados para transmissão de
dados que podem assumir infinitos valores em um determinado intervalo. Estes
tipos de dados são chamados de dados analógicos e se encontram nesta
categoria as transmissões atuais de rádio, televisão (televisão digital em
implantação), voz via telefonia entre outros.

Quando os dados a serem transmitidos podem variar somente entre alguns


valores pré-determinados, a transmissão é chamada “DIGITAL”.

Os circuitos analógicos tendem a ser mais baratos, no entanto, neste tipo de


circuitos, a transmissão tende a se deteriorar com a distância, sem possibilidade
de recuperação. Para o caso da voz, isto é compensado em grande parte pelo
receptor, não trazendo grandes consequências à qualidade da conversa, no
entanto, para o caso dos computadores, a troca de um bit pode ser fatal,
dependendo do caso.

A rede publica de telefonia sempre utilizou equipamentos para transmissão


analógica da voz humana e, por isto, é necessária uma adaptação para a
transmissão dos sinais digitais gerados por computadores. Esta “adaptação” é
feita pelo MODEM.

Atualmente, com o barateamento crescente dos circuitos digitais, existe uma


tendência de trocar os equipamentos analógicos por digitais, tornando-se
necessária uma adaptação em sentido inverso, ou seja, em uma nova linha digital
padrão ISDN, a voz humana tem de ser codificada (“digitalizada”), para trafegar no
circuito digital.
2.2 Modulação
Conceito:

ONDA: É uma perturbação periódica. As ondas do mar são perturbações no


nível da água do oceano, As ondas sonoras são variações na pressão do
ar. As ondas elétricas são variações no potencial elétrico de um corpo
(voltagem) e as ondas eletromagnéticas (luz, rádio, televisão, raios-X,...)
são variações de campos elétricos e magnéticos.

Os fenômenos ondulatórios possuem características importantes:

AMPLITUDE: Distância entre a posição de equilíbrio e a posição extrema em uma


onda. (Unidade – depende do tipo da onda: sonora:decibel, elétrica:volt,...)

PERÍODO: Tempo gasto pela onda para uma vibração completa.

FREQUÊNCIA: Número de períodos na unidade de tempo (Unidade Hertz -


vibrações por segundo).

FASE: Estágio do desenvolvimento de uma onda (Unidade para defasagem-


Graus)

ONDA PORTADORA: Onda que carrega a informação. Em inglês: data carrier.

As ondas eletromagnéticas são de especial interesse por se propagarem a altas


velocidades (luz) e não dependerem de meio físico para propagação. Dependendo
de sua frequência recebem nomes e são utilizadas de forma diferente.

Na faixa de aproximadamente 2 a 4 MHz, a ondulação eletromagnética é


percebida por nossos olhos como luz, e a variação de frequência é percebida
como diferentes tonalidades de cor.
Alguns animais conseguem perceber outras faixas de frequência. Por exemplo: as
abelhas percebem frequências maiores do que os seres humanos. Por isto,
algumas flores possuem padrões de reflexão de luz ultra violeta complexos, que,
aparentemente, atraem os insetos para polinização.

A modulação é o processo pelo qual se imprime uma informação em uma onda


portadora, pela variação de um de seus parâmetros: amplitude, frequência ou
fase. O processo inverso, no qual uma informação é retirada de uma portadora, é
chamado de demodulação.

Existem 3 formas básicas de modulação de sinais digitais em ondas analógicas


para transmissão:
AM

Amplitude Modulada

A amplitude da onda
portadora é modificada
para conter a informação
digital

FM

Frequência Modulada

A frequência da onda
portadora é modificada
para conter a informação
digital

PSK

Mudança de Fase

(Phase Keying)

A fase da onda portadora


é modificada para conter
a informação digital

Com o auxílio de opções mais sofisticadas, é possível imprimir a onda portadora


mais de duas condições, e assim transmitir mais de um bit por alteração de estado
da onda portadora. Quando conseguimos transmitir 2 bits por variação da onda,
dizemos que a transmissão é DIBIT (3-TRIBIT, 4-TETRABIT,...).

Estendendo a ideia podemos variar mais de um parâmetro da onda, por exemplo,


fase e frequência, de forma a conseguirmos mais sinais distintos e transmitirmos
mais informação em cada sinal. Podemos variar, por exemplo, a frequência e a
fase da onda, neste caso, a amplitude deve ser mantida constante para que a
onda que carrega o sinal seja reconhecida no destino.

2.3 Velocidades de transmissão

Um sinal tem de ser mantido no meio de transmissão por um determinado tempo,


a fim de que o equipamento receptor consiga identificá-lo corretamente. O número
de sinais diferentes que criamos em um segundo é chamado de taxa de
transmissão em BAUDS. Assim, se alteramos a forma da onda, mudando a
informação transmitida 500 vezes por segundo, dizemos que a transmissão é feita
a 500 BAUDS.

Em uma transmissão digital, um mesmo sinal pode carregar mais de um bit de


informação, portanto a taxa efetiva de transmissão é um múltiplo da taxa em
BAUDS, expressa em bps (bits por segundo).

Outro fator que influencia a velocidade de uma transmissão é a faixa de valores


nos quais a onda pode variar os seus parâmetros.

Conceito:

BANDA DE TRANSMISSÃO: Faixa de valores que um esquema de


modulação pode utilizar para transmitir seus dados.
O governo é responsável pela alocação de bandas de transmissão para as
diversas utilizações como TV, rádio, telefonia celular, etc.

Como a capacidade de distinção dos sinais pelos receptores é limitada, a largura


da banda de transmissão é decisiva sobre a velocidade efetiva dos dados
transmitidos, tanto que transmissões em altas velocidades são atualmente
chamadas de transmissões em BANDA LARGA.

Exemplo:

Em uma modulação por frequência, suponha que seu aparelho receptor consiga
separar com precisão somente sinais com diferença de frequências maiores do
que 50 Hz. Supondo que a banda de transmissão seja de 1.000 Hz a 1.400 Hz,
conseguiremos criar 8 sinais facilmente distinguíveis no destino. Com 8 sinais
distintos, conseguimos codificar qualquer sequencia de 3 bits
(000,001,010,011,100,101,110,111). Portanto podemos fazer uma transmissão
TRIBIT.

Se, pudéssemos transmitir na faixa de 1.000 Hz a 1.800 Hz, disporíamos de 16


sinais distinguíveis e, portanto, poderíamos fazer a transmissão se tornar
TETRABIT.

Exercícios:

1) Qual a maior velocidade em BPS para uma transmissão a 600 BAUDS na faixa
de 2.000 Hz a 3.000 Hz, supondo que meus aparelhos só consigam distinguir
seguramente diferenças maiores do que 100 Hz?

2) Suponha uma transmissão em que possamos variar entre 4 frequências


diferentes e 4 fases diferentes. Que a taxa de transmissão em BAUDS devemos
conseguir para obter uma transmissão de 56 Kbps?

3) Que diferença de fase (em graus) meus equipamentos terão de distinguir com
segurança se desejarmos que uma transmissão PSK de multiplicidade 1 (monobit)
tenha sua velocidade dobrada?

4) Que largura de banda seria necessária para que uma transmissão a 100
BAUDS, modulando por frequência e fase atingisse 500 bps, supondo que meus
equipamentos distinguam com segurança diferenças de frequência maiores que
20 Hz e de fase maiores que 45o?

Latência de Comunicação

Além da largura de banda, outra característica importante dos canais de


comunicação de dados é a latência de comunicação. A latência de comunicação é
usualmente medida em milissegundos, e representa o tempo que uma informação
gasta para ser transmitida pelo canal.

Comunicações com banda larga podem entregar muitos bits por segundo, mas
isto não significa necessariamente que possuam latência baixa. Um exemplo
notável são os canais de satélite que possuem banda larga, mas alta latência de
comunicação devido às grandes distancias que devem ser percorridas entre o
satélite e a terra.

Podemos perceber claramente o efeito da latência alta quando, em uma conexão


via satélite, o âncora do telejornal faz uma pergunta a um repórter, e este leva
vários segundos para responder. Neste exemplo, o canal tem largura de banda
suficiente (imagem e som chegam de forma satisfatória) mas a latência é alta
demais para um “bate papo” ao vivo.

2.4 Ruídos e distorções na transmissão de dados

Em qualquer sistema de telecomunicações, por melhor que seja, sempre haverá


deterioração do sinal transmitido. A taxa de erros com as técnicas atuais é muito
baixa (menos de 1 bit errado a cada 100.000 transmitidos) no entanto,
dependendo da aplicação, até mesmo isto pode ser inaceitável.

Conceitos:

DISTORÇÕES: são alterações não desejadas nas características iniciais da onda


transmitida.

ATENUAÇÃO: Perda de energia do sinal enquanto o sinal se propaga pelo meio.

RUIDOS: são sinais não desejados que aparecem na linha, interferindo na


transmissão.

Tipos de Ruídos:

CROSS-TALK: Ocorre quando dois fios correm em paralelo. O sinal em um fio


gera um campo magnético em seu entorno. Este campo eletromagnético, por sua
vez, gera cargas elétricas em fios que estejam próximos o suficiente. É como se o
sinal “pulasse” entre fios próximos. Este é o principal motivo para não passarmos
fiações elétricas e de dados em mesmos dutos.

RUIDO BRANCO: é um chiado incoerente e constante, que forma um fundo a toda


sinalização eletrônica, variando conforme a temperatura e o material utilizado para
guiar a comunicação (fio).

RUIDO IMPULSIVO: são pulsos de onda abruptos e passageiros, causados por


variações de voltagem nos aparelhos, raios, contato dos canais com árvores,
transmissões de radar, soldas mal feitas, contatos sujos, placas mal encaixadas,
sinalização de companhias telefônicas ou PABX,...

2.5 Detecção/Correção

Faz-se necessário então a detecção de erros em transmissões. Isto normalmente


é feito incluindo-se bits ou sequências de bits de controle ou de paridade, que
servem para uma “conferência” dos dados transmitidos.

O bit de paridade é incluído ao final de cada byte sendo um ou zero conforme o


número de uns do byte seja par ou impar. Na recepção, a paridade é testada
novamente para detecção dos erros.

Quando zero for o bit de paridade para um número impar de uns, dizemos que
estamos usando a paridade impar, caso o zero seja o bit utilizado para um
número par de uns, dizemos estar usando paridade par. O uso da paridade par
ou impar não tem qualquer efeito sobre a eficiência do método que não é muito
grande, pois caso tenhamos dois bits errados em um mesmo byte, o método não
detectará o erro.

Uma forma de melhorarmos a eficiência do teste de paridade é incluirmos mais


bits de paridade para blocos de bytes, sendo que estes novos bits de paridade
seriam achados consultando-se os primeiros, segundos,... bits de todos os bytes
do bloco, conforme exemplo abaixo. Este tipo de teste é chamado de Teste de
Redundância Longitudinal (LRC-Longitudinal Redundance Check).

Exemplo:(paridade par)
1 0 1 1 0 1 1 1
0 1 0 0 1 0 1 1
1 1 0 1 0 0 0 1
1 0 0 1 0 0 1 1
0 1 1 1 1 0 1 1
1 0 1 0 0 0 0 0
0 1 0 1 1 1 0 0
0 0 1 1 1 0 0

No caso do teste de CRC (Cyclic Redundancy Check), os dados transmitidos são


transformados em um polinômio e a sequência de bits transferida para conferencia
é o resto da divisão deste polinômio por um outro, pré estabelecido. Quando os
dados são recebidos, o aparelho receptor faz novamente a divisão e compara o
resto obtido com o recebido. Caso os restos não sejam iguais, o erro é detectado.
Os protocolos mais modernos (MNP5 , V42 ) utilizam variações deste
procedimento.

A sequência de bits transmitida para verificação é comumente conhecida como


checksum.
Alguns polinômios usados como DIVISOR nos testes de CRC:

CRC-16 (ANSI) : x16+x15+x5+1

CRC (CCITT) : x16+x12+x5+1

O teste de CRC é frequentemente utilizado em compactadores de dados para


verificar a integridade das informações após a sua descompactação.

Detectado o erro, pode-se adotar um dos procedimentos, dependendo da


finalidade dos dados transmitidos:

SINALIZA-LO, incluindo um byte padrão (* ou ?) no lugar do com erro (raro);

Solicitar a RETRANSMISSÃO do bloco de dados a origem da transmissão;

DESCARTAR a informação, caso algum método de recuperação de informações


faltosas entre os comunicantes (utilizado na internet).

Conceitos:

PROTOCOLO: Conjunto de normas.

PROTOCOLOS DE COMUNICAÇÃO definem os diversos parâmetros em


que se dará a transmissão como: tipo de modulação,codificação dos dados,
frequências e amplitudes utilizadas, bits de controle; etc...

Além dos protocolos de comunicação existem, protocolos de detecção e correção


de erros (definem a forma de conferência dos dados recebidos e como recupera-
los caso necessário) e os protocolos de compactação de dados. Em todos os
casos, existem protocolos diferentes para a mesma finalidade e a comunicação
entre dois equipamentos só se dará caso ambos utilizem o mesmo conjunto de
protocolos.

Os protocolos mais utilizados atualmente são os recomendados pelo ITU


(International Telecomunication Union - União Internacional para
Telecomunicações), antigo CCITT (Consultive Committee for International
Telegraph and Telephony), órgão da ONU, com sede em Genebra, Suíça.
Exemplos: V22, V32, V32bis, V36 (comunicação) V42, V42bis (compactação e
correção), X25 (comutação de pacotes).

2.6 Canais de transmissão

Um canal é uma trajetória para transmissão de informação entre dois ou mais


pontos. Ele pode ser classificado quanto às direções possíveis do fluxo de
informações que conduz, podendo ser:
-Simplex - se ele levar informações em apenas uma direção

-Half Duplex - se ele conduzir informações em ambas as direções, mas não


simultaneamente

-Full Duplex - se ele conduzir a informação em ambas as direções ao mesmo


tempo.

As transmissões FULL DUPLEX eventualmente também são chamadas


transmissões a 4 fios e as HALF DUPLEX a 2 fios porém, estes termos não são
bem aplicados pois eventualmente pode-se dividir a banda de transmissão de uma
linha, de forma conseguir-se conexões FULL DUPLEX com apenas dois fios.

Um canal físico pode ser dividido em diversos canais lógicos. Esta técnica é
chamada de MULTIPLEXAÇÃO do canal. A multiplexação pode ser implementada
por diversas técnicas, entre elas:

TDMA (Time Division Multiple Access): Os diversos canais lógicos utilizam o


mesmo canal físico, mas não ao mesmo tempo.

FDMA (Frequence Division Multiple Access): Os diversos canais lógicos utilizam o


mesmo canal físico ao mesmo tempo, mas em frequências diferentes.

Redes de Pacotes: As informações dos diversos canais são divididas em


pequenos pacotes de informação, que entram em uma fila e são transmitidos
individualmente. A informação é remontada no destino (este item será visto mais
detalhadamente no item REDES).

Os canais físicos utilizam-se das mais diferentes tecnologias para transmissão


de dados como:

Cabos metálicos

 Paralelos, trançados, coaxiais

 Fios de telefone comuns, CAT-5 para redes locais;

Cabos de Fibra Ótica

 Tipo de cabo que utiliza a luz ao invés dos sinais elétricos para transmitir
informações;

 Fino e Flexível;

 Suporta grandes velocidades, com nível muito baixo de distorção;

 Não susceptível a interferência eletromagnética;


 Multimodo, gradual ou monomodo (tradeoff entre velocidade e distância)

Cabos submarinos

 Cabos estendidos no fundo dos oceanos ligando diferentes continentes;

 Podem ser metálicos (desuso) ou de fibra ótica;

Comunicação sem fio

 Oscilador gera ondas eletromagnéticas que podem ser detectadas por


receptores;

 Mais susceptível interferências (condições atmosféricas, outros


transmissores);

 Antenas utilizadas nas transmissões podem ser direcionais ou não. Antenas


não direcionais são frequentemente chamadas omnidirecionais;

 Antenas direcionais concentram sua potência em uma determinada direção,


enquanto antenas omni concentram a potência em um plano. A medida
desta concentração é feita em dB (decibeis) que é uma comparação entre a
antena em questão e uma antena que fizesse a dispersão de seu sinal de
forma idêntica em todas as direções (antena isotrópica), apesar deste tipo
de antena na realidade não existir;

Microondas (rádio)

 Altamente Direcional;

 Possível a grandes distâncias;

Transmissão via satélite

 Satélites de comunicação ficam em órbita geoestacionária a dezenas de


kilometros de altura da terra, na linha do equador;

 Os satélites recebem sinais e os retransmitem a terra;

O canal lógico existe sempre que for estabelecida uma conexão,


independentemente da tecnologia utilizada no canal físico, sendo comuns
estruturas mistas. Por exemplo, Um canal de comunicação entre Juiz de Fora e o
Rio provavelmente utiliza-se de cabos para a ligação entre o local de origem dos
dados e a Embratel, mas a conexão entre a Embratel JF e a Embratel Rio trocarão
os dados via satélite. Neste caso, um canal lógico foi estabelecido utilizando-se
diferentes meios de transmissão nos canais físicos.
As linhas telefônicas comuns também são chamadas de LINHAS COMUTADAS
ou LINHAS DISCADAS, pois passam pelas centrais telefônicas que se incumbem
de conectar o aparelho de origem ao aparelho cujo número telefônico foi discado.
Comumente as centrais incluem ruídos indesejáveis nas conexões, limitando as
velocidades de transmissão.

As empresas de telecomunicação oferecem também as LPCD (Linha Privativa de


Comunicação de Dados), que são linhas diretas (não passam por centrais) entre
dois pontos. Tais linhas possibilitam velocidades de transmissão mais altas, no
entanto possuem custos elevados. Em dados de hoje (abril/1997), é cobrado
aprox. R$800,00 por uma LPCD local de 128 KBps. Se a LPCD for interurbana,
por exemplo, entre JF e BH, este valor sobe consideravelmente.

2.7 Transmissões Paralelas e Seriais

Quando os bits componentes de um byte são transmitidos todos simultaneamente,


por canais independentes, dizemos que a transmissão é PARALELA, caso todos
os bits trafeguem por um mesmo canal, dizemos que a transmissão é SERIAL. As
transmissões paralelas são aparentemente mais eficientes porem vários sinais
sendo transmitidos ao mesmo tempo por cabos próximos, tendem a gerar
correntes induzidas indesejadas, o que tem levado os projetistas a optar mais
frequentemente por protocolos seriais, mesmo quando a distâncias pequenas,
onde seria viável a utilização de diversos cabos, necessários às transmissões
paralelas.

2.8 Transmissões Síncronas e Assíncronas

As transmissões seriais podem ser SINCRONAS ou ASSINCRONAS. As


transmissões ASSINCRONAS incluem além dos bits de dados, bits de
sincronismo a cada byte transmitido de forma que o aparelho receptor seja
informado quando o byte começa e termina. Na transmissão SINCRONA, os bytes
são transmitidos um após o outro, sem qualquer sinal especial entre eles em
grandes blocos, só sendo necessários sinais de sincronismo entre um bloco e
outro. Apesar de a transmissão SÍNCRONA ser mais eficiente, os aparelhos
utilizados são mais caros, pois necessitam de clocks extremamente precisos,
sendo a transmissão ASSINCRONA mais comum.
3 Redes de Computadores

É um conjunto de equipamentos com capacidade de processamento que


compartilham recursos entre si. Estes recursos podem ser físicos (discos,
impressoras, MODEM e periféricos de uma forma geral) ou lógicos (dados,
programas e arquivos de uma forma geral).

É preciso cuidado para não confundirmos as redes locais com os computadores


multiusuários, pois estes últimos, apesar de uma configuração física parecida,
possuem uma forma de trabalho totalmente diferente. Nos computadores
multiusuário (normalmente Mainframes ou Minis), Existe apenas uma CPU
centralizando todos os recursos computacionais, e os usuários possuem diversos
terminais para acesso estes recursos. É como se possuíssemos um computador
com vários conjuntos de teclado e vídeo. Nas redes, existem vários computadores
processando de forma independente, somente compartilhando alguns recursos
computacionais.

Existem alguns softwares chamados EMULADORES, que podem transformar um


micro em um terminal de um computador multiusuário. Neste caso, apesar do
micro possuir capacidade de processamento, ele atua como terminal, sendo todo
o trabalho processado pelo computador multiusuário.

Classificamos as redes de computadores quanto a distância entre seus nós em 3


classes:

• LAN - Local Area Network - Rede Local. Conecta equipamentos separados


por pequenas distâncias. Não existe limite de distância bem definido.
Podemos classificar uma rede como local, quando seus computadores
encontram-se em um mesmo prédio, separados por no máximo algumas
centenas de metros;

• MAN – Metropolitan Área Network – Rede metropolitana. Seus


computadores encontram-se em uma cidade ou no máximo em uma área
metropolitana. Distância da ordem de algumas dezenas de quilômetros;

• WAN - Wide Area Network - Redes de Longa Distância) - Conectam


equipamentos em cidades, estados ou até mesmo países distintos.
Distâncias na ordem de milhares de quilômetros.
3.1 Paradigma Cliente Servidor

Apesar de utilizarmos o termo “servidor” com bastante frequência para fazermos


referência a uma máquina, normalmente com maior poder de processamento, em
uma rede de computadores, é mais preciso utilizamos a palavra para designar
uma categoria de programas, que normalmente é executada nestas máquinas.

O modelo “cliente-servidor” baseia a comunicação entre dois pontos em duas


classes de programas: O SERVIDOR, que fica disponível para fornecer, “servir”, a
uma determinada necessidade, e o CLIENTE, que necessita de algum serviço.

O servidor tem de estar 24 horas por dia ativo no computador, pois não se sabe
quando o cliente solicitará o serviço (o cliente normalmente não consegue iniciar a
execução de um serviço em um computador remoto) já o cliente pode ser
carregado apenas quando o usuário necessitar. Normalmente o servidor não tem
interfaces diretas com o usuário (tela/teclado), pois as solicitações ao servidor são
feitas por outros programas (os clientes) por meio da interface de rede, e as
respostas também são enviadas aos clientes pela rede.

Como exemplo, podemos citar o serviço de páginas de hipertexto (WWW). O


cliente é o navegador (Internet Explorer, Firefox, Opera,...) que todos utilizamos
quando navegamos pela internet. O servidor (Apache, IIS, ...) é um programa que
o provedor de conteúdo tem de utilizar para que possamos acessar suas páginas.
Ao carregarmos um endereço no navegador, este se conecta ao servidor, solicita
a página, que é enviada pela rede e exibida.

3.2 Comunicação Ponto-a-Ponto

No modelo de comunicação ponto-a-ponto (pear-to-pear, P2P), ambos os


programas comunicantes possuem características de cliente e servidor, ou seja,
aguardam por requisições e podem eventualmente fazer requisições a outros
participantes da rede ponto a ponto. Este modelo vem ganhando importância nos
últimos anos, com o surgimento de sistemas para compartilhamento de arquivos
entre usuários da internet (kazaa, emule, etc). Estes sistemas ainda dependem de
um servidor tradicional (cliente/servidor), para obter uma lista dos participantes da
rede ponto a ponto, depois disto, os programas ponto-a-ponto trocam arquivos
entre si, sem a participação direta do servidor tradicional.

3.3 Cabeamento

a) PAR TRANÇADO - UTP (Unshielded Twisted Pair)

Cabos são trançados de forma a minimizar a influência de correntes induzidas por


campos magnéticos na comunicação. Trançando-se os cabos, as correntes
induzidas trocam de sentido a cada cruzamento dos cabos, cancelando-se
mutuamente.

Cabos de par trançado mais comuns:

10 BASE-T – 2 fios de cobre de aprox. 1mm entrelaçados de forma a minimizar a


interferência. Também utilizados no sistema de telefonia convencional.

CAT-5 – O padrão conhecido como CAT-5 (ou categoria 5) É o mais utilizado para
a conexão de redes locais atualmente. É composto de quatro pares trançados
envoltos em um protetor plástico. Utilizam-se conectores padrão RJ45 com oito
conexões. Atinge até 100 m sem repetidores.

O conector RJ45 deve ser crimpado utilizando-se um alicate especial seguindo o


padrão TIA/EIA 568-B que prevê a conexão na ordem abaixo. Devemos
considerar o pino um como sendo o mais à esquerda, com os conectores virados
para cima.
Os pinos 1, 2, 3 e 6 são destinados a transmissão (TX) e recepção (RX)
exclusivamente (canais simplex). Quando conectamos uma placa de rede a um
concentrador (hub ou switch), estes equipamentos cuidam para que o TX de um
cabo seja conectado ao RX de outro.

Podemos também conectar dois computadores sem concentrador, ligando uma


placa de rede diretamente na outra, mas, neste caso, temos de promover os
cruzamentos dos pinos 1/3 e 2/6, criando o cabo CROSS OVER, ilustrado na
figura acima.

É possível conectarmos um concentrador em um uma porta de outro


concentrador. Este tipo de conexão é dita “em cascata”. A única preocupação
neste caso é que a inversão dos pinos TX/RX não seja feita duas vezes, uma por
cada concentrador. Equipamentos mais modernos detectam automaticamente o
tipo de dispositivo que está sendo conectado em uma porta, fazendo os ajustes
necessários automaticamente. Outros possuem uma porta especial chamada
porta de uplink, onde a inversão TX/RX não é feita. Caso não disponhamos de
nenhum destes recursos, ainda nos resta conectar os concentradores com um
cabo cros-over, que invertendo novamente as conexões, anula a inversão de um
dos concentradores (inverter duas vezes é o mesmo que não inverter!). Veja na
figura a seguir o esquema para a conexão de concentradores em cascata com
porta de uplink.
Os cabos Cat-5 se adaptam perfeitamente a transmissões de até 100 Mbps.
Protocolos mais rápidos (Gigabit Ethernet), por exemplo, devem ser utilizados
sobre cabos Cat-5e, Cat-6 ou Cat-7.

b) COAXIAL – 10 BASE2 – Utiliza camadas concêntricas de material condutor e


isolante. As conexões são feitas com o padrão BNC. Alcança até 200 m.
Atualmente pouco utilizado.

c) Fibra Ótica – Utiliza dois meios transparentes com diferentes densidades, de


forma que a luz seja sempre refletida para o interior da fibra. Pode ser monomodo
quando carrega apenas um comprimento de onda ou multimodo ou gradual
quando carregam mais de um comprimento de onda. Fibras monomodo
conseguem transmitir sinais a maiores distâncias, mas fibras multimodo
conseguem maiores larguras de banda.
Dependendo da luz utilizada (lazer, diodo), fibras óticas podem ser utilizadas
para transmissões acima de 100 Km, com altas taxas de transmissão,
praticamente sem perdas.

3.4 Topologia

A palavra TOPOLOGIA indica a forma com que arrumamos os computadores na


rede. Existem 3 topologias básicas:

a) BARRAMENTO – Um cabo
passa de computador em
computador, possuindo
terminadores nas extremidades,
que “fecham” a rede. Sem os
terminadores a rede não funciona,
portanto se o cabo se romper em
algum ponto toda a rede para de
funcionar.
b) ESTRELA – Um dispositivo
central (hub) concentra a conexão
entre os computadores. Caso a
conexão entre um computador e o
hub caia, a rede continua a
funcionar normalmente.

c) ANEL - Similar ao barramento


porem a rede é fechada
conectando-se o último micro ao
primeiro. Não é muito comum
atualmente.

3.5 Comunicação sem fio (WIRELESS)

Vários padrões para comunicação sem fio existem atualmente.

O BLUETOOTH (802.15) foi desenvolvido para visando possibilitar


comunicação entre eletrodomésticos ou pequenos dispositivos de uso
pessoal, como PDAs, telefones celulares , computadores portáteis,
controles de videogames mas também é utilizado para a
comunicação de periféricos, como impressoras e scanners.

Os dispositivos Bluetooth se comunicam a distâncias de no máximo 10 metros,


agrupando-se em redes que chamadas piconets ou picoredes. Cada piconet
possui um dispositivo mestre e no máximo sete outros chamados escravos. Ao
líder atribuição de frequências e sincronização dos participantes de sua piconet.
Se for necessária a conexão de mais de oito dispositivos, até 10 piconets podem
coexistir em um mesmo ambiente. A este agrupamento de piconets chamamos
scatternet.

O padrão WiMax (IEEE 802.16) é um padrão que suporta altas velocidades (até
10Gbps) a grandes distâncias (até 50 Km). Pouco utilizado, principalmente por
necessitar de autorização da ANATEL para instalação, e por apresentar largura de
banda relativamente baixa, se considerarmos a possibilidade de abrangência.

Uma possibilidade interessante das redes sem fio, é a criação de redes em malha
(mesh ou ad-hoc), onde cada nó incluído na rede pode atuar como intermediário
entre outros nós e o restante da rede, desta forma, cada nó aumenta a cobertura
da rede

O padrão de comunicação sem fio mais importante para redes de computadores


atualmente é o Wi-Fi (IEEE 802.11) que será estudado com mais detalhes no
capítulo sobre INTERNET.

3.6 O Modelo ISO/OSI

A ISO (International Standarts Organization) propôs um modelo de segmentação


de tarefas na interconexão de computadores via rede em 7 camadas (layers), com
a finalidade de possibilitar ao usuário a escolha de aplicativos de diversos
fornecedores para as diversas camadas e minimizar a necessidade de alteração
com o surgimento de novas tecnologias para qualquer das camadas.

Este modulo é chamado Modelo de referência OSI (Open Systems


Interconection). As 7 camadas que o compõem estão relacionadas abaixo:

7. APLICAÇÃO Camada que implementa a funcionalidade desejada pelo


usuário. Responsável pela interface com o usuário.

6. APRESENTAÇÃO Traduz diferentes representações de números/caracteres


suportadas por computadores diferentes.

5. SESSÃO Estabelece sessões de comunicação entre máquinas,


controlando retomadas após perdas de comunicação.

4. TRANSPORTE Assegurar que os dados cheguem ao destino como a


aplicação necessita (sem erros, na ordem correta,...)

3. REDE Divide informações em pacotes e determina para onde


estes pacotes devem ser transmitidos para alcançarem seu
destino final (roteamento).

2. LIGAÇÃO Dividir informação a ser transmitida em frames, checar se


os frames foram corretamente transmitidos.

1. FÍSICA Codificação da informação em diferentes voltagens,


quantos milisegundos cada bit será mantido na linha,...
4 A INTERNET

4.1 A INTERNET

Internet é a maior rede mundial de computadores existente na atualidade.

A Internet é um conglomerado de milhares de redes eletrônicas interconectadas,


criando um meio global de comunicação. Essas redes variam de tamanho e
natureza, bem como diferem as instituições mantenedoras e a tecnologia utilizada.
O que as une é a linguagem que usam para comunicar-se (protocolo) e o conjunto
de ferramentas utilizadas para obter informações (correio eletrônico, FTP, telnet,
WWW). As informações podem ser encontradas em diferentes formatos e
sistemas operacionais, rodando em todo tipo de máquina.

Atualmente, o número estimado de usuários da Internet é de 40 milhões em mais


de cem países. Esta significativa massa de usuários acessa a rede através de
computadores e terminais em instituições educacionais, provedores comerciais e
outras organizações.

4.2 Como começou a INTERNET

O embrião da Internet surgiu de uma pequena rede experimental de computadores


criada em 1969 pela Advanced Research Projects Agency (Arpa) do
Departamento de Defesa dos EUA, para permitir a partilha de recursos
computacionais, tais como bancos de dados, computadores de alto desempenho e
dispositivos gráficos, entre os pesquisadores e fornecedores contratados pelo
Departamento. Logo ela passou a ser usada também como meio de cooperação
entre os participantes do projeto, possibilitando o uso de correio eletrônico, dentre
outros serviços. Tal rede interligava inicialmente as universidades americanas de
Stanford, Berkeley, UCLA e Universidade de UTAH através do NCP (Network
Control Protocol).

Em 1974 a rede contava com 62 servidores e tornou-se necessária a substituição


do NCP pois este possuía a limitação de 156 máquinas conectadas. Foi proposto
e aceito o TCP/IP que possibilita a interconexão de até 4 bilhões de máquinas. O
TCP/IP e o NCP funcionaram em paralelo até 1983, quando o NCP foi
definitivamente abandonado.

Em 1980, essa rede experimental foi dividida em outras duas: a Arpanet, para
pesquisa civil com fins militares, e a Milnet, com fins exclusivamente militares. A
interligação dessas redes foi chamada de Defense Advanced Research Projects
Agency Internetwork, nome que foi abreviado posteriormente para Internet. A
expansão dessa nova rede estimulou o surgimento de diversas redes
descentralizadas nos EUA, tais como UUCP, CSNET, BITNET, etc.

4.3 O modelo TCP/IP

O modelo OSI serviu de base para o modelo TCP/IP, utilizado na INTERNET,


como podemos ver abaixo.

CAMADA PRINCIPAIS PROTOCOLOS

7 – APLICAÇÂO HTTP, TELNET, FTP, SMTP, DNS

4 – TRANSPORTE TCP, UDP

3 – REDE IP

1– FÍSICA (engloba as ETHERNET, FAST ETHERNET, TOKEN RING, FDDI.


camadas 1 e 2 do modelo
OSI)

4.4 Camada Física

A camada física lida com problemas como, por exemplo:

• tipo de cabeamento e conectorização a ser utilizada;

• codificação do canal (qual o significado de cada sinal enviado);

• controle de acesso ao meio de comunicação.

Este último item, é considerado o mais importante nos protocolos de camada


física, por isto, é comum chamarmos esta camada de camada de controle de
acesso ao meio, ou MAC (Medium Access Control).

ETHERNET (IEEE 802-3)

É o protocolo de camada física mais utilizado para redes locais da atualidade.

Inicialmente as redes ETHERNET foram projetadas para trabalhar com topologia


em barramento, com cabos coaxiais, a 10MBps. Hoje a implementação mais
comum é em ESTRELA a 100 MBps e cabeamento CAT 5, chamado Fast
Ethernet, mas já se existem especificações para maiores velocidades (Gigabit
Ethernet) e sobre meios físicos diversos (Fibra ótica, Wireless,...).

O Ethernet utiliza o padrão de sinalização de 0,85 V para 1 e –0,85 V para 0


(Manchester Encoding).O Frame Ethernet é composto da seguinte forma:

•Preâmbulo (7 bytes iguais):10101010;

•Início de Frame (1 byte):10101011;

•Endereço de destino (6 bytes);

•Endereço de Origem (6 bytes);

•Tamanho do frame em bytes (2 bytes);

•Dados (46 a 1500 bytes. Frames de tamanho zero são válidos, mas a área
de dados deve conter no mínimo 46 bytes, que não serão utilizados);

•CheckSum (4 Bytes);

O ethernet utiliaza para controle de acesso ao meio o CSMA/CD (Carrier Sense


Multipple Acces/Colision Detectection). Neste método, todas as máquinas escutam
o meio e podem tentar utilizar a rede sempre que este esteja silencioso.

Mesmo escutando o meio, se duas máquinas tentarem o acesso em intervalos de


tempo inferiores ao tempo de propagação do sinal, ambas encontrarão o meio
silencioso e transmitirão simultaneamente. Se isto ocorrer, dizemos que houve
uma COLISÃO. Ambos os comunicantes devem escutar o meio logo depois de
colocada sua mensagem, a fim de detectar uma eventual colisão, neste caso,
nenhuma das duas consegue enviar sua mensagem. Ambas as máquinas entram
em um estado de espera por um tempo (pequeno) aleatório, e tentam acessar a
rede novamente.
É um protocolo muito eficiente, devido a sua simplicidade, porem pode perder em
desempenho quando existem muitos computadores utilizando a rede, e a
probabilidade de colisão aumenta. Não se pode garantir um tempo máximo de
espera para acesso a rede.

Os protocolos da camada física normalmente identificam os equipamentos de


comunicação por endereços chamados endereços físicos ou endereços MAC. No
caso do ETHERNET, também é usada a expressão endereço ETHERNET e o
endereço vem gravado na interface de rede (placa) pela fábrica, não sendo
possível alteração pelo usuário.

Os endereços ETHERNET são números de 6 bytes, normalmente escritos em


hexadecimal, como em 00-02-2F-EB-05-93. Teoricamente não deveriam existir
duas placas ETHERNET com mesmo endereço, no entanto, na prática existem
placas com endereços idênticos no mercado. Estas placas não podem ser
instaladas em uma mesma rede local.

OBS: Cuidado para não confundir ETHERNET com INTERNET !!

TOKEN RING (IEEE 802-5)

Desenvolvido pela IBM. Normalmente implementado em anel. Um padrão


(chamado TOKEN) circula pelo anel dizendo que a rede está disponível. Quando
um computador não necessita do meio, ele simplesmente passa o token a frente.
Se necessitar do meio, a máquina deve esperar receber o token, quando ocorrer
ele sabe que pode utilizar o meio com exclusividade, sem riscos de colisão. Após
um determinado tempo a máquina deve interromper sua transmissão e passar o
token à frente.

Apesar de possuir vantagens sobre o ETHERNET em grandes taxas de utilização


da rede, este padrão é muito pouco utilizado atualmente.

Wi-Fi (IEEE 802-11)

É o principal padrão para o estabelecimento de redes locais sem fio. Vem


ganhando muita popularidade nos últimos anos, com o barateamento dos
equipamentos que implementam esta tecnologia.

Possui dois modos de funcionamento: ad-hoc e


infraestrutura.

No modo ad-hoc as estações comunicam-se


livremente entre si, sem a necessidade de um
ponto central. Por ser de difícil administração, é
pouco utilizado.
No modo infraestrutura surge a figura de um ponto central que intermeia todas as
comunicações entre as estações. Este ponto central é chamado Access Point
(AP), ou roteador wireless (veja figura ao lado).

Existem várias variações do protocolo. As principais são:


• IEEE 802.11b: (2,4 GHz / 11 Mbps)

• IEEE 802.11g: (2,4 GHz / 54 Mbps) compatível com o padrão anterior.

• IEEE 802.11n: (2.4 ou 5 GHz / 128 Mbps) compatível com b e g.

O CSMA/CD não pode ser aplicado pois uma estação não tem condições de saber
se o meio de comunicação está ou não sendo utilizado pois pode estar fora do
alcance de outra estação que, apesar disto, pode estar utilizando o meio, trocando
dados com o AP. A solução para o problema se baseia no fato de todos os
participantes da rede terem de estar necessariamente na área de cobertura do AP.
Uma estação que deseje transmitir, primeiro envia ao AP uma solicitação (RTS –
Request to Send). Caso o AP esteja ocioso, ele envia a autorização (CTS – Clear
to Send). O CTS é necessariamente percebido por todas as estações que ficam
cientes de que o meio está ocupado. Ao final da transmissão, o AP envia um sinal
(ACK – Acknowledge) que confirma a recepção dos dados ao emissor e informa a
todas as demais estações que o meio está livre. Desta forma evita-se colisões.

Como os dados são transmitidos pelo ar, a espionagem fica facilitada em relação
à transmissão com fio. Qualquer um pode colocar um receptor na área de
cobertura do AP e receber todos os pacotes que trafeguem pela rede, até mesmo
da rua, sem a necessidade de entrar no prédio onde se encontrar instalado o AP.
Portanto, a segurança se reveste de especial importância. Estão disponíveis na
maioria dos AP's disponíveis atualmente os seguintes recursos encontram-se
disponíveis:

 Cancelar o broadcast da SSID: Os AP's normalmente transmitem


periodicamente suas identificações (SSID) e as estações podem detectar
automaticamente as redes a que pode se conectar. Cancelando esta
transmissão “escondemos” a rede, em compensação dificultamos a
conexão de estações desejadas, demandando configurações manuais
quando uma nova máquina for desejada na rede.

 Listas de controle de acesso (ACL – Access Control List): Podemos


criar listas de IP's ou endereços MAC que podem ou não podem acessar
nossa rede. Ou temos por padrão que todos podem acessar a rede exceto
os participantes de uma “lista negra” ou, ao contrário, estabelecemos que
ninguém pode acessar a rede exceto os participantes de uma “lista branca”.
Esta segunda opção é normalmente mais útil aos administradores.
 Criptografia e autenticação por senha: Dois padrões são utilizados
atualmente o WEP (Wired Equivalent Privacy) e o WPA (Wi-Fi Protected
Access). O WEP não é considerado seguro, portanto sua utilização é
desaconselhada, sendo o WPA a opção mais indicada. O WPA é
apresentado tradicionalmente em duas formas. Uma simplificada, mais
voltada para uso particular ou de pequenas empresas, que demanda a
configuração de uma chave compartilhada entre o AP e todas as estações.
Outra forma mais elaborada, mais voltada para o mundo corporativo,
demanda a instalação e manutenção de um servidor de autenticação
(RADIUS ou LDAP), onde são cadastrados todos os usuários da rede
(pessoas) com senhas individualizadas.

4.5 Camada Rede – O protocolo IP

O principal objetivo do IP é permitir aos protocolos das camadas superiores


(transporte, aplicação) abstraírem-se dos limites das redes em que se encontram,
tratando diversas redes interconectadas como se fosse uma única
(“internetworking”).

Os equipamentos que fazem esta interconexão possuem diversas interfaces de


rede, cada uma conectada a uma das redes onde a interligação é necessária.
Para conectar apenas duas redes locais, normalmente basta um computador com
duas placas de rede. Um computador nestas condições é usualmente chamado de
bridge, pois faz uma ponte entre as duas redes locais.

Quando o objetivo é interligar várias LANs, o equipamento mais utilizado é um


computador dedicado denominado ROTEADOR, cuja principal função é colher
pacotes endereçados a redes diferentes da que se encontram atualmente e
coloca-los na rede que esteja mais próxima de seu destino final.

O protocolo IP é dito STATELESS ou SEM ORIENTAÇÃO A CONEXÃO, pois


cada pacote de uma conexão é tratado independente de seus antecessores e
sucessores, ou seja, os programas não guardam nenhuma informação sobre o
estado da conexão (STATELESS). Se informações sobre a conexão fossem
armazenadas, classificaríamos o protocolo como STATEFULL, ou ORIENTADO A
CONEXÃO.

O IP não fornece recursos para garantir uma determinada velocidade de


transmissão. Dizemos que o IP é um protocolo Best Effort (melhor esforço).
Protocolos em que se negocia uma conexão a uma determinada velocidade e tal
velocidade é garantida durante toda a conexão são ditos protocolos provedores de
QoS (Quality of Service – Qualidade de Serviço).
Os endereços físicos (endereço MAC) das placas de comunicação não podem ser
utilizados para a entrega das mensagens, pois estes se restringem a suas próprias
redes, sendo próprios ao protocolo adotado na camada física. Portanto, a fim
possibilitar a união de diversas redes locais, possivelmente implementadas com
diferentes protocolos na camada física, criou-se o endereço IP.

Endereçamento IP

O endereço IP é um número de 32 bits, normalmente exibido de 4 em 4 octetos na


base decimal, separados por pontos, dividido em um prefixo que identifica a rede
onde está conectada a máquina e um sufixo que identifica cada máquina
individualmente em sua rede. O endereço IP completo (prefixo da rede + sufixo da
máquina) tem de ser único em todas as sub-redes que componham a rede maior.

Para efeito de gerenciamento e controle, os gestores dividiram os endereços IP na


INTERNET em classes com diferentes “fronteiras” entre o endereço de rede e da
máquina conforme pode ser visto na figura 1.

Desta forma cada rede, dependendo do número de máquinas que possuir, recebe
um prefixo para as classes A, B ou C e gerencia o sufixo de forma a não repetir
endereços, podendo inclusive subdividir um sufixo em novo endereço de sub-rede,
caso ele as possua internamente em sua organização.

Portanto o espaço de endereçamento na INTERNET é dividido conforme abaixo:

Classe Faixa de valores Número de Número de MÁQUINAS


(primeiro octeto) endereços de REDE em cada rede

A 0 a 127 128 16.777.216

B 128 a 191 16.384 65.536

C 192 a 223 2.097.152 256

D 224 a 239 --- ---


E 240 a 255 ? ?

Adicionalmente, existem endereços com atribuições especiais, que não devem ser
atribuídos a máquinas. A tabela abaixo relaciona estes endereços especiais.

Prefixo Sufixo Tipo Propósito

Zeros Zeros Este computador Utilizado para computadores


descobrirem seus próprios endereços
IP (possivelmente máquinas sem
disco). Possibilita imagens de boot
iguais para todas as máquinas

Qualquer Zeros Broadcast para uma Mensagens recebidas por todas as


rede qualquer máquinas de uma determinada rede

Uns Uns Broadcast na rede Possibilita broadcast na rede local


local sem a necessidade de conhecimento
de seu endereço

127 Qualquer Loopback Pacote não vai para a rede. É


devolvido localmente para fins de teste
de novos softwares.

10 Qualquer Faixas de endereços Utilização restrita a redes locais com


não roteáveis tradução de endereços ou de teste.
172.16

192.168

O sistema de classes facilita o roteamento, pois dependendo da faixa em que se


encontrar o primeiro octeto do endereço, se sabe quantos bits dele se referem a
rede e quantos a máquina. No entanto, tira versatilidade do sistema. Ficamos
limitados a 3 tamanhos de redes: grande (classe C), muito grande (classe B) ou
exagerada (classe A). Com o crescimento da internet, foi necessária a subdivisão
dos espaços de endereçamento, para acomodar maior quantidade de redes
(menores). Assim nasceu o CIDR (Classeless Interdomain Routing), que
possibilita a utilização de qualquer número de bits para rede, devendo este
número ser informado em um netmask.

Roteamento sem classes (CIDR)


Netmask é a forma de informarmos ao sistema operacional qual a parte do
endereço refere-se a rede e qual a parte do endereço refere-se a máquina. Ele
possui “1’s” na porção rede do endereço e “0’s” na porção máquina. Normalmente
o netmask é escrito no mesmo formato de um endereço IP (bits separados em
octetos escritos na base decimal), apesar de não se tratar de endereço.

Por exemplo, um netmask para uma rede classe “C” é 255.255.255.0, já que
apenas o último octeto dos endereços classe “C” são referentes à rede, os demais
estão totalmente preenchidos por 1’s pois (255)10=(11111111)2.

Administradores frequentemente têm de subdividir o espaço de endereçamento


recebido para a internet. Por exemplo: Suponha que tenha recebido um endereço
classe “C” 200.131.56 e deseje separar o espaço para 4 sub-redes. Neste caso,
devemos separar mais dois bits do último octeto para identificar as redes (00, 01,
10 e 11) e o netmask teria (11000000)2 no último octeto assim o netmask seria
255.255.255.192. Todos os endereços iniciariam por 200.131.56, e teriam para o
último octeto o seguinte:

Primeira sub-rede: de (00000000)2.=(0)10 a (00111111)2=(63)10

Segunda sub-rede: de (01000000)2.=(64)10 a (01111111)2=(127)10

Terceira sub-rede: de (10000000)2.=(128)10 a (10111111)2=(191)10

Primeira sub-rede: de (11000000)2.=(192)10 a (11111111)2=(255)10

O netmask, assim construído, é ideal para a extração do endereço de rede de um


endereço IP. Com um simples “e” (and) bit a bit entre o netmask e o endereço e a
tarefa é efetuada. Como esta tarefa deve ser realizada nos roteadores, a cada
pacote, para decisão da porta de destino, a eficiência é importante.

No entanto, alguns sistemas utilizam uma grafia diferente, indicando o número de


bits componentes do endereço de rede. Por exemplo: 200.131.56.207/24. O 24
após o endereço IP indica que os 16 primeiros bits do endereço referem-se a rede
e, consequentemente, os 8 restantes referem-se ao endereço da máquina.

Exercícios:

1) É possível que tenhamos uma netmask 255.225.0.0 ?

2) Quantos computadores posso colocar em uma rede com netmask


255.255.254.0?

3) Suponha que tenha recebido o endereço classe “C” 200.200.34 para utilizar em
5 redes distintas. Qual será o netmask utilizado e quais as faixas de
endereçamento de cada uma?
4) Um computador possui o endereço IP 200.200.190.98 e netmask
255.255.255.240. Que faixa de endereços compõe a sub-rede deste computador?

Endereço IP X Endereço Físico

Normalmente o endereço IP não pode ser utilizado pela camada física que possui
seu próprio endereçamento, dependente do protocolo utilizado. Portanto o
endereço IP sempre tem de ser convertido no endereço da camada física para
composição do frame que transitará naquele nível mais baixo.

A resolução (descoberta do endereço físico de um determinado endereço IP) pode


se dar de 3 formas distintas Pesquisa em tabela, Computação em forma fechada e
Resolução com troca de mensagem:

a) Pesquisa em tabela:

Forma mais simples e genérica onde cada máquina mantém uma tabela que é
consultada quando necessário. Dependendo do tamanho da rede até mesmo uma
busca sequencial pode ser viável. Outras soluções são a utilização do endereço IP
como um índice para busca ou a utilização de algum tipo de tabela de dispersão
(“hash table”).

A utilização de tabelas indexadas exige que os endereços IP atribuídos sejam


sequenciais, sob pena de desperdício de recursos (memória para tabela).

Um problema nesta implementação é a manutenção das tabelas atualizadas


quando, por exemplo, uma interface de rede é substituída, tendo seu endereço
físico alterado.

b) Computação em forma fechada:

Alguns protocolos da camada física permitem a escolha dos endereços de cada


cartão de rede. Neste caso é possível escolher endereços físicos que
correspondam diretamente ao endereço IP, ou levem a ele por meio de alguma
operação simples. Por exemplo, escolhe-se o endereço físico 5 para a máquina
com endereço IP 123.1.12.5, tornando a resolução obvia.

c) Resolução com troca de mensagem:

As placas de rede Ethernet, largamente utilizadas atualmente, possuem


endereços físicos bits atribuídos pelos fabricantes. Tal fato dificulta técnicas de
computação fechada e os tamanhos das redes atuais inviabilizam simples
pesquisas em tabelas. Portanto tornou-se necessária a criação do ARP (Address
Resolution Protocol).
Com o ARP, uma máquina que deseje enviar uma mensagem, coloca um pacote
de broadcast na rede contendo seus próprios endereços físicos e IP e o endereço
IP da máquina com a qual a comunicação é necessária. Todas as máquinas
recebem o pacote e somente a máquina cujo endereço é desejado responde com
seu endereço físico. Os endereços IP e físicos das máquinas comunicantes são
armazenados em uma memória tipo cache, de forma tornar desnecessária a
repetição da operação caso a comunicação continue (o que acontece com grande
probabilidade).

Exemplo:

Se a máquina 1 precisa comunicar-se com a máquina 2 na rede da figura acima:

A máquina 1 verifica se possui o endereço físico (E1) da máquina 2. Se não


encontrar:

A máquina 1 gera um pacote ARP com com seus próprios endereços (E1 e
192.31.65.7) e o IP desejado (192.31.65.5) e o coloca como um bradcast na rede;

As camadas físicas de todas as máquinas lêem o pacote e o passam para o IP.

Todas as máquinas descartam o pacote exceto a 2;

A máquina 2 insere em sua memória cache os endereços da máquina 1 e gera


uma resposta ARP contendo os endereços da máquina 1 e os seus próprios (físico
e IP);

A máquina 1 lê o pacote enviado pela 2 e insere em seu cache os endereços da


máquina 2.

Eventualmente o problema inverso pode surgir. Uma máquina (diskless,


provavelmente) pode necessitar descobrir seu próprio endereço IP. O RARP
(Reverse Address Resolution Protocol – RFC 903) atende a esta necessidade.
A máquina em questão coloca um pacote de broadcast na rede perguntando “meu
endereço ethernet é X. Alguem conhece meu endereço IP?”. Um servidor deve
responder com a informação desejada.

Tal procedimento possibilita o uso de imagens de boot idênticas para todas as


máquinas diskless de uma rede, economizando espaço para seu armazenamento
e simplificando o processo.

Roteamento para fora da sub-rede

A camada física enxerga somente a sub-rede em que se encontra e a principal


função do IP é justamente fazer com que várias sub-redes sejam vistas como uma
única rede por suas camadas superiores. Portanto, quando uma mensagem é
destinada para um endereço IP externo a sub-rede local o ARP não conseguirá
resolver o endereço e alguma estratégia adicional é necessária.

O tráfego de mensagens entre redes é feito através de roteadores que pertençam


a ambas as envolvidas. Portanto uma mensagem destinada a um endereço IP
externo deve ser encaminhada sempre ao roteador que se encarregará de colocar
o pacote na rede correta, ou em uma outra rede que esteja interconectada a
correta de alguma forma.

Portanto, cada máquina deve reconhecer o pacote endereçado a uma máquina


externa e encaminhá-lo ao roteador ou o roteador deverá reconhecer que a
mensagem destina ao exterior e responder a solicitação ARP com seu próprio
endereço físico (esta solução é chamada de proxy ARP).

Exemplo: Considerando ainda a figura acima, se a máquina 1 necessitar


comunicar-se com a máquina 4 (supondo proxy ARP):

A máquina 1 solicita via ARP o endereço físico da máquina 4;

Roteador R1 detecta endereço externo e responde com seu endereço físico;

Roteador R1 consulta sua tabela de roteamento e verifica que deve colocar o


pacote na rede FDDI;

Roteador R1 coloca pacote ARP na rede FDDI mas, como a máquina 4 é externa
também a rede FDDI, o roteador R2 responde com seu endereço físico;

Pacote é passado a R2 que coloca um pacote ARP na segunda rede ethernet


(192.31.63.0) que é respondido pela máquina 4;

Pacote é entregue a máquina 4;

Após o primeiro pacote entregue, os endereços físicos das diversas redes


referentes ao caminho entre 1 e 4 constarão das memórias cache de todas as
máquinas envolvidas e o ARP não será mais necessário.

Tradução de Endereços de Rede (NAT – Network Address Translation)

É uma forma de mapear toda uma rede (ou redes) para apenas um endereço IP.
NAT é necessário quando o número de endereços IP atribuídos a você pelo seu
Provedor de Serviços Internet é menor que o número total de computadores para
os quais você quer prover acesso à Internet.

Quando utilizamos o NAT, podemos configurar toda uma rede local com
endereços não roteáveis, usualmente o classe B 192.168.?.? ou o classe A
10.?.?.?. O NAT tem de ser executado na máquina que faça a interligação da rede
com a internet (gateway), que possuirá uma conexão interna com um endereço
não roteável, e uma conexão externa com um endereço roteável. Quando uma
estação da rede deseja se comunicar com uma máquina externa, o gateway
substitui o endereço interno pelo externo antes de passar o pacote para a internet
e quando a resposta externa chega, faz a substituição inversa, do endereço
externo pelo interno. Desta forma, todas as solicitações de todos os computadores
da rede sairão com o mesmo endereço IP, todos os computadores parecendo
apenas um para as máquinas externas a rede.

Observação:

Quando uma máquina, como no NAT, funciona como um intermediário entre duas
outras comunicantes, dizemos que ele funciona como um “proxy” . Existem
servidores proxy para várias outras finalidades como segurança, criptografando e
decriptografando dados ou desempenho, funcionando como um cachê para os
clientes.

Servidores NAT escondem os IP’s reais das máquinas de uma rede e, por isto,
tornam a comunicação mais segura, no entanto, máquinas externas não podem
iniciar comunicações com máquinas internas pois não conhecerão seus endereços
IP. Na realidade, UM e apenas UM servidor para cada serviço pode ser instalado
na rede interna, configurando-se o gateway para repassar todas as solicitações de
um determinado serviço para o servidor interno. Neste caso, o cliente externo
endereça para a interface externa do gateway, que troca o endereço externo pelo
interno cadastrado. Isto é chamado IP FORWARDING.

Tabelas de roteamento

É crucial, portanto que os roteadores saibam encaminhar corretamente qualquer


pacote à sua respectiva sub-rede, onde este pode ser finalmente entregue à
máquina destinatária.

Os roteadores decidem para qual sub-rede encaminhar um pacote baseado em


tabelas de roteamento, construídas através de troca de informações entre os
roteadores sobre as suas respectivas vizinhanças. O primeiro protocolo com esta
finalidade utilizado na internet foi o RIP (Distance Vector Protocol) porém este
apresentou problemas com o crescimento da rede e foi substituido pelo OSPF
(Open Shortest PathFirst).

Fragmentação de Datagramas

Os datagramas IP viajam portanto, por sub-redes baseadas em tecnologias


diferentes para a camada física e são colocados na área de pay-load de frames
com características diferentes. Este procedimento é denominado
ENCAPSULAMENTO. (os frames ethernet possuem tamanho máximo de 1536
bytes).

Quando o frame da camada física é restrito a um tamanho menor do que o


datagrama, este tem de ser fragmentado em dois ou mais, que seguirão em
frames diferentes e posteriomente, no destino final, reagrupados para recompor a
informação original.

Quando um datagrama é fragmentado, o IP altera um campo específico do header


do datagrama original com a informação que permita a reconstituição posterior,
sendo portanto gerados novos datagramas (fragmentos) com headers diferentes
do original.

O cabeçalho IP
Vers indica Versão. Atualmente é preenchido com 4. Campo importante durante
troca de especificações pois permite que os roteadores tomem decisões diferentes
dependendo da versão, possibilitando a convivência das duas versões durante a
fase de troca de protocolo.

Tam.H. indica tamanho do Cabeçalho em conjuntos de 32 bits. Varia de 5 a 15.

Tipo de Serv. (tipo de serviço) visa incluir informações sobre as prioridades na


escolha de rotas. Por exemplo, quando transporta-se voz velocidade é mais
importante de que confiabilidade. No caso de dados, a situação se inverte.

Tamanho total indica a quantidade total de octetos do pacote.

Identificação indica, no caso de fragmentação, a qual datagrama original este


trecho pertence. Todos os fragmentos de um datagrama contêm o mesmo valor
neste campo.

O primeiro dos 3 bits do campo flags não é utilizado. O segundo é o DF (Dont


Fragment) que indica ao roteador que fragmente o pacote, mesmo que seja
necessária a escolha de um caminho subótimo para tal. O terceiro é o MF (More
Fragments). Todos os fragmentos de um datagrama possuem 1 nesta posição,
exceto o último. É utilizado para determinar o último fragmento de um datagrama.

Offset do fragmento indica qual a posição do fragmento no datagrama original,


em octetos (unidade básica de fragmentação).

Tempo de vida é um número que decresce a cada nó por onde o datagrama


passa. Quando chega a zero, o datagrama é descartado. Previne-se assim que
tabelas de roteamento corrompidas carreguem datagramas indefinidamente pela
rede.

O campo tipo indica ao IP da máquina de destino a que protocolo da camada de


transporte entregar os dados quando chegam com sucesso (exemplo: TCP ou
UDP?). Os possíveis protocolos são padronizados pela RFC 1700 em toda a rede.
Checksun do header: verificador para o Cabeçalho. Tem de ser recomputado a
cada nó por onde o passa o datagrama, já que pelo menos um dos campos
(tempo de vida) necessariamente é alterado.

IP de origem e IP de destino dispensam comentários.

Opções IP é um campo de tamanho variável. Códigos de 1 byte são definidos


para algumas opções como as abaixo:

SEGURANÇA: Especifica quão secreto o datagrama é. Possibilita, por exemplo,


que datagramas contendo informações militares secretas sejam desviadas de
roteadores da Líbia. Na prática os roteadores ignoram esta opção.

ROTA ESPECÍFICA: Instrui os roteadores a encaminhar o datagrama por uma


rota fixa. Útil quando se desconfia da integridade das tabelas de roteamento ou
quando se deseja medir a velocidade de uma rota específica.

FORÇAR PASSAGEM: Indica uma lista de roteadores que devem ser visitados
pelo datagrama até atingir o destino final. Para chegar a estes roteadores utiliza-
se as técnicas usuais de roteamento.

GRAVAR ROTA: Faz com que os endereços dos roteadores por onde o pacote
passar sejam incluídos no cabeçalho de forma a podermos descobrir a rota
seguida por um pacote.

GRAVAR ROTA E TEMPOS: Idêntico ao anterior exceto por gravar também o


tempo gasto em cada roteador.

As opções IP são, portanto de tamanho variável. O último campo do cabeçalho


permite um ajuste para que o cabeçalho continue com um tamanho múltiplo de 32
bits.

4.6 Camada Transporte – TCP e UDP

As principais funções desta camada são:

Lidar com os diversos protocolos da camada aplicação, destinando corretamente


as informações que chegam do IP. Para tal, o TCP estabelece conexões ou
sessões de troca de dados entre os aplicativos;

Tornar as conexões confiáveis, controlando o fluxo de pacotes de forma a garantir


que cheguem aos seus destinos, emitindo e aguardando confirmações (ACK’s) e
processando retransmissões quando necessário;

Tenta ajustar o fluxo de pacotes à capacidade real da rede, permitindo um número


fixo de pacotes on the fly em um dado momento.
TCP – Transmission Control Protocol

O cabeçalho TCP é colocado após o cabeçalho IP, conforme mostrado na figura a


seguir.

O TCP controla os aplicativos da camada aplicação associando cada conexão a


uma porta TCP. Uma porta é representada por um número decimal. Portas abaixo
de 1024 são chamadas well-known ports e são reservadas para serviços padrão.
Por exemplo, o FTP (File Transfer Protocol) utiliza a porta 21, o TELNET
(protocolo para terminal remoto), utiliza a porta 23.

Portanto, cada servidor deve “escutar” sua porta padrão. Quando um cliente
deseja estabelecer uma conexão, ele escolhe uma porta para si e envia um pacote
para a porta padrão do servidor desejado. O servidor, ao estabelecer a conexão
troca o número da porta para um acima de 49.151, de forma que a conexão, após
a esta fase inicial, se dá com portas acima de 49.151.

Sequenciais são sorteados para o primeiro pacote CLIENTE->SERVIDOR e para


o primeiro pacote SERVIDOR->CLIENTE. Pacotes posteriores em ambos os
obedecem à sequência.

Ao enviar um pacote com sequencial X, uma máquina aguarda um tempo e


determinado pelo recebimento de um pacote com o valor X+1 no campo
Sequencial Recebido (ACK). Caso tal ACK não seja recebido, o pacote é
reencaminhado.

Os 4 bits seguintes exprimem o tamanho do Header, em unidades de 32 bits.Os 6


bits seguintes não são utilizados.

6 Flags de 1 bit seguem agora:

URG – indica que um ponteiro de urgência utilizado;


ACK – Campo ACK utilizado;

PSH – (PUSH) não buferizar;

RST – Resetar a conexão;

SYN – Solicitação de sincronismo.

FIN – Finalizar conexão;

O campo “Tamanho da Janela” é utilizado para indicar quantos bytes uma


máquina está apta a receber no próximo pacote, evitando-se assim estouros de
buffer (buffer overflow)

Checksum existe para detecção de erros no cabeçalho, no payload e em alguns


campos chave do cabeçalho IP.

O ponteiro para urgente indica um número de bytes, contados a partir do último


ACK, onde existirão dados urgentes.

A seguir ilustramos a evolução dos números de sequência de pacotes e ACK’s


durante uma conexão TCP

UDP – User Datagram Protocol

O UDP provê uma possibilidade de comunicação bem mais simples, mas sem
confiabilidade, para aplicações como transmissões multimídia on-line (vídeo,
áudio,...) onde retransmissões não podem ser suportadas sendo o maior overhead
do TCP desnecessário. Seu cabeçalho resume-se nos números das portas de
origem e destino, uma indicação do tamanho do pacote (em bytes) e um
checksum, como podemos verificar na figura abaixo.

O UDP é um protocolo conectionless, ou seja, não cria a figura da conexão entre


duas máquinas. Criado um sistema que atenda em uma porta UDP, qualquer
máquina pode enviar pacotes para ela.

O UDP é utilizado para a comunicação multicast em redes locais. Todas as


máquinas de um grupo executam um programa que escute a mesma porta e,
assim, um pacote IP multicast, cujo endereço de destino possui porção máquina
preenchido com 1´s, é encaminhado pelo UDP à aplicação de todas as máquina
participantes do grupo.

A aplicação UDP funciona, normalmente, da seguinte forma: Para cada pacote


recebido a aplicação gera uma resposta, para o IP do solicitante, não sendo
necessário o armazenamento de qualquer informação pelo servidor de seus
interlocutores. Se não for possível a transmissão de uma solicitação ou resposta
em um único pacote, a complexidade da construção do servidor que utilize o UDP
é bastante aumentada pois, outro pacote, com outra origem, pode chegar entre
duas partes de uma mensagem, tornando o gerenciamento mais trabalhoso. Tal
problema normalmente leva os projetistas a optarem pelo TCP quando as
mensagens não podem ser sempre incluídas em um pacote único.

4.7 Camada Aplicação

Nesta camada encontram-se os aplicativos que prestam serviço diretamente ao


usuário (navegadores, browsers, ... ). Estes programas fazem uso da infra-
estrutura de comunicação TCP/IP, normalmente fornecida pelo sistema
operacional.

Assim, quando um programa da camada aplicação necessita trocar informações


com outro, ele solicita ao sistema operacional a criação de uma conexão,
chamada socket. Para isto, ele deve chamar uma primitiva do sistema operacional
onde é informado o endereço IP, o protocolo de transporte (UDP/TCP) desejado, e
a porta a ser utilizada. Feito isto, o sistema operacional cria todas as estruturas de
controle necessárias para a comunicação, bastando a aplicação chamar por outra
primitiva para enviar/receber mensagens (write/read).

Além dos recursos básicos de correio eletrônico e lista de discussão, a Internet


proporciona a seus usuários acesso aos mais variados serviços de informação
como, por exemplo, bases de dados especializadas, catálogos de bibliotecas,
repositórios de software de domínio público, jornais e revistas eletrônicas, etc.
Através da Internet também é possível ter acesso a recursos de hardware
especializados como computadores de alto desempenho e processadores
especializados. A seguir passamos a comentar algumas das aplicações mais
utilizadas na Internet.

DNS (Domain Name Service)

Serviço que traduz os nomes dos servidores para endereços IP, de forma que
possamos digitar ‘bancobrasil.com.br’ ao invés de 123.45.56.198.

Um banco de dados único para todas as máquinas da internet seria difícil de


administrar, além de um gargalo muito grande para a rede. Desta forma, os
projetistas do protocolo optaram por um banco de dados distribuído por muitos
servidores independentes, que se responsabilizam somente por seus domínios,
identificados por uma terminação comum a todos os nomes das máquinas que ele
deve resolver.

Por exemplo, o domínio BR foi atribuído ao Brasil pelo comitê gestor mundial da
Internet e a resolução de todos os nomes terminados por BR são de
responsabilidade de um servidor mantido pelo órgão que gerencia a internet no
Brasil.

O servidor responsável por um domínio pode conter os endereços que tem de


resolver em seus bancos de dados ou delegar responsabilidades a outros
servidores criando “subdomínios”. Por exemplo, o servidor responsável pelo
domínio BR delega o domínio UFJF.BR a um servidor da Universidade Federal de
Juiz de Fora e, ao invés de armazenar todos os endereços terminados em
UFJF.BR armazena apenas o endereço do servidor de DNS da UFJF. Assim,
consultas sobre nomes terminados em UFJF.BR que cheguem ao servidor BR são
repassadas ao servidor da universidade que deve resolve-las. Por sua vez, o
administrador da rede da UFJF pode também delegar responsabilidades criando
seus próprios “subdomínios”.

A fim de aumentar a confiabilidade do sistema, SERVIDORES SECUNDÁRIOS


podem ser criados para qualquer domínio. Estes servidores possuem cópias das
tabelas de nomes do domínio e podem também responder a solicitações de
resolução de nomes. A diferença para os servidores primários é que as tabelas
devem ser atualizadas apenas no servidor primário, e a partir destes são
automaticamente replicadas para os secundários.

Os endereços IP dos servidores de nomes primário e secundários têm de ser


cadastrados em todos os clientes de uma rede. Estes são os únicos servidores
que não podem possuir nomes, já que eles são os responsáveis pela associação
de nomes em endereços IP.

WWW (World Wide Web, ou simplesmente Web)

É um serviço baseado em hipertextos que permite ao usuário buscar e recuperar


informações distribuídas por diversos computadores da rede. A seleção de
informações é feita com base no conceito de hipertexto (um texto cujas palavras
contêm ligações subjacentes com outros textos, o que torna possível leituras
diversas, não- lineares).

O usuário pode selecionar uma das palavras que aparece assinalada na tela. Ao
fazer isso, ele terá acesso ao documento associado ao termo escolhido.

Esse processo pode se repetir com o usuário selecionando novamente um termo


assinalado de seu interesse no documento recuperado. Ou seja, o acesso às
informações disponíveis no WWW é obtido na medida em que o usuário assinala,
em um dado documento, termos relevantes para a sua busca.

De modo geral, documentos estruturados como hipertextos são interligados


através de um conjunto de termos pré-selecionados pelo autor do hipertexto. A
associação entre um termo e um documento depende do interesse do autor e
pode ter objetivos diversos, tais como: explicar ou detalhar um conceito, definir um
termo, ilustrar um fato, expandir uma sigla, apresentar uma informação correlata.
O documento associado não precisa ser necessariamente um texto; ele também
pode conter outros tipos de informação, tais como imagens, gráficos e sons.

Os documentos não precisam estar armazenados em um único computador,


podendo estar distribuídos pelos diferentes computadores da rede que suportam
esse serviço. O WWW torna irrelevante para o usuário a localização física dos
documentos recuperados. Além disso, a maioria dos clientes WWW (Mosaic,
Netscape) seleciona e ativa automaticamente os programas necessários
(browsers) para a visualização do arquivo transferido, seja ele som, imagem, texto
ou programa compactado.

A WWW nasceu da necessidade de compartilhamento de dados pelos


pesquisadores do CERN, o laboratório de aceleração de partículas europeu. O
primeiro navegador, o MOSAIC foi desenvolvido por Marc Andersen, e alcançou
tal popularidade que motivou seu autor a fundar a Netscape Communications Inc. ,
empresa especializada no desenvolvimento de software para a WEB com grande
participação no desenvolvimento da Internet.

Em 1994 o CERN e o M.I.T. assinaram um acordo para a criação do World Wide


Web Consortion (WWWC), instituição dedicada ao desenvolvimento da Web,
padronização de protocolos e incentivo a interoperabilidade entre os sites. Mais
informações sobre o WWWC podem ser obtidas, naturalmente, na web em
http://www.w3.org .

O protocolo para transferência das páginas de hipertexto é o HTTP (Hyper Text


Transfer protocolI) que descrevemos com mais detalhes a seguir.

HTTP (Hyper Text Transfer protocolI)

O HTTP rege a transferência das páginas de hipertexto pela rede. Está


implementado nos softwares clientes (Internet Explorer, Netscape Navigator,
Opera) e nos servidores (Apache e o Microsoft IIS).

O servidor fica o tempo todo ativo, aguardando requisições na porta 80. No cliente,
o usuário informa a URL desejada, por exemplo, “http:// www.w3.org/ hypertext/
WWW/ TheProject.htm”. Da URL, o browse extrai o nome da máquina
(www.w3.org) e descobre seu endereço IP pelo DNS. De posse do IP, o browse
pode estabelecer uma conexão TCP/IP com o servidor, na porta 80. Através da
conexão aberta o navegador envia a requisição da página desejada, no exemplo,
“GET / hypertext/ WWW/ TheProject.htm HTTP/1.0”. Onde GET é a palavra chave
definida pelo protocolo para solicitar páginas e HTTP/1.0 é a versão do protocolo
que está implementada no cliente.

O servidor recebe a requisição e abre o arquivo solicitado. Um cabeçalho


representado abaixo é construído e encaminhado ao cliente.

HTTP/1.0 200 Document follows


MIME-Version: 1.0
Server: CERN/3.0
Content-Type: text/html
Content-Length: 8247

<HTML>
<HEAD>
<TITLE> The World Wide Web Consortium </TITLE>
</HEAD>
<BODY>
……… (aqui segue a página em HTML)….

A primeira linha do cabeçalho contem a versão do protocolo implementada no


servidor, e o código 200 que significa “OK, ai vai a página...”. A seguir o servidor
inclui uma série de informações no formato “Nome-da-Informação: conteúdo”.
Estas informações compõem o cabeçalho HTTP. Ao final do cabeçalho uma linha
em branco é saltada e o documento HTML é enviado.
Apesar do GET ser de longe a palavra chave mais utilizada, o http define algumas
outras como HEAD, para receber apenas os cabeçalhos, sem o documento em si,
PUT para enviar ao invés de receber uma página, POST para acrescentar um
conteúdo a um arquivo existente no servidor, e outros.

Nas respostas do servidor, o HTTP define também outros códigos além do 200
(OK). Por exemplo:

• 304 significa que o documento não foi modificado desde a última consulta
e, por isto, não precisa ser encaminhado;

• 400 significa que a requisição foi feita de forma equivocada;

• 403 significa que o usuário não tem permissão para ler o arquivo solicitado;

• 404 significa que o documento solicitado não foi localizado pelo servidor;

A maioria dos servidores inclui recursos extras como:

• A criação de um arquivo default, que é encaminhado ao cliente caso ele


não informe o nome do arquivo desejado. Tradicionalmente este arquivo é o
INDEX.HTML;

• Um diretório raiz para os documentos diferente do raiz real da máquina


onde está instalado, de forma a podermos “esconder” os arquivos que não
se deseja dar acesso via HTTP;

• “Sites virtuais”. Podemos criar vários registros de nomes no DNS para o


mesmo IP de um servidor e, dependendo do nome digitado pelo usuário,
encaminhar uma página diferente, fazendo com que um único servidor
responda por diversos sites distintos.

Correio Eletrônico (e-mail)

Serviço para troca de mensagens onde os comunicantes não precisam


necessariamente estar conectados na rede simultaneamente. Cada usuário é
identificado por um endereço composto por um nome de usuário mais um sinal de
@ e o nome de uma máquina onde o usuário mantenha a conta. Por exemplo,
marcelocps@interfire.com.br onde “interfire.com.br´ é o nome do servidor onde
existe a conta “marcelocps”. O arroba é lido como “at” inglês, que significa “em”.
Assim, o endereço é “marcelocps” em “interfire.com.br”.

O formato da mensagem:

A mensagem é acrescida de uma série de cabeçalhos para uso dos programas


cliente e servidor de e-mail. Os cabeçalhos são separados da mensagem por uma
linha em branco. No exemplo abaixo podemos verificar várias informações nos
cabeçalhos, todas no formato “<informação>:<conteúdo>” como em To:
"jose@artnet.com.br" que especifica o destinatário da mensagem.
From: "Marcelo Santos" <marcsan@acessa.com>
To: "jose@artnet.com.br"
Cc: "maria@bol.com.br"
Subject: =?iso-8859-1?Q?Reuni=E3o_de_Departamento?=
Date: Sun, 14 Jul 2002 08:52:57 -0300
MIME-Version: 1.0
Content-Type: multipart/mixed; (esta linha continua
abaixo)
boundary="----
=_NextPart_000_002D_01C22B13.DDA2C440"
X-Priority: 3
X-MSMail-Priority: Normal
X-Unsent: 1
X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400

This is a multi-part message in MIME format.

------=_NextPart_000_002D_01C22B13.DDA2C440
Content-Type: text/plain;
Charset="iso-8859-1";
Content-Transfer-Encoding: 8bit
Srs. Professores,
Informamos a seguir a pauta da reunião de segunda feira,
9:00hs.
- Palestra para a Semana de Computação;
- Critérios de avaliação para o próximo ano letivo;
- Estágios disponíveis para os alunos;
Anexo segue a apresentação no formato PPT da palestra
proposta para a Semana de Computação.
Chefe de Departamento.

------=_NextPart_000_002D_01C22B13.DDA2C440
Content-Type:application/vnd.ms-powerpoint; (linha
continua abaixo)
name="=?iso-8859-1?Q?TrabComputa=E7=E3o.ppt?="
Content-Transfer-Encoding: base64
Content-Disposition: attachment; (esta linha continua
abaixo)
filename="=?iso-8859-1?Q?TrabComputa=E7=E3o.ppt?="
0M8R4KGxGuEAAAAAAAAAAAAAAAAAAAAAPgADAP7/CQAGAAAAVYAAAAAA
EAAAuwYAAAEAAAD+////AAAAAMkGAADKBgADNBgAAzgAADQBgAA0QYAA
AADTBgAA1AYAANUGAAC6BgADABgAAvwYAAL4GAAvAYAAP///////////
//////////////////////////////////////////////////////8A
bmIYLZdSexws2JTntzu3/iVBOoAAAANSUhEUgAAAgcAAAFCCAIAAADqv
AAAABGdBTUEAALGIlZj0pgAAAAlwSFkQAADnMBYuyvIAAAIABJREFUeJ
zsm7uyJLlxhNqLqWPm3NSurm548jiyalJ6Ag3WVceZcqb9eTprCdZW+3
NWvXDOtUWZCSquvpc5iIxup4HIQqFwSWT+mUh08/7//Ine50pzvd6U7w
zca11n7GedzpTne6051+CfTN/uFPf/rTzO93pTne60y+kBOd7rTne70i
6A8GHzz8sWf//znv/Vc7nSnO93pTj8rbZcI31A+9f7rT
ne70f5ewbpTne6053udKVf8eph4U53utOd7vT/kn7F8HNP4U53utOd7v
SLoW+Crz8tXt8+fmzZm999VU1b03s8kXL6vSJyX9VP291/tfqqlOF2DH
7Mivf/rIRpZc72nfy5ld/J
....

Além do destinatário, podemos identificar no exemplo acima as


informações sobre remetente (From) cópias enviadas (Cc –
Carbon Copy), assunto (Subject). O subject possui um
caractere considerado não padrão, o “a” com til, que é
codificado segundo o padrão a iso-8859-1. A data de envio segue
o Assunto.

A seguir temos uma linha que indica a versão do MIME ( MIME-


Version: 1.0). MIME é uma sigla para Multipurpose Internet Mail
Extensions que é uma forma padrão de descrição do tipo de
conteúdo da mensagem. Em nosso exemplo o tipo é multipart/mixed
pois a mensagem contém anexos de tipos diferentes. Na
sequência é definido o separador para os conteúdos ("----
=_NextPart_000_002D_01C22B13.DDA2C440").

A seguir temos alguns campos começados por “X-“. Todos os


campos começados assim são campos não padronizados. O
protocolo permite a criação de campos não padronizados, desde
que iniciados desta forma, para evitar o risco de conflitos
com campos definidos ou que venham a ser definidos por
futuras versões do protocolo. Campos não padronizados não
suportados por um determinado programa são ignorados.

Depois temos o separador de tipos, um cabeçalho particular


para o texto da mensagem, a mensagem, novamente um separador
de tipo de conteúdo, outro cabeçalho e o segundo conteúdo,
que é uma apresentação do power point (ppt) que foi anexada a
mensagem.

O protocolo SMTP

O principal protocolo utilizado para transferência de correio é o SMTP (Simple Mail


Transfer Protocol). Uma transferência típica é ilustrada abaixo, com as mensagens
enviadas pelo cliente (abc.com) precedidas de “C:” e as enviadas pelo servidor
(xyz.com) de um “S:”. O “C:”e o “S:”são incluídos apenas para facilitar o
entendimento pelo leitor, e não fazem parte das mensagens trocadas.
S:220 xyz.com SMTP service ready
C:HELO abc.com
S:250 xyz.com says hello to abc.com
C:MAIL FROM: <elionor@abc.com>
S:250 sender ok
C:RCPT TO: <carolyn@xyz.com>
S:250 recipient ok
C:DATA
S:354 Send mail; end with “.” On a line by itself
C: “agora o cliente envia a mensagem propriamente dita”
. . .
. . .
. . .
C:. “esta linha marca o final da mensagem”
S:250 message accepted
C:QUIT
S:221 xyz.com closing conection

As mensagens do cliente são sempre comandos com 4 letras e as


do servidor são códigos numéricos de resposta. No exemplo
acima os códigos de resposta do servidor são seguidos de um
texto explicativo que é permitido, mas não necessário, pois o
cliente deve agir em função dos códigos numéricos.

O programa que implementa o SMTP age hora como servidor,


recebendo a mensagem a ser enviada pelo usuário local e hora
como cliente, quando ele se conecta ao servidor do
destinatário para recepção da mensagem.

A entrega final da mensagem

Grande parte dos usuários de e-mail não possuem máquinas que estejam o tempo
todo conectadas a Internet. Por isto, a entrega final da mensagem a máquina do
usuário nem sempre pode ser feita pelo SMTP pois o servidor de e-mail, a
principio não sabe a hora em que a máquina do usuário estará disponível para
receber as mensagens. Por esta razão, foram criados outros protocolos para
regular a entrega final da mensagem ao cliente de e-mail do usuário.

O POP (Post Office Protocol) é o protocolo mais utilizado, prevê a conexão do


cliente ao servidor e a transferência de toda a correspondência para o micro local,
de forma a poder ser consultada mesmo depois do micro desconectado, off-line.

O IMAP (Interactive Mail Access Protocol) entende que o usuário consulta sua
correspondência não necessariamente de uma única máquina, e por isto não
transfere as mensagens para o micro local. Ele provê uma forma do usuário ler
seus e-mails, responde-los, apaga-los, etc, mas mantendo-os no servidor, de
forma que caso o usuário interrompa o serviço e desejar continua-lo de outro
computador, nenhum problema será notado.

IRC (Internet Relay Chat)

É uma ferramenta que permite estabelecer uma conversação simultânea entre


dois ou mais usuários da rede, independentemente de sua localização geográfica.
As discussões através de IRC fazem uso do conceito de canal (trilha de
conversação), podendo ser públicas ou privadas quanto à participação de novos
membros.

Os tópicos de discussão, assim como o idioma da conversação, são bastante


variados. Os diversos servidores IRC existentes na rede estão interconectados e
apresentam continuamente aos usuários os canais e recursos do serviço em
utilização.

Embora a grande maioria das mensagens trocadas via rede seja constituída por
informação puramente textual, o correio também pode transmitir outros tipos de
informação, tais como sons e imagens, desde que devidamente codificadas.

Dicionário de "Carinhas" (EMOTICONS)

A comunicação por correio eletrônico é essencialmente baseada em texto escrito.


Não permite transmitir o estado de espírito dos interlocutores.

Não é, portanto, rara a má interpretação de frases escritas por brincadeira. Uma


forma de contornar esta limitação é o uso de combinações de caracteres
"rascunhando" um ícone e que, como a expressão facial num contato pessoal,
exprime o humor do remetente. Estão listadas abaixo algumas das convenções de
comunicação em redes. Para vê-las, incline sua cabeça 90 graus para a esquerda
e use sua imaginação:

:-) Cara básica. Esta carinha é usada para modular uma declaração jocosa ou
sarcástica, a depender do contexto. Na maioria das vezes, significa que a intenção
do autor é bem humorada.

;-) Piscada de olho. O usuário acabou de fazer uma observação sarcástica e/ou
flertou com a pessoa, sugerindo cumplicidade. Tem o sentido de "não me bata
pelo que acabei de dizer".

:-( Cara carrancuda. O usuário não gostou da última observação ou está triste ou
deprimido por algum motivo.

:-| Cara de indiferente, de não-entendimento, de alienação com o assunto. Melhor


do que a cara carrancuda, mas não tão boa quanto uma cara feliz.

:-> Usuário acaba de fazer uma observação realmente sarcástica.

>:-> Usuário acaba de fazer uma observação realmente diabólica.

>;-> Piscada de olho e diabólica combinadas. Uma observação muito obscena


acaba de ser feita.

Listas de Discussão

É um serviço que permite o intercâmbio de mensagens entre vários usuários.

Funciona como uma extensão do correio eletrônico, explorando uma facilidade


conhecida como alias (um endereço fictício contendo uma lista de endereços
eletrônicos). Usando esse recurso, qualquer mensagem enviada para o endereço
alias é, automaticamente, reenviada para todos os endereços constantes da lista
associada.

USENET (Netnews)

É um serviço de difusão e intercâmbio de mensagens trocadas entre usuários da


rede sobre assuntos específicos. O netnews ou USENET news, ou simplesmente
news provê um serviço semelhante ao das listas de discussão, porém com maior
abrangência e facilidade de participação, além de ser operado de forma diferente
do serviço de listas.

Ao contrário das listas de discussão, em que as mensagens são enviadas para


cada membro da lista, as mensagens de news são enviadas para um determinado
computador da rede e de lá são reenviadas, em bloco, para os computadores que
aceitam esse serviço. As mensagens podem então ser lidas por qualquer usuário
desses computadores, sem necessidade de subscrever ao serviço, bastando ter
acesso a um programa específico para leitura de news.

As mensagens do netnews são classificadas em categorias chamadas


newsgroups que, por sua vez, são organizadas em grandes grupos hierárquicos,
tais como: alt (alternativos), comp (computadores), misc (miscelânea), news, rec
(recreacional), sci (ciência), soc (social), entre outros.

Os recursos básicos oferecidos pelos programas de leitura de news incluem:


seleção de newsgroups preferenciais, leitura de mensagens (com marcação de
mensagens não lidas), trilhas de discussão (para refazer a sequência de uma
discussão), postagem de mensagens (para um dado newsgroup ou para o autor
de uma dada mensagem).
Shel Seguro (SSH)

É um serviço que permite ao usuário criar um terminal e enviar comandos para um


computador remoto interligado à rede. Uma vez feita conectado, o usuário pode
usar recursos do computador remoto como se estivesse lá. O SSH substitui o
protocolo TELNET que também cumpre esta finalidade. A diferença principal entre
TELNET e SSH é que o segundo criptografa os dados antes de enviá-lo péla rede.
Atualmente o uso do TELNET é considerado uma falha de segurança. No entanto
os clientes TELNET ainda podem ser de utilidade.

O cliente TELNET tenta se conectar na porta 23 por padrão, mas a maioria das
implementações podem se conectar a qualquer porta. O TELNET é um protocolo
muito simples. O que ele faz é, simplesmente, repassar o texto digitado pelo
usuário ao servidor e exibir ao cliente, no terminal, o texto enviado pelo servidor.
Por isto, em alguns casos, é útil conectarmos o cliente TELNET a uma porta
diferente da 23, e agirmos, nós mesmos, como um cliente para o servidor
conectado.

Por exemplo, se conectarmos um cliente TELNET na porta 80, e digitarmos uma


requisição HTTP válida, o TELNET nos mostrará exatamente a resposta do
servidor no terminal, com todos os cabeçalhos e códigos próprios do HTTP. Tal
prática pode ser útil para testes de softwares.

O Windows inclui um cliente TELNET (chamado TELNET). Experimente comandar


“TELNET WWW.UFJF.BR 80” . O programa mostrará uma mensagem dizendo
que você está conectado. Digite “GET /index.html HTTP/1.0”. Deverá surgir na tela
os cabeçalhos HTTP e o código da página da UFJF.

O protocolo SSH prevê a possibilidade de redirecionamento de dados para que


possa ser utilizado para prover criptografia a outro protocolo. Esta possibilidade é
chamada tunelamento. O cliente de qualquer serviço passa os dados a enviar
para o cliente SSH, que os criptografa e envia para o servidor SSH que os decifra
e passa para o servidor adequado (caminho semelhante é percorrido no sentido
inverso (do servidor para o cliente).

Transferência de Arquivos (FTP)

É o serviço básico de transferência de arquivos na rede. É conhecido no jargão


Internet como FTP, acrônimo de File Transfer Protocol. Usando FTP, um usuário
da rede pode carregar (upload) arquivos de seu computador para um outro ou
descarregar (download) arquivos de um dado computador para o seu. Para tanto,
o usuário deve ter permissão de acesso ao computador remoto.

Um serviço especial de FTP, conhecido como FTP anônimo (anonymous FTP),


permite que um usuário remoto "puxe" arquivos do computador em que o serviço
está instalado, sem necessidade de obter permissão de acesso a ele. Para evitar
acesso indevido aos arquivos de uso local do computador remoto, os arquivos
disponíveis via FTP anônimo são armazenados em área separada daqueles.

Configuração Automática de Estações (DHCP)

A necessidade de configuração automática de hosts (estações, computadores)


surgiu primeiramente com as máquinas diskless (sem disco) que, por somente
disporem de meios de armazenamento volátil (memória RAM), tinham de ser
configuradas a cada inicialização. Atualmente utiliza-se protocolos de configuração
automática principalmente para facilitar o controle das estações pelo gerente da
rede, mantendo-se os dados de configuração centralizados em um único ponto (o
servidor de configuração).

O primeiro protocolo para esta finalidade chamou-se RARP (Reverse Address


Resolution Protocol) que funciona de forma muito semelhante ao ARP, porém de
forma inversa. Uma comunicação em broadcast é enviada pela máquina que
precisa de um IP, contento o seu endereço físico, e o servidor RARP responde
com o IP que deve ser utilizado (no ARP, é enviado um IP e a resposta contêm um
endereço físico).

Por ser situado na camada física, o RARP é de difícil utilização, por isto foi criado
o BOOTP (BOOTstrap Protocol), que realiza tarefa semelhante, utilizando o UDP
para comunicação. Atualmente o protocolo mais utilizado é o DHCP (Dynamic
Host Configuration Protocol) que possibilita o envio de várias informações de
configuração além do endereço IP (máscara de rede, IP do servidor de DNS, etc),
além de gerenciamento de tempos de utilização de endereços.

Uma máquina que utilize o DHCP deve ao inicializar colocar na rede um pacote de
broadcast contendo seu endereço MAC. Pode existir mais de um servidor DHCP
na rede, todos responderão, mas o cliente utilizará apenas os dados de
configuração do primeiro servidor que responder. Ao ser desligado o cliente deve
comunicar ao servidor que poderá alocar aquele IP para outra máquina, se
necessário.

Um prazo de validade da configuração será recebido pelo cliente. Sempre que o


prazo de validade se esgotar, o cliente deve se comunicar novamente com o
servidor para “renovar” os dados de configuração. Caso o cliente seja desligado
de forma inadequada, não informando o fato ao servidor, os dados de
configuração utilizados estarão disponíveis para reutilização ao final do prazo de
validade.
4.9 Tipos de Conexão/Utilização na INTERNET

Provedor de Backbone

Entidade mantenedora de rede de longa distância (WAN), de âmbito multiregional


ou nacional, com o objetivo básico de "repassar" conectividade à rede através de
vários Pontos-de-presença judiciosamente distribuídos pela região a ser coberta.
A Internet é uma coleção dessas redes, mantidas por provedores de backbone. A
RNP e a EMBRATEL são provedores deste tipo.

Um provedor de serviços de backbone opera, pois, no atacado de conectividade,


vendendo acesso a outras empresas que farão a (re)venda de acesso para
usuários finais ou simplesmente utilizarão a rede para fins institucionais internos.
O jogo de um provedor de backbone, portanto, é de grande escala e normalmente
se mede em investimentos na casa dos milhões de reais. Abaixo podemos
observar algumas ilustrações retiradas do site da embratel
(http://www.embratel.com.br/Embratel02/cda/portal/0,2997,MG_P_951,00.html),
sobre seu backbone.
Provedor de Acesso

O provedor de acesso é aquele que se conecta a um provedor de backbone


através de uma linha de boa qualidade e revende conectividade na sua área de
atuação a outros provedores (usualmente menores), instituições e especialmente
a usuários individuais, através de linhas dedicadas ou mesmo através de linhas
telefônicas discadas.
O provedor de acesso é, portanto um varejista de conectividade à Internet, e como
todo varejista pode operar em diversas escalas, desde um nível mínimo (ex.: uma
máquina e umas poucas linhas telefônicas para acesso discado) até um nível de
ampla atuação em uma região, aproximando-se da escala de atuação de
provedores de backbone.

Usuários Individuais

Pessoas físicas ou jurídicas que contratam acesso por linha telefônica discada a
computadores e dispositivos mantidos por provedores de acesso.

Provedor de Informação

Outra forma de explorar comercialmente os recursos da Internet é através da


disponibilização de informações na rede. O exemplo mais simples seria a venda
de informação de algum tipo. O empreendedor seria dono de uma base de dados
e estabeleceria contas para os usuários, que acessariam o sistema mediante o
uso de senhas. O provedor cobraria taxas para os portadores de senhas ou
venderia espaço para marketing a terceiros.

Usuário Institucional

.Uma terceira razão para uma instituição comercial se ligar à Internet é permitir o
acesso de sua rede local (ou de longa distância) à grande gama de serviços que
ela oferece. Ali existe uma infinidade de informações relevantes a diversas áreas
de atuação. Assim, as instituições podem se conectar à Internet, seja para obter
acesso a bancos de dados, para permitir que parte de seu staff participe de grupos
eletrônicos de discussão, para garantir a comunicação via correio eletrônico com
clientes e fornecedores ou, simplesmente, para ver o que a concorrência está
fazendo.
5 - Segurança em Redes

A segurança em redes é, na atualidade um assunto de interesse geral, amplo e


irrestrito. Até os sites mais despretensiosos, aparentemente sem qualquer
informação de interesse são invadidos e utilizados como base para ataques a
outros sites, a fim de dificultar a identificação do atacante.

5.1 - Principais tipos de ataque

 Invasões: Ocorre quando o atacante consegue acesso não autorizado a


algum recurso da rede. O atacante explora de falhas em programas,
principalmente servidores, descobre uma senha utilizando engenharia
social (enganando uma pessoa) ou força bruta (testando exaustivamente o
espaço de possíveis senhas)

 Cavalos de Troia (trojans): O atacante consegue instalar de alguma forma


um programa no computador atacado. Este programa normalmente vai
usualmente embutido em outro inofensivo (daí o nome) e, uma vez
instalado pode fazer qualquer coisa no computador instalado, envia dados
sensíveis (senhas) ao atacante como, por exemplo, o arquivos de senhas
do sistema.

 Negação de serviço (DoS): O atacante não invade a máquina alvo, mas


envia um grande número de solicitações de serviço que o alvo,
sobrecarregado, passa a negar serviço a usuários legítimos por exaustão
de recursos.

5.2 – Boas Práticas

 Versões atualizadas: A correção de falhas de segurança está entre as


principais causas de atualização para programas. Manter as últimas
versões significa diminuir o número de falhas que podem ser exploradas

 Desenvolvimento de Cultura de segurança: A criação de boas senhas,


de tamanho suficiente, e de difícil “adivinhação” (complexidade, ausente de
dicionários, não baseada e datas, telefones, etc) é fundamental para a
segurança de qualquer rede. Outro aspecto cultural importante é a
manutenção do segredo das senhas (não compartilhamento)

 Manutenção do mínimo: Quanto menos servidores instalados em sua


rede, menor a probabilidade de um deles possuir uma falha de segurança

 Scanear periodicamente: Programas para detecção de vulnerabilidades,


amplamente utilizados por invasores, podem ser utilizados por gerentes de
segurança para detectar e sanar problemas
 Firewalls, NAT: São filtros que aplicados em um gateway de rede podem
limitar o tráfego de pacotes a determinadas portas, endereços IP, ou até
mesmo sites.

5.3 – Criptografia

Criptografia (kryptós, "escondido", e gráphein, "escrita") é o estudo dos princípios


e técnicas pelas quais dados podem ser transformados da sua forma original para
outra ilegível.

Pode visar:
 confidencialidade da mensagem: só o destinatário autorizado deve ser
capaz de extrair o conteúdo da mensagem da sua forma cifrada. Além
disso, a obtenção de informação sobre o conteúdo da mensagem (como
uma distribuição estatística de certos caracteres) não deve ser possível,
uma vez que, se o for, torna mais fácil a análise criptográfica.
 integridade da mensagem: o destinatário deverá ser capaz de determinar
se a mensagem foi alterada durante a transmissão.
 autenticação do remetente: o destinatário deverá ser capaz de identificar o
remetente e verificar que foi mesmo ele quem enviou a mensagem.
 não-repúdio ou irretratabilidade do emissor: não deverá ser possível ao
emissor negar a autoria da mensagem.

É uma ciência antiga, de grande interesse militar, e um grande motivador para o


desenvolvimento da ciência da computação.

5.4 - Algoritmos de Hash

São algoritmos sem volta, ou seja, não podemos obter os dados originais a partir
do dado cifrado.

Pode ser utilizado, por exemplo, para autenticação. A senha cifrada é armazenada
em um banco de dados. O usuário digita a senha ao solicitar autenticação. A
senha é recriptografada e comparada com a armazenada no banco de dados. A
vantagem deste processo é que nem mesmo quem tenha acesso ao banco de
dados sabe as senhas dos usuários.

Exemplo: MD5

5.5 - Algoritmos Simétricos


São algoritmos em que a chave utilizada na cifragem é a mesma utilizada na
decodificação da mensagem. São rápidos e muito utilizados, mas dependem de
uma forma confiável para a transmissão da chave, o que pode ser um problema
para a maioria das aplicações computacionais.

Exemplos:3DES, AES, BlowFish

5.6 - Algoritmos Assimétricos

Utiliza um par de chaves, se criptografamos com uma deciframos com a outra e


vice versa. Normalmente instituímos uma chave como privada, e não a divulgamos
para rigorosamente ninguém, e outra como pública e a divulgamos amplamente,
sem comprometimento da segurança.

Quando necessitamos confiabilidade ou garantia de integridade, criptografamos


com a chave pública do destinatário. Desta forma, somente ele decifrará a
mensagem (possuidor da chave privada correspondente).

Se desejamos assinar uma mensagem (autenticação, não repudiação), a


criptografamos com nossa chave privada. Nosso interlocutor pode, então, ter
certeza da origem posto que a mensagem foi decifrada corretamente pela nossa
chave pública.

Problema: ter certeza de qual é realmente a chave pública do interlocutor.

Exemplo: RSA

5.7 - Certificados digitais

São documentos digitais que garantem que uma chave pública, relativa a uma
assinatura digital, pertença a uma determinada entidade ou pessoa.

Este certificado é emitido por uma organização chamada Autoridade Certificadora


(Certification Authority – CA) de confiabilidade inquestionável que irá associar a
chave pública à identidade de uma pessoa através de dados como: endereço,
telefone, carteira de identidade.
6 Outros tipos de rede

6.1 IPX / SPX

Protocolo da NOVELL muito popular, mas vem perdendo mercado para o TCP / IP
atualmente, dado a popularização da INTERNET. Bem mais simples que o TCP, e
por isso mais eficiente pois utiliza cabeçalhos mais curtos, o que implica em menor
overhead.

O IPX possui função semelhante ao IP e o SPX ao TCP.

6.2 X.25 e Frame Relay

Estes são os dois principais protocolos utilizados para a concretização das redes
WAN das empresas de telefonia.

O X.25 é um protocolo antigo, definido pelo ITU na década de 70, que previa um
pesado controle de detecção e correção de erro sobre cada conexão que
compunha um caminho virtual entre dois pontos da rede. Tal controle era
necessário na época, pois as conexões físicas eram pouco confiáveis, e os
computadores eram caros e não podiam perder tempo de processamento para
checagem dos dados transmitidos pelas linhas de comunicação.

Esta realidade se alterou e surgiu o Frame Relay que é uma simplificação do


X.25, que praticamente não faz controle de erro, cuja probabilidade diminuiu muito
com as conexões de fibra ótica e, quando detecta um conjunto de dados com
problemas, simplesmente o descarta, deixando todo o encargo da recuperação do
erro com os computadores envolvidos nas extremidades da conexão. Com isto, o
Frame Relay consegue velocidades muito superiores as dos seu antecessor, e
está gradualmente o substituindo nas empresas de telefonia.

6.3 ATM (Assyncronous Transfer Mode)

Protocolo de alto desempenho, com utilização ainda restrita a empresas de


telefonia e provedores de backbone devido ao custo ainda alto dos equipamentos.
Baseia-se na transmissão da informação em pacotes de tamanho fixo muito
pequenos (53 bytes) denominados células.

O protocolo é orientado a conexão, ou seja, o roteamento é feito apenas uma vez


e o caminho é armazenado nos switches, que possuem papel semelhante ao dos
roteadores nas redes TCP / IP. Observe que as redes TCP / IP fazem o
roteamento de cada pacote individualmente. Este tipo de rede é dita orientada a
datagrama.

Na rede ATM, antes de se trocar a primeira informação, todo o roteamento feito,


criando-se um canal virtual (Virtual Channel – VC). Cada ligação entre os
switches é chamada de um caminho virtual (Virtual Path – VP). Os VC´s são,
portanto, uma coleção de VP´s que levam ao destino desejado.

Cada célula carrega o código de seu VC. Ao chegar em um switch, uma tabela de
VC´s é consultada para descoberta da porta do VP correto. Note que esta tabela é
bem menor to que as tabelas de roteamento IP tradicionais, pois contêm apenas
os VC´s ativos no momento, e não referências para todas as redes da internet.

As redes ATM implementam mecanismos para garantia de qualidade de serviço


(QoS – Quality of Service). Ao ser estabelecida uma conexão, a largura de banda
necessária deve ser informada e a conexão só é estabelecida se a rede realmente
puder suportar a comunicação com aquela velocidade. Conexões podem ser
eventualmente reacusadas mas, após estabelecidas, a largura de banda é
garantida.

Os switches tem papel chave nas redes ATM, sendo dispositivos extremamente
rápidos. Nos roteadores as mensagens são recebidas e armazenadas em buffers.
Dai são roteados e vão para um buffer de saída onde esperam até que possam
ser inseridos na rede de destino. Nos switches a mensagem começa a ser
encaminhada antes mesmo que termine de chegar.

As redes ATM foram projetadas para atingir altas velocidades, sendo apropriadas
para redes tipo B-ISDN (Broadband – Integrated Services Digital Networks), que
devem suportar aplicações que requerem alto desempenho como transmissão de
voz e vídeo em tempo real.

Dada a grande disseminação do protocolo TCP/IP, tornou-se difícil a sua


substituição pelo ATM. No entanto, divido ao seu desempenho muito superior, o
ATM vem sendo utilizado como se fosse um meio físico de comunicação,
utilizando-se o TCP/IP sobre o ATM. Desta forma todas as aplicações TCP/IP já
construídas podem continuar a ser utilizadas e o desempenho do ATM é
aproveitado. O TCP/IP é desnecessário, pois todas as suas funções são supridas
com vantagens pelo ATM, é mantido apenas para que possamos continuar a
utilizar as aplicações já existentes.