Академический Документы
Профессиональный Документы
Культура Документы
4.1 Introduo
Suponha que existam dois hospedeiros H1 e H2 e que H1 esteja enviando informaes a
H2. A camada de rede em H1 pegar ,segmentos da camada de transporte em H1,
encapsular cada segmento em um datagrama (pacote da camada de rede) e ento dar
incio jornada dos datagramas at seu destino, isto , passando por possveis
roteadores que estejam no caminho, quando os datagramas chegarem ao hospedeironH2,
a camada de rede extrair os segmentos de camada de transporte e os entregar
camada de transporte em H2. O papel primordial dos roteadores repassar os
datagramas de enlaces de entrada para enlaces de sada.
4.1.1 Repasse e Roteamento
O papel da camada de rede aparentemente simples , transportar pacotes de um
hospedeiro remetente a um hospedeiro destinatrio. Para faz-lo, duas importantes
funes da camada de rede podem ser identificadas. Repasse, quando um pacote chega
ao enlace de entrada de um roteador, este deve conduzi-lo at o enlace de sada
apropriado.Roteamento, a camada de rede deve determinar a rota ou caminho tomado
pelos pacotes ao flurem de um remetente a um destinatrio.
Repasse refere-se ao local realizada por um roteador para transferir um pacote da
interface de um enlace de entrada para a de sada apropriada. Roteamento refere-se ao
processo de mbito geral da rede que determina os caminhos fim-a-fim que os pacotes
percorrem desde a fonte at o destino.
Cada roteador tem uma tabela de repasse. Um roteador repassa um pacote examinando
o valor de um campo no cabealho do pacote que est chegando e ento utiliza esse
valor para indexar sua tabela de repasse. O resultado da tabela de repasse indica para
qual das interfaces de enlace do roteador o pacote deve ser repassado.
Estabelecimento de conexo
A camada de rede tem duas funes importantes, repasse e roteamento. Mas tambm h
um terceira funo importante, que o estabelecimento de conexo. No TCP,
necessria uma apresentao de trs vias antes de os dados realmente poderem fluir do
remetente ao destinatrio. Isso permite que o remetente e o destinatrio estabeleam a
informao de estado necessria.De maneira anloga, algumas arquiteturas de camada
de rede exigem que roteadores ao longo do caminho escolhido desde a fonte at o
destino troquem mensagens entre si com a finalidade de estabelecer estado antes que
pacotes de dados de camada de rede dentro de uma conexo fonte-destino possam
comear a fluir.
Consulta,
repasse, fila
Elementoo de
comutao
fila
Processamento de
enlace
Terminao de
linha
O bloqueio de cabea de fila acontece quando um pacote que est em uma fila de
entrada deve esperar pela transferncia atravs do elemento de comutao por que ele
est bloqueado por um outro pacote na cabea da fila.
Fragmentao do datagrama IP
Nem todos os protocolos de camada de enlace podem transportar pacotes do mesmo
tamanho. Alguns podem transportar datagramas grandes, ao passo que outros apenas
pequenos.Por exemplo, quadros Ethernet no podem conter mais do que 1500 bytes de
dados, enquanto quadros para alguns enlaces de longa distancia no podem conter mais
do que 576 bytes. A quantidade mxima de dados que um quadro de camada de enlace
pode carregar denominada unidade mxima de transmisso (MTU). Como cada
datagrama IP encapsulado dentro do quadro para ser transportado de um roteador at o
seguinte, a MTU do protocolo de camada de enlace estabelece um limite estrito para o
comprimento de um datagrama IP.
Quando um enlace de sada tem uma MTU que menor do que o comprimento do
datagrama IP, a soluo fragmentar os dados do datagrama IP em dois ou mais
datagramas IP menores e, ento, enviar esses datagramas menores pelo enlace de sada.
Cada um desses datagramas menores denominado um fragmento. Fragmentos
precisam ser reconstrudos antes que cheguem camada de transporte no destino, os
projetistas do Ipv4 decidiram alocar a tarefa de reconstruo de datagramas aos sistemas
finais, e no aos roteadores(neles o protocolo ficaria muito complicado).
Quando um hospedeiro destinatrio recebe uma srie de datagramas da mesma fonte,
ele precisa determinar se alguns desses datagramas so fragmentos de um datagrama
original de maior tamanho. Se sim, o hospedeiro dever determinar quando recebeu o
ultimo fragmento e como os fragmentos recebidos devem ser reconstrudos para voltar
forma do datagrama original. Para permitir que o hospedeiro destinatrio realize essas
tarefas, os projetistas do IP criaram campos de identificao, flag e deslocamento de
fragmentao no datagrama IP.
Quando um datagrama criado, o hospedeiro remetente marca o datagrama com um
numero de identificao, bem como com os endereos da fonte e do destino. Ele
incrementa o numero de identificao para cada datagrama que envia. Quando o
destinatrio recebe uma srie de datagramas do mesmo hospedeiro remetente, pode
examinar os nmeros de identificao dos datagramas para determinar quais deles so,
na verdade, fragmentos de um mesmo datagrama de tamanho maior. Como o IP um
servio no confivel, possvel que algum desses fragmentos no chegue ao destino,
ento, para que o hospedeiro destino fique absolutamente seguro de que recebeu o
ultimo fragmento do datagrama origial, o ultimo datagrama tem um bit de flag ajustado
para 0, ao passo que todos os outros tm o flag igual 1. Alm disso, para que o
hospedeiro destinatrio possa determinar se est faltando algum fragmento, o campo de
deslocamento usado para especificar a localizao exata do fragmento no datagrama
IP original.
A carga til do datagrama passada para a camada de transporte no destino somente
aps a camada IP ter reconstrudo totalmente o datagrama IP original. Se um ou mais
fragmentos no chegarem ao destino, o datagrama incompleto ser descartado e no
ser passado camada de transporte.
5 Captulo
Ao se discutir a camada de enlace,descobre-se que h dois tipos de canais
completamente diferentes. O primeiro tipo so os canais de broadcast, que so comuns
em redes locais, onde muitos hospedeiros esto conectados ao mesmo canal de
comunicao e preciso um protocolo de acesso ao meio para coordenar transmisses e
evitar colises. O segundo tipo de canal o enlace de comunicao ponto-a-ponto, tal
como o existente entre dois roteadores.
5.1 Camada de enlace: introduo e servios
Os hospedeiros e roteadores sero referidos apenas como ns e os canais de
comunicao que conectam ns adjacentes sero referidos como enlaces.
5.1.1 Os servios fornecidos pela camada de enlace
Um protocolo de camada de enlace usado para transportar um datagrama por um
enlace individual, ele define o formato dos pacotes trocados entre os ns nas
extremidades do enlace, bem como as aes realizadas por esses ns ao enviar e receber
os pacotes. As unidades de dados trocadas pelo protocolo de camada de enlace so
denominadas quadros, e cada quadro encapsula um datagrama da camada de rede.
Entre as aes realizadas por um protocolo de camada de enlace ao enviar e receber
quadros, esto deteco de erros, retransmisso, controle de fluxo e acesso aleatrio.
Como exemplos de protocolos temos os protocolos Ethernet, 802.55, token ring e PPP.
Enquanto a camada de rede tem como tarefa movimentar segmentos da camada de
transporte fim-a-fim, desde o hospedeiro de origem at o de destino, um protocolo de
camada de enlace encarregado de movimentar datagramas de camada de rede n a n
por um nico enlace. Uma caracterstica importante que um datagrama pode ser
manipulado por diferentes protocolos de enlace nos diferentes enlaces no caminho. Os
servios fornecidos pelos protocolos de camada de enlace podem ser diferentes; por
exemplo, um protocolo de camada de enlace pode prover ou no entrega
confivel.Assim, a camada de rede deve ser capaz de realizar sua tarefa fim-a-fim em
face de um conjunto heterogneo de servios individuais de camada de enlace.
Embora o servio bsico de qualquer camada de enlace seja mover um datagrama de um
n at um n adjacente por um nico enlace de comunicao, os detalhes do servio
podem variar de um protocolo de camada de enlace para outro, entre os possveis que
podem ser oferecidos,esto:
Enquadramento de dados: Quase todos os protocolos de camada de enlace encapsulam
cada datagrama de camada de rede dentro de um quadro,consiste em um campo de
dados no qual o datagrama da camada de rede inserido e em uma srie de campos de
cabealho, de camada de enlace antes de transmiti-lo pelo enlace.
Acesso ao enlace: Um protocolo de controle de acesso ao meio (MAC) especifica as
regras segundo as quais um quadro transmitido pelo enlace. Para enlaces ponto-aponto, o protocolo MAC simples, o remetente pode enviar um quadro sempre que o
enlace estiver ocioso.
Entrega confivel: Quando o protocolo fornece esse servio, ele garante que vai
transportar cada datagrama pelo enlace sem erro. Um servio confivel de entrega de
camada de enlace muito usado por enlaces que costumam ter altas taxas de erro, como
o caso de um enlace sem fio, com a finalidade de corrigir um erro localmente, no
enlace no qual o erro ocorre, em de forar uma retransmisso fim-a-fim dos dados por
um protocolo de camada de transporte ou de aplicao. Contudo,a entrega confivel de
camada de enlace pode ser considerada uma sobrecarga desnecessria para enlaces de
baixa taxa de erros. Muitos protocolos de camada de enlace com fio no fornecem
entrega confivel.
Controle de fluxo: Os ns de cada lado de um enlace tm uma capacidade limitada de
armazenar quadros, por isso, um protocolo de camada de enlace pode fornecer controle
de fluxo para evitar que o n remetente de um lado de um enlace congestione o n
receptor do outro lado do enlace.
Deteco de erros: Erros de bits so introduzidos por atenuao de sinal e rudo
eletromagntico, como no h necessidade de repassar um datagrama que tem um erro,
muitos protocolos oferecem deteco de erros. Isso feito obrigando o n transmissor a
enviar bits de deteco de erros no quadro e obrigando o receptor a realizar um
verificao de erros. A deteco de erros na camada de enlace geralmente mais
sofisticada e implementada por hardware.
Correo de erros: semelhante deteco de erros, exceto que um receptor no
somente detecta se foram introduzidos erros,mas tambm determina exatamente em que
lugar do quadro os erros ocorreram e ento os corrige. Alguns protocolos fornecem a
correo apenas para o cabealho do pacote,e no para o pacote inteiro.
Half-duplex e full-duplex: Com transmisso full-duplex, os ns em ambas as
extremidades de um enlace podem transmitir pacotes ao mesmo tempo. Com
transmisso half-duplex um n no pode transmitir e receber pacotes ao mesmo tempo.
Mitos srvios fornecidos pela camada de enlace apresentam grandes paralelos com os
servios fornecidos na camada de transporte. Por exemplo, o servio de entrega
confivel, apesar de os mecanismos usados serem semelhantes, os dois servios no so
iguais; Um protocolo de transporte fornece entrega confivel entre dois processos que
operam fim-a-fim, um protocolo de enlace confivel fornece servio de entrega
confivel entre dois ns ligados por um nico enlace.
5.1.2 Comunicao por adaptadores
Para um dado enlace de comunicao, o protocolo de camada de enlace , na maioria
das vezes, implementado em um adaptador, que uma placa que contm RAM, chips
DSP, uma interface de barramento de hospedeiro e uma interface de enlace, tambm
comumente conhecido como carto de interface de rede ou NIC. A camada de rede de
um n transmissor passa um datagrama a um adaptador que processa o lado remetente
do enlace de comunicao, o adaptador encapsula o datagrama em um quadro e, ento,
transmite o quadro para dentro do enlace de comunicao. Do outro lado, o adaptador
receptor recebe o quadro inteiro, extrai o datagrama de camada de rede e o passa para a
camada de rede.Um adaptador uma unidade semi-autnoma; por exemplo, um
adaptador pode receber um quadro, determinar se ele est errado e descarta-lo sem
notificar outros componentes no n em que est abrigado.Os componentes principais de
um adaptador so a interface de barramento (responsvel pela comunicao com o n
pai do adaptador) e a de enlace(responsvel pela implementao do protocolo de
camada de enlace).
perceber algum sentido nos quadros que foram transmitidos; de certo modo, os sinais
dos quadros que colidem ficam inextricavelmente embaralhados. Assim, todos os
quadros envolvidos na coliso so perdidos e o cana broadcast desperdiado durante o
intervalo de coliso.
Para assegurar que o canal broadcast realize trabalho til quando h vrios ns ativos,
preciso coordenar, de algum modo, as transmisses desses ns ativos. Essa tarefa de
coordenao de responsabilidade do protocolo de acesso mltiplo. Durante anos,
dezenas de protocolos de acesso mltiplo foram implementados em uma variedade de
tecnologias de camada de enlace.
Um protocolo de acesso mltiplo para um canal broadcast com velocidade de R bits por
segundo tem as seguintes caractersticas desejveis:
1. Quando apenas um n tem dados para enviar, esse n tem uma vazo de R bps.
2. Quando M ns tm dados para enviar, cada um desses ns tem uma vazo de
R/M bps.
3. O protocolo descentralizado, isto , no h ns mestres que possam falhar e
derrubar o sistema inteiro.
4. O protocolo simples para que sua implementao seja barata.
5.3.1 Protocolos de diviso de canal
A multiplexao por diviso de tempo (TDM) e a multiplexao por diviso de
freqncia (FDM) so duas tcnicas que podem ser usadas para dividir a largura de
banda de um canal broadcast entre todos os ns que compartilham esse canal. Como
exemplo, suponha que o canal suporte N ns e que a velocidade de transmisso do canal
seja R bps. O protocolo TDM divide o tempo em quadros temporais e depois divide
cada quadro temporal em N compartimentos. Cada compartimento , ento, atribudo a
um dos N ns. Sempre que um n tiver um pacote para enviar, ele transmite os bits do
pacote durante o compartimento atribudo a ele no quadro temporal rotativo TDM.Os
tamanhos dos quadros so escolhidos de modo que um nico quadro possa ser
transmitido durante um compartimento. O protocolo TDM atraente, pois elimina
colises e perfeitamente justo: cada n ganha uma velocidade de transmisso dedicada
de R/N bps durante cada quadro temporal. Contudo, ele tem duas desvantagens
importantes. A primeira que um n fica limitado a uma velocidade mdia de R/N bps,
mesmo quando ele o nico n com pacotes para enviar. A segunda que o n deve
sempre esperar sua vez na seqncia de transmisso, mesmo quando ele o nico n
com um quadro a enviar.
Enquanto o protocolo TDM compartilha o canal broadcast no tempo, o protocolo FDM
divide o canal de R bps em freqncia diferentes ( cada uma com largura de banda R/N)
e reserva cada freqncia a um dos N ns, criando, desse modo, N canais menores de
R/N bps a partir de um nico canal maior de R bps.
Um terceiro protocolo de diviso de canal o protocolo de acesso mltiplo por diviso
de cdigo(CDMA). Enquanto o TDM e o FDM atribuem aos ns intervalos de tempo e
freqncia, o protocolo CDMA atribui um cdigo diferente a cada n. Ento cada n usa
seu cdigo exclusivo para codificar os bits de dados que envia. Se os cdigos forem
escolhidos cuidadosamente, as redes CDMA tero a maravilhosa propriedade de
permitir que ns diferentes transmitam simultaneamente e, ainda assim, consigam que
seus receptores respectivos recebam corretamente os bits codificados pelo remetente, a
despeito das interferncias causadas pelas transmisses dos outros ns.
Aloha
O protocolo slotted Aloha requer que todos os ns sincronizem suas transmisses para
que comecem no inicio de um intervalo. O primeiro protocolo Aloha era,na realidade,
um protocolo sem intervalos e totalmente descentralizado. No Aloha puro, quando um
quadro chega pela primeira vez, o n imediatamente transmite o quadro inteiro ao canal
broadcast. Se imediatamente o quadro com probabilidade p. Caso contrario, o n
esperar por um tempo de transmisso de quadro.
Suponha que um quadro comece a transmitir no tempo t0. Para que esse quadro seja
transmitido com sucesso, nenhum n pode comear sua transmisso no intervalo de
tempo [t0-1,t0]. Essa transmisso se sobreporia ao inicio da transmisso do quadro que
comeou a ser transmitido no tempo t0. De maneira semelhante, nenhum outro n pode
iniciar uma transmisso enquanto o primeiro n estiver transmitindo, pois seno haveria
uma sobreposio no fim no primeiro n.
A probabilidade de que um dado n tenha transmisso bem sucedida p(1-p)^2(n-1).
A eficincia do Aloha a metade da eficincia do slotted Aloha.
CSMA
Uma das prioridades do CSMA que um n ouve o canal antes de transmitir(deteco
de portadora). Se um quadro de outro n estiver correntemente sendo transmitido para
dentro do canal, o n ento esperar por um perodo de tempo aleatrio e, ento,
novamente sondar o canal. A outra que um n que est transmitindo ouve o canal
enquanto transmite. Se esse n detectar que outro n est transmitindo um quadro
interferente, ele pra de transmitir e usa algum protocolo para determinar quando ele
deve tentar transmitir novamente.
Porm, mesmo detectando portadora, ainda podem existir problemas. Por exemplo, um
n comea a transmitir, e depois de um tempo um outro comea a transmitir, pois no
detectou que o primeiro n estava transmitindo. O tempo de atraso de propagao fima-fim para um canal broadcast desempenha um papel crucial na determinao do
desempenho do CSMA.Ento os dois n continuaro transmitindo sem detectar coliso,
quando um n realiza deteco de coliso, ele cessa a transmisso assim que detecta
uma coliso.
5.3.3Protocolos de revezamento
Duas propriedades de um protocolo de acesso mltiplo so: quando apenas um n est
ativo, esse n ativo tem uma vazo de R bps; quando M ns esto ativos, ento cada n
ativo tem uma vazo de aproximadamente R/M bps. Os protocolos ALOHA e CSMA
tm a primeira propriedade, mas no a segunda. Isso motivou os pesquisadores a
criarem uma outra classe de protocolos, os protocolos de revezamento. H dezenas de
protocolos de revezamento, e cada tem muitas variaes. Existem dois que so mais
importantes. O primeiro protocolo de seleo(polling), ele requer que um dos ns seja
designado como n mestre. Este n seleciona cada um dos ns por alternncia circular.
O protocolo de polling elimina as colises e os intervalos vazios que atormentam os
protocolos de acesso aleatrio, o que permite que ela tenha uma eficincia muito
maior.Porm ele tambm possui algumas desvantagens. Uma delas que o protocolo
introduz um atraso de seleo e outra que se o n mestre falhar, o canal inteiro ficar
inoperante.
O ARP funciona da seguinte maneira: Cada n tem em sua RAM uma tabela ARP que
contm mapeamentos de endereos IP para endereos MAC. Ela tambm contm um
campo com o TTL que indica quando cada mapeamento ser apagado da tabela. A
tambm no contm um registro para cada n da sub-rede.
Se um n destinatrio no estiver na tabela do n remetente, ento o n remetente
montar um pacote especial denominado ARP Query . Um pacote ARP tem diversos
campos, incluindo os endereos IP e MAC de envio e recepo. A finalidade do pacote
de consulta ARP pesquisar todos os outros ns na sub-rede para determinar o endereo
MAC correspondente ao endereo IP que est sendo convertido.
O protocolo ARP apresenta algumas caractersticas interessantes. Em primeiro lugar, a
mensagem de consulta ARP enviada dentro de um quadro broadcast , ao passo que a
mensagem de resposta ARP enviada dentro de um quadro padro.