Buscar

UNIDADE_1_ATIVIDADE_1_GEISON ELBERT BATISTA

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 5 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

SERVIÇOS DE REDES DE COMPUTADORES
UNIDADE 1 – ATIVIDADE 1
ALUNO: GEISON ELBERT BATISTA
 Mecanismos de controle de erros que são executados pelo protocolo 
TCP para transmissão íntegra e em ordem dos pacotes de dados em rede.
 Introdução
Quando um dispositivo de comunicação produz informação em que será 
consumida por um outro dispositivo de comunicação, deve haver um balanço entre 
a taxa de produção de um e a taxa de consumo do outro. 
Se um dos dispositivos transmite informações em uma taxa superior à taxa de 
consumo do outro dispositivo, provavelmente mensagens terão de ser descartadas.
 O contrário também pode ocorrer – um dispositivo transmissor enviando 
informações em uma taxa muito inferior à taxa que o dispositivo de destino pode 
suportar – fazendo com que nesse caso haja desperdício de capacidade do sistema.
Deve haver um balanço para que o sistema seja eficiente.
 No que tange à taxa de transmissão do primeiro caso, o balanço pode ser 
alcançado usando-se técnicas de Controle de Fluxo, para que seja evitada a perda 
de dados no dispositivo de destino da transmissão.
 O Controle de Fluxo deve ser empregado quando a transmissão de dados entre 
dois dispositivos se dá da forma que denominamos “Push”, na qual o transmissor 
simplesmente envia dados para o receptor assim que eles estão disponíveis, sem 
que o receptor os tenha requisitado.
 Neste caso, o receptor poderá receber dados em uma taxa muito superior à que 
ele suporta, e então dados acabam por serem descartados.
 Para que isso não ocorra, o receptor precisa pedir ao transmissor que pare de 
enviar dados momentaneamente, até que os dados recebidos sejam processados, e
o receptor esteja pronto para receber mais dados.
 Quando o receptor requisita os dados não há a necessidade de controle de fluxo, e
chamamos essa forma de transmissão de modo “Pull.”
Controle de Fluxo via “Push” na camada de transporte TCP
Para que o controle de fluxo possa ser implementado, são usados “Buffers”.
 Um “Buffer” é um local na memória que armazena pacotes conforme são 
recebidos. 
Existem dois “buffers” para realização de controle de fluxo: uma na camada de 
transporte do host transmissor, e outro na camada de transporte do host receptor. 
O primeiro “buffer” armazena dados provenientes da camada de aplicação do 
mesmo host, e o segundo “buffer” armazena os dados recebidos a partir da rede, 
no host receptor (de destino). 
Quando o “buffer” da camada de transporte do host de destino está cheio, ele 
informa à camada de transporte do transmissor que ela deve parar de enviar 
pacotes. 
Quando o “buffer” começa a se esvaziar, ele informa à camada de transporte do 
transmissor que ele pode continuar a enviar dados.
O mesmo ocorre com o “buffer” da camada de transporte do transmissor: Quando 
ele está cheio, informa à camada de aplicação do transmissor que ela deve parar 
de enviar mensagens.
 Quando o buffer começa a se esvaziar, ele informa à camada de aplicação que 
pode continuar a enviar as mensagens.
Controle de Erros
A camada de Internet (Rede) é dita como “não-confiável”, o que significa que não 
há garantia da entrega de pacotes entre dois hosts que se comunicam entre si.
 Para que uma comunicação possa ser considerada confiável, a camada de 
transporte pode implementar mecanismos para garantir a entrega desses pacotes 
durante uma transmissão. 
Chamamos a esse processo de “Controle de Erros”, e ele consiste, basicamente, em
detectar e descartar pacotes corrompidos, acompanhar pacotes descartados e 
perdidos (para reenviá-los), verificar a existência de pacotes duplicados (e 
descartá-los), e guardar em “buffer” pacotes que cheguem fora de ordem, até que 
seja possível reordená-los.
O controle de erros é realizado pela camada de transporte do host de destino dos 
dados, informando à camada de transporte do transmissor a repeito de problemas 
que venham a ocorrer. 
Uma das informações que são usadas para realizar o controle de erros são o 
Números de Sequência, que são números usados para numerar os segmentos 
enviados.
 Esse número é gravado em um dos campos do cabeçalho do segmento na camada
de transporte, e quando um pacote é corrompido ou perdido, a camada de 
transporte do receptor detecta a falta do segmento respectivo e pode informar ao 
transmissor para que ele reenvie o segmento faltante. 
Já segmentos duplicados são facilmente detectados, pois tem o mesmo número de 
sequência. 
E para colocá-los em ordem basta também observar esse número, pois os 
segmentos são numerados sequencialmente.
Quando um ou mais segmentos chegam corretamente ao seu destino, o host 
receptor pode enviar uma mensagem “ACK” acknowledgement / confirmação) para 
o host transmissor, informando que recebeu os pacotes.
 Pacotes perdidos podem ser detectados pelo próprio transmissor com o uso de um
timer, que é ativado ao enviar um pacote. 
Quando esse timer expira, se uma mensagem ACK não tiver sido recebida de volta,
o transmissor reenvia o pacote, conforme o exemplo da imagem abaixo
Técnicas para controle de fluxo e correção de erros
Existem técnicas para controle de fluxo, tais como stop-and-go e de janela 
deslizante. O stop-and-go, por exemplo, funciona com a origem transmitindo 
somente quando recebe uma mensagem de controle do destino, avisando quando 
está pronto para receber o próximo pacote.
Alguns exemplos:
• Modelo Fuzzy TSK Aplicado à Predição do Tamanho de Fila no Buffer: 
O modelo fuzzy TSK, o qual interpola localmente relações de entrada-saída lineares
através de funções de pertinência, resultando em sistemas não-lineares.
 É um algoritmo desenvolvido com a finalidade de detectar, controlar e corrigir a 
transmissão e recebimento de dados. (SciELO - Brasil - Esquema de controle 
adaptativo de tráfego de redes baseado em um algoritmo de predição fuzzy 
Esquema de controle adaptativo de tráfego de redes baseado em um algoritmo de 
predição fuzzy )
• Algoritmo de controle de congestionamento foi proposto por JACOBSON , e é
chamado de Tahoe. Além das fases de partida lenta e de prevenção
O tempo transcorrido desde o instante em que um segmento é enviado até o 
instante que ele é reconhecido.
No remetente é conhecido como RTT (Round-Trip Time — Tempo de Ida e Volta), 
o qual varia de segmento
para segmento de congestionamento, o Tahoe também inclui o mecanismo de 
retransmissão rápida (fast retransmit) no qual realiza o cálculo da estimativa do 
tempo de ida e volta (RTT) que é usado para definir o tempo de retransmissão dos 
segmentos TCP.
• Reno TCP
No algoritmo chamado Reno, o mecanismo de recuperação rápida (fast recovery) 
que cancela a fase de partida lenta apósuma retransmissão rápida.
 Desta forma, o Reno reduz a janela de congestionamento para um MSS, somente 
se a perda acontecer por um estouro do tempo de retransmissão. 
https://www.scielo.br/j/ca/a/QWZszMyzNrVdwY5R9RhSvGr/?lang=pt
https://www.scielo.br/j/ca/a/QWZszMyzNrVdwY5R9RhSvGr/?lang=pt
https://www.scielo.br/j/ca/a/QWZszMyzNrVdwY5R9RhSvGr/?lang=pt
Quando a perda é detectada através de ACKs duplicados, então a janela de 
congestionamento é reduzida apenas pela metade do seu valor corrente e o 
remetente permanece na fase de prevenção de congestionamento, deixando de 
fora a fase de partida lenta.
 Com este procedimento, o Reno evita que a conexão fique praticamente ociosa 
logo após a retransmissão rápida de um segmento.

Outros materiais