Académique Documents
Professionnel Documents
Culture Documents
Unidade III
Esta unidade tem como principal objetivo apresentar as camadas, sem dvida as mais importantes,
que devem ser largamente entendidas pelo profissional da rea de tecnologia da informao. Isso porque
essa unidade apresenta as camadas que so responsveis pela comunicao fim a fim nas redes de
computadores (Camada de Transporte) e detalha a maneira com que as mensagens so encaminhadas
atravs das redes, em todo seu percurso, at chegar ao destino final (Camada de Rede).
5 CAMADA DE TRANSPORTE
A Camada de Transporte, camada central da pilha de protocolos (figura 46), desempenha o papel
fundamental de fornecer servios de comunicao diretamente aos processos de aplicao, que rodam
em hospedeiros diferentes.
7
Aplicao
Apresentao
Sesso
Transporte
Rede
Enlace
Fsica
Agora vamos entender o funcionamento da Camada de Transporte e sua relao com a Camada
de Rede que est logo abaixo dela. Voc deve se lembrar daquele exemplo que usamos comparando as
redes aos servios de correio. Vamos agora aprofundar um pouco mais.
muito comum a confuso entre as funes pertinentes Camada de Transporte e as pertinentes
Camada de Rede. Como falamos, a Camada de Transporte estabelece comunicao lgica entre processos
em hospedeiros diferentes. J a Camada de Rede fornece comunicao lgica entre os hospedeiros. Para
entender melhor, vamos ilustrar com uma histria de amor entre Joo e Maria.
Joo era um jovem loucamente apaixonado por Maria. Ele morava em Florianpolis e ela, em So
Paulo. Eles se conheceram quando ela foi passar frias na casa de uma de suas tias. Durante as frias,
Joo nunca teve coragem de convidar Maria para um cinema e ela acabou indo embora sem que ele
tivesse se declarado a ela.
79
Unidade III
Depois disso, arrependido, Joo passou a enviar uma carta para sua amada todas as semanas (pobre
Joo, no tinha MSN nessa nossa histria). Sempre com o mesmo pedido, que Maria aceitasse se
encontrar com ele. Ela nunca respondia a seus lamentos.
No edifcio onde Joo morava, o correio passava toda sexta-feira para recolher as correspondncias
dos moradores e deixar outras. Jos, o porteiro no edifcio, era o responsvel por recolher as cartas dos
moradores, entreg-las ao correio e por receber as cartas do carteiro e distribu-las em cada um dos
apartamentos. Jos era um porteiro que fazia o seu trabalho, que era distribuir as cartas aos apartamentos
e entregar ao correio as cartas dos moradores.
Joo passou meses nesse sofrimento, mandando cartas para seu amor, e nunca recebeu qualquer
resposta. Estava quase desistindo.
Foi quando surgiu Carlos na histria. Carlos se chamava na verdade Tefilo Carlos Prates, mas
gostava de ser chamado de Carlos mesmo. Isso aconteceu em uma das frias do Jos. Carlos passou a
ser o responsvel pela entrega e recepo das cartas no prdio de Joo. Mas ele era um porteiro e tanto e
tomava todo o cuidado para garantir que as cartas haviam sido entregues aos seus destinos. Perguntava
ao carteiro todas as vezes se tudo tinha corrido bem.
Logo ficou sabendo que as cartas de Carlos no estavam sendo entregues sua amada. O carteiro
contou que o endereo tinha um erro e que os envelopes estavam sendo descartados.
Carlos correu para avisar Joo, que no sabia se ficava triste ou feliz com a novidade. Enquanto
estava na dvida, correu na casa da tia da Maria e confirmou o endereo. Ele tinha anotado errado!
Imediatamente escreveu uma nova carta para Maria e recomendou que Carlos fosse o responsvel
por encaminh-la ao correio.
Meu amado Joo,
H meses venho esperando essa sua carta, sonhando com o dia em que poderia lhe dizer,
meu amor, que essa nossa histria, na verdade, no passa de uma metfora para explicar o
funcionamento dos protocolos de transporte UDP (Jos) e TCP (Carlos).
Maria
Agora vamos ilustrar nossa histria falando como acontece no ambiente das redes de
computadores.
O processo se inicia com o preparo de sua mensagem na Camada de Aplicao, que em nossa histria
foi representada pelas cartas de Joo, para ser enviada rede atravs da API, que cumpre as regras de
envio. Esse pacote, ainda da Camada de Aplicao, enviado para a Camada de Transporte, representada
pelos porteiros do prdio de Joo, Jos e Carlos, como mostra a figura 47:
80
Figura 48 - O protocolo de transporte encaminhando a mensagem Camada de Rede (elaborada pela autora)
A Camada de Rede responsvel por encaminhar os pacotes ao seu destino e l entreglos Camada de Transporte. Em nossa histria podemos represent-la pelo correio entregando
a mensagem ao porteiro do prdio de Maria, quando o endereo no tinha mais erros. Como
vimos, a Camada de Rede (ou correio) no se preocupa com as mensagens endereadas erradas.
Se ela no encontra o destino, simplesmente descarta sem nem mesmo enviar qualquer tipo
de aviso ao remetente. A figura 49 mostra a mensagem chegando na Camada de Transporte
do destinatrio:
81
Unidade III
Figura 49 - A Camada de Rede entregando a mensagem camada de transporte, no destino (elaborada pela autora)
Figura 50 - A Camada de Transporte entregando a mensagem Camada de Aplicao, no destino (elaborada pela autora)
IP
E
F
IP
E
F
T
Figura 52 - A rede vista pela aplicao (KOVACH, 2009)
83
Unidade III
Aplicao
Transporte
Rede
Enlace
Rede
Fsica
Enlace
Rede
Enlace
Fsica
l
rte
po
ns
Tra
Fsica
Rede
ico
g
Enlace
Rede
Fsica
Enlace
fim
m
a fi
Fsica
Rede
Enlace
Fsica
Aplicao
Transporte
Rede
Enlace
Fsica
FTP
HTTP
SIP
DNS
FTP
HTTP
SIP
DNS
21
80
5060
53
Aplicao
21
80
5060
TCP
53
UDP
TCP
Transporte
Rede
IP
UDP
IP
= Porta
Lembrete
Lembre-se do processo de encapsulamento e desencapsulamento, que
permite a identificao das aplicaes no destino por meio do cabealho
correspondente camada.
Existem dois tipos de portas: as estticas e as dinmicas. Portas estticas ou conhecidas so portas
associadas a processos que fornecem servios (programas servidores) e que, normalmente, no mudam
com o tempo.Por exemplo, o servidor SMTP est sempre associado porta 25. Portas dinmicas so
portas associadas a processos que solicitam servios a servidores (programas clientes) e so normalmente
assinaladas dinamicamente pelo sistema operacional, ou seja, mudam a cada execuo do programa.
Portas com faixas de 0 a 1023 so chamadas de portas conhecidas, ou seja, esto associadas a uma
aplicao comum, conhecida. Acima de 1023 so chamadas portas altas e possvel associ-las a uma
aplicao desconhecida. Alguns exemplos de portas baixas conhecidas esto na Tabela 1:
Tabela 4 - Exemplos de portas baixas conhecidas
Protocolo
Nmero da porta
FTP
21/TCP
Telnet
23/TCP
SMTP
25/TCP
BOOTP
67/UDP
HFTP
69/UDP
HTTP
80/TCP
HOSTNAME
101/TCP
85
Unidade III
POP3
110/TCP
NTP
123/UDP
SNMP
161/UDP
BGP
179/TCP
IRC
194/TCP
IMAP
220/TCP, UDP
Cada aplicao da internet usa pelo menos um protocolo da Camada de Transporte para enviar e
receber dados. So dois os principais protocolos de Camada de Transporte: TCP (Transmission Control
Program) e UDP (User Datagram Protocol). Veremos que, embora tenham o mesmo objetivo, tais
protocolos possuem caractersticas muito diferentes entre si, e a escolha de associao com as aplicaes
depende das caractersticas que se esperam da aplicao.
Tabela 5 - Aplicaes populares da internet e seus protocolos de transporte
Protocolo de Camada de
Aplicao
Protocolo de Camada de
Transporte
Correio eletrnico
SMTP
TCP
Telnet
TCP
Web
HTTP
TCP
Transferncia de arquivo
FTP
TCP
Recepo de multimdia
Tipicamente proprietria
UDP ou TCP
Tipicamente proprietria
UDP ou TCP
Gerenciamento de rede
SNMP
Tipicamente UDP
Protocolo de roteamento
RIP
Tipicamente UDP
Traduo de nome
DNS
Tipicamente UDP
Aplicao
Segmento UDP
O cabealho do segmento UDP simples, se comparado ao TCP, que ser apresentado na prxima
seo. Ele composto por 4 campos essenciais, como mostra a figura 55:
16
16
16
16
Porta de origem
Porta de destino
Tamanho
Checksum
Mensagem
Porta de origem: identifica o nmero de porta relacionado com a aplicao de origem. Este
campo representa a direo de resposta do destinatrio. Entretanto, um campo no obrigatrio,
ou seja, seu preenchimento pela aplicao de origem opcional e, neste caso, ser preenchido
com zero (utilizado para mensagens unidirecionais).
Porta de destino: identifica o nmero de porta relacionado com a aplicao de destino.
Tamanho da mensagem: identifica o tamanho total do segmento UDP, incluindo-se o cabealho.
Checksum: campo reservado para verificao de integridade do segmento no destino.
Repare que do lado do remetente, na Camada de Transporte, o cabealho UDP agrupado
mensagem, formando o segmento UDP, que passado integralmente Camada de Rede, que adicionar
seu cabealho IP, como mostra a figura 56:
87
Unidade III
15 16
0
Porta de origem
31
Porta de destino
Camada de
transporte
Checksum
Tamanho da mensagem
Mensagem de aplicao
Cabealho IP
Camada de
rede
Segmento UDP
Transporte
Endereo IP
destino
Mensagem
UDP
Endereo IP
destino
Rede
Porta de destino
Porta de
origem
Porta de
destino
Tamanho
Checksum
Mensagem
IP
Cabealho IP
Segmento UDP
Datagrama IP
Recordando como funciona o processo de encapsulamento nos sistemas finais, ao utilizar-se o UDP
como protocolo de transporte a uma aplicao, o cabealho do UDP que vai sendo passado camada
do encapsulamento, como vimos anteriormente. A figura 58 ilustra essa ao:
88
Mensagem
Cabealho UDP
Mensagem
Segmento
Cabealho IP
Cabealho UDP
Mensagem
Datagrama
Cabealho Ethernet
Cabealho IP
Cabealho UDP
Mensagem
Cabealho Ethernet
Quadro
Figura 58 - Encapsulamento de transporte com o protocolo UDP (KOVACH, 2009)
Observao
Unidade III
Aplicao
Transporte
Porta de
destino
Endereo IP
destino
UDP
Endereo IP
de destino
Porta de
destino
Rede
IP
Figura 59 - Protocolo TCP, fornecendo apenas o endereo e porta de destino no estabelecimento da conexo (KOVACH, 2009)
Depois, a aplicao passa apenas a mensagem at o trmino da conexo, como est representado
na figura 60:
Aplicao
Transporte
Porta de
destino
Endereo IP
destino
UDP
Endereo IP
de destino
Porta de
destino
Porta de
origem
Rede
Mensagem
Porta de
destino
Outros campos
Mensagem
IP
Cabealho IP
Segmento UDP
Datagrama IP
Dizemos que o TCP possui transferncia confivel de dados, pois ele usa nmeros de sequncia
e reconhecimento positivo com retransmisso para entrega confivel dos dados. Assim, o TCP um
protocolo utilizado por diversas aplicaes que no aceitam perdas de informaes e devem garantir a
entrega e a integridade das mesmas.
Os nmeros de sequncia so usados para determinar a ordem dos dados que chegam e para detectar
pacotes que esto faltando. O reconhecimento positivo com retransmisso exige que o receptor envie
um pacote de reconhecimento (Ack) ao remetente sempre que recebe um dado.
90
Dados 1
erro
timeout
Dados 1
Ack
Ack = acknowledgment = reconhecimento
Segmento TCP
Da mesma forma que o UDP, segmento a unidade de transferncia de dados trocada entre as
estaes que usam o protocolo TCP, pois ambos so de camada de transporte. O segmento TCP
composto pela mensagem que veio da Camada de Aplicao mais os campos do cabealho TCP, como
mostra a figura 62:
16
16
16
16
16
16
16
32
Porta de
origem
Porta de
destino
Num
seq
Num
ack
SYN, FIN,
RST, ACK
Tam
Janela
Checksum
Opes
Cabealho IP
Mensagem
Segmento UDP
Datagrama IP
Figura 62 - O segmento TCP (KOVACH, 2009)
Unidade III
O formato do segmento TCP, diferente do UDP, mais complexo e possui uma variedade de campos
e controles, justamente por ter que se preocupar com os detalhes da entrega confivel dos dados.
Assim como no UDP, o segmento TCP, mostrado na figura 63, possui os dois primeiros campos
referentes aos nmeros de porta (porta origem e destino). Mostraremos a seguir o significado de cada
um dos campos do cabealho TCP.
Porta de origem
Porta de destino
Nmero de sequncia
Nmero de Ack
HLEN
Reserv
Checksum
Urgent pointer
Padding
Opes
Mensagem
No exemplo da figura, como se o cliente iniciasse a solicitao dizendo para o servidor receptor
no enviar mais do que 1460 de tamanho mximo do segmento.
O servidor analisa o pedido e, se ele aceitar as condies da conexo (SYN=1), responde informando
que est disposto.
93
Unidade III
O cliente ento envia um reconhecimento de que recebeu a aceitao, estabelecendo a conexo.
A figura 65 mostra agora como funciona o trmino de uma conexo TCP:
1. Um dos lados decide terminar a conexo
FYN; Num Seq = x
O pedido de encerramento da conexo feito por um dos lados. O campo FIN ativado e, junto a
esta mensagem, apresentado o ltimo nmero de sequncia conhecido.
O outro lado pode aceitar, mesmo se ainda tiver dados para enviar. Assim, ele habilita tambm
o campo FIN, mostrando que concorda com o encerramento da conexo, mas mostra que seu
nmero de Ack maior que o nmero de sequncia enviado na solicitao de encerramento da
conexo. E, em seguida, envia os dados.
Aps enviar, avisa que tambm vai encerrar a conexo, agora com o novo nmero de sequncia.
O lado que solicitou o trmino da conexo, aps reconhecer o aviso do outro lado, envia nova
mensagem, encerrando a conexo nos dois sentidos.
Como vimos, o cabealho TCP contm um campo que indica o nmero sequencial do primeiro byte
contido no campo de dados (nmero de sequncia) e, assim, coloca na ordem correta os segmentos
que chegam fora de ordem e descarta os duplicados. O TCP reconhece apenas o maior nmero dos
segmentos recebidos sem erro. A figura 66 mostra que o nmero de sequncia no cabealho pula de
acordo com a quantidade de bytes existentes dentro dos segmentos.
94
Nmero de sequncia
Nmero de sequncia
51
44
54 53 52 51 Cabealho 50 49 48 47 46 45 44 43 Cabealho
Figura 66 - No TCP, cada byte possui um nmero sequencial (KOVACH, 2009)
Existem diversas implementaes do software TCP para trabalhar com as janelas deslizantes. Em
geral servem para medir as condies da rede e identificar, previamente, se h condies de transmitir.
Vejamos algumas das implementaes TCP importantes a seguir.
No comportamento que chamamos de pare-espere, o transmissor tem que esperar pelo Ack do
pacote anterior para transmitir um novo pacote. Assim, se a distncia for grande, o tempo de espera
tambm pode ser grande. Veja a figura 67:
Remetente
Envia pacote 1
Recebe Ack 1
Envia pacote 2
Destinatrio
Recebe pacote 1
Envia Ack 1
Recebe pacote 2
Envia Ack 2
Recebe Ack 2
Figura 67 - Comportamento pare-espere, do TCP (KOVACH, 2009)
O TCP pode utilizar um esquema de reconhecimento acumulativo em que o receptor vai acumulando
sequencialmente os bytes recebidos desde o estabelecimento da conexo. Assim, cada segmento de
reconhecimento (ACK) especifica no campo Nmero de Ack o nmero do prximo byte que o receptor
espera receber da fonte.
Vale lembrar que nesta implementao o receptor no gera o Ack de um segmento se o segmento anterior
no foi recebido. Em vez disso, o receptor retransmite o ltimo Ack enviado. Isso significa que, se um ou mais
Acks forem perdidos, mas um Ack do segmento que foi enviado posteriormente for recebido pelo transmissor,
ele pode considerar que todos os segmentos anteriores foram recebidos pelo receptor.
Dizemos tambm que o protocolo TCP faz controle de fluxo, ou seja, o TCP receptor envia um valor (tamanho
da janela) ao transmissor nos pacotes de reconhecimento, que especifica o nmero de bytes que o transmissor
pode transmitir sem esperar pelo reconhecimento dos mesmos. A janela desliza medida que chegam os
reconhecimentos e, quando esse valor for igual a zero, o transmissor para de enviar os dados.A este processo
chamamos de janela deslizante e utilizado para aumentar a taxa de transmisso dos pacotes.
Na figura 66 est representado como a janela desliza, medida que chegam os reconhecimentos de
transmisso. A janela inicial igual a 8, ou seja, permite enviar at 8 nmeros de sequncia (no exemplo,
de 3 a 10).
95
Unidade III
medida que recebe os Acks do destinatrio, a janela desliza, ento neste exemplo vemos que, aps
remetente receber o Ack 3 (reconhecimento do pacote 3 enviado pelo destinatrio), a janela passa a
permitir o envio dos nmeros de sequncia de 4 a 11, e assim por diante.
Janela inicial
1 2 3 4 5 6 7 8 9 10 11 12 13 14 . . . .
Janela desliza
1 2 3 4 5 6 7 8 9 10 11 12 13 14 . . . .
Janela desliza
1 2 3 4 5 6 7 8 9 10 11 12 13 14 . . . .
Remetente
Destinatrio
Envia pacote 3
Envia pacote 4
Envia pacote 5
Desliza janela
Desliza janela
Envia Ack 3
Envia Ack 4
Se ainda est difcil de entender como funciona a janela deslizante, veja esse outro exemplo,
representado pela figura 69:
Sliding Window no A
antes
ltimo
reconhecido
9 10 11 12 13 14
No podem
ser enviados
depois
Podem ser
enviados
Enviados
e no
reconhecidos
chega
um Ack
Sliding Window no A
3
9 10 11 12 13 14
Antes da chegada do Ack=6, o ltimo nmero de sequncia reconhecido (que o remetente recebeu o
Ack) era o 2; os de nmero 3, 4 e 5 foram enviados pelo remetente, mas ainda no foram reconhecidos.
Como o tamanho da janela 7, os nmeros de sequncia 6, 7, 8 e 9 podem ser enviados neste intervalo;
os demais, ainda no.
Com o reconhecimento do nmero de sequncia 6, a janela desliza, permitindo enviar os prximos
7 nmeros de sequncia, a partir do 6, ou seja, pode enviar o 6, 7, 8, 9, 10, 11 e 12.
96
Observao
Note que a mensagem de Ack contm o nmero do prximo, que o
destinatrio est esperando receber, ou seja, se a mensagem enviada com
Ack = 6, significa que o destinatrio recebeu at o nmero de sequncia 5
e est esperando receber o de nmero 6.
Alm disso, o TCP um protocolo capaz de fazer multiplexao de vrias conexes em uma
mesma porta, atravs do endereo IP e nmero de porta. Como uma conexo TCP formada
por quatro variveis (endereo IP de origem, porta de origem, endereo IP de destino, porta
de destino), variando apenas um dos parmetros, j se tem nova conexo, podendo ser gerada
simultaneamente a outras.
A figura 70 mostra que o sistema final A, cujo endereo IP o 1.1.1.1, tem duas aplicaes
sendo executadas, uma na porta 200 e outra na porta 100, e ambas se comunicando com a
aplicao que roda na porta 25 do host C, de IP 3.3.3.3. Assim, embora o endereo IP de origem,
endereo IP de destino e porta de destino sejam os mesmos, a porta de origem varia para cada
uma das aplicaes de origem, ento o TCP estabelece uma conexo diferente para cada uma
delas, pois pelo menos 1 dos 4 pontos do par ordenado (IP origem, porta de origem; IP destino,
porta de destino) diferente.
Host A
Host B
Host C
Aplicao
Aplicao
Aplicao
200
100
TCP
100
TCP
25
[ < 2.2.2.2, 100 > , < 3.3.3.3, 25 > ]
TCP
IP 2. 2. 2. 2
IP 3. 3. 3. 3
Saiba mais
Abaixo h duas dicas de leitura sobre a Arquitetura TCP/IP.
Uma referncia muito conceituada: TCP/IP: a bblia, de Meeta Gupta,
Mridula Parihar, Paul Lasalle e Rob Scrimger, Editora Campus/Elsevier, 2002.
Unidade III
6 CAMADA DE REDE
A camada 3 est logo abaixo da Camada de Transporte na pilha de protocolos do modelo OSI, como
mostra a figura 71, e responsvel pelo processo de interconexo de redes. As redes so interligadas por
dispositivos chamados roteadores.
7
Aplicao
Apresentao
Sesso
Transporte
Rede
Enlace
Fsica
Como mostra a figura 72, quando um computador da rede 1 quer enviar um dado para um
computador da rede 2, ele envia o pacote de dados ao roteador 1, que fica responsvel por encaminhar
esse pacote ao computador de destino. No caso de um computador da rede 1 querer enviar um pacote
de dados para um computador na rede 3, ele envia o pacote ao roteador 1, que ento passar esse
pacote diretamente ao roteador 2 e que ento se encarregar de entregar esse pacote ao computador
de destino na rede 3.
Rede
1
Roteador 1
Rede
2
Roteador 2
Rede
3
O roteador , sem dvida, o principal agente no processo de interconexo das redes, pois determina
as rotas baseado nos seus critrios, endereando os dados pelas redes e gerenciando suas tabelas de
roteamento. A entrega de pacotes feita facilmente pelo roteador porque os pacotes de dados possuem
o endereo IP do computador de destino. No endereo IP h a informao de que a rede o pacote deve
ser entregue. Alm disso, os roteadores possuem internamente interfaces de sada, para onde os enlaces
de entrada repassam os pacotes no interior dos roteadores. As interfaces de sada servem para que o
roteador encaminhe os pacotes ao roteador vizinho da rota selecionada por ele como a melhor para
transmitir ao destino.
assim que as redes baseadas no protocolo TCP/IP funcionam. Elas tm um ponto de sada da rede,
chamado de gateway, que para onde vo todos os pacotes de dados recebidos e que no so para
aquela rede. As redes subsequentes vo, por sua vez, enviando o pacote aos seus gateways at que o
pacote atinja a rede de destino.
98
Rede
Fsica
Enlace
Fsica
Rede
Enlace
Fsica
Rede
Enlace
Fsica
Rede
Enlace
Rede
Fsica
Enlace
Fsica
Rede
Rede
Enlace
Enlace
Fsica
Fsica
Rede
Enlace
Fsica
Aplicao
Transporte
Rede
Enlace
Fsica
Figura 73 - Exemplo de comunicao entre sistemas finais atravs da Camada de Rede (KUROSE; ROSS, 2010)
99
Unidade III
Saiba mais
Agora que voc est familiarizado com as camadas de Aplicao e
Transporte e est iniciando seu estudo da Camada de Rede, assista ao vdeo
Guerreiros da internet. muito interessante e mostra como a internet
funciona, ilustrando de forma bem clara o trajeto dos pacotes de dados,
desde a hora que voc faz uma consulta em seu navegador at a hora que
a pgina comea a aparecer na tela. Acesse <www.warriorsofthe.net>. O
vdeo est disponvel para baixar em portugus tambm.
6.1 O protocolo IP
Host B
Internet
Figura 74 - Protocolo IP responsvel pelo encaminhamento dos datagramas (elaborada pela autora)
O servio oferecido pelo protocolo IP fornece um modelo conhecido como servio de melhor
esforo, pois ele utilizar a maior banda possvel disponvel na rede para encaminhar seus pacotes,
tentando fazer isso sem atraso e de modo que seus datagramas cheguem de forma ordenada, ou seja, na
ordem com que foram enviados pela origem. Embora ele se esforce ao mximo, no existem garantias de
que a transmisso ser livre de erros, que os pacotes sero entregues e que no haver perda de pacotes
ou atrasos.
Dizemos, assim, que o IP um protocolo no confivel, por no implementar mensagens de
confirmao (como faz o TCP, na camada 4) de que os datagramas foram entregues ao destino. Se
houver qualquer tipo de perda, elas sero corrigidas apenas pela camada 4, com ajuda do protocolo TCP
de transporte. Esta uma grande vantagem do IP: simplicidade. O IP tenta ser o mais rpido que pode,
capaz de detectar erros, mas se apoia nas correes desses erros por meio de protocolos de transporte.
O Datagrama IP
Assim como os segmentos na Camada de Transporte, o datagrama est dividido em duas partes.
Entretanto, aqui as partes so o cabealho IP e o segmento TCP, como mostrado na figura 75:
100
Cabealho IP
Figura 75 - Protocolo IP responsvel pelo encaminhamento dos datagramas (elaborada pela autora)
O cabealho contm toda a informao necessria que identifica o contedo do datagrama. Na rea
de dados est encapsulado o pacote do nvel superior, ou seja, um pacote TCP ou UDP.
O formato do datagrama IP tem 32 bits e est mostrado na figura 76:
0
4
Ver
16
IHL
TOS
Identificao
TTL
19
31
Comprimento total
Falgs
protocolo
24
offset de fragmento
Checksum de cabealho
Endereo de destino
Endereo de origem
Opes
Padding
Unidade III
Comprimento total: fornece o comprimento total do datagrama IP, incluindo cabealho e dados,
medido em bytes de oito bits.
Tempo de vida (Time-to-Live - TTL): indica o tempo mximo que um datagrama pode trafegar
em uma rede internet. Tornou-se um campo de contagem de ns caminhados. Assim, cada
roteador decrementa este campo de um. Se o valor deste campo chegar a zero antes de atingir o
destino, o datagrama descartado.
Protocolo: indica qual protocolo seguinte ser usado.
Se for ICMP, o campo preenchido com 1, se for TCP, 6 e se for UDP, 17.
Checksum do cabealho: campo de verificao para o cabealho IP. Se um erro for detectado na
recepo, o datagrama descartado.
Endereo de origem: endereo IP de origem.
Endereo de destino: endereo IP de destino.
Padding (varivel): serve para garantir que o comprimento do cabealho seja sempre mltiplo de
32 bits.
Opes (varivel): utilizado para teste e depurao de aplicaes de softwares de rede.
Os trs campos abaixo esto relacionados com a fragmentao:
Identificao: usado para identificar um datagrama. Todos os fragmentos de um datagrama
possuem a mesma identificao.
Flag: identifica o controle de fragmentao:
O bit 0 reservado;
Se o bit 1 for 0, permite fragmentao; se for 1, no permite fragmentao.
Se o bit 2 for 0, significa que o ltimo fragmento; se for 1, significa que ainda tem mais
fragmentos.
Offset do fragmento: indica a posio do fragmento dentro do datagrama original. medido em
unidades de 8 bytes.
6.1.1 Fragmentao
O protocolo IP utiliza a tcnica de fragmentao quando um datagrama atravessa uma rede com
MTU (Maximum Transfer Unit Unidade Mxima de Transferncia) menor do que o nmero de bytes
contidos nele. MTU o tamanho mximo de bytes que podem ser transferidos dentro de uma rede fsica.
Por exemplo, a MTU de uma rede Ethernet 1.500 bytes e a de uma rede Token Ring 4.464 bytes, o
que significa que, se pacotes maiores que tais valores tiverem que atravessar essas redes, provavelmente
sero fragmentados.
102
Rede2
MTU=512
Rede1
MTU=1500
Rede3
MTU=1500
Em uma rede IP, cada ponto de interconexo de um dispositivo identificado por um nmero
de 32 bits, equivalente a 4 bytes, denominado endereo IP. Considerando os 32 bits, h um total
de 232 endereos IP possveis, o equivalente a cerca de 4 bilhes de endereos IP possveis. Tais
endereos so escritos em quatro conjuntos de bytes, representados por nmeros decimais,
separados por pontos.
Tais endereos so representados com quatro algarismos decimais separados por ponto decimal, por
exemplo, 128.10.2.30, em que 128 o nmero decimal referente aos primeiros 8 bits do endereo; o 10,
o nmero decimal referente ao segundo conjunto de 8 bits do endereo e assim por diante. Assim, este
endereo transformado para bits, :
10000000 00001010 00000010 00011110
103
Unidade III
Dizemos que o endereo IP o endereo lgico de rede e cada endereo IP est associado com uma
interface fsica de rede (por exemplo, uma placa de rede), e no com o computador. Cada endereo IP
globalmente exclusivo, mas no pode ser escolhido de qualquer maneira. Uma parte desse endereo ser
determinada pela sub-rede qual ela est conectada. Chamamos de sub-rede a diviso de uma rede em
redes menores, cujo trfego fica reduzido, facilitando sua administrao e melhorando o desempenho
da rede. Veja uma representao na figura 78:
Host A
Host B
R1
R2
R3
Sub-redes
Figura 78 - Exemplo de sub-redes (elaborada pela autora)
Hostid
7 bits
24 bits
Hostid
14 bits
16 bits
Classe
Classe
Hostid
21 bits
8 bits
Uso futuro
104
1.0.0.0
126.0.0.0
128.1.0.0
191.255.0.0
192.0.1.0
223.255.255.0
224.0.0.0
239.255.255.255
240.0.0.0
255.255.255.254
Nesse modelo, cada endereo IP constitudo por duas partes: uma se refere rede e a outra,
ao dispositivo nessa rede. Essa identificao feita pelo par (netid, hostid), em que netid identifica o
prefixo da rede, pelo qual o dispositivo est conectado, e hostid identifica o dispositivo nessa rede, como
mostra a figura 80. No caso de termos um roteador conectando n redes distintas, teremos n endereos
IP distintos tambm.
32 bits
Netid ou Prefixo
Hostid
Unidade III
Classe A (a.b.c.d)
a identifica a rede
Exemplo: 10.10.5.1
a = 128 191
Classe C (a.b.c.d)
a = 192 223
d identifica o host
Exemplo: 129.10.5.1
Exemplo: 194.10.5.1
Na internet, cada sub-rede possui um prefixo de rede e para onde os roteadores encaminham os
pacotes. Cada roteador armazena as informaes dos prefixos de rede em uma tabela de roteamento,
que contm apenas prefixos de rede e no endereos completos de dispositivos na rede. Nos prximos
itens daremos mais detalhes sobre roteamento.
6.2.2Mscaras de sub-rede
So baseadas no prefixo de rede, em que os roteadores vo escolhendo seus caminhos (o roteamento
feito) at chegar ao ltimo roteador antes da rede de destino. Quando chegar sub-rede de destino,
o endereo referente ao hostid ser olhado para buscar dentro da sub-rede o dispositivo final a que se
destina a mensagem.
Chamamos de mscaras de sub-rede os bits que determinam o prefixo de rede. Assim como o
endereo IP, so valores de 32 bits que permitem ao receptor de pacotes IP identificar quais so os bits
do endereo que fazem parte do netid e quais fazem parte do hostid. Os bits em 1 da mscara identificam
os bits do endereo IP que so usados como prefixo de rede; os bits em 0 da mscara identificam os bits
do endereo IP que so usados para identificar o dispositivo na rede (hostid).
Para o roteamento, utilizam-se mscaras-padro (default) de cada classe at chegar rede de
destino, como mostram as figuras 82 e 83:
Internet
144. 100. 3. X
Roteador
144. 100. 0. 0
Rede de destino
106
144. 100. 0. 0
Mscara 255. 255. 255. 0
Roteador
144. 100. 3. X
Roteador
Roteador
144. 100. 2. 0
144. 100. 3. 0
144. 100. 4. 0
Endereo
Hostid
11111111111111111111100000000
Padro (defaut)
Prefixo de rede (netid) padro
Nmero da
subrede
Hostid da
subrede
Novo prefixo
Figura 84 - Mscara de sub-rede (KOVACH, 2009)
107
Unidade III
Veja um exemplo real de aplicao de mscara de sub-rede. Considerando o endereo 129.10.0.0, de
classe B, sua mscara padro a 255.255.0.0, que prov um nico segmento de rede com 65.536 hosts
ou 64 K hosts. Se considerarmos o terceiro conjunto de bits da mscara diferente de zero, perceberemos
que possvel aumentar o nmero de segmentos de rede (sub-redes) e variar o nmero de hosts por
sub-rede, como mostra a tabela 5, a seguir.
Lembrete
Lembre-se: a mscara de rede a responsvel por mapear as sub-redes.
Repare sempre na quantidade de bits 1 que existe no endereo. So eles que
indicam o prefixo de rede e, portanto, a quantidade de sub-redes possvel
no endereo.
Aplicando, por exemplo, uma mscara de sub-rede de 255.255.240.0, passando o 240 para binrio,
v-se que agora a mscara de sub-rede tem quatro bits em 1 e quatro bits em 0. Os bits em 1 representam
16 sub-redes, pois 24 = 16. Os quatro bits em 0 somados aos outros oito bits 0 da mscara representam
a quantidade de 24 + 28 = 212 = 4.096 ou 4 K hosts para cada uma das 16 sub-redes possveis.
Vale lembrar aqui que, na prtica, a primeira e a ltima sub-redes so descartadas, pois o primeiro IP da
primeira sub-rede representa o endereo de rede e o ltimo IP da ltima sub-rede representa o endereo de
broadcast, que no considerado pelos roteadores como endereo vlido na rede. Esse endereo utilizado
quando se deseja transmitir uma mensagem a todos os receptores da rede ao mesmo tempo. Dessa forma, na
prtica, a quantidade real de sub-redes a apresentada na tabela 4, menos duas.
Tabela 7 - Classes e ranges de endereamento IP
Prefixo de rede classe B: 129.10. 0. 0
Mscara de rede padro: 255.255.0.0
Mscara de subrede
1 segmento de rede
64 K hosts
255. 255.128. 0
10000000
2 subredes
32 K hosts por subrede
255. 255.192.0
11000000
4 subredes
16 K hosts por subrede
8 subredes
8 K hosts por subrede
16 subredes
4 K hosts por subrede
32 subredes
2 K hosts por subrede
255. 255.252.0
11111100
64 subredes
1 K hosts por subrede
255.255. 254. 0
11111110
128 subredes
512 hosts por subrede
255. 255.255. 0
11111111
256 subredes
256 hosts por subrede
Fonte: Kovach, 2009.
108
Saiba mais
Conhea este simulador de sub-redes online: <www.subnet-calculator.
com>. Ele pode ajudar a exercitar os clculos de sub-rede IP, informando
tambm quantos hosts vlidos podemos ter em cada sub-rede e os
respectivos endereos de broadcast. Tambm informa se determinado
endereo IP pertence a uma classe A, B, C ou D.
6.2.3 Endereos IP reservados
Ao definir o range de endereos IP utilizado por cada classe de endereamento IP, voc talvez tenha
se perguntado por que o range de endereos que comeam com 127 no foi especificado.
Existem alguns endereos IP que so especiais, reservados para funes especficas e que no podem
ser utilizados como endereos de uma mquina da rede ou no so levados em conta pelos roteadores.
A seguir, so apresentados estes endereos:
0. 0. 0. 0: especifica um endereo desconhecido e usado por uma mquina da rede quando ela
no sabe o seu endereo. Muitas vezes esse endereo utilizado pelas mquinas na rede como
endereo de origem nos protocolos de configurao dinmica, como o DHCP.
255. 255. 255. 255 ou hostid com todos os bits em 1: usado como endereo de broadcast local
(dento de uma sub-rede). Como vimos anteriormente, um pacote de broadcast destinado a
todos os dispositivos conectados rede. Aqui, vale lembrar que os pacotes de broadcast so
bloqueados pelos roteadores.
127.0. 0. 0 - 127. 255. 255. 255: so utilizados como endereo de loopback local, reservado para
testes de debugging da configurao de rede da mquina ou para a comunicao entre processos
na mesma mquina local. Ao utilizar o endereo de loopback para enviar os dados, o software IP
no deixa a mensagem prosseguir atravs da rede, devolvendo-a Camada de Transporte.
Outros endereos especiais, chamados endereos privados, so reservados para redes privadas e
servem para montar uma rede TCP/IP sem gerar conflitos com os endereos IP da internet. Os roteadores
reconhecem esses endereos como independentes, de uma rede particular, e no repassam os pedidos
de datagramas que faam referncia a esses endereos para o resto da internet. Esses endereos nunca
sero considerados pelos roteadores no sistema de roteamento global da internet. Assim, tais endereos
podem ser utilizados simultaneamente por vrias organizaes.
So estes os endereos privados considerados pela IANA (Internet Assigned Numbers Authority):
10. 0. 0. 0 - 10. 255. 255. 255
172. 16. 0. 0 -172. 31. 255. 255
192. 168. 0. 0 -192. 168. 255. 255
109
Unidade III
A interconexo com a internet de redes que utilizam endereos privativos feita normalmente por
meio de dispositivos conhecidos como NAT (Network Address Translator).
6.2.4 NAT e DHCP
Para acessar a rede internet, cada computador deve ter o protocolo TCP/IP configurado corretamente.
O NAT surgiu como uma alternativa real para o problema de falta de endereos IPv4. Com as redes
privadas, tornou-se necessria uma soluo para que essas redes recebessem respostas de seus pedidos
feitos para fora da rede internet. NAT um servio que permite que essa traduo seja feita por meio de
um mapeamento de endereos IP pblicos e privados.
No NAT, as tradues mais comuns de endereo privado para endereo pblico e vice-versa so:
traduo esttica e traduo dinmica.
Traduo esttica: um endereo privado sempre convertido em um mesmo endereo pblico.
Essa soluo normalmente utilizada em servidores que necessitam ter sempre o mesmo endereo
IP para responder a seus clientes.
Traduo dinmica: o endereo privado poder no utilizar sempre o mesmo endereo pblico.
Dessa forma, possvel que mais de um endereo privado, usado na rede local, acesse a internet
usando um mesmo endereo IP pblico. Essa traduo usada por clientes, isto , computadores
que no prestam servios rede (KOVACH, 2009).
Na traduo dinmica, muito comum o uso do protocolo DHCP (Dynamic Host Configuration
Protocol). Um servidor DHCP distribui aos computadores clientes um IP vlido na internet sempre que um
cliente solicita. Se um dispositivo da rede interna solicitar uma pgina web da internet, o servidor DHCP
fornecer um endereo IP pblico vlido para ele poder se conectar internet. Ao final do carregamento
da pgina solicitada, o servidor DHCP recuperar esse endereo IP de volta. No caso de o usurio desse
cliente continuar navegando, o servidor poder atribuir o mesmo endereo IP ou atribuir outro endereo
IP pblico disponvel em sua tabela de tradues.
6.3 Roteamento
Unidade III
alterao na rede, como a existncia de novo caminho ou a remoo de um caminho, a nova
informao divulgada aos demais, que atualizam suas tabelas de roteamento.
Para cada prefixo da tabela de roteamento, o endereo IP do prximo roteador (next hop) que
deve ser usado para atingir este prefixo. medida que ocorrem mudanas na rede, os protocolos
de roteamento reavaliam os prefixos que podem ser alcanados e os next hops a serem usados para
cada prefixo. O processo de encontrar o prximo passo aps uma mudana na rede denominado
convergncia.
Existem dois tipos bsicos de algoritmo de roteamento que devem ser considerados:
Distance vector: baseado no nmero de saltos na rede (hops), como pode ser visto na
figura 85. Esse algoritmo tem como princpio que o melhor caminho (mtrica) para se chegar
ao destino o das rotas mais curtas, independentemente se a rota mais curta for a mais
congestionada. Um exemplo de protocolo de roteamento que utiliza o distance vector como
algoritmo o RIP (Routing Information Protocol). Embora ele no leve em conta outros
parmetros sobre as condies da rede e tenha uma convergncia lenta, o RIP ainda muito
utilizado como protocolo-padro de roteamento interno de muitas organizaes pela sua
simplicidade, afinal, no se tem normalmente muitos roteadores na topologia de rede de
uma empresa de mdio porte, por exemplo.
Rede 1
Rede 2
Rede 3
Tabela de A
1
Tabela de B
2
Rede 1, 1 hop
Rede 2, 1 hop
A
Tabela de C
13
Rede 1, 2 hop
Rede 2, 1 hop
Rede 3, 1 hop
B
Rede
Rede1,1,1 1hop
hop
Rede
Rede2,2,1 1hop
hop
Rede
Rede3,3,2 2hop
hop
Rede
Rede4,4,3 3hop
hop
Rede 4
Rede 1, 2 hop
Rede 2, 1 hop
Rede 3, 1 hop
Rede 4, 2 hop
Rede 1, 3 hop
Rede 2, 2 hop
Rede 3, 1 hop
Rede 4, 1 hop
C
Rede 1, 3 hop
Rede 2, 2 hop
Rede 3, 1 hop
Rede 4, 1 hop
Link state: baseado no estado dos enlaces. Esse algoritmo considera diversos parmetros na
rede para calcular a mtrica e a melhor rota para se chegar ao destino. Um dos parmetros que
ele considera a largura de banda, que determina a velocidade de transmisso de um pacote. Ele
capaz de identificar, por exemplo, se um pacote demora mais para chegar ao destino por um
caminho mais curto ou um caminho mais longo, fazendo a escolha sempre da menor mtrica
calculada para se chegar ao destino. OPSF (Open Shortest Path First) um exemplo de protocolo
de roteamento comum utilizado em redes de grande porte.
112
Saiba mais
O Protocolo OSPF dos mais utilizados em grandes redes coorporativas.
Leia o artigo O Protocolo OSPF, de Jailton Santos das Neves e Waldeck
Ribeiro Torres. Este trabalho fornece, de forma bastante didtica, uma
descrio simples de como o protocolo de roteamento OSPF trabalha, suas
funcionalidades e estrutura, usos e limitaes, alm de mostrar de que
forma ele trabalha com p IPv6. Acesse:
<http://www.midiacom.uff.br/~debora/redes1/pdf/trab042/OSPF.pdf>.
Cada roteador possui uma tabela de roteamento diferente, refletindo sua posio nica
dentro da internet. medida que se aproximam do ncleo da rede (core), os endereos vo
sendo agregados, formando prefixos menores. Os roteadores que esto nas pontas da internet
usam muitas rotas default e tm suas tabelas de roteamento com poucas rotas especficas. J os
roteadores do ncleo da internet possuem cerca de milhares de linhas de entrada em suas tabelas,
sem nenhuma rota default.
Resumo
Esta unidade focou as camadas intermedirias e fundamentais para o bom funcionamento da
arquitetura de rede: a Camada de Transporte e a Camada de Rede.
A Camada de Transporte responsvel por fornecer servios diretamente aos processos da
aplicao. Na origem, a mensagem pode ser dividida em segmentos, e a Camada de Transporte adiciona
ao seu cabealho informaes importantes para serem tratadas no destino, e a envia Camada de Rede,
que vai direcionar a mensagem at o destino. L, no nvel de transporte, responsvel por executar suas
funes antes de descartar seu cabealho e entregar Camada de Aplicao acima. Dentre as principais
funes da Camada de Transporte, destacam-se:
controle de fluxo fim a fim;
deteco de erro;
correo de erro.
113
Unidade III
Os protocolos principais que atuam nesta camada so UDP e TCP. Vimos que enquanto o UDP
trabalha de forma rpida, e por isso no garante a entrega das mensagens, o TCP trabalha de forma mais
lenta, porque trabalha detalhadamente para garantir que todos os segmentos de dados sejam entregues
ao destino.
Vamos lembrar algumas caractersticas importantes do UDP:
Oferece servio no orientado conexo;
Formato do segmento simples, permitindo rapidez de processamento;
No garante a entrega e, portanto, a transferncia de dados no confivel;
No possui controle de fluxo;
Utilizado em aplicaes de voz e vdeo, tolerantes a perdas, aplicaes de DNS, entre outros.
Vale recordar tambm as caractersticas do TCP:
Oferece servio orientado conexo;
Faz a entrega confivel dos segmentos atravs de sequencializao de dados;
Tem formato do cabealho mais complexo que o UDP, que o torna mais lento;
Trabalha com janela deslizante e faz controle de fluxo;
Estabelece conexo antes de enviar os dados e encerra aps o envio;
utilizado para as aplicaes que exigem integridade da mensagem original, sem perdas;
Permite multiplexao de vrias conexes simultaneamente.
A Camada de Rede a responsvel por interligar as redes na internet atravs dos roteadores.
Vimos o conceito de gateway, que o ponto de acesso a outras redes.
A Camada de Rede, por meio dos protocolos especficos e dos roteadores, estabelece qual o melhor
caminho a ser seguido para se chegar ao destino.
O protocolo principal que atua nesse nvel o IP, que encaminha os datagramas da origem ao
destino. O roteamento tambm realizado por meio do endereo IP de cada mquina.
O IP um protocolo no confivel, por no implementar mensagens de confirmao
e trabalhar executando o servio de melhor esforo, ou seja, faz de tudo para entregar.
Entretanto, se perdido no meio do caminho, no recupera e nem pede retransmisso: o pacote
simplesmente descartado. Nessa ocasio, a Camada de Transporte, no destino, que dever
solicitar a retransmisso origem.
114
115
Unidade III
Exerccios
Questo 1 (adaptada de: Forouzan, Behrouz A. Comunicao de dados e redes de computadores).
Qual o papel da Camada de Transporte?
A) Encaminhar o pacote.
B) Empacotamento.
C) Controle de erros.
D) Controle de acesso.
E) Fornecer servios.
Resposta correta: alternativa E.
Anlise das alternativas:
A) Alternativa incorreta.
Justificativa: a Camada de Rede responsvel por encaminhar os pacotes ao seu destino e l
entreglos Camada de Transporte.
B) Alternativa incorreta.
Justificativa: o empacotamento uma responsabilidade da Camada de Enlace. A Camada de Enlace
de dados divide o fluxo de bits recebidos da Camada de Rede em unidades de dados gerenciaveis
denominados frames.
C) Alternativa incorreta.
Justificativa: o controle de erros uma responsabilidade da Camada de Enlace. A Camada de
Enlace de dados acrescenta confiabilidade a Camada Fisica, adicionando mecanismos para detectar
e retransmitir frames danificados ou perdidos. Ela tambem usa mecanismos para reconhecer frames
duplicados. Normalmente, o controle de erros e obtido por meio de um trailer acrescentado ao final do
quadro.
D) Alternativa incorreta.
Justificativa: o controle de acesso uma responsabilidade da Camada de Enlace. Quando
dois ou mais dispositivos estiverem conectados ao mesmo link, serao necessarios protocolos da
Camada de Enlace de dados para determinar qual dispositivo assumira o controle do link em dado
instante.
116
117