Anda di halaman 1dari 85

Arquitetura TCP/IP

NDICE

1.

2.

3.

4.

INTRODUO...................................................................................................................... 3
1.1.

SERVIOS EM REDES...................................................................................................4

1.2.

ESCOPO DA INTERNET.................................................................................................8

BSICO DE UMA REDE.....................................................................................................11


2.1.

WANS E LANS.............................................................................................................. 12

2.2.

A TECNOLOGIA ETHERNET........................................................................................13

2.3.

FDDI (FIBER DISTRIBUTED DATA INTERCONNECT)............................................................15

2.4.

ATM (ASYNCHRONOUS TRANSFER MODE).......................................................................17

2.5.

INTERLIGAO EM REDES........................................................................................19

ENDEREAMENTO........................................................................................................... 21
3.1.

ENDEREOS DE REDES E DE BROADCAST............................................................23

3.2.

ENDEREO DE LOOPBACK........................................................................................24

3.3.

PONTOS FRACOS NO ENDEREAMENTO...............................................................25

3.4.

UM EXEMPLO...............................................................................................................26

PROTOCOLOS................................................................................................................... 28
4.1.

MODELO DA DIVISO EM CAMADAS OSI..................................................................29

4.2.

MODELO DA DIVISO EM CAMADAS TCP/IP............................................................31

4.3.

PROTOCOLOS DE TRANSPORTE..............................................................................32

4.3.1. UDP (User Datagram Protocol)................................................................................32


4.3.2. TCP (Transmission Control Protocol).......................................................................35
4.4.

PROTOCOLOS DE REDE.............................................................................................38

4.4.1. IP (Internet Protocol)................................................................................................38


4.4.2. ICMP (Internet Control Message Protocol)...............................................................43
4.4.3. ARP (Address Resolution Protocol)..........................................................................44
4.4.4. RARP (Reverse Address Resolution Protocol).........................................................45
Cristiano Alan Torres

Pg. 1/85

Arquitetura TCP/IP

5.

ROTEAMENTO................................................................................................................... 47
5.1.

ROTEAMENTO BASEADO EM TABELAS....................................................................47

5.2.

ALGORITMOS DE ROTEAMENTO...............................................................................48

5.2.1. ROTEAMENTO VECTOR-DISTANCE.....................................................................49


5.2.2. ROTEAMENTO LINK-STATE (Shortest Path First)..................................................50
5.3.

PROTOCOLOS DE ROTEAMENTO.............................................................................52

5.3.1. IGP Interior Gateway Protocol...............................................................................52


5.3.2. EGP - Exterior Gateway Protocol.............................................................................55
5.3.3. BGP Border Gateway Protocol..............................................................................56
5.4.

ROTEAMENTO MULTICAST.........................................................................................59

6.

TCP/IP EM REDES ATM.....................................................................................................62

7.

DNS (DOMAIN NAME SYSTEM)........................................................................................64

8.

APLICAES..................................................................................................................... 67
8.1.

TELNET.........................................................................................................................67

8.2.

FTP (FILE TRANSFER PROTOCOL)..................................................................................69

8.3.

NFS (NETWORK FILE SYSTEM).......................................................................................71

8.4.

RPC (REMOTE PROCEDURE CALL).................................................................................73

8.5.

SMTP (SIMPLE MAIL TRANSFER PROTOCOL)...................................................................74

9.

FUTURO DO TCP/IP (IPV6)................................................................................................77


9.1.

FORMATO DO DATAGRAMA........................................................................................79

9.2.

TAMANHO DO ESPAO DE ENDEREO....................................................................81

9.3.

TRS TIPOS BSICOS DE ENDEREO DO IPV6......................................................83

10.

BIBLIOGRAFIA............................................................................................................... 85

Cristiano Alan Torres

Pg. 2/85

Arquitetura TCP/IP

1. INTRODUO

Devido ao tremendo impacto dos computadores na sociedade, principalmente na ltima


dcada, este perodo da histria tem sido denominado a era da informao. O lucro e a
produtividade das organizaes e indivduos tem sido aumentados de forma significativa pelo
uso das redes de computadores como suporte a troca e acesso informao. Indivduos
utilizam as redes de computadores quase que diariamente de forma a conduzir suas atividades
pessoais e empresariais. O que se pode observar uma acelerao da utilizao e das
aplicaes com base na tecnologia das redes de computadores, medida que mais pessoas
descobrem as potencialidades dos computadores e das redes de comunicao tanto em
aplicaes domsticas como em empresariais. As transaes e atividades dirias em lojas de
departamentos, bancos, e outras pessoas e empresas das mais diversas naturezas, esto cada
vez mais dependentes das redes de computadores.
Lamentavelmente, a maioria das redes constitui entidades independentes estabelecidas para
atender s necessidades de um grupo isolado. Os usurios selecionam uma tecnologia de
hardware que seja adequada aos seus problemas de comunicao. impossvel a estruturao
de uma rede universal com base em uma nica tecnologia de hardware, j que nenhuma rede
nica atende a todas as aplicaes. Alguns usurios precisam de uma rede de alta velocidade
para conectar-se a mquinas, mas essas redes no podem ser expandidas para alcanar
grandes distncias. Outros preferem uma rede de velocidade inferior que faa conexo com
mquinas a centenas de milhas de distncia.
Ao longo dos anos, as agncias governamentais norte-americanas perceberam a importncia e
o potencial de tecnologia de interligao em redes e vm financiando as pesquisas que
possibilitaram a interconexo global de redes. A tecnologia da ARPA (Advanced Research
Projects Agency) inclui um conjunto de padres de rede

que especificam os detalhes do

sistema pelo qual os computadores se comunicam, bem como um conjunto de convenes para
interconexo em redes e para roteamento. Denominado oficialmente Pilha de Protocolos de
Cristiano Alan Torres

Pg. 3/85

Arquitetura TCP/IP

interligao em redes TCP/IP, e geralmente citado como TCP/IP, essa pilha pode ser utilizada
para comunicao em qualquer conjunto de redes interconectadas. Algumas empresas, por
exemplo, utilizam o TCP/IP para interconectar todas as redes de sua organizao, ainda que a
empresa no se comunique com redes externas. Outros grupos utilizam o TCP/IP para
estabelecer comunicaes entre sites geograficamente distantes.
Nos Estados Unidos, a National Science Foundation (NSF), o Department of Energy (DOE), o
Department of Defense (DOD), a Health and Human Services Agency (HHS) e a National
Aearonautics and Space Administration (NASA) participaram do financiamento da Internet e
utilizam o TCP/IP para conectar muitas de suas instalaes de pesquisa. A interligao em
redes resultante permite que os pesquisadores de instituies conectadas compartilhem
informaes com seus colegas de todo o mundo com a mesma facilidade com que
compartilham informaes com pesquisadores da sala ao lado. Um sucesso extraordinrio, a
Internet demonstra a viabilidade da tecnologia TCP/IP e mostra como pode-se lidar com uma
diversidade de tecnologias de redes.

1.1.

SERVIOS EM REDES

Grande parte da abordagem de servios ter como foco padres denominados protocolos.
Protocolos como TCP e IP fornecem as regras para a comunicao. Eles contm os detalhes
de formatos de mensagens, descrevem o que um computador faz ao receber uma mensagem e
especificam como um computador trata os erros ou outras condies anormais. De certa forma,
um protocolo de comunicao permite que algum especifique ou entenda uma comunicao
de dados sem depender de conhecimentos minuciosos do hardware da rede de um fornecedor
especfico. Todos os servios de rede so descritos por protocolos.
Os servios de aplicativos da Internet mais comum e difundidos incluem:

Cristiano Alan Torres

Pg. 4/85

Arquitetura TCP/IP

Correio Eletrnico. O correio eletrnico permite que um usurio elabore memorandos e os


envie a indivduos ou grupos. Uma outra parte do aplicativo do correio eletrnico permite
que os usurios leiam os memorandos que receberam. O correio eletrnico tem sido to
bem-sucedido que muitos usurios da Internet dependem dele para correspondncia
comercial normal. Embora existam muitos sistemas de correio eletrnico, a utilizao do
TCP/IP faz com que a entrega de correio seja mais confivel, j que no depende de
computadores para processamentos intermedirios na transmisso de mensagens. Um
sistema de entrega de correio TCP/IP opera atravs de contato direto entre a mquina do
transmissor e a mquina do receptor. Assim, o transmissor sabe que quando a mensagem
deixa a mquina local, ela foi recebida com xito no destino.

Transferncia de arquivos. Embora alguns usurios s vezes transfiram arquivos atravs


do correio eletrnico, ele se destina, sobretudo, a mensagens de pouco texto. Os
protocolos TCP/IP incluem um programa aplicativo que permite que os usurios enviem ou
recebam arbitrariamente arquivos externos de programas de dados. Ao utilizar, por
exemplo, um programa de transferncia de arquivos, a pessoa pode copiar de uma
mquina para outra uma base de dados extensa contendo imagens de satlite, um
programa escrito em Pascal ou C++, ou um dicionrio de ingls. O sistema indica uma
maneira de checar os usurios autorizados, ou at de evitar acessos. Tal como ocorre com
o correio eletrnico, a transferncia de arquivos na interligao em redes TCP/IP
confivel porque as duas mquinas envolvidas comunicam-se diretamente, sem depender
de mquinas intermedirias que faam cpias do arquivo ao longo do processo.

Login remoto. O login remoto permite que, de seu computador, um usurio entre em
conexo com uma mquina remota e estabelea uma sesso interativa de login. O login
remoto faz com que uma janela na tela do usurio parea conectar-se diretamente com a
mquina remota, enviando cada toque no teclado a uma mquina remota e exibindo cada
caracter que o computador remoto imprime na janela do usurio. Quando a sesso de login
remoto termina, o aplicativo retorna o usurio ao sistema local.

Cristiano Alan Torres

Pg. 5/85

Arquitetura TCP/IP

No nvel da camada de rede, uma interconexo proporciona extensos tipos de servios que
todos os programas aplicativos utilizam:

Servio de entrega de pacotes sem conexo. Este servio, explicado com detalhes ao
longo do texto, forma a base para todos os servios de interligao em redes. A entrega
sem conexo constitui uma preocupao do servio oferecido pela maioria das redes
distribuidoras de encomendas. Isso simplesmente significa que a interligao em redes
TCP/IP promove o roteamento de pequenas mensagens de uma mquina para outra, com
base nas informaes do endereo contidas na mensagem. Como o servio sem conexo
promove o roteamento de cada pacote separadamente no h garantia de entrega, e nem
de entrega na mesma ordem na qual os pacotes forma transmitidos. J que quase sempre
h um mapeamento direto para o hardware, o servio sem conexo extremamente
eficiente. O mais importante que a entrega de pacotes, sem conexo, como base para
todos os servios de interligao em redes, torna os protocolos TCP/IP adaptveis a uma
ampla gama de hardware de redes.

Servio de transporte de streams confiveis. A maioria dos aplicativos precisa de muito


mais do que uma entrega de pacotes, porque eles exigem que o software de comunicao
corrija automaticamente erros de transmisso, pacotes perdidos, ou falhas de comutaes
ao longo do caminho entre o transmissor e o receptor. O servio de transporte confivel
trata desses problemas. Ele permite que um aplicativo de um computador estabelea uma
conexo com um aplicativo de outro computador, e a seguir envie um grande volume de
dados atravs da conexo, como se fosse uma conexo de hardware direta e permanente.
Naturalmente, em um nvel mais baixo, os protocolos de comunicao dividem a cadeia de
dados em mensagens curtas e as envia, uma de cada vez, esperando que o receptor
confirme a recepo.

Muitas redes oferecem servios bsicos semelhantes aos mencionados acima, de modo que
algum poderia questionar o que diferencia os servios TCP/IP de outros. As principais
caractersticas diferenciadoras so:

Cristiano Alan Torres

Pg. 6/85

Arquitetura TCP/IP

Independncia da tecnologia de redes. Embora o TCP/IP seja baseado em tecnologia


convencional de comutao de pacotes, ele independente do hardware de qualquer
fornecedor especfico. A Internet inclui diversas tecnologias de rede, desde as redes
projetadas para operar em um prdio at as projetadas para cobrir grandes distncias. Os
protocolos TCP/IP definem a unidade de transmisso de dados denominada datagrama, e
especifica como transmitir datagramas em uma rede especfica.

Interconexo universal. Uma interligao em redes TCP/IP permite a comunicao de que


qualquer par de computadores ao qual ela conectada. A cada computador atribudo um
endereo universalmente reconhecido por toda a interligao em redes. Cada datagramas
traz os endereos de sua origem e de seu destino. Os computadores de comutao
intermediria utilizam o endereo de destino para tomar decises sobre roteamento.

Confirmaes fim-a-fim. Os protocolos de interligao em redes TCP/IP fornecem uma


confirmao entre a origem e o destino final, e no entre mquinas sucessivas ao longo do
caminho, mesmo quando as duas mquinas no se conectam a uma mesma rede fsica.

Padres de protocolo de aplicativos. Alm dos servios bsicos no nvel de transporte


(como conexes de streams confiveis), os protocolos TCP/IP incluem padres para muitos
aplicativos comuns, inclusive o correio eletrnico, a transferncia de arquivos e o login
remoto. Assim, quando esto desenvolvendo programas aplicativos que utilizam TCP/IP, os
programadores sempre descobrem que o software existente oferece os servios de
comunicao de que eles precisam.

Cristiano Alan Torres

Pg. 7/85

Arquitetura TCP/IP

1.2.

ESCOPO DA INTERNET

A arquitetura TCP/IP surgiu com a criao de uma rede patrocinada pelo Departamento de
Defesa dos Estados Unidos. Uma das tarefas essenciais dessa rede seria manter comunicados,
mesmo que apenas uma parte, rgos do governo e universidades, numa ocorrncia de
guerras ou catstrofes que afetassem os meios de comunicao daquele pas. Dessa
necessidade, surgiu a ARPANET, uma rede que permaneceria intacta caso um dos servidores
perdesse a conexo. A ARPANET necessitava ento de um modelo de protocolos que
assegurasse tal funcionalidade esperada, mostrando-se confivel, flexvel e de fcil
implementao. ento desenvolvida a arquitetura TCP/IP, que se torna um padro de fato. A
ARPANET cresceu e tornou-se a rede mundial de computadores Internet. A utilizao (e
facilidades) do padro TCP/IP utilizado pelos fabricantes de outras redes, com a finalidade da
conectividade com a Internet. A normalizao do TCP/IP chegou aps a sua utilizao em
massa.
A Internet cresceu, abrangendo centenas de redes individuais localizadas nos Estados Unidos e
na Europa. Conectou aproximadamente 20.000 computadores de universidades, rgos
pblicos e laboratrios de pesquisa organizacional. O tamanho e a utilizao da Internet
continuou em ascenso muito mais acelerada do que o previsto. No final de 1987, estimou-se
que o crescimento alcanara 15% ao ms. Em torno de 1994, a Internet alcanava mais de 3
milhes de computadores em 61 pases.
A utilizao de protocolos TCP/IP e o crescimento da Internet no se limitaram a projetos
financiados pelo governo. Grandes companhias voltadas para o setor de computadores
conectaram-se Internet, bem como muitas outras organizaes de grande porte como
companhias de petrleo, indstria automobilstica, empresas de eletrnica, companhias
farmacuticas e portadoras de telecomunicaes. As empresas de pequeno e mdio porte
comearam a conectar-se na dcada de 1990. Alm

disso, muitas outras utilizavam os

protocolos TCP/IP em suas interligaes em redes corporativas, mesmo tendo optado por no
participar da Internet.
Cristiano Alan Torres

Pg. 8/85

Arquitetura TCP/IP

Uma expanso acelerada trouxe problemas de escala no previstos no projeto original e


motivou os pesquisadores a encontrar tcnicas para gerenciar numerosos recursos distribudos.
No projeto original, por exemplo, os nomes e endereos de todos os computadores conectados
Internet eram mantidos em um nico arquivo que era editado manualmente e, a seguir,
distribudo a todos os sites da Internet. Em meados da dcada de 1980, tornou-se bvio que um
banco de dados de origem no seria suficiente. Primeiro, os pedidos para atualizao de
arquivos rapidamente provocaria excesso do pessoal disponvel para process-los. Segundo,
ainda que existisse um arquivo-fonte correto, a capacidade da rede seria insuficiente para
permitir a distribuio freqente para todos os sites ou o acesso on-line a cada site.
Novos protocolos foram desenvolvidos e um sistema de atribuio de nome foi colocado em
vigor atravs da Internet para permitir que qualquer usurio automaticamente determinasse o
nome de uma mquina remota. Conhecido como Domain Name System (DNS), o mecanismo
conta com mquinas denominadas servidoras de nome para responder a consultas sobre
nomes. Nenhuma mquina contm todo o banco de dados de nomes de domnios. Em vez de
uma mquina, os dados so distribudos por um conjunto de mquinas que utilizam protocolos
TCP/IP para se comunicarem entre si quando estiverem respondendo a uma consulta. To logo
a Internet tornou-se popular e os usurios passaram a buscar informaes atravs de servios
como Gopher e a World Wide Web, novamente o trfego aumentou.
A Internet no controlada por nenhum rgo governamental ou comercial, mas sim por
organizaes voluntrias que controlam os usurios e os artigos publicados na Internet. Eis
algumas organizaes:
IAB

A IAB (Internet Advisory Board) constituda de vrias organizaes e seu

InterNIC

objetivo principal coordenar a organizao geral da Internet.


A InterNIC (Internet Network Information Center) foi criado pela NSF

IRTF

distribuir endereos IP.


O IRTF (Internet Research Task Force) um dos comits que constituem a

para

IAB. Ele responsvel por vrias atividades a nvel de pesquisa, como o


RFC

desenvolvimento de protocolos.
RFC (Request for Comments) so documentos tcnicos relacionados aos

Cristiano Alan Torres

Pg. 9/85

Arquitetura TCP/IP

protocolos da Internet. Alguns deles contm padres para os protocolos, outros


so recentemente desenvolvidos, podendo obter sucesso e se tornarem
FNC

padres. Esses documentos formam a documentao da Internet.


FNC (Federal Networking Council) um comit que exerce a parte informativa
da Internet. A FNC realiza o intermdio entre a IAB e as instituies

IETF

governamentais, alm de prestar suporte a agncias no uso da Internet.


IETF (Internet Engeneering Task Force) um subcomit da IAB que realiza a
manuteno de problemas construtivos e tambm a implementao de novas
tecnologias.

A Internet considerada por muitos como um dos mais importantes e revolucionrios


desenvolvimentos da histria da humanidade. Pela primeira vez no mundo um cidado comum
ou uma pequena empresa pode (facilmente e a um custo muito baixo) no s ter acesso a
informaes localizadas nos mais distantes pontos do globo como tambm e isso que torna
a coisa revolucionria criar, gerenciar e distribuir informaes em larga escala, no mbito
mundial, algo que somente uma grande organizao poderia fazer usando os meios de
comunicao convencionais. Isso com certeza afetar substancialmente toda a estrutura de
disseminao de informaes existente no mundo, a qual controlada primariamente por
grandes empresas. Com a Internet um pessoa qualquer (um jornalista, por exemplo) pode, de
sua prpria casa, oferecer um servio de informao baseado na Internet, a partir de um
microcomputador, sem precisar da estrutura que no passado s uma empresa de grande porte
poderia manter. Essa perspectiva abre um enorme mercado para profissionais e empresas
interessadas em oferecer servios de informao especficos.

Cristiano Alan Torres

Pg. 10/85

Arquitetura TCP/IP

2. BSICO DE UMA REDE

Independente do tipo de conexo que faam, seja entre computadores ou entre terminais e
computadores, as redes de comunicao dividem-se em dois tipos bsicos: de comutao de
circuitos (tambm conhecidas como redes baseadas em conexes) e de comutao de pacotes
(conhecidas, ainda, como redes sem conexo).

A comutao por circuitos opera formando uma conexo dedicada entre duas pontas. O
sistema telefnico dos Estados Unidos utiliza uma tecnologia de comutao de circuitos
uma chamada telefnica estabelece um circuito da linha de quem telefona, atravs de uma
central de comutao local, passando por linhas do tronco, at uma central de comutao
remota e, finalmente, ao destinatrio da chamada. Enquanto um circuito estiver aberto, o
equipamento telefnico testa o microfone vrias vezes, converte os sinais para o formato
digital e os transmite atravs do circuito para o receptor. O transmissor tem a garantia de
que os sinais sero distribudos e reproduzidos, pois o circuito oferece um percurso de
dados seguro, de 64 kpbs (mil bits por segundo), o mnimo necessrio para o envio de voz
digitalizada. A vantagem da comutao de circuitos reside na sua capacidade segura: uma
vez que um circuito estabelecido, nenhuma outra atividade de rede poder reduzir a
capacidade do circuito. A desvantagem da comutao de circuitos o alto custo: o preo
fixo, independente do trfego. Por exemplo, o preo de uma ligao telefnica o mesmo,
ainda quando as duas pontas no se comunicam.

Nas redes de comutao de pacotes, as mensagens a serem transmitidas atravs das


estaes da rede so divididas em pequenas unidades chamadas pacotes que so
multiplexados por meio de conexes entre mquinas de alta capacidade. Um pacote que
geralmente contm apenas pequenas unidades de informaes transporta uma
identificao que capacita o hardware da rede a enviar as informaes a determinado
destino. Por exemplo, a transmisso de um arquivo extenso entre dois equipamentos deve
ser feita a partir da diviso do arquivo em vrios pacotes antes de encaminh-los rede. O

Cristiano Alan Torres

Pg. 11/85

Arquitetura TCP/IP

hardware da rede envia os pacotes aos seus respectivos destinos onde o software os
rene novamente em um nico arquivo. A grande vantagem da comutao de pacotes a
possibilidade de realizar simultaneamente vrias comunicaes entre computadores, com
conexes entre equipamentos compartilhados por todos os pares de equipamentos que
esto se comunicando. A desvantagem que medida que a atividade se intensifica, um
determinado par de computadores conectados entre si recebe uma capacidade menor da
rede. Ou seja, toda vez que uma rede de comutao de pacotes estiver sobrecarregada,
os computadores conectados a ela tero que esperar at poderem enviar pacotes
adicionais.

2.1.

WANs e LANs

As tecnologias de comutao de pacotes so freqentemente divididas em duas categorias, de


acordo com a extenso: redes de longas distncias (WANs) e redes locais (LANs). As duas
categorias no possuem definies formais. Ao contrrio, os fornecedores utilizam os termos de
forma coloquial para que os consumidores saibam diferenciar as duas tecnologias.
As tecnologias de rede remota ou de redes de longas distncias possibilitam a comunicao
entre grandes distncias. A maioria das tecnologias de rede de longas distncias no impe um
limite na extenso da distncia; permite que os dois extremos se comuniquem a uma distncia
arbitrria. Por exemplo, uma rede de longa distncia pode operar em um continente ou conectar
computadores de continentes diferentes. Geralmente, as redes de longa distncias operam em
velocidades mais lentas do que as redes locais, e necessitam de um retardo de transmisso
bem maior entre as conexes. A velocidade de uma rede de longas distncias varia de 56 Kbps
a 155 Mbps (um milho de bits por segundo). O retardo de transmisso pode variar desde
alguns milissegundos at vrios dcimos de segundo.
As tecnologias de rede local possuem uma velocidade de conexo entre comutadores bem
mais rpida, mas deixam a desejar na capacidade de operar em longas distncias. Por
exemplo, uma rede local tpica abrange uma rea pequena, como um nico edifcio ou um
Cristiano Alan Torres

Pg. 12/85

Arquitetura TCP/IP

campus, e funciona entre 10 Mbps e 2 Gbps (bilhes de bits por segundo). J que essas
tecnologias operam em pequenas reas, o retardo de transmisso bem menor do que o das
tecnologias de rede de longas distncias, o qual pode durar desde alguns dcimos de um
milissegundo, at no mximo dez milissegundos.

2.2.

A TECNOLOGIA ETHERNET

Ethernet o nome dado a uma tecnologia de rede local popular, de comutao de pacotes; a
maioria das empresas de mdio e grande porte a utiliza.

Cada cabo da Ethernet possui

aproximadamente 0,5 polegadas de dimetro e at 500 metros de comprimento. Para oferecer


o mximo de proteo contra interferncia eltrica de dispositivos como motores eltricos, o
cabo possui uma forte proteo que o torna difcil de ser dobrado. O esquema de fiao
funciona perfeitamente quando vrios computadores ocupam um mesmo compartimento. O
cabo percorre o trajeto diretamente de um computador a outro. Para incluir um novo
computador, basta conect-lo cadeia.

CABO DA ETHERNET

Figura 2.1. Conexo fsica entre dois computadores.

Com o avano da tecnologia foi possvel construir redes Ethernets que no necessitam da
proteo eltrica de um cabo coaxial. Chamada de Ethernet de pares tranados, essa
tecnologia permite que um computador acesse uma rede Ethernet utilizando um par de fios de
cobre normais sem proteo, semelhantes aos utilizados para fazer conexes entre
equipamentos telefnicos. A vantagem desse tipo de tecnologia que, alm de reduzir os
custos, oferece proteo a outros computadores da rede no caso de um usurio desconectar
um nico computador. Em alguns casos, uma tecnologia de pares tranados possibilita que
Cristiano Alan Torres

Pg. 13/85

Arquitetura TCP/IP

uma instituio utilize a Ethernet com a fiao telefnica j existente, sem a adio de novos
cabos. Conhecido tecnicamente como 10Base-T, o esquema de fiao de pares tranados
conecta cada computador a um HUB da Ethernet, como ilustra a Figura 2.2.

CONEXES DE PARES TRANADOS PARA O


HUB
HUB

Figura 2.2. Cada computador conecta-se a um HUB por cima de um par de fios.

O HUB um dispositivo eletrnico que estimula os sinais num cabo Ethernet. Fisicamente, o
HUB formado por uma pequena caixa que geralmente alojada em um gabinete de fiao;
uma conexo entre um HUB e um computador deve ter menos de cem metros de extenso. Um
HUB necessita de energia eltrica e, talvez, de pessoal qualificado para fazer o monitoramento
e o controle de sua operao na rede. Para a interface com um computador, a conexo a um
HUB parece funcionar do mesmo modo que a conexo direta com coaxial.
A Ethernet uma tecnologia de barramento de difuso de 10 Mbps com mtodo de entrega
sem garantia e controle de acesso distribudo. um barramento porque todas as estaes
compartilham um nico canal de comunicao; de difuso (broadcast) porque todos os
transceptores recebem cada uma das transmisses. O controle de acesso distribudo porque,
ao contrrio de algumas tecnologias de rede, a Ethernet no possui nenhuma autoridade
central

para

permitir

acesso,

vrios

equipamentos

podem

acessar

Ethernet

simultaneamente e cada um deles estabelece se o meio est ou no livre, detectando a


presena ou no de sinal. Quando uma interface do host tem um pacote para transmitir, ela
verifica o meio para saber se h alguma mensagem sendo transmitida. Se nenhuma
transmisso for detectada, a interface do host inicializa a transmisso. Cada uma das
transmisses possui um limite de durao (porque h um tamanho mximo de pacote). Alm do
Cristiano Alan Torres

Pg. 14/85

Arquitetura TCP/IP

mais, o hardware deve observar um intervalo mnimo de tempo entre as transmisses, o que
significa que nenhum par de equipamentos comunicantes pode utilizar a rede sem oferecer aos
demais equipamentos uma oportunidade de acesso.
Apesar de um cabo da Ethernet possuir um comprimento mximo, a rede pode ser aumentada
de duas maneiras: com o auxlio de repetidores e de pontes.

O repetidor pode ser utilizado para transmitir sinais eltricos de um cabo a outro.
Entretanto, no mximo dois repetidores podem ser colocados entre duas mquinas, de
modo que o comprimento total de uma nica Ethernet continua muito pequeno (trs
segmentos de 500 metros cada).

As pontes so melhores do que os repetidores porque no repercutem os rudos, as falhas


ou os quadros com m formao; um quadro inteiramente vlido deve ser recebido antes
que a ponte o aceite e o transmita para outro segmento.

De acordo com a viso do TCP/IP, as Ethernets ligadas por pontes so simplesmente uma outra
forma de conexo fsica de rede. O importante que: Em virtude de a conexo entre cabos
fsicos, fornecida pelas pontes e pelos repetidores, ser transparente para os equipamentos
conectados Ethernet, um sistema nico de rede fsica.

2.3.

FDDI (Fiber Distributed Data Interconnect)

A FDDI uma conhecida tecnologia de rede que opera em pequenas reas geogrficas e
oferece uma largura de banda maior do que a Ethernet. Ao contrrio da Ethernet e de outras
tecnologias de redes locais que utilizam cabos para transportar os sinais eltricos, a FDDI utiliza
fibras de vidro e transmite as informaes, convertendo-as em feixes de luz.

O termo quadro deriva-se da comunicao por linhas seriais, nas quais o transmissor configura a informao,
acrescentando sinais especiais antes e aps a transmisso das informaes.

Cristiano Alan Torres

Pg. 15/85

Arquitetura TCP/IP

A fibra ptica possui duas vantagens a mais do que o fio de cobre:

so imunes interferncia eletromagntica, podendo ficar prximas a dispositivos eltricos


potentes;

como utilizam luz, a quantidade de informao transportadas por um nico canal de fibra
ptica significativamente maior do que a dos cabos que transportam sinais eltricos.

A FDDI uma rede token ring de 100 Mbps dotada de um recurso de auto-reparo uma rede
em anel porque forma um circuito fechado, iniciando em um computador, passando por todos
os outros, e novamente retornando ao computador de origem.
Trata-se de uma rede de tecnologia token ring porque utiliza um token como forma de controlar
a transmisso. Quando a rede est inativa, um quadro especial denominado token passa de
estao a estao. Sempre que uma estao tiver que enviar um pacote, ela ter que esperar a
chegada de um token, enviar o pacote e depois passar o token estao seguinte. O token que
est sendo utilizado garante o equilbrio: concede a todas as estaes a oportunidade de enviar
um pacote antes que outra estao envie um segundo pacote.

REDE FDDI EM ANEL

Figura 2.3. Uma rede FDDI com fibras pticas fazendo a conexo de seis computadores. As setas indicam a direo
do trfego nas fibras e nos computadores conectados entre si.

Cristiano Alan Torres

Pg. 16/85

Arquitetura TCP/IP

Para oferecer um recurso de recuperao automtica de falhas, o hardware da FDDI utiliza dois
anis independentes que se conectam a cada computador. Quando a interface percebe que
no pode comunicar-se com o computador ao lado, o anel de garantia utilizado para contornar
a falha.
A falha talvez seja decorrente da desconexo da fibra (p. ex., um corte acidental). Se as fibras
de ambos os anis seguirem o mesmo percurso fsico, muito provvel que a Segunda fibra
tambm seja desconectada. O hardware da FDDI automaticamente utiliza o anel de rotao
oposta para formar o circulo fechado na direo em que ele ainda est operando. Com isso, os
outros computadores podem continuar se comunicando, mesmo com a ocorrncia da falha.

2.4.

ATM (Asynchronous Transfer Mode)

O ATM o nome dado a uma tecnologia de rede de alta velocidade, baseada em conexo, que
vem sendo usada tanto nas redes que operam em pequenas como em grandes reas
geogrficas. Pelos padres correntes, as redes de alta velocidade so aquelas que operam a
uma velocidade de, no mnimo, 100 Mbps; o ATM pode intercambiar informaes com
velocidades de gigabit/segundo. claro que para se obterem velocidades to altas necessrio
um equipamento complexo de ltima gerao. Consequentemente, as redes ATM possuem um
custo mais alto do que as demais tecnologias.
Uma rede ATM utiliza tcnicas de hardware e software especiais:

Uma rede ATM formada por um ou mais comutadores de alta velocidade que so
conectados aos computadores host e a outros comutadores ATM.

O ATM utiliza fibras pticas para fazer conexes, inclusive conexes entre um computador
host e um comutador ATM. As fibras pticas possuem uma velocidade de transferncia

Cristiano Alan Torres

Pg. 17/85

Arquitetura TCP/IP

maior do que a dos fios de cobre; normalmente, a conexo entre um host e um comutador
ATM opera a uma velocidade de 100 ou 155 Mbps.

As camadas mais baixas de uma rede ATM utilizam quadros de tamanhos fixos chamados
clulas. Como as clulas possuem exatamente o mesmo tamanho, o hardware do
comutador ATM pode process-la rapidamente.

A rede ATM difere das redes de comutao de pacotes porque oferece um servio baseado em
conexo. Antes de um computador host conectado a um ATM enviar clulas, ele deve
primeiramente interagir com o comutador para especificar o endereo do destinatrio. A
interao anloga a uma ligao telefnica. O host especifica o endereo do computador
remoto e espera o comutador ATM entrar em contato com o sistema remoto e estabelecer um
caminho (rota fixa). Se o computador remoto no aceitar o pedido, no responder ou se o
comutador no puder alcanar o computador remoto, o pedido para estabelecer a comunicao
falha.
Quando uma conexo feita, o comutador ATM local escolhe um identificador da conexo e
passa-o para o host, juntamente com um mensagem informando o sucesso da conexo. O host
utiliza o identificador da conexo ao enviar ou receber clulas.
Ao terminar a conexo, o host comunica-se novamente com o comutador para que a conexo
seja desfeita. O comutador desconecta os dois computadores. A desconexo equivale a tirar um
telefone do gancho no final de uma ligao telefnica; aps a desconexo, o comutador pode
novamente utilizar o identificador da conexo.

Em virtude de a rede ATM ter sido idealizada para transportar voz, assim como dados, h uma forte relao entre o
ATM e a comutao telefnica.

Cristiano Alan Torres

Pg. 18/85

Arquitetura TCP/IP

2.5.

INTERLIGAO EM REDES

Fisicamente, duas redes s podem ser conectadas por um computador que esteja ligado s
duas. No entanto, uma ligao fsica no fornece a interconexo que imaginamos, porque tal
ligao no garante que o computador vai cooperar com outras mquinas que desejam se
comunicar. Para se ter uma interconexo de rede vivel, necessitamos de computadores que
queiram repassar pacotes de uma rede para outra. Os computadores que conectam entre si
duas redes e repassam pacotes de um para o outro so chamados de gateways de interligao
em redes ou roteadores de interligao em redes. Considere um exemplo que consista de duas
redes fsicas mostradas na Figura 2.4, o roteador R est conectado s redes 1 e 2. Para R atuar
como um roteador, precisa capturar pacotes na rede 1 que so destinados s mquinas na rede
2 e transferi-los e vice-versa.

REDE
"1"

REDE
"2"

Figura 2.4. Duas redes fsicas conectadas entre si por um roteador.

Na figura acima, so usadas nuvens para demonstrar redes fsicas, porque o hardware
especfico no tem importncia. Cada rede pode ser uma rede local ou uma rede de longa
distncia, e cada uma pode ter muitos ou poucos hosts acoplados.
Quando conexes de interligao em redes se tornam mais complexas, os roteadores
necessitam saber sobre a topologia da interligao em redes, alm das redes s quais esto
conectados.

Cristiano Alan Torres

Pg. 19/85

Arquitetura TCP/IP

REDE
"1"

R1

REDE
"2"

R2

REDE
"3"

Figura 2.5. Trs redes interconectadas por dois roteadores.

Neste exemplo, o roteador R1 deve transferir da rede 1 para a rede 2 todos os pacotes
destinados a mquinas em qualquer das redes 2 e 3. Para uma grande interligao em redes
composta de muitas redes, a tarefa do roteador de tomar decises sobre por onde enviar
pacotes se torna mais complexa.
Alm de roteadores que conectam entre si redes fsicas, o software necessrio em cada host
para permitir que programas aplicativos usem a interligao em redes como se fosse uma nica
rede realmente fsica. Do ponto de vista da interligao em redes, qualquer sistema de
comunicao capaz de transferir pacotes considerado como uma nica rede, independente do
retardo, da vazo, do tamanho mximo do pacote ou da escala geogrfica.
O protocolo da interligao em redes do TCP/IP trata todas as redes do mesmo modo. Uma
rede local, como uma Ethernet, uma rede de rea maior, como o backbone de ANSNET, ou uma
ligao de ponto a ponto entre duas mquinas, cada uma conta como uma rede.

Cristiano Alan Torres

Pg. 20/85

Arquitetura TCP/IP

3. ENDEREAMENTO
Pensando em uma interligao em redes como uma grande rede igual a qualquer outra rede
fsica. A diferena que a interligao em redes uma estrutura virtual, idealizada por seus
projetistas e totalmente implantada em software. Assim, os projetistas esto livres para escolher
formatos e tamanhos de pacotes, endereos, tcnicas de entrega e assim por diante; nada
orientado pelo hardware. Para endereos, os projetistas de TCP/IP optaram por um esquema
anlogo ao endereamento de rede fsica, no qual a cada host da interligao atribudo um
endereo com nmero inteiro de 32 bits, denominado seu endereo IP. A parte interessante do
endereamento da interligao que os nmeros inteiros so escolhidos cuidadosamente para
tornar o roteamento eficiente. Especificamente, um endereo IP codifica a identificao da rede
qual um host se acopla, assim como a identificao de um nico host nessa rede. Resumindo:
A cada host de uma interligao em redes TCP/IP atribudo um endereo de
interligao em redes nico de 32 bits que usado em todas as comunicaes com
aquele host.
Os bits dos endereos IP para todos os hosts de uma rede dada compartilham um mesmo
prefixo. Conceitualmente, cada endereo um par (netid, hostid) em que netid identifica uma
rede e hostid identifica um host naquela rede. Na prtica, cada endereo IP deve Ter uma das
trs primeiras formas mostradas na Figura 3.1. Dado um endereo IP, seu tipo pode ser
determinado a partir de trs bits de alta ordem, sendo dois bits suficientes para distinguir entre
as trs classes principais:

Endereos do tipo A, so usados pelas numerosas redes que no possuem mais de 2 16


(ou seja, 65.536) hosts, dedicam sete bits para netid e 24 bits para hostid.

Endereos do tipo B, que so usados para redes de tamanho mdio que possuem entre
28 (ou seja, 256) e 216 hosts, alocam 14 bits para o netid e 16 bits para o hostid.

Cristiano Alan Torres

Pg. 21/85

Arquitetura TCP/IP

Endereos do tipo C, que possuem menos de 28 hosts, alocam 21 bits para o netid e
somente 8 bits para hostid.

O endereo IP foi definido de tal modo que possvel extrair as partes do netid ou do hostid
rapidamente. Os roteadores, que usam a parte netid de um endereo ao decidir qual o destino
de um pacote, dependem de uma extrao eficiente para alcanar velocidade alta.
0

16

Netid

0 Netid

1 0 Netid

1 1 0 Endereos multicast

1 1 1 0 Reservado para uso futuro

24

31

Hostid
Hostid
Hostid

Figura 3.1. As cinco formas de endereos da Internet (IP). As trs primeiras formas, classes A, B e C podem ser
diferenciadas pelos trs primeiros bits.

Quando os computadores convencionais possuem duas ou mais conexes fsicas so


denominados hosts multi-homed. Esses hosts e os roteadores necessitam de endereo IP
mltiplos. Cada endereo corresponde a uma das conexes de rede da mquina. Portanto,
como os endereos IP codificam no apenas uma rede, como tambm um host daquela rede,
os endereos IP no especificam um computador individual, e sim uma conexo rede. Assim,
um roteador conectando n redes tem n endereos diferentes de IP, um para cada conexo de
rede.
Os endereos IP so escritos como quatro nmeros inteiros decimais separados por pontos
decimais, no qual cada nmero inteiro fornece o valor de um octeto de endereo IP. Assim, o
endereo de 32 bits:
10000000

00001010

00000010

00011110

representado por:
128.10.2.30

Cristiano Alan Torres

Pg. 22/85

Arquitetura TCP/IP

Na realidade, a maioria dos softwares TCP/IP que apresenta ou requer uma pessoa para
manipular um endereo IP usa a notao decimal com ponto. Assim, compreender a relao
entre tipos de endereos IP e nmeros decimais pode ajudar. A tabela da Figura 3.2 resume a
escala de valores para cada tipo.
Classe
A
B
C
D
E

Endereo mais baixo


0.1.0.0
128.0.0.0
192.0.1.0
224.0.0.0
240.0.0.0

Endereo mais alto


126.0.0.0
191.255.0.0
223.255.255.0
239.255.255.255
247.255.255.255

Figura 3.2. A escala de valores decimais que correspondem a cada tipo de endereo IP.

3.1.

ENDEREOS DE REDES E DE BROADCAST

A maior vantagem de codificar informaes de rede em endereos de interligao em redes o


roteamento eficiente. Outra vantagem que os endereos de interligao em redes podem se
referir a redes, assim como a hosts. Por conveno, hostid zero nunca atribudo a um host
individual. Em vez disso, um endereo IP com hostid zero usado para se referir a essa prpria
rede. O esquema de endereamento da interligao em redes inclui um endereo de difuso
que se refere a todos os hosts da rede. De acordo com o padro, qualquer hostid que consista
de todos os 1s reservado para difuso. Em muitas tecnologias de rede, difuso pode ser to
eficiente quanto as transmisses normais; em outras, difuso apoiada pelo software da rede,
mas requer uma demora muito mais substancial do que uma transmisso nica. Algumas redes
no aceitam qualquer difuso. Assim, ter um endereo de difuso de IP no assegura a
disponibilidade ou a eficincia da entrega de difuso.
Um endereo de difuso direcionado pode ser interpretado sem ambivalncia em qualquer
etapa de uma interligao em redes porque identifica, de modo nico, a rede de destino, alm
de especificar difuso naquela rede. Os endereos de difuso direcionados fornecem um
poderoso mecanismo que permite a um sistema remoto enviar um pacote nico que ser
Cristiano Alan Torres

Pg. 23/85

Arquitetura TCP/IP

transmitido por difuso na rede especificada. Do ponto de vista de endereamento, a principal


desvantagem da difuso direcionada que ela requer conhecimento do endereo da rede.
Outra forma de endereo de difuso, denominada endereo de difuso limitado ou de rede
local, fornece um endereo de difuso para a rede local, independente do endereo atribudo de
IP. Consiste em trinta e dois 1s. Um host pode usar os endereos de difuso limitados coo parte
de um procedimento padro antes que ele aprenda seu endereo de IP ou o endereo para a
rede local. Entretanto, uma vez que o host aprenda o endereo correto de IP para a rede local,
ele deve usar difuso direcionada.
Em geral, o software da interligao em redes interpreta os campos que consistem em 0s
(zeros) para significar este. Assim, um endereo de IP com hostid igual a zero refere-se a
este host e outro de netid igual a zero refere-se a esta rede. Usar netid zero especialmente
importante nas circunstncias em que um host deseja comunicar-se em uma rede, mais ainda
no sabe o endereo IP dela. O host usa a netid zero temporariamente, e outros hosts da rede
interpretam o endereo como esta rede.

3.2.

ENDEREO DE LOOPBACK

A tabela da Figura 3.2 mostra que nem todos os endereos possveis foram atribudos a
classes. Por exemplo, o endereo 127.0.0.0, num valor da escala da classe A, reservado para
loopback, e utilizado no teste TCP/IP e para a comunicao na mquina local. Quando algum
programa usa o endereo de loopback como destino, o software de protocolo retorna os dados
sem enviar o trfego atravs de qualquer rede. Um pacote enviado a um endereo 127 da rede
no deve aparecer em nenhuma rede. Alm disso, um host ou um roteador nunca deve difundir
informaes sobre roteamento ou alcance para o nmero de rede 127; este no um endereo
de rede.

Cristiano Alan Torres

Pg. 24/85

Arquitetura TCP/IP

3.3.

PONTOS FRACOS NO ENDEREAMENTO

Codificar informaes de rede em um endereo pode ter suas desvantagens. A mais bvia
delas que os endereos referem-se s conexes de redes, no ao host: se um host se move
de uma rede para outra, seu endereo IP deve mudar.
Outra falha do esquema de endereamento que, quando qualquer rede tipo C cresce alm de
255 hosts, deve ter seu endereo mudado para um endereo tipo B. Apesar de isto parecer um
problema menor, mudar endereos de redes pode tomar muito tempo e ser difcil para depurar.
Coo muitos softwares no so projetados para trabalhar com endereos mltiplos para a
mesma rede fsica, os administradores no podem planejar uma transio tranqila, na qual
introduzam novos endereos lentamente. Ao contrrio, devem interromper o uso de um
endereo de rede, mudar os endereos de todas as mquinas e, ento, recuperar a
comunicao usando o novo endereo de rede.
Saber apenas um endereo de IP, para determinado destino, talvez no seja suficiente; pode
ser impossvel alcanar o destino usando tal endereo. Considere o exemplo da interligao em
redes mostrado na Figura 3.3. Nesta figura, dois hosts, A e B, conectam-se rede 1 quase
sempre se comunicam diretamente usando aquela rede. Assim, os usurios do host A
normalmente devem referir-se ao host B usando endereo IP I3. Existe outro caminho de A at
B, atravs do roteador R, e usado sempre que A envia um pacote com endereo IP I 5
(endereo de B na rede 2). Agora, suponha que a conexo de B para a rede 1 falhe, mas a
mquina em si continue trabalhando. Os usurios em A, que especificam endereos IP I3, no
alcanam B apesar de os usurios que especificam endereos I5 poderem alcanar.

Cristiano Alan Torres

Pg. 25/85

Arquitetura TCP/IP

REDE 1
I2

I1
A

I3
B

I4
I5
REDE 2

Figura 3.3. Um exemplo de interligao em redes com um host de multi-homed, B, que indica um problema com o
esquema de endereamento IP. Se a interface I3 desconectada, A deve usar o endereo I5 para alcanar B,
enviando pacotes atravs do roteador R.

3.4.

UM EXEMPLO

Para esclarecer o esquema de endereamento IP, considere um exemplo de duas redes de


Universidades conectadas IBPI-NET. A Figura 3.4 mostra os endereos de redes e ilustra
como os roteadores conectam redes entre si.

UMC
(Ethernet)
128.10.0.0

ROTEADORES

UNICSUL
(Token)
192.5.48.0

IBPI-NET
10.0.0.0

Figura 3.4. A conexo lgica de duas redes ao provedor IBPI-NET.

O exemplo mostra trs redes e os nmeros de rede que lhes foram designados: a IBPI-NET
(10.0.0.0), a UMC (128.10.0.0) e a UNICSUL (192.5.48.0). De acordo com a tabela da Figura
3.2, os endereos tm classes A, B e C, respectivamente.
Cristiano Alan Torres

Pg. 26/85

Arquitetura TCP/IP

A Figura 3.5 mostra as mesmas redes com host, e endereos Internet designados para cada
conexo de rede. Quatro hosts cognominados HOST1, HOST2, HOST3 e HOST4 acoplam-se
s redes; ROUTER1 um roteador que conecta a IBPI-NET e a rede token ring (UNICSUL), e
ROUTER2 um roteador que conecta a rede UNICSUL Ethernet (UMC). O HOST2 tem
conexes tanto na Ethernet quanto na rede token ring, podendo, assim, alcanar destinos
diretamente em qualquer rede. Apesar de um host de multi-homed, como HOST2, poder ser
configurado para rotear pacotes entre as duas redes, a maioria dos sites usa computadores
dedicados como roteadores, a fim de evitar sobrecarregar sistemas de computao
convencionais com o processamento requerido pelo roteamento. Na figura, um roteador
dedicado, ROUTER2 , executa a tarefa de rotear trfego entre a Ethernet e as redes token ring.

UMC (Ethernet)
128.10.0.0
128.10.2.3
Host
2

128.10.2.8
Host
3

128.10.2.26
Host
4

192.5.48.3

192.5.48.7
128.10.2.70

UNICSUL
(Token)
192.5.48.0

192.5.48.6

Router2

10.0.0.37

IBPI-NET

Router1
192.5.48.1
Host
1

Figura 3.5. Exemplo de designao de endereos IP para roteadores e hosts acoplados a trs redes da figura
anterior.

Cristiano Alan Torres

Pg. 27/85

Arquitetura TCP/IP

4. PROTOCOLOS

Os protocolos so os padres que especificam como os dados so apresentados ao serem


transmitidos de uma mquina para outra. Os protocolos representam para a comunicao
computadorizada o que a linguagem de programao para a computao.
Os complexos sistemas de comunicao de dados no usam um nico protocolo para tratar
com todas as tarefas de transmisso. Ao contrrio, requerem uma pilha de protocolos
cooperativos, algumas vezes chamados famlia de protocolo ou pilha de protocolo. Para
compreender a razo, vejamos os problemas que surgem quando as mquinas se comunicam
atravs de uma rede de dados:

Falha de hardware. Um host ou roteador pode falhar tanto porque o hardware falha como
porque o sistema operacional entra em colapso. Um enlace de transmisso de rede pode
falhar ou ser desconectado acidentalmente. O software de protocolo necessita detectar tais
falhas e recuperar-se delas, se possvel.

Congestionamento de redes. Mesmo quando todo o hardware e software operam


corretamente, as redes tm capacidade finita que pode ser ultrapassada. Os protocolos
precisam encontrar formas para que uma mquina em congestionamento possa suprimir o
excesso de trfego.

Demora ou perda de pacotes. Algumas vezes, os pacotes demoram muito ou so perdidos.


Os protocolos precisam aprender sobre as falhas ou adaptar-se a longas demoras.

Danificao de dados. Interferncia eltrica ou magntica ou falhas de hardware podem


causar a transmisso de erros que danificam os contedos dos dados transmitidos. Os
protocolos necessitam detectar e recuperar tais erros.

Cristiano Alan Torres

Pg. 28/85

Arquitetura TCP/IP

Duplicao de dados ou erros seqenciais. Redes que oferecem rotas mltiplas podem
transmitir dados fora de seqncia ou podem transmitir duplicatas de pacotes. Os
protocolos necessitam reorganizar os pacotes e remover algumas duplicatas.

4.1.

MODELO DA DIVISO EM CAMADAS OSI

Existe um modelo desenvolvido pela ISO (International Standards Organization) usado para
descrever a estrutura e funcionamento dos protocolos de comunicao de dados denominado
Modelo de Referncia OSI (Open Systems Interconnect). A base deste modelo a diviso da
complexidade do projeto organizando a rede em camadas, com nveis de abstrao diferentes
definindo uma pilha de protocolos. Ele contm sete camadas, sendo cada uma, responsvel por
oferecer servios s camadas superiores de uma forma transparente, ou seja, as demais
camadas no precisam saber de detalhes da implementao do servio implementado nesta
camada.
Camada
7
6
5
4
3
2
1

Funcionalidade
Aplicativo
Apresentao
Sesso
Transporte
Rede
Enlaces de Dados
Conexo Fsica

Figura 4.1. Modelo OSI de referncia das sete camadas para o protocolo.

Descrio bsica das camadas do modelo OSI:

Camada fsica. Especifica um padro para a interconexo fsica entre hosts e comutadores
de pacote de rede, e tambm os procedimentos usados para transferir pacotes de uma
mquina para outra.

Cristiano Alan Torres

Pg. 29/85

Arquitetura TCP/IP

Camada de enlaces de dados. Especifica como os dados transitam entre um comutador de


pacote e um host ao qual est conectado. Define o formato dos quadros e especifica como
as duas mquinas reconhecem os limites do quadro. J que a transmisso de erros pode
destruir os dados, o protocolo de nvel inclui a deteco de erro, permitindo que as duas
saibam quando a transferncia de um quadro foi bem-sucedida.

Camada de rede. Contm a funcionalidade que completa a definio da interao entre o


host e a rede. Denominado camada de rede ou sub-rede de comunicao, esse nvel
define a unidade bsica de transferncia na rede e inclui os conceitos de endereamento e
roteamento de destino.

Camada de transporte. Garante que o destino recebe os dados extamente da forma que
eles tenham sido mandados. Para isso ela tambm oferece servios com conexo e sem
conexo, como a camada de redes, mas estes so melhorados. A camada de rede faz
parte da sub-rede de comunicao, pertence concessionria e pode variar de uma rede
para outra. Com a camada de transporte possvel rodar vrios programas de aplicao
sobre redes diferentes, uma vez que se utiliza primitivos padres da camada de transporte.

Camada sesso. Permite que os usurios estabeleam uma sesso, ou seja, um ambiente
iniciado a partir de uma conexo e que permite a transferncia organizada de dados. Alm
disso, gerencia os dilogos, ou seja, o controle de quem deve ser a vez de conversar.
Existem

conexes

full-duplex,

onde

os

dados

se

movem

nos

dois

sentidos

simultaneamente, e half-duplex, onde somente um lado fala a cada vez.

Camada de apresentao. Cuida dos problemas relativos a representao dos dados


transmitidos, como converso, criptografia e compresso.

Camada de aplicativo. Contm os programas com os quais o usurio interfaceia mais


diretamente. Alguns desses programas tornaram-se extremamente teis e acabaram por
definir uma srie de padronizaes. Entre os exemplos possveis esto: correio eletrnico,
transferncia de arquivos, acessos a arquivos remotos, entre outros.

Cristiano Alan Torres

Pg. 30/85

Arquitetura TCP/IP

4.2.

MODELO DA DIVISO EM CAMADAS TCP/IP

O software TCP/IP organizado em quatro camadas conceituais construdas em uma quinta


camada de hardware. A Figura 4.2 mostra as camadas conceituais, assim como a forma dos
dados medida que passa entre elas.
Camada Conceitual

Objetos Passados entre Camadas

Aplicativo

Mensagens ou Fluxos

Transporte

Pacotes de Protocolos de Transporte

Inter-rede

Datagramas IP

Interface de Redes

Quadros de Redes Especficas

Hardware
Figura 4.2. As quatro camadas conceituais do software TCP/IP e a forma dos objetos que passam entre elas.

Camada de aplicativos. No nvel mais alto, os usurios rodam programas aplicativos que
acessam servios disponveis atravs de uma interligao em redes TCP/IP. Um aplicativo
interage com um dos protocolos do nvel de transporte para enviar ou receber dados. Cada
programa aplicativo escolhe o estilo de transporte necessrio, que tanto pode ser uma
seqncia de mensagens individuais ou um stream contnuo de bytes. O programa
aplicativo passa, para o nvel de transporte, os dados na forma adequada, para que
possam, ento, ser transmitidos.

Camada de Transporte. A primeira funo da camada de transporte prover a


comunicao de um programa aplicativo para outro. Tal comunicao sempre chamada
fim-a-fim. A camada de transporte pode regular o fluxo de informaes. Ela pode fornecer
transporte confivel, assegurando que os dados cheguem sem erros e em seqncia. Para
isso, o protocolo de transporte faz com que o lado receptor envie confirmaes e o lado
transmissor retransmita pacotes perdidos. O software da camada de transporte divide o

Cristiano Alan Torres

Pg. 31/85

Arquitetura TCP/IP

fluxo de dados transmitidos em pequenas partes (algumas vezes chamadas pacotes) e


passe cada pacote, juntamente com o endereo de destino, camada seguinte para ser
transmitido.

Camada Internet. Como vimos, a camada da Internet trata das informaes de uma
mquina para outra. Aceita um pedido para enviar um pacote originrio da camada de
transporte juntamente com um identificao da mquina para a qual o pacote deve ser
enviado. Encapsula o pacote em um datagrama IP, preenche o cabealho do datagrama,
usa o algoritmo de roteamento para decidir se entrega o datagrama diretamente ou o envia
para um roteador e passa o datagrama para a interface de rede apropriada para
transmisso. A camada Internet tambm lida com datagramas de entrada, verificando sua
validade, e usa o algoritmo de roteamento para decidir se o datagrama deve ser
processado no local ou se deve ser enviado. Para os datagramas endereados mquina
local, o software da camada de interligao em redes apaga o cabealho do datagrama e,
entre vrios protocolos de transporte, escolhe aquele que vai cuidar do pacote.

Camada de interface de rede. O nvel mais baixo do software TCP/IP compreende uma
camada da interface de rede responsvel pela aceitao de datagramas IP e por sua
transmisso atravs de uma rede especfica. Uma interface de rede pode consistir em um
driver de dispositivo ou em um subsistema complexo que usa seu prprio protocolo de
enlace de dados.

4.3.

PROTOCOLOS DE TRANSPORTE

4.3.1. UDP (User Datagram Protocol)

Na pilha de protocolos TCP/IP, o UDP, fornece o mecanismo principal utilizado pelos programas
aplicativos para enviar datagramas a outros programas iguais. O UDP fornece um servio de
Cristiano Alan Torres

Pg. 32/85

Arquitetura TCP/IP

transmisso sem conexo, no-confivel, usando o IP para transportar mensagens entre


mquinas. Usa o IP para transportar mensagens, porm acrescenta a habilidade de distinguir
entre mltiplos destinos em um certo host.
Cada mensagem UDP conhecida como um datagrama de usurio, que consiste em duas
partes: um cabealho UDP e uma rea de dados UDP. Como a Figura 4.3 mostra, o cabealho
est dividido em quatro campos de 16 bits que especificam a porta da qual a mensagem foi
enviada, a porta qual a mensagem destinada, o comprimento da mensagem e a soma de
verificao UDP.
0

16

24

PORTA DE ORIGEM UDP

PORTA DE DESTINO UDP

COMPRIMENTO DE MENSAGEM UDP

SOMA DE VERIFICAO UDP

31

DADOS
...
Figura 4.3. O formato dos campos em um datagrama UDP.

Os campos PORTA DE ORIGEM e PORTA DE DESTINO contm os nmeros de porta do


protocolo UDP de 16 bits usados para demultiplexar os datagramas entre os processos que
esperam para receb-los. A PORTA DE ORIGEM opcional. Quando usada, especifica a porta
para a qual devem ser enviadas as respostas; se no usada, dever ser zero.
O campo COMPRIMENTO contm uma contagem de octetos no datagrama UDP, incluindo o
cabealho UDP e os dados de usurio. Assim, o valor mnimo para COMPRIMENTO oito,
que o comprimento apenas do cabealho.
A soma de verificao UDP opcional e no precisa ser usada; um valor de zero no campo
SOMA DE VERIFICAO significa que a soma de verificao no foi calculada. Os projetistas
resolveram tornar opcional a soma de verificao a fim de permitir que as implementaes
operassem com pouco overhead ao usar UDP atravs de uma rede local altamente confivel. O
IP no calcula uma soma de verificao na parte dos dados de um datagrama IP, portanto, a

Cristiano Alan Torres

Pg. 33/85

Arquitetura TCP/IP

soma de verificao oferece o nico modo de assegurar que os dados tenham chegado intactos
e possam ser usados.
A camada IP responsvel apenas pela transferncia de dados entre um par de hosts em uma
interligao em redes, enquanto a camada UDP responsvel apenas pela diferenciao entre
mltiplas origens ou destinos em um host. Desse modo, apenas o cabealho IP identifica os
hosts de origem e destino; apenas a camada UDP identifica as portas de origem e destino em
um host.
O software colocado em cada camada de uma hierarquia de protocolo deve ser capaz de
multiplexar ou demultiplexar mltiplos objetos da camada seguinte. O software UDP apresenta
outro exemplo de multiplexao e demultiplexao. Aceita datagramas UDP de muitos
programas aplicativos e os passa ao IP, para transmisso, e aceita datagramas UDP recebidos
de IP e os passa ao programa aplicativo apropriado. Conceitualmente, toda a multiplexao e
demultiplexao entre o software UDP e os programas aplicativos ocorre atravs do mecanismo
da porta. Na prtica, cada programa aplicativo deve negociar com o sistema operacional a fim
de obter uma porta de protocolo e um nmero de porta correspondente, antes que ele possa
enviar um datagrama UDP.
O modo mais simples de conceber uma porta UDP uma fila. Na maioria das implementaes,
quando um programa aplicativo negocia com um sistema operacional para usar determinada
porta, o sistema operacional cria uma fila interna que pode reter as mensagens que esto
chegando. Freqentemente, o aplicativo pode especificar ou mudar o tamanho da fila. Quando
o UDP recebe um datagrama, verifica se o nmero de porta de destino confere com uma das
portas atualmente em uso. Se no conferir, envia uma mensagem de erro de porta no-atingida
e descarta o datagrama. Se for encontrada uma correspondncia, o UDP enfileira o novo
datagrama na porta onde o programa aplicativo pode acess-lo. Naturalmente, ocorrer um erro
se a porta estiver cheia e o UDP descartar o datagrama recebido.
O UDP um protocolo mais rpido do que o TCP, pelo fato de no verificar o reconhecimento
das mensagens enviadas. Por este mesmo motivo, no confivel como o TCP.

Cristiano Alan Torres

Pg. 34/85

Arquitetura TCP/IP

4.3.2. TCP (Transmission Control Protocol)

Em um nvel mais baixo, as redes de comunicao fornecem uma entrega de pacotes noconfivel, os pacotes podem ser perdidos ou danificados quando erros de transmisso
interferem nos dados. As redes que roteiam pacotes dinamicamente podem entreg-los fora de
ordem, entreg-los aps um intervalo substancial, ou entregar reprodues.
Em um nvel mais alto, os programas aplicativos freqentemente precisam enviar grandes
volumes de dados de um computador a outro. A utilizao de um sistema de transmisso sem
conexo e no-confivel torna-se tediosa e irritante, e requer que os programadores criem
deteco e recuperao de erros em cada programa aplicativo. Um dos objetivos da pesquisa
de protocolos de rede foi encontrar solues de fins gerais para problemas de transmisso
confivel de streams de pacotes, possibilitando aos especialistas criar um nico protocolo para
transmisso de stream de dados que todos os programas aplicativos pudessem utilizar.
O servio definido pelo TCP, o servio de stream confivel to importante que toda a pilha
de protocolos citada como TCP/IP. O TCP um protocolo de comunicao, e no um
software, o protocolo especifica o formato dos dados e das confirmaes que os dois
computadores trocam para oferecer uma transferncia confivel e, tambm, os procedimentos
de que se valem os computadores para assegurar que os dados cheguem corretamente.
O TCP pode ser utilizado com uma variedade de sistema de transmisso de pacotes, inclusive
o servio de transmisso de datagramas IP. O TCP pode, por exemplo, ser implementado para
utilizar linhas telefnicas por discagem, rede local, rede de fibra ptica de alta velocidade, ou
uma rede de longas distncias de velocidade mnima. Na realidade, um dos pontos fortes do
TCP a grande variedade de sistemas de transmisso que ele pode usar.
O TCP posiciona-se acima do IP no esquema de diviso em camadas do protocolo, permite que
programas aplicativos mltiplos, de determinada mquina, comuniquem-se simultaneamente, e
Cristiano Alan Torres

Pg. 35/85

Arquitetura TCP/IP

ele demultiplexa o trfego TCP de entrada entre os programas aplicativos. Como o UDP, o TCP
utiliza nmeros de porta de protocolo para identificar o destino final em uma mquina. Porm,
as portas TCP so muito mais complexas, porque determinado nmero delas no corresponde
a um objeto nico. Ao contrrio, o TCP foi estruturado na abstrao de conexo, em que os
objetos a serem identificados so conexes de circuito virtual, e no portas isoladas.
A unidade de transferncia entre o software TCP de duas mquinas denominada segmento.
Os segmentos so trocados para estabelecer conexes, transferir dados, enviar confirmaes,
informar tamanhos de janelas e encerrar conexes. A Figura 4.4 mostra o formato do segmento
TCP.
0

16

PORTA DE ORIGEM

24

31

PORTA DE DESTINO

NMERO DE SEQNCIA
NMERO DO RECONHECIMENTO
HLEN

RESERVADO

SOMA DE VERIFICAO

BITS DE CDIGO JANELA


PONTEIRO URGENTE

OPES (SE HOUVER)

ENCHIMENTO

DADOS
...
Figura 4.4. O formato de um segmento TCP com o cabealho TCP seguido de dados.

Cada segmento dividido em duas partes: um cabealho seguido de dados. O cabealho,


conhecido como cabealho TCP, transporta a identificao esperada e as informaes de
controle. Os campos PORTA DE ORIGEM e PORTA DE DESTINO contm os nmeros de
portas TCP que identificam os programas aplicativos nas extremidades da conexo. O campo
NMERO DE SEQNCIA identifica a posio no stream de bytes do transmissor dos dados
no segmento. O campo NMERO DO RECONHECIMENTO identifica o nmero do octeto que a
origem espera receber depois. Observe que o nmero seqencial refere-se ao stream que
segue na mesma direo que o segmento, enquanto o nmero do reconhecimento refere-se ao
stream que segue em direo oposta ao segmento.

Cristiano Alan Torres

Pg. 36/85

Arquitetura TCP/IP

O campo HLEN contm um nmero inteiro que especifica o comprimento do cabealho do


segmento, medido em mltiplos de 32 bits. Isso necessrio porque o campo OPES varia
em comprimento, dependendo de quais opes foram includas. Assim, o tamanho do
cabealho TCP varia de acordo com as opes selecionadas.
Uma das idias mais importantes e complexas em TCP concentra-se na maneira como ele trata
o timeout e a retransmisso. A exemplo de outro protocolos confiveis, o TCP espera que o
destino envie confirmao toda vez que recebe novos octetos, com xito, do stream de dados.
Sempre que envia um segmento, o TCP inicia um temporizador e espera uma confirmao. Se
o temporizador terminar antes que os dados do segmento tenham sido confirmados, o TCP
aceita que esse segmento foi perdido ou destrudo e o retransmite. O software TCP precisa
aceitar as duas grandes diferenas entre o tempo necessrio para atingir vrios destinos e as
alteraes necessrias no tempo para atingir um determinado destino, de acordo com a
variao de carga do trfego. O TCP monitora o desempenho de cada conexo e deduz valores
razoveis para timeout. medida que o desempenho de uma conexo muda, o TCP revisa seu
valor de timeout (ou seja, adapta-se mudana).
O congestionamento uma condio de retardo longo causado por uma sobrecarga de
datagramas em um ou mais pontos de comutao (p. ex., em roteadores). Quando ocorre um
congestionamento, os intervalos aumentam e o roteador comea a enfileirar datagramas at
que possa distribu-los. Precisamos lembrar que cada roteador possui uma capacidade limitada
de armazenamento e que os datagramas concorrem para esse armazenamento. Na pior
hiptese, o nmero total de datagramas que chega ao roteador congestionado cresce at que o
roteador alcance a capacidade e comece a eliminar datagramas. Lamentavelmente, a maioria
dos protocolos de transporte utiliza timeout e retransmisso, de modo que reajam ao aumento
do

retardo

com

retransmisso

de

datagramas.

As

retransmisses

agravam

congestionamento em vez de o amenizarem. Se no for verificado, o aumento do trfego


produzir um aumento do retardo, provocando uma elevao do trfego, e assim por diante, at
que a rede torne-se intil; mas os protocolos de transporte, como o TCP, podem evitar o
congestionamento reduzindo automaticamente as taxas de transmisso sempre que ocorrerem
retardo. Logicamente, os algoritmos para evitar congestionamentos precisam ser criados

De acordo com a especificao, o campo HLEN o deslocamento dos dados da rea situada dentro do segmento.

Cristiano Alan Torres

Pg. 37/85

Arquitetura TCP/IP

cuidadosamente porque, mesmo em condies operacionais normais, uma interligao em


redes exibir grande variao de retardo de ida e volta.

4.4.

PROTOCOLOS DE REDE

4.4.1. IP (Internet Protocol)

O servio mais importante de uma rede consiste em um sistema de entrega de pacotes.


Tecnicamente, o servio definido como um sistema de transmisso sem conexo, e noconfivel; anlogo ao servio oferecido por hardwares de redes. O servio conhecido como
no-confivel porque a entrega no garantida. O pacote pode ser perdido, reproduzido,
atrasar-se ou ser entregue com problemas, mas o servio no detectar tais condies, nem
informar isso ao transmissor nem ao receptor. Ele denominado sem conexo porque cada
pacote independente dos outros, uma seqncia de pacotes enviados de um computador a
outro pode trafegar por caminhos diferentes, ou alguns podem ser perdidos enquanto outros
so entregues.
O protocolo que define o mecanismo de transmisso sem conexo e no-confivel conhecido
como Internet Protocol. O IP oferece trs definies importantes:

O protocolo IP define a unidade bsica de transferncia de dados utilizada atravs de uma


interligao em redes TCP/IP, assim, ela especifica o formato exato de todos os dados
medida que ela passa pela interligao em redes TCP/IP.

O software IP desempenha a funo de roteamento, escolhendo um caminho por onde os


dados sero enviados.

Cristiano Alan Torres

Pg. 38/85

Arquitetura TCP/IP

O IP inclui um conjunto de regras que concentram a idia da entrega no-confivel de


pacotes, que definem como os hosts e os roteadores devem processar os pacotes, como e
quando as mensagens de erro devem ser geradas e as condies segundo as quais os
pacotes podem ser descarregados.

Numa rede fsica, a unidade de transferncia um quadro que contm um cabealho e dados,
onde o cabealho fornece informaes como endereo de origem e de destino (fsicos). A
interligao em redes denomina sua unidade bsica de transferncia de um datagrama IP, que
dividido em cabealho e reas de dados. A diferena que o cabealho do datagrama contm
endereos IP, enquanto o quadro contm os endereos fsicos.
A Figura 4.5 mostra a organizao dos campos em um datagrama:
0

VERS

HLEN

TIPO DE SERVIO

16

24

31

COMPRIMENTO TOTAL

IDENTIFICAO

FLAGS

DESLOCAMENTO DO FRAGMENTO

TEMPO DE VIDA PROTOCOLO

VERIFICAO DA SOMA DO CABEALHO

ENDEREO IP DE ORIGEM
ENDEREO IP DE DESTINO
OPES IP (SE HOUVER)

PADDING

DADOS
...
Figura 4.5. Formato de um datagrama da Internet, a unidade bsica de transferncia em um interligao em redes
TCP/IP.

J que o processamento de datagramas se d em softwares, o contedo e o formato no so


retringidos por quaisquer hardwares. O primeiro campo de quatro bits de um datagrama
(VERS), por exemplo, contm a verso do protocolo IP utilizada para criar o datagrama. Ele
utilizado para verificar se o transmissor, o receptor e quaisquer roteadores existentes entre eles
concordam quanto ao formato do datagrama. Todo software IP precisa verificar o campo de
verso antes de processar um datagrama, para assegurar-se de que ele se adapta ao formato
que o software espera. Se os padres mudarem, as mquinas rejeitaro datagramas com
Cristiano Alan Torres

Pg. 39/85

Arquitetura TCP/IP

verses de protocolo diferentes dos seus, impedindo que eles deturpem o contedo do
datagrama com um formato desatualizado. A verso atual do protocolo IP a quatro.
O campo de comprimento do cabealho (HLEN), tambm de quatro bits, fornece o comprimento
do cabealho do datagrama medido em palavras de 32 bits. Todos os campos do cabealho
contm um comprimento fixo, exceto para OPES IP e os campos correspondentes
PADDING. O cabealho mais comum, que no contm qualquer opo e nenhum
preenchimento, mede 20 octetos e o campo de comprimento de cabealho igual a cinco.
O campo COMPRIMENTO TOTAL, fornece o comprimento do datagrama IP medido em
octetos, incluindo octetos no cabealho e nos dados. O tamanho da rea de dados pode ser
calculado subtraindo-se de COMPRIMENTO TOTAL o comprimento do cabealho (HLEN). J
que o campo COMPRIMENTO TOTAL, possui 16 bits de coprimento, o maior tamanho possvel
para um datagrama IP 216 ou 65.535 octetos. Na maioria do aplicativos, essa no uma
limitao rgida. No futuro pode tornar-se mais importante, se as redes de velocidade mais alta
puderem transportar pacotes de dados maiores que 65.535 octetos.
Trs campos no cabealho do datagrama, IDENTIFICAO, FLAGS e DESLOCAMENTO DO
FRAGMENTO, controlam a fragmentao e a remontagem de datagramas. O campo
IDENTIFICAO contm um nmero inteiro nico que identifica o datagrama, sua finalidade
principal permitir que o destino saiba quais datagramas esto chegando e a que datagramas
pertencem. O campo DESLOCAMENTO DO FRAGMENTO responsvel pela remontagem do
datagrama, o destino precisa obter todos os fragmentos que iniciam com o fragmento que
possui deslocamento zero at o fragmento de maior deslocamento. O campo FLAGS controlam
a fragmentao, define se o datagrama pode ou no ser fragmentado e se o destino reuniu
todos os fragmentos.
O campo TEMPO DE VIDA especifica quanto tempo, em segundos, o datagrama pode
permanecer no sistema de interligao em redes, os roteadores e os hosts que processam
datagramas precisam decrementar o campo TEMPO DE VIDA medida que o tempo passa e
remover o datagrama da interligao quando seu tempo expira. PROTOCOLO especifica qual

Cristiano Alan Torres

Pg. 40/85

Arquitetura TCP/IP

protocolo de alto nvel foi utilizado para criar a mensagem que est sendo transportada na rea
DADOS do datagrama.
O campo VERIFICAO DA SOMA DO CABEALHO assegura a integridade dos valores de
cabealho. A verificao IP formada com o tratamento do cabealho como uma seqncia de
nmeros inteiros de 16 bits (na ordem de bytes da rede), reunindo-os com uma aritmtica
complemento de um, e a seguir considerando o complemento de um como o resultado. Para a
finalidade de calcular a soma de verificao, considera-se que o campo VERIFICAO DA
SOMA DO CABEALHO contenha zero.
Os campos ENDEREO IP DE ORIGEM e ENDEREO IP DE DESTINO contm endereos IP
de 32 bits do transmissor do datagrama e do receptor desejado. Embora o datagrama possa ser
roteado atravs de muiots roteadores intermedirios, os campos da origem e destino nunca
mudam; eles especificam os endereos IP da origem e do ltimo destino.
O campo denominado DADOS mostra o incio da rea de dados do datagrama, seu
comprimento depende, logicamente, do que est sendo enviado no datagrama. O campo
OPES IP que se segue ao endereo de destino no necessrio em todo datagrama, e as
opes so includas principalmente para testes ou depurao da rede. Contudo, o
processamento de opes parte integrante do protocolo IP; assim, todas as implementaes
de padres precisam inclu-lo. O campo PADDING depende das opes selecionadas. Ele
representa bits contendo zero e que podem ser necessrios para garantir que o cabealho do
datagrama se estenda at o mltiplo exato de 32 bits.
O objetivo do IP fornecer uma rede virtual que abranja vrias redes fsicas e oferea um
servio de entrega de datagrama sem conexo. O algoritmo de roteamento IP deve escolher a
forma pela qual enviar um datagrama atravs de vrias redes fsicas. O roteamento se
classifica em dois tipos: encaminhamento direto e encaminhamento indireto. O
encaminhamento direto a transmisso de um datagrama, atravs de uma nica rede fsica
para outra mquina. Duas mquinas s podem executar o encaminhamento direta se ambas se
conectarem diretamente a uma mesma rede fsica (p. ex., uma nica Ethernet). O

Cristiano Alan Torres

Pg. 41/85

Arquitetura TCP/IP

encaminhamento indireto ocorre quando o destino no se encontra na mesma rede fsica,


forando o transmissor a passar o datagrama para um roteador executar a entrega.
O algoritmo de roteamento IP pode ser descrito da seguinte forma:
Extrai o endereo IP de destino, D, do datagrama e calcule o prefixo da rede, N;
Se N corresponder com qualquer endereo de rede conectado
diretamente entregue datagrama ao destino D atravs desta rede
(Isto envolve converter D para um endereo fsico, encapsular o datagrama e enviar o
quadro.)
Se a tabela contiver uma rota especfica do host para D
envie o datagrama para o prximo passo da rota especificada na tabela
Se a tabela contiver uma rota para a rede N
envie o datagrama para o prximo passo da rota especificada na tabela
Se a tabela contiver uma rota padro
envie o datagrama para o roteador padro especificado na tabela
Caso contrrio declare um erro de roteamento;
O endereo IP selecionado pelo algoritmo de roteamento IP conhecido como endereo do
prximo passo da rota, porque indica para onde o datagrama deve ser enviado (mesmo que
no seja o ltimo destino). O software da interface de rede vincula o endereo do prximo
passo da rota a um endereo fsico, forma um quadro usando aquele endereo fsico, coloca o
datagrama na parte de dados do quadro e envia o resultado. Aps usar o endereo do prximo
passo da rota para encontrar um endereo fsico, o software de interface da rede descarta o
endereo do prximo passo da rota.
Quando um datagrama IP chega a um host, o software de interface da rede entrega-o ao
software IP para processamento. Se o endereo de destino do datagrama corresponder ao
endereo de IP do host, o software IP do host aceita o datagrama e passa-o ao software
apropriado, do protocolo de nvel mais alto, para posterior processamento. Se no houver
correspondncia com o IP de destino, o host deve descartar o datagrama (ou seja, os hosts
ficam proibidos de tentar encaminhar datagramas acidentalmente roteados para a mquina
errada).
O algoritmo de roteamento da interligao em redes orientado por tabela e usa apenas
endereos IP. Embora seja possvel para uma tabela de roteamento conter um endereo de
Cristiano Alan Torres

Pg. 42/85

Arquitetura TCP/IP

destino especfico ao host, a maior parte dessas tabelas contm apenas endereos de rede,
mantendo pequenas as tabelas de roteamento. O uso de uma rota padro tambm pode manter
pequena a tabela de roteamento, principalmente para hosts que s conseguem acessar um
roteador.

4.4.2. ICMP (Internet Control Message Protocol)

Para permitir que os roteadores de uma interligao em redes informem os erros ou forneam
informaes sobre ocorrncias inesperadas, os projetistas acrescentaram aos protocolos
TCP/IP um mecanismo de mensagem para fins especficos, conhecido como ICMP Internet
Control Message Protocol (Protocolo Internet de Mensagem de Controle), considerado uma
parte necessria do IP e deve ser includo em cada implementao de IP.
O ICMP permite que os roteadores enviem mensagens de erro ou de controle aos outros
roteadores ou aos hosts; possibilita a comunicao entre o software do IP em uma mquina, e o
software de IP em outra. Um host pode usar o ICMP para se corresponder com um roteador ou
com outro host. A principal vantagem de permitir que os hosts usem ICMP que isto fornece um
mecanismo nico usado para todas as mensagens de controle de informao. Do ponto de
vista tcnico, o ICMP um mecanismo para relatar erros. Fornece um meio pelo qual os
roteadores que encontram erros possam lev-los ao conhecimento do transmissor.
As mensagens ICMP so geradas por gateways na rota de transporte de um datagrama ou pela
estao de destino. Quando ocorre algum problema previsto pelo ICMP. A mensagem ICMP
descrevendo a situao preparada e entregue camada IP (Figura 4.6), que adiciona
mensagem ICMP o cabealho IP e envia ao emissor do datagrama com o qual ocorreu o
problema.

Cristiano Alan Torres

Pg. 43/85

Arquitetura TCP/IP

Mensagem ICMP
Camada IP

Cabealho IP

Camada Inferior

Cabealho do Quadro

Dados IP
Dados do Quadro

Figura 4.6. Encapsulamento da mensagem ICMP em um Datagrama IP.

4.4.3. ARP (Address Resolution Protocol)

Os endereos IP so atribudos independente de um endereo de hardware fsico de uma


mquina. Para enviar um pacote de interligao em redes atravs de uma rede fsica de um
computador para outro, o software de rede deve mapear o endereo IP em um endereo fsico
de hardware e usar o endereo de hardware para transmitir o quadro. Se os endereos de
hardware forem menores do que os endereos IP, um mapeamento direto pode ser
estabelecido tendo o endereo fsico da mquina codificado em seu endereo IP. De outra
maneira, os mapeamentos devem ser executados dinamicamente. O ARP executa a converso
de endereo dinmica, usando somente o sistema de comunicao de rede de baixo nvel. ARP
permite que as mquinas convertam endereos sem manter um registro permanente das
vinculaes.
Uma mquina usa ARP para descobrir o endereo de hardware de outra mquina, difundindo
uma solicitao ARP. A solicitao contm o endereo IP da mquina para o qual um endereo
de hardware requisitado. Todas as mquinas de uma rede recebem uma solicitao ARP. Se a
solicitao combina com um endereo IP de mquina, a mquina responde enviando uma
resposta que contm o endereo de hardware necessitado. As respostas so dirigidas para uma
mquina; no so transmitidas por difuso.

Cristiano Alan Torres

Pg. 44/85

Arquitetura TCP/IP

Para tornar ARP eficiente, cada mquina trata as vinculaes entre endereos fsicos IP. Como
o trfego de interligao em redes geralmente consiste em uma seqncia de interaes entre
pares de mquinas, o cache elimina muitas solicitaes de difuso ARP.

4.4.4. RARP (Reverse Address Resolution Protocol)

Este protocolo destina-se soluo do problema inverso ao resolvido pelo ARP. O problema
RARP um host que no conhece o seu prprio endereo IP ou o de um outro host, mas
possui o endereo fsico correspondente. O protocolo RARP permite que a partir do endereo
fsico, seja obtido o endereo IP correspondente. Para que o RARP funcione, necessrio ao
menos um servidor RARP, que possui informaes de mapeamento de todos os hosts da rede.
Pode haver um ou vrios servidores RARP na mesma rede.
A principal vantagem de possuir diversas mquinas funcionando como servidores RARP
tornar o sistema mais confivel. Se um servidor estiver desativado, ou excessivamente
sobrecarregado para responder, um outro responder solicitao. Assim, muito mais
provvel que o servio esteja disponvel. A principal desvantagem de se utilizarem muitos
servidores que quando uma mquina difunde uma solicitao RARP, a rede torna-se
sobrecarregada se todos os servidores tentam responder. Em uma Ethernet, por exemplo,
utilizar servidores RARP mltiplos torna mais provvel uma coliso.
Para evitar respostas mltiplas e simultneas, h pelos menos duas possibilidades, e ambas
envolvem o aumento do intervalo entre as respostas:

A cada mquina que faz solicitaes RARP atribudo um servidor principal. Em


circunstncias normais, somente o servidor principal da mquina responde sua solicitao
RARP. Todos os servidores que no sejam principais recebem a solicitao, mas apenas
registram seu tempo de chegada. Se o servidor principal no estiver disponvel, a mquina
original far um intervalo para aguardar uma resposta e, a seguir, difundir novamente a

Cristiano Alan Torres

Pg. 45/85

Arquitetura TCP/IP

solicitao. Sempre que um servidor, que no seja o principal, receber uma segunda cpia
de uma solicitao RARP em um curto espao aps a primeira, ele responde.

A segunda soluo utiliza um esquema semelhante, mas tenta impedir que todos os
servidores no-principais transmitam respostas simultaneamente. Cada mquina noprincipal que receber uma solicitao calcula um intervalo aleatrio e, a seguir, envia uma
resposta. Em circunstncias normais, o servidor principal responde imediatamente e com
intervalos entre as respostas sucessivas, de modo que h pouca probabilidade de que
cheguem ao mesmo tempo. Quando o servidor principal no est disponvel, a mquina
solicitante sofre um pequeno retardo antes que uma resposta seja recebida. Escolhendo os
intervalos com cuidado, o projetista assegura que as mquinas solicitantes no difundiram
antes de receber uma resposta.

Cristiano Alan Torres

Pg. 46/85

Arquitetura TCP/IP

5. ROTEAMENTO

5.1.

ROTEAMENTO BASEADO EM TABELAS

Este algoritmo do protocolo IP utiliza uma tabela de roteamento que armazena informaes
sobre como atingir cada sub-rede de rede internet. Sempre que a camada IP, em uma estao
ou em um gateway, precisa transmitir um datagrama para uma estao que no est
diretamente conectada mesma sub-rede, ela consulta a tabela de roteamento a fim de
determinar o gateway para o qual esse datagrama deve ser enviado.

128.10

129.7

128.15

HOST B
128.15.1.1

128.15.1.3

INTERNET

Destino

Roteamento

128.10
128.15
129.7
Default

Conexo Direta
Conexo Direta
128.15.1.3
128.15.1.1

Figura 5.1. Tabela de Roteamento do Gateway B.

Cristiano Alan Torres

Pg. 47/85

Arquitetura TCP/IP

Tipicamente, a tabela de roteamento do IP contm entradas do tipo (N,G), onde N um


endereo IP (endereo de destino) e G endereo IP do prximo gateway para atingir N. Essa
tabela, portanto, s determina o prximo passo no caminho para um destinatrio. Nem a
estao emissora nem o gateway conhecem a rota completa at a estao a estao
destinatria. Vale ressaltar que as entradas dessa tabela s referenciam gateways que podem
ser atingidos diretamente, isto , todos os gateways listados na tabela de roteamento de uma
mquina M esto conectados s sub-redes fsicas nas quais a mquina M est conectada. Um
exemplo de tabela de roteamento dado na Figura 5.1.
A tabela de roteamento do IP pode conter informaes sobre todos os destinatrios de uma
rede internet, j que a maioria das mquinas no teria espao em memria suficiente para isso
Por esse motivo, so armazenados os endereos das sub-redes. Outra tcnica utilizada para
minimizar o tamanho das tabelas a utilizao de rotas predefinidas (default) para o qual um
datagrama deve ser enviado sempre que no for encontrada na tabela uma entrada especfica
para o endereo IP destino. A utilizao de rotas predefinidas particularmente til em redes
com um nico gateway, j que todas as demais sub-redes da rede Internet devem ser atingidas
mediante esse gateway.

5.2.

ALGORITMOS DE ROTEAMENTO

O algoritmo de roteamento a tcnica utilizada pelos gateways para se localizarem


mutuamente e para conseguirem comunicao com as diversas redes de uma rede Internet. A
tabela de roteamento de um gateway atualizada a partir de informaes obtidas na execuo
do algoritmo de roteamento utilizados na arquitetura TCP/IP: Vetor-Distncia (Vector-Distance)
e Estado-do-Enlace (Link-State), que so discutidos a seguir.

Cristiano Alan Torres

Pg. 48/85

Arquitetura TCP/IP

5.2.1. ROTEAMENTO VECTOR-DISTANCE

Inicialmente, cada gateway possui uma tabela contendo uma entrada para cada sub-rede qual
est conectado. A cada sub-rede especificada na tabela est associada a distncia entre a
mesma e o gateway que mantm a tabela. Esta distncia pode ser medida em hops (nmero de
gateways a atravessar para atingir uma sub-rede) ou em retardo (tempo necessrio para a subrede).Inicialmente, os campos de distncia devem valer zero, pois somente as sub-redes s
quais o gateway est diretamente conectado so especificadas na tabela. Periodicamente, cada
gateway envia uma cpia de sua tabela para todo o gateway que possa atingir diretamente. O
gateway que recebe a tabela, a compara com a sua prpria e modifica esta ltima nos
seguintes casos:

se o gateway emissor conhecer um caminho maios curto para determinada sub-rede, ou


seja se a distncia apresentada na tabela do emissor for menor do que a da tabela do
receptor;

se o gateway emissor apresentar uma sub-rede que o receptor no conhece, ou seja, se na


tabela do emissor existir uma entrada que no est presente na tabela do receptor; esta
entrada inserida na tabela do receptor;

se uma rota que passa pelo emissor tiver sido modificada, ou seja, se a distncia associada
a uma sub-rede que passa pelo emissor tiver mudado.

Na atualizao dos campos de distncia da tabela do receptor, deve-se considerar a distncia


entre os gateways emissor e receptor, (por exemplo, necessrio somar 1 no caso da mtrica
baseada em hops). Vale lembrar que, para cada sub-rede especificada na tabela, existe
associada um campo que indica o prximo gateway na rota para essa sub-rede. A Figura 5.2
ilustra este tipo de roteamento.

Cristiano Alan Torres

Pg. 49/85

Arquitetura TCP/IP

O algoritmo simples e de fcil implementao; porm, em ambientes dinmicos, onde novas


conexes surgem e outras so desativadas com freqncia, a informao de atualizao
propaga-se muito lentamente e, durante esse perodo de propagao, alguns gateways
possuem informaes de roteamento inconsistentes. Alm disso, as mensagens de atualizao
tornam-se enormes, pois so diretamente proporcionais ao nmero total de redes e gateways
presentes na rede Internet (todos os gateways devem participar, seno o algoritmo no
converge).

Tabela do N A

Destino Ligao
3

4
5

A
B
C
D
E

local
1
1
3
1

Distncia
0
1
2
1
2

Figura 5.2. Roteamento Vector-Distncia.

5.2.2. ROTEAMENTO LINK-STATE (Shortest Path First)

Neste algoritmo, cada gateways deve conhecer a topologia completa da rede Internet. Isto
feito descrevendo-se os gateways interconectados entre si por enlaces (links). Existe um enlace
entre dois gateways se ambos puderem comunicar-se diretamente, ou seja se estiverem
mesma rede fsica.
Cada gateway exerce duas funes principais. A primeira testar continuamente o estado dos
enlaces com os gateways vizinhos. A segunda enviar periodicamente os dados de estado de
seus enlaces a todos os outros gateways da rede Internet. O teste de estado realizado
atravs do envio de mensagens curtas que exigem resposta. Se acontecer uma resposta, sob
Cristiano Alan Torres

Pg. 50/85

Arquitetura TCP/IP

condies que variam segundo a implementao do protocolo, o enlace est ativo, seno est
inativo. Os dados de estado indicam, simplesmente, se h possibilidade de comunicao entre
dois gateways. .Estes dados so em geral enviados em modo difuso (broadcast)
individualmente.
Ao receber uma informao de estado, um gateway atualiza seu mapa da rede Internet ativado
ou desativado os enlaces em questo e recalcula as rotas para todos os destinos possveis
atravs do algoritmo Shortest-Path-First (SPF), de Dijskstra, aplicado topologia da rede
Internet. A figura 5.3 ilustra um exemplo deste tipo de roteamento.
Em relao ao algoritmo Vector-Distance, o SPF possui diversas vantagens. O clculo das rotas
realizado localmente, no dependendo de mquinas intermedirias. O tamanho das
mensagens no depende do nmero de gateways diretamente conectados ao gateway emissor.
Como as mensagens trafegam inalteradas a deteco de problemas torna-se mais fcil.

Tabela do N A

Fonte

Ligao

Distncia

A
B
A
C
E
B

B
C
D
E
D
E

1
2
3
5
6
4

4
5

Figura 5.3. Roteamento Link-State.

Os algoritmos descritos anteriormente assumem, a priori, a existncia de uma tabela de


roteamento devidamente iniciada. Esta iniciao depende do prprio sistema computacional no
qual se situa a camada IP. Vrias solues manuais existem como, por exemplo, a carga de
uma tabela pr-configurada com dados limitados ou a carga de uma tabela vazia que so
preenchidas atravs de comandos. Entretanto, o problema principal a manuteno dessas
tabelas devido dinmica das redes. Para resolver esse problema torna-se imprescindvel o

Cristiano Alan Torres

Pg. 51/85

Arquitetura TCP/IP

uso de mecanismos automticos, previstos nos protocolos de roteamento descritos nos itens
seguintes.

5.3.

PROTOCOLOS DE ROTEAMENTO

O protocolo de roteamento determina a forma pela qual os gateways devem trocar informaes
necessrias execuo do algoritmo de roteamento. Por exemplo, se o algoritmo de
roteamento implementado for do tipo Vector-Distance, o protocolo de roteamento deve definir
como cada gateway envia aos demais a sua distncia em relao a cada sub-rede Internet.

5.3.1. IGP Interior Gateway Protocol

O termo IGP utilizado para designar o protocolo usado na troca de informaes de roteamento
entre Interior Gateways (IG).
Em sistemas autnomos (SA) pequenos, as tabelas de roteamento podem ser determinadas,
manualmente, pelo administrador do sistema. O administrador mantm uma tabela de redes do
SA que atualizada sempre que uma rede removida ou inserida no SA . Alm de no ser
confivel, esse mtodo torna-se invivel com o crescimento do SA .
No existe um protocolo padro entre os gateways de um mesmo SA . Por esse motivo, o termo
IGP usado para referenciar qualquer protocolo de roteamento entre Interior Gateways (IG). Os
protocolos IGP mais conhecidos so: RIP (Routing Information Protocol), Hello Protocol e OSPF
(Open Shortest-Path-Frist Protocol).

Cristiano Alan Torres

Pg. 52/85

Arquitetura TCP/IP

RIP - Routing Information Protocol


O RIP foi originalmente desenvolvido pela Universidade da Califrnia em Berkeley. Este
protocolo permite a troca de informaes utilizadas pelo algoritmo de roteamento VectorDistance em uma sub-rede dotada do servio de difuso de mensagens.
O RIP divide as mquinas da sub-rede em ativas e passivas. As mquinas ativas divulgam
informaes de roteamento para as outras, enquanto as mquinas passivas recebem as
informaes e atualizam suas rotas, sem divulga-las. Tipicamente, os gateways executam o RIP
no modo ativo, enquanto as estaes o executam no modo passivo.
Um gateway executando o RIP no modo ativo difunde as mensagens a cada 30 segundos e
tambm quando recebe uma solicitao de informao de outro gateway. A mensagem
difundida normalmente contm informaes sobre todas as sub-redes do SA, extradas da
tabela de roteamento do gateway. Cada mensagem enviada por um gateway G consiste em
pares de informaes. Cada par composto de um endereo de sub-rede IP e da distncia do
gateway G sub-rede . A mtrica utilizada para o clculo de distncia baseada no nmero de
hops (nmero de gateways) na melhor rota entre o gateway G e a rede. Curiosamente o RIP
assume o valor "1" para a distncia de um gateway a uma sub-rede qual ele est diretamente
conectado. Para compensar diferenas de tecnologia de redes, algumas implementaes do
RIP informam uma distncia maior quando a rota atravessa uma rede lenta. Participantes ativos
e passivos do RIP, quando recebem uma mensagem, atualizam suas rotas de acordo com o
algoritmo de roteamento Vector-Distance, descrito no item 5.2.1 Para evitar que uma rota oscile
entre dois ou mais caminhos com a mesma mtrica, o RIP especifica que uma rota deve ser
atualizada somente quando a nova rota possuir distncia menor que a atual.

OSPF - Open Shortest-Path-First Protocol


O protocolo OSPF foi elaborado por um grupo de trabalho da Internet Engineering Task Force
com o propsito de atender s exigncias de roteamento de grandes redes, ou seja, um IGP
para sistemas autnomos de porte. um protocolo que usa o algoritmo SPS e compreende
Cristiano Alan Torres

Pg. 53/85

Arquitetura TCP/IP

uma srie de facilidades adicionais listados a seguir, as quais permitem diminuir a sobrecarga
necessria para a manuteno da topologia atualizada de uma rede Internet:

roteamento levando em considerao o tipo de servio;

balanceamento de carga entre rotas de mesmo tamanho;

participao dos gateways e redes em subgrupos denominados reas, sendo a topologia de


uma rea conhecida apenas dentro da mesma, facilitando o crescimento modular do SA ;

definio da topologia de rede virtual que abstraia detalhes de rede real;

divulgao e informaes recebidas de exterior gateways. O formato da mensagem permite


distinguir informaes recebidas de fontes externas daquelas recebidas dentro do SA ;

O protocolo OSPF baseado nas mensagens: Hello, Database Description, Link Status
Request e Link Status Uptade. Quando um gateway OSPF inicializado, sua primeira ao
contatar os gateways vizinhos, atravs de mensagens Hello. Os gateways trocam mensagens
entre si para eleger o gateway mestre (DR -Designated Router). Este gateway torna-se
responsvel pela notificao de informaes de roteamento a todos os gateways presentes na
rede (gateways secundrios). Nos protocolos de roteamento discutidos anteriormente todos os
gateways enviavam e recebiam informaes de roteamento, gerando trfego excessivo. A figura
de um gateway mestre, com o funo de gerador/distribuidor de informaes, reduz
significativamente o trfego relativo s mensagens de roteamento, que so trocadas somente
entre o gateway mestre e os demais gateways secundrios.
O OSPF usa o roteamento link state. As informaes de roteamento trocados entre gateways,
atravs da mensagem Database Description, indicam o estado e o custo associado s
interfaces e aos gateways vizinhos. Estas mensagens so confirmadas pelos gateways que a
recebem. Como as bases podem ser grandes, uma base de topologia pode gerar vrias
mensagens. A mensagem Link Status Request usada por um gateway na requisio de dados
atualizados a outro gateway. Na mensagem Link Status Updade usada por um gateway no
envio de informaes sobre o estado de seus enlaces.
Uma vez estabelecido o gateway mestre da cada sub-rede Internet ,realizada a troca de
informaes de roteamento entre o gateways mestres das vrias sub-redes em que esteja
Cristiano Alan Torres

Pg. 54/85

Arquitetura TCP/IP

conectado, o gateway monta a sua base de dados de roteamento. O algoritmo SPF , ento
executado a partir dessa base e, como resultado, obtida uma rvore de roteamento com o
gateway na raiz, indicando a conectividade com outras redes. A partir dos dados de custo, so
calculados os custos totais das rotas at cada sub-rede da Internet.

5.3.2. EGP - Exterior Gateway Protocol

O protocolo EGP no est vinculado a nenhum algoritmo de roteamento. Isto , para que dois
gateways se comuniquem atravs do EGP no necessrio que eles executem um mesmo
algoritmo de roteamento. O EGP define as informaes a serem trocadas entre EG
(basicamente as tabelas de roteamento) e os elementos de protocolo necessrios troca
dessas informaes.
Tais informaes permitem que um ou mais sistemas autnomos sejam utilizados como
intermedirios do trfego originado em algum sistema autnomo e destinado a outro, sem que o
usurio da rede perceba que a rede composta por mais de um sistema autnomo.
O EGP um protocolo de roteamento elaborado para uma rede de sistemas autnomos
organizados em uma estrutura tipo rvore, ou seja, uma rede sem loops (ciclos) na sua
topologia. As informaes trocadas neste protocolo no impedem que ocorram loops no
roteamento. Uma situao de loop pode ocorrer, por exemplo, quando uma tabela de
roteamento de um gateway G indica o gateway G' como a melhor sada para uma rede N, e a
tabela de roteamento de G' indica G como a melhor sada para a rede N.
As mensagens do EGP so associadas a cada Sistema Autnomo atravs de uma identificao
de 16 bits que colocada no cabealho da cada mensagem do EGP. Essas mensagens
trafegam somente entre gateways vizinhos. Dois gateways podem tornar-se vizinhos quando:

esto diretamente conectadas por um, cabo, por exemplo; ou

Cristiano Alan Torres

Pg. 55/85

Arquitetura TCP/IP

esto conectados por uma rede transparente para eles, isto , uma rede cuja estrutura
interna eles no conhecem.

No faz parte do protocolo EGP determinar quando dois gateways devem tornar-se vizinhos.
Esta uma tarefa do administrador do SA . Dois gateways tornam-se vizinhos atravs da troca
de mensagens de Aquisio de Vizinho.
Aps se tornarem vizinhos, dois gateways passam a trocar mensagens de Disponibilidade,
para conhecer o estado do vizinho (conectado/desconectado), e mensagens de Alcance, para
identificar quais redes podem ser acessadas atravs do vizinho.
O EGP um protocolo do tipo solicitao (polling). As mensagens so trocadas somente
quando ocorre uma solicitao de um dos vizinhos. Por isso, o EGP permite que cada gateway
controle a sua taxa de envio e recebimento de informao de roteamento. Alm disso, esse
protocolo permite que um S A tenha um mecanismo de roteamento interno que no afetado
por falhas em outros sistemas.

5.3.3. BGP Border Gateway Protocol

Com o crescimento da Internet, o uso do EGP tornou-se limitado. Existia a necessidade de


acrescentar funes de policiamento no roteamento e o protocolo devia suportar topologias
complexas. Consequentemente surgiu o BGP, para suprir as deficincias do EGP no
roteamento entre sistemas autnomos.
Roteadores com BGP se preocupam com critrios polticos de roteamento. Um sistema
autnomo (SA) deve querer habilidade de enviar pacotes para algum site e receber pacotes de
outro site de seu interesse. Entretanto, ele no deve gostar de conduzir pacotes entre sistemas
autnomos (SA's) que no seja de seu interesse. Por exemplo, companhias telefnicas devem
atuar como portadora de seus clientes, mas no dos outros.
Cristiano Alan Torres

Pg. 56/85

Arquitetura TCP/IP

O protocolo BGP foi projetado para permitir muitos critrios de roteamento a serem aplicadas no
trfego entre SA's. Critrios tpicos envolvem consideraes de ordem poltica, de segurana,
ou econmicas. Alguns exemplos de limites de roteamento so: nunca coloque o Iraque na rota
para o Pentgono; trfego iniciando ou terminando na IBM, no trafega para Microsoft. Os
critrios so configurados manualmente em cada roteador BGP.
Do ponto de vista do roteador BGP, o mundo consiste de outros roteadores BGP
interconectados. Dois roteadores BGP so considerados conectados se eles compartilham uma
rede comum. Dado o interesse de um BGP especial no trfego, as redes so grupadas em trs
categorias. A primeira categoria stubs networks, na qual somente tem conexo para um
roteador BGP. Estas no podem ser usadas para trnsito na rede, porque s tem uma ligao.
A segunda as redes multiconnected networks. Podem ser usadas para trfego em trnsito,
exceto se recusarem. Finalmente, existem as redes transit networks, como um backbone, que
esto dispostas a manipular pacotes de outros, possivelmente com algumas restries.
Pares de roteadores BGP se comunicam atravs de conexes TCP. Operando deste modo eles
fornecem uma comunicao confivel e escondem os detalhes da rede que os pacotes esto
passando.
BGP um protocolo que usa o algoritmo vector distance, mas com uma pequena diferena. Ao
invs de manter a distncia de cada destino, cada roteador BGP mantm o caminho usado.
Similarmente, ao invs de periodicamente dar a cada vizinho a distncia estimada para cada
possvel destino, cada roteador diz a seus vizinhos o caminho exato que est usando.
Como um exemplo, considerar os roteadores conforme a Figura 5.3. Em particular, considerar a
tabela de roteamento de F. Supor que ele usa o caminho FGCD para alcanar D. Quando os
vizinhos sua informao de roteamento, eles fornecem seus caminhos completos, como mostra
a Figura 5.3 (por simplicidade, somente o destino D ilustrado).

Cristiano Alan Torres

Pg. 57/85

Arquitetura TCP/IP

F recebe informaes
de seus vizinhos
sobre D:
de
de
de
de

B: BCD
G: GCD
I: IFGCD
E: EFGCD

F
E

(a)

(b)

Figura 5.3. Roteamento com o protocolo BGP.

Aps todos os caminhos chegarem dos vizinhos. F examina-os para ver qual o melhor.
Rapidamente descarta os caminhos de I e E, porque estes caminhos passam por F. A escolha
est entre B e G. Cada roteador BGP contm um mdulo que examina rotas para um dado
destino e d um valor a eles, retornando um nmero da distncia para o destino de cada rota.
Alguma rota viola um critrio de roteamento e seu valor infinito. O roteador ento adota a rota
de menor distncia.
BGP facilmente resolve o problema de contagem infinita que causa problema a outros
algoritmos de roteamento. Por exemplo, supor que G quebre ou a linha FG esteja desativada. F
ento recebe rotas dos outros trs vizinhos. Estas rotas so BCD, IFGCD e EFGCD. Verifica-se
que duas rotas esto sem sentido, porque passam por F, ento escolhido FBCD como a nova
rota.
Vector-distance, uma diferente estratgia de podar a rvore deve ser seguida. O algoritmo
bsico o reverse path forwarding. Entretanto, quando um roteador que no faz parte do grupo,

Cristiano Alan Torres

Pg. 58/85

Arquitetura TCP/IP

recebe uma mensagem multicast, ele responde para que o emissor no envie mensagens para
ele.

5.4.

ROTEAMENTO MULTICAST

A comunicao IP normal ponto-a-ponto. Entretanto, para algumas aplicaes, a comunicao


multiponto til para o processo de enviar mensagens para um grande nmero de receptores
simultaneamente. Exemplos de aplicaes multiponto so replicao de dados, banco de dados
distribudos e multiconferncia.
O IP suporta multicast, usando a classe de endereos D. Cada endereo da classe D identifica
um grupo de estaes. No endereo IP, 28 bits esto disponveis para identificar grupos.
Quando um processo envia um pacote para endereo de classe D, o pacote liberado para
todos os membros do grupo, mas no garante que todos recebero o pacote.
Existe dois tipos de grupos de endereos: permanente e temporrio. Um grupo permanente
sempre existir e no precisa ser configurado. Alguns exemplos de endereos de grupo
permanente so:
- 224.0.0.1 - todos os sistemas numa rede local;
- 224.0.0.2 - todos os roteadores numa rede local;
- 224.0.0.5 - todos os roteadores OSPF numa rede local.
Multicasting implementado por roteadores multicast especiais. Cerca de uma vez a cada
minuto, cada roteador multicast envia um pacote para as estaes de sua rede local (endereo
224.0.0.1) perguntando para eles responderem de volta, quais os grupos que seus processos
pertencem. Estes pacotes de consultas e respostas usam um protocolo chamado IGMP
(Internet Group Management Protocol) , que similar ao ICMP. Ele tem dois tipos de pacote:
consulta e resposta, cada um com formato fixo contendo alguma informao de controle na
primeira palavra do campo payload e um endereo classe D na segunda palavra.
Cristiano Alan Torres

Pg. 59/85

Arquitetura TCP/IP

Para algumas aplicaes, os processos esto separados em vrios locais, mas trabalham
juntos em grupo. Por exemplo, um grupo de processos implementando um sistema de banco de
dados distribudo. Nele freqente um processo enviar uma mensagem para todos os outros
membros do grupo. Ento necessita-se de um modo de enviar mensagens para grupos bem
definidos que so numericamente grandes, mas pequenos comparados ao tamanho da rede.
Para realizar esta tarefa necessrio utilizar uma tcnica de roteamento multiponto.
Para fazer multicasting, cada roteador constri sua spanning tree selecionando enlaces na
rede formando uma rvore, de forma a cobrir todos os outros roteadores na sub-rede. Por
exemplo, na Figura 5.4(a) temos uma sub-rede com dois grupos, 1 e 2. Alguns roteadores so
ligados nos grupos, como indicado na Figura 5.4(a). A spanning tree para o roteador mais a
esquerda mostrado na figura 5.4(b).
2

1,2

1,2

1,2

1,2

1
1

(a) SUB-REDE

(b) "SPANNING TREE" DO ROTEADOR MAIS A ESQUERDA

1
1
(c) ARVORE MULTICAST - GRUPO 1

(d) ARVORE MULTICAST - GRUPO 2

Figura 5.4. Roteamento Multicast.

Cristiano Alan Torres

Pg. 60/85

Arquitetura TCP/IP

Quando um processo envia um pacote multicast para o grupo, o primeiro roteador examina sua
spanning tree e poda a rvore, removendo toda as linhas que no pertencem ao seu grupo. A
Figura 5.4(c) ilustra a rvore do grupo 1 e a Figura 5.4(d) ilustra a rvore do grupo 2. Pacotes
multicast so enviados somente na spanning tree apropriada.
Vrios modos de podar a rvore so possveis. O modo mais simples usar o roteamento linkstate, sendo que cada roteador deve conhecer a topologia completa da sub-rede. Ento a
spanning tree pode ser construda iniciando no final de cada caminho at a raiz, eliminando os
roteadores que no pertencem ao grupo.
Com o roteamento vector-distance, uma diferente estratgia de podar a rvore deve ser
seguida. O algoritmo bsico o reverse path forwarding. Entretanto, quando um roteador que
no faz parte do grupo, recebe uma mensagem multicast, ele responde para que o emissor no
envie mensagens para ele.
Uma desvantagem deste algoritmo que para grandes redes muita memria necessria.
Supor que uma rede tem n grupos, cada um com a mdia de m membros. Para cada grupo, m
spanning trees podadas so armazenadas, para um total de m.n rvores. Quando muitos
grupos grandes existem, gasto muito memria para armazenar as rvores.
Uma alternativa usar rvores chamadas core-base tree. Aqui uma nica rvore spanning tree
por grupo computada, com a raiz ("the core") perto do meio do grupo. Para enviar uma
mensagem multicast, uma estao envia-a para a raiz, que ento envia para os ns do grupo.
Embora esta tcnica no seja tima, ela reduz os custos de armazenagem de m rvores para
uma rvore por grupo.

Cristiano Alan Torres

Pg. 61/85

Arquitetura TCP/IP

6. TCP/IP EM REDES ATM

O ATM uma tecnologia de rede de alta velocidade na qual a rede possui um ou mais
comutadores conectados entre si para formar uma estrutura de comutao. Na lgica, uma
estrutura de comutao funciona como uma nica grande rede que permite a comunicao
entre quaisquer hosts.
J que o ATM uma tecnologia baseada em conexo, dois computadores devem estabelecer
um circuito virtual atravs da rede antes de transmitir dados. Um host pode optar por um circuito
virtual comutado ou permanente. Os circuitos comutados so criados por demanda. Os
permanentes requerem uma configurao manual. Em ambos os casos, o ATM atribui a cada
circuito aberto um identificador de nmero inteiro. Cada quadro enviado pelo host ou pela rede
possui um identificador de circuito. Um quadro no possui um endereo de origem e de destino.
Apesar dos nveis mais baixos do ATM utilizarem clulas de 53 octetos para a transmisso de
dados, o ATM possui mecanismos adicionais em sua camada de adaptao que so utilizados
pelos aplicativos. A AAL5 (Adaptation Layer 5) do ATM, em particular, utilizada para o envio de
dados atravs de uma rede ATM. A AAL5 oferece uma interface que recebe e envia blocos de
dados de tamanhos variados, os quais podem ter octetos de at 64kb.
Para enviar um datagrama IP atravs de uma rede ATM, o transmissor precisa formar uma
conexo de circuito virtual para o destino que utiliza a AAL5 e enviar o datagrama AAL5 coo
um nico bloco de dados. A AAL5 acrescenta um trailer, divide o datagrama e o trailer em
clulas menores para a transmisso atravs da rede e, depois, reagrupa o datagrama antes de
encaminh-lo ao sistema operacional do computador de destino. Assim, ao enviar datagramas
atravs da rede ATM, o IP no fragmenta no tamanho da clula ATM. Ao contrrio, o IP utiliza
uma MTU de 9.180 octetos e permite que a AAL5 divida o datagrama em clulas.

MTU (Maximum Transfer Unit) significa o maior volume de dados que pode ser transferido em determinada rede
fsica, a MTU determinada pelo hardware da rede.

Cristiano Alan Torres

Pg. 62/85

Arquitetura TCP/IP

Uma LIS (Logical IP Subnet) formada por um conjunto de computadores que utiliza a rede
ATM em vez de uma rede local. Os computadores formam circuitos virtuais entre si por meio
dos quais alteram os datagramas. A presena tanto dos circuitos virtuais como dos circuitos
permanentes em uma LIS torna ainda mais complicada a questo da vinculao de endereos.
Um protocolo ARP modificado, conhecido como ATMARP, faz a vinculao de endereos para
os computadores em uma LIS conectada por um circuito virtual comutado. Os computadores de
uma LIS contam com um servidor ATMARP para vincular o endereo IP de outro computador da
LIS a um endereo ATM equivalente. Cada computador de uma LIS deve fazer o registro com o
servidor, fornecendo seus endereos IP e ATM ao servidor. Desse modo, outros computadores
podem entrar em contato com o servidor para obter uma vinculao, conforme necessrio.
Como no caso do ARP convencional, uma vinculao deve ser revalidada ou descartada. Um
protocolo relativo ao ATMARP inverso utilizado para descoberta dos endereos ATM e IP de
um computador remoto conectado por um circuito virtual permanente.

Cristiano Alan Torres

Pg. 63/85

Arquitetura TCP/IP

7. DNS (DOMAIN NAME SYSTEM)

O DNS (Domain Name System) um esquema de gerenciamento de nomes, hierarquico e


distribudo. O DNS define a sintaxe dos nomes usados na Internet, regras para delegao de
autoridade na definio de nomes, um banco de dados distribudo que associa nomes a
atributos (entre eles o endereo IP) e um algoritmo distribudo para mapear nomes em
endereos. O DNS especificado nas RFCs 882, 883 e 973.
As aplicaes normalmente utilizam um endereo IP de 32 bits no sentido de abrir uma conexo
ou enviar um datagrama IP. Entretanto, os usurios preferem identificar as mquinas atravs de
nomes ao invs de nmeros. Assim e necessrio um banco de dados que permita a uma
aplicao encontrar um endereo, dado que ela conhece o nome da mquina com a qual se
deseja comunicar.
Um conjunto de servidores de nomes mantm o banco de dados com os nomes e endereos
das mquinas conectadas a Internet. Na realidade este apenas um tipo de informao
armazenada no domain system (sistema de domnios). Note que usado um conjunto de
servidores interconectados, ao invs de um nico servidor centralizado. Existem atualmente
tantas instituies conectadas a Internet que seria impraticvel exigir que elas notificassem uma
autoridade central toda vez que uma mquina fosse instalada ou trocasse de lugar. Assim, a
autoridade para atribuio de nomes e delegada a instituies individuais. Os servidores de
nome formam uma rvore, correspondendo a estrutura institucional. Os nomes tambm adotam
uma estrutura similar.
Um exemplo tpico o nome chupeta.jxh.xyz.br. Para encontrar seu endereo Internet, pode
ser necessrio o acesso a at quatro servidores de nomes. Inicialmente deve ser consultado um
servidor central, denominado servidor raiz, para descobrir onde est o servidor br. O servidor br

RFC (Request For Comments), nome de um conjunto de notas que contm levantamentos, avaliaes, idias,
tcnicas e comentrios, bem como padres de protocolos TCP/IP sugeridos e aceitos. As RFCs esto disponveis online.

Cristiano Alan Torres

Pg. 64/85

Arquitetura TCP/IP

o responsvel pela gerencia dos nomes das instituies/empresas brasileiras ligadas a


Internet. O servidor raiz informa como resultado da consulta o endereo IP de vrios servidores
de nome para o nvel br (pode existir mais de um servidor de nomes em cada nvel, para
garantir a continuidade da operao quando um deles para de funcionar). Um servidor do nvel
br pode ento ser consultado, devolvendo o endereo IP do servidor xyz.
De posse do endereo de um servidor xyz possvel solicitar que ele informe o endereo de um
servidor jxh, quando, finalmente, pode-se consultar o servidor jxh sobre o endereo da mquina
chupeta. O resultado final da busca o endereo Internet correspondente ao nome
chupeta.jxh.xyz.br.
Cada um dos nveis percorridos e referenciado como sendo um domnio. O nome completo
chupeta.jxh.xyz.br um nome de domnio.
Na maioria dos casos, no necessrio ter acesso a todos os domnios de um nome para
encontrar o endereo correspondente, pois os servidores de nome muitas vezes possuem
informaes sobre mais de um nvel de domnio o que elimina uma ou mais consultas. Alm
disso, as aplicaes normalmente tem acesso ao DNS atravs de um processo local (servidor
para as aplicaes e um cliente DNS), que pode ser implementado de modo a guardar os
ltimos acessos feitos, e assim resolver a consulta em nvel local. Essa abordagem de acesso
atravs de um processo local, simplifica e otimiza a tarefa das aplicaes no que tange ao
mapeamento de nomes em endereos, uma vez que elimina a necessidade de implementar, em
todas as aplicaes que fazem uso do DNS, o algoritmo de caminhamento na rvore de
domnios descrito anteriormente.
O DNS no se limita a manter e gerenciar endereos Internet. Cada nome de domnio e um n
em um banco de dados, que pode conter registros definindo varias propriedades. Por exemplo,
o tipo da mquina e a lista de servios fornecidos por ela. O DNS permite que seja definido um
alias (nome alternativo) para o n. Tambm possvel utilizar o DNS para armazenar
informaes sobre usurios, listas de distribuio ou outros objetos.

Cristiano Alan Torres

Pg. 65/85

Arquitetura TCP/IP

O DNS particularmente importante para o sistema de correio eletrnico. No DNS

so

definidos registros que identificam a mquina que manipula as correspondncias relativas a um


dado nome, identificado assim onde um determinado usurio recebe suas correspondncias. O
DNS pode ser usado tambm para definio de listas para distribuio de correspondncias.

Cristiano Alan Torres

Pg. 66/85

Arquitetura TCP/IP

8. APLICAES

As aplicaes, no modelo TCP/IP, no possuem uma padronizao comum. Cada uma possui
um RFC prprio. O endereamento das aplicaes feito atravs de portas (chamadas
padronizadas a servios dos protocolos TCP e UDP), por onde so passados as mensagens.
na camada de Aplicao que se trata a compatibilidade entre os diversos formatos
representados pelos variados tipos de estaes da rede.

8.1.

TELNET

O protocolo TCP/IP inclui um protocolo simples de terminal remoto denominado TELNET. O


TELNET permite que um usurio em determinado site estabelea uma conexo TCP com um
servidor login situado em outro site. O TELNET transmite, ento os toques no teclado do
usurio diretamente ao computador remoto, como se estivessem sendo digitados no teclado
conectado mquina remota. Esse terminal tambm retorna a sada da mquina remota at a
tela do usurio. O servidor recebe o nome de transparente, porque faz com que o teclado e o
monitor do usurio paream estar conectados diretamente mquina remota.
Embora o TELNET no seja sofisticado se comparado a alguns protocolos de terminal remoto,
ele amplamente aceito. Geralmente o software do cliente do TELNET permite que o usurio
especifique a mquina remota fornecendo seu nome de domnio ou seu endereo IP. Por
aceitar endereos IP, o TELNET pode ser usado com hosts mesmo que o vnculo
nome/endereo no possa ser estabelecido (p. ex., quando o software de atribuio de nomes
de domnio estiver sendo depurado).
O TELNET oferece trs servios bsicos:

Cristiano Alan Torres

Pg. 67/85

Arquitetura TCP/IP

Define um terminal virtual da rede fornecedora de uma interface padro para sistemas
remotos. Os programas clientes no precisam entender os detalhes de todos os sistemas
remotos possveis; eles so projetados para usar a interface padro.

Inclui um mecanismo que permite ao cliente e ao servidor negociar opes e fornece um


conjunto de opes padronizadas (p. ex., uma das opes verifica se os dados passados
pela conexo usam o caracter padro ASCII de sete bits ou o conjunto de oito bits).

Trata ambas as pontas da conexo de forma simtrica. Em particular, no obriga a entrada


do cliente via teclado, nem obriga o cliente a ter a sada indicada na tela. Dessa forma, o
TELNET permite que o programa arbitrrio torne-se um cliente. Alm do mais, qualquer
ponta pode negociar opes.

A Figura 8.1 ilustra como os programas aplicativos implementam um cliente e servidor TELNET,
quando um usurio chama o TELNET, um programa aplicativo existente na mquina do usurio
torna-se o cliente. O cliente estabelece uma conexo TCP com o servidor por intermdio da
qual iro se comunicar. Uma vez estabelecida a conexo, o cliente aceita toques de teclado do
usurio e os envia ao servidor enquanto, simultaneamente, aceita caracteres que o servidor
envia de volta e apresenta-os na tela do usurio. O servidor deve aceitar uma conexo TCP de
um cliente e, a seguir, retransmitir dados entre a conexo TCP e o sistema operacional local.
Na prtica, o servidor mais complexo do que a figura representa porque precisa conduzir
vrias conexes simultneas. Em geral, um processo de servidor-mestre aguarda novas
conexes e cria um novo escravo para cuidar de uma conexo em particular. Desse modo, o
servidor TELNET mostrado na Figura 8.1 representa o escravo que trata de uma conexo em
particular. A figura no mostra o servidor-mestre que espera novas solicitaes, nem mostra os
escravos cuidando das outras conexes.

Cristiano Alan Torres

Pg. 68/85

Arquitetura TCP/IP

Cliente l dados do
terminal

Cliente
TELNET

S.O.
Dispositivo de
entrada e sada
de dados do
usurio

Cliente envia dados


ao servidor

Servidor receb e
dados do cliente

Sevidor
TELNET

Sevidor envia
dados para
pseudoterminal

S.O.

Inter-rede
TCP/IP

Figura 8.1. Trajeto de dados em uma sesso de terminal remoto TELNET, enquanto trafega do teclado do usurio
at um sistema de operao remoto. Acrescenta um servidor TELNET a um sistema timesharing geralmente requer
modificaes no sistema operacional.

O termo pseudoterminal descreve o ponto de entrada do sistema operacional que permite que o
servidor de um programa em funcionamento, como o TELNET, transfira caracteres ao sistema
operacional como se estivessem vindo de um teclado. impossvel construir um servidor
TELNET, a no ser que o sistema operacional fornea tal recurso. Se o sistema suporta tal
abstrao de pseudoterminal, o servidor TELNET pode ser implementado com programas
aplicativos. Cada servidor-escravo conecta um canal TCP de um cliente a um pseudoterminal
especfico.

8.2.

FTP (File Transfer Protocol)

A transferncia de arquivos um dos aplicativos TCP/IP usados com mais freqncia e


responde por grande parte do trfego de rede. Os protocolos de transferncia de arquivos
padro existiram para ARPANET antes que o TCP/IP se tornasse operacional. Essas verses
anteriores do software de transferncia de arquivos evoluram para um padro atual conhecido
como FTP (File Transfer Protocol).
O FTP oferece muitas vantagens alm da funo de transferncia propriamente dita:

Cristiano Alan Torres

Pg. 69/85

Arquitetura TCP/IP

Acesso interativo. Apesar do TCP ser projetado para uso por programas, muitas
implementaes fornecem uma interface interativa que permite que as pessoas interajam
facilmente com servidores remotos. Por exemplo, um usurio pode pedir uma listagem de
todos os arquivos de um diretrio em uma mquina remota. O cliente tambm responde
normalmente entrada help, mostrando a informao do usurio sobre possveis
comandos que podem ser chamados.

Especificao de formato (representao). O FTP permite que o cliente especifique o tipo e


o formato dos dados armazenados. Por exemplo, o usurio pode determinar se um arquivo
contm texto ou nmeros inteiros binrios e se os arquivos textos usam os conjuntos de
caracteres ASCII ou EBCDIC.

Controle de autenticao. O FTP requer que os clientes autorizem a si prprios enviando


um nome de login e a senha ao servidor antes de requisitar a transferncia e arquivos. O
servidor recusa acesso aos clientes que no podem fornecer um login vlido e uma senha.

A exemplo de outros servidores, a maioria das implementaes de servidor FTP permite o


acesso simultneo de vrios clientes. Os clientes usam o TCP para se conectar a um servidor.
Um processo de servidor principal nico guarda concesses e cria um processo escravo para
tratar cada conexo. De maneira diferente de outros servidores, no entanto, o processo escravo
no realiza toda a computao necessria. Ao contrrio, o escravo aceita e trata a conexo de
controle do cliente, mas usa um processo ou processos adicionais para tratar uma conexo de
transferncia de dados parte. A conexo de controle transporta comandos que informam ao
servidor qual arquivo transferir. A conexo de transferncia de dados, que tambm usa o TCP
como protocolo de transferncia, transporta todas as transferncias de dados.
Geralmente tanto o cliente como o servidor criam um processo separado para tratar da
transferncia de dados. Considerando que os detalhes exatos da arquitetura do processo
dependam do sistema operacional usado, a Figura 8.2 ilustra o conceito:

Cristiano Alan Torres

Pg. 70/85

Arquitetura TCP/IP

Sistema Cliente

Transferncia
de dados

Conexo de
controle do
cliente

Processo
de
Controle

Sistema Servidor

Transferncia
de dados

Processo
de
Controle

Conexo de
controle do
servidor

Sistema Operacional

Sistema Operacional
Conexo de
dados do
cliente

Interligao
em TCP/IP

Conexo de
dados do
servidor

Figura 8.2. Um cliente e um servidor FTP com uma conexo de controle TCP entre eles e uma conexo TCP parte
entre seus processos e transferncia de dados relacionados.

A conexes de transferncia de dados e os processos de transferncia de dados que as


utilizam podem ser criados dinamicamente, quando necessrio, mas a conexo de controle
persiste atravs de uma sesso. Uma vez que a conexo de controle desaparece, a sesso
finalizada e o software de ambas as extremidades encerra todos os processos de transferncia
de dados.

8.3.

NFS (Network File System)

Desenvolvido inicialmente pela Sun Microsystems, o NFS (Network File System) fornece acesso
de arquivo online compartilhado que transparente e integrado. Muitos sites TCP/IP usam NFS
para interconectar seus sistemas de arquivo de computadores. Da perspectiva do usurio, o
NFS praticamente invisvel. Um usurio pode executar um programa aplicativo arbitrrio e
usar arquivos arbitrrios para entrada ou sada. O prprio nome dos arquivos no indica se eles
so locais ou remotos.

Cristiano Alan Torres

Pg. 71/85

Arquitetura TCP/IP

A Figura 8.3 ilustra como o NFS est inserido no sistema operacional. Quando um programa
aplicativo executado, este chama o sistema operacional para abrir um arquivo ou para
armazenar e recuperar dados de um arquivo. O mecanismo de acesso a arquivos aceita o
pedido e automaticamente passa-o ou para o software de sistema de arquivo local ou para o
cliente NFS, dependendo de o arquivo estar no disco local ou em uma mquina remota.
Quando ele recebe um pedido, o software do cliente usa o protocolo NFS para contatar o
servidor apropriado em uma mquina remota e executar a operao requisitada. Quando o
servidor remoto responde, o software do cliente devolve os resultados ao programa aplicativo.

Aplicativo

Sistema de
arquivos
local

Disco
local

Cliente
NFS

Conexo da inter-rede
com o servidor NFS

Figura 8.3. Cdigo NFS em um sistema operacional. Quando um programa aplicativo requisita uma operao de
arquivo, o sistema operacional deve passar o pedido para o sistema de arquivo local ou para o software do cliente
NFS.

Cristiano Alan Torres

Pg. 72/85

Arquitetura TCP/IP

8.4.

RPC (Remote Procedure Call)

Em vez de definir o protocolo NFS a partir de riscos, os projetistas deviam preferir montar trs
peas independentes: o prprio protocolo NFS, um mecanismo de RPC (Remote Procedure
Call) para fins gerais e um XDR (eXternal Data Representation), tambm para fins gerais. O
objetivo seria separar os trs para possibilitar o uso de RPC e XDR em outro software, inclusive
em programas aplicativos e tambm em outros produtos.
Do ponto de vista do programador, o prprio NFS no fornece novos procedimentos que
possam ser chamados por um programa. Ao contrrio, uma vez que um administrador tenha
configurado o NFS, ele programa arquivos remotos de acesso usando exatamente as mesmas
operaes utilizadas para arquivos locais. No entanto, o RPC e o XDR fornecem macanismos
que os programadores podem usar para construir programas distribudos. Por exemplo, um
programador pode dividir um programa entre o lado do cliente e o lado do servidor que usam
RPC como o principal mecanismo de comunicao. No lado do cliente, o programador atribui
alguns procedimentos como remotos, obrigando o compilador a incorporar a esses
procedimentos os cdigos de RPC. No lado do servidor, o programador implementa os
procedimentos desejados e usa outros recursos RPC para declar-los parte do servidor.
Quando o programa de execuo do cliente chama um dos programas remotos, o RPC
automaticamente coleta valores para argumentos, monta uma mensagem, envia a mensagem
ao servidor remoto, espera uma resposta e armazena os valores devolvidos nos argumentos
atribudos. Basicamente, a comunicao com o servidor remoto ocorre automaticamente como
efeito parcial de uma chamada de procedimento remoto. O mecanismo RPC concentra todos os
detalhes do protocolo, possibilitando aos programadores que tm pouco conhecimento de
protocolos de comunicao bsicos desenvolver programas distribudos.
O XDR uma ferramenta relacionada que fornece meios para que os programadores passem
dados entre mquinas heterogneas sem codificar procedimentos que convertam as
representaes de dados de hardware. Por exemplo, nem todos os computadores armazenam
nmeros inteiros binrios de 32 bits no mesmo formato. Alguns armazenam o byte mais
Cristiano Alan Torres

Pg. 73/85

Arquitetura TCP/IP

significativo no endereo de memria mais alta, enquanto outros armazenam o byte menos
significativo no endereo mais alto. Assim, se os programadores usam uma rede simplesmente
para mover bytes de nmero inteiro, de uma mquina para outra, sem redistribu-los, o valor do
nmero inteiro pode mudar. O XDR resolve o problema definindo uma representao de
mquina independente. Em uma extremidade de um canal de comunicao, um programa
chama procedimentos XDR para fazer a converso da representao do hardware local para a
representao independente da mquina. Uma vez que os dados tenham sido transferidos para
outra mquina, o programa receptor solicita rotinas XDR para proceder converso da
representao independente da mquina para a representao local da mquina.
A principal vantagem do XDR automatizar grande parte da tarefa de converso de dados. Os
programadores no precisam digitar chamadas de procedimentos XDR normalmente. Ao
contrrio, eles fornecem o compilador XDR com os estatutos de declarao do programa para o
qual os dados devem ser transformados e o compilador automaticamente gera um programa
com as chamadas de biblioteca XDR necessrias.

8.5.

SMTP (Simple Mail Transfer Protocol)

O SMTP (Simple Mail Transfer Protocol) e o protocolo usado no sistema de correio eletrnico na
arquitetura Internet TCP/IP. Um usurio, ao desejar enviar uma mensagem, utiliza o mdulo
interface com o usurio para compor a mensagem e solicita ao sistema de correio eletrnico
que a entregue ao destinatrio. Quando recebe a mensagem do usurio, o sistema de correio
eletrnico armazena uma cpia da mensagem em seu spool (rea do dispositivo de
armazenamento), junto com o horrio do armazenamento e a identificao do remetente e do
destinatrio. A transferncia da mensagem executada por um processo em background,
permitindo que o usurio remetente, aps entregar a mensagem ao sistema de correio
eletrnico, possa executar outras aplicaes.
O processo de transferncia de mensagens, executando em background, mapeia o nome da
mquina de destino em seu endereo IP, e tenta estabelecer uma conexo TCP com o servidor
Cristiano Alan Torres

Pg. 74/85

Arquitetura TCP/IP

de correio eletrnico da mquina de destino. Note que o processo de transferncia atua como
cliente do servidor do correio eletrnico. Se a conexo for estabelecida, o cliente envia uma
cpia da mensagem para o servidor, que a armazena em seu spool. Caso a mensagem seja
transferida com sucesso, o servidor avisa ao cliente que recebeu e armazenou uma cpia da
mensagem. Quando recebe a confirmao do recebimento e armazenamento, o cliente retira a
cpia da mensagem que mantinha em seu spool local. Se a mensagem, por algum motivo, no
for transmitida com sucesso, o cliente anota o horrio da tentativa e suspende sua execuo.
Periodicamente o cliente acorda e verifica se existem mensagens a serem enviadas na rea de
spool e tenta transmiti-las. Se uma mensagem no for enviada por um perodo, por exemplo de
dois dias, o servio de correio eletrnico devolve a mensagem ao remetente, informando que
no conseguiu transmiti-la.
Em geral, quando um usurio se conecta ao sistema, o sistema de correio eletrnico e ativado
para verificar se existem mensagens na caixa postal do usurio. Se existirem, o sistema de
correio eletrnico emite um aviso para o usurio que, quando achar conveniente, ativa o mdulo
de interface com o usurio para receber as correspondncias.
Um mensagem SMTP divide-se em duas partes: cabealho e corpo, separados por uma linha
em branco. No cabealho so especificadas as informaes necessrias para a transferncia
da mensagem. O cabealho e composto por linhas, que contm uma palavra-chave seguida de
um valor. Por exemplo, identificao do remetente (palavra-chave to: seguida do seu
endereo), identificao do destinatrio, assunto da mensagem, etc... No corpo so
transportadas as informaes da mensagem propriamente dita. O formato do texto livre e as
mensagens so transferidas no formato texto.
Os usurios do sistema de correio eletrnico so localizados atravs de um par de
identificadores. Um deles especifica o nome da mquina de destino e o outro identifica a caixa
postal do usurio. Um remetente pode enviar simultaneamente varias cpias de uma
mensagem, para diferentes destinatrios utilizando o conceito de lista de distribuio (um nome
que identifica um grupo de usurios). O formato dos endereos SMTP o seguinte:
Nome_local@Nome do domnio
Cristiano Alan Torres

Pg. 75/85

Arquitetura TCP/IP

Onde o nome_do_domnio identifica o domnio ao qual a mquina de destino pertence (esse


endereo deve identificar um grupo de mquinas gerenciado por um servidor de correio
eletrnico). O nome_local identifica a caixa postal do destinatrio.
O SMTP especifica como o sistema de correio eletrnico transfere mensagens de uma mquina
para outra. O mdulo interface com usurio e a forma como as mensagens so armazenadas
no so definidos pelo SMTP. O sistema de correio eletrnico pode tambm ser utilizado por
processos de aplicao para transmitir mensagens contendo textos.

Cristiano Alan Torres

Pg. 76/85

Arquitetura TCP/IP

9. FUTURO DO TCP/IP (IPv6)

Nem a Internet nem os protocolos TCP/IP so estticos. Atravs de sua Fora Tarefa de
Engenharia da Internet, a Diretoria de Arquitetura da Internet (IAB, acrnimo de Internet
Architecture Board) promove esforos efetivos e constantes que mantm a tecnologia elstica e
em evoluo. O estmulo para a mudana ocorre medida que aumentos em volume e em
tamanho foram as melhorias necessrias para manter o servio, uma vez que novos
aplicativos exigem mais da tecnologia denominada e j que novas tecnologias tornam possvel
fornecer novos servios.
A verso 4 do Internet Protocol (IPv4, verso atual) fornece o mecanismo bsico de
comunicao da pilha TCP/IP e da Internet. Essa verso permaneceu quase inalterada desde
seu incio, no final da dcada de 1970. A longevidade da verso 4 mostra que o projeto
flexvel e poderoso. Desde quando o IPv4 foi projetado, o desempenho do processador
aumentou mais de duas ordens de magnitude, os tamanhos tpicos de memria aumentaram 32
vezes, a largura de banda de rede cresceu 800 vezes, tecnologias de rede local afloraram e o
nmero de hosts na Internet cresceu para 4 milhes. Alm disso, as mudanas no ocorreram
simultaneamente o IP conciliou mudanas em uma tecnologia, diante das mudanas em
outras.
O protocolo IPv6 proposto mantm muitas das caractersticas que contriburam para o sucesso
do IPv4. Na verdade, os projetistas dotaram o IPv6 basicamente com as mesmas
caractersticas do IPv4, com algumas modificaes. Por exemplo, o IPv6 ainda aceita entrega
sem conexo (permite que cada datagrama seja roteado independentemente), permite que o
transmissor escolha o tamanho de um datagrama e requer que o transmissor especifique o
nmero mximo de passos da rota que um datagrama pode fazer antes de ser concludo. O
IPv6 tambm retm a maioria dos conceitos fornecidos pelas opes do IPv4, inclusive os
recursos para fragmentao e roteamento de origem.

Cristiano Alan Torres

Pg. 77/85

Arquitetura TCP/IP

A despeito de muitas semelhanas conceituais, o IPv6 muda a maioria dos detalhes do


protocolo. Por exemplo, o IPv6 usa endereos maiores e acrescenta algumas caractersticas
novas. Mais importante, revisa completamente o formato de datagrama, substituindo o campo
de opes de comprimento varivel do IPv4 por uma srie de cabealhos de formato fixo. As
mudanas introduzidas pelo IPv6 podem ser agrupadas em cinco categorias:

Endereos Maiores. O novo tamanho de endereo a mudana mais visvel. O IPv6


quadruplica o tamanho de um endereo de IPv4, de 32 para 128 bits. O espao de
endereo de IPv6 to grande que no pode ser consumido em futuro previsvel.

Formato Flexvel de Cabealho. O IPv6 usa um formato de datagrama inteiramente novo e


incompatvel. A contrrio do IPv4, que usa um cabealho de datagrama de formato fixo onde
todos os campos, exceto o de opes, ocupam um nmero fixo de octetos com um
deslocamento fixo, o IPv6 usa um conjunto de cabealhos opcionais.

Opes Aprimoradas. Como o IPv4, o IPv6 permite que um datagrama inclua informaes
de controle opcionais. O IPv6 inclui novas opes que oferecem recursos adicionais no
disponveis no IPv4.

Suporte para Alocaes de Recursos. O IPv6 substitui a especificao de tipo de servio do


IPv4 por um mecanismo que permite pr-alocao de recursos de rede. Particularmente, o
novo mecanismo aceita aplicativos tais como vdeo em tempo real, que requer garantias de
largura de banda e retardo de transmisso.

Proviso para Extenso de Protocolo. Talvez a mudana mais significativa no IPv6 seja uma
transio de um protocolo que especifica inteiramente todos os detalhes, para um protocolo
que pode permitir recursos adicionais.

Cristiano Alan Torres

Pg. 78/85

Arquitetura TCP/IP

9.1.

FORMATO DO DATAGRAMA

O IPv6 muda completamente o formato de datagrama. Como mostra a Figura 9.1, um


datagrama IPv6 tem um cabealho bsico de tamanho fixo seguido de zero, ou mais
cabealhos de extenso seguidos de dados.
Opcional
Cabealho

Cabealho

Bsico

De Extenso 1

...

Cabealho

Dados...

De Extenso N

Figura 9.1. Forma geral de um datagrama IPv6 com vrios cabealhos. Apenas o cabealho bsico exigido; os de
extenso so opcionais.

Curiosamente, embora deva acomodar endereos maiores, um cabealho bsico IPv6 contm
menos informaes do que um cabealho de datagrama IPv4. As opes e alguns dos campos
fixos que aparecem em um cabealho de datagrama IPv4 foram removidos para cabealhos de
extenso no IPv6. Em geral, as mudanas no cabealho de datagrama refletem mudanas no
protocolo:

O alinhamento foi mudado de mltiplos de 32 bits para mltiplos de 64 bits

O campo de comprimento de cabealho foi eliminado e o campo de comprimento de


datagrama foi substitudo por um campo COMPRIMENTO DO PAYLOAD.

O tamanho dos campos de endereo de origem e de destino foi aumentado para 16 octetos
cada.

As informaes de fragmentao foram retiradas de campos fixos do cabealho bsico,


para um cabealho de extenso.

O campo TEMPO DE VIDA foi substitudo por um campo LIMITE DE PASSOS DE ROTA.

Cristiano Alan Torres

Pg. 79/85

Arquitetura TCP/IP

O campo TIPO DE SERVIO foi substitudo por um campo RTULO DE FLUXOS.

O campo PROTOCOLO foi substitudo por um campo que especifica o tipo do prximo
cabealho.

A Figura 9.2 mostra o contedo e o formato do cabealho bsico do IPv6.


0

16

VERS

24

31

RTULO DE FLUXO
COMPRIMENTO DO PAYLOAD

PRXIMO
CABEALHO

LIMITANTE DE PASSOS
DA ROTA

ENDEREO DE ORIGEM

ENDEREO DE DESTINO

Figura 9.2. Formato de cabealho bsico de 40 octetos do IPv6. Cada datagrama do IPv6 comea com um
cabealho bsico.

Vrios campos de um cabealho bsico do IPv6 correspondem diretamente aos campos de um


cabealho do IPv4. Como no IPv4, o campo inicial VERS de 4 bits especifica a verso do
protocolo; VERS sempre contm 6 em um datagrama IPv6. Como no IPv4, os campos
ENDEREO DE ORIGEM e ENDEREO DE DESTINO especificam os endereos do
transmissor e do destinatrio pretendido. No IPv6, entretanto, cada endereo requer 16 octetos.
O campo LIMITE DE PASSOS DA ROTA corresponde ao campo TEMPO DE VIDA (TIME TO
LIVE) do IPv4. Ao contrrio do IPv4, que interpreta um tempo de vida como uma combinao de
contagem de passos da rota e do tempo mximo, o IPv6 interpreta o valor atribuindo limite
estrito ao nmero mximo de passos da rota que um datagrama pode fazer antes de ser
descartado.

Cristiano Alan Torres

Pg. 80/85

Arquitetura TCP/IP

9.2.

TAMANHO DO ESPAO DE ENDEREO

Em IPv6, cada endereo ocupa 16 octetos, quatro vezes o tamanho de um endereo de IPv4. O
espao grande de endereo garante que o IPv6 pode tolerar qualquer esquema razovel de
atribuio de endereo. De fato, se posteriormente os projetistas decidirem mudar o esquema
de endereamento, o espao de endereo ser suficientemente grande para acomodar uma
nova atribuio.
difcil compreender o tamanho do espao de endereo de IPv6. Um modo de examin-lo
consiste em relacionar a magnitude ao tamanho da populao: o espao de endereo to
grande que cada pessoa do planeta pode ter endereos suficientes para ter sua prpria
interligao em redes to grande quanto a Internet atual. Um outro modo de compreender o
tamanho o relacionar ao esgotamento do endereo. Por exemplo, considere quanto tempo
voc levaria para atribuir todos os endereos possveis. Um nmero inteiro de 16 octetos pode
conter 2128 valores. Assim, o espao de endereo maior do que 3,4x10 38. Se os endereos
forem atribudos razo de um milho de endereos a cada microssegundo, sero necessrios
mais de vinte anos para atribuir todos os endereos possveis.
Embora solucione os problemas de capacidade insuficiente, o tamanho grande do endereo
cria um problema novo e interessante: as pessoas que mantm interligaes em rede precisam
ler, dar entrada e manipular tais endereos. Obviamente, a notao binria indefensvel.
Contudo, a notao decimal pontuada, usada para IPv4, tambm no torna tais endereos
suficientemente compactos. Para compreender por que, considere um nmero de 128 bits,
como um exemplo, expresso na notao decimal pontuada:
104.230.140.100.255.255.255.255.0.0.17.128.150.10.255.255
Para ajudar o endereo a tornar-se ligeiramente mais compacto e mais fcil de dar entrada, os
projetistas do IPv6 propem o uso de notao hexadecimal de dois pontos, na qual o valor de
cada conjunto de 16 bits representado em hexadecimal separado por dois pontos. Por
exemplo, quando o valor mostrado acima em notao decimal pontuada tiver sido convertido
Cristiano Alan Torres

Pg. 81/85

Arquitetura TCP/IP

em notao hexadecimal de dois pontos e impresso usando o mesmo espaamento, ele se


tornar:
68E6:8C64:FFFF:FFFF:0:1180:96A:FFF
A notao hexadecimal de dois pontos tem a vantagem bvia de requerer menos dgitos e
menos caracteres separadores do que o decimal pontuada. Alm disso, a notao hexadecimal
de dois pontos inclui duas tcnicas que a tornam extremamente til. Primeiro, a notao
hexadecimal de dois pontos permite a compresso de zero, em que um string de zeros
repetidos substitudo por um par de dois pontos. Para assegurar que a compresso de zero
produz uma interpretao no-ambgua, a proposta determina que ela pode ser aplicada
apenas uma vez em qualquer endereo. A compresso de zero especialmente til quando
usada com o esquema de atribuio de endereo proposto, pois muitos endereos vo conter
strings de zero contguos. Segundo, a notao hexadecimal de dois pontos incorpora sufixos de
notao hexadecimal pontuada. Veremos que tais combinaes destinam-se ao uso durante a
transio do IPv4 para IPv6. Por exemplo, o string a seguir uma notao hexadecimal vlida,
de dois pontos:
0:0:0:0:0:0:128.10.2.1
Observe que, embora os nmeros separados cada um por dois pontos especifiquem o valor de
uma quantidade de 16 bits, cada nmero da parte de notao hexadecimal pontuada especifica
o valor de um octeto. Naturalmente, a compresso de zero pode ser usada com o nmero
acima a fim de produzir um string equivalente de notao hexadecimal de dois pontos que
parece ser totalmente semelhante a um endereo IPv4:
::128.10.2.1

Cristiano Alan Torres

Pg. 82/85

Arquitetura TCP/IP

9.3.

TRS TIPOS BSICOS DE ENDEREO DO IPv6

Como o IPv4, o IPv6 associa um endereo a uma conexo de rede especfica, no a um


computador especfico. Assim, atribuies de endereo so semelhantes a IPv4: um roteador
IPv6 tem dois ou mais endereos, e um host IPv6 com uma conexo de rede precisa de apenas
um endereo. O IPv6 tambm retm (e estende) a hierarquia de endereo de IPv4 em que um
prefixo atribudo a uma rede fsica. Entretanto, para facilitar a atribuio e a modificao de
endereo, o IPv6 permite que vrios prefixos sejam atribudos a determinada rede e permite
que um computador tenha vrios endereos simultneos atribudos a determinada interface.
Alm de permitir vrios endereos simultneos por conexo de rede, o IPv6 expande e, em
alguns casos, unifica endereos especiais do IPv4. Geralmente, um endereo de destino de um
datagrama situa-se em uma das trs categorias:
Unicast

O endereo de destino especifica um nico computador (host ou roteador); o


datagrama dever ser roteado para o destino ao longo do caminho mais curto
possvel.

Cluster

O destino um conjunto de computadores que juntos dividem um nico prefixo de


endereo (ex.: vinculam-se mesma rede fsica). O datagrama dever ser roteado
para o grupo ao longo de um caminho o mais curto possvel e, ento, entregue a
exatamente um membro do grupo (ex.: o membro mais prximo).

Multicast

O destino um conjunto de computadores, possivelmente em diversos locais. Uma


cpia do datagrama ser entregue a cada membro do grupo usando hardware
multicast ou broadcast, conforme o caso.

Um endereo IPv6 tem um comprimento de 128 bits, tornando o espao de endereo to longo
que cada pessoa do planeta poderia ter uma interligao em redes to grande quanto a atual
Internet. O IPv6 divide os endereos em tipos, do mesmo modo que o IPv4 os divide em
classes. Um prefixo de endereo determina o local e a interpretao dos campos restantes do
endereo. Muitos endereos de IPv6 sero atribudos por provedores de servios de rede
Cristiano Alan Torres

Pg. 83/85

Arquitetura TCP/IP

autorizados. Esses endereos tm campos eu contm uma ID de provedor, uma ID de


assinante, uma ID de sub-rede e uma ID de n.

Cristiano Alan Torres

Pg. 84/85

Arquitetura TCP/IP

10. BIBLIOGRAFIA

Sociedade Brasileira para Interconexo de Sistemas Abertos (BRISA), ARQUITETURA DE


REDES DE COMPUTADORES OSI e TCP/IP, Makron Books, 1994.

Alves, Luiz, COMUNICAO DE DADOS, Makron Books, 1994.

Comer, Douglas E., INTERLIGAO EM REDES COM TCP/IP, Editora Campus, 1998.

Tanenbaum, Andrew S., COMPUTERS NETWORKS, Third Edition, Prentice Hall PTR, 1996.

Huitema, Christian, ROUTING IN THE INTERNET, Prentice Hall PTR, 1995.

O'Sullivan, Bryan, THE INTERNET MULTICAST BACKBONE, February 1996.


http://www.serpentine.com/~bos/tech/mbone

Kumar, V., MBone: INTERACTIVE MULTIMEDIA ON THE INTERNET, Indianapolis, IN: New
Riders, 1996.

Deering, S., HOST EXTENSIONS FOR IP MULTICASTING, August 1989.


http://ds.internic.net/rfc/rfc1112.txt

Schulzinne, H., Casner, S., Frederick, R., Jacobson, V.,RTP: A TRANSPORT PROTOCOL
FOR REAL TIME APPLICATIONS, January 1996. http://ds.internic.net/rfc/rfc1889.txt

Cristiano Alan Torres

Pg. 85/85

Anda mungkin juga menyukai