Você está na página 1de 20

Como o Protocolo TCP/IP Funciona - Parte 1

Introduo
O TCP/IP o protocolo de rede mais usado atualmente. Neste tutorial
explicaremos como este protocolo funciona em uma linguagem fcil de
entender.
Mas, afnal, o ue um protocolo de rede! "m protocolo uma
linguagem usada para permitir ue dois ou mais computadores se
comuniuem. #ssim como acontece no mundo real, se eles n$o falarem
a mesma l%ngua eles n$o podem se comunicar.
#ntes de continuarmos, n&s recomendamos ue 'oc( leia nosso tutorial
O Modelo de )efer(ncia O*I para Protocolos de )ede, ue a +ase para
o entendimento de como os protocolos de rede funcionam. Considere
este tutorial como uma se,(ncia de nosso tutorial O Modelo de
)efer(ncia O*I para Protocolos de )ede.
O TCP/IP n$o na 'erdade um protocolo, mas sim um con-unto de
protocolos . uma pil/a de protocolos, como ele mais c/amado. *eu
nome, por exemplo, - fa0 refer(ncia a dois protocolos diferentes, o TCP
1Transmission Control Protocol, Protocolo de Controle de Transmiss$o2 e o
IP 1Internet Protocol, Protocolo de Internet2. 3xistem muitos outros
protocolos ue comp4em a pil/a TCP/IP, como o 5TP, o 6TTP, o *MTP e o
"7P . s& para citarmos alguns. N$o se preocupe por enuanto pois
explicaremos tudo o ue 'oc( precisa sa+er so+re esses protocolos.
# aruitetura do TCP/IP pode ser 'ista na 5igura 8.
Figura 19 #ruitetura do TCP/IP.
Como 'oc( pode 'er, o TCP/IP tem uatro camadas. Os programas se
comunicam com a camada de #plica:$o. Na camada de #plica:$o 'oc(
encontrar os protocolos de aplica:$o tais como o *MTP 1para e;mail2, o
5TP 1para a transfer(ncia de arui'os2 e o 6TTP 1para na'ega:$o <e+2.
Cada tipo de programa se comunica com um protocolo de aplica:$o
diferente, dependendo da fnalidade do programa.
#p&s processar a reuisi:$o do programa, o protocolo na camada de
#plica:$o se comunicar com um outro protocolo na camada de
Transporte, normalmente o TCP. 3sta camada respons'el por pegar os
dados en'iados pela camada superior, di'idi;los em pacotes e en'i;los
para a camada imediatamente inferior, a camada Internet. #lm disso,
durante a recep:$o dos dados, esta camada respons'el por colocar os
pacotes rece+idos da rede em ordem 1- ue eles podem c/egar fora de
ordem2 e tam+m 'erifcam se o conte=do dos pacotes est intacto.
Na camada Internet n&s temos o IP 1Internet Protocol, Protocolo Internet2,
ue pega os pacotes rece+idos da camada de Transporte e adiciona
informa:4es de endere:amento 'irtual, isto , adiciona o endere:o do
computador ue est en'iando os dados e o endere:o do computador
ue rece+er os dados. 3sses endere:os 'irtuais s$o c/amados
endere:os IP. 3m seguida os pacotes s$o en'iados para a camada
imediatamente inferior, a camada Interface com a )ede. Nesta camada
os pacotes s$o c/amados datagramas.
# camada Interface com a )ede rece+er os pacotes en'iados pela
camada Internet e os en'iar para a rede 1ou rece+er os dados da rede,
caso o computador este-a rece+endo dados2. O ue est dentro desta
camada depender do tipo de rede ue seu computador esti'er usando.
#tualmente praticamente todos os computadores utili0am um tipo de
rede c/amado 3t/ernet 1ue est dispon%'el em diferentes 'elocidades>
as redes sem fo tam+m s$o redes 3t/ernet2 e, portanto, 'oc( de'e
encontrar na camada Interface com a )ede as camadas do 3t/ernet, ue
s$o Controle do ?in@ ?&gico 1??C2, Controle de #cesso ao Meio 1M#C2 e
5%sica, listadas de cima para +aixo. Os pacotes transmitidos pela rede
s$o c/amados uadros.
Aamos falar agora em mais detal/es so+re as camadas e os protocolos
do TCP/IP.
Camada de Aplicao
3sta camada fa0 a comunica:$o entre os programas e os protocolos de
transporte. 3xistem 'rios protocolos ue operam na camada de
aplica:$o. Os mais con/ecidos s$o o 6TTP 16BperText Transfer Protocol,
Protocolo de Transfer(ncia 6ipertexto2, o *MTP 1*imple Mail Transfer
Protocol, Protocolo *imples de Transfer(ncia de Correspond(ncia2, o 5TP
15ile Transfer Protocol, Protoloco de Transfer(ncia de #rui'os2, o *NMP
1*imple Net<or@ Management Protocol, Protocolo *imples de
Cerenciamento de )edes2, o 7N* 17omain Name *Bstem, *istema de
Nome de 7om%nio2 e o Telnet. Aoc( - de'e ter ou'ido falar nesses
nomes antes.
Duando um programa cliente de e;mail uer +aixar os e;mails ue est$o
arma0enados no ser'idor de e;mail, ele efetuar esse pedido para a
camada de aplica:$o do TCP/IP, sendo atendido pelo protocolo *MTP.
Duando 'oc( entra um endere:o <<< em seu na'egador para 'isuali0ar
uma pgina na Internet, ele se comunicar com a camada de aplica:$o
do TCP/IP, sendo atendido pelo protocolo 6TTP 1 por isso ue as pginas
da Internet come:am com /ttp9//2. 3 assim por diante.
# camada de aplica:$o comunica;se com a camada de transporte
atra's de uma porta. #s portas s$o numeradas e as aplica:4es padr$o
usam sempre uma mesma porta. Por exemplo, o protocolo *MTP utili0a
sempre a porta EF, o protocolo 6TTP utili0a sempre a porta GH e o 5TP as
portas EH 1para transmiss$o de dados2 e E8 1para transmiss$o de
informa:4es de controle2.
O uso de um n=mero de porta permite ao protocolo de transporte
1tipicamente o TCP2 sa+er ual o tipo de conte=do do pacote de dados
1por exemplo, sa+er ue o dado ue ele est transportando um e;mail2
e, no receptor, sa+er para ual protocolo de aplica:$o ele de'er
entregar o pacote de dados, - ue, como estamos 'endo, existem
in=meros. #ssim, ao rece+er um pacote destinado I porta EF, o
protocolo TCP ir entreg;lo ao protocolo ue esti'er conectado a esta
porta, tipicamente o *MTP, ue por sua 'e0 entregar o dado I aplica:$o
ue o solicitou 1o programa de e;mail2.
Na 5igura E ilustramos como a camada de #plica:$o funciona.
cliue para ampliar
Figura 2: Como a camada de #plica:$o funciona.
Camada de Transporte
Na transmiss$o de dados, a camada de transporte respons'el por
pegar os dados passados pela camada de aplica:$o e transform;los em
pacotes. O TCP 1Transmission Control Protocol, Protocolo de Controle da
Transmiss$o2 o protocolo mais usado na camada de Transporte. Na
recep:$o de dados, o protocolo TCP pega os pacotes passados pela
camada Internet e trata de coloc;los em ordem, - ue os pacotes
podem c/egar ao destino fora de ordem, confere se os dados dentro dos
pacotes est$o %ntegros e en'ia um sinal de confrma:$o c/amado
Jac@no<ledgeK 1Jac@K2 ao transmissor, a'isando ue o pacote foi
rece+ido corretamente e ue os dados est$o %ntegros. *e nen/um sinal
de confrma:$o 1ac@no<ledge2 for rece+ido 1ou porue o dado n$o
c/egou ao destino ou porue o TCP desco+riu ue o dado esta'a
corrompido2, o transmissor en'iar no'amente o pacote perdido.
3nuanto ue o TCP reordena os pacotes e usa mecanismo de
confrma:$o de rece+imento . o ue dese-'el na transmiss$o de
dados . existe um outro protocolo ue opera nesta camada ue n$o tem
esses recursos. 3ste protocolo o "7P 1"ser 7atagram Protocol,
Protocolo de 7atagrama do "surio2.
Por essa ra0$o o TCP considerado um protocolo conf'el, enuanto
ue o "7P considerado um protocolo n$o conf'el. O "7P
tipicamente usado uando nen/um dado importante est sendo
transmitido, como reuisi:4es 7N* 17omain Name *Bstem, *istema de
Nome de 7om%nio2. Como o "7P n$o reordena os pacotes e nem usa
mecanismo de confrma:$o, ele mais rpido do ue o TCP.
Duando o "7P usado, a aplica:$o ue solicita a transmiss$o ser a
respons'el por 'erifcar se os dados rece+idos est$o intactos ou n$o e
tam+m de reordenar os pacotes rece+idos, isto , a aplica:$o far o
tra+al/o do TCP.
7urante a transmiss$o de dados, tanto o "7P uanto o TCP rece+er$o os
dados passados da camada de #plica:$o e adicionar$o a esses dados
um ca+e:al/o. Na recep:$o de dados, o ca+e:al/o ser remo'ido antes
de os dados serem en'iados para a porta apropriada. Neste ca+e:al/o
est$o 'rias informa:4es de controle, em particular o n=mero da porta
de origem, o n=mero da porta de destino, um n=mero de se,(ncia
1para a confrma:$o de rece+imento e mecanismos de reordenamento
usado pelo TCP2 e uma soma de 'erifca:$o 1c/amada c/ec@sum ou C)C,
ue um clculo usado para 'erifcar se o dado foi rece+ido intacto no
destino2. O ca+e:al/o "7P tem G +Btes, enuanto ue o ca+e:al/o TCP
tem entre EH e EL +Btes 1dependendo se o campo op:4es esti'er sendo
ou n$o usado2.
Na 5igura M ilustramos o pacote de dados gerado na camada de
transporte. 3ste pacote de dados ser en'iado para a camada Internet
1se estamos transmitindo dados2 ou ser rece+ido da camada Internet
1se estamos rece+endo dados2.
cliue para ampliar
Figura 3: Pacote de dado na camada de Transporte.
Camada Internet
3m redes TCP/IP cada computador identifcado com um endere:o
'irtual =nico, c/amado endere:o IP. # camada Internet respons'el por
adicionar um ca+e:al/o ao pacote de dados rece+idos da camada de
Transporte onde, entre outros dados de controle, ser adicionado
tam+m o endere:o IP de origem e o endere:o IP de destino . isto , o
endere:o IP do computador ue est en'iando os dados e o endere:o IP
do computador ue de'er rece+(;los.
# placa de rede de cada computador tem um endere:o f%sico. 3ste
endere:o est gra'ado na mem&ria )OM da placa de rede e c/amado
endere:o M#C. 7essa forma, em uma rede local se o computador #
uiser en'iar dados para o computador N, ele precisar sa+er o endere:o
M#C do computador N. 3nuanto ue em uma peuena rede local os
computadores podem facilmente desco+rir o endere:o M#C de todos os
PCs, esta n$o uma tarefa t$o simples em uma rede glo+al como a
Internet.
*e nen/um esuema de endere:amento 'irtual for usado, 'oc( precisa
sa+er o endere:o M#C do computador de destino, o ue n$o apenas
uma tarefa complicada, mas tam+m n$o a-uda no roteamento dos
pacotes, - ue este endere:o n$o usa uma estrutura em r'ore 1em
outras pala'ras, enuanto o endere:amento 'irtual usado na mesma
rede ter endere:os se,enciais, com o endere:amento M#C o
computador com o endere:o M#C seguinte ao seu pode estar na )=ssia2.
)oteamento o camin/o ue os dados de'em usar para c/egar ao
destino. Duando 'oc( solicita dados de um ser'idor da Internet, por
exemplo, este dado passa por 'rios locais 1c/amados roteadores2 antes
de c/egar ao seu computador. *e 'oc( uiser 'er com isto funciona, fa:a
o seguinte9 cliue no menu Iniciar, 3xecutar e digite Cmd. No prompt de
comando digite tracert <<<.google.com. O resultados ser o camin/o
entre seu computador e o ser'idor <e+ do Coogle. Ae-a como os pacotes
de dados passam atra's de diferentes roteadores antes de c/egar ao
destino. Cada roteador no meio do camin/o tam+m con/ecido como
JsaltoK 1J/opK2.
3m todas as redes conectadas I Internet existe um dispositi'o c/amado
roteador, ue fa0 a ponte entre os computadores na sua rede local e a
Internet. Todo roteador tem uma ta+ela contendo as redes con/ecidas e
tam+m uma confgura:$o c/amada gate<aB padr$o apontando para
outro roteador na Internet. Duando seu computador en'ia um pacote de
dados para a Internet, o roteador conectado I sua rede primeiro 'erifca
se ele con/ece o computador de destino . em outras pala'ras, o
roteador 'erifca se o computador de destino est locali0ado na mesma
rede ou em uma rede ue ele con/ece a rota. *e ele n$o con/ecer a rota
para o computador de destino, ele en'iar o pacote para seu gate<aB
padr$o, ue outro roteador. 3ste processo repetido at ue o pacote
de dados c/egue ao seu destino.
6 'rios protocolos ue operam na camada Internet9 IP 1Internet
Protocol, Protocolo de Internet2, ICMP 1Internet Control Message Protocol,
Protocolo de Controle de Mensagens Internet2, #)P 1#ddress )esolution
Protocol, Protocolo de )esolu:$o de 3ndere:os2 e )#)P 1)e'erse #ddress
)esolution Protocol, Protocolo de )esolu:$o de 3ndere:os )e'ersos2. Os
pacotes de dados s$o en'iados usando o protocolo IP, e por isso ue
explicaremos o seu funcionamento.
O IP pega os pacotes de dados rece+idos da camada de Transporte 1do
protocolo TCP se 'oc( est transmitindo dados como e;mails ou
arui'os2 e os di'ide em datagramas. O datagrama um pacote ue n$o
contm nen/um tipo de confrma:$o de rece+imento 1ac@no<ledge2, o
ue signifca ue o IP n$o implementa nen/um mecanismo de
confrma:$o de rece+imento, isto , ele um protocolo n$o conf'el.
Aoc( de'e notar ue durante a transfer(ncia de dados o protocolo TCP
ser usado acima da camada Internet 1ou se-a, acima do IP2 e o TCP
implementa mecanismo de confrma:$o de rece+imento. Portanto apesar
de o protocolo IP n$o 'erifcar se o datagrama c/egou ao destino, o
protocolo TCP far esta 'erifca:$o. # conex$o ser ent$o conf'el,
apesar do IP so0in/o ser um protocolo n$o conf'el.
Cada datagrama IP pode ter um taman/o mximo de OF.FMF +Btes,
incluindo seu ca+e:al/o, ue pode usar EH ou EL +Btes, dependendo se
um campo c/amado Jop:4esK for usado ou n$o. 7essa forma os
datagramas IP podem transportar at OF.F8F ou OF.F88 +Btes de dados.
*e o pacote de dados rece+idos da camada de Transporte for maior do
ue OF.F8F ou OF.F88 +Btes, o protocolo IP fragmentar os pacotes em
uantos datagramas forem necessrios
Na 5igura L n&s ilustramos o datagrama gerado na camada Internet pelo
protocolo IP. P interessante notar ue o ue a camada Internet '( como
sendo JdadosK o pacote completo ue ela rece+e da camada de
Transporte, ue inclui o ca+e:al/o TCP ou "7P. 3ste datagrama ser
en'iado para a camada Interface com a )ede 1se esti'ermos
transmitindo2 ou pode ter sido rece+ido da camada Interface com a )ede
1se esti'ermos rece+endo dados2.
Como mencionamos anteriormente, o ca+e:al/o adicionado pelo
protocolo IP inclui o endere:o IP de origem, o endere:o IP de destino e
'rias outras informa:4es de controle.
cliue para ampliar
Figura 4: 7atagrama na camada de Internet.
Camada de Internet (Cont.)
*e 'oc( prestar aten:$o, n&s n$o dissemos ue o datagrama IP tem
OF.FMF +Btes, mas ele pode ter at OF.FMF +Btes. Isto signifca ue o
campo de dados do datagrama n$o tem um taman/o fxo. Como os
datagramas ser$o transmitidos pela rede dentro de uadros produ0idos
pela camada Interface com a )ede, normalmente o sistema operacional
confgurar o taman/o do datagrama IP para ter o taman/o mximo da
rea de dados do uadro de dados usado em sua rede. O taman/o
mximo do campo de dados dos uadros ue s$o transmitidos pela rede
c/amado MT", Maximum Transfer "nit, ou "nidade de Transfer(ncia
Mxima.
#s redes 3t/ernet . ue s$o o tipo de rede mais comum /o-e em dia,
incluindo sua encarna:$o sem fo . pode transportar at 8.FHH +Btes de
dados, ou se-a, seu MT" de 8.FHH +Btes. Por isso o sistema operacional
confgura automaticamente o protocolo IP para criar datagramas IP com
8.FHH +Btes em 'e0 de OF.FMF 1ue n$o ca+eria no uadro2. Na pr&xima
pgina 'eremos ue o seu taman/o real de 8.LQR ou 8.LQE +Btes, -
ue a camada ??C JcomeK M ou F +Btes para adicionar seu ca+e:al/o.
*& para esclarecer, 'oc( pode estar confuso como uma rede pode ser
classifcada como TCP/IP e 3t/ernet ao mesmo tempo. O TCP/IP um
con-unto de protocolos ue lida com as camadas M a R do modelo de
refer(ncia O*I. O 3t/ernet um con-unto de protocolos ue lida com as
camadas 8 e E do modelo de refer(ncia O*I . o ue signifca ue o
3t/ernet se preocupa com o aspecto f%sico da transmiss$o de dados. Por
isso eles se complementam, - ue precisamos das sete camadas
completas 1ou suas eui'alentes2 para esta+elecer uma conex$o de
rede. N&s explicaremos mais so+re este relacionamento na pr&xima
pgina.
Outra caracter%stica ue o protocolo IP permite a fragmenta:$o. Como
mencionamos, at c/egar a seu destino o datagrama IP pro'a'elmente
passar por 'rias outras redes no meio do camin/o. *e todas as redes
no camin/o entre o computador transmissor e o receptor usarem o
mesmo tipo de rede 1por exemplo 3t/ernet2, mara'il/a, - ue todos os
roteadores tra+al/ar$o com a mesma estrutura do uadro 1isto , o
mesmo taman/o de MT"2.
No entanto, se auelas outras redes n$o forem redes 3t/ernet, elas
podem usar um taman/o diferente de MT". *e isto acontecer, o roteador
ue est rece+endo os uadros com o MT" confgurado com 8.FHH +Btes
di'idir o datagrama IP em uantos uadros forem necessrios para
atra'essar a rede com o taman/o de MT" menor. #o c/egar no roteador
ue tem sua sa%da conectada a uma rede 3t/ernet, este roteador
remontar o datagrama original.
Na 5igura F 'oc( pode 'er um exemplo disto. O uadro original usa um
MT" de 8.FHH +Btes. Duando o datagrama c/ega a uma rede com o
taman/o de MT" de OEH +Btes, cada uadro tem de ser di'idido em tr(s
uadros 1dois com OHH +Btes e um com MHH +Btes2. 3m seguida o
roteador na sa%da desta rede 1roteador E2 remonta o datagrama original.
Claro ue o ca+e:al/o IP tem um ca+o para controlar a fragmenta:$o.
cliue para ampliar
Figura 5: 5ragmenta:$o de datagrama.
Camada Interface com a Rede
Os datagramas gerados na camada Internet ser$o passados para a
camada Interface com a )ede, durante a transmiss$o de dados, ou a
camada de Interface com a )ede pegar os dados da rede e os en'iar
para a camada de Internet, na recep:$o dos dados.
3sta camada defnida pelo tipo de rede f%sica a ual seu computador
est conectado. Duase sempre seu computador estar conectado a uma
rede 3t/ernet 1redes sem fo tam+m s$o redes 3t/ernet como
explicaremos2.
Com dissemos na pgina anterior, o TCP/IP um con-unto de protocolos
ue lida com as camadas M a R do modelo de refer(ncia O*I, enuanto
ue o 3t/ernet um con-unto de protocolos ue lida com as camadas 8
e E do modelo de refer(ncia O*I . o ue signifca ue o 3t/ernet lida com
os aspectos f%sicos da transmiss$o de dados. Por isso um complementa o
outro, - ue precisamos das sete camadas completas 1ou suas
eui'alentes2 para esta+elecer uma conex$o de rede.
O 3t/ernet tem tr(s camadas9 ??C 1Controle do ?in@ ?&gico2, M#C
1Controle de #cesso ao Meio2 e 5%sica. O ??C e o M#C correspondem,
-untas, a segunda camada do modelo de refer(ncia O*I. Aoc( pode 'er a
aruitetura do 3t/ernet na 5igura O.
cliue para ampliar
Figura 6: #ruitetura do 3t/ernet.
# camada ??C a respons'el por adicionar informa:4es de ue
protocolo na camada Internet foi o respons'el por gerar os dados.
7essa forma, durante a recep:$o de dados da rede esta camada no
computador receptor tem ue sa+er ue protocolo da camada de
Internet ele de'e entregar os dados. 3sta camada defnida pelo
protocolo I333 GHE.E.
# camada de Controle de #cesso ao Meio 1M#C2 a respons'el por
montar o uadro ue ser en'iado para a rede. 3sta camada
respons'el por adicionar o endere:o M#C de origem e de destino .
como explicamos anteriormente, o endere:o M#C um endere:o f%sico
de uma placa de rede. Os uadros ue s$o destinados a outras redes
utili0ar$o o endere:o M#C do roteador da rede como endere:o de
destino. 3sta camada defnida pelo protocolo I333 GHE.M, se uma rede
com ca+os esti'er sendo usada, ou pelo protocolo I333 GHE.88, se uma
rede sem fo esti'er sendo usada.
# camada 5%sica a respons'el por con'erter o uadro gerado pela
camada M#C em sinais eltricos 1se for uma rede ca+eada2 ou
eletromagnticos 1se for uma rede sem fo2. 3sta camada tam+m
defnida pelo protocolo I333 GHE.M, se for uma rede com ca+os esti'er
sendo usada, ou pelo I333 GHE.88, se uma rede sem fo esti'er sendo
usada.
#s camadas ??C e M#C adicionam suas informa:4es de ca+e:al/o ao
datagrama rece+ido da camada Internet. Portanto uma estrutura
completa de uadros gerados por essas duas camadas pode ser 'ista na
5igura R. Note ue os ca+e:al/os adicionados pelas camadas superiores
s$o 'istos como JdadosK pela camada ??C. # mesma coisa acontece com
o ca+e:al/o inserido pela camada ??C, ue ser 'isto como dado pela
camada M#C.
# camada ??C adiciona um ca+e:al/o de M ou F +Btes e seus datagrama
tem um taman/o total mximo de 8.FHH +Btes, deixando um mximo de
8.LQR ou 8.LQE +Btes para dados. # camada M#C adiciona um ca+e:al/o
de EE +Btes e um C)C 1soma dos dados para identifca:$o de erros2 de L
+Btes ao fnal do datagrama rece+ido da camada ??C, formando o
uadro 3t/ernet. Portanto o taman/o mximo de um uadro 3t/ernet
de 8.FEO +Btes.
cliue para ampliar
Figura 7: Duadro na camada de Interface com a )ede.
Servios de Terminal
Os ser'i:os de terminal permitem ue 'oc( acesse remotamente um
ser'idor e ten/a acesso ao seu s/ell 1isto , seu prompt de comando2
como se 'oc( esti'esse fsicamente em frente ao teclado e ao monitor
do ser'idor. Os tr(s protocolos de terminal mais comuns s$o o Telnet, o
)login e o **6 1*ecure */ell2. Todos fa0em a mesma coisa, mas as
conex4es do **6 s$o criptografadas e, por isso, mais seguras. *e 'oc(
tem de gerenciar um ser'idor remotamente, opte por usar o **6 em 'e0
do Telnet ou do )login. Como tanto as conex4es Telnet ou uanto as
conex4es )login n$o s$o criptografadas, ualuer pessoa usando um
programa d JsniSerK . ue um tipo de programa ue permite ao
/ac@er ler os pacotes de dados ue trafegam na rede . pode ler tudo o
ue 'oc( digita, incluindo sen/as.
O Telnet, o )login e o **6 s$o protocolos da camada de aplica:$o e
usam o protocolo TCP na camada de transporte. O Telnet usa a porta EM,
o )login usa a porta F8M e o **6 usa a porta EE.
"m dos programas de Terminal mais famosos para Tindo<s ue permite
conex4es Telnet, )login e **6 o PuTTU 1o Tindo<s 'em com um
utilitrio Telnet . ue pode ser acessado atra's do menu Iniciar,
3xecutar, Telnet . mas n$o 'em com nen/um utilitrio com suporte ao
**62.
TFTP (Trivial File Transfer Protocol
Na primeira parte deste tutorial n&s explicamos so+re o funcionamento
do 5TP, um protocolo da camada de aplica:$o para transfer(ncia de
arui'os usando o protocolo TCP na camada de transporte.
O T5TP 1Tri'ial 5ile Transfer Protocol, Protocolo Tri'ial de Transfer(ncia de
#rui'o2 um protocolo ue desempen/a o mesmo tipo de aplica:$o .
transfer(ncia de arui'os . mas ao contrrio do 5TP usa o protocolo "7P
na camada de transporte.
Como 'oc( de'e se lem+rar, a diferen:a entre o TCP e o "7P ue
enuanto o TCP 'erifca se cada pacote c/egou corretamente ao destino,
o "7P n$o. Outra diferen:a ue o TCP reordena os pacotes ue podem
ter c/egado fora de ordem, enuanto ue o "7P tam+m n$o reali0a tal
tarefa.
Por outro lado, por n$o usar mecanismos de confrma:$o e
reordenamento de pacotes, os pacotes "7P s$o menores 1- ue o
ca+e:al/o "7P menor do ue o ca+e:al/o TCP2 e necessitam de
menos poder computacional para serem processados . - ue o processo
de reordenamento e confrma:$o de rece+imento n$o s$o necessrios.
*er a aplica:$o . e n$o o protocolo . ue se encarregar de executar
essas fun:4es.
Para aplica:4es cotidianas, o protocolo T5TP n$o tem muita utilidade, -
ue o 5TP muito mais conf'el. No entanto, existe um tipo de
aplica:$o ue tira pro'eito do T5TP9 o +oot remoto.
Aoc( pode ter um computador sem disco r%gido ou ualuer outra m%dia
de arma0enamento e confgur;lo para reali0ar o +oot pela rede, isto ,
carregar o sistema operacional e programas a partir de um ser'idor. O
programa ue carregar o sistema operacional remotamente precisa
estar arma0enado em uma peuena mem&ria )OM locali0ada na placa
de rede do computador sem m%dia de arma0enamento. Como este
processo necessita de um protocolo para transfer(ncia de arui'os, o
T5TP mais indicado do ue o 5TP, - ue os clientes T5TP s$o muito
menores ue os clientes 5TP, podendo ser arma0enado na mem&ria )OM
da placa de rede . para 'oc( ter uma idia, o taman/o do maior c/ip de
mem&ria )OM usado para +oot remoto de apenas OL VN 1sim,
@ilo+Btes2.
3m resumo, o T5TP um protocolo da camada de aplica:$o ue usa o
protocolo "7P 1porta OQ2 na camada de transporte.
!CP ("namic !ost Confi#uration Protocol)
Todos os computadores conectados a uma rede TCP/IP precisam ser
confgurados com um endere:o IP. *em um endere:o IP um computador
n$o pode se comunicar com outros computadores da rede.
Imagine uma rede grande com centenas de computadores. Confgurar
cada um desses computadores indi'idualmente seria uma tarefa um
tanto ou uanto enfadon/a. #lm disso, pense como seriam os
pro'edores de acesso I Internet9 ele teriam de ensinar cada cliente a
confgurar seus computadores e teriam de fornecer o endere:o IP de
cada cliente por telefone . e monitorar esses endere:os, - ue dois
computadores n$o pode ter o mesmo endere:o IP.
7e modo a facilitar esta confgura:$o, existe um protocolo c/amado
76CP 17Bnamic 6ost Confguration Protocol, Protocolo de Confgura:$o
7inWmica de Muinas2 ue permite ue computadores rece+am suas
confgura:4es atra's de um ser'idor 76CP. 3sta a confgura:$o
padr$o para todos os computadores atualmente. Duando 'oc( liga seu
computador ele pergunta ao ser'idor 76CP da sua rede 1locali0ado no
seu pro'edor de acesso se 'oc( um usurio domstico conectado I
Internet29 JalX, me manda meu endere:o IPYK e pronto, seu computador
est confgurado. *e 'oc( montou uma peuena rede com um roteador
de +anda larga, o roteador tem em+utido um ser'idor 76CP, sendo,
portanto, o respons'el por distri+uir os endere:os IP para os
computadores da sua rede.
#lm do endere:o IP, o ser'idor 76CP tam+m en'ia outras informa:4es
de confgura:$o, como o endere:o IP do ser'idor 7N* ue seu
computador de'e usar 1n&s explicaremos mais so+re o funcionamento
deste ser'idor na pr&xima pgina2, o gate<aB padr$o 1o endere:o IP do
roteador da sua rede . isto , se seu computador n$o pode encontrar o
computador de destino na sua rede local, para ual endere:o os pacotes
de'em ser en'iados2 e a mscara de su+;rede 1usada por uest4es de
endere:amento ue fogem do escopo deste tutorial2.
Com o uso do ser'idor 76CP o administrador da rede pode confgurar
todos os computadores de uma rede a partir de uma locali0a:$o central,
facilitado em muito sua 'ida.
O 76CP um protocolo da camada de aplica:$o e usa o protocolo "7P
na camada de transporte. O 76CP usa as portas OR e OG e na 'erdade
ele su+stitui um protocolo antigo c/amado NOOTP. 3m algumas
pu+lica:4es 'oc( pode encontrar refer(ncias ao NOOTP em 'e0 do 76CP.
Tudo o ue dissemos so+re o 76CP 'lido para o NOOTP, - ue o
76CP 8HHZ compat%'el com o NOOTP 1apesar do 76CP oferecer mais
op:4es do ue o NOOTP2.
$% (omain $ame %"stem)
Como 'oc( - sa+e, em redes TCP/IP cada computador tem um endere:o
'irtual =nico, c/amado endere:o IP. No entanto, para n&s, /umanos,
nomes s$o mais fceis de serem memori0ados do ue n=meros.
O 7N* 17omain Name *Bstem, *istema de Nome de 7om%nio2 permite o
uso de nomes como apelidos para os endere:os IP. Por exemplo, mais
fcil memori0ar o nome de nosso site do ue o endere:o IP ue nosso
ser'idor <e+ est usando9 muito mais fcil memori0ar
clu+edo/ard<are.com.+r do ue OQ.L8.8O8.MO.
Duando 'oc( digita em seu na'egador
/ttp9//<<<.clu+edo/ard<are.com.+r, o protocolo 7N* entra em a:$o,
contatando um ser'idor 7N* e perguntando ual endere:o IP est
associado ao nome <<<.clu+edo/ard<are.com.+r. O ser'idor 7N*
responder OQ.L8.8O8.MO e ent$o o seu na'egador sa+er ual endere:o
IP usar nesta conex$o.
O ser'idor 7N* ue o seu na'egador usar o ser'idor 7N* ue o seu
computador est confgurado para usar . todos os computadores ue
est$o conectados I Internet t(m um campo para confgura:$o do
endere:o IP de pelo menos um ser'idor 7N*. Normalmente esta
confgura:$o feita automaticamente 'ia 76CP.
*e o ser'idor 7N* n$o con/ece o nome ue 'oc( perguntou, ele entrar
em contato com outro ser'idor 7N* com um n%'el /ierruico maior de
modo a aprender este nome/endere:o IP.
Todas as entradas no ser'idor 7N* t(m um campo Jtempo de 'idaK
1tam+m c/amado TT?, Time To ?i'e2, ue di0 ao ser'idor por uanto
tempo auela informa:$o 'lida. Duando a informa:$o 'ence, ela de'e
ser atuali0ada contatando no'amente o ser'idor 7N* com um n%'el
/ierruico maior. Isto feito desta forma porue caso o endere:o IP de
um ser'idor mude, o tempo mximo ue 'oc( precisar aguardar para
aprender ual o no'o endere:o IP para auele ser'idor ser o campo
TT? da sua entrada no ser'idor 7N* ; ue pode 'ariar de algumas /oras
a alguns dias.
O 7N* um protocolo da camada de aplica:$o e suas reuisi:4es s$o
feitas usando a porta FM do protocolo "7P na camada de transporte.
Como - explicamos, o "7P n$o 'erifca se os pacotes c/egaram ou n$o
ao destino, mas, por outro lado, ele mais rpido, - ue seu ca+e:al/o
menor e exige menos poder computacional para ser processado.

"ma maneira fcil de +rincar com reuisi:4es 7N* atra's do uso do
comando nsloo@up, dispon%'el tanto no prompt de comando do Tindo<s
uanto em sistemas "nix 1como ?inux . dependendo da sua distri+ui:$o
do ?inux este comando pode ser c/amada /ost e n$o nsloo@up2.
No Tindo<s, cliue no menu Iniciar, 3xecutar e digite Cmd e cliue no
+ot$o O@. No prompt de comando digite nsloo@up
<<<.clu+edo/ard<are.com.+r. Aoc( rece+er como resposta o endere:o
IP associado a este nome 1OQ.L8.8O8.MO2. Aoc( pode ainda fa0er outros
testes, como digitar um endere:o IP e 'erifcar se existe um nome de
ser'idor associado ao endere:o ue 'oc( digitou. Nrinue com este
comando para ue 'oc( possa entender mais so+re o funcionamento do
7N*> ele n$o danifcar o seu microY
# prop&sito, o 7N* permite ue mais de um nome se-a associado a um
mesmo endere:o IP. Isto permite ue 'oc( /ospede mais de um site em
um =nico ser'idor, por exemplo. Duando 'oc( acessa um ser'idor ue
tem mais de um site /ospedado, seu na'egador acessar ele atra's do
seu endere:o IP 1desco+erto atra's de uma reuisi:$o 7N*, como
explicamos2, enuanto ue o ser'idor 'erifcar o nome ue 'oc( est
usando em seu na'egador para sa+er ual site fornecer para 'oc(.
IC&P (Internet Control &essa#e Protocol)
O ICMP 1Internet Control Message Protocol, Protocol de Mensagens de
Controle Internet2 usado para en'iar mensagens de controle para os
roteadores. 3ste um protocolo da camada Internet e ue funciona em
con-unto com o protocolo IP. 3le pode ser usado em 'rias situa:4es em
ue pode ser necessrio ue um roteador instruia outro so+re algo .
normalmente uando um roteador rece+e um datagrama ue n$o pode
ser entregue, ele en'iar de 'olta ao roteador ue o en'iou o datagrama
uma mensagem ICMP explicando o moti'o pelo ual ele n$o pXde
entregar o datagrama.
#lgumas mensagens de controle ue podem ser en'iadas usando o ICMP
s$o9
Eco: Usada para testar se o caminho entre o receptor e o transmissor est bom. O
uso mais conhecido deste tipo de mensagem atravs do comando Ping. Se voc
enviar um comando Ping ao endereo www.clubedohardware.com.br por e!emplo
nosso servidor responder a essas solicita"es de eco e o Ping dir a voc se as
mensagens chegaram ou n#o ao servidor e $ual %oi o tempo gasto entre voc enviar
o comando e a mensagem de eco voltar ao seu computador normalmente dado em
milisegundos &ms'.
(estino )nalcanvel: (entro desta mensagem o roteador pode di*er e!atamente o
$ue ocorreu de errado como rede inalcanvel computador inalcanvel protocolo
inalcanvel porta inalcanvel rede de destino inalcanvel computador de
destino inalcanvel se o administrador da rede blo$ueou a rede ou o computador
de destino problemas de roteamento etc.
+ongestionamento: Esta mensagem enviada caso o roteador este,a sobrecarregado
- isto caso ele este,a recebendo mais datagramas do capa* de processar - de
modo a %a*er com $ue o roteador $ue este,a enviando os datagramas redu*a a ta!a
de datagramas enviados para o roteador $ue est sobrecarregado.
.edirecionamento: Esta mensagem normalmente usada $uando um roteador
descobre $ue e!iste uma rota melhor para alcanar o destino atuali*ando o roteador
transmissor. Este recurso apenas %unciona em redes local n#o %uncionando em redes
grandes $ue tenham vrias redes interconectadas como a )nternet.
/empo de 0ida E!cedido: /odos os datagramas )P tm um campo tempo de vida
&//1 /ime /o 1ive' $ue indica a $uantidade de saltos &isto roteadores' $ue o
datagrama pode passar do computador transmissor at o computador receptor. Se um
datagrama est con%igurado com um //1 de 23 isto signi%ica $ue se ele n#o chegar
no destino dentro de 23 saltos o datagrama dever ser descartado. )sto %eito para
evitar $ue os datagramas %i$uem eternamente circulando na rede ou na )nternet caso
a rede n#o este,a con%igurada corretamente e o datagrama este,a circulando sem
$ual$uer caminho para alcanar seu destino.
Solicita#o de 4ora: .oteadores &e computadores' podem perguntar a hora a outro
roteador ou computador. Um dos usos desta mensagem para sincroni*ar os
rel5gios dos dois computadores apesar desta sincroni*a#o n#o ser per%eita , $ue
e!iste um pe$ueno retardo introdu*ido pela rede &na ordem de milisegundos'. Esta
mensagem pode ainda ser usada para medir o tempo de retardo da rede entre dois
computadores se seus rel5gios estiverem sincroni*ados.
Protocolos de Roteamento' RIP( )%PF e *+P
O roteamento pode ser esttico ou dinWmico. 3nuanto ue em
peuenas redes o roteamento esttico usado . isto , os datagramas
sempre trafegam pelo mesmo camin/o para alcan:arem o seu destino .
na Internet ou em redes maiores o roteamento dinWmico fa0;se
necessrio.
Com o roteamento dinWmico, roteadores podem mudar as rotas a
ualuer momento, desde ue eles perce+am ue existem mel/ores
camin/os para alcan:ar um determinado destino. Por exemplo, se existe
mais de um camin/o para alcan:ar um dado destino e a rota atual
mais longa do ue uma outra rota dispon%'el, os roteadores podem
mudar a sua confgura:$o para usarem a rota mais curta. #ui JlongaK e
JcurtaK referem;se ao n=mero de saltos 1isto , roteadores2 existentes no
camin/o. )otas mais curtas n$o s$o necessariamente mais rpidas,
como explicaremos.
# comunica:$o entre os roteadores de modo a reprogramarem as suas
ta+elas de roteamento feita usando um protocolo de roteamento. Os
tr(s protocolos de roteamento dinWmico mais con/ecidos s$o o )IP
1)outing Information Protocol, Protocolo de Informa:$o de )oteamento2,
O*P5 1Open */ortest Pat/ 5irst, Primeiro o Camin/o Mais Curto . o
JOpenK no nome refere;se ao fato do protocolo ser Jli'reK, sendo
signifcando J#+rirK2 e o NCP 1Norder Cate<aB Protocol, Protocolo de
Cate<aB de 5ronteira2.
*e os roteadores est$o usando o protocolo )IP, eles en'iar$o suas
ta+elas de roteamento para todos os roteadores ue eles t(m acesso a
cada MH segundos. # ta+ela de roteamento contm todas as redes ue
os roteadores con/ecem e como alcan:;las, alm da distWncia 1dada em
n=mero de saltos2 at elas.
Duando cada roteador rece+e uma no'a ta+ela de roteamento de outro
roteador, ele pode 'er se existe alguma rede nesta lista ue ten/a um
camin/o mais curto 1isto , usando menos saltos . tradu:$o9 passando
por menos roteadores2 do ue ele est atualmente confgurado para
usar. *e existir, o roteador se reconfgurar para usar este no'o camin/o
mais curto.
O pro+lema ue os camin/os mais curtos nem sempre s$o os
mel/ores, - ue o protocolo )IP n$o implementa nen/um modo para
'erifcar o desempen/o do camin/o. 3le tam+m n$o 'erifca o
congestionamento ou se o camin/o realmente conf'el. Portanto uma
rota mais longa pode aca+ar sendo mais rpida.
O )IP usa a porta FEH do "7P.
#pesar do seu nome, o protocolo O*P5 n$o procurar o camin/o mais
curto, mas sim o camin/o mais rpido. Duando os roteadores usam o
protocolo O*P5, eles 'erifcam o estado dos outros roteadores ue eles
t(m acesso de tempos em tempos en'iando mensagens c/amadas
J/elloK. #tra's destas mensagens eles sa+em se um roteador est
operacional e ual o seu estado. Outra diferen:a ue usando o O*P5
os roteadores con/ecem todos os camin/os ue podem ser usados para
alcan:ar um determinado destino, enuanto ue roteadores )IP
con/ecem apenas o camin/o mais curto. "ma terceira diferen:a ue
roteadores +aseados no )IP en'iar$o suas ta+elas de roteamento
inteiras a cada MH segundo, aumentando o trfego da rede.
"ma outra diferen:a ue os roteadores +aseados no O*P5 permitem
+alanceamento de carga9 se existir mais de uma rota para um dado
destino, o roteador pode di'idir os datagramas entre eles de modo a
redu0ir o trfego em cada um dos camin/os.
O O*P5 funciona diretamente na camada Internet com o protocolo IP,
portanto ele n$o usa os protocolos TCP ou o "7P.
O NCP um protocolo usado em redes grandes, como a Internet . na
'erdade o NCP o protocolo usado pelos roteadores da Internet. Como
tal, ele classifcado como um protocolo externo, enuanto ue o )IP e o
O*P5 s$o classifcados como protocolos internos . - ue eles s$o usados
em redes ue est$o so+ a mesma administra:$o.
O NCP agrupa roteadores e computadores so+ uma mesma
administra:$o em uma unidade c/amada *istema #utXnomo 1*#2 . por
exemplo, todos os roteadores e computadores ue pertencem ou est$o
conectados ao mesmo pro'edor de Internet fa0em parte de um mesmo
*#. O NCP c/amado INCP 1Interno2 se tra+al/a dentro de um mesmo
sistema autXnomo ou de 3NCP 13xterno2 se tra+al/a entre dois sistemas
autXnomos diferentes.
O NCP muito mais complexo do ue o )IP e o O*P5, - ue ele usa
'rios critrios 1c/amados atri+utos2 para determinar ual a mel/or
rota a ser tomada9 Peso, Prefer(ncia ?ocal, 7iscriminador de *a%das
M=ltiplas, Origem, Camin/o[*#, Pr&ximo *alto e Comunidade.
#o contrrio do )IP, os roteadores +aseados no NCP en'iam apenas o
ue / de no'o em suas ta+elas de roteamento em 'e0 de en'iar a
ta+ela inteira de tempos em tempos, a-udando a diminuir o trfego da
rede. "ma diferen:a entre o NCP e o )IP ue o NCP 'erifca de tempos
em tempos se um dado camin/o est acess%'el ou n$o.
O NCP utili0a a porta 8RQ do TCP.
ARP e RARP
O #)P 1#ddress )esolution Protocol, Protocolo de )esolu:$o de 3ndere:o2
o respons'el por aprender ual o endere:o M#C 1isto , o endere:o
f%sico2 de um computador ue tem um dado endere:o IP e o )#)P
1)e'erse #ddress )esolution Protocol, Protocolo de )esolu:$o de
3ndere:o )e'erso2 fa0 o contrrio9 ele o respons'el por desco+rir ual
o endere:o IP de um computador ue tem um determinado endere:o
M#C.
3nuanto um datagrama est sendo transmitido pela Internet o
endere:o M#C do computador de destino n$o necessrio . os
roteadores no meio do camin/o est$o interessados apenas em entregar
o datagrama para a rede de destino. Mas uma 'e0 ue os pacotes
c/egam na rede de destino, o roteador conectado nessa rede precisa
sa+er o endere:o M#C do computador de destino, - ue ele ir entregar
o datagrama localmente 1pro'a'elmente usando o protocolo 3t/ernet2.
Por exemplo, se o endere:o IP de destino OQ.OQ.OQ.OQ, uando o
datagrama c/egar no roteador da rede OQ.OQ.OQ.H, ele perguntar a
todos os computadores 1uando uma mensagem en'iada para todos
os computadores di0emos ue ela uma mensagem de +roadcast2
usando o protocolo #)P9 JalX, ual o computador ue tem o endere:o
OQ.OQ.OQ.OQ!K 3m seguida o computador ue ti'er este endere:o IP
responder Jsou euYK.
Claro ue en'iar uma mensagem de +roadcast toda /ora congestiona a
rede, e por isso os roteadores mant(m uma ta+ela com os endere:os IP
con/ecidos e seus respecti'os endere:os M#C, dispensando assim ue a
mesma reuisi:$o se-a feita caso um no'o datagrama destinado ao
endere:o OQ.OQ.OQ.OQ se-a rece+ido.
O )#)P, por outro lado, foi usado no passado pelos computadores sem
m%dia de arma0enamento para +oot remoto. Como este tipo de
computador n$o tem um sistema operacional instalado, ele n$o sa+e
ual endere:o IP usar. 3le precisa, portanto, sa+er ual endere:o IP usar
de modo a iniciar a carga do sistema operacional do ser'idor de +oot
remoto. Com 'oc( pode 'er, este exatamente o mesmo papel do 76CP
e como atualmente todas as redes usam um ser'idor 76CP, o uso do
)#)P tornou;se o+soleto.
Tanto o #)P e o )#) funcionam na camada de Interface com a )ede.
)utras Funcionalidades e Protocolos
#+aixo 'oc( encontra uma lista de outras funcionalidade e protocolos
JfamososK relacionados ao TCP/IP e ue 'oc( pode ou'ir a respeito9
67/ &6etwor8 7ddress /ranslation /radu#o de Endereo de .ede': /eoricamente
cada computador conectado 9 )nternet precisa de um endereo )P :p;blico< vlido.
O 67/ permite a uma rede local usar um ;nico endereo )P :p;blico<. Por e!emplo
$uando voc conecta sua rede domstica ou da sua empresa 9 )nternet usando um
roteador de banda larga o roteador usar o ;nico endereo )P :p;blico< atribu=do
por seu provedor en$uanto $ue seus computadores usar#o os endereos )P $ue s#o
vlidos apenas dentro da sua rede &chamados endereos )P :mgicos< normalmente
na %ai!a >?2.>@A.!.!'. (o ponto de vista da )nternet todos os computadores da sua
rede est#o usando o mesmo endereo )P. Portanto para enviar dados para um dos
computadores da sua rede o computador de origem usar o endereo )P do roteador
e $uando este datagrama chegar no roteador ele substituir seu endereo )P pelo
endereo )P $ue o computador de destino est usando $ue vlido apenas dentro da
sua rede. Esta tcnica chamada 67/.
)BCP &)nternet Broup Canagement Protocol Protocolo de Berenciamento de
Brupo )nternet': 7 tcnica de enviar o mesmo datagrama para todos os
computadores da rede chamada broadcast en$uanto $ue a tcnica de enviar o
mesmo datagrama para um determinado grupo de computadores &mas n#o todos'
chamada multicast. O multicast no /+PD)P pode ser %eito at mesmo se
computadores estiverem locali*ados em redes di%erentes. Esses grupos s#o
gerenciados usando mensagens de controle )BCP. O )BCP usa o protocolo )P
trabalhando na camada )nternet.
S6CP &Simple 6etwor8 Canagement Protocol Protocolo Simples de
Berenciamento de .ede': Este protocolo usado para monitorar os dispositivos de
hardware conectados a redes /+PD)P $ue o implementem. O S6CP um protocolo
da camada de aplica#o e usa as portas >@> e >@2 do U(P.
Einger: Este um protocolo da camada de aplica#o $ue usa a porta F? do /+P e
usado para descobrir in%orma"es sobre um dado usurio em um servidor. +omo ter
acesso 9s in%orma"es pessoais de todos os seus usurios realmente uma m idia
este servio est $uase sempre desabilitado.
Eonte:
http:DDwww.clubedohardware.com.brDartigosD+omoGoGProtocoloG/+PG)PGEuncionaGParteG
2D>HI2DF
http:DDwww.clubedohardware.com.brDartigosD+omoGoGProtocoloG/+PG)PGEuncionaGParteG
>D>HI>D@

Você também pode gostar