cuidado com o comentário dos colegas! aô Pedreiro de Software, janela deslizante não significa (Go-Back-n).
Janela Deslizante consiste na implementação de uma comunicação half-duplex, utilizando o caminho de ida e de volta pra transmitir dados e confirmações. Diferentemente do simplex, onde utiliza-se o "Stor-And-Wait", o Half-Duplex utiliza os dois caminhos, seja de forma ordenada ou de forma "concomitante".
Go-Back-N é uma forma de tratar erros de recebimento.
-------------
vejamos o que leciona tanenbaum:
"o uso de um protocolo do tipo stop-and-wait (isto é, o transmissor não pode enviar o fragmento k + 1 enquanto não receber a confirmação do fragmento k)." p. 192 - esse seria o de confirmação imediata, pois o "dado" fica armazenado no buffer do transmissor esperando um ACK, confirmando o recebimento e eliminando esse "dado" do buffer, dando espaço para uma nova transmissão.
agr sobre o go-back-n:
"o que acontecerá se um quadro em meio a um longo fluxo for danificado ou perdido? [...] Há duas estratégias básicas para lidar com erros na presença do pipelining. Em uma opção denominada go-back-n, o receptor simplesmente descarta todos os quadros subsequentes e não envia nenhuma confirmação desses quadros descartados. Essa estratégia corresponde a uma janela de recepção de tamanho 1. [...] o transmissor interromperá a transmissão e retransmitirá todos os quadros não confirmados em ordem, começando pelo quadro danificado ou perdido."
Outro "tratamento" , o "Select Repeat", se apresenta como a segunda solução:
"A outra estratégia geral para tratamento de erros [...] denomina-se retransmissão seletiva. Quando ela é utilizada, um quadro incorreto recebido é descartado, mas os quadros sem defeitos recebidos depois dele são aceitos e inseridos no buffer. Quando o transmissor chega ao timeout, apenas o quadro não confirmado mais antigo é retransmitido. Se esse quadro chegar corretamente, o receptor poderá entregar à camada de rede, em sequência, todos os quadros que armazenou no buffer. A estratégia de retransmissão seletiva corresponde a uma janela receptora maior que 1."
[1] Tanenbaum, p. 200 a 220, Redes, 5ED.
ainda que vejamos o velho tanenba se referir a "quadros", esses protocolos são os mesmos na camada de transporte. logicamente com suas devidas "adaptações".
voltando ao enunciado:
vimos que sim, o protocolo TCP implementa uma técnica denominada "janela deslizante", a qual torna possivel o envio de mais de um segmento independente de autorização p/ que se envie o proximo segmento constante da janela deslizante, podendo receber um unico ACK(confirmação). aumentando, logicamente, o troughput(taxa de transferencia), pois, ao passo que vc envia uma sequencia "dados", ao inves de esperar confirmações p continuar a transmissão, mais "dados" passarão pelo canal, sendo assim causando uma maior taxa de transferencia de "dados".
ASSERTIVA CORRETA.
-------
vamos evitar fundar nossos comentarios em achismos, galera! VAMOS DAR NOMES AO BOIS. DÊEM A FONTE!
"acknowledgement" ... nunca nem vi, porém, associei o ack com as flags TCP e pelo contexto pareceu certo.
Flags TCP:
— urg: informações urgentes;
— ack: confirma o recebimento de algum segmento;
— psh: envia o dado para a camada seguintes sem precisar esperar encher o buffer;
— rst: reinicia a conexão;
— syn: requisita o início de uma nova conexão;
— fin: requisita o encerramento de uma conexão.