Projete um algoritmo de alto nível (pseudocódigo) para um receptor que remonta um arquivo recebido em…
Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva
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 de alto nível (pseudocódigo) para um receptor que remonta um arquivo recebido em fragmentos de pacotes fora de ordem; inclua verificação de integridade via hash, armazenamento temporário com timeout e descarte seguro de fragmentos inválidos.
✍️ Questão dissertativa: veja abaixo a resposta esperada e a explicação.
Resposta esperada
// Estruturas: buffer[session][seq] armazenam fragmentos; meta[session]={total_seqs, expected_hash, timer} OnReceive(packet): sid=packet.session_id; seq=packet.seq; data=packet.payload; h=packet.hash_fragment if not verify_fragment_hash(data,h): discard_secure(data); return store buffer[sid][seq]=data; if not meta[sid] then init meta[sid] from packet header reset meta[sid].timer if all seq in 0..meta[sid].total_seqs present: assembled = concat buffer[sid][0..total_seqs-1] if verify_hash(assembled, meta[sid].expected_hash): write_file(assembled); send_ack(sid) else discard_secure_all(buffer[sid]); send_nack(sid) OnTimerExpire(sid): if elapsed > meta[sid].timeout: free buffer[sid]; notify_sender_timeout(sid) Notes: usar IDs de sessão para separar remetentes; manter timers por sessão; validar cada fragmento localmente e o arquivo final com hash completo; ao descartar, sobrescrever memória antes de liberar para evitar fuga de dados; enviar ACK/NACK para controle de retransmissão.
Explicação
O algoritmo proposto aborda de forma eficaz a recepção e montagem de pacotes, garantindo a integridade dos dados através da verificação de hash e implementando um sistema de armazenamento temporário com timeout. A utilização de IDs de sessão permite a separação adequada dos fragmentos, enquanto o descarte seguro de dados inválidos protege informações sensíveis. Além disso, o envio de ACK/NACK assegura um controle eficiente sobre a retransmissão de pacotes, aumentando a confiabilidade do processo.
Raio-X da questão
algoritmo de recepção
avaliacao
algoritmo de recepção · hash e verificação de integridade
Revisar conceitos de algoritmos e verificação de integridade.
O aluno pode esquecer de incluir a verificação de integridade, resultando em um algoritmo que não garante a segurança dos dados.
ciencia_tecnologia
criatividade
cientifico
Questões parecidas com resolução
- Desenvolva um algoritmo em alto nível que descreva como um receptor reconstitui um arquivo a partir de pacotes recebidos…
- Projete um algoritmo em pseudocódigo que um sistema operacional poderia usar para reordenar e reconstituir um arquivo a…
- Projete um algoritmo, em etapas, que um receptor implemente para reconstituir dados fragmentados enviados por múltiplos…
- Escreva, em pseudocódigo, um algoritmo para um receptor que reconstrói um arquivo transmitido em pacotes com campos de…
- Proponha um algoritmo em alto nível que descreva como um receptor reconstroi um arquivo recebido via pacotes…
- Descreva, em algoritmo de alto nível (passos), como um receptor deve processar pacotes de um arquivo recebido: verificar…
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
