Você está na página 1de 139

PROF.

JOÃO PAULO DE BRITO GONÇALVES

REDES DE COMPUTADORES

CACHOEIRO DE ITAPEMIRIM
2011
Governo Federal
Ministro de Educação
Fernando Haddad
IFES - Instituto Federal do Espírito Sando
Reitor
Denio Rebello Arantes

Pró-Reitora de Ensino
Cristiane Tenan Schlittler dos Santos

Diretora do CEAD – Centro de Educação a Distância


Yvina Pavan Baldo
Coordenadores da UAB – Universidade Aberta do Brasil
Elton Siqueira Moura
Danielli Veiga Carneiro Sondermann
Curso de Licenciatura em Informática
Coordenação de Curso
Jonathan Toczek
Designer Instrucional
Edmundo Rodrigues Júnior
Professor Especialista/Autor
João Paulo de Brito Gonçalves

Catalogação na fonte: Renata Lorencini Rizzi - CRB 6/685


G635r Gonçalves, João Paulo de Britto
Redes de computadores / João Paulo de Brito Gonçalves. Cachoeiro de
Itapemirim: Ifes, 2010.
139 p. : il.
1. Rede de computadores. I.Instituto Federal
de Educação, Ciência e Tecnologia do Espírito Santo. II. Título.
CDD: 004.6

DIREITOS RESERVADOS
IFES - Instituto Federal do Espírito Santo
Avenida Rio Branco, nº 50 Santa Lúcia - CEP. 29056-255 – Vitória – ES - Telefone: 3227-5564

Créditos de autoria da editoração


Capa: Juliana Cristina da Silva
Projeto gráfico: Juliana Cristina e Nelson Torres
Iconografia: Nelson Torres
Editoração eletrônica: Duo Translations

Revisão de texto:
Esther Ortlibe Faria de Almeida

COPYRIGHT – É proibida a reprodução, mesmo que parcial, por qualquer meio, sem autorização escrita dos
autores e do detentor dos direitos autorais.
Olá, Aluno(a)!

É um prazer tê-lo conosco.

O Ifes – Instituto Federal do Espírito Santo – oferece a você, em parceria


com as Prefeituras e com o Governo Federal, o Curso de Licenciatura em
Informática, na modalidade a distância. Apesar de este curso ser ofertado
a distância, esperamos que haja proximidade entre nós, pois, hoje, graças
aos recursos da tecnologia da informação (e-mails, chat, videoconferên-
cia, etc.) podemos manter uma comunicação efetiva.

É importante que você conheça toda a equipe envolvida neste curso: co-
ordenadores, professores especialistas, tutores a distância e tutores pre-
senciais, porque quando precisar de algum tipo de ajuda, saberá a quem
recorrer.

Na EaD – Educação a Distância, você é o grande responsável pelo sucesso


da aprendizagem. Por isso, é necessário que se organize para os estudos e
para a realização de todas as atividades, nos prazos estabelecidos, confor-
me orientação dos Professores Especialistas e Tutores.

Fique atento às orientações de estudo que se encontram no Manual do


Aluno!

A EaD, pela sua característica de amplitude e pelo uso de tecnologias mo-


dernas, representa uma nova forma de aprender, respeitando , sempre, o
seu tempo.

Desejamos-lhe sucesso e dedicação!

Equipe do Ifes
ICONOGRAFIA

Veja, abaixo, alguns símbolos utilizados neste material para guiá-lo em seus estudos

Fala do Professor

Conceitos importantes. Fique atento!

Atividades que devem ser elaboradas por você,


após a leitura dos textos.

Indicação de leituras complemtares, referentes


ao conteúdo estudado.

Destaque de algo importante, referente ao


conteúdo apresentado. Atenção!

Reflexão/questionamento sobre algo impor-


tante referente ao conteúdo apresentado.

Espaço reservado para as anotações que você


julgar necessárias.
REDES DE COMPUTADORES

Cap. 1 - conceitos básicos de redes de


computadores  11
1.1 Introdução às redes de computadores  11
1.2 Protocolos e serviços de redes  14
1.2.1 Modelo cliente-servidor  15
1.2.2 Modelo ponto-a-ponto  17
1.2.3 Protocolos  18
1.3 Classificação de escala das redes  18
1.3.1 – LANs  19
1.3.2 – MANs  19
1.3.3 – WAN  20
1.4 Topologias de rede  21
1.4.1 - Topologia em estrela  22
1.4.2- Topologia em anel  22
1.4.3- Topologia de barramento  23
1.4.4 – Topologia em malha  24
1.4.5 – Topologias mistas  25
1.5 – Modos de transmissão em redes  25
1.6 – Modelos de referência  26
1.6.1 – Modelo OSI  27
1.6.2 - Modelo TCP/IP  29

Cap. 2 - A CAMADA FÍSICA  33


2.1 – A Função da camada física  33
2.2. – Meios de transmissão  34
2.2.1 – Fios de cobre  35
2.2.2 Fibra óptica  37
2.2.3 – Rádio  38
2.2.4 – Satélite  39
2.2.5 – Microondas  40
2.2.6 –Infravermelho  41
2.3 – Usando a corrente elétrica para enviar bits  42
2.4 – Enviando sinais através de longas distâncias  43
Cap. 3 - A camada de Enlace  51
3.1 A função da camada de enlace  51
3.2 Detecção e correção de erros   53
3.3 Comunicação por adaptadores  55
3.4 Protocolos de enlace de acesso múltiplo  56
3.4.1 Ethernet  57
3.4.1.1 CSMA/CD  58
3.4.1.2 - Endereçamento em redes Ethernet  60
3.4.1.3 O protocolo ARP  63
3.4.1.4 – Hubs e comutadores  65
3.5 Protocolos de enlace ponto-a-ponto  68

Cap. 4 - A camada de REDE  71


4.1 A função da camada de rede  71
4. 2 O protocolo IP  72
4.2.1 - Endereçamento IP  73
4.2.2 – Classes de endereços  76
4.2.2.1 - Classe A  76
4.2.2.2. – Classe B  77
4.2.2.3 – Classe C  77
4.2.2.3 - Classes e endereços especiais  78
4.3 Roteamento  80
4.3.1 – Tabelas de roteamento  82
4.4 O Protocolo ICMP  87

Cap. 5 - A camada de TRANSPORTE  95


5.1 A função da camada de transporte  95
5.2 O Protocolo UDP  98
5.3 O Protocolo TCP  100
5.3.1 – Estabelecimento de conexão no TCP  101
5.3.2– Retransmissão adaptativa  106
5.3.3 – Controle de fluxo  107
5.3.4 – Controle de congestionamento  107
5.4 TCP x UDP  108

Cap. 6 - A camada de APLICAÇÃO  111


6.1 DNS  112
6.2 FTP  116
6.3 Correio eletrônico  117
6.3.1 Envio de e-mail   118
6.3.2 Recebimento de e-mail  118
6.4 Web  119
6.5 DHCP  121
6.6 Configuração de redes 123

Cap. 7 - Tópicos avançados em redes de


computadores  129
7.1 Segurança em redes  129
7. 2 Redes Multimídia  132
7.2.1 – Aúdio e Vídeo de fluxo contínuo
Armazenados  133
7.2.2 – Aúdio e Vídeo de fluxo contínuo ao
Vivo  133
7.2.3 Áudio e Vídeo interativos em tempo
real  134
7.3 Qualidade de serviço na internet  135
7.4 Gerência de redes  136

REFERÊNCIAS 139
APRESENTAÇÃO

Olá!

Meu nome é João Paulo de Brito Gonçalves, responsável pela disciplina


Redes de Computadores. Atuo como professor do IFES-Campus Cacho-
eiro há dois anos e meio e já lecionei em outras instituições de ensino
superior (FACIG, UNIPAC e DOCTUM). Sou graduado em Ciência da
Computação (2003) pela UFJF e Mestre em Informática (2006) pelo IME.
Atualmente faço pós-graduação em Administração em Redes Linux pela
Universidade Federal de Lavras. Minhas áreas de interesse são: Redes de
Computadores, com ênfase em serviços de rede, Sistemas Operacionais,
com ênfase em virtualização e Organização e Arquitetura de Computa-
dores. Já atuei como professor especialista na Licenciatura em Informática
com a disciplina Introdução à Informática.

Nesta disciplina, você conhecerá o funcionamento das Redes de Computa-


dores, presentes hoje em dia em praticamente todas as atividades compu-
tacionais do nosso dia-a-dia.

Visto que as redes de computadores são, antes de mais nada, sistemas com-
putacionais interligados, são necessários para esta disciplina os conceitos
tanto de hardware quanto de software vistos em disciplinas anteriores. Es-
tes conceitos foram abordados pelas disciplinas Introdução à Informática,
Sistemas Operacionais e Laboratório e Montagem de Computadores.

O objetivo deste material é auxiliá-lo no estudo da disciplina Redes de


Computadores, por meio de dicas e sugestões que destacam os pontos mais
importantes a serem estudados. Aqui você encontrará conceitos com os
quais trabalharemos ao longo de todo o Curso, o que não dispensa a uti-
lização do livro-texto-referência para a confecção deste trabalho, que traz
diversos exemplos adicionais e um aprofundamento maior em vários as-
pectos. Para auxiliá-lo nos estudos serão disponibilizadas várias simula-
ções, que mostrarão na prática os conceitos da disciplina. Além disso, a
disciplina trabalhará com o uso de vários comandos existentes no sistema
operacional Microsoft Windows®, de forma que você possa ver na práti-
ca um pouco sobre os conceitos de redes e faça as devidas associações
entre teoria e prática.

Assim, desejo-lhe bastante sucesso!!!

Prof. João Paulo de Brito Gonçalves

Bons estudos!
conceitos básicos de redes
de computadores

Prezado aluno,
é com muita satisfação que lhe dou as boas-vindas ao estudo das
redes de computadores, um assunto extremamente presente em nos-
sa vida moderna desde o advento da Internet. Esta grande rede de
computadores modificou de forma tão radical a forma como traba-
lhamos, nos divertimos e nos relacionamos que hoje é imaginável
nossa vida sem a presença dela.
Neste capítulo, você entrará em contato com os conceitos mais bási-
cos envolvendo redes de computadores, mas que se fazem presentes
tanto na Internet como em redes pequenas que ligam apenas dois
computadores.
O primeiro capítulo abordará conceitos teóricos, mas em breve você
terá contato com conceitos práticos que complementarão seu conhe-
cimento da disciplina.
Desta forma, desejo-lhe bons estudos!

1.1 Introdução às redes de computadores

Hoje, as redes de computadores estão presentes em praticamente todas


as atividades ligadas a computadores que realizamos. Quando tiramos
dinheiro de um caixa eletrônico em um banco, lemos um e-mail ou
compramos uma passagem de avião, nós o fazemos através de uma rede
de computadores. Mas nem sempre foi assim. As redes surgiram da ne-
cessidade de compartilhar informações e periféricos em tempo real e,
com isso, aumentar a produtividade dos usuários que pertenciam a um
grupo de trabalho e reduzir os custos inerentes a hardware. Antes do
seu surgimento, funcionários de uma empresa trabalhavam de forma
isolada em seus computadores ou, no máximo, interagiam via terminais
sem processamento em grandes mainframes.

Quando um usuário precisasse utilizar um arquivo que estava no com-


putador de outro, por exemplo, era assim que acontecia: João, desloca-
va-se até o computador de Maria interrompendo momentaneamente o
seu trabalho, copiava o arquivo em questão, voltava ao seu computador
12
Capítulo 1

e utilizava o arquivo que ele copiou para o disquete. Se João quisesse


imprimir o arquivo em que estivesse trabalhando, mas a impressora es-
tivesse ligada no computador de Pedro, ele deveria salvar o arquivo em
um disquete no seu computador, ir até o computador de Pedro (no-
vamente interromper momentaneamente o trabalho de Pedro), abrir
o referido arquivo e imprimi-lo. Se Maria quisesse imprimir, deveria
esperar João acabar de usar a impressora de Pedro.   Não é difícil obser-
var quanto tempo se perdia e como a produtividade era impactada com
operações tão simples.

O uso de redes traz uma economia na aquisição de hardware. No caso


descrito acima, se João, Maria e Pedro precisassem imprimir seus do-
cumentos sem estarem ligados em rede, seria necessário a aquisição de
3 impressoras. Mas somente 1 impressora será necessária se eles estive-
rem em uma rede. A figura 1.1 mostra um exemplo de rede usando uma
impressora compartilhada.

Figura 1.1 – Rede de computadores utilizando impressora compartilhada

Baseados neste simples exemplo, podemos derivar uma definição para


as redes de computadores:

Uma rede de computadores pode ser definida como um grupo de


computadores que são conectados entre si, de forma a proporcio-
nar comunicação e compartilhamento de recursos de forma si-
multânea e utilizando um meio de transmissão comum.

Licenciatura em Informática
13
Conceitos Básicos de Redes de Computadores

Estes computadores são autônomos, ou seja, funcionam perfeita-


mente individualmente. Eles são apenas conectados, então, visan-
do a vários objetivos. Sendo assim, uma rede de computadores tem
como objetivos principais:

- compartilhamento de recursos: uma vez que a rede possibilita que os


recursos de um computador possam ser acessados pelos demais, então
ela abre a possibilidade de se compartilhar esse recurso. Esse recurso
pode ser, por exemplo, uma pasta ou diretório contendo arquivos ou
um banco de dados de uso comum, uma área de grande espaço de arma-
zenamento no disco rígido, ou algum hardware caro e inexistente nos
outros computadores como uma impressora, um gravador de DVD, um
processador de última geração, etc., o que geraria economia financeira.

- confiabilidade: uma vez que a rede possibilita que os computado-


res possam trocar mensagens e dados de uma maneira fácil e eficiente,
pode-se utilizar a rede como um mecanismo para aumentar a confia-
bilidade do sistema como um todo. Imaginemos que os usuários man-
têm arquivos importantes em seus computadores, como, por exemplo,
programas, relatórios, planilhas, documentos, imagens, enfim, produtos
do trabalho dos mesmos que podem conter informações importantes
para o negócio da empresa. Imagine o desastre que ocorreria quando o
disco-rígido da estação de trabalho de um funcionário falha ao ser liga-
do no início do expediente do dia seguinte, e justamente naquele disco
estejam todos os relatórios e planos a serem apresentados a um cliente,
ou futuro cliente, importante. Neste caso, o uso de uma rede de com-
putadores pode ser útil para ajudar a diminuir os danos. Uma estraté-
gia possível nesses casos é agregar um computador seguro ao ambiente,
acessível pelas estações de trabalho dos funcionários e na qual cada um
cria cópias de segurança de sua produção diária ao final do expediente.
Chamamos esse computador de seguro porque ele pode ser composto
de elementos de hardware e software mais tolerantes a falhas e, dessa
maneira, ser menos propenso à perda de informações. Caso não seja
possível o uso deste computador confiável na rede, a simples duplicação
dos arquivos em outras máquinas da rede já diminuiria o risco de perda
total de arquivos importantes.

- comunicação: o princípio básico do uso das redes de computadores é


possibilitar a comunicação entre usuários muitas vezes geograficamente
distantes. Por meio dela, usuários podem trocar arquivos, mensagens e
comandos, o que geralmente acelera o processo de tomada de decisão
benificiando organizações e usuários. Muito provavelmente, a comuni-
cação é principal razão que vem à sua cabeça quando você pensa em
uma rede de computadores.

Redes de Computadores
14
Capítulo 1

As formas como as redes prestam serviços aos usuários das mesmas


pode variar. Na próxima seção será mostrado o conceito de serviço de
rede e como ele pode ser fornecido.

1.2 Protocolos e serviços de redes

Para reduzir a complexidade do projeto de rede, a maioria das redes


atualmente é organizada em uma série de camadas ou níveis, cada uma
delas construída sobre a outra. O número de camadas, bem como o con-
teúdo e a função de cada uma delas difere de rede para rede. Entretanto,
em todas as redes assim estruturadas, o propósito de cada camada é
oferecer certos serviços para as camadas mais altas, ocultando destas os
detalhes de como os serviços oferecidos são, de fato, implementados.

Você deve entender o conceito de sistema em camadas como uma for-


ma de dividir um problema em partes menores. Em nossa vida prática,
também temos vários problemas que tentamos dividir em partes menores
para que sejam mais facilmente resolvíveis. Uma analogia humana inte-
ressante é, por exemplo, uma viagem de ônibus. Quando vamos viajar de
ônibus, passamos por várias camadas sem nem percebamos. Por exemplo:
a primeira camada é dirigir-se ao guichê da empresa de ônibus comprar a
passagem. Desta forma, é selecionado um destino, uma rota a ser seguida,
um lugar no ônibus e um horário. Após isto, você passa por mais uma
camada, que é guardar a bagagem no ônibus, e depois por mais outra, que
é entregar a passagem ao motorista. Por último, após sentar-se no ônibus,
você finalmente é levado até o seu destino, ou seja, sai de uma cidade com
destino à outra. Desta forma, você percebe que, para cumprir um propó-
sito (fazer uma viagem de ônibus), você passa por várias etapas (camadas)
das quais participaram várias pessoas diferentes.

Em redes de computadores, os dados também passam por várias etapas an-


tes de saírem de um computador com destino à outro. Estas etapas, às quais
chamamos de camadas, também contribuem para que os dados cheguem
corretamente ao destino de forma confiável e são efetuadas por uma série
de serviços, tal como várias pessoas participaram da sua viagem de ônibus
no exemplo anterior. Desta forma, podemos definir serviço como:

Um serviço é um conjunto de operações que uma camada ofere-


ce para a camada imediatamente superior a ela. O serviço define
quais operações a camada está preparada para oferecer a seus
usuários, mas não especifica de forma alguma como essas ope-
rações são implementadas.

Licenciatura em Informática
15
Conceitos Básicos de Redes de Computadores

Logo, por este conceito, vemos que um serviço fornece operações para a ca-
mada imediatamente superior a ela. Desta forma, a camada acima de todas
fornece serviços ao usuário final da rede. Estes serviços podem variar na
finalidade e na forma como estes serviços são fornecidos para o usuário.

Geralmente existem duas formas básicas de uma máquina em uma


rede prestar um serviço à outra. São o modelo cliente-servidor e o
modelo ponto-a-ponto.

1.2.1 Modelo cliente-servidor

Nas arquiteturas cliente-servidor existem, necessariamente, dois tipos


de computadores: os clientes e os servidores. Os computadores servido-
res são máquinas que prestam serviços a outras máquinas que os requi-
sitam, chamadas de clientes. Desta forma, necessariamente, o computa-
dor que inicia o contato é o cliente que espera um serviço de um outro
computador chamado de servidor.

O computador servidor pode ser uma máquina comum que executa


um processo (programa em execução) servidor e o computador cliente
pode ser uma máquina com a mesma configuração da máquina servi-
dora, mas que executa um processo cliente. Grande parte dos serviços
fornecidos pela Internet são feitos através do modelo cliente-servidor.

Existem vários tipos de programas servidores, como por exemplo:

- Servidores de arquivo e impressão – Os dados ficam armazenados no


servidor e quando precisam ser utilizados por uma estação, esses dados
são transferidos para a memória da estação e usados localmente.

- Servidores de aplicação – Possui uma porção servidora responsável


por processar os pedidos enviados pela porção cliente que fica na esta-
ção. Diferentemente do servidor de arquivos, somente o que é requisi-
tado é passado para a estação e não a massa de dados inteira. Um bom
exemplo seria a pesquisa em um banco de dados.

- Servidores de correio – Um tipo de servidor de aplicação. O princípio


é o mesmo, mas muda o tipo da aplicação. Agora, o servidor provê as
mensagens eletrônicas de correio da rede, ou seja, e-mails.

- Servidores de serviço de diretório – Responsáveis pela validação do


usuário na rede. Normalmente, redes são agrupadas em grupos lógicos
chamados domínios. O usuário é confrontado com uma base de usuá-
rios e, baseado nisso, é permitido o seu ingresso no domínio e a utiliza-
ção dos recursos do mesmo.

Redes de Computadores
16
Capítulo 1

- Servidores de Backup - Como todos os dados importantes da rede


agora estão centralizados, um backup é fundamental, já que, uma vez
que os dados são importantes, eles não podem ser perdidos devido a
falhas de hadware. Há meios de agendar backups periódicos e que são
executados automaticamente. Nunca é demais lembrar que esses ba-
ckups devem ser agendados para serem realizados em horários em que
a rede estiver praticamente sem utilização.

A grande vantagem de se ter um servidor dedicado é a velocidade de


resposta às solicitações do cliente (computador do usuário ou estações
de trabalho), o que acontece porque, além de ele ser especializado na
tarefa em questão, normalmente não executa outras tarefas. Em redes
nas quais o desempenho não é um fator importante, pode-se ter servi-
dores não-dedicados, isto é, micros servidores que são usados também
como estação de trabalho. A figura 1.2 mostra como seria uma rede no
modelo cliente-servidor.

Clientes

Servidor

Figura 1.2 – Rede no modelo cliente-servidor

Licenciatura em Informática
17
Conceitos Básicos de Redes de Computadores

1.2.2 Modelo ponto-a-ponto

No modelo ponto-a-ponto, não existe o conceito de processos com


funções definidas e distintas como no modelo cliente-servidor. Nesta
abordagem, todos os processos participantes da comunicação podem
atuar sendo clientes e também servidores, e existe um uso mínimo (ou
nenhum) de servidores dedicados.

Nas redes do modelo ponto-a-ponto, todos os usuários podem com-


partilhar qualquer um de seus recursos da maneira que escolher. Esses
recursos incluem dados em pastas compartilhadas, impressoras, placa
de fax e assim por diante.

As redes ponto-a-ponto também são usadas nas redes de compartilha-


mento de arquivos (Gnutella, Torrent e E-mule), que são usadas para
compartilhamento de arquivos de música, vídeo, etc. Nestas redes, cada
usuário age como cliente (quando acessa um arquivo em outro compu-
tador) e servidor (quando tem seus arquivos acessados por outro usuá-
rio). Na figura 1.3, um exemplo de rede ponto-a-ponto.

Fonte

Pare (peers)

   Figura 1.3 – Rede ponto-a-ponto

Redes de Computadores
18
Capítulo 1

1.2.3 Protocolos

Independente do modelo usado na rede (cliente-servidor ou ponto-a-


ponto), os computadores em uma rede geralmente se comunicam utili-
zando um conjunto de regras rígidas, que permeiam todos os passos na
comunicação. A este conjunto de regras damos o nome de protocolos. Na
interação humana também temos vários protocolos os quais nos guiam
no processo de socialização com outros indivíduos e permitem que esta
socialização seja produtiva. Se as regras de um protocolo forem quebradas
de forma inesperada, nós nos sentimos desconfortáveis e, muitas vezes, fi-
camos desestimulados a prosseguirmos com a interação. Desta forma, um
protocolo é um conjunto de regras previamente estabelecidadas para a co-
municação, seja entre seres humanos ou em computadores. Por exemplo:
se uma pessoa nos dá “Bom dia!” e respondemos “Não sei o que você vê
de bom nele!”, imediatamente a pessoa encerrará a conversa. Isso porque
nossa resposta fere as regras de convivência previamente estabelecidas,
nas quais mesmo que seu dia não seja dos melhores, você geralmente res-
ponde “Bom dia!”. O que pode variar é a entonação, de acordo com o fato
de seu dia estar realmente sendo bom ou não....

Desta forma, uma rede, se um computador responde de forma inespe-


rada ferindo às regras definidas em um protocolo, isso também pode
causar o fim da comunicação. Computadores possuem seus próprios
protocolos de comunicação, e estes são, em geral bem mais formais e
rígidos. No contexto das redes de computadores, podemos então definir
protocolo como:

Um protocolo é a definição do formato, ordem das mensagens en-


viadas e recebidas pelos computadores da rede e as ações tomadas
quando da transmissão ou recepção de mensagens.

1.3 Classificação de escala das redes

As redes de computadores podem ser classificadas em três grandes gru-


pos, de acordo com seu tamanho e função. Eles são LANs (Local Área
Network- Rede de Área Local), MANs (Metropolitan Area Network-
Rede de área metropolitana) e WANs (Wide Area Network –Rede de
Vasta Área). Esta classificação leva em consideração, em grande parte,
a distância geográfica existente entre os computadores destas redes. Na
figura 1.4, podemos ver uma tabela que mostra a classificação das redes
de acordo com a distância.

Licenciatura em Informática
19
Conceitos Básicos de Redes de Computadores

Distância de um Computadores Tipo de Rede


computador até outro localizados no
computador mesmo
10 m Sala Rede Local
100 m Edifício Rede Local
1 km Campus Rede Local
10 km Cidade Rede
Metropolitana
100 km País Rede geografica-
mente distribuída
1.000 km Continente Rede geografica-
mente distribuída
10.000 km Planeta Internet

Figura 1.4 – Classificação das redes em relação à distância geográfica

Em cada uma dessas classificações, temos um conjunto de soluções tec-


nológicas distintas pois esses tipos de rede destinam-se a aplicações dis-
tintas e, muitas vezes, a distância geográfica envolvida impede o uso de
certas tecnologias. Veremos cada uma delas a seguir.

1.3.1 – LANs

Uma LAN é a unidade fundamental de qualquer rede de comput

adores. Pode abranger desde um ambiente com apenas dois computado-


res conectados até centenas de computadores e periféricos que se espa-
lham por vários andares de um prédio. Uma LAN está confinada a uma
área geográfica limitada. São utilizadas para se conectar computadores
pessoais e estações de trabalho em escritórios e fábricas, com a finalida-
de de compartilhar recursos e permitir o intercâmbio de informações.

1.3.2 – MANs

Esta rede de caráter metropolitano liga computadores e utilizadores


numa área geográfica maior que a abrangida pela LAN, mas menor que
a área abrangida pela WAN. Uma MAN normalmente resulta da inter-
ligação de várias LANs, cobrindo uma área geográfica de média dimen-
são, tipicamente um campus ou uma cidade/região e podem ser redes
de domínio privado ou público. Elas podem estar inclusas a uma rede
WAN. As MANs podem suportar serviços de comunicação variados,
sendo que uma situação comum é que as mesmas estejam relacionadas
com as operadoras de TV a cabo. A figura 1.5 mostra um exemplo de
rede MAN no âmbito de uma cidade.

Redes de Computadores
20
Capítulo 1

Prédio E

Rede Metropolitana - MAN

Prédio A Prédio D

Prédio B Prédio C

   Figura 1.5 – Exemplo de MAN

1.3.3 – WAN

Uma WAN é feita da interconexão de duas ou mais LANs, sendo que es-
tas LANs podem estar localizadas em prédios diferentes separados por
uma rua, ou estarem localizadas em vários países ao redor do mundo.
As WAN normalmente são de caráter público, geridas por um operador
de telecomunicações. Diferentemente da LAN, elas não estão limita-
das a uma área geográfica e contêm uma coleção de computadores cuja
tarefa básica é executar os programas dos usuários ou o sistema e os
aplicativos de um negócio.

Os computadores de uma WAN são interconectados através de uma rede


de comunicação. Cuja tarefa é transportar mensagens de um remetente
para um destinatário (computador de origem para um computador de
destino). Devido à sua enorme popularidade nos dias atuais, o melhor
exemplo de rede WAN é, sem dúvida, a Internet, com seus milhões de
computadores interligados ao redor do globo. A figura 1.6 mostra um
exemplo de WAN ligando várias MANs de cidades diferentes.

Licenciatura em Informática
21
Conceitos Básicos de Redes de Computadores

MAN - Campus de São Carlos

Prédio D

Rede Metropolitana
Prédio C Prédio
P édi A

MAN - Campus de São Paulo


Prédio B

Prédio F

Rede WAN Rede Metropolitana

Prédio A Prédio D

Prédio B Prédio C

LAN - Campus de Baurú

Figura 1.6 - Exemplo de WAN ligando várias MANs

1.4 Topologias de rede

O termo topologia, ou, mais especificamente, topologia da rede, diz


respeito ao layout físico da rede, ou seja, como computadores, cabos e
outros componentes estão ligados na rede. Topologia é o termo-padrão
que muitos profissionais usam quando se referem ao design ou desenho
básico da rede.

Antes que computadores possam compartilhar recursos e executar


qualquer tarefa de comunicação, eles devem estar conectados, e cabos
geralmente são utilizados para fazer essa conexão entre eles. A topologia
pode determinar como os computadores se comunicam na rede. Dife-
rentes topologias necessitam de diferentes métodos de comunicação os
quais têm grande influência na rede.

A seguir, veremos as principais topologias de rede existentes.

Redes de Computadores
22
Capítulo 1

1.4.1 - Topologia em estrela

Uma rede usa uma topologia de rede em estrela se todos os computado-


res se prendem a um ponto central.

Uma vez que uma rede em estrela se assemelha a uma roda, o centro
de uma rede em estrela é frequentemente chamado de hub ou concen-
trador. Um hub típico consiste em um dispositivo eletrônico que acei-
ta informações de um computador remetente e os entrega ao destino
apropriado. A grande vulnerabilidade destas redes é que elas podem
ser paralisadas se houver uma falha no dispositivo central. A figura 1.7
mostra uma organização de rede na forma de estrela, com o dispositivo
concentrador situado no centro.

Concentrador

Figura 1.7 – Topologia em estrela

1.4.2- Topologia em anel

Na topologia em anel, os computadores são organizados de forma que


sejam conectados em um laço fechado – um cabo conecta o primeiro
computador a um segundo, outro cabo conecta o segundo computador
a um terceiro, e assim por diante, até que um cabo conecte o computa-
dor final de volta ao primeiro. O nome anel surge porque alguém pode
Licenciatura em Informática
23
Conceitos Básicos de Redes de Computadores

imaginar que os computadores e os cabos que os conectam são organi-


zados na forma de um círculo.

O anel apresenta a excepcional qualidade de não apresentar um ponto


de falha único. Se um dos canais de comunicação falhar, a rede pode,
em teoria, reconfigurar-se de modo que a comunicação entre os nós
mantenha-se, ainda que distâncias de comunicação mais longas e maio-
res atrasos surjam e façam com que o desempenho geral caia. Na figura
1.8, podemos visualizar uma rede com a topologia de anel.

   Figura 1.8 – Topologia em forma de anel

1.4.3- Topologia de barramento

Uma rede que usa uma topologia de barramento normalmente consiste


em um único cabo longo no qual os computadores se acoplam. Qual-
quer computador acoplado a um barramento pode enviar um sinal atra-
vés do cabo, e todos os computadores receberão este sinal.

Uma grande desvantagem do barramento é o fato de que, ele em si, é


um ponto de falha único e, neste caso, se o barramento apresentar pro-
blemas e falhar, todos os computadores sentirão os efeitos dessa falha e
ficarão impedidos de se comunicarem.
Redes de Computadores
24
Capítulo 1

Figura 1.9 – Topologia em forma de barramento

1.4.4 – Topologia em malha

Nessa topologia, os computadores são ligados uns aos outros por vários
segmentos de cabos. Essa configuração oferece redundância e confia-
bilidade, pois se um dos cabos falhar, o tráfego fluirá por outro cabo.
Porém, essas redes possuem instalação dispendios, devido ao uso de
grande quantidade de cabeamento. Por isso, essa topologia pode, em te-
oria, ser empregada e ela possui características excepcionais, porém, na
prática, ela revela-se extremamente cara e dificilmente é implementada.

Figura 1.10 – Topologia em malha

1.4.5 – Topologias mistas

Topologias mistas são aquelas obtidas da combinação das topologias


básicas e são empregadas visando, obter o melhor de duas ou mais
Licenciatura em Informática
25
Conceitos Básicos de Redes de Computadores

topologias. Por exemplo: uma rede em anel torna mais fácil aos com-
putadores coordenarem o acesso e detectarem se a rede está operando
corretamente. Porém, uma rede inteira em anel é desativada se um dos
cabos é cortado. Uma topologia em estrela ajuda a proteger a rede de
danos em um único cabo, já que cada cabo conecta somente uma má-
quina. Um barramento exige menos fios do que uma estrela, mas tem
a mesma desvantagem de um anel: uma rede é desativada se alguém
corta acidentalmente o cabo principal. Desta forma, é possível formar
redes estrela-barramento, estrela-anel, visando a somar as vantagens
de duas abordagens.

1.5 – Modos de transmissão em redes

As redes de difusão, ou também chamadas de redes de canais de difu-


são, são aquelas que empregam uma tecnologia singular para realizar a
transmissão de mensagens entre as suas máquinas. Elas se utilizam de
um subsistema de transmissão de mensagens único e compartilhado, ao
qual todas as estações conectam-se.

Esse subsistema é também denominado de canal de transmissão. Quan-


do ocorre uma transmissão, todas as máquinas conectadas ao canal de
transmissão ouvem a chegada dessa mensagem, porém, pelo fato de que
a mensagem carrega consigo um campo de endereçamento contendo
o endereço da estação destinatária, somente ela irá copiar e processar
a mensagem, sendo que as demais irão ignorá-la ou descartá-la. Para
que esse mecanismo funcione, toda máquina deve, ao ouvir o início da
transmissão de uma mensagem, verificar se o código no campo de en-
dereçamento corresponde ao seu próprio endereço ou não.

As redes usualmente permitem a transmissão de mensagens com for-


mas de endereçamento especiais, codificando-se os bits de endereço de
destino com padrões específicos. Há três formas possíveis de endereça-
mento em redes:

• Unicast - Quando uma mensagem é transmitida na modalidade


unicast, o seu campo de endereço de destino contém o endereço
de uma única e específica máquina da rede. Ao ser transmitida,
apenas ela irá copiar e processar a mensagem, sendo que as demais
irão ignorá-la

• Broadcast - Quando uma mensagem é transmitida na modalidade bro-


adcast, o seu campo de endereço de destino contém um código especial
que especifica todas as máquinas da rede. Ao ser transmitida, todas irão
copiar e processar a mensagem, sendo que nenhuma deve ignorá-la.
Redes de Computadores
26
Capítulo 1

• Multicast- Quando uma mensagem é transmitida na modalidade mul-


ticast, o seu campo de endereço de destino contém um código de ende-
reço que especifica um grupo de máquinas da rede. Ao ser transmitida,
apenas as máquinas pertencentes àquele grupo irão copiar e processar a
mensagem, sendo que as demais irão ignorá-la.

1.6 – Modelos de referência

Em vez de terem um protocolo único e gigante que especifique detalhes


completos para todas as formas possíveis de comunicação, os projetistas
de rede escolheram dividir o problema da comunicação em subpartes
e projetar um protocolo separado para cada uma delas. Isso torna cada
protocolo muito mais fácil de ser desenvolvido. Foram desenvolvidas
várias ferramentas para ajudar os projetistas de protocolos a entender
as subpartes do problema de comunicação e planejar todo um conjunto
de protocolos. Uma das ferramentas mais importantes é chamada de
modelo em camadas. Essencialmente, o modelo descreve uma manei-
ra de dividir o problema da comunicação em subpartes, denominadas
camadas. Desta forma, um cojunto de protocolos pode ser projetado
especificando-se um protocolo que corresponda a cada camada.

A camada N em um computador é capaz de conversar com uma camada


N em um outro computador. As regras e as convenções utilizadas nessa
conversação são coletivamente chamadas de protocolo de camada N.

Na verdade, nenhum dado é transmitido diretamente de uma camada


N em uma máquina para a camada N em outra máquina. Quando uma
camada requisita um serviço de envio de mensagem à camada parceira,
ela o envia virtualmente à camada parceira. Na realidade, essa mensa-
gem e algumas informações de controle são passadas para um serviço
na camada imediatamente inferior e assim por diante, até que o nível
mais baixo seja atingido. Abaixo do nível 1 está o meio físico de comu-
nicação, geralmente o cabo que liga os dois computadores, por meio do
qual a comunicação real ocorre.

Ao longo do tempo foram propostos vários modelos de camadas para a


comunicação em redes, que variavam em número de camadas, protoco-
los e serviços prestados, mas que, ao final, visavam resolver um mesmo
problema comum: a entrega de dados de um computador origem a um
computador destino com corretude, não importando a distância geo-
gráfica entre estes dois computadores.

Dois dos modelos mais importantes propostos para dividir o problema


da comunicação em camadas foram os modelos OSI e TCP/IP. O mo-
Licenciatura em Informática
27
Conceitos Básicos de Redes de Computadores

delo OSI foi um modelo teórico, nunca implementado na prática, mas


que serviu como padrão para vários outros modelos. O modelo TCP/IP
é o modelo padrão que permeia a Internet até os dias atuais. Dada sua
importância, serão os modelos vistos a seguir.

1.6.1 – Modelo OSI

No início da década de 80, houve um grande aumento na quantidade


e no tamanho das redes. Na metade da década de 80, essas empresas
começaram a ter problemas gerados pelas expansões realizadas e per-
ceberam que precisavam abandonar os sistemas de redes proprietários.
Para tratar do problema da incompatibilidade entre as redes e da impos-
sibilidade delas se comunicarem entre si, o modelo de referência OSI
(Open Systems Interconnection) foi lançado em 1984, e foi um primeiro
passo na direção da padronização internacional dos protocolos usados
nas diversas camadas.

No modelo de referência OSI, existem sete camadas numeradas e cada


uma ilustra uma função particular da rede. Dividir a arquitetura da rede
nessas sete camadas oferece as seguintes vantagens:

decompõe as comunicações de rede em partes menores e mais simples;

padroniza os componentes de rede, permitindo o desenvolvimento e o


suporte por parte de vários fabricantes; possibilita a comunicação entre
tipos diferentes de hardware e de software de rede; evita que as modifi-
cações em uma camada afetem as outras, possibilitando maior rapidez
no seu desenvolvimento; decompõe as comunicações de rede em partes
menores, facilitando sua aprendizagem e compreensão;

As sete camadas que compõem o modelo OSI são:

- Física – A camada física é responsável pela transferência de bits num


canal de comunicação. De maneira geral, a sua função é garantir que
cada bit enviado de um lado será recebido do outro lado sem ter altera-
do o seu valor, ou seja, se o bit enviado tem o valor 1, ele será recebido
como 1 do outro lado e não 0.

- Enlace – a camada de enlace tem por função principal a transforma-


ção do meio de comunicação “bruto”, fornecido pela camada anterior,
em uma linha livre de erros de transmissão para a camada acima, a de
Rede. Ela efetua esta função por meio do fracionamento das mensagens
recebidas do emissor em unidades de dados denominadas quadros, que
correspondem a algumas centenas de bytes.

Redes de Computadores
28
Capítulo 1

- Rede - A camada de rede é responsável pela gestão das redes e por de-
finir a forma como os pacotes de dados serão encaminhados do emissor
ao receptor. Os caminhos a serem utilizados são chamados de rotas, e
podem ser definidos de acordo com um amplo conjunto de algoritmos
definidos para esta função.

- Transporte – A camada de transporte visa a receber os dados enviados


da camada de sessão, decompô-los, se for o caso, em unidades de dados
menores e garantir que todas as partes da mensagem vão ser transmiti-
das corretamente à outra extremidade.

- Sessão – É responsável pelos estabelecimentos de sessões de diálo-


go para os usuários da rede. Uma sessão objetiva permitir o transporte
de dados, da mesma forma que os serviços oferecidos pela camada de
Transporte, mas ela oferece serviços mais sofisticados de comunicação
que podem ser úteis a determinadas aplicações. Um exemplo disto é a
possibilidade de envio, por meio de uma sessão, de um arquivo de dados
(ou programa) de um sistema a outro.

- Apresentação – Esta camada assume particularmente as funções asso-


ciadas à sintaxe dos dados transmitidos, ou seja, seu formato ou repre-
sentação. Inicialmente, a função desta camada estava restrita à conversão
entre codificação ASCII e EBCDIC, mas hoje assume a responsabilidade
pela criptografia e compressão de dados.

- Aplicação – A camada de aplicação, como o nome propriamente diz,


cuida da comunicação entre as aplicações cliente e servidora de usuários
em uma rede. Essas aplicações podem ser as mais variadas possíveis,
como transferência de arquivos, troca de mensagens em tempo real,
consultas a banco de dados, etc.

Vale dizer que o modelo OSI nunca foi implementado na prática, ou


seja, não existe nenhuma rede real atualmente funcionando utilizan-
do protocolos baseados neste modelo. Na figura 1.11, podemos ver
um diagrama que mostra duas máquinas se comunicando por meio
do modelo OSI.

Licenciatura em Informática
29
Conceitos Básicos de Redes de Computadores

Sistema Aberto A Sistema Aberto B

Aplicação Protocolo de Aplicação Aplicação

Apresentação Protocolo de Apresentação Apresentação

Protocolo de Sessão Sessão


Sessão

Protocolo de Transporte Transporte


Transporte

Protocolo de Rede
Rede Rede

Enlace Protocolo de Enlace Enlace

Protocolo de Nível Físico


Físico Físico

Conexão Física

Figura 1.11 – Modelo OSI

Na próxima seção, veremos o padrão de fato utilizado na Internet.: o


modelo TCP/IP.

1.6.2 - Modelo TCP/IP

O nome deste modelo é oriundo dos principais protocolos da pilha:


protocolo de serviço de rede IP (Internet Protocol) e o de serviço de
transporte TCP (Transmission Control Protocol). Apesar de não serem
os únicos, são os mais populares em função da ampla utilização por
aplicações Internet.

Diferente do modelo OSI, os protocolos da Internet não foram criados por


órgãos internacionais de padronização, e são mantidos pelo comitê IAB
(Internet Activity Board), membro da IETF (The Internet Engineering Task
Force). Este comitê é responsável pela análise de qualquer novo protocolo
para Internet. As propostas são submetidas por meio de uma RFC (Request
Redes de Computadores
30
Capítulo 1

for Comments) que será avaliada, e então, publicada, com ou sem alterações.
Se após seis meses da data de publicação o comitê não receber nenhuma
objeção, a RFC torna-se um padrão Internet (IS - Internet Standard).

Uma vez que toda a rede de computadores que é conectada à Internet


deve utilizar o protocolo TCP/IP, é natural que o interesse comercial por
este tenha crescido muito, ao ponto de hoje estar disponível em quase
todas as plataformas. Além disso, é comum encontrarmos TCP/IP sen-
do utilizado em redes locais que não estão conectadas à Internet.

A descrição da arquitetura do protocolo TCP/IP em camadas como as


do modelo de referência OSI é uma tarefa difícil e, certamente, con-
troversa. As camadas OSI foram definidas por pesquisadores ao longo
de anos, sempre com o compromisso acadêmico de ser um modelo de
referência, enquanto que o protocolo TCP/IP não teve qualquer com-
promisso que não a funcionalidade.

Geralmente, o modelo mais aceito classifica o modelo TCP/IP em 4 ca-


madas, que são: Acesso à rede, Inter-rede, Transporte e Aplicação.

A camada de Acesso à Rede não é normatizada pelo modelo em função


da grande variedade de tecnologias de rede existente. Desta forma, no
modelo TCP/IP a única obrigação existente nesta camada é o transmitir
grupos de bits construídos pela camada logo acima, executando tam-
bém o mapeamento entre um endereço para um endereço do nível de
Inter-rede, assunto dos próximos capítulos.

A camada de Inter-rede ou Internet é a primeira padronizada do mo-


delo e é responsável pelo endereçamento, roteamento, controle de envio
e recepção de datagramas (porções de bits). Deve garantir que pacotes
enviados de qualquer rede sejam transmitidos, independentemente, do
seu destino. De forma simplificada, podemos dizer que as funções desta
camada são divididas entre:

- Roteamento: determina a rota ou caminho tomado pelo pacote de um


computador origem para um computador destino. Os algoritmos que
calculam este caminho são denominados algoritmos de roteamento.

- Endereçamento: a camada de Inter-rede define também um forma-


to de pacote oficial e um protocolo, denominado IP (Internet Protocol),
responsável pela função mais importante desta camada: endereçamen-
to de computadores. Atualmente, existem duas versões deste protocolo
referenciadas por IPv4 e IPv6.

A camada de transporte se assemelha à camada de transporte do mode-


lo OSI, ou seja, também cuida do transporte fim-a-fim de dados entre
Licenciatura em Informática
31
Conceitos Básicos de Redes de Computadores

computadores da rede. Ou seja, ela complementa a função da camada


de Inter-rede que se preocupa com a entrega de dados entre máquinas
diferentes, não importando a distância geográfica que as separa. Entre-
tanto, vários programas diferentes podem estar acessando a rede em um
mesmo computador. Desta forma, a camada de transporte tem como
uma das principais funções a entrega correta dos dados corretos a um
processo executando em um computador específico. O protocolo TCP,
que também nomeia o modelo, faz parte desta camada e será assunto de
um próximo capítulo.

Por fim, a camada de aplicação trata da comunicação entre os progra-


mas se comunicando em computadores diferentes, geralmente usando
o modelo cliente-servidor. Ou seja, ela trata do formato das mensagens
trocadas entre clientes e servidores, de forma que os clientes possam
requisitar serviços dos servidores e serem atendidos corretamente por
estes. Na figura 1.12, é mostrado um comparativo entre os dois mo-
delos, OSI e TCP/IP, evidenciando a diferença no número e nomes de
camadas entre os dois.

Camadas do Modelo
Aplicação
Aplicações que usam a rede
Apresentação Camadas do Modelo TCP/IP
Padronização das representações dos dados Aplicação
Sessão Aplicações que usam a rede
Gerência de diálogos entre aplicações Transporte
Transporte Transporte de dados fim-a-fim
Transporte fim-a-fim com correção de erros Internet
Rede Roteamento de datagramas
Transferência de pacotes na rede Acesso à Rede
Enlace Acesso ao nível físico
Comunicação confiável ponto-a-ponto
Físico
Características físicas da rede

Figura 1.12 – Comparativo entre os modelos OSI e TCP/IP

De agora em diante, neste material, será usado um modelo semelhante


ao TCP/IP para a descrição das camadas, mas com cinco camadas: Físi-
ca, Enlace, Rede, Transporte e Aplicação. Ou seja, a camada de Acesso
à Rede foi dividida em duas, como é no modelo OSI, para possibilitar
uma diferenciação maior entre as funções das duas. As demais cama-
das terão funções semelhantes às vistas no modelo TCP/IP. A partir do
próximo capítulo, estaremos estudando a primeira camada deste nosso
modelo híbrido, a camada física

Redes de Computadores
32
Capítulo 1

Realize as atividades abaixo e envie-as de acordo com o enuncia-


do da Tarefa 2 do ambiente:
1 – Fale um pouco sobre as vantagens de se usar uma rede de com-
putadores no lugar de computadores isolados.
2 – Qual a diferença entre serviço e protocolo?
3 – Qual a diferença entre o modelo cliente-servidor e o modelo
ponto-a-ponto?
4 – Cite como as redes se classificam de acordo com o tamanho e
fale um pouco sobre cada uma das classes.
5 – Quais são as topologias de rede existentes?
6 – Descreva os modos de transmissão em redes.
7 – Por que é útil dividir a comunicação em redes em um modelo
de camadas?
8 – Cite as principais diferenças entre o modelo OSI e o modelo
TCP/IP.

No site http://www.netbook.cs.purdue.edu/, existe uma óti-


ma animação que ajuda a entender o transporte de dados através
das camadas de uma rede.
Para acessá-lo, clique em Sample Animations, no menu do lado
esquerdo, e, quando for aberto o menu de animações, clique na
primeira, Packet Traveling Trough Layers. Você pode usar os bo-
tões abaixo da animação para repeti-la ou pará-la, por exemplo.
Nesta animação é possível ver um pacote de dados descendo da
camada mais alta, de Aplicação, até a camada mais baixa do mo-
delo TCP/IP, a camada de Acesso à Rede. Desta camada, o pacote
trafega pelo meio físico de comunicação e é recebido pela camada
de Acesso à Rede do computador destino, onde sobe pelas cama-
das até chegar na camada de Aplicação.

Licenciatura em Informática
A CAMADA FÍSICA

Prezado aluno,
após ter tido contato com os conceitos mais básicos sobre redes de
computadores, é hora de começar a estudar as camadas que formam
um modelo, de forma a entendermos como as operações necessárias
a comunicação entre dois processos em uma rede acontecem.
Neste capítulo, veremos a camada física, a camada mais baixa do
modelo que veremos neste material. Por ser a camada mais baixa,
ela se preocupará com os conceitos mais fundamentais na comuni-
cação entre dois computadores os quais consistem na transmissão de
um bit corretamente por meio de um meio físico de comunicação.
Ao final do capítulo, realize os exercícios propostos para que possa
solidificar o aprendizado.
Desta forma, desejo-lhe bons estudos!

2.1 – A Função da camada física

A camada física trata da transmissão de bits através de um canal de co-


municação. Por ser a única camada que tem acesso físico ao meio de
transmissão, é a responsável pela adaptação do sinal ao meio. Desta for-
ma, é de sua responsabilidade garantir que cada bit enviado de um lado
será recebido do outro lado sem ter alterado o seu valor, ou seja, se o bit
enviado é 1, ele deve ser recebido como 1 e não 0.

No nível mais baixo, toda a comunicação entre computadores envolve


codificar dados em uma forma de energia e enviar e enviá-la por meio
de um meio de transmissão. Por exemplo: a corrente elétrica pode ser
usada para transferir dados através de um fio, ou as ondas de rádio po-
dem ser usadas para carregar dados através do ar. Uma vez que os dis-
positivos de hardware conectados a um computador executam a codi-
ficação e decodificação dos dados, os programadores e os usuários não
precisam conhecer os detalhes da transmissão.

Entretanto, já que um papel principal do software de comunicação é


tratar os erros e as falhas que surgem no hardware usado para transmi-
34
Capítulo 2

tir os dados, na próxima seção serão estudados os meios usados para a


transmissão em sistemas de rede modernos.

2.2. – Meios de transmissão

Existem três formas básicas de comunicação em meio de transmissão:

Simplex: uma comunicação é dita simplex quando há um dispositivo


transmissor e outro dispositivo receptor, sendo que este papel não se
inverte no período de transmissão. A transmissão tem sentido unidi-
recional, não havendo retorno do receptor. Pode-se ter um dispositivo
transmissor para vários receptores, e o receptor não tem a possibilidade
de sinalizar se os dados foram recebidos.

Duplex: duplex é um sistema de comunicação composto por dois in-


terlocutores que podem comunicar-se entre si em ambas as direções,
ou seja, a comunicação é bidirecional. Nota-se, contudo, que um siste-
ma composto por mais de dois interlocutores, ainda que suporte bidi-
recionalidade entre cada um deles, não se diz duplex. No caso em que
a comunicação se realiza simultaneamente nos dois sentidos, esta será
denominada full-duplex.

Half-duplex: uma comunicação é dita half-duplex (também chamada


semi-duplex) quando temos um dispositivo Transmissor e outro Re-
ceptor, sendo que ambos podem transmitir e receber dados, porém
não simultaneamente, ou seja, a transmissão tem sentido bidirecional.
Durante uma transmissão half-duplex, em determinado instante, um
dispositivo A será transmissor e o outro B será receptor, em outro ins-
tante, os papéis podem se inverter. Por exemplo: o dispositivo A poderia
transmitir dados que B receberia; em seguida, o sentido da trasmissão
seria invertido e B transmitiria para A a informação se os dados foram
corretamente recebidos ou se foram detectados erros de transmissão.

Os meios de transmissão são chamados de guiados quando existe um


meio físico que guia o fluxo de transmissão de dados em um sentido,
como cabos, por exemplo. Quando o meio físico é chamado de não-
guiado, isso indica que ele não possui um guia físico, ou seja, se propaga
geralmente usando o ar, como ondas de rádio, por exemplo. Ambos os
casos serão vistos a seguir.

Licenciatura em Informática
35
A Camada Física

2.2.1 – Fios de cobre

As redes de computadores convencionais usam fios como o meio primá-


rio para conectar computadores porque são baratos e fáceis de instalar, e
usam quase exclusivamente fios de cobre porque sua baixa resistência à
corrente elétrica faz com que os sinais possam viajar mais longe.

O tipo de fiação usado em redes de computadores é escolhido para mi-


nimizar a interferência. A interferência surge porque um sinal elétrico
que viaja através de um fio age como uma estação de rádio em miniatu-
ra – o fio emite um pouco de energia eletromagnética, que pode viajar
através do ar. Além disso, sempre que encontra outro fio, uma onda ele-
tromagnética gera uma corrente elétrica pequena no fio. A quanti-
dade de corrente gerada depende da força da onda eletromagnética e da
posição física do fio. Geralmente, os fios não chegam perto o suficiente
para fazer da interferência um problema. Se dois fios estão dispostos
próximos um do outro em um ângulo reto e um sinal passa através de
um deles, a corrente gerada no outro é quase indetectável. Entretanto,
quando ambos são colocados juntos e em paralelo, um sinal forte envia-
do em um gerará um sinal similar no outro. Já que os computadores não
podem distinguir entre sinais gerados acidentalmente e as transmissões
normais, a corrente gerada pode ser forte o bastante para transtornar ou
impedir uma comunicação normal. Infelizmente, o problema de inter-
ferência é sério porque os fios que compreendem uma rede de dados são
frequentemente colocados em paralelo com muitos outros. Por exem-
plo, os fios de um computador podem encontrar-se ao lado dos fios de
outros computadores presentes em uma rede.

Para minimizar a interferência, as redes de computadores usam dois ti-


pos básicos de fiação:

- par trançado descoberto (UTP)

- cabo coaxial

A fiação trançada do par é usada também por sistemas de telefonia. O


termo se deve ao fato de que cada fio é revestido com um material iso-
lante (por exemplo, plástico) e então um par dos fios é torcido junto,
em um formato helicoidal, semelhante ao DNA. As torções mudam as
propriedades elétricas do fio e ajudam o mesmo a se tornar apropriado
para o uso em uma rede. O exemplo de cabo par trançado mais usado
em redes de computadores é mostrado na figura 2.1.

Redes de Computadores
36
Capítulo 2

    Figura 2.1 – Cabo par trançado

O segundo tipo de fio de cobre usado em redes de computadores é o


cabo coaxial, o mesmo usado em televisão a cabo e também via satélite
como Sky®. O coaxial fornece proteção ainda maior contra interferência
do que o par trançado. Em vez de trançar fios um ao redor do outro para
limitar a interferência, um cabo coaxial consiste em um único fio cerca-
do por um protetor de metal mais pesado. Na figura 2.2, é mostrado um
cabo coaxial e seus revestimentos.

Fio de Cobre

Isolante

Capa de Cobre

Isolamento

      Figura 2.2 – Cabo coaxial

Licenciatura em Informática
37
A Camada Física

O protetor de metal pesado em um cabo coaxial forma um cilindro fle-


xível, em torno do fio interno, que fornece uma barreira à radiação ele-
tromagnética. A barreira isola o fio interno de duas maneiras: protege-o
da energia eletromagnética entrante que poderia causar a interferência e
evita que sinais no fio interno irradiem energia eletromagnética o que po-
deria afetar outros fios. Uma vez que cerca o centro do fio uniformemente
em todos os lados, o protetor em um cabo coaxial é especialmente eficaz.
O cabo pode ser colocado em paralelo com outros ou dobrado e torcido
em torno dos cantos que o protetor permanece sempre no lugar.

2.2.2 Fibra óptica

As redes de computadores usam também fibras de vidro para transmitir


dados. Conhecido como fibra óptica, o meio usa a luz para transportar
os dados. A fibra de vidro em miniatura é revestida de plástico, o que a
permite ser dobrada parcialmente sem se quebrar (embora não possa
ser dobrada em um ângulo reto). Um transmissor em uma extremidade
de uma fibra usa um diodo emissor de luz ou um laser para enviar pul-
sos de luz pela fibra. Um receptor no extremo oposto usa um transistor
sensível à luz para detectar os pulsos enviados.

As fibras ópticas têm quatro vantagens principais sobre os fios. Em pri-


meiro lugar, como usam luz, elas não causam interferência elétrica em
outros cabos, nem são suscetíveis à interferência elétrica. Em segundo
lugar, como podem ser fabricadas para refletir a maioria da luz inter-
na, podem carregar um pulso de luz muito mais longe do que um fio
de cobre pode carregar um sinal. Em terceiro lugar, já que a luz pode
codificar mais informação do que sinais elétricos, fibras ópticas podem
carregar mais informação do que um fio. Em quarto lugar, ao contrário
da eletricidade, que requer sempre um par de fios conectados em um
circuito completo, a luz pode viajar de um computador a outro sobre
uma única fibra.

Apesar de suas vantagens, as fibras ópticas também apresentam des-


vantagens: primeiro, a instalação de uma fibra requer um equipamento
especial que faça o polimento das extremidades para permitir que a luz
passe completamente; segundo, se uma fibra quebrar dentro do revesti-
mento plástico (por exemplo, sendo dobrada em um ângulo reto), en-
contrar onde ocorreu o problema é difícil; trceiro, reparar uma fibra
quebrada é complicado porque um equipamento especial é necessário
para juntar duas fibras de modo que a luz possa passar de novo através
da junção. Na figura 2.3, vemos um exemplo de fibra óptica.

Redes de Computadores
38
Capítulo 2

            Figura 2.3 – Fibra Óptica

2.2.3 – Rádio

Além de seus usos para a transmissão pública dos programas de rádio e


televisão e para uma comunicação privada com dispositivos como tele-
fones portáteis, a radiação eletromagnética pode ser usada para trans-
mitir dados de computador. Informalmente, diz-se que uma rede que
usa ondas de rádio eletromagnéticas opera na frequência de rádio, e as
transmissões são chamadas de transmissões RF. Ao contrário das redes
que usam fios ou fibras ópticas, as que usam transmissões RF não re-
querem uma conexão física direta entre os computadores. Em vez disso,
cada computador participante está anexo a uma antena, que pode tanto
transmitir como receber RF.

Fisicamente, as antenas usadas com redes RF podem ser grandes ou pe-


quenas, dependendo do alcance desejado. Uma antena projetada para
propagar sinais por diversos quilômetros através de uma cidade pode
consistir de um mastro de metal, de aproxidamente dois metros de com-
primento, montado verticalmente no alto de um edifício. Uma antena
projetada para permitir uma comunicação dentro de um edifício pode
ser pequena o bastante para caber dentro de um computador portátil
(por exemplo, menos de 20 centímetros). Na figura 2.4, é mostrado um
cenário de uso de redes via onda de rádio em uma cidade.

Licenciatura em Informática
39
A Camada Física

Usuáro Condomínio
Doméstico

Usuáro
Doméstico

Condomínio
Condomínio Provedor
d d de IInternet
t

Usuáro
Doméstico

Usuáro Condomínio
Doméstico

Figura 2.4 – uso de ondas de rádio para comunicação

2.2.4 – Satélite

Embora as ondas de rádio não se curvem de acordo com a superfície


da terra, a tecnologia RF pode ser combinada com satélites para for-
necer comunicação através de distâncias mais longas. O satélite geral-
mente é composto de um transponder, que consiste em um receptor
de rádio e um transmissor. O transponder aceita uma transmissão de
rádio entrante, amplifica-a e transmite o sinal amplificado para a ter-
ra em um ângulo ligeiramente diferente do que chegou. Uma estação
terreste em um lado do oceano transmite um sinal ao satélite, que o
envia ao outro lado. Devido ao fato de ser caro colocar um satélite em
órbita, um único satélite contém geralmente múltiplos transponders
que operam independentemente.

Uma definição para transponder seria:

Redes de Computadores
40
Capítulo 2

O transponder (abreviação de Transmitter-responder) é um dis-


positivo de comunicação eletrônico complementar de automação
cujo objetivo é receber, amplificar e retransmitir um sinal em uma
frequência diferente ou transmitir de uma fonte uma mensagem
pré-determinada em resposta à outra pré-definida “de outra fonte”.

Cada transponder usa uma frequência de rádio diferente, possibilitanto


que comunicações múltiplas prossigam simultaneamente. Além disso,
como um único canal do satélite pode ser compartilhado, ele pode ser-
vir a muitos clientes. Um exemplo de comunicação intermediada por
satélite pode ser visto na figura 2.5.

Figura 2.5 – Comunicação via satélite

2.2.5 – Microondas

A radiação eletromagnética além da faixa de frequência usada por rádio


e televisão pode ser usada também para transportar informações. Em
particular, muitas empresas de telefonia interurbana usam transmissões
de microondas para carregar conversas telefônicas. Algumas empresas
de grande porte instalaram também sistemas de comunicação de micro-
ondas como parte do sistema de rede da empresa.

Embora as microondas sejam meramente uma versão das ondas de rádio


com frequência mais elevada, elas se comportam de maneira diferente:
em vez de transmitir em todas as direções, uma transmissão de micro-

Licenciatura em Informática
41
A Camada Física

ondas pode ser apontada em uma única direção, impedindo que outros
interceptem o sinal. Além disso, a transmissão de microondas pode car-
regar mais informação do que transmissões RF de frequencia mais baixa.
Entretanto, já que as microondas não podem penetrar em estruturas de
metal, a transmissão trabalha melhor quando há um trajeto desobstruído
entre o transmissor e o receptor. Como consequência, a maioria das ins-
talações baseadas em microondas consiste de duas torres, mais altas que
os edifícios e a vegetação circundantes, cada uma com um transmissor
apontado diretamente para um receptor. Antenas de comunicação direta-
mente via microondas podem ser vistas na figura 2.6.

Figura 2.6 – Comunicação via microondas

2.2.6 –Infravermelho

Os controles remotos sem fio, usados com dispositivos como apare-


lhos de televisão, DVD e som, comunicam-se através de transmissões
de infravermelho. O infravermelho é limitado a uma área pequena(por
exemplo, uma única sala) e geralmente exige que o transmissor esteja
apontado para o receptor. O hardware infravermelho é barato, se com-
parado a outros mecanismos, e não requer antena.

As redes de computadores podem usar a tecnologia infravermelha para


a transmissão de dados. Por exemplo: é possível equipar uma sala gran-
de com uma única conexão infravermelha que forneça acesso à rede a
todos os computadores que ali estiverem, os quais podem permanecer
em contato com a rede enquanto são movidos dentro da sala. As redes
de infravermelho são especialmente convenientes para computadores
pequenos e portáteis como notebooks, porque o infravermelho possui
as vantagens da comunicação sem fio, mas sem a necessidade de uma
antena. Assim, um notebook que use infravermelho pode ter todo o
hardware de comunicação necessário embutido.

Redes de Computadores
42
Capítulo 2

2.3 – Usando a corrente elétrica para enviar bits

Como são dispositivos digitais, os computadores usam dígitos binários


(bits) para representar dados. Assim, transmitir dados através de uma
rede de um computador a outro significa enviar bits através do meio de
transmissão subjacente. Fisicamente, os sistemas de comunicação usam
corrente elétrica, ondas de rádio ou a luz para transferir informação.
Esta seção trata de como a corrente elétrica pode ser usada para transfe-
rir informações digitais em pequenas distâncias através de fios.

No sentido mais amplo do termo, uma comunicação é dita assíncrona se


um remetente e um receptor não necessitam de coordenação antes que os
dados possam ser transmitidos. Assim, ao usar comunicação assíncrona,
um remetente pode esperar por um tempo arbitrariamente longo entre as
transmissões e transmitir sempre que existir dados para isso. Em um sis-
tema assíncrono, o receptor deve estar pronto para aceitar dados sempre
que eles chegam. O assincronismo é especialmente útil para dispositivos
como teclados, em que os dados são gerados quando um ser humano toca
em uma tecla, e nenhum dado flui se o teclado está inativo.

De forma mais técnica, o hardware de comunicação é classificado como


assíncrono se o sinal elétrico que o transmissor enviar não contiver infor-
mações que o receptor possa usar para determinar onde os bits individu-
ais começam e terminam. Em vez disso, hardware receptor deve ser cons-
truido para aceitar e interpretar o sinal que o hardware remetente gera.

Os sistemas eletrônicos de comunicação mais simples usam uma cor-


rente elétrica pequena para codificar os dados. Para compreender como
a eletricidade pode codificar bits, imagine um fio que conecte dois dis-
positivos eletrônicos: poderia ser usada uma tensão negativa para repre-
sentar um bit 1 e tensão positiva para representar um 0. Por exemplo:
para transmitir um bit 1, o remetente coloca uma tensão positiva no
fio por um curto periodo de tempo e depois retorna o fio a zero volts.
O dispositivo receptor então detecta a tensão positiva e grava um zero
que chegou. Similarmente, para enviar um bit 1, o dispositivo remetente
coloca uma tensão negativa no fio por um curto período de tempo e
retorna o fio a zero volts.

Licenciatura em Informática
43
A Camada Física

Você deve estar se perguntando: como é possível que o receptor


e o emissor consigam se comunicar de forma correta usando ten-
sões elétricas para transmitir bits sem que exista uma confusão
em relação a quanto começa e termina um bit 0 ou 1?
Geralmente, a comunicação acontece com sucesso porque existem
padrões propostos por órgãos internacionais que regulamentam
vários detalhes respectivos à comunicação entre computadores,
como por exemplo o ITU(International Telecomunications Union)
e a EIA(Electronic Industries Association). O padrão RS-232, pro-
posto pela EIA, é o padrão mais popular que especifica os detalhes
da conexão física e os detalhes elétricos para a transmissão de ca-
racteres através de fios de cobre.

2.4 – Enviando sinais através de longas distâncias

Uma corrente elétrica não pode ser propagada a uma distância arbitrária
sobre fio de cobre porque a corrente se torna mais fraca quando viaja.
Por exemplo: embora conexões RS-232 funcionem bem em um único
ambiente, qualquer tentativa de usá-las em uma conexão com uma cida-
de remota resultará em correntes elétricas demasiadamente fracas para
que um receptor as detecte. Os engenheiros denominam o problema
de perda de sinal. Tal perda ocorre porque a resistência no fio faz com
que pequenas quantidades da energia elétrica sejam convertidas em ca-
lor. A perda de sinal é importante para sistemas de comunicação, pois
significa que mudanças simples na tensão elétrica, como as usadas pelo
RS-232, não bastarão para a comunicação de longa distância.

Os pesquisadores que estudam como transmitir sinais descobriram uma


propriedade interessante de sistemas de transmissão de longa distância:
um sinal oscilatório contínuo se propagará mais longe do que outros
sinais. Esta observação forma a base da maioria dos sistemas de comu-
nicação de longa distância. Em vez de transmitir uma corrente elétri-
ca que mude somente quando o valor de um bit muda, os sistemas de
comunicação de longa distância enviam um sinal oscilatório contínuo,
geralmente uma onda senoidal, chamada de portadora. Uma definição
de onda senoidal pode ser vista abaixo:

Redes de Computadores
44
Capítulo 2

Uma onda senoidal obedece a uma função seno ou cosseno e é


a forma de onda mais simples. Todas as outras formas de onda,
mesmo as mais complexas, podem ser decompostas em conjun-
tos de ondas senoidais. Por essa razão, as ondas senoidais pos-
suem dezenas de aplicações: podem ser usadas na síntese musi-
cal como elemento básico da síntese aditiva e, em eletrônica, é
a forma de onda utilizada como onda portadora na maior parte
das modulações de rádio.

O sinal da portadora geralmente é chamado de sinal analógico. Na figu-


ra 2.7, vemos um exemplo de sinal analógico. Contrariamente ao sinal
analógico, o sinal digital usado em computadores tem oscilações muito
bruscas, advindas dos dois valores básicos que o sinal representa: 0 ou 1.
Na figura 2.8, um exemplo de sinal digital.

Figura 2.7 –Sinal analógico representado por ondas senoidais

Voltagem

0 Tempo

1 0 1 0 0 1

Figura 2.8 – Sinal digital usado para representar bits

Licenciatura em Informática
45
A Camada Física

Para transmitir dados, um transmissor modifica ligeiramente a porta-


dora. Em conjunto, estas modificações são chamadas de modulação.
O uso de uma onda portadora modulada para a comunicação de longa
distância não se originou com as redes de computadores – foi projetada
para o uso do telefone, rádio e televisão. Por exemplo, uma estação
de rádio usa uma onda portadora contínua que oscila em uma dada
frequência. Antes de transmitir o sinal, a estação de rádio usa um sinal
de áudio para modular a onda portadora. Quando um receptor de rádio
na faixa do transmissor é ajustado à frequência de onda da portadora,
os circuitos eletrônicos no receptor monitoram-na, detectam a modula-
ção e usam-na para reconstruir o sinal de áudio original. Note que um
receptor de rádio é projetado para extrair e tocar somente a modulação
– o receptor descarta a portadora depois que o som foi extraído.

Seja a transmissão sobre fios, fibras ópticas, microondas ou frequência


de rádio, a maioria das redes de computadores de longa distância usa
o mesmo esquema subjacente de uma estação de rádio. O transmissor
gera um sinal de portadora oscilatório contínuo, que modula de acordo
com os dados que estão sendo enviados. Como um receptor de rádio, o
receptor em uma comunicação de longa distância deve ser configurado
para reconhecer a portadora que o remetente usa. O receptor monitora
a portadora entrante, detecta a modulação, reconstrói os dados origi-
nais e descarta a portadora.

Desta forma, um circuito de hardware que aceite uma sequência de bits


de dados e aplique modulação a uma onda portadora de acordo com os
bits é chamado de modulador. Um circuito de hardware que aceite uma
onda modulada da portadora e recrie a sequência de bits dos dados que
foi usada para modular a portadora é chamado de demodulador. Assim,
a transmissão de dados através de uma longa distância requer um mo-
dulador em uma extremidade da linha de transmissão e um demodula-
dor na outra.

Na prática, a maioria dos sistemas de rede são full-duplex (isto é, permi-


tem que os dados fluam em ambas as direções). Para suportar tal comu-
nicação, cada posição necessita de um modulador, usado para transmi-
tir dados, e de um modulador, usado para receber dados. Para manter a
custos baixos e tornar o par de dispositivos fácil de instalar e operar, os
fabricantes combinam os circuitos em um único dispositivo chamado
modem (de modulador e demodulador). Um exemplo de modem sen-
do usado em computadores pode ser visto na figura 2.9 a seguir.

Redes de Computadores
46
Capítulo 2

Modem

Linha Telefônica

Modem

Figura 2.9 – Uso de modem para comunicação entre computadores

Desta forma, podemos derivar uma definição para o modem:

Um Modem (derivado de modulador + demodulador) é um


equipamento eletrônico que tem como funções, a modulação
(através da qual os sinais digitais fornecidos pelo terminal são
modificados de modo a poderem ser transmitidos pelo meio
que se pretende - a transmissão) e a desmodulação (através da
qual de recuperam os sinais digitais originalmente construídos).
Quando o sinal digital é modificado para ser transmitido por
uma linha telefônica, ele é convertido em um sinal analógico
representado por ondas senoidais.

O modem pode ser usado em vários meios, como na transmissão RF,


fibras de vidro e conexões telefônicas convencionais. Por exemplo: um
modem de frequência de rádio (RF) pode ser usado para enviar dados
usando um sinal de frequência de rádio, ou um modem óptico pode ser
usado para enviar dados através de um par de fibras de vidro usando luz.
O modem RF tornou-se especialmente atrativo por causa do crescente
interesse na ligação em redes sem-fio. Um pequeno modem RF conec-
tado a um notebook, por exemplo, possibilita que o computador seja
movido por um edifício sem perder a conectividade de rede, da mesma
forma que um telefone portátil pode ser movido. Um modem RF mais
poderoso possibilita estabelecer um link de comunicação sem fio sobre
distâncias mais longas (por exemplo, quilômetros).

Outra aplicação interessante de modem envolve o sistema de discagem


de telefone. Os modens discados são conectados a uma linha telefônica
e possuem circuitos que imitam um telefone, podendo simular o levan-
tamento do aparelho, a discagem e o processo de desligar. E, como o
sistema telefônico foi projetado para carregar som, um modem discado
usa uma portadora em um tom que pode ser ouvido(este som é o som

Licenciatura em Informática
47
A Camada Física

ouvido quando alguém acidentalmente levanta o fone do gancho en-


quanto um modem está usando a linha telefônica). Desta forma, um
modem discado deve conter circuitos para enviar ou receber áudio so-
bre a linha telefônica. Além disso, embora enviem todos os dados por
um único canal de voz, um par de modens discados oferece comunica-
ção full-duplex. Isto é, uma conexão telefônica entre dois modens disca-
dos geralmente permite que os dados fluam em ambas as direções. Para
enviar dados, um modem emite uma onda portadora contínua, que ele
modula de acordo com os valores dos bits sendo transferidos. Para re-
ceber dados, um modem detecta a modulação na portadora recebida e
usa-a para recriar os bits de dados.

Para se estabelecer uma conexão com a Internet usando uma conexão


discada, é necessário que o modem faça a discagem para um núme-
ro de telefone de um provedor de acesso à Internet (como UOL, por
exemplo) que recebe o pedido em um modem especial, ligados aos ser-
vidores do provedor de acesso. É neste instante que ocorre aquela série
de ruídos, chamada de handshaking (algo como “aperto de mãos”).
Durante o handshaking, uma série de “acordos” são estabelecidos:
os dois modens (o do seu computador e o do provedor) determinam
qual será a velocidade de transmissão de dados, qual a quantidade de
bits por pacote, quantos bits serão usados para representar o início e
fim de cada pacote, se um sistema de detecção de erros será usado,
entre outras parâmetros necessários. Caso essas questões não sejam
tratadas, a conexão pode ficar seriamente comprometida, já que um
modem pode enviar dados mais rapidamente que o outro, a definição
acerca dos pacotes de dados podem ter diferenças (e estas necessitam
serem iguais), além de outros problemas.

Uma vez estabelecida a conexão, o computador passa a ter acesso ao


conteúdo da Internet através do provedor, que o conecta usando a co-
nexão de alta velocidade que este provedor tem com a Internet. Entre-
tanto, a conexão do modem com o provedor geralmente é limitada,
pois os modems de linha discada comum funcionam em uma velo-
cidade de, no máximo, 56 Kbps ,ou seja, 56 kilobits por segundo, ou
56000 bits por segundo. Só como um comparativo, as conexões banda
larga mais rápidas atualmente já oferecem velocidades em torno de
vários megabits por segundo.

Redes de Computadores
48
Capítulo 2

Atente para o uso do bit como unidade de transferência de dados


em redes de computadores, diferentemente do byte, usado como
unidade de armazenamento de dados no computador. Neste caso
também, 1 Kb não são 1024 bits, mas sim 1000 bits. Isto se deve ao
fato de, em redes de computadores, a transmissão de dados sem-
pre é feita um bit individual por vez. Os bytes são usados quan-
do falamos em armazenamento de dados, porque o computador
sempre trata o byte como unidade indivisível de informação, dife-
rentemente das redes de computadores.

Antes da popularização da chamada Internet Banda-Larga (Velox,


3G, etc..), a conexão à Internet mais popular era a chamada cone-
xão discada, que usavam modens discados para efetuar a troca de
dados. Estes modems geralmente vinham embutidos dentro da
placa-mãe do computador, sob o nome de placa de fax-modem, e
até hoje podem ser encontrados em computadores de mesa. Ape-
sar da baixa velocidade obtida (no máximo 56 Kbps), esta for-
ma de acesso era extremamente popular pois não necessitava de
aquisição de equipamentos adicionais (pois funcionavam com os
modens embutidos e uma linha telefônica comum). Além disso,
vários provedores de acesso eram gratuitos (como IG, Oi, den-
tre outros, que não ofereciam nenhuma garantia de conexão, que
se desconectavam constantemente e eram impossíveis de serem
acessados aos finais de semana), além da tarifa telefônica ser re-
duzida das 00:00 às 06:00 horas. Desta forma, em grandes cidades,
após a meia-noite, ouvia-se uma sinfonia de modens se conec-
tando a Internet em sequência, para aproveitar a tarifa telefônica
reduzida. Foram velhos e bons tempos!

Licenciatura em Informática
49
A Camada Física

No site http://www.netbook.cs.purdue.edu/, existe uma


ótima animação que ajuda a entender como um sinal analógico,
formado por ondas senoidais é convertido por um modem em um
sinal digital, que possa ser usado em um computador.
Para acessá-lo, clique em Sample Animations, no menu do lado
esquerdo, e, quando for aberto o menu de animações, clique na
primeira, Converting Analog Signals to Digital Signals. Você pode
usar os botões abaixo da animação para repeti-la ou pará-la, por
exemplo. Nesta animação é possível ver um sinal analógico sendo
recebido, várias amostras serem retiradas dele, o descarte da onda
portadora e a conversão em bits de acordo com as características
das ondas senoidais que representam o sinal.
Acesse também o link da animação “Enviando bits através da
corrente elétrica” no ambiente e siga as instruções para abrir
esta animação.

Redes de Computadores
50
Capítulo 2

Realize as atividades abaixo e envie-as de acordo com o enunciado


da Tarefa 4 do ambiente:
1 – Qual a função da camada física?
2 – Quais são as formas básicas de transmissão em meios de
transmissão?
3 – Por que fios de cobre ainda continuam sendo a forma mais
popular de meio para transmissão de dados? Quais são os dois
principais tipos de cabo criados a partir de fios de cobre?
4 - Qual a diferença entre meios guiados e não-guiados? Cite
exemplos dos dois casos.
5 - Como é possível transmitir bits usando a corrente elétrica?
6 - Qual é a função de um modem para a transmissão de dados?
7 – Faça uma pesquisa sobre sua forma de conexão à Internet em
casa (caso não possua acesso em casa, faça sobre a do seu trabalho
ou mesmo do pólo onde você estuda) e faça um pequeno texto
que deve obrigatoriamente conter os seguintes tópicos:
- o meio de transmissão usado para os dados serem transportados
do provedor de acesso até o seu computador;
- qual o provedor de acesso usado;
- além dos meios de transmissão, quais outros equipamentos são
usados para efetuar a conexão;
- qual a velocidade da conexão.
8 – Acesse dois sites diferentes que meçam velocidade de co-
nexão com a Internet(como por exemplo em www.rjnet.com.
br/1velocimetro.php,www.abeltronica.com/velocimetro ou
http://www.fithost.com.br/velocimetro/iniciarmedidor.php ) e de-
pois faça uma cópia da tela de ambos usando a combinação de
teclas Alt + Print Scrn.
Após isto cole as duas telas no arquivo que será enviado com
o ambiente e faça uma breve comparação. A velocidade variou
muito em relação à informação fornecida pelo provedor?

Licenciatura em Informática
A camada de Enlace

Prezado aluno,
você teve contato, no capítulo passado, com a camada mais baixa
do modelo, ou seja, a camada que trata dos conceitos mais básicos
da transmissão de dados, ou seja, como um bit será fisicamente co-
dificado para ser transportado através de um meio de transmissão.
Entretanto, mesmo que esta transmissão bit a bit aconteça de forma
eficiente, isso não é o bastante para explicar como aplicações tão di-
ferentes e complexas como as que se comunicam na Internet podem
funcionar corretamente.
Neste capítulo, será dada mais uma peça deste quebra-cabeça que, no
final, fará você entender como a comunicação citada no parágrafo
acima é possível. Você saberá como, usando a transmissão de bits da
camada anterior, a camada de enlace consegue prover uma entrega
mais confiável destes bits, e como eles podem ser entregues a uma
máquina específica dentro de uma rede local de computadores.
Ao final do capítulo, você deverá responder ao questionário dis-
ponível no ambiente e fazer as atividades propostas ao final do
capítulo.
Continue atento e interessado! Bons estudos!

3.1 A função da camada de enlace

Um protocolo da camada de enlace é usado para transportar um con-


junto de bits através de um enlace individual. Este enlace pode ser um
cabo que conecta duas máquinas ou mesmo uma rede complexa com
vários dispositivos. O protocolo da camada de enlace define o formato
dos conjuntos de bits trocados entre os computadores nas duas extre-
midades dos enlaces e as ações que devem ser realizadas para enviá-los.
Desta forma, a camada de enlace diferentemente da camada física que
apenas envia bits individuais através do meio de transmissão, preocupa-
se em agrupar estes bits em conjuntos, chamados de quadros. A função
principal desta técnica é facilitar a verificação dos bits que são recebidos
pelo receptor através de checagem de erros.
52
Capítulo 3

Ou seja, apesar da camada física possuir várias especificações para ga-


rantir que um bit 0 permaneça como 0 e um bit 1 permaneça como 1
quando da sua chegada, na prática, essa camada não possui nenhum
mecanismo para checar se um ou mais bits foram trocados durante a
transmissão, e esses erros podem acontecer, frutos de distorções causa-
das por alterações térmicas ou eletromagnéticas. Desta forma, podemos
derivar uma definição para quadro:

Um quadro é um agrupamento de bits que representa parte de


uma mensagem transmitida, ao qual são adicionados códigos es-
peciais para controle de erros, endereçamento e outras funções.

Desta forma, podemos citar como serviços da camada de enlace:

- enquadramento de dados: quase todos os protocolos da camada de


enlace dividem a mensagem total, sendo transmitida em quadros da ca-
mada de enlace antes de transmití-los. O tamanho exato do quadro em
bytes dependerá do protocolo usado, mas, além dos dados da mensa-
gem, também são inseridos códigos especiais, citados na definição de
quadro anteriormente estudada, que, em conjunto, são chamados de ca-
beçalho. Todo protocolo de toda camada de rede possui seus próprios
campos de cabeçalho, que são informações vitais para que a informação
seja transmitida corretamente de um lado ao outro da rede.

- detecção de erros: um computador receptor pode decidir incorreta-


mente que um bit de um quadro é 0 quando na verdade foi transmitido
como 1 e vice-versa. Esses erros de bits são introduzidos pela atenuação
do sinal e ruído eletromagnético. Como não há a necessidade de repas-
sar um quadro com erro, muitos protocolos da camada de enlace ofere-
cem um mecanismo para detectar a presença de um ou mais erros. Isto
é feito obrigando o emissor a inserir bits de detecção de erros no quadro
e obrigando o nó receptor a realizar uma verificação de erros.

- acesso ao enlace: um protocolo de controle de acesso ao meio (MAC


– Medium Access Control) especifica as regras segundo as quais um qua-
dro é transmitido pelo enlace. Este assunto terá uma seção específica
mais à frente no material.

- correção de erros: a correção de erros é semelhante à detecção de


erros, exceto que um receptor não somente detecta se foram inseridos
erros no quadro, mas também detecta onde no quadro os erros ocorre-
ram e, então, corrige-os.
Licenciatura em Informática
53
A Camada de Enlace

- Half-duplex e full-duplex: com a transmissão full-duplex, os compu-


tadores em ambas as extremidades de um enlace podem transmitir pa-
cotes ao mesmo tempo; com transmissão half-duplex. um computador
não pode transmitir e receber pacotes ao mesmo tempo. A camada de
enlace suporta ambos os tipos de transmissão.

3.2 Detecção e correção de erros

Em toda a transmissão de informação existe o risco de erros sob o efei-


to de perturbações aleatórias ou ruído (interferências na transmissão).
De um modo geral, os erros na transmissão podem acontecer por erros
nos bits inseridos nos dados, perdas de quadros inteiros ou falhas nas
conexões de rede.

Os erros de bits são relativamente raros, existindo técnicas para des-


cartá-los e mesmo corrigi-los. Se o erro for muito grave, o quadro será
descartado e terá que ser retransmitido. Várias são as técnicas possí-
veis para efetuar a checagem de erros em quadros da camada de enlace.
Aqui, descreveremos uma das formas mais simples de checagem, cha-
mada de verificação de paridade, como uma forma de esclarecer como
este processo pode ser efetuado.

Talvez a maneira mais simples de detectar erros seja utilizar um único


bit de paridade. Suponha que a informação a ser enviada tenha um nú-
mero n de bits. Em um esquema de paridade par, o remetente simples-
mente inclui um bit adicional e escolhe o valor deste bit de forma que
o valor total de 1s no número n + 1 de bits seja sempre par. A figura 3.1
mostra um exemplo de uso de verificação de paridade par com o bit de
paridade sendo inserido separado no quadro.

0101110101011101010101110101010 0

Número n de bits no quadro Bit de Paridade

Figura 3.1 – Exemplo de aplicação de verificação de paridade

Na figura 3.1, podemos ver que existem 18 bits 1 no quadro. Com isso,
o número de 1s já é par no quadro. Desta forma, inserimos um bit de
paridade 0 para que a paridade par do quadro seja mantida.

Neste método, a operação do receptor também é simples: ele só precisa


contar quantos 1 existem nos n+1 bits recebidos. Se obtiver um número

Redes de Computadores
54
Capítulo 3

par, ele saberá que, a princípio, não houve erro na transmissão, pois se
acontecesse a troca de um bit 1 para 0 ou 0 para 1, o número de 1s dei-
xaria de ser par. Entretanto, além de não ser possível detectar em que bit
aconteceu o erro (apenas é possível saber que o erro aconteceu), caso
dois bits tenham seus resultados trocados no quadro, a paridade pode-
ria erroneamente ser par, mesmo com bits corrompidos no quadro.

Desta forma, um esquema melhor foi pensado, chamado de paridade


bidimensional. Se os bits de um quadro então pudessem ser organiza-
dos em uma matriz de i linhas por j colunas, então poderia ser usado um
bit de paridade para cada linha e para cada coluna, obtendo, com isso,
um resultado muito mais exato. Na figura 3.2, é mostrado um exemplo
desta técnica sendo aplicada.

10101 1 10101 1

11110 0 10110 0

01110 1 01110 1

00101 0 00101 0

a) Nenhum erro no quadro b) Erro único no bit presente


na linha 2, coluna 2

Figura 3.2 – Exemplo de uso de paridade bidimensional em quadros

Na figura 3.2, é possível verificar a paridade de cada linha e de cada co-


luna somando os bits 1s de cada uma delas. Na parte (a) da figura, é pos-
sível ver um quadro usando paridade bidimensional sem erros; na parte
(b) é possível ver que existe um erro na paridade do quadro. Além disso,
é possível verificar onde este erro se encontra. Fazendo a contagem de
bits 1s, é possível ver que a paridade da segunda linha está errada, pois
existem 3 bits 1. E, também checando as paridades das colunas, é possí-
vel ver que a paridade da segunda coluna está errada também pois existe
apenas 1 bit 1 na mesma. Logo, é fácil perceber que o bit errado é o bit
que se encontra na segunda linha e segunda coluna, o qual, durante a
transmissão provavelmente foi modificado de 1 para 0.

Com este esquema, então, não só é possível encontrar o erro, como tam-
bém corrigí-lo, fazendo-o, assim, muito mais eficiente do que o ante-
riormente visto.

Licenciatura em Informática
55
A Camada de Enlace

Foi mostrado o esquema de verificação de paridade como um


exemplo de esquema de detecção e correção de erros em qua-
dros, entretanto, ele não é o único existente. Existem outros
métodos como a soma de verificação e a checagem de redun-
dância cíclica (CRC).

3.3 Comunicação por adaptadores

Para um dado enlace de comunicação, o protocolo da camada de enlace


é, muitas vezes, implementado em um adaptador. Um adaptador geral-
mente é uma placa, com uma interface de comunicação com o resto do
computador e uma interface de ligação com a rede, que geralmente é
uma entrada onde é conectado um cabo par trançado com um conector
chamado RJ-45 na ponta. Este conector apresenta semelhanças com o
conector usado em linhas telefônicas comuns, embora seja maior e te-
nha mais fios. Na figura 3.3, podemos ver um cabo par trançado com
um conector RJ-45 em ambas as extremidades.

Figura 3.3 – Capa par trançado com conector RJ-45

O adaptador representado pela placa é uma unidade semi-autônoma


que pode descartar um quadro com defeito sem comunicar outros
componentes do computador ou repassá-lo para o computador apenas
quando considerá-lo íntegro. Geralmente, uma placa de rede usa a téc-
nica de Acesso Direto à Memória (Direct Memory Access – DMA) para
transferir os dados que envia ou recebe da rede. Esta técnica, vista na
disciplina de Introdução à Informática, onera pouco o processador, de
forma que ela precisa do processador central do computador apenas na
fase de início da transferência.

Redes de Computadores
56
Capítulo 3

Os componentes principais de um adaptador de rede são a interface de


barramento e a interface de enlace. A interface do barramento é respon-
sável pela comunicação com o computador onde a placa está instalada:
a interface de enlace é onde está o protocolo da camada de enlace, e
que implementa todas as funções disponíveis na camada. É também na
placa de rede que geralmente reside o protocolo de acesso ao meio, que
identifica como será o acesso ao meio de transmissão por parte deste
adaptador. Na figura 3.4, temos um exemplo de placa de rede comu-
mente encontrada em computadores pessoais.

       Figura 3.4 – Placa de rede com entrada para conector RJ-45

Geralmente, temos duas formas padrão de acesso ao meio, que são os


enlaces ponto-a-ponto e os enlaces broadcast. No primeiro caso, existe
um único remetente de um lado da comunicação e um único receptor
do outro lado (mesmo que fisicamente não seja verdade, é assim que
computadores conectados por este tipo de protocolo se enxergam). Já
no segundo caso, existe o problema de acesso múltiplo no qual o proto-
colo MAC serve para coordenar as transmissões de quadros dos muitos
computadores que participam de uma mesma rede.

Veremos os dois exemplos nas seções que se seguem.

3.4 Protocolos de enlace de acesso múltiplo

Os enlaces de acesso múltiplo ou enlaces broadcast podem ter vários


computadores emissores e receptores, todos conectados ao mesmo ca-
nal de comunicação único e compartilhado. O termo broadcast é aqui
usado porque quando qualquer um dos nós transmite um quadro, o ca-
nal o propaga e todos os computadores recebem uma cópia do mesmo.

O problema central nos enlaces de acesso múltiplo é determinar quem


deve transmitir e quando, já que o canal é compartilhado entre todos os
Licenciatura em Informática
57
A Camada de Enlace

computadores. Como vários computadores podem transmitir ao mes-


mo tempo, estes poderão colidir dentro do canal e serão descartados.
Um protocolo de acesso múltiplo precisa coordenar o uso do canal de
forma a minizar a ocorrência de colisões.

Uma analogia que permite entender com maior clareza o problema se-
ria o de uma sala de aula onde vários alunos querem fazer perguntas ao
professor. O meio compartilhado, neste caso, é o próprio ar, por meio do
qual todos que quiserem podem falar, entretanto, não devem, pois caso
dois ou mais alunos falem ao mesmo tempo suas vozes irão se misturar e
o professor não será capaz de entender as perguntas. Desta forma, algum
meio de coordenar o meio compartilhado deve ser desenvolvido, no caso,
o simples fato do aluno levantar a mão antes de falar poderia ajudar.

Na próxima seção será visto um protocolo amplamente usado nas


redes locais atuais que trata do problema de acesso múltiplo, cha-
mado de Ethernet.

3.4.1 Ethernet

Ethernet é uma tecnologia de rede bem-conhecida e extensamente usa-


da que emprega topologia de barramento, vista no primeiro capítulo.
Como foi visto neste tipo de topologia, existe um canal único no qual to-
dos os computadores se acoplam e, ao enviar uma informação por meio
deste canal, esta chega a todos os computadores acoplados ao canal.

A ethernet foi inventada no centro de pesquisa da Corporação Xerox,


em Palo Alto, no início dos anos 70. Mais tarde, a Digital Equipment
Corporation (DEC), a Intel e a Xerox cooperaram para desenvolver um
padrão de produção informalmente chamado de DIX Ethernet, devido
às iniciais das três companhias. Em sua versão original, uma rede local
Ethernet consistia em um cabo coaxial único chamado de éther, ao qual
múltiplos computadores se conectavam.

O hardware ethernet original operava em uma largura de banda de 10


Megabits por segundo, uma versão posterior conhecida como Fast In-
ternet operava a 100 Mbps e a versão mais recente, conhecida como
Gigabit Ethernet, opera a 1000 Mbps ou 1 Gbps. Apesar da especificação
original da tecnologia usar cabo coaxial, hoje em dia, em sua forma mais
popular, a Ethernet trabalha com cabo par trançado, podendo também
usar fibra optica para comunicação entre computadores.

Como a ethernet usa uma topologia de barramento, vários computa-


dores devem compartilhar o acesso a um único, ou seja, um remetente

Redes de Computadores
58
Capítulo 3

transmite um sinal que se propaga em direção às extremidades do cabo,


atingindo todas as máquinas conectadas. Desta forma, enquanto está
transmitindo, o computador remetente tem uso exclusivo do cabo intei-
ro durante a transmissão de um dado quadro – os outros computadores
devem esperar. Depois de um computador terminar de transmitir um
quadro, o cabo compartilhado se torna disponível para outro computa-
dor usar. E como o computador pode saber se o canal está livre ou não
para transmitir dados? A Ethernet não usa nenhum tipo de dispositivo
central para controlar o uso do canal compartilhado. Todos os compu-
tadores acoplados àa uma Ethernet participam de um esquema de coor-
denação distribuído, que será visto na próxima subseção.

Não confunda o termo Ethernet com Internet. Ethernet é o pa-


drão de redes locais dominante hoje no mercado, ou seja é um
padrão para LANs. Internet é a rede global, ou seja, uma WAN
que interliga os computadores e que usa protocolos próprios, os
quais ainda serão estudados nos próximos capítulos.

3.4.1.1 CSMA/CD

O esquema para detectar se um computador pode ou não transmitir na


Ethernet usa atividade elétrica no cabo para determinar o estado. Quan-
do nenhum computador estiver enviando um quadro, o canal não con-
tém sinais elétricos. Durante a transmissão de um quadro, porém, um
remetente transmite sinais elétricos usados para codificar bits. Embora
os sinais sejam ligeiramente diferentes das ondas de portadora discuti-
das no capítulo passado, eles são informalmente chamados de portado-
ra. Deste modo, para verificar se o cabo está em uso, um computador
pode verificar se há uma portadora. Se não houver, o canal está livre e
ele pode transmitir um quadro; se houve, ele deve esperar que o reme-
tente termine antes de continuar. Tecnicamente, procurar por uma
onda portadora é chamado de sensor de portadora (carrier sense) e a
ideia de usar a presença de um sinal para determinar quando transmitir
é chamado de Acesso Múltiplo com Sensor de Portadora(Carrier Sense
Mutiple Access – CSMA). Como o CSMA permite que cada computador
determine se um cabo compartilhado já está em uso por outro compu-
tador, ele previne que um computador interrompa uma transmissão em
andamento. Porém, o CSMA não pode prevenir todos os conflitos pos-
síveis. Para entender o porquê, imagine o que acontece se dois compu-
tadores, em extremidades opostas de um cabo inativo, têm um quadro
pronto para enviar ao mesmo tempo; quando eles tentam detectar uma

Licenciatura em Informática
59
A Camada de Enlace

portadora, ambas as estações encontram o cabo inativo e começam a


enviar quadros simultaneamente. Quando os sinais transmitidos pelos
dois computadores alcançam o mesmo ponto do cabo, eles interferem
um no outro. Este é o problema já apresentado antes da colisão, exem-
plificado por dois alunos na sala de aula que começam a fazer perguntas
ao mesmo tempo para o professor: as vozes se misturam e fica impossí-
vel entender o que está sendo dito.

Para assegurar que nenhum outro computador transmita simultanea-


mente, o padrão Ethernet exige que estações remetentes monitorem si-
nais no cabo. Se o sinal no cabo difere do sinal que a estação está envian-
do, quer dizer que uma colisão ocorreu. Para garantir que uma colisão
tenha tempo de alcançar todas as estações antes de parar de transmitir,
o padrão Ethernet especifica tanto um comprimento máximo de cabo
quanto um tamanho mínimo de quadro e, por isso, a Ethernet é especí-
fica para redes locais, ou seja, de tamanho limitado.

Sempre que uma colisão é detectada, a estação remetente para imediata-


mente de transmitir. Tecnicamente, a monitoração de um cabo durante a
transmissão é conhecida como Detecção de Colisão (Collision Detection
– CD), por isso o mecanismo para Ethernet é conhecido como Acesso
Múltiplo com Sensor de Portadora e Detecção de Colisão (Carrier Sense
Multiple Access with Collision Detection - CSMA/CD).

O CSMA/CD faz mais que apenas detectar colisões, ele também se re-
cupera delas. Depois de acontecer uma colisão, um computador deve
esperar que o cabo se torne novamente inativo antes de transmitir um
quadro. Porém, se os computadores começarem a transmitir assim que
o canal se tornar inativo, outra colisão acontecerá. Para evitar colisões
múltiplas, a Ethernet exige que cada computador atrase após uma coli-
são e antes de tentar uma retransmissão. O padrão especifica um atraso
máximo chamado de d e força cada computador a escolher um atraso
aleatório menor que d. Na maioria dos casos, quando um computador
escolhe um atraso aleatoriamente, ele selecionará um valor que diferirá
de quaisquer outros valores escolhidos pelos demais computadores. O
computador que escolher o melhor atraso prosseguirá com o envio de
um quadro e a rede voltará à operação normal.

Por exemplo: se temos dois computadores se comunicando usando pa-


drão Ethernet e ocorre uma colisão, será definido um tempo máximo de
atraso, por exemplo, 10 microsegundos, e cada um dos dois computado-
res escolherá um atraso entre 0 e 10 microsegundos. Digamos que um
computador escolha o atraso de 2 microsegundos e o outro de 4. Então
não existe a possibilidade dos computadores voltarem a transmitir si-
multaneamente, pois cada um terá que esperar o seu atraso para trans-

Redes de Computadores
60
Capítulo 3

mitir. Desta forma, após dois microsegundos, o primeiro computador


verifica se o canal está livre e começa a transmitir, seguido pelos outro,
cada um ao seu tempo.

Para verificar se seu computador se conecta à rede utilizando o padrão


Ethernet, existe um teste fácil que você pode fazer: em sistemas Microsoft
Windows, vá no Menu Iniciar  Todos os Programas  Acessórios 
Prompt de Comando. Será aberto o Prompt de Comandos do Windows,
onde você deve digitar o comando ipconfig e pressionar a tecla Enter.

Feito isso, será mostrada a configuração de rede do seu computador, como


exemplificado na figura 3.5. Caso seu computador apresente mais de uma
configuração, atente para a configuração que possui os campos Endereço
IP, Máscara de sub-rede e Gateway Padrão preenchidos com valores.

Figura 3.5 – Exemplo de configuração de rede em sistemas Microsoft Windows

Podemos desconsiderar a configuração em si, que será foco do próximo


capítulo. Por enquanto, observe apenas se aparece no início da sua con-
figuração a linha “Adaptador Ethernet Conexão Local”, como está desta-
cado na figura 3.5. Em caso afirmativo, você está participando de uma
rede padrão Ethernet.

Até agora, muito se falou sobre como um computador deve transmitir


quadros usando o padrão Ethernet, mas nada foi dito sobre como um
computador receptor pode receber estes quadros usando este padrão.
Esta discussão será foco na próxima subseção.

3.4.1.2 - Endereçamento em redes ethernet

Fisicamente, qualquer sinal enviado através de uma rede Ethernet al-


cança todos os computadores que fazem parte da rede. Deste modo,
quando um quadro for transmitido através da rede, os sinais elétricos
Licenciatura em Informática
61
A Camada de Enlace

transportando os bits alcançam todos os computadores. Em um dado


computador, a placa de rede detecta o sinal elétrico e extrai uma cópia
do quadro. Entretanto, geralmente, a maior parte da comunicação acon-
tece porque um programa aplicativo em um computador envia dados
diretamente para um programa em outro computador, ou seja, não é
necessário que todos os computadores recebam os quadros que são des-
tinados a apenas um deles.

Esta comunicação direta pode ser feita através de um esquema de en-


dereçamento. Desta forma, a cada computador é designado um valor
numérico único chamado de endereço físico ou endereço de controle
de acesso ao meio (Media Access Control – MAC), o qual é sua denomi-
nação mais popular.

Desta forma, quando um remetente transmite um quadro através da


LAN, o remetente inclui o endereço MAC do receptor desejado. Em-
bora então todos os computadores continuem recebendo todos os qua-
dros, apenas o computador para o qual aquele quadro foi endereçado
vai efetivamente processá-lo. Esta informação é colocada no cabeçalho
do quadro, que inclui também o endereço do remetente. Assim, a placa
de rede é projetada para examinar os campos de endereços de quadros
que passam através da rede e para aceitar somente aqueles em que o
endereço de destino combina com o seu endereço.

Um endereço MAC geralmente tem 6 bytes de comprimento, que são


tipicamente expressos como 6 pares de números hexadecimais, separa-
dos um dos outros por dois pontos ou traços. Desta forma, o endereço
49:BD:D2:C7:56:2A é um exemplo de endereço MAC. Um fato impor-
tante sobre os endereços MAC é que cada endereço é único e perma-
nente, o que ocorre pois quando uma placa de rede é fabricada, um
endereço MAC é gravado na memória ROM da placa. Em teoria, não
existem duas placas de rede com o mesmo endereço MAC porque cada
fabricante de placa tem um número fixo de endereços disponíveis para
atribuir às suas placas o qual é diferente de qualquer outra faixa de en-
dereços usada por outro fabricante.

Para saber qual o endereço MAC do seu adaptador, pode-se usar o co-
mando getmac existente em sistemas Microsoft Windows. Para isto, de-
ve-se ir em Menu Iniciar  Todos os Programas  Acessórios  Prompt
de Comando. Será aberto o Prompt de Comandos do Windows, onde
você deve digitar o comando getmac e pressionar a tecla Enter. Na figura
3.6, temos um exemplo de saída típica do comando getmac, apresentan-
do o endereço MAC da placa de rede.

Redes de Computadores
62
Capítulo 3

Figura 3.6 – Exemplo de saída do comando getmac, mostrando o endereço MAC da


placa de rede do computador

Como foi descrito no início da seção, quando uma placa quer enviar um
quadro para outra placa de destino, a placa remetente insere no quadro
o endereço MAC do destino e envia o quadro para dentro da LAN. Se
a LAN for Ethernet, o quadro será recebido por todos os computadores
da rede. Em particular, cada placa que recebe o quadro verificará se o
endereço MAC de destino combina com seu próprio endereço MAC. Se
os endereços combinarem, a placa extrairá os dados contidos no quadro
e mandará para as camadas de rede acima. Se os endereços não combi-
narem, a placa descartará o quadro sem ter acesso aos seus dados.

Vimos, então, que, apesar de um quadro chegar a todos os computado-


res, ele é filtrado na placa de rede e é processado apenas pelo compu-
tador de destino do quadro. Entretanto, existem situações em que um
remetente efetivamente quer que todos os outros computadores rece-
bam e processem o quadro que ele está prestes a enviar. Neste caso, o
adaptador remetente insere um endereço de broadcast MAC no cam-
po do destinatário do quadro. Geralmente, para LANs Ethernet, o en-
dereço de broadcast é uma cadeia de 48 bits com valor 1 consecutivos
ou FF:FF:FF:FF:FF:FF em hexadecimal. Neste caso, quando um quadro
contendo um endereço de destino de broadcast é enviado, ele é recebido
por todos os computadores e também processado por todos eles.

Vimos, então, um esquema de endereçamento que funciona bem para redes


locais. Entretanto, na Internet existe um outro tipo de endereço que é usado,
chamado de endereço IP. Dados que chegam da Internet para um compu-
tador da rede local (como um site acessado, por exemplo) usam endereços
IP, mas na rede local é necessário usar o endereço MAC da máquina para se
chegar até ela. Como isto é feito é foco da próxima subseção.
Licenciatura em Informática
63
A Camada de Enlace

3.4.1.3 O protocolo ARP

Como visto na subseção anterior, é relativamente simples entregar um


quadro a um computador específico em uma LAN Ethernet usando o
esquema de endereçamento MAC. Entretanto, na Internet é usado um
outro tipo de endereço com outro formato, chamado de endereço IP.
Um endereço IP (que será foco do próximo capítulo) é um conjunto de
quatro números separados por pontos e que tem organização hierárqui-
ca, ou seja, por meio do endereço é possível dizer a rede na qual o com-
putador se encontra. Um exemplo de endereço IP seria 192.168.1.2.

Todos os computadores no mundo conectados à Internet possuem um


endereço IP configurado em sua placa de rede, o qual permite que eles
se comuniquem com outros computadores. Entretanto, a camada de
enlace não trabalha com endereços IP, e sim com endereços físicos ou
MAC. Desta forma, para que seja possível chegar a um computador
em uma LAN tendo como informação apenas o seu endereço IP, é ne-
cessário um mecanismo chamado de resolução de endereços. Desta
forma, podemos definir:

Resolução de endereços é o processo de buscar qual o endereço


físico ou MAC corresponde a um endereço IP de um dado adap-
tador de rede.

Para realizar a tarefa de resolver um endereço IP em um endereço MAC


da camada de enlace, existe um protocolo chamado de ARP (Address
Resolution Protocol – Protocolo de Resolução de Endereços). O ARP de-
fine dois tipos básicos de mensagem: uma requisição e uma resposta. O
processo de enviar e receber mensagens ARP é usado para uma com-
putador que precisa entregar dados a um outro computador na LAN
mas só tem seu endereço IP, descobrir seu endereço MAC. Desta for-
ma, então como este computador consegue realizar esta tarefa? Bom, é
importante lembrar que ele não sabe o endereço MAC da máquina de
destino, pois se já soubesse não seria necessário resolver o endereço,
para início de conversa. Então, ele lança mão do único recurso dispo-
nível para atingir a máquina que tem a informação desejada, ou seja,
ele envia a requisição usando o endereço de broadcast da LAN, ou seja,
FF:FF:FF:FF:FF:FF.

A mensagem ARP de requisição contém um endereço IP e solicita o en-


dereço MAC correspondente. Ou seja, seria o mesmo que gritar para to-
dos os computadores: “Olá, endereço IP 192.168.1.2! Qual seu endere-
Redes de Computadores
64
Capítulo 3

ço MAC?”. Desta forma, a mensagem chegará a todos os computadores,


mas só o computador com endereço IP chamado, o endereço 192.168.1.2,
vai efetivamente responder à requisição. A resposta conterá o endereço
IP enviado na requisição e o endereço físico correspondente, o equi-
valente a responder: “Olá! Eu sou 192.168.1.2. Meu endereço MAC é
00:11:22:33:44:55.” Vale dizer que embora a mensagem de requisição seja
enviada a todos via broadcast, a resposta é enviada diretamente para a
máquina que fez a requisição, pois o seu endereço MAC está contido no
quadro que foi enviado via broadcast anteriormente. Ou seja, a requisição
é enviada para todos os computadores, mas a resposta não.

Apesar do processo de resolução de endereços funcionar relativamen-


te bem, seria muito demorado se sempre que uma máquina precisasse
se comunicar com outra fosse necessário usar o ARP para resolver os
endereços IPs. Desta forma, sempre que uma resolução de endereços é
feita, a máquina que recebe a resposta a guarda em uma cache de ende-
reços, uma tabela na memória RAM que contém o endereço IP e o en-
dereço MAC de todos os computadores que enviaram esta informação
a este computador.

Como todo computador possui uma tabela ARP, você também pode
ver a sua, seguindo o caminho mostrado anteriormente até o Prompt
de Comando dos sistemas Microsoft Windows e digitando no mesmo o
comando arp –a. Este comando mostra a tabela ARP do seu computa-
dor com as entradas existentes até então. Na figura 3.7 é mostrado um
exemplo de tabela ARP.

Figura 3.7 – Exemplo de saída do arp

Licenciatura em Informática
65
A Camada de Enlace

Na figura, pode-se observar que existe o endereço IP e, na coluna se-


guinte, o endereço MAC correspondente ao endereço IP. O campo Tipo,
com o valor Dinâmico, refere-se ao fato daquela resolução de endereços
ter sido feita automaticamente pelo protocolo ARP. A outra opção seria
estático, que é o caso de você mesmo, como usuário, inserir uma entrada
na tabela ARP usando comandos.

3.4.1.4 – Hubs e comutadores

Foi citado que a Ethernet é uma rede local do tipo barramento. De fato
isto é verdade, pois o canal é compartilhado por todos os computadores
que fazem parte da rede local. Entretanto, fisicamente não existe hoje em
dia um único cabo interligando todas as máquinas umas às outras. Então,
como todas se comunicam? Ao invés de meio compartilhado, geralmente
todos os computadores são ligados a um dispositivo que é o centro da
rede. O dispositivo eletrônico básico usado é conhecido como hub.

Um hub (repetidor) é um dispositivo da camada física que atua


sobre bits individuais e que não processa quadros da camada de
enlace. O hub tem geralmente várias interfaces de rede e quando
recebe um bit 0 ou 1 através de uma de suas interfaces, ele apenas
recria o bit, reforça a sua energia e transmite o bit para todas as
suas interfaces.

Desta forma, nesta organização, cada computador tem uma placa de


rede onde se conecta um cabo par trançado com um conector RJ-45 em
uma das extremidades e o conector da outra extremidade se conecta ao
hub. Dizer que o hub é um dispositivo da camada física significa que
este dispositivo não trabalha com nenhum conceito da camada de enla-
ce como quadros, detecção de erros e nem usa o CSMA/CD. Ou seja, ele
repete um bit que está entrando em todas as interfaces de saída mesmo
que haja energia de sinal em uma destas interfaces. Em resumo, ele não
detecta colisão e não se preocupa se duas máquinas estão transmitin-
do ao mesmo tempo através dele. Como ele faz transmissão broadcast,
cada computador é reponsável por sondar o canal para determinar se ele
está ocioso ou não e transmitir.

Embora todos os hubs possam acomodar múltiplos computadores, eles


vêm em uma variedade de tamanhos. Um hub pequeno típico tem qua-

Redes de Computadores
66
Capítulo 3

tro ou cinco portas, cada uma aceitando uma conexão. Desta forma,
um hub é suficiente para conectar todos os computadores em grupos
pequenos. Na figura 3.8 podemos ver um exemplo típico de hub.

Figura 3.8 – Exemplo de hub com várias interfaces para conectores RJ-45

Em contraste com o hub, que, como foi dito, é um dispositivo da cama-


da física, os comutadores ou switches, agem sobre quadros Ethernet, e
com isso são dispositivos da camada de enlace. Desta forma, um switch
consegue analisar os quadros pelo endereço MAC de destino. Quando
um quadro chega à interface de um switch, este examina o endereço de
destino do quadro e tenta repassá-lo à interface que leva a este destino,
ou seja, ele faz filtragem de quadros. Desta forma:

Por filtragem de pacotes entende-se a capacidade de um comu-


tador determinar se um quadro deve ser repassado para alguma
interface ou se deve ser descartado. Isto é feito baseado no ende-
reço de destino do quadro que é comparado a uma tabela interna
do comutador chamada de tabela de comutação.

A tabela de comutação de um switch contém os endereços MAC dos com-


putadores ligados a ele, assim como a interface que está conectada direta-
mente a aquele computador com aquele endereço. Ou seja, o switch sabe
qual computador está ligado à qual interface dele. Desta forma, ele possui
a capacidade de enviar um quadro para o destino indicado em seu cabe-
çalho e não apenas repeti-lo para todas as interfaces, como faz o hub.

Desta forma, ao usar um hub, apenas dois computadores podem se co-


municar por vez para evitar colisões; já com o uso do switch, vários
Licenciatura em Informática
67
A Camada de Enlace

computadores podem se comunicar ao mesmo tempo sem medo de co-


lisões, pois o switch não repassa os quadros de um computador para
todos os outros. Na figura 3.9, temos um exemplo de switch típico. Ob-
serve que fisicamente ele se assemelha a um hub, a diferença entre os
dois está na funcionalidade.

Figura 3.9 – Exemplo de switch

Hoje em dia, praticamente toda rede local usa um hub ou switch


para interligar os computadores. Entretanto, apesar de mais caros,
os switchs têm sido cada vez mais usados, dada as vantagens de
sua utilização. Procure na sala onde está o seu computador no
polo ou no seu trabalho e veja se não encontra um switch interli-
gando os computadores.

Neste ponto do material, você pode ter ficado com uma dúvida:
afinal a Ethernet é uma rede de barramento ou estrela, já que to-
dos os computadores se conectam a um dispositivo central como
um hub? Na verdade, fisicamente falando, as redes locais hoje em
dia são redes de estrela, pois, como já foi dito, não existe mais um
cabo central ligando todos os computadores, já que sempre se usa
um hub ou um switch. Entretanto, do ponto de vista lógico, ou
seja, da tecnologia, a Ethernet é uma rede de barramento, pois,
independente de como esteja organizada fisicamente, a rede que
usa esta tecnologia simula um barramento único, já que todos os
computadores usam o mesmo canal compartilhado para se comu-
nicarem e cada placa de rede recebe uma cópia do quadro enviado
por um computador da rede. Desta forma, fisicamente a rede local
Ethernet usa topologia de estrela, mas logicamente ela usa topolo-
gia de barramento.

Redes de Computadores
68
Capítulo 3

3.5 Protocolos de enlace ponto-a-ponto

A maior parte da discussão até agora sobre a camada de enlace esteve


voltada para protocolos de acesso múltiplo dado seu vasto no uso das
redes atuais. Entretanto, existe uma outra classe de protocolos extrema-
nente usada atualmente, principalmente para acesso a provedores de In-
ternet, que são os enlaces ponto-a-ponto. Talvez o protocolo desta classe
mais usado atualmente seja o PPP (Point-to-point protocol – Protocolo
Ponto-a-ponto). Um enlace ponto-a-ponto consiste em um único reme-
tente em uma extremidade do enlace e um único receptor na outra ex-
tremidade. Ainda que este remetente e este receptor estejam separados
por distâncias geográficas muito grandes, para o protocolo PPP isto não
importa, a comunicação continua sendo de um único computador para
outro computador. Desta forma, o PPP não se preocupa com colisões ou
acesso a canais compartilhados como o Ethernet, pois ele considera que
existem apenas dois computadores participando da comunicação.

O PPP é, hoje em dia, o protocolo mais usado para o acesso discado à


Internet. Seja através de uma linha telefônica comum (por exemplo uma
conexão com um modem de 56Kbps), conexão banda larga ou mesmo
3G, o PPP é o protocolo geralmente usado para sua conexão com o ser-
vidor do seu provedor de acesso à Internet.

Para saber se você usa o protocolo PPP para se conectar à Internet, exis-
te um teste muito simples que pode ser feito. Basta apenas acessar o
Prompt de Comandos do Windows (como foi mostrado anteriormente)
e digitar o comando ipconfig. Na figura 3.10, podemos ver um exemplo
de saída do comando.

Figura 3.10 – Exemplo de saída do comando ipconfig mostrando enlace PPP

Na figura, podemos ver que a conexão com o provedor é feita através de


um modem 3G. Se a sua saída apresentar na configuração de IP a linha

Licenciatura em Informática
69
A Camada de Enlace

“Adaptador PPP ...” como circulado na figura, isto significa que sua co-
nexão com o provedor é via o PPP.

Você provavelmente deve se lembrar que foi dito no capítulo passado


que quando sua placa de fax-modem se conecta ao modem especial do
provedor de acesso, usando conexão discada básica, acontece um tipo
de “aperto de mãos”(hanshaking) entre os equipamentos, no qual são
feitos vários acordos em relação à velocidade de transmissão de bits,
tamanho do quadro, detecção de erros... Pois bem, esta negociação é fei-
ta, na verdade, pelo protocolo PPP. É ele que coordena todos os passos
para a transmissão de dados em uma conexão ponto-a-ponto. Dentre as
principais funcionalidades do PPP, podemos citar:

- enquadramento – o PPP deve ser capaz de organizar os bits a serem


transmitidos em quadros PPP da camada de enlace, de forma que o re-
ceptor possa distinguir o início e fim de cada quadro recebido.

- Transparência – o protocolo PPP não deve impor nenhuma restrição


sobre os dados que envia. Isto quer dizer que ele pode ser usado para
acessar vídeo, som, texto ou imagens.

- Múltiplos tipos de enlace – o PPP deve ser capaz de enviar quadros


sobre uma grande variedade de enlaces diferentes, incluindo enlaces
que são seriais (modens usando linhas telefônicas), paralelos, elétricos,
ópticos, ondas de rádio e até mesmo de celular (caso dos modens 3G).
De acordo com o tipo e velocidade do enlace, o protocolo deve negociar
como será a transmissão entre as partes.

- Detecção de erros – um receptor que usa o protocolo PPP deve ser


capaz de detectar erros nos quadros recebidos.

- Vida da conexão – o PPP deve estar habilitado a perceber se existe al-


gum erro no canal físico que usa para transmitir os dados e informar o
erro (por exemplo, um modem sem cabo da linha telefônica conectado
a ele).

Para assistir a animações que ajudem a entender o funcionamen-


to da Ethernet, acesse os links Ethernet – Animação 1, Ethernet
– Animação 2 e Ethernet – Animação 3. São animações que ex-
plicam detalhes do funcionamento do protocolo Ethernet, desde
transmissão de quadros, tratamento de colisões até o CSMA/CD.
Para entender e executar as animações, leia a descrição que acom-
panha cada uma delas.

Redes de Computadores
70
Capítulo 3

Realize as atividades abaixo e envie-as de acordo com o enunciado


da Tarefa 6 do ambiente:
1 - Qual é a função da camada de enlace e qual serviço da camada
física ela usa para executar esta função?
2 - Qual a diferença básica entre um hub e um comutador
(switch)?
3 - Como funciona o protocolo Ethernet? Qual a finalidade do
CSMA/CD para o correto funcionamento do protocolo?
4 - Qual a utilidade do protocolo ARP?
5 - Cite as principais funcionalidades do protocolo PPP.
6 - Quais são os principais componentes de uma interface de
rede?
7 - Descubra onde está o erro presente no
quadro ao lado, usando a técnica de paridade
bidimensional:
8- Siga os passos mostrados no material para executar o comando
ipconfig e depois cole a tela da saída do comando no arquivo desta
atividade (copie a tela de saída usando a combinação Alt + Print
Scrn. Você pode usar o seu computador pessoal, do seu trabalho
ou do seu pólo). Após isto, informe qual tipo de protocolo da ca-
mada de enlace você usa para ter acesso à rede.
9- Siga os passos mostrados no material para executar o comando
getmac e depois cole a tela da saída do comando no arquivo desta ati-
vidade (copie a tela de saída usando a combinação Alt + Print Scrn).
Após isto, informe qual o endereço MAC da sua placa de rede.
10 - Siga os passos mostrados no material para executar o coman-
do arp -a e depois cole a tela da saída do comando no arquivo
desta atividade.

Licenciatura em Informática
A camada de REDE

Prezado aluno,
você teve contato, no capítulo passado, com a camada de enlace, que
efetua de forma eficiente o envio de quadros de dados dentro de uma
rede local. Entretanto, sabemos que a Internet é uma rede global que
interliga todos os computadores do mundo e que mecanismos mais
elaborados têm que ser desenvolvidos para a entrega de dados entre
computadores separados por grandes distâncias geográficas.
Neste ponto, entra a camada de rede que usa um protocolo para
endereçamento próprio: o protocolo IP.
Baseado nisso, veremos neste capítulo como, usando o serviço da
camada anterior de entrega de dados através de um enlace, a cama-
da de rede consegue a façanha de permitir que cada computador no
mundo possa enviar e receber dados dentro da Internet. Mas não só
isso é necessário. Outros dois elementos de vital importância para o
processo também serão vistos no capítulo, os quais são o roteamento
de dados e o protocolo de controle da Internet.
Continue atento e interessado! Bons estudos!

4.1 A função da camada de rede

A camada de rede situa-se logo acima da camada de enlace; logo, ela


usufrui dos serviços prestados por esta camada para fornecer serviços
à camada acima dela, ou seja, a camada de transporte. Desta forma, a
camada de rede usa a capacidade da camada de enlace de movimentar
quadros entre computadores no mesmo enlace ou rede local, e o expan-
de, criando um serviço de entrega de pacotes entre pontos distintos em
toda a Internet. Veremos, no próximo capítulo, que este serviço é fun-
damental para que a camada de transporte possa realizar sua função.

Vale a pena definir aqui a diferença entre pacote e quadro. Como já


explicado, um quadro é um agrupamento de bits com o acréscimo de
alguns campos de dados, numa estrutura que chamamos de cabeçalho.
Cada protocolo da camada de enlace possui seu próprio cabeçalho com
seus próprios campos, como por exemplo: endereço do computador
72
Capítulo 4

que enviou o quadro e do computador de destino, código de detecção


de erros, dentre outros. Um pacote também é um agrupamento de bits
que também possui um cabeçalho com campos próprios criado pelo
protocolo que o gerou, o qual também define o tamanho do pacote em
bytes. A diferença básica para o quadro é que o pacote é gerado por um
protocolo da camada de rede.

O serviço da camada de rede é alicerçado em grande parte no protocolo


IP (Internet Protocol – Protocolo da Internet), que é usado para endere-
çar todos os computadores do mundo e, por conta disto, será o primei-
ro tópico a ser estudado no capítulo. Entretanto, antes que comecemos
nossa análise sobre o IP, vale a pena considerar os outros componentes
que integram a camada de rede. Além do protocolo IP, outro elemento
fundamental é o roteamento, que cria rotas, ou seja, caminhos entre os
computadores de origem e destino de uma comunicação. Sem este ele-
mento, seria muito difícil que um pacote oriundo de uma máquina con-
seguisse ser entregue à outra. O componente final da camada de rede é
um mecanismo para a comunicação de possíveis erros na entrega de pa-
cotes e para fornecer informações sobre o estado do envio dos pacotes
na rede, já que, dadas as gigantescas proporções da Internet, erros são
comuns no transporte de dados através dela. Este mecanismo será mos-
trado na forma de um protocolo, chamado de ICMP (Internet Control
Message Protocol – Protocolo de Mensagens de Controle da Internet).

Começaremos nossa abordagem pelo protocolo IP.

4. 2 O protocolo IP

O pacote criado pelo protocolo IP tem um cabeçalho com vários cam-


pos fixos, que são fundamentais para a correta realização do serviço que
ele efetua. Dentre os campos presentes no cabeçalho, podemos citar:

- número da versão: existem duas versões do protocolo IP. A mais usa-


da é a versão IPv4 (IP versão 4), à qual daremos maior ênfase aqui. A
segunda é a versão IPv6 (IP versão 6), que está na fase de implantação e
deve substituir a versão 4 dentro de alguns anos.

- Comprimento do cabeçalho: informa o tamanho, em bytes, do cabe-


çalho de cada pacote.

- Comprimento do pacote: é o comprimento total do pacote IP medido


em bytes.

Tempo de vida: o campo de tempo de vida (Time to Live – TTL) é in-

Licenciatura em Informática
73
A Camada de Rede

cluído para garantir que pacotes não fiquem circulando para sempre na
rede. Desta forma, este campo é decrementado (ou seja, recebe TTL =
TTL – 1) cada vez que um pacote passa por um roteador (um equipa-
mento especial da camada de rede que será visto em breve). Se o campo
chegar ao valor 0, então o pacote é excluído.

- Protocolo: este campo indica o tipo de protocolo da camada de trans-


porte específico ao qual este pacote deverá ser repassado na máquina
de destino. Os protocolos da camada de transporte serão estudados no
próximo capítulo.

- Endereços IP de fonte e de destino: quando um computador cria um


pacote, ele insere seu endereço IP no campo de endereço da fonte e in-
sere o endereço do destino final no campo de endereço do destinatário,
para que ele possa ser entregue ao computador de destino.

- Dados: é o campo onde está a carga útil, ou seja, os dados da comu-


nicação entre origem e destino. Pode ser de vários tipos, dependendo
do tipo de comunicação, como, por exemplo, texto, vídeo, imagens ou
sons.

Dentre os campos mostrados, foi dito que existem os campos de origem


e de destino, os quais são usados para informar qual o computador en-
viou o pacote e qual deve receber. Entretanto, ainda não foi dito como
estes endereços são expressos. Na próxima subseção, veremos como
funciona o endereçamento IP.

4.2.1 - Endereçamento IP

Antes de discutirmos propriamente o endereçamento IP, vamos enten-


der como endereços IP são atribuídos a computadores. Um computador
geralmente tem uma única forma de ligação ou enlace com a rede, como
um cabo, por exemplo. Quando o IP do hospedeiro quer enviar um pa-
cote, ele o faz por meio deste enlace. O elemento físico que conecta o
computador ao enlace físico da rede é chamado de interface, e pode ser
uma placa de rede, de fax-modem, um modem 3G, uma placa de rede
sem fio, dentre outras. Para cada interface ligada z um enlace de rede,
temos um endereço IP diferente. Desta forma, o endereço IP é ligado a
uma interface específica e podemos ter computadores com mais de um
endereço IP ao mesmo tempo.

Cada endereço IP tem comprimento de 32 bits (o que equivale a 4 bytes).


Desta forma, usando a mesma fórmula vista na disciplina de Introdução
à Informática para calcular o número de posições de memórias possí-
veis baseado no número de bits do endereço, podemos deduzir a quanti-

Redes de Computadores
74
Capítulo 4

dade de endereços IP diferentes baseado no número de bits usados para


o endereço. Desta forma:

N = 2b, onde b=32, logo = N = 2³² = 4.294.967.296 endereços.

Ou seja, existem mais de 4 bilhões de endereços IP disponíveis. Estes


endereços, apesar de serem conjuntos de bits, são geralmente represen-
tados como conjuntos de números decimais separados por pontos. Des-
ta forma, cada byte dos quatro que formam o endereço, é representado
na sua forma decimal e separado dos outros bytes do endereço por um
ponto. Assim, em cada parte do endereço, o valor máximo possível é
255, caso no qual todos os bits de um byte têm o valor 1.

Por exemplo: o endereço 192.168.0.1 é um exemplo de endereço IP. O


192 é um número decimal equivalente aos primeiros 8 bits do endereço,
o decimal 168 equivale ao segundo cojunto de 8 bits, e assim por diante.
Desta forma, o endereço 192.168.0.1 corresponde ao número binário:

11000000 10101000 00000000 00000001

Cada interface em cada computador tem um endereço IP, que ela usa
para se comunicar com outras máquinas ao redor do mundo. Desta for-
ma, estes endereços não podem ser escolhidos aleatoriamente. Assim,
uma parte do endereço IP de uma interface será sempre determinado
pela rede à qual ela está conectada.

Deste modo, todo endereço IP tem uma parte de seus bits representan-
do a rede da qual faz parte e uma parte única para representar a inter-
face de um computador específico. A quantidade de bits que será usada
para representar a rede e a quantidade que será usada para representar
a interface é definida por um outro conjunto de números denominado
máscara de sub-rede. Desta forma, podemos definir:

A máscara de sub-rede é formada por quatro bytes, com uma


sequência contínua de números 1, seguida de uma sequência de
números 0. A porção de bits que são 1, identifica quais bits são uti-
lizados no endereço para identificar a rede; a porção de bits como
0, identifica que bits do endereço vão ser usados para endereçar
um computador em particular.

Licenciatura em Informática
75
A Camada de Rede

Desta forma, 255.255.255.0 é um exemplo de uma máscara de sub-rede.


Convertendo para binário, teríamos:

11111111 11111111 11111111 00000000

Ou seja, neste caso, os primeiros três bytes representam a parte do en-


dereço que será usada para representar a rede, sendo que o último byte
será usado para diferenciar os computadores da rede.

Assim, em uma rede que usa uma máscara de 255.255.255.0, os compu-


tadores com IPs 192.168.0.1 e 192.168.0.2 fazem parte da mesma rede,
pois apenas seu último byte tem endereço diferente como manda a sua
máscara de sub-rede. Por outro lado, de acordo com a mesma máscara, os
endereços 192.168.1.1 e 192.168.0.2 fazem parte de redes diferentes, pois
os três bytes usados para identificar a rede neste caso não são diferentes.

Desta forma, podemos perceber que, para participar de uma rede, um


computador precisa de pelo menos dois parâmetros, que são seu ende-
reço IP e a máscara de sub-rede da rede na qual está inserido. Na figura
4.1, podemos ver um exemplo de configuração de IP em uma máquina
Windows, obtido através do comando ipconfig.

Acabamos de apresentar uma máscara de sub-rede 255.255.255.0, na


qual as três primeiras representam a rede e a última parte representa o
computador. Entretanto, esta não é a única máscara existente, e másca-
ras diferentes representam redes com números de computadores dife-
rentes. Estas máscaras são agrupadas em classes de endereços, que serão
o foco da próxima subseção.

Figura 4.1 – Exemplo de saída do comando ipconfig mostrando o IP e máscara de sub-rede


Redes de Computadores
76
Capítulo 4

4.2.2 – Classes de endereços

Vimos, na subseção anterior, que a máscara de sub-rede é utilizada para


determinar qual parte do endereço IP representa o número da rede e
qual parte representa o número da máquina dentro da rede. A máscara
de sub-rede também foi utilizada na definição original das classes de
endereço IP. Em cada classe existe um determinado número de redes
possíveis, e, em cada rede, um número de máquinas.

Foram definidas 5 classes de endereços, identificadas por A, B, C, D e E.


Abaixo, segue uma descrição de cada uma delas.

4.2.2.1 - Classe A

Esta classe foi definida como contendo o primeiro bit (dos 32 bits que
formam um número IP) do número IP como sendo igual a zero. Com
isso, o primeiro número IP somente poderá variar de 1 até 126 (na prá-
tica até 127, mas o 127 é um número IP reservado, conforme detalhare-
mos mais adiante). Por padrão, para a Classe A, foi definida a seguinte
máscara de subrede: 255.0.0.0.

Com esta máscara de sub-rede, observe que temos 8 bits para o endereço
da rede e 24 bits para o endereço da máquina dentro da rede. Com base
no número de bits para a rede e para as máquinas, podemos determinar
quantas redes Classe A podem existir e qual o número máximo de má-
quinas por rede. Existe uma fórmula para saber quantos computadores
fazem parte de uma rede:

2n- 2 em que n representa o número de bits utilizados para a rede ou


para a identificação de um computador dentro da rede. Desta forma:

- número de redes classe A: O número de bits para a rede: 7. Como o


primeiro bit sempre é zero, este não varia. Por isso sobram 7 bits (8-1)
para formar diferentes redes. Com isso, aplicando a fórmula:

27- 2 => 128-2 => 126 redes Classe A

Já para o cálculo de quantos computadores fazem parte de uma rede


classe A, usamos o número de bits da porção do computador na más-
cara para identificar uma máquina individual dentro de uma rede deste
tipo, no caso, 24 bits. Desta forma, usando a fórmula:

224- 2 => 16777216-2 => 16.777.214 máquinas em cada rede classe A.

Licenciatura em Informática
77
A Camada de Rede

Assim, podemos deduzir que, em uma rede classe A, temos apenas um pe-
queno número de redes disponíveis, porém um grande número de má-
quinas em cada rede; logo, esta classe é adequada para abrigar WANs.

4.2.2.2. – Classe B

Esta classe foi definida com tendo os dois primeiros bits do número
IP como sendo sempre iguais a 1 e 0. Com isso, o primeiro número do
endereço IP somente poderá variar de 128 até 191. Por padrão, para a
Classe B, foi definida a seguinte máscara de sub-rede: 255.255.0.0.

Com esta máscara de sub-rede, observe que temos 16 bits para o endereço
da rede e 16 bits para o endereço da máquina dentro da rede. Com base
no número de bits para a rede e para as máquinas, podemos determinar
quantas redes Classe B podem existir e qual o número máximo de máqui-
nas por rede. Desta forma, usando a fórmula da subseção anterior:

- Número de redes Classe B: Número de bits para a rede: 14. Como o


primeiro e o segundo bit são sempre 10, fixos, não variam, sobram 14
bits (16-2) para formar diferentes redes:

214-2 => 16384-2 => 16.382 redes Classe B

- Número de máquinas (hosts) em uma rede Classe B: Número de bits


para identificar os computadores da rede: 16.

Desta forma: 216-2 => 65536-2 => 65.534 máquinas em cada rede classe B.

Assim, temos um número razoável de redes Classe B, com um bom


número de máquinas em cada rede. Esta classe então é adequada
para redes MANs ou WANs com um número de computadores na
casa dos milhares.

4.2.2.3 – Classe C

Esta classe foi definida com tendo os três primeiros bits do número IP
como sendo sempre iguais a 1, 1 e 0. Com isso, o primeiro número do
endereço IP somente poderá variar de 192 até 223. Por padrão, para a
Classe C, foi definida a seguinte máscara de subrede: 255.255.255.0.

Com esta máscara de sub-rede, observe que temos 24 bits para o ende-
reço da rede e apenas 8 bits para o endereço da máquina dentro da rede.
Com base no número de bits para a rede e para as máquinas, podemos
determinar quantas redes Classe C podem existir e qual o número má-
ximo de máquinas por rede.

Redes de Computadores
78
Capítulo 4

- Número de redes Classe C: Número de bits para a rede: 21. Como o


primeiro, o segundo e o terceiro bit são sempre 110, ou seja: fixos, não
variam, sobram 21 bits (24-3) para formar diferentes redes. Com isso:

221-2 => 2097152-2 => 2.097.150 redes Classe C.

- Número de computadores em uma rede Classe C:

Número de bits para identificar a máquina: 8

28-2 => 256-2 => 254 máquinas em cada rede classe C.

Observe que na Classe C temos um grande número de redes disponí-


veis, com, no máximo, 254 máquinas em cada rede. É o ideal para em-
presas de pequeno porte, ou seja, que possuem uma LAN.

4.2.2.3 - Classes e endereços especiais

A classe D foi definida com tendo os quatro primeiros bits do número


IP como sendo sempre iguais a 1, 1, 1 e 0. A classe D é uma classe espe-
cial, reservada para os chamados endereços de Multicast. O multicast
conforme comentado no primeiro capítulo, é uma forma de enviar pa-
cotes de uma máquina para um grupo de máquinas selecionadas.

Outra classe especial é a classe E, que foi definida com tendo os quatro
primeiros bits do número IP como sendo sempre iguais a 1, 1, 1 e 1. A
classe E é uma classe especial e está reservada para uso futuro. É possível
ver um resumo das classes com seus bits iniciais na figura 4.2.

Primeiros Número Número Máscara


Classe
Bits de Redes de Hosts Padrão

A 0 126 16.777.214 255.0.0.0

B 10 16.382 65.534 255.255.0.0

C 110 2.097.150 254 255.255.255.0

D 1110 Utilizado para tráfego Multicast

E 1111 Reservado para uso futuro

Figura 4.2 – Classes de endereços IP

Licenciatura em Informática
79
A Camada de Rede

A esta altura, você deve estar achando estranho o porquê de na fór-


mula para calcular quantos endereços diferentes são possíveis em uma
rede de cada classe sempre a fórmula contém 2n- 2. Por que existe a
necessidade de se subtrair dois endereços do total de endereços possí-
veis? Isto ocorre porque em toda a rede, dois endereços são reservados
para usos especiais e nunca podem ser usados para endereçar nenhum
computador na rede. Um destes endereços é o que representa a rede,
o qual geralmente é representado por um IP em que a porção referente
ao endereçamento de computadores é sempre composta por apenas
bits 0. Por exemplo: os endereços 192.168.1.1 e 192.168.1.2 com más-
cara de sub-rede 255.255.255.0, fazem então parte da rede 192.168.1.0.
Observe que, para representar o endereço da rede, a última parte do
endereço é sempre zero.

O outro endereço reservado é o de broadcast da rede. Ele é represen-


tado por um endereço IP com a porção referente aos computadores
com todos os bits iguais a 1, representando que pacotes enviados para
este endereço não chegarão apenas até uma máquina específica, mas
enviados para todas as máquinas daquela rede. Por exemplo, no caso
anterior, o endereço de broadcast da rede 192.168.1.0 com máscara
255.255.255.0 é 192.168.1.255.

Um outro endereço especial muito importante é o de loopback, o qual é


usado para que uma máquina possa enviar pacotes para ela mesma, sem
precisar usar toda a pilha de protocolos TCP/IP, apenas usando o sis-
tema operacional. Você pode estar se perguntando: qual a utilidade de
um computador mandar pacotes para ele mesmo e não para outro com-
putador? Bom, existem várias aplicações para a interface de loopback.
Veremos, no capítulo sobre a camada de aplicação, que a Internet toda
está baseada no modelo cliente-servidor. Se você instalar um cliente e
um servidor na mesma máquina, poderá fazer o cliente se conectar ao
servidor usando a interface de loopback. Isto é muito útil para se fazer
testes em protocolos, por exemplo. Esta interface tem sempre o endere-
ço IP 127.0.0.1 e máscara 255.0.0.0. A interface de loopback também é
conhecida em sistemas operacionais como localhost.

Tendo então visto como funciona o endereçamento IP, fica fácil imagi-
nar como acontece o processo de envio de pacotes dentro de uma mes-
ma rede usando os conhecimentos vistos sobre entrega de quadros na
camada de enlace, o protocolo Ethernet, CSMA/CD e o protocolo ARP.
Entretanto, como entregar pacotes entre máquinas situadas em redes
diferentes? Aqui entra um elemento fundamental para o correto fun-
cionamento da camada de rede na Internet que é o roteamento, ou seja,
o processo de encontrar rotas entre computadores em redes diferentes.
Este será nosso foco na próxima seção.

Redes de Computadores
80
Capítulo 4

Existe uma nova versão do protocolo IP chamado de IPv6. Este


protocolo irá prover um número muito maior de endereços pos-
síveis que o protocolo IPv4, pois, ao contrário do anterior que
utilizava apenas 32 bits para endereçamento, este protocolo usa
128 bits para cada endereço IP. Sistemas operacionais mais novos
como o Windows Vista e o Windows Seven já possuem uma pi-
lha dupla de protocolos implementada, de forma a aceitar tanto a
configuração IPv4 como a IPv6.

4.3 Roteamento

Como dito na seção anterior, a correta entrega de pacotes ao destino


entre redes diferentes só acontece porque existe o roteamento, que é o
processo de traçar rotas corretamente entre um computador e outro.
Este processo é feito com base em algoritmos de roteamento os quais
possibilitam que este cálculo seja feito de forma automática e são reali-
zados por equipamentos especiais chamados de roteadores. Então, o al-
goritmo de roteamento é calculado de forma a achar o menor caminho
entre dois computadores, ou seja, um caminho que passe por menos
roteadores, sendo, com isso, mais rápido.

Desta forma, podemos derivar uma definição:

Um roteador é um equipamento da camada de rede dedicado à


função de roteamento e capaz de enviar informações entre redes
diferentes. O roteador pode ser tanto um hardware dedicado à
sua tarefa quanto um computador com duas ou mais interfaces de
rede, permitindo sua conexão com duas ou mais redes.


Todo pacote de informações que deve ser enviado para outras redes deve,
obrigatoriamente, passar por um roteador. Todo pacote de informação que
vem de outras redes também deve, obrigatoriamente, passar por um roteador.
Como o roteador é um equipamento de rede, este também terá um número
IP e entende os pacotes IP que passam por ele. Na figura 4.3, vemos um exem-
plo de equipamento roteador e não um computador normal. Observe que ele
apresenta semelhanças com os switchs e hubs vistos anteriormente.

Licenciatura em Informática
81
A Camada de Rede

Figura 4.3 – Exemplo de roteador

Em toda rede local que possui acesso à Internet existe pelo menos um ro-
teador, chamado de roteador padrão. Ele é assim chamado porque, para
atingir a Internet, qualquer computador da rede local precisa passar por este
roteador de tal forma que a rota de qualquer computador da rede local até
ele é chamada de rota padrão. Este roteador também é conhecido em siste-
mas operacionais como gateway padrão. Geralmente, este é o computador
da rede diretamente conectado à Internet e todos os outros computadores
acessam a Internet por meio dele. O número IP do roteador padrão deve
ser informado em todos os demais equipamentos que fazem parte da rede,
para que estes equipamentos possam se comunicar com a Internet.

Desta forma, quando um pacote é enviado de um computador para ou-


tro em uma rede, duas possibilidades são possíveis:

• o computador de origem e de destino estão na mesma rede local: nes-


te caso, os dados são enviados para o barramento da rede local. Todos os
computadores da rede recebem os dados por meio da interface de rede.
Ao receber os dados cada computador analisa o endereço do destinatário:
se o endereço do destinatário for igual ao endereço físico da sua própria
interface, os dados são capturados e processados pelo sistema; caso con-
trário, são simplesmente descartados. Observe que, com este procedimen-
to, apenas o computador de destino é que efetivamente processa os dados
para ele enviados, os demais computadores simplesmente os descartam.

• o computador de origem e de destino não estão na mesma rede local:


neste caso, os dados são enviados para o equipamento com o número IP con-
figurado no parâmetro Gateway Padrão(Roteador Padrão). Ou seja, se após
os cálculos baseados na máscara de sub-rede, a implementação do TCP/IP
chegar à conclusão que o computador de destino e o computador de origem
não fazem parte da mesma rede local, os dados são enviados para o Roteador
Padrão, o qual será encarregado de encontrar um caminho para enviar os da-
dos até o computador de destino. Esse “encontrar o caminho” é tecnicamen-
te conhecido como rotear os dados até o destino. O responsável por rotear
os dados é o roteador padrão. Quando ocorre um problema com o roteador
padrão tornando-o indisponível, você consegue se comunicar normalmente
com os demais computadores da rede local, porém não conseguirá comuni-
cação com outras redes de computadores, como por exemplo, a Internet.

Redes de Computadores
82
Capítulo 4

Desta forma, é fácil observar que o roteador padrão é uma informa-


ção importante a ser configurada no computador de forma a ter acesso
à Internet caso ele participe de uma rede Ethernet. Esta configuração
também pode ser vista usando-se o comando ipconfig, como mostrado
na figura 4.4.

Figura 4.4 – Exemplo de saída do ipconfig mostrando o gateway padrão.

Entretanto, se a forma de conexão à Internet for via o protocolo PPP, o


campo Gateway Padrão geralmente aparece com o valor zerado, como
podemos ver na figura 4.5. Isto se deve ao fato de que, como foi exposto
no capítulo passado, o protocolo PPP considera que existem apenas dois
computadores em cada um dos lados do enlace: o computador de origem
e o computador de destino. Sendo assim, para o protocolo não faz muito
sentido considerar a existência de um roteador padrão no caminho, pois
ele só enxerga duas máquinas se comunicando sem intermediários, ainda
que, na prática, a realidade possa ser diferente. Em algumas versões do
Windows, o campo Gateway Padrão também pode assumir como valor o
próprio endereço IP do computador, mas a lógica neste caso é a mesma:
ele está considerando que o computador não precisa de nenhum compu-
tador além dele mesmo para se comunicar com o destinatário.

4.3.1 – Tabelas de roteamento

Já foi visto anteriormente que os roteadores calculam rotas para enviar


pacotes por meio de algoritmos de roteamento. Estes algoritmos visam
a encontrar o melhor caminho entre um computador e outro, passan-
do possivelmente por várias redes diferentes. Uma vez calculadas estas
rotas, elas geralmente são gravados em tabelas, que são usadas sempre
que for necessário rotear pacotes de uma rede para outra. Desta forma,
quando um pacote chega a uma das interfaces do roteador, ele analisa a
Licenciatura em Informática
83
A Camada de Rede

sua tabela de roteamento para verificar se existe uma rota para a rede de
destino. Pode ser uma rota direta ou então uma rota que informa para
qual roteador o pacote deve ser enviado.

Figura 4.5 – Conexão PPP mostrando ausência de configuração de Gateway Padrão

Computadores comuns que não são roteadores, também apresentam


rotas básicas configuradas para que ele saiba para onde mandar seus
pacotes. Estas rotas podem ser visualizadas pelo comando route print.
Temos um exemplo na figura 4.6 para um computador com as configu-
rações de rede da figura 4.4.

Figura 4.6 – Exemplo de saída do comando route print

Na figura 4.6, é possível ver que a primeira parte da saída do coman-


do route print apresenta as interfaces de rede existentes na máquina
em questão. Observe que, neste caso, existem duas interfaces: a in-
terface de loopback, já comentada anteriormente, e a placa de rede
existente na máquina.
Redes de Computadores
84
Capítulo 4

A segunda parte da saída apresenta as rotas ativas, ou seja, em funcio-


namento, na máquina. Antes de entendê-las, vamos ver quais campos
fazem parte desta tabela de rotas:

Endereço de Rede: este é o endereço de destino da rota. Pode ser o en-


dereço de uma rede (por exemplo: 10.10.10.0), o endereço de um com-
putador específico ou um endereço especial. Em resumo, é o destino a
que se visa atingir por meio da rota criada.

Máscara: a máscara de sub-rede utilizada para a rede de destino.

Endereço do Gateway: endereço IP do roteador para o qual o pacote


deve ser enviado. Se for a rota padrão, então neste campo fica o endere-
ço do roteador padrão da rede.

Interface: é o endereço da interface na máquina que será usada para


enviar os pacotes para fora dela, geralmente sendo a placa de rede do
computador.

Custo: o custo é um indicativo da distância da rota, entre destino e ori-


gem, em termos de roteadores. Em uma WAN, pode haver mais de um
roteador entre origem e destino. Também pode haver mais de um ca-
minho entre origem e destino. Caso sejam encontradas duas rotas para
um mesmo destino, o roteamento será feito pela rota de menor valor
no campo Custo. Um valor menor indica, normalmente, um número
menor de roteadores entre origem e destino.

Tendo compreendido o significado dos campos presentes na tabela, po-


demos agora passar ao entendimento das linhas presentes na mesma.

A primeira linha é a rota padrão, a qual é indicada por uma identifi-


cação de rede 0.0.0.0 com uma máscara de sub-rede 0.0.0.0. Quando
o TCP/IP tenta encontrar uma rota para um determinado destino, ele
percorre todas as entradas da tabela de roteamento em busca de uma
rota específica para a rede de destino. Caso esta não seja encontrada
será utilizada a rota padrão. Em outras palavras: se não houver uma rota
específica, os pacotes devem ser enviados para a rota padrão. Observe
que a rota padrão é justamente o roteador padrão da rede, pois ele é o
caminho padrão para o acesso à Internet.

A segunda linha faz referência à rede interna 127.0.0.0, na qual exis-


te a interface de loopback com endereço 127.0.0.1. Ou seja, quando
faço uma referência a 127.0.0.1 estou me referindo ao próprio com-
putador no qual estou. Esta rota indica que, para se comunicar com
a rede de loopback (127.0.0.0/255.0.0.0), deve-se utilizar a interface
de loopback (127.0.0.1).
Licenciatura em Informática
85
A Camada de Rede

A terceira linha é conhecida como Rota da Rede Local. Ele basicamente


informa que quando o endereço IP de destino for um endereço da rede
local, as informações devem ser enviadas por meio da placa de rede
(observe que tanto o parâmetro Gateway como o parâmetro Interface
estão configurados com o número IP do próprio computador). Ou seja,
caso os pacotes sejam destinados a máquinas da própria rede local não é
necessário usar um roteador, apenas a própria placa de rede.

A quarta linha faz referência ao próprio computador. Observe que


192.168.1.2 é o número IP do servidor que está sendo analisado (no
qual executei o comando route print). Esta rota diz que os programas do
próprio computador que enviarem pacotes para o destino 192.168.1.2
(ou seja, enviarem pacotes para si mesmos, como no exemplo de dois
serviços trocando informações entre si), devem usar como Gateway
o endereço de loopback 127.0.0.1, através da interface de loopback
127.0.0.1. Esta rota é utilizada para agilizar as comunicações que ocor-
rem entre os componentes do próprio sistema operacional. Ao usar a
interface de loopback, toda a comunicação ocorre em nível de software,
ou seja, não é necessário enviar o pacote através das diversas camadas
do protocolo TCP/IP. Ao invés disso é utilizada a interface de loopback
para direcionar os pacotes corretamente. Observe que esta entrada tem
como máscara de sub-rede o número 255.255.255.255, a qual indica que
a entrada é uma rota para um endereço IP específico (no caso, o próprio
IP do próprio computador) e não uma rota para um endereço de rede.

A quinta linha define o endereço de broadcast da rede. Broadcast signi-


fica enviar para todos os computadores da rede. Quando é utilizado o
endereço de broadcast, todos os computadores da rede recebem o paco-
te e processam o pacote. Observe que o gateway padrão é o número IP
da placa de rede do computador e a Interface é este mesmo número, ou
seja, para enviar pacotes em broadcast para a rede, apenas é necessário
enviar os pacotes por meio de da placa de rede do próprio computador,
não há necessidade de utilizar o roteador. Observe que o endereço de
broadcast é o último daquela rede, como já mostrado anteriormente.

A sexta linha traz uma rota para um endereço Multicast, o qual é um trá-
fego direcionado para um grupo de computadores, os quais estão confi-
gurados e inscritos para receber o tráfego multicast. Um exemplo prático
de utilização do multicast é para uma transmissão de vídeo por meio da
rede. Vamos supor que, de uma rede de 1000 computadores, apenas 30
devem receber um determinado arquivo de vídeo com um treinamento
específico. Se for usado tráfego unicast, serão transmitidas 30 cópias do
arquivo de vídeo (o qual já é um arquivo grande), uma cópia para cada
destinatário. Com o uso do Multicast, uma única cópia é transmitida atra-
vés do link de WAN e o tráfego multicast entrega uma cópia do arquivo

Redes de Computadores
86
Capítulo 4

apenas para os 30 computadores devidamente configurados para recebê-


lo. Esta rota define que o tráfego multicast deve ser enviado por meio da
interface de rede, que é o número IP da placa de rede do servidor. Vale a
pena lembrar que a classe D é reservada para tráfego multicast, com IPs
iniciando (o primeiro octeto) a partir de 224.

A sétima e última linha da tabela faz referência ao endereço de bro-


adcast limitado, o qual é formado por todos os 32 bits do endereço IP
sendo iguais a 1 (255.255.255.255). Este endereço é utilizado quando
o computador tem que fazer o envio de um broadcast na rede local,
porém o computador não conhece a qual rede local ele pertence e, com
isso, não conhece o endereço da sua rede. Sendo assim ele não sabe o
endereço de broadcast específico da sua rede e, assim, não pode mandar
pacotes para ele. Você pode estar se perguntando em qual situação uma
máquina precisaria mandar pacotes para outras na rede sem ao menos
saber seu endereço de rede; entretanto, existem várias aplicações para
este endereço de broadcast limitado. A principal delas é na configuração
dinâmica de rede usando o protocolo DHCP, assunto que será visto no
capítulo sobre Camada de Aplicação.

Observe, ainda, que o comando traz ao final da tabela, o endereço IP do


roteador padrão da rede na qual aquela máquina está inserida. No caso
da figura 4.6, ele é o endereço 192.168.1.1.

Como podemos ver então, todos os computadores precisam de rotas


para enviar seus pacotes para outras máquinas e, caso seja necessário en-
viar pacotes para outra rede, então é feito o uso do roteador padrão. Este
roteador entrará em contato com outros, e repassará os pacotes para to-
dos os roteadores na rota até chegar ao computador destino. Bom, você
pode ter pensado: ”Mas são muitos passos do computador origem até o
destino! Nunca dá nada errado?”. Infelizmente sim, e para apontar estes
erros deve existir um mecanismo para possibilitar a notificação de erros
que aconteçam durante este processo. Este mecanismo existe na forma
de um protocolo, que será o foco da nossa próxima seção.

Os roteadores da Internet utilizam uma série de algoritmos para


calcular rotas para a entrega de pacotes. Os mais famosos são o
OSPF (Open Shortest Path First – Menor Caminho Primeiro), RIP
(Routing Information Protocol – Protocolo de Informação de Ro-
teamento) e BGP (Border Gateway Protocol – Protocolo de Ro-
teador de Borda). Cada um destes protocolos tem características
próprias para achar o melhor caminho entre dois computadores.

Licenciatura em Informática
87
A Camada de Rede

4.4 O Protocolo ICMP

O último componente que resta para ser apresentado de forma a com-


pletarmos o funcionamento da camada de rede é o protocolo ICMP (In-
ternet Control Message Protocol – Protocolo de Mensagens de Controle
da Internet). O ICMP é utilizado por computadores e roteadores para
comunicar informações da camada de rede em si.

As mensagens ICMP têm um campo de tipo e um campo de código, os


quais são usados para representar o tipo de mensagem que o protocolo
ICMP está enviando, e não necessariamente as mensagens sempre são
de erro. Talvez o uso mais popular do protocolo ICMP seja através do
comando ping. Ao digitar o comando ping seguido de um endereço IP
que se deseja acessar, o protocolo ICMP manda uma mensagem ECHO
REQUEST que, chegar ao destino, faz com que ele responda com uma
mensagem ECHO REPLY. Esta mensagem contém os mesmos dados
enviados na mensagem ECHO REQUEST, então o conteúdo da resposta
em si não é importante para quem executa o comando. A grande utili-
dade do comando ping é testar a responsividade e a disponibilidade da
máquina destino, ou seja, saber se a máquina está disponível e apta a
responder a uma comunicação com outro computador.

Ao receber a resposta da máquina destino ao comando ping, uma série


de dados úteis é recolhida e apresentada pela máquina de origem. Na
figura 4.7, podemos ver um exemplo de saída do comando ping para um
computador existente na rede local.

Observem que a saída do comando apresenta vários dados importantes


sobre o funcionamento da rede. Por padrão, o comando ping no sistema
Windows manda quatro pacotes ECHO REQUEST para a máquina de
destino. Se, por algum motivo, o destino não puder ser alcançado, uma
mensagem de erro ICMP é enviada. Caso a máquina de destino possa
responder, cada uma das mensagens de resposta é apresentada juntamen-
te com o tamanho da mensagem (32 bytes por padrão), o tempo de ida e
volta da mensagem e o TTL. Lembre-se de que foi falado que o pacote IP
tem um campo TTL que é decrementado sempre que o pacote passa por
um roteador e quando chega a zero o pacote é excluído. Dependendo da
versão do Windows, o TTL tem valor 64 ou 128; na figura 4.7, o valor por
padrão é 64. Observe que a resposta do destino voltar com o valor padrão
inalterado significa que, para ir e voltar, o pacote não passou por nenhum
roteador, o que é fácil entender já que os dois computadores pertencem
à mesma rede local. Além disso, o tempo de ida e volta é muito pequeno,
menor ou igual a 1 milisegundo (0,001 segundos), o que indica que a co-
municação realmente aconteceu em rede local.

Redes de Computadores
88
Capítulo 4

Figura 4.7 – Exemplo de saída do comando ping

Por fim, o comando ping ainda gera estatísticas mostrando quantos pa-
cotes foram enviados, recebidos e perdidos, além da sua porcentagem
de perda. Além disso, ele apresenta o tempo mínimo, máximo e médio
de ida e volta dos pacotes.

Por que as mensagens usadas no comando ping são chamadas de


ECHO REQUEST e ECHO REPLY? Em primeiro lugar, o motivo
de usar a palavra ECHO é que estas mensagens, em teoria, fun-
cionam realmente como um eco da voz. Quando se envia uma
mensagem usando o ping, a resposta possui os mesmos dados da
mensagem original, ou seja, é como se fosse um eco da mensagem
original. Já a razão para uso das palavras REQUEST e REPLY são
porque REQUEST significa pedido, requisição e REPLY seria res-
posta, retorno. Assim, a primeira mensagem é de requisição e a
segunda é um retorno à requisição anteriormente feita.

Observe a diferença da saída do comando da figura anterior enviado


para uma máquina da rede local para o da figura 4.8, no qual o comando
tem como destino o site www.google.com.br.

Observe que, neste caso, nem todos os pacotes obtiveram resposta. Isso
pode ter sido causado por um congestionamento na Internet, o que
acarretou em perda de pacotes, dentre outros motivos. Por estas razões,
o protocolo IP é considerado um protocolo de “melhor esforço”, ou seja,
ele não oferece garantias em relação aos pacotes que envia. Além disso,
Licenciatura em Informática
89
A Camada de Rede

observe que, por conta do computador destino estar geograficamente


distante da máquina de origem, os tempos de ida e volta foram muito
maiores que no exemplo anterior, todos com mais de 200 milisegundos.
Por último, vale a pena citar que o TTL dos pacotes que retornaram
possui valor 47, diferente do valor 64 que é o padrão. O que podemos
deduzir desta informação? Que estes pacotes ao retornarem passaram
por 17 roteadores (pois 64 – 17 = 47), e cada um destes decrementou o
TTL dos pacotes até que foi atingido o valor 47.

Figura 4.8 – Exemplo de saída do comando ping

Além disso, nas estatísticas, também podemos observar diferenças: dos


4 pacotes enviados, apenas 2 foram corretamente recebidos, acarretan-
do em 50% de perda, e os tempos mínimo, máximo e médio também
foram sensivelmente maiores que os anteriores.

Desta forma foi possível ver que, apesar de simples, o programa ping
apresenta uma série de informações úteis que podem ser usadas para
fazer um diagnóstico da rede. Entretanto, uma dúvida pode ter surgido:
foi falado no exemplo anterior que o TTL dos pacotes de retorno do
ping possui valor 47 porque passaram por 17 roteadores no caminho de
volta do destino até a origem. Mas quais são estes roteadores? É possível
saber seus endereços? A resposta é sim e, para isto, usaremos um outro
programa que também usa o protocolo ICMP, chamado de tracert.

O ping é um programa tão comum no dia-a-dia dos administrado-


res de redes, que é comum utilizar-se o termo “pingar” de maneira
informal para referir-se à utilização do comando ping. Por exemplo:
se você quer testar se o site www.hotmail.com está respondendo, é
comum usar a expressão “pinga o www.hotmail.com”

Redes de Computadores
90
Capítulo 4

O programa tracert apresenta a rota traçada entre um computador de


origem e um outro de destino, mostrando os roteadores presentes no
caminho entre os dois computadores. Para determinar os endereços e
nomes de todos os roteadores entre fonte e destino são enviados uma
série de pacotes ICMP REQUEST para o destino. A diferença destes pa-
cotes para os do comando ping é que, ao invés de mandar pacotes com
o valor do TTL padrão (TTL=64), os pacotes do tracert são enviados
com TTLs de valores diferentes. O primeiro destes pacotes tem TTL
=1, o segundo TTL=2, o terceiro TTL=3, e assim por diante. Qual o
objetivo desta técnica? Bom, você deve estar lembrado de que quando
o TTL de um pacote é zerado, ele é descartado. Mas, ao ser descartado,
é enviada uma mensagem de volta para a origem informando este fato
e esta mensagem também possui o nome e endereço do roteador que
descartou o pacote. Então, quando o pacote com TTL=1 é enviado, ele
alcança o primeiro roteador do caminho (geralmente o roteador pa-
drão da rede) e tem seu TTL zerado. Assim ele é descartado, mas é en-
viado como resposta um pacote informando o nome e IP do roteador
que o descartou. Da próxima vez, o pacote enviado terá TTL=2 e, com
isso, passará pelo roteador padrão, chegando até ao segundo roteador
do caminho, onde será descartado.

Desta forma, a origem pode saber quem descartou aquele pacote e o


tempo de ida e volta do mesmo. Como cada pacote enviado possui um
TTL um pouco maior, isto significa que ele será descartado pelo rote-
ador seguinte ao que descartou o pacote anterior. Como o programa
vai sempre incrementando o valor do TTL, é possível obter os nomes e
endereços de todos os roteadores no caminho.

Uma pergunta que você pode fazer é a seguinte: mas como o programa
sabe que chegou ao destino e pode parar de enviar pacotes, já que a
rota está completa? Bom, lembre-se de que a mensagem enviada é uma
mensagem ICMP REQUEST. Ou seja, inevitalvemente, quando atingir
o destino, esta mensagem gerará uma mensagem ICMP REPLY de re-
torno à origem. Então, quando esta mensagem é recebida pela origem,
isto é um sinal de que a rota está completa, e o programa encerra o ras-
treamento. Um exemplo do programa tracert com destino ao endereço
www.gmail.com pode ser visto na figura 4.9.

Licenciatura em Informática
91
A Camada de Rede

Figura 4.9 – Exemplo de saída do comando tracert

Como pode ser visto, o comando apresenta o caminho entre o computa-


dor origem até o computador destino. Os três tempos mostrados antes do
nome ou endereço de cada roteador são porque o programa manda três
pacotes para cada roteador e, com isso, marca os três tempos de ida e vol-
ta. Observe que alguns roteadores apresentam a mensagem “Esgotado o
tempo limite do pedido”. Isto acontece porque aquele roteador específico
não respondeu a nenhum dos três pacotes enviados a ele, seja por algum
problema de funcionamento, seja por uma restrição na sua configuração
que o impede de responder. Ao final do funcionamento do programa é
apresentado como última linha do rastreamento o endereço IP do destino
alcançado, apresentado também no início do seu funcionamento. Após
isto, é apresentada a mensagem “Rastreamento Concluído.”

Observe que, ao executar o comando novamente para o mesmo destino,


pode haver uma diferença no número e nos endereços dos roteadores
do caminho, isso pois a rota é calculada de forma dinâmica pelos ro-
teadores ao executarem seu algoritmo de roteamento e existem várias
rotas possíveis entre dois computadores na Internet, de forma que a rota
calculada em um momento pode não ser a mesma calculada em outro.

Redes de Computadores
92
Capítulo 4

Existem comandos em outros sistemas operacionais com funções


semelhantes a do comando tracert no Windows®. Por exemplo:
em e sistemas Linux, existe o comando traceroute que também
exibe a rota entre um computador origem e destino, embora a
forma como este comando obtenha estas informações seja ligei-
ramente diferente.

Prezado aluno,
você acabou de ver a Camada de Rede, uma camada essencial para
a correta entrega de pacotes entre computadores na Internet. Vimos
ainda que cada um dos seus componentes cumpre um próposito es-
pecífico na tarefa geral da Camada. Vimos que o protocolo IP é o
protocolo usado para definir endereços aos computadores, que o ro-
teamento é necessário para traçar caminhos entre a origem e o des-
tino e que o protocolo ICMP é fundamental para reportar possíveis
erros acontecidos no processo.
Entretanto, vamos ver que apenas esta camada não é suficiente para
entregar corretamente informações de um computador a outro. Os
motivos disso serão vistos no próximo capítulo, no qual será apre-
sentada a Camada de Transporte.

Para assistir a uma animação que ajuda a entender como funciona


o roteamento de pacotes entre roteadores de várias redes, acesse
o link Roteamento – Animação para visualizá-la.
Para entendê-la e executá-la, leia a descrição que acompanha
a animação.

Licenciatura em Informática
93
A Camada de Rede

Realize as atividades abaixo e envie-as de acordo com o enunciado


da Tarefa 9 do ambiente:
1 - Qual é a função da camada de rede e qual serviço da camada
de enlace ela usa para executar esta função?
2 – Faça um resumo dos campos existentes no cabeçalho do proto-
colo IP.
3 – Quais são as classes de endereços IP existentes? Fale um pouco
sobre cada uma delas.
4 – O que é um roteador padrão e qual sua função na rede à qual
pertence?
5 – Qual a função do protocolo ICMP na camada de rede?
6 - Use o comando ipconfig e depois cole a tela da saída do coman-
do no arquivo desta atividade. Após isto, cite, baseado no seu IP
e na sua máscara qual o endereço da sua rede, seu endereço de
broadcast, à qual classe seu endereço pertence e qual o gateway
padrão da sua rede (caso você use uma conexão PPP e não tenho
gateway padrão configurado, apenas informe o fato).
7 – Use o comando tracert www.ci.ifes.edu.br duas vezes e cole as
telas da saída do comando no arquivo desta atividade. Responda:
houve alguma mudança na rota entre uma tentativa e a outra?
8 - Use o comando ping www.ci.ifes.edu.br e cole a tela de saída
do comando no arquivo da atividade. Após isto, informe o tempo
máximo, mínimo e médio de resposta dos pacotes e informe por
quantos roteadores os pacotes de resposta passaram para volta-
rem até ao seu computador.
9 - Use o comando route print e cole a tela de saída do comando no
arquivo da atividade. Após isto, destaque da saída do comando a
rota para a rede de loopback, a rota para a própria máquina, a rota
para a sua rede local e a rota para o endereço de broadcast.

Redes de Computadores
94
Capítulo 4

Licenciatura em Informática
A camada de TRANSPORTE

Prezado aluno,
você teve contato no capítulo passado com a camada de rede, que
efetua a vital função de entregar pacotes entre computadores muitas
vezes separados por grandes distâncias geográficas. Entretanto, ape-
nas isto não é suficiente. Pense, por exemplo, em um computador
no qual exista um navegador acessando um site, um programa re-
alizando um download de arquivos e um programa de conversação
instantânea sendo usado. Estes três programas estão usando a rede
e, consequentemente, existem pacotes de dados saindo destes pro-
gramas e voltando para eles durante a sua execução. Desta forma, se
existisse apenas a camada de rede, os pacotes de resposta destes pro-
gramas chegariam até o computador no qual eles estão sendo exe-
cutados, mas como entregar corretamente os pacotes ao programa
correto? Pode ser que os pacotes vindos do servidor do site acessado
pelo navegador fossem entregues no programa de transferência de
arquivos e assim por diante, gerando uma grande confusão.
Para evitar que isso aconteça, a camada de transporte utiliza um
novo elemento que vai identificar unicamente um programa dentro
de computador, chamado de porta.
Além disso, você verá que a camada de transporte oferece dois pro-
tocolos próprios que possuem características bastante diferentes.
Continue atento e interessado! Bons estudos!

5.1 A função da camada de transporte

Posicionada entre as camadas de rede e de aplicação, a camada de


transporte é uma peça fundamental da arquitetura de redes em cama-
das. Ela desempenha o crucial papel de fornecer serviços de comu-
nicação diretamente aos programas em execução em computadores
diferentes. Como já foi comentado anteriormente, a camada de rede
fornece o serviço de entrega de pacotes entre computadores, entre-
tanto, vimos também que apenas isto não é suficiente. Foi citado na
introdução do capítulo o exemplo do computador com três aplicações
96
Capítulo 5

sendo executadas ao mesmo tempo e acessando a rede. Se existisse


apenas a camada de rede, os pacotes chegariam até ao computador de
destino correto, mas não ao processo (programa em execução) correto
dentro do computador. Com isso, para entregar dados corretamente é
necessário um outro identificador além do endereço IP da camada de
rede e do endereço MAC da camada de enlace, chamado de porta. A
porta é a unidade que permite identificar o tráfego de dados destinado
a diversas aplicações. Desta forma, o que identifica unicamente um
programa acessando a Internet é, então, o endereço IP da máquina na
qual ele está sendo executado e a porta usada por ele.

Um exemplo que ajuda a entender a necessidade do conceito de porta é


a entrega de cartas em um prédio de apartamentos. Imagine um carteiro
tendo que entregar uma carta a um apartamento em um prédio com
dezenas de apartamentos. Como ele poderia fazer a entrega correta da
carta se tivesse como informação apenas o número do prédio mas não
do apartamento? Como ele entregaria a carta na porta certa? É esta a
mesma situação que vivenciaria um computador se ele não soubesse o
número da porta na qual um programa espera por pacotes. Ele conse-
guiria chegar até ao computador certo, mas não à aplicação correta.

Com isso, sempre que um programa desejar utilizar a Internet para se


comunicar com outro programa, ele precisa requisitar uma ou mais
portas para realizar a comunicação. A mesma porta utilizada por uma
aplicação pode ser usada por outra desde que a primeira tenha termi-
nado de utilizá-la.

Desta forma, a camada de transporte usa o serviço de entrega compu-


tador-computador fornecido pela camada de rede e expande esta ideia
para um nível acima, fornecendo um serviço fim-a-fim, ou seja, apli-
cação-aplicação. Este serviço será usado pela Camada de Aplicação, a
camada acima, para que ela possa realizar a interação entre programas
clientes e programas servidores dentro das várias finalidades possíveis
na comunicação em redes de computadores.

Veremos, no próximo capítulo, sobre a Camada de Aplicação que, quase


todos os programas se comunicam usando o modelo cliente-servidor,
em que existem programas clientes que fazem requisições a programas
servidores. Os programas servidores sempre esperam pelas requisições
dos clientes em portas amplamente conhecidas, chamadas de Portas
Bem-Conhecidas (Well-Known Ports). Cada número de porta é um nú-
mero de 16 bits que podem variar de 0 a 65535(pois 216 = 65536). Desta
forma, o cliente geralmente sabe o número de porta na qual o servidor
espera pela comunicação. O próprio cliente também escolhe um núme-
ro de porta disponível para que ele possa receber a resposta do servidor,

Licenciatura em Informática
97
A Camada de Transporte

mas o cliente pode escolher um número de porta qualquer, já que quem


inicia a comunicação é o cliente. O servidor, por sua vez, irá responder
à requisição usando o número de porta de origem contido no pacote
enviado pelo cliente.

Os números de porta de 1 a 1023 são bem conhecidos para servi-


ços (aplicações) atribuídos pela IANA(Internet Assigned Numbers
Authority). Por exemplo: o servidor FTP usa a porta 21 e um ser-
vidor Web (servidor que hospeda sites) usa a porta 80. Os núme-
ros de 1024 a 65535 podem ser atribuídos para outros serviços e
são geralmente utilizados pelos programas clientes de um proto-
colo (que podem utilizar um número de porta qualquer). Este
conjunto de números tem ainda a atribuição de alguns serviços de
forma não-oficial, já que os primeiros 1024 números não conse-
guem comportar todos os protocolos existentes.

Em um mesmo computador, vários programas podem se comunicar


com computadores diferentes e usando portas diferentes. O trabalho
de reunir no computador origem, porções de dados provenientes de di-
ferentes portas de vários programas clientes diferentes (como um na-
vegador ou um programa de transferência de arquivos, por exemplo) e
enviar usando o mesmo enlace de comunicação é chamado de multi-
plexação. Já o trabalho de entregar os dados contidos em um pacote da
camada de transporte para a aplicação correta em um computador de
destino é chamado de demultiplexação.

No exemplo do prédio anterior, podemos considerar como multiplexa-


ção o processo de entregar todas as cartas de moradores a um porteiro,
que as levaria para o correio todas juntas, por exemplo. Já a demulti-
plexação pode ser vista como o processo do carteiro entregar todas as
cartas de um prédio para o porteiro, para que ele as distribua para os
endereços corretos de apartamentos.

Agora que entendemos os papéis da multiplexação e demultiplexação na


camada de transporte, vamos examinar como isto é feito em um com-
putador. Sabemos que, para que a multiplexação ocorra corretamente,
é necessário que as aplicações tenham números de portas e que cada
pacote tenha campos especiais que indiquem para qual porta o pacote
deve ser entregue. Estes campos especiais são o campo de número de
porta de origem e o campo de número de porta de destino. Desta

Redes de Computadores
98
Capítulo 5

forma, quando um pacote chega ao destinário, a camada de transporte


examina seu número de porta de destino e o direciona à porta corres-
pondente. Então, os dados passam através da porta de destino e entram
no processo que se encontra ligado à ela. Quando o computador de
destino envia um pacote de volta à origem, os campos de número de
porta de origem e porta de destino se invertem, já que o computador de
origem passa a ser o computador que outrora era o computador de des-
tino, e o computador de origem passa a ser o computador que outrora
era o computador de destino. Fora isto, o processo é o mesmo.

Desta forma, provavelmente ficou claro que um protocolo da cama-


da de transporte deve, pelo menos, implementar a multiplexação/
demultiplexação. Temos dois protocolos da camada de transporte,
chamados de UDP (User Datagram Protocol – Protocolo de Datagra-
ma do Usuário) e TCP (Transmission Control Protocol – Protocolo
de Controle de Transmissão). Veremos que, apesar de ambos imple-
mentarem pelo menos o serviço mínimo citado acima, o TCP pos-
sui muito mais funcionalidades que o UDP, tornando-os protocolos
muito diferentes e usados para finalidades totalmente distintas. Va-
mos estudá-los nas seções que seguem.

5.2 O Protocolo UDP

O UDP é o protocolo da camada de transporte mais simples em funcio-


namento atualmente. Além do serviço de multiplexação/demultiplexa-
ção básico mostrado na seção passada, ele apenas faz uma verificação de
erros por meio de um campo de soma de verificação de erros contido
em seu cabeçalho. Fora isso, o UDP também é um protocolo de “melhor
esforço” como o IP, ou seja, não oferece nenhuma garantia de entrega de
pacotes aos serviços que o utilizam.

O UDP pode ser caracterizado como:

- Fim-a-fim: o UDP é um protocolo de transporte que pode distinguir


entre múltiplos programas aplicativos executando no mesmo computa-
dor através do conceito de porta.

- Sem conexão: os serviços que usam o UDP não estabelecem nenhum


tipo de conexão entre os programas que se comunicam usando-o. Isso
quer dizer que um aplicativo usando UDP não precisa preestabelecer
comunicação antes de enviar os dados e nem precisar terminar a comu-
nicação ao encerrar, ou seja, o UDP não usa nenhuma mensagem de
controle, a comunicação consiste apenas nas mensagens de dados.

Licenciatura em Informática
99
A Camada de Transporte

- Orientado à mensagem: um aplicativo que usa UDP envia e recebe


mensagens individuais.

- Melhor esforço: o UDP oferece aos aplicativos o mesmo serviço de


entrega de melhor esforço que o IP.

- Interatividade arbitrária: o UDP permite a um aplicativo enviar paco-


tes a muitos outros aplicativos, receber pacotes de muitos outros aplica-
tivos ou comunicar-se com, exatamente, um aplicativo.

O cabeçalho do pacote UDP possui poucos campos, refletindo a simpli-


cidade presente no protocolo. Além dos já citados campos de porta de
origem e porta de destino, existem os campos de comprimento do pa-
cote e da soma de verificação. A soma de verificação é usada pelo com-
putador receptor para verificar se foram introduzidos erros nos pacotes
UDP, ou seja, ela serve para determinar se bits dentro do pacote UDP
foram alterados (por exemplo, por problemas no enlace ou enquanto
armazenados em um roteador).

Você deve estar se lembrando de que protocolos da camada de


enlace também possuem mecanismos para detectar e corrigir
erros nos quadros que transmite. Então, por que a camada de
transporte também fornece? A razão é que não há garantias de
que todos os enlaces entre a origem e o destino forneçam veri-
ficação de erros, pois um dos enlaces pode usar um protocolo
que não fornece verificação de erros. Além disso, pode ser que
um erro também seja introduzido quando um pacote for arma-
zenado na memória de um roteador. Neste caso, mesmo que
houvesse verificação de erros em todos os enlaces, este erro no
roteador não seria verificado. Com isso, a forma mais confiável
de garantir que haverá verificação de erros em todos os casos é
inserindo este mecanismo em uma camada mais alta, como, por
exemplo, a camada de transporte.

O protocolo UDP usa o IP para a entrega de pacotes na rede. Como


trabalha com o conceito de melhor esforço, uma mensagem enviada via
UDP pode ser perdida, duplicada, entregue fora de ordem ou corrom-
pida, mas ele não introduz problemas de entrega propositalmente. Ele
meramente usa o IP para enviar mensagens e não detecta ou corrige
problemas de entrega. Isto quer dizer que para que um programa utili-

Redes de Computadores
100
Capítulo 5

zando o UDP tenha confiabilidade na entrega de pacotes, estas funcio-


nalidades devem ser inseridas no próprio programa.

Entretanto, existe um outro protocolo da camada de transporte que


possui várias características de segurança para as aplicações que o uti-
lizam, como controle de congestionamento, de fluxo e retransmissão
de pacotes perdidos. Este protocolo é chamado de TCP e será foco da
nossa próxima seção.

5.3 O Protocolo TCP

Os programadores são treinados para pensar que a confiablidade é fun-


damental em um sistema de computador. Por exemplo: um programa-
dor poderia ser contratado para desenvolver um programa que enviasse
dados para uma impressora. O programa desenvolvido então mandaria
dados para o dispositivo, mas não precisaria verificar se aqueles dados
chegaram intactos. Ao invés disso, o programa contaria como o sistema
de computador subjacente para assegurar a transferência confiável: o
sistema deve garantir que os dados não serão perdidos, duplicados ou
entregues fora de ordem.

Para permitir que os programadores sigam técnicas convencionais ao


criar programas que usem uma rede, devem existir protocolos que ofe-
reçam o mesmo serviço confiável de entrega de um sistema de compu-
tador convencional.

A confiabilidade é de responsabilidade de um protocolo de transpor-


te, sendo que os aplicativos interagem com um serviço da camada de
transporte para enviar ou receber dados. Na pilha de protocolos TCP/
IP, o TCP (Transmission Control Protocol – Protocolo de Controle de
Transmissão) fornece serviço de transporte confiável. O TCP é notá-
vel porque resolve um problema difícil, e embora outros protocolos
tenham sido criados, nenhum outro protocolo de transporte mostrou
funcionar melhor. Consequentemente, a maioria dos aplicativos que
usam a rede são criados para usar o TCP. As características importan-
tes do protocolo TCP são:

- orientação à conexão: o TCP fornece um serviço orientado à cone-


xão em que um programa deve primeiro solicitar uma conexão com um
destino específico e então usá-la para transferir dados;

- comunicação ponto-a-ponto: cada conexão TCP tem sempre exata-


mente duas extremidades;

Licenciatura em Informática
101
A Camada de Transporte

- confiabilidade completa: TCP garante que os dados enviados por meio


de uma conexão serão entregues exatamente como foram enviados, na
mesma ordem e sem perdas;

- comunicação Full-duplex: uma conexão TCP permite que os dados


fluam em uma ou outra direção e que um outro programa aplicativo
envie dados a qualquer hora. O TCP pode armazenar dados que par-
tem e que chegam em ambas as direções, possibilitando que um apli-
cativo envie dados e continue uma computação enquanto estes estão
sendo transmitidos;

- estabelecimento de conexão confiável: o TCP exige que, quando dois


aplicativos criam uma conexão, ambos devem concordar com ela.

- Desligamento gracioso de conexão: um programa aplicativo pode abrir


uma conexão, enviar quantidades arbitrárias de dados e então requisitar
o fechamento da conexão. O TCP garante a entrega confiável de todos
os dados antes de fechar a conexão.

O TCP é chamado de protocolo fim-a-fim porque fornece uma conexão


diretamente de um aplicativo em um computador para um aplicativo
em um computador remoto. Os aplicativos podem solicitar que o TCP
forme uma conexão, envie e receba dados, e depois a fecha.

As conexões fornecidas pelo TCP são chamadas de conexões virtuais


porque são obtidas via software, ou seja, não existem circuitos que for-
neçam uma conexão física como na rede de telefonia. Desta forma, os
módulos de software do TCP em duas máquinas trocam mensagens
para criar a ilusão de uma conexão dedicada.

Assim como o UDP, o TCP também usa o IP para transportar men-


sagens. Cada mensagem do TCP é colocada em um pacote IP e en-
viada através da rede. Quando o pacote chega ao destino, o IP passa
o conteúdo para o TCP. Apesar de o IP ser um protocolo de melhor
esforço, o TCP, por outro lado, foi cuidadosamente planejado para
obter confiabilidade.

5.3.1 – Estabelecimento de conexão no TCP

Dizemos que o TCP é orientado à conexão porque, antes que uma apli-
cação possa enviar dados para outra usando o TCP, as duas aplicações
precisam, primeiramente, apresentarem-se, ou seja, enviarem pacotes
entre si para estabilizarem a comunicação antes de começarem a enviar
os dados próprios da comunicação.

Redes de Computadores
102
Capítulo 5

Para estabelecer uma conexão TCP é necessário o envio de três mensa-


gens entre os dois computadores comunicantes. Por conta disto, esta co-
municação é chamada de aperto de mão de três vias (3-way handshake).

O estabelecimento de uma conexão TCP começa quando o computa-


dor que deseja se comunicar com outro envia uma mensagem chamada
de SYN (SYN de syncronization, sincronização). Esta mensagem visa,
anunciar ao computador receptor que o remetente deseja estabelecer
uma conexão com ele. Assim que o pacote TCP SYN chega ao receptor,
o receptor checa se pode aceitar aquela conexão e, caso possa, aloca re-
cursos computacionais para tratá-la e devolve uma mensagem de acei-
tação de conexão para o remetente, chamada de SYN ACK. Ao receber
a mensagem SYN ACK, o remetente também aloca recursos computa-
cionais para estabelecer a conexão e envia uma última mensagem para
estabilizar a conexão, chamada de ACK (de acknowledge – reconheci-
mento), que mostra que ele recebeu a mensagem anterior. Após o esta-
belecimento da conexão, ambos os computadores podem trocar dados
de forma confiável. A figura 5.1 mostra o processo de conexão TCP fa-
zendo uma analogia com o início de uma conversa humana.

1 - A estação inicia a requisição de conexão ao servidor -


“Quero conversar” (SYN)

SYN

2 - O servidor responde ao cliente - “Estou pronto” (SYN/ACK)

SYN/ACK

3 - A estação envia o reconhecimento para estabelecer conexão -


“Vamos lá” (ACK)

ACK

   Figura 5.1 – Estabelecimento de conexão TCP

Licenciatura em Informática
103
A Camada de Transporte

Por que o uso de três mensagens para estabelecimento de conexão


com o TCP? Cientistas provaram que a troca de três mensagens
é suficiente e necessária para assegurar o acordo não ambíguo
apesar da perda, duplicação e possível atraso de pacotes. Ou seja,
qualquer quantidade menor de mensagens não garantiria uma co-
municação confiável.

Já quando um computador decide encerrar uma conexão TCP em an-


damento, também existe uma sequência de mensagens para fechamento
de conexão. A primeira mensagem enviada é chamada de FIN (de Fi-
nalize – Finalizar) e o computador que a enviou espera, então, por uma
mensagem ACK do outro computador para confirmar o recimento da
mensagem FIN. Após isto, ele também espera por uma mensagem FIN
vinda do computador receptor, à qual responde com uma mensagem
ACK encerrando definitivamente a conexão. Na figura 5.2, podemos
observar o processo de fechamento de conexão TCP.

Remetente Receptor

Fechar
FIN

ACK
Fechar

FIN

ACK

Fechada

   Figura 5.2 – Encerramento de conexão TCP

Redes de Computadores
104
Capítulo 5

Uma ferramenta no sistema Microsoft Windows® que é muito útil na


visualização de conexões TCP abertas no computador é a ferramenta
netstat, a qual permite saber quais conexões estão atualmente estabe-
lecidas no computador, bem como os endereços de origem e destino
e as portas sendo usadas. A figura 5.3 mostra um exemplo da saída do
comando netstat.

Figura 5.3 – Exemplo de saída do comando netstat –n

Como pode ser visto na figura 5.1, a saída do comando netstat apresenta
vários campos. O campo Proto indica qual protocolo da camada de trans-
porte está sendo usado na conexão, e como o protocolo TCP é o único da
camada de transporte que estabelece conexão, apenas ele aparece neste
campo. O segundo campo, Endereço Local, indica o endereço IP do seu
computador, e qual porta está sendo usada no seu computador para ini-
ciar uma conexão TCP. O terceito campo, Endereço Externo, indica com
qual computador na Internet foi estabelecida uma conexão e em qual
porta esta conexão foi estabelecida. Por último, o campo Estado, informa
a atual situação da conexão. Se aparecer neste campo o valor ESTABLI-
SHED, quer dizer que a conexão foi estabelecida e está em andamento.
Quando aparece o valor CLOSE_WAIT, quer dizer que o computador já
enviou o pacote FIN para encerrar a conexão, mas espera pelo pacote FIN
do outro computador para que ela seja totalmente encerrada.

Por meio da análise da saída do comando, podemos saber muito sobre


a comunicação em andamento entre o nosso computador e a rede. Por
exemplo: na primeira linha, vemos que existe uma conexão saindo da
interface de loopback na porta 1030 para o endereço da própria má-
quina na porta 1102. A porta 1102 é reservada para o servidor Adobe
que atualiza o programa Adobe Reader®, um leitor de arquivos PDF da

Licenciatura em Informática
105
A Camada de Transporte

empresa com o mesmo nome, ou seja, é a porta usada para atualizar o


programa instalado no computador.

A segunda linha indica a conexão entre o computador e um servidor


Web, ou seja, um servidor que hospeda sites. Este servidor, que fica no
endereço 192.9.162.55 foi conectado à porta 80, que é a porta reservada
para comunicação de acesso a sites por meio do protocolo HTTP, que
será visto no próximo capítulo. Podemos ver também que as terceira,
quarta e quinta linhas também correspondem a conexões a servidores
Web em endereços diferentes, ou seja, são vários sites acessados pelo
navegador do computador. Observe também que todas essas conexões
se encontram em estado de CLOSE_WAIT, ou seja, estão praticamente
fechadas, como foi explicado acima.

A sexta linha indica a conexão do computador com um servidor de e-


mail que está funcionando no endereço 201.39.122.13. Isto pode ser
percebido pelo uso da porta 25 para conexão neste servidor, que é re-
servada para servidores de e-mail, como veremos no próximo capítulo.

A sétima, décima primeira, décima segunda, décima terceira e décima


quarta linhas também indicam conexões a servidores Web na porta 80,
mas, diferentemente das anteriores, estas são conexões ativas, pois no
campo Estado ainda aparecem com o valor ESTABLISHED.

As nona e décima linhas indicam conexões a um servidor de FTP no


endereço IP 201.39.122.52. Isto pode ser percebido pelo uso da porta
21 neste servidor, reservada ao serviço de transferência de arquivos por
meio do protocolo FTP.

A última linha indica a conexão ao endereço 201.39.122.13 na porta 143.


A porta 143 também é reservada a servidores de e-mail, mas diferente
da porta 25 que é usada para envio de e-mails, a porta 143 é usada para
recebimento de e-mails. Veremos mais sobre isso no próximo capítulo.

Por intermédio da análise do comando netstat, foi possível então per-


ceber que o protocolo TCP é usado amplamente por uma grande gama
de aplicações devido à confiabilidade que fornece a elas. Mas como ele
fornece confiabilidade? É o que veremos nas próximas subseções.

Para maiores informações de quais portas TCP e UDP estão re-


servadas a quais serviços na Internet, acesse http://www.iana.org/
assignments/port-numbers

Redes de Computadores
106
Capítulo 5

5.3.2– Retransmissão adaptativa

Uma das técnicas mais importantes para garantir confiabilidade no TCP


é a retransmissão. Quando o TCP envia dados, o remetente compensa
a perda de pacotes implementando um esquema de retransmissão no
qual ambos os lados da comunicação participam. Quando o TCP rece-
be dados, ele devolve uma mensagem de confirmação de recebimento
para o remetente. Sempre que o TCP envia dados, o remetente inicia um
temporizador. Se o temporizador expirar antes da chegada da mensa-
gem de confirmação, o remetente retransmite os dados.

O esquema de retransmissão do TCP é a chave para seu sucesso porque


ele trata da comunicação por meio de uma rede arbitrária que permite
que múltiplos programas aplicativos se comuniquem simultaneamente.
Por exemplo: um aplicativo pode enviar dados por meio de uma co-
nexão via satélite para um computador em outro país, enquanto outro
aplicativo envia dados por meio de uma rede local para um computador
na próxima sala. O TCP deve estar pronto para retransmitir qualquer
mensagem que seja perdida em uma ou outra conexão. A pergunta é:
quanto tempo o TCP deve esperar antes da retransmissão? Espera-se
que as mensagens de confirmação de recebimento de um computador
em uma rede local cheguem dentro de alguns milissegundos. Esperar
demais por tal confirmação deixa a rede ociosa. Desta forma, o TCP
não deve esperar muito tempo antes de retransmitir. Porém, retransmi-
tir após alguns milissegundos não funciona bem em uma conexão de
satélite de longa distância, que possui atrasos bem maiores do que uma
rede local. Com isso, o TCP precisa adaptar o tempo de retransmissão
para uma série de situações possíveis.

Com isso, o TCP posssui um mecanismo de retransmissão adaptativo.


Isto é, o TCP monitora o atraso corrente em cada conexão e adapta o
temporizador para acomodar as condições variáveis.

Como o TCP pode monitorar os atrasos da rede? De fato, o TCP não


pode conhecer os atrasos exatos para todas as partes de uma rede cons-
tantemente. Assim, o TCP estima o atraso de ida e volta para conexão
ativa medindo o tempo necessário para receber uma resposta. Sempre
que o TCP envia uma mensagem para a qual espera uma resposta, ele
registra o tempo em que a mensagem foi enviada. Quando uma resposta
chega, o TCP subtrai o tempo em que a mensagem foi enviada do tempo
atual para produzir uma nova estimativa de atraso de ida-e-volta para
aquela conexão. Como o TCP envia pacotes e recebe confirmações, ele
gera uma sequência de estimativas de ida-e-volta e gera estatísticas para
adaptar o mecanismo de retransmissão à cada situação.

Licenciatura em Informática
107
A Camada de Transporte

5.3.3 – Controle de fluxo

O TCP usa um mecanismo para controlar o fluxo de dados sendo en-


viado de um computador para outro por meio do conceito de janela.
Quando uma conexão é estabelecida, cada lado da conexão aloca espa-
ço na memória para armazenar dados que chegam, e envia o tamanho
desta área de memória para o outro lado. À medida que os dados che-
gam, o receptor envia confirmações que especificam o espaço restante
para armazenar dados. A quantidade de espaço disponível no receptor a
qualquer momento é chamada de janela, e uma notificação que especi-
fica o tamanho é chamada de anúncio de janela. O receptor então envia
um anúncio de janela com cada mensagem de reconhecimento enviada,
expressando qual o tamanho do espaço que resta para armazenar os
pacotes recebidos.

Se o aplicativo receptor pode ler dados tão depressa quanto eles che-
gam, um receptor enviará um anúncio de janela positiva junto com cada
mensagem de reconhecimento. Porém, se o lado remetente operar mais
rápido do que o lado receptor (por exemplo, porque o processador do
computador remetente é mais rápido), os dados que estão chegando irão
acabar enchendo o espaço de memória reservado no receptor, fazendo
com que o receptor anuncie uma janela de tamanho zero. Um remetente
que recebe um anúncio de janela de tamanho zero deve cessar o envio
até que o receptor anuncie novamente uma janela positiva. Desta forma,
é possível controlar o envio de dados para o receptor de forma a ele não
ficar sobrecarregado.

5.3.4 – Controle de congestionamento

Um dos mecanismos mais interessantes do TCP é o mecanismo para


controle de congestionamento na rede. Na Internet moderna, é mais
provável que uma perda de um pacote (ou um atraso extremamente lon-
go) seja causada por um congestionamento do que por um problema
de hardware. Curiosamente, protocolos de transporte que retransmitem
pacotes podem exacerbar o problema de congestionamento, injetando
cópias adicionais de uma mensagem. Se o congestionamento ativa re-
transmissão excessiva, o sistema inteiro pode atingir um estado de co-
lapso por congestionamento, análogo a um engarrafamento em uma
estrada. Para evitar o problema, o TCP sempre usa a perda de pacotes
como uma medida de congestionamento e responde a este congestiona-
mento reduzindo a taxa em que retransmite dados.

Redes de Computadores
108
Capítulo 5

As principais causas do congestionamento na Internet são as gran-


des filas de pacotes formadas nos roteadores e as limitações de
capacidade de transmissão dos enlaces na rede. As filas de pacotes
causam atraso ao demorarem muito para repassar os pacotes ou
descartá-los quando a fila atinge o limite de armazenamento do
roteador. Já as limitações de capacidade na transmissão dos enla-
ces na rede também causam perda e atraso, já que eles se tornam
saturados em momentos de transmissão simultânea de vários
computadores na Internet.

Sempre que uma mensagem é perdida, o TCP inicia o controle de conges-


tionamento. Em vez de transmitir dados suficientes para sobrecarregar a
capacidade do receptor (isto é, o tamanho da janela do receptor), o TCP
inicia enviando uma única mensagem contendo dados. Se a mensagem
de reconhecimento chega sem perda adicional, o TCP dobra a quantidade
de dados enviados e envia duas mensagens adicionais. Se as mensagens de
reconhecimento chegam para aqueles dois, o TCP envia mais quatro pa-
cotes e assim por diante. O aumento exponencial continua até que o TCP
esteja enviando metade da janela anunciada do receptor, quando o TCP
diminui a taxa de aumento. O TCP então aumenta o tamanho da janela
linearmente (enquanto o congestionamento não ocorre).

O esquema de controle de congestionamento do TCP responde bem


ao aumento de tráfego na Internet. Desacelerando rápido, o TCP pode
aliviar o congestionamento. Em sua essência, o TCP evita adicionar re-
transmissões a uma rede congestionada. Mais importante, se todas as
implementações do TCP em todos os computadores seguirem o padrão,
o esquema de controle faz com que todos os remetentes se afastem en-
quanto ocorre um congestionamento, evitando o colapso.

5.4 TCP x UDP

Com tantas garantias oferecidas pelo protocolo TCP, parece estranho


imaginar alguma aplicação que opte por usar UDP no lugar dele, pois,
à parte de sua função de multiplexação/demultiplexação e um mecanis-
mo para verificação de erros, o criador da aplicação que escolher o UDP
no lugar do TCP estará conversando diretamente com o IP. O UDP re-
cebe as mensagens que vêm da camada de aplicação, anexa os campos
de porta de origem e porta de destino, adiciona outros dois campos e
passa os pacotes à camada de rede para que sejam entregues. Justamente

Licenciatura em Informática
109
A Camada de Transporte

por esta simplicidade, algumas aplicações se adaptam melhor ao UDP


que ao TCP. As razões são:

- não há estabelecimento de conexão: o TCP precisa fazer uma troca de


mensagens preliminar antes de começar a enviar dados e o UDP sim-
plesmente envia dados sem nenhuma preliminar formal, com isso não
introduz nenhum atraso para estabelecer uma conexão. Por menor que
seja o tempo gasto para estabelecer uma conexão TCP, muitas vezes ele
faz diferença para alguns tipos de aplicações;

- pequena sobrecarga de cabeçalho de pacote: o pacote TCP tem 20 bytes


só de cabeçalho, enquanto o UDP tem somente 8 bytes de sobrecarga;

- ausência de reserva de recursos: diferentemente do TCP, que reserva re-


cursos do computador de destino para tratar uma conexão estabelecida
pelo computador de origem, o UDP não realiza nenhuma reserva de recur-
sos, pois não existe estabelecimento de conexão. Com isso, um computador
pode ligar com um número muito maior de clientes UDP que TCP.

Desta forma, geralmente, aplicações como servidores de vídeo on-line


usam mais UDP pois, neste caso, o atraso é mais prejudicial à experiência
do que a perda de alguns pacotes. Ter o vídeo congelado por vários segun-
dos é muito mais incômodo na prática do que perder alguns poucos dados
sobre ele e que, muitas vezes, serão imperceptíveis para nossos olhos. Por
outro lado, em aplicações como correio eletrônico (e-mail) e transferência
de arquivos, em que poucos pacotes perdidos podem significar a impos-
sibilidade de entender uma mensagem ou abrir um arquivo, a confiabili-
dade é mais importante que o atraso, e este tipo de aplicação geralmente
trabalha com TCP. Com isso, podemos ver que ambos os protocolos são
usados por aplicações com necessidades e características diferentes.

Para assistir a uma animação que apresenta o processo de estabe-


lecimento e fechamento de conexão TCP, acesse http://www.
netbook.cs.purdue.edu/ e clique em Sample Animations, no
menu do lado esquerdo, e quando for aberto o menu de anima-
ções, clique em TC -3-Way -Handshake. Na parte Connection Es-
tablishment, você pode verificar o processo de estabelecimento de
conexão e na parte Connection Termination, você pode observar o
processo de fechamento da conexão.
Em ambos os casos, é possível observar as mensagens sendo
enviadas entre os dois computadores, de acordo com o que foi
visto na disciplina.

Redes de Computadores
110
Capítulo 5

Prezado aluno,
você teve contato, neste capítulo, com a camada de transporte a qual
realiza um serviço vital para a correta entrega de dados entre apli-
cações comunicantes na Internet. Mas quais são estas aplicações?
Este será o nosso assunto do próximo capítulo, que tata da camada
mais alta da pilha, a Camada de Aplicação.

Como você deve se lembrar, o conjunto de protocolos usados hoje


em dia na Internet é chamado coletivamente de TCP/IP, ou seja,
leva o nome dos protocolos IP e TCP. No início, eles foram pen-
sados como sendo duas partes do mesmo protocolo, mas depois
foram divididos e hoje fazem parte de camadas diferente.

Realize as atividades abaixo e envie-as de acordo com o enunciado


da Tarefa 11 do ambiente:
1 – Qual a função da camada de transporte e qual serviço da ca-
mada de rede ela usa para executar esta função?
2 – Qual a função da multiplexação/demultiplexação no contexto
da camada de rede?
3 – Quais são as principais características do protocolo UDP?
4 – Descreva como é o processo de abertura e fechamento de uma
conexão TCP.
5 – Fale um pouco sobre o processo de retransmissão de pacotes
do TCP.
6 – Descreva o controle de fluxo TCP.
7 – Descreva o controle de congestionamento TCP.
8 - Use o comando netstat -n e cole as telas da saída do comando no
arquivo desta atividade. Após isto, vá ao campo Endereço Externo
e pesquise à qual aplicação pertence cada uma das portas às quais
seu computador está se conectando em outros computadores.

Licenciatura em Informática
A camada de APLICAÇÃO

Prezado aluno,
no capítulo passado você teve contato com a Camada de Transpor-
te, que efetua a entrega de dados entre aplicações sendo executadas
em máquinas diferentes e desta forma, prestando um serviço para a
camada acima dela, a Camada de Aplicação. Esta camada é a mais
alta da pilha de protocolos TCP/IP e, com isso, obviamente, ela não
presta serviços para nenhuma outra camada acima. Na verdade, a
Camada de Aplicação presta serviços aos usuários das redes, nas
várias atividades da atividade humana ligadas ao uso de computa-
dores. Com isso, nesta camada estão protocolos que permitem o en-
vio de e-mails, transferência de arquivos, conversação instantânea,
acesso a sites, etc.
Dessa forma, a visão que um usuário tem da Internet está intima-
mente ligada às aplicações conectadas à rede utilizadas por ele,
fazendo então com que esta camada seja a mais popular dentre
todas.
Neste capítulo, você estudará alguns dos principais protocolos de
rede presentes nesta camada, bem como a função de cada um de-
les. Começaremos pelo DNS, um serviço que muitos não conhecem,
mas que é fundamental para o funcionamento da Internet como a
conhecemos.
Na última parte do capítulo, reuniremos todos os conhecimentos
que você obteve até agora para abordarmos um assunto de funda-
mental importância no uso de computadores: como configurar uma
conexão de acesso à Internet.
Ao final do capítulo, esperamos que você faça todos os exercícios e
tire todas suas dúvidas acerca do capítulo.
Nossa viagem ao mundo das redes e da Internet está quase no fim!
Boa sorte e bons estudos!
112
Capítulo 6

6.1 DNS

O serviço DNS (Domain Name System – Sistema de Nomes de Domínio)


realiza uma função primordial para o funcionamento da Internet, em-
bora muitas pessoas desconheçam sua existência. Isto se deve ao fato de
que ela fica “escondida”, ou seja, não é de conhecimento dos usuários da
Internet. Você deve se lembrar de que falamos, no capítulo 4, que para
que fosse possível entregar pacotes a um computador de destino, era
necessário saber seu endereço IP. Mas quando você acessa um site na
Internet, este site está hospedado em um computador e você não digita
um endereço IP no navegador para acessá-lo, e sim um endereço como
www.empresa.com.br e o site aparece para você.

Entretanto, na prática, quando isso acontece, seu computador acessa o


computador onde o site está hospedado através do endereço IP deste
computador. Mas como então é possível isto, se o que você digitou foi
o endereço do site? Bom, aí que entra o DNS: ele é o serviço respon-
sável por converter o nome que você digitou no endereço IP de um
computador e que é, de fato, a forma como seu computador irá acessar
o computador de destino. A este processo de conversão, chamamos de
resolução de nomes.

Desta forma, é impossível navegar na Internet sem um servidor de DNS


a quem sua máquina possa pedir para resolver os nomes de sites em en-
dereços IPs de computadores, pois o endereço do servidor ao qual sua
máquina pergunta sempre que necessário é gravado na configuração do
seu computador. Usando o comando ipconfig /all, é possível ver o en-
dereço do servidor DNS da sua rede dentre várias outras informações,
o que veremos com mais detalhes mais adiante. Um exemplo de saída
do comando pode ser visto na figura 6.1, na qual podemos observar
que os servidores DNS usados pelo computador possuem endereços
172.16.48.2 e 172.16.48.3.

O comando nslookup possibilita que seja visualizado o processo de


consulta de um nome a um servidor DNS e sua posterior resposta. Um
exemplo de consulta para o site www.ifes.edu.br pode ser visto na figura
6.2, na qual podemos observar que o servidor DNS que responde à re-
quisição do computador é o computador netuno.cefetes.br, que possui
endereço 172.16.48.2. O “:53” que aparece após o endereço se refere à
porta usada pelo serviço. Um servidor DNS geralmente espera por re-
quisições na porta 53 do protocolo UDP, pois precisa de rapidez nas
respostas às consultas feitas.

Licenciatura em Informática
113
A Camada de Aplicação

Figura 6.1 – Saída do comando ipconfig /all, mostrando os servidores DNS da rede

Após isto, podemos ver a resposta da consulta, na qual é informado que


o nome www.ifes.edu.br é referente ao IP 201.39.122.4. Desta forma,
podemos perceber que todo nome de site é referente a um endereço IP
correspondente.

Figura 6.2 – Saída do comando nslookup www.ifes.edu.br

Mas como o servidor DNS da sua rede sabe qual o endereço IP de um dado
site? Ainda que pela saída do comando possamos ter a falsa impressão de
que o servidor DNS já sabe, de antemão, a resposta para todas as consultas
feitas por computadores da rede, isso nem sempre é verdade. Muitas vezes,
para descobrir o endereço de um dado nome, o servidor realiza um proces-
so de resolução que passa por vários servidores ao redor do mundo.

Redes de Computadores
114
Capítulo 6

Com frequência, ouvimos dizer que o sistema DNS é a maior base de


dados do mundo, pois está distribuída entre vários servidores ao re-
dor da Internet. Quando um servidor de nomes local realiza uma bus-
ca para resolver um nome de site, ele geralmente acessa um servidor
especial chamado de servidor raiz. São 13 servidores raiz espalhados
pelo mundo que têm como função responder a requisições de servido-
res que recorrem a ele. Entretanto, raramente estes servidores possuem
o endereço IP buscado e, na verdade, direcionam o servidor que fez a
requisição para outro servidor responsável por um domínio próximo ao
qual se deseja consultar.

Por exemplo: se você digitar www.ifes.edu.br no seu navegador, ele


fará um pedido para o servidor DNS usado por seu computador para
resolver o nome que você busca acessar. Ele entrará em contato com
um servidor raiz que, provavelmente, indicará um servidor .br (res-
ponsável por nomes que tenham .br no final) que, ao ser consultado,
indicará um servidor .edu.br que indicará um servidor responsável
pelo domínio ifes.edu.br, que tem obrigação de responder qual o en-
dereço do site www.ifes.edu.br. De posse desta informação, então, seu
servidor de nomes local informará seu navegador o qual fará o acesso
ao site pelo endereço IP fornecido. A informação obtida pelo servidor
da rede local é guardada no servidor no cache. O cache é utilizado para
que em uma próxima ocasião o servidor possa responder ao cliente
sem precisar consultar todos os servidores consultados na primeira
vez. Este cache é válido por um tempo determinado, depois do qual a
consulta precisa ser refeita.

Desta forma, é possível perceber que um endereço de site é sempre lido


da direita para a esquerda. Assim, temos mais à direita o sufixo de na-
cionalidade (.br, .pt, .fr.) que indica de qual nacionalidade é aquele site.
No caso do exemplo do site www.ifes.edu.br, o sufixo .br indica que este
é um site brasileiro. O sufixo organizacional (.com, .org, .gov) indica
qual a finalidade do site. Por exemplo: um sufixo .com indica que o site
é comercial, um sufixo .edu como o do site do IFES indica que o site tem
fins educacionais. Após isto, vem o nome da organização dona do site,
no caso o IFES e, mais à esquerda, o www que é a indicação de que se
trata de um site.

Na figura 6.3, é possível visualizar um processo de resolução de nomes


para o site www.sistemasabertos.com.br. Nela, podemos observar a con-
sulta ao servidor raiz, que indica um servidor .br o qual, por sua vez,
indica um servidor .com.br o qual por fim indica o servidor do domínio
sistemasabertos.com.br que responde com o endereço IP do site.

Licenciatura em Informática
115
A Camada de Aplicação

Consulta aos Servidores Raízes


Servidores Raízes

Delegação de Consulta

.BR .NET .COM .NL

DSN do DSN do DSN do DSN do


Domínio .BR Domínio .NET Domínio .COM Domínio .NL

DSN do Domínio .COM.BR


.COM

SISTEMASABERTOS DSN do Domínio dos


SISTEMASABERTOS.COM.BR
Resposta:
Endereço: 200.163.79.1

Cliente quer descobrir o endereço


www.sistemasabertos.com.br

Figura 6.3 – Processo de resolução do nome www.sistemasabertos.com.br

Podemos classificar as consultas realizadas em um servidor DNS


em dois tipos: consultas recursivas e consultas interativas. As
consultas interativas acontecem quando o servidor consulta um
outro servidor e recebe a resposta diretamente. A consulta recur-
siva acontece quando o cliente pergunta o endereço IP de um site
a um servidor e este pergunta a vários servidores em nome do
cliente até obter a resposta e entregá-la ao cliente. Desta forma,
podemos perceber que o processo de resolução de um nome pelo
DNS envolve geralmente os dois tipos de consultas.

Redes de Computadores
116
Capítulo 6

6.2 FTP

O FTP (File Transfer Protocol – Protocolo de Transferência de Arquivos)


é um dos serviços mais antigos da Internet e até hoje em dia é utilizado
para transferências simples e rápidas de arquivos entre computadores.
Então, o servidor FTP é, basicamente, um computador que autentica
um usuário válido existente no servidor. Uma vez, autenticado, este usu-
ário pode organizar sua área no servidor como bem quiser, criando e
removendo diretórios, transferindo arquivos do servidor para o cliente
(operação chamada de download) ou do cliente para o servidor (opera-
ção chamada de upload).

Geralmente, um servidor FTP espera por requisições do cliente na porta


21 do protocolo TCP, usando também a porta 20 para efetuar as opera-
ções de transferências de dados. Observe que no FTP a confiabilidade
na trasferência de dados é fundamental, pois alguns pacotes perdidos de
um arquivo sendo transferido resultam em um arquivo corrompido.

O serviço FTP pode tanto ser acessado via o Windows Explorer em sis-
temas Microsoft Windows® ou via comando, usando o Prompt de co-
mandos. Na figura 6.4, podemos ver um exemplo de acesso ao servidor
FTP do IFES Campus Cachoeiro via comandos. Observe que, após o
comando ftp ftp.ci.cefetes.br, é feita uma resolução de nomes pelo ser-
vidor DNS da rede local e feito um acesso ao IP do servidor de FTP do
Campus. Após isto, é pedido um nome de usuário válido no servidor e,
após digitar o usuário jpaulo e sua respectiva senha, o acesso ao servidor
de FTP será garantido.

Figura 6.4 – Acesso ao servidor de FTP via prompt de comandos

Uma outra maneira de acessar um servidor de FTP é via o Windows Ex-


plorer, digitando na barra de endereços ftp://ftp.ci.cefetes.br. Um exem-
plo disto, mostrando as pastas criadas no servidor do Campus, pode ser
visto na figura 6.5.

Licenciatura em Informática
117
A Camada de Aplicação

Figura 6.5 – Acesso ao servidor de FTP via Windows Explorer

6.3 Correio eletrônico

O correio eletrônico existe desde o início da Internet. Era uma das


aplicações mais populares quando ainda estava no início, mas ficou
mais e mais elaborado e poderoso ao longo dos anos e continua em
evolução. Até agora, é uma das aplicações mais importantes e de maior
sucesso na Internet.

Tal como no correio normal, o e-mail é um meio de comunicação no


qual os emissores e receptores enviam e recebem mensagens quando for
mais conveniente para eles, ou seja, não existe necessidade do emissor e
receptor estarem com os computadores conectados à Internet ao mes-
mo tempo para que a comunicação seja possível.

Podemos destacar três elementos básicos no envio de um e-mail: agen-


tes de usuário, servidores de e-mail e o protocolo SMTP (Simple Mail
Tranfer Protocol – Protocolo de Transferência de Correio Simples). Já
no recebimento de e-mail, podemos destacar três elementos também: os
agentes de usuário, servidores de e-mail e um protocolo de recebimento
de e-mail, como o POP3 (Post Office Protocol versão 3) ou IMAP (Inter-
net Mail Access Protocol). Veremos ambas as situações a seguir.

Redes de Computadores
118
Capítulo 6

6.3.1 Envio de e-mail

O processo de envio de um e-mail se inicia quando você usa um progra-


ma cliente de e-mail, como o Outlook Express® ou o próprio navega-
dor aberto na página do seu provedor de e-mail, e redige uma mensagem
como remetente (você mesmo), destinatário, assunto e conteúdo. A este
programa que você usa para digitar o e-mail chamamos de agente de usu-
ário, pois é o que faz a interação do usuário com os servidores de e-mail.

Digamos, como exemplo, que seu e-mail é fulano@remetente.com.br


e o e-mail da pessoa para quem você enviará o e-mail é beltrano@des-
tinatario.com.br . Pois bem, quando você digita seu e-mail e envia, ele
primeiramente é enviado para o servidor de e-mail do domínio reme-
tente.com.br, ou seja, do seu provedor de e-mail. Ao chegar ao provedor
de e-mail, este consultará um servidor DNS e buscará resolver o nome
destinatario.com.br, para saber qual o endereço IP do servidor respon-
sável pelos e-mails com este nome. De posse desta informação, ele usará
o protocolo SMTP (que usa a porta TCP 25) para enviar o e-mail do
servidor do remetente para o servidor do destinatário, onde ele ficará
aguardando que o usuário destinatário o acesse.

Podemos ver, então, por este exemplo, que o funcionamento do serviço


de e-mail tem uma profunda relação com o funcionamento do DNS.
Sem um servidor DNS a quem perguntar, fica impossível, por exemplo,
enviar um e-mail destinado a jpaulo@ifes.edu.br, pois é necessário saber
qual servidor de e-mail é responsável pelos e-mails que possuem o IFES
como seu provedor.

6.3.2 Recebimento de e-mail

O processo de recebimento de e-mail se inicia quando o usuário acessa


sua caixa postal, ou seja, seu espaço reservado no servidor, para visu-
alizar seus e-mails. Este acesso é feito utilizando-se um protocolo de
recebimento de e-mail, como o POP3 (que usa a porta TCP 110) ou
IMAP (que usa a porta TCP 143), e para visualizar os e-mails o usuário
geralmente usa um agente de usuário que pode ser um programa como
o Outlook Express®, citado anteriormente, ou o próprio navegador.

Uma vez conectado ao servidor, o usuário pode fazer o download de seus


e-mails para seu computador, organizá-los em pastas no próprio servidor
ou apagá-los, liberando espaço para que novos e-mails sejam recebidos.

Geralmente, todo provedor de e-mail (como Hotmail, Gmail, Yahoo,


etc) possuem limites tanto para o tamanho dos e-mails enviados quanto
para a caixa postal do usuário, para que seja possível gerenciar diversas

Licenciatura em Informática
119
A Camada de Aplicação

contas de usuário dentro de um mesmo servidor. Quando estes prove-


dores são acessados através de um site, na verdade o envio de e-mail se
faz através do protocolo HTTP e não SMTP.

Foi possível perceber que, tanto o recebimento quanto o envio de e-


mails, são operações que necessitam de confiabilidade, pois a perda de
alguns poucos pacotes pode tornar uma mensagem ilegível, inutilizando
o trabalho de enviá-la. Desta forma, todos os protocolos que trabalham
com correio eletrônico usam, por padrão, o protocolo TCP.

Apesar de ambos serem usados para recebimento de e-mails, exis-


tem grandes diferenças entre os protocolos POP3 e IMAP. Além
de funcionarem em portas diferentes, o POP3 é mais simples e
mais antigo que o IMAP, servindo basicamente para acesso e do-
wnload de mensagens do servidor para o computador do cliente.
Já o IMAP tem mais recursos, como por exemplo, a possibilidade
de organizar as mensagens dos usuários em pastas no servidor,
facilitando uma posterior busca.

6.4 Web

Até a década de 1990, a Internet era usada primordialmente por pes-


quisadores, acadêmicos e estudantes universitários para se interliga-
rem com computadores remotos, transferirem arquivos entre compu-
tadores e enviar e receber notícias e e-mails. Embora estas aplicações
fossem e continuem a ser muito úteis, a Internet não era conhecida
fora das comunidades acadêmicas e de pesquisa. Então, no início da
década de 1990 entrou em cena uma nova aplicação importantíssima,
a World Wide Web (algo como Vasta Teia Mundial). A Web é a
aplicação da Internet que chamou a atenção do público em geral e
transformou drasticamente a forma como as pessoas interagem dentro
e fora do trabalho. Além disso, ela transformou a Internet na única
rede mundial existente atualmente.

Muitas pessoas acham que a Internet se resume à Web, ou seja, só aos


sites pelos quais navegamos. Mas sabemos que a Internet é muito mais
que a Web, ou seja é um conjunto de aplicações dos mais variados tipos,
como transferência de arquivos e correio eletrônico, que não necessa-
riamente têm alguma relação com um site. Entretanto, é inegável que,
Redes de Computadores
120
Capítulo 6

apesar de ser apenas uma aplicação da Internet, a Web é seguramente,


sua aplicação mais popular.

Apesar da variedade de utilizações que encontramos em sites na Web,


ela é basicamente uma aplicação cliente-servidor como as estudadas até
aqui. Ou seja, existe um cliente, o qual é um navegador (como o Internet
Explorer® ou o Mozilla Firefox®) que acessa um servidor Web, que é
uma aplicação que tem por função hospedar sites, ou seja, guardá-los e
depois fornecê-los caso um cliente os requisite. Este processo de inte-
ração entre cliente e servidor é feito por um protocolo, o HTTP (Hyper
Text Transfer Protocol – Protocolo de Transferência de Hipertexto), e o
conteúdo da página geralmente é criado usando a linguagem HTML
(Hyper Text Markup Language – Linguagem de Marcação de Hipertex-
to), dentre outras tecnologias. Por conta disto, geralmente, quando aces-
samos um site, colocamos primeiro “http//” antes do endereço do site
para mostrar que usaremos o protocolo HTTP. Caso não coloquemos
esta informação, geralmente o navegador a completa automaticamente.

Então, quando você digita um endereço de um site no seu navegador,


este entra em contato com o servidor DNS da sua rede local e pede para
que ele resolva o endereço daquele site em um endereço IP. Feito isto, o
navegador acessa o servidor web que hospeda o sitepor meio do ende-
reço IP do computador e requisita o site que o usuário deseja visualizar.
Uma vez tendo requisitado, o servidor web mandará o site para que seja
visualizado no computador do usuário. Mais uma vez podemos ver que
o DNS é fundamental para o correto funcionamento da aplicação.

A Web é mais uma aplicação que necessita de confiabilidade para funcionar,


dada a importância de muitas informações hospedadas em sites ao redor do
mundo. Com isso, ela também usa o protocolo TCP na porta 80.

Existem duas formas de conexão no protocolo HTTP: uma é cha-


mada de persistente e a outra de não-persistente. Na conexão não-
persistente, se uma página Web possui texto e imagens, então será
aberta uma conexão para acessar o texto e depois será aberta uma
conexão separada para cada uma das imagens que compõem o
site: já na conexão persistente, uma única conexão é o bastante
para realizar o download tanto do texto quanto das imagens exis-
tentes na página Web.

Licenciatura em Informática
121
A Camada de Aplicação

6.5 DHCP

O protocolo DHCP (Dynamic Host Configuration Protocol – Protocolo de


Configuração Dinâmica de Computadores) é muito usado em redes na
qual a configuração de rede das máquinas não é configurada nos próprios
computadores, mas sim em um servidor que empresta estas configurações
por um tempo determinado. Isto pode parecer estranho a princípio, mas
é muito mais comum do que você possa imaginar. Em redes configuradas
desta forma, o administrador não precisa se preocupar em configurar a
rede máquina a máquina, pois os parâmetros como IP, máscara de sub-
rede, gateway padrão e servidor DNS são passados automaticamente pelo
servidor DHCP da rede quando a máquina é ligada.

Entretanto, o computador ao ser ligado, ainda não possui endereço IP,


ele apenas o recebe quando entra em contato com um servidor DHCP
na rede. Mas então, como a máquina pode entrar em contato com um
servidor DHCP na rede, se ela não possui endereço IP e, com isso, não
sabe em que rede está? Vejamos, então, como este processo é realizado.

Quando um computador configurado para receber um endereço IP auto-


maticamente do servidor DHCP é ligado, ele manda uma mensagem cha-
mada de DCHP DISCOVER para o endereço de broadcast limitado da
rede, o endereço 255.255.255.255. Foi dito, no capítulo 4, que este endereço
é geral, ou seja, não importando o endereço da rede na qual você se encontra, se
você enviar um pacote para este endereço, ele chegará a todas as máquinas da sua
rede. Isto é fundamental, já que o computador ainda não tem uma configuração de
rede e, consequentemente, não faz ideia sobre de qual rede ele faz parte.

Como esta mensagem DHCP DISCOVER é enviada para todos os com-


putadores da rede, ela inevitavelmente chegará a um servidor DHCP, caso
exista algum ativo na rede. Este servidor, ao receber a mensagem, res-
ponderá com uma mensagem DHCP OFFER a qual contém uma oferta
de endereço IP a ser emprestado para este computador. Este IP ofertado
é retirado de uma faixa de IPs que o servidor tem disponível para ofere-
cer para as máquinas da rede. Ao receber esta mensagem, o computador
responde com uma mensagem DHCP REQUEST, requisitando formal-
mente a configuração que lhe foi oferecida, para que ele possa participar
da rede. A esta mensagem o servidor DHCP responde com a mensagem
DHCP ACK, confirmando o empréstimo e selando o acordo.

Após receber a mensagem DHCP ACK, o cliente se configurará com os


parâmetros passados pelo servidor e estará pronto para participar da
rede como qualquer outro computador. Vale notar que este processo é
automático, ou seja, o usuário do computador em si não tem contato
com todo este processo de negociação ocorrido.
Redes de Computadores
122
Capítulo 6

Como foi dito, logicamente, o empréstimo de endereço IP não é eterno


(se fosse, não seria empréstimo e sim, doação). Então, de tempos em
tempos, a máquina tem que renovar o empréstimo através do processo
citado acima e não existe garantia de que o computador vá receber o
mesmo IP de antes. Para saber por quanto tempo você pode ficar com o
mesmo endereço IP sem ter que renová-lo, você pode usar o comando
ipconfig /all. Usando o exemplo de saída anterior, podemos ver na figura
6.6 as informações referentes ao empréstimo. Pelos campos Concessão
Obtida e Concessão expira podemos ver que o tempo de empréstimo é
exatamente de um dia, mas este tempo é totalmente configurável pelo
administrador da rede de acordo com suas necessidades. O protocolo
DHCP usa a porta 67 do protocolo UDP.

O protocolo DHCP está cada vez mais sendo usado em redes,


por conta da facilidade de configuração dos computadores que
ele proporciona. Provedores de Acesso (Velox, Claro, Vivo), redes
sem fio e mesmo redes fixas de empresas usam este procotolo para
configurar de forma automática a rede em computadores.

Figura 6.6 – Saída do comando ipconfig /all, indicando o tempo de empréstimo do


endereço IP

Licenciatura em Informática
123
A Camada de Aplicação

6.6 Configuração de rede

Agora que já vimos as camadas e protocolos do modelo TCP/IP, está na


hora de abordarmos um assunto que, apesar de simples, é primordial
para o uso de redes em computadores: como realizar a configuração de
rede em um computador doméstico.

Primeiramente, a configuração de rede pode ser de dois tipos: automá-


tica ou manual. Se ela for automática, é porque é feita através de um
servidor DHCP, que envia todas as informações para a máquina, ha-
vendo a necessidade de poucas configurações. Para saber se sua confi-
guração é manual ou automática, você pode acessar Painel de Controle
 Conexões de Rede  Conexão Local  Propriedades  Protocolo
TCP/IP  Propriedades. Se a sua tela de configuração estiver com as
opções Obter um endereço IP automaticamente e Obter o endereço dos
servidores DNS selecionadas, isso indica que sua configuração é auto-
mática, e você recebe os parâmetros da rede diretamente de um servi-
dor DHCP. Um exemplo de computador com configuração automática
pode ser vista na figura 6.7.

Caso sua configuração seja manual, então você precisa configurar qua-
tro parâmetros básicos:

- Endereço IP – todo computador precisa ter um endereço IP para par-


ticipar de uma rede.

- Máscara – o computador precisa ter a máscara de sub-rede configura-


da para saber de qual rede participa.

- Gateway Padrão – o gateway padrão é o roteador da rede onde o


computador está e que tem ligação direta com a Internet, ou seja, ele
é a rota de saída do computador se ele quiser acessar um site, mandar
um e-mail, etc.

Redes de Computadores
124
Capítulo 6

Figura 6.7 – Exemplo de computador com configuração de rede automática

- Servidor DNS – é necessário informar o IP do servidor DNS da sua


rede local para que ele possa resolver os nomes de sites que você acessa
no navegador. Sem ele, você consegue acessar a Internet, mas não con-
segue navegar pela Web.

Não se pode colocar um endereço IP aleatoriamente no computador sem


relação com os outros endereços da rede, pois o computador não poderá
se comunicar. No caso da configuração manual, é necessário informar-se
com o administrador da sua rede ou com seu provedor de acesso à Inter-
net quanto ao endereço que pode ser utilizado na sua máquina. Na figura
6.8, temos um exemplo de configuração com os seguintes parâmetros:

Endereço IP: 192.168.1.10


Máscara de sub-rede: 255.255.255.0
Gateway Padrão: 192.168.1.1
Servidor DNS: 192.168.1.2 e 192.168.1.3

Licenciatura em Informática
125
A Camada de Aplicação

Figura 6.8 – Exemplo de computador com configuração de rede manual

Observe que, na figura, são configurados dois servidores de DNS. Isto


é o normal, pois caso um servidor falhe, existe o outro para ser usado
para consultas. Além disso, o gateway padrão tem o primeiro endereço
da rede, 192.168.1.1. Isto é um padrão, embore não seja obrigatório.

As configurações vistas aqui só podem ser feitas por um usuário com


privilégios de administrador no sistema. Caso você seja um usuário li-
mitado, não será possível executá-las e receberá uma mensagem de erro.
Após fazer as configurações, você pode verificar se elas foram gravadas
corretamente no computador através do comando ipconfig.

Se todas as configurações estiverem corretas, você estará apto a partici-


par da Internet. Seja bem-vindo ao admirável mundo novo das redes!

Redes de Computadores
126
Capítulo 6

Prezado aluno,
caminhamos juntos pelo mundo das redes, e aprendemos sobre to-
das as camadas existentes que permitem que uma informação gera-
da por um programa em um computador alcance outro programa
em outro computador. Ou seja, vimos como é possível que estejamos
todos conectados pela Internet.
Agora, nossa jornada inicial acabou com o nível mais alto do mo-
delo TCP/IP, a Camada de Aplicação. No próximo capítulo, teremos
uma breve visão de alguns tópicos avançados que permeiam o as-
sunto de redes, assim sendo os conhecimentos obtidos até aqui serão
primordiais para que você possa entendê-lo.
Continuemos juntos no fim de nossa caminhada!
Bons estudos!

No link Animação sobre Camada de Aplicação está uma anima-


ção sobre o funcionamento de uma conexão não-persistente entre
um navegador e um servidor Web. Para entendê-la e executá-la,
sigas as instruções presentes na página do link, onde também
existe uma explicação sobre a dinâmica da animação.

Licenciatura em Informática
127
A Camada de Aplicação

Realize as atividades abaixo e envie-as de acordo com o enunciado


da Tarefa 13 do ambiente:
1 - Qual a função da camada de aplicação e qual serviço da cama-
da de transporte ela usa para executar esta função?
2 - Use o comando nslookup cead.ifes.edu.br e depois cole a tela
da saída do comando no arquivo desta atividade. Informe qual o
endereço IP do servidor web que hospeda este site e, após isto, ex-
plique como o servidor DNS da sua rede local conseguiu resolver
este nome corretamente.
3 - O usuário anônimo é um usuário que tem acesso a qualquer
servidor FTP mas só pode visualizar os arquivos do servidor, não
tendo autorização para gravar nada novo. Teste isto no servidor do
IFES – Campus Cachoeiro digitando no terminal ftp ftp.ci.cefetes.
br e digite como usuário anonymous (anônimo em inglês), não
havendo a necessidade de senha. Após se logar no servidor, faça um
teste digitando mkdir seunome e veja o erro que aparecerá. Depois
cole a tela com esta saída no arquivo da atividade. Observação: lem-
bre-se de colocar seu nome após o comando mkdir. Este comando
cria um diretório com o nome indicado, o seu, no caso.
4 - Descreva como é o processo de envio e recebimento de um e-
mail utilizando os protocolos SMTP, POP3 e IMAP.
5 - Explique a diferença entre uma conexão HTTP persistente e
HTTP não-persistente.
6 - Explique como é o processo de empréstimo de um endereço
IP feito por um servidor a um computador, citando quais são as
mensagens envolvidas no processo.
7 - Digite o comando ipconfig /all e cole a tela com esta saída no
arquivo da atividade. Após isto, informe se a sua configuração de
rede é manual ou automática. Se for manual, informe: endereço
IP, máscara, gateway padrão e servidor DNS. Se for automática,
informe: endereço IP, máscara, gateway padrão, servidor DNS,
endereço do servidor DHCP e os campos Concessão Obtida e
Concessão Expira.

Redes de Computadores
128
Capítulo 6

Licenciatura em Informática
Tópicos avançados em
redes de computadores

Prezado aluno,
no capítulo passado você teve contato com a Camada de Aplicação,
a camada mais acima na pilha de protocolos TCP/IP que presta
serviço aos usuários finais dos sistemas. Com isso, nosso estudo bá-
sico sobre redes está finalizado.
Neste capítulo, abordaremos tópicos avançados sobre o estudo de
redes que são: segurança em redes, redes multimídia, qualidade de
serviço em redes e gerência de redes. Nossa abordagem sobre estes
assuntos será propositalmente breve. Será apenas feita uma abor-
dagem inicial sobre cada assunto, na qual serão apresentandos os
tópicos do trabalho que vocês escolherão para se aprofundarem.
Ao final do capítulo, leiam as intruções sobre o último trabalho da
disciplina.
Agradeço a todos vocês que embarcaram comigo nesta viagem. Es-
pero que o estudo das redes tenha sido para vocês tão interessante
como é para mim. Muito obrigado por tudo!
Bons estudos e boa caminhada no curso!

7.1 Segurança em Redes

Apesar de existir desde a Antiguidade, a preocupação com a segurança


da informação tem se tornado cada vez mais relevante em nosso mun-
do atual, em que estamos cada vez mais dependentes dos sistemas de
informação, os quais estão cada vez mais conectados a outros sistemas
através da Internet.

A Internet é potencialmente uma rede insegura por várias razões. Primei-


ramente, a Internet é uma rede de alcance mundial, o que permite que um
atacante de uma parte do mundo consiga atacar um servidor em outra par-
te de forma anônima. Segundo, por ser uma rede formada por tecnologias
muito diferentes (a única exigência é usar a pilha TCP/IP), é possível que
pacotes enviados sejam transferidos através de equipamentos potencial-
mente inseguros que podem ser acessados por pessoas não-autorizadas.
130
Capítulo 7

Cada vez mais, vemos em jornais a ação de hackers, criminosos dotados


de grande conhecimento sobre informática que o usam para causar des-
truição ou roubo de informações. Ainda que a mídia use indistintamen-
te o termo hacker tanto para criminosos como pessoas que trabalham
com segurança da informação, é válido fazer aqui uma diferenciação.
Geralmente denominamos de hacker o profissional dotado de gran-
des conhecimentos de informática, mas que os usa para fins benéficos
geralmente trabalhando na proteção de redes de computadores. Já os
usuários que utilizam o conhecimento para fins ilícitos são geralmente
chamados de crackers.

Os crackers podem agir em um ambiente computacional de duas formas


básicas: através de um software preparado para causar algum dano com-
putacional ou roubar alguma informação, conhecido como malware. A
classe de malwares mais popular é, sem sombra de dúvida, os vírus.

A segunda forma de um cracker agir em um ambiente é geralmente por


meio de um processo de invasão, que pode ou não acontecer após a
instalação de um malware na máquina atacada. Apesar da forma ro-
manceada, quase mística que ataques computacionais são mostrados no
cinema, o cracker não é um ser dotado de habilidades mágicas ou sobre-
naturais. Na verdade, grande parte dos ataques decorrem da manipula-
ção de protocolos da pilha TCP/IP, como por exemplo:

• ARP Poisoning (Envenenamento do ARP) – é um ataque decorrente


da manipulação da tabela ARP de um computador.

• SYN FLOODING (Inundação de SYN) – este ataque manipula o


processo de abertura de conexão do protocolo TCP.

• UDP FLOODING (Inundação de UDP) – visa a manipular o pro-


cesso de envio de dados por meio do protocolo UDP.

• Ping da Morte e SMURFING – são ataques que acontecem por meio


de pacotes ICMP.

• DNS Poisoning (Envenamento do DNS) – visa a manipular o pro-


cesso de resolução de nomes DNS para tirar proveito e desviar o
usuário para um site falsificado.

• MAC Flooding (Inundação de MAC) – tem por objetivo causar uma


sobrecarga em switches, fazendo com que operem como hubs.

• DDOS (Distributed Denial of Service – Negação de Serviço Distribuída)


– é um ataque que visa a tornar inoperante um servidor por meio de
envio maciço de requisições pelo serviço que este servidor fornece.
Licenciatura em Informática
131
Tópicos Avançados em Redes de Computadores

Dessa forma, é possível perceber que o uso malicioso de um protoco-


lo legítimo da Internet acaba resultando em um ataque computacional.
Para evitar este tipo de ocorrência, a segurança da informação visa a
garantir três propriedades básicas:

• confidencialidade: garantir que as informações confidenciais não


serão reveladas a pessoas não autorizadas.

• Integridade: garantir a consistência dos dados, prevenindo a criação


não autorizada e a alteração ou destruição dos dados.

• Disponibilidade: garantir que usuários legítimos não terão o acesso


negado a informações e recursos.

Para garantir essas propriedades, várias técnicas podem ser usadas e


duas das mais importantes são os firewalls e a criptografia.

Os firewalls são sistemas que por intermédio da análise de campos de


cabeçalhos, conseguem filtrar que tipo de pacote tem permissão ou não
de acessar a rede de acordo com as regras configuradas pelo administra-
dor da rede. Desta forma, para que seu uso possa ser efetivo, o firewall
deve se situar em algum lugar onde os pacotes da rede obrigatoriamente
tenham que passar para chegar à Internet, de forma que ele possa filtrá-
los o máximo possível. Desta forma, o firewall muitas vezes é instalado
no gateway padrão da rede.

Um firewall bem configurado pode evitar uma série de tipos de inva-


sões diferentes, protegendo os dados dos sistemas conectados a rede,
além de controlar o que os computadores da rede local podem ou não
acessar na Internet.

Diferente do firewall, que visa a proteger os sistemas de serem acessa-


dos por usuários não autorizados, a criptografia não visa impedir que a
informação seja acessada, e sim que seja impossível entendê-la mesmo
que alguém não autorizado consiga acessá-la. Desta forma, a criptogra-
fia é uma técnica para esconder a informação, embaralhando-a. Para tal,
são usados diversos algoritmos com características particulares.

Os desafios enfrentados pelos especialistas em segurança de redes e


da informação são cada vez maiores, tendo em vista que somos cada
vez mais ameaçados, das mais diversas formas, no uso da Internet
no dia-a-dia.

Redes de Computadores
132
Capítulo 7

Para visualizar uma animação que mostra a filtragem de pacotes


efetuada por um firewall, acesse http://www.netbook.cs.purdue.
edu, clique em Sample Animations, e clique na animação Firewall
– Packet Filtering. Nesta animação é possível ver como o firewall
verifica no cabeçalho dos pacotes que chegam à rede se o ende-
reço IP de destino e se a porta de destino do pacote são válidos.
Caso sejam, o acesso é permitido; se não, o pacote é descartado.

7. 2 Redes multimídia

Cada vez mais tem surgido na Internet uma crescente demanda por apli-
cações multimídias. Por multimídia, entende-se o uso de mais de uma
mídia ao mesmo tempo, ou seja, além do uso de mensagens de texto, a
multimídia contempla o uso do som, da imagem e do vídeo. Com isso,
essas aplicações são geralmente usadas para oferecer uma experiência de
interatividade ao usuário, seja por meio de um jogo em rede, da exibição
de um vídeo contido em um site ou uma rádio on-line, por exemplo.

Por conta desta necessidade de oferecer interação ao usuário, geralmen-


te, as aplicações multimídias são sensíveis ao atraso. Pense em uma rá-
dio on-line sendo ouvida através da Internet. Se começarem a existir
intervalos muito grandes (maiores que 10 segundos) entre as transmis-
sões, o usuário ficará entediado e a sensação de interatividade se perde-
rá. Por outro lado, as aplicações multimídia geralmente são tolerantes à
perda. Isto quer dizer que a perda de alguns pacotes não implica grande
prejuízo para as aplicações. Pense de novo no caso da rádio on-line: a
perda de alguns pacotes causaria um ruído na transmissão ou, no má-
ximo, uma perda momentânea de qualidade, o que atrapalharia muito
pouco a experiência de interatividade.

Requisitos como esses fazem com que as aplicações multimídia, quase


que em sua totalidade, utilizem o protocolo UDP como protocolo da
camada de transporte, enquanto aplicações como e-mail e transferência
de arquivos, geralmente elásticas em relação ao tempo (o atraso de en-
trega de um e-mail não gera grandes consequências geralmente) e into-
lerantes à perda (a perda de alguns pacotes de uma mensagem de e-mail
pode resultar em uma mensagem ilegível) usam geralmente o TCP.

Veremos, então, nas próximas subseções, as classes de aplicações multi-


mídias existentes.

Licenciatura em Informática
133
Tópicos Avançados em Redes de Computadores

7.2.1 – Aúdio e Vídeo de Fluxo Contínuo armazenados

Nesta classe de aplicações, clientes requisitam, sob demanda, arquivos


de áudio e vídeo comprimidos que estão armazenados em servidores.
Arquivos de áudio armazenados podem conter uma música, uma pales-
tra, um jogo de futebol, dentre outras coisas. Arquivos de vídeo podem
conter videoclipes, episódios de séries de TV ou filmes. Esta classe de
aplicações possui três características básicas:

• Mídia armazenada: o conteúdo multimídia destas aplicações foi pré-


gravado e, com isso, está armazenado em um servidor. Com isso, o
usuário pode pausar, voltar ou avançar o conteúdo da gravação em
seu computador.

• Fluxo Contínuo: em uma aplicação de aúdio/vídeo armazenado, nor-


malmente o cliente inicia uma reprodução de aúdio/vídeo alguns se-
gundos após começar a receber o arquivo do servidor. Isto significa
que o cliente estará reproduzindo áudio/vídeo de uma parte do ar-
quivo ao mesmo tempo em que está recebendo do servidor partes do
arquivo que estão mais à frente. Esta técnica visa a evitar ter que fazer
o download do arquivo inteiro antes de reproduzi-lo, o que aumen-
taria a demora em iniciar a transmissão. Um exemplo de site popular
que usa este tipo de técnica é o YouTube, disponível em www.youtube.
com. Para reprodução de áudio/vídeo desta forma temos vários pro-
gramas, como o Windows Media Player®, por exemplo.

• Reprodução Contínua: assim que se inicia a reprodução do conteú-


do multimídia, ela deve prosseguir de acordo com a temporização
original da gravação. Isso quer dizer que enquanto o usuário está
visualizando parte de um vídeo, a outra parte já tem que estar sendo
baixada do servidor para que ele possa ter uma sensação de exibição
contínua do vídeo. Desta forma, os dados devem ser recebidos do
servidor a tempo de serem visualizados pelo cliente. Em conexões
muito lentas, é possível observar que após a exibição de uma parte
do vídeo, existe uma demora substancial para a exibição da próxima
parte, o que frusta a sensação de interatividade do usuário.

7.2.2 – Aúdio e vídeo de fluxo contínuo ao vivo

Esta classe de aplicações é semelhante à transmissão tradicional de rá-


dio e televisão, exceto que a transmissão é realizada pela Internet. Estas
aplicações permitem que um usuário receba uma trasmissão de rádio
ou televisão ao vivo de qualquer parte do mundo. Como o fluxo con-
tínuo de áudio e vídeo não é previamente armazenado, um cliente não
pode adiantar uma transmissão que está sendo recebida.

Redes de Computadores
134
Capítulo 7

Como acontece com a multimídia armazenada de fluxo contínuo, ela re-


quer reprodução contínua, embora as limitações de temporização sejam
menos severas do que as aplicações interativas em tempo real. Atrasos
de até dezenas de segundos desde o instante em que o usuário requisita
a entrega/reprodução de uma transmissão ao vivo até o início da repro-
dução podem ser tolerados.

7.2.3 Áudio e vídeo interativos em tempo real

Esta classe de aplicações permite que as pessoas usem áudio/vídeo para


se comunicarem entre si em tempo real. Áudio interativo em tempo
real pela Internet é geralmente denominado de telefonia pela internet,
conhecida popularmente por VOIP (Voice over IP – Voz sobre IP). A
VOIP promete revolucionar a forma de comunicação via telefone, ofere-
cendo tarifas mais baixas que as da telefonia convencional. Também se
encontram nesta classe, os programas de conversação instântanea que
suportam a interação por vídeo e áudio, os quais funcionam como fer-
ramentas de video-conferência como o Windows Live Messenger®, o
Skype® e o NetMeeting®.

Uma outra classe de aplicações que não oferecem vídeo e áudio reais
mas que os usam para interatividade são os jogos em rede e os ambien-
tes virtuais colaborativos, que fazem uso da realidade virtual para a in-
teração entre usuários.

Note então, que para uma aplicação de áudio/vídeo em tempo real, um


usuário pode falar ou se mover a qualquer instante. Para uma conver-
sação com interação de vários usuários, o atraso entre o momento que
um usuário fala ou se move e o momento que a ação se manifesta nos
hospedeiros receptores deve ser menor do que algumas centenas de mi-
lisegundos para que a sensação de interatividade seja mantida.

Existem vários protocolos desenvolvidos especialmente para as


necessidades de uma aplicação multimídia, dentre as quais pode-
mos citar o RTSP, RTP e o RTCP. Já a VOIP possui dos protocolos
próprios: o SIP e o padrão H.323.

Licenciatura em Informática
135
Tópicos Avançados em Redes de Computadores

7.3 Qualidade de serviço na internet

Vimos, na seção passada, que as aplicações multimídias têm como de-


nominador comum a necessidade de atrasos baixos em relação à chega-
da de pacotes nos receptores. Entretanto, o protocolo IP disponibilizado
na Internet atualmente provê um serviço de melhor-esforço a todos os
pacotes que transporta. Desta forma, ele não oferece nenhuma garantia
em relação à perda de pacotes ou atraso às aplicações que o utilizam.
Mesmo utilizando o UDP que evita o atraso inicial relativo à conexão
TCP, em uma rede congestionada os pacotes continuariam chegando
atrasados ou seriam descartados. Mesmo que as aplicações multimídias
sejam relativamente tolerantes a perdas, perdas excessivas compromete-
riam a experiência interativa.

Desta forma, principalmente as aplicações de áudio e vídeo interativos


de tempo real precisam de garantias rígidas em relação a atraso e perda
de pacotes para que funcionem corretamente, caso contrário não conse-
guirão proporcionar a experiência de interatividade.

Desta forma, a Internet precisa evoluir de alguma forma para suportar


o funcionamento das aplicações multimídias. A área de pesquisa que
busca soluções para garantir recursos para aplicações com requisitos
críticos em relação a atraso e perda de pacotes é chamada de Qualidade
de Serviço na Internet.

Existem várias propostas para isso. Em um extremo, alguns pesquisado-


res argumentam que deveriam ser feitas modificações fundamentais na
Internet para que as aplicações possam reservar, explicitamente, largu-
ra de banda fim-a-fim. Esta proposta é chamada de IntServ (Integrated
Services - Serviços Integrados). Acredita-se que se um usuário quiser
fazer uma chamada via VOIP usando a Internet, a aplicação de VOIP do
usuário deveria poder reservar largura de banda explicitamente em cada
enlace ao longo da rota entre os dois hospedeiros. Mas permitir que as
aplicações façam reservas e exigir da rede que as honre implica algumas
grandes mudanças. Primeiramente, seria preciso um protocolo que re-
servasse largura de banda no caminho entre os remetentes e os recepto-
res. Já foi proposto um protocolo para esta função, chamado de RSVP
(Reservation Protocol – Protocolo de Reserva). Além disso, deveria ser
alterada a forma como os pacotes são tratados nos roteadores, de forma
a dar maior prioridade aos pacotes que possuem recursos reservados.

Existe uma outra abordagem diferente da IntServ que envolve modifi-


cações menos radicais na Internet. Esta abordagem é chamada de Diff-
Serv (Differentiated Services – Serviços Diferenciados). Este esquema
quer fazer mudanças relativamente pequenas nas camadas de rede e
Redes de Computadores
136
Capítulo 7

transporte, introduzindo esquemas simples de determinação de preços e


inspeção na borda da rede. A ideia é introduzir um pequeno número de
classes de tráfego (possivelmente apenas duas), designar os pacotes a
uma das classes (por meio de um campo especial no cabeçalho), atribuir
diferentes níveis de serviço nas filas de roteadores aos pacotes confor-
me suas classes e cobrar dos usuários segundo a classe de pacotes que
os roteadores estão enviando pela rede.

Independente da abordagem utilizada, é objetivo da Qualidade de Ser-


viço buscar modos de acomodar na Internet as aplicações multimídia,
que tanto têm sido utilizadas no cenário atual.

7.4 Gerência de redes

Assim como sistemas complexos e com muitos componentes como


usinas hidroelétricas e atômicas precisam de mecanismos de controle
e gerência, as redes atualmente, devido à sua abrangência e crescente
complexidade, também necessitam de mecanismos para diagnosticar
problemas de hardware ou software que acarretem em problemas para
as aplicações se comunicando.

O administrador de redes é a pessoa responsável pela monitoração e


controle dos sistemas de hardware e software que compreendem uma
rede. Um administrador trabalha para detectar e corrigir problemas que
tornam a comunicação ineficiente ou impossível e eliminar as condições
que produzirão o problema novamente. Um exemplo de problema que
deve ser detectado pelo administrador pode ser uma falha na placa de
rede, ou um switch com mal funcionamento.

A administração de redes, principalmente da Internet, é difícil pelos


mesmos motivos que garantir a segurança também é difícil. Primeiro,
a maioria das redes é heterogênea e, em segundo lugar, a maioria delas
pode ser muito extensa, com vários componentes remotos. Detectar a
causa de um problema de comunicação num dispositivo remoto pode
ser especialmente difícil.

Surpreendentemente, a gerência de redes não é definida como par-


te dos protocolos de transporte ou da camada de rede. Em vez dis-
so, os protocolos usados para monitorar e controlar dispositivos de
redes operam na camada de aplicação. Quando um gerente precisa
interagir com um dispositivo de hardware específico, o administra-
dor executa um programa aplicativo que atua como um cliente e um
programa aplicativo no dispositivo de rede que atua como servidor.
O cliente e o servidor usam protocolos de transporte convencionais,
Licenciatura em Informática
137
Tópicos Avançados em Redes de Computadores

como TCP ou UDP para interagirem. O cliente envia requisições e o


servidor simplesmente às responde.

Para evitar confusão entre programas aplicativos usados por usuá-


rios denominados de clientes e servidores dos programas reserva-
dos aos gerentes de rede, geralmente o aplicativo cliente que executa
no computador do gerente é chamado de gerente e o aplicativo que
executa em um dispositivo de rede é chamado de agente.

O protocolo padrão usado para administrar uma rede é conhecido como


SNMP (Simple Management Protocol – Protocolo de Gerência Simples).
O protocolo SNMP define exatamente como um gerente se comunica
com um agente. Por exemplo, o SNMP define o formato das requisições
que um gerente envia a um agente e o formato das respostas que um
agente retorna. Além disso, ele define o significado exato de cada requi-
sição e a resposta possível.

O protocolo SNMP não define um conjunto extenso de comandos. Em


vez disso, o protocolo usa um paradigma de carga e armazenamento, no
qual existem duas operações básicas: carregar (usada para ler o valor de
um dispositivo) e armazenar (usada para gravar um valor no dispositi-
vo). Desta forma, para monitorar o funcionamento de um dispositivo,
deve-se usar sempre operações de carga, com as quais se consegue ler
seu estado atual de funcionamento. Já para configurar um dispositivo
se deve usar a operação de armazenamento, na qual a gravação de um
valor no dispositivo permite controlar o seu funcionamento.

Prezado aluno,
nossa jornada se encerra neste capítulo de tópicos avançados. Obser-
ve que, para entendê-lo, você precisou usar todos os conhecimentos
obtidos até agora na disciplina. Não foi nosso objetivo aqui esgotar
o conteúdo dos tópicos, até porque cada um deles não seria esgotado
nem por uma série de volumosos livros. Nossa abordagem foi inicial
e esperamos que você a complemente com o trabalho proposto.
Boa sorte no decorrer no curso e obrigado por sua paciência e
boa vontade!
Até a próxima!

Redes de Computadores
138
Capítulo 7

Agora é hora de você entender um pouco melhor sobre os tópicos


avançados em redes vistos até aqui. Procuramos não entrar em
muitos detalhes sobre eles, pois queremos que você os comple-
mente no trabalho proposto na tarefa 14 no ambiente.
Desta forma, leia o enunciado da tarefa no ambiente, siga as regras
de formatação e entrega de seu trabalho sobre um assunto espe-
cífico existente no Wiki. Lembre-se de que a escolha do assunto
deve ser feita no Wiki próprio para tal, colocando seu nome na
frente do tópico que você escolher. Bom trabalho!

Licenciatura em Informática
COMER, D. E. Redes de Computadores e Internet, 2ª Edição, São Paulo:Bookman,
2001.

GONÇALVES, J. P. B., Introdução à informática. Cachoeiro de Itapemirim: Ifes, 2009.

GONÇALVES, J. P. B., Diferenciação de Serviços em Ambientes Virtuais Colaborativos


em Grande Escala. Rio de Janeiro:IME, 2006.

KUROSE, J. F. & Ross, K. W. Redes de Computadores e a Internet: Uma Abordagem Top


Down. 3ª. Edição. São Paulo: Pearson/Addison Wesley, 2005.

OPPENHEIMER, P. Projeto de redes TOP-DOWN. São Paulo: Campus, 1999.

MORIMOTO, C. E. Redes – Guia Prático, 1ª Edição, Porto Alegre:Sul Editores, 2009.

SOARES, Luiz F. G., Lemos, Guido & Colcher, Sérgio. Redes de Computadores: das
LANs, MANs e WANs às Redes ATM. São Paulo: Campus, 1995.  

STALLINGS, W. Redes e Sistemas de Comunicação de Dados. São Paulo: Elsevier Edi-


tora LTDA, 2005.

SUDRÉ, G., Redes de Computadores, Vitória: IFES, 2009.

TANENBAUM, A. Redes de Computadores. 4ª. Edição. São Paulo: Campus, 2003.

Você também pode gostar