GeraProva GeraProva Provas com IA para professores do Brasil
Computação7º anoBNCC EF69CO07Difícil⏱ longo

Projete um algoritmo em pseudocódigo para o receptor que implemente uma janela deslizante: reordena pacotes…

Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva

Habilidade BNCC EF69CO07

Entender o processo de transmissão de dados, como a informação é quebrada em pedaços, transmitida em pacotes através de múltiplos equipamentos, e reconstruída no destino.

Fonte: Base Nacional Comum Curricular (MEC).

Questão

Projete um algoritmo em pseudocódigo para o receptor que implemente uma janela deslizante: reordena pacotes usando campo 'seq', detecta pacotes corrompidos com checksum e solicita retransmissão quando necessário. Explique variáveis e condições.

✍️ Questão dissertativa: veja abaixo a resposta esperada e a explicação.

Resposta esperada

Variáveis: - window_size: inteiro (tamanho da janela) - expected_seq: inteiro (próximo seq a entregar) - buffer: mapa seq ? payload - last_ack: inteiro (último seq cumulativo confirmado) Procedimento (pseudocódigo): Inicializar window_size, expected_seq=0, buffer vazio, last_ack=-1 Função receive(packet): if not verifica_checksum(packet): enviar_NACK(packet.seq) return if packet.seq < expected_seq: enviar_ACK(packet.seq) // já entregue antes return if packet.seq >= expected_seq and packet.seq < expected_seq + window_size: if packet.seq não em buffer: buffer[packet.seq] = packet.payload enviar_ACK(packet.seq) else: // fora da janela atual: descartar ou enviar ACK do último entregue enviar_ACK(last_ack) // tentar entregar em ordem a partir de expected_seq while expected_seq em buffer: entregar_a_aplicacao(buffer[expected_seq]) remover buffer[expected_seq] last_ack = expected_seq expected_seq = expected_seq + 1 Explicação das decisões: - Verificação de checksum rejeita pacotes corrompidos e solicita retransmissão (NACK) para eficiência. - Buffer permite armazenar pacotes fora de ordem até completar a sequência contínua. - ACKs confirmam recepção; ACK cumulativo (last_ack) informa ao emissor até onde já foi entregue. - Janela limita quantos pacotes podem estar pendentes, controlando fluxo e evitando estouro de memória. Notas de implementação: - Em redes reais pode-se usar apenas ACKs cumulativos e retransmissão por timeout em vez de NACKs. - Deve-se definir política para seq overflow (modularidade) e temporizadores para limpar entradas muito antigas.

Explicação

A solução apresentada aborda de forma eficaz a reordenação de pacotes e a detecção de erros, utilizando um buffer para armazenar pacotes fora de ordem e um mecanismo de verificação de checksum para garantir a integridade dos dados. O uso de ACKs e NACKs permite uma comunicação eficiente entre emissor e receptor, garantindo que pacotes corrompidos sejam retransmitidos e que a entrega ocorra na ordem correta. Além disso, a implementação de uma janela deslizante ajuda a controlar o fluxo de pacotes, evitando sobrecarga de memória e melhorando a eficiência da transmissão.

Raio-X da questão

Dificuldade Difícil
Bloom Analisar
Leitura alto
Discriminação alto
Peso pedagógico alto
Autonomia do enunciado completo
Cobertura da habilidade multipla
🧪 Simulado🩺 Diagnóstico🧮 Exige cálculo🏠 Cotidiano🔗 Interdisciplinar⭐ Representativa✍️ interpretativa🧩 desafio
🎯 Conceito central

algoritmo de janela deslizante

📌 Objetivo

avaliacao

🧱 Pré-requisitos

algoritmos e pseudocódigo · verificação de integridade de dados

📚 Reveja

Revisar conceitos de algoritmos e verificação de integridade de dados.

⚠️ Erro mais comum

O aluno pode confundir a lógica de reordenação de pacotes com a simples verificação de integridade, não implementando corretamente a retransmissão.

🌎 Tema transversal

ciencia_tecnologia

🤝 Socioemocional

pensamento_critico

🏫 Contexto

cientifico

Questões parecidas com resolução

Todas as questões de Armazenamento e Transmissão de dados - Fundamentos de transmissão de dados

🔎 Procurar outra questão

Procure no banco do GeraProva pelo tema ou por um trecho do enunciado. Cada questão já vem com resolução comentada e a análise de cada alternativa.

Professor: monte a prova com questões como esta, com gabarito e folha de respostas, em 30 segundos. Ver planos · Blog

Ocorreu um erro inesperado. Recarregar X

Rejoining the server...

Rejoin failed... trying again in seconds.

Failed to rejoin.
Please retry or reload the page.

The session has been paused by the server.

Failed to resume the session.
Please retry or reload the page.