Propostas submetidas

DEI - FCTUC
Gerado a 2024-11-24 14:19:54 (Europe/Lisbon).
Voltar

Titulo Estágio

Implementação de uma design pattern para comunicação TCP fiável

Áreas de especialidade

Engenharia de Software

Comunicações, Serviços e Infraestruturas

Local do Estágio

DEI

Enquadramento

A crescente importância da Internet na vida das pessoas e nos negócios aumenta a necessidade de aplicações distribuídas confiáveis ​​de grande escala. No coração da maioria das aplicações distribuídas que precisam de confiabilidade, encontramos o protocolo TCP (Transmission Control Protocol). No entanto, se a conectividade for interrompida durante algum tempo, a conexão TCP irá perder-se, tornando muito difícil qualquer tipo de recuperação.

Em muitos programas e protocolos, como o FTP, SSH, X Windows ou streaming de multimédia seria útil manter a interação viva, mesmo depois de uma quebra da ligação TCP. No entanto, a assincronia e a falta de fiabilidade da rede dificultam grandemente a deteção atempada de perdas de mensagens.

Ainda assim, o TCP pode garantir comunicação confiável, com a ajuda de alguns componentes e princípios de programação simples, incluindo alguns design patterns já existentes, que foram desenvolvidos ao longo dos anos para simplificar a programação distribuída.

Objetivo

O objetivo deste estágio será o de garantir a duração das interações TCP num browser, usando design patterns. Um dos componentes chave a utilizar neste trabalho será um buffer circular que armazena todos os dados em trânsito na ligação TCP, com um mínimo de impacto no desempenho. Recorrendo a este buffer e aos padrões referidos anteriormente, poderemos criar um novo padrão de comunicação que suporte múltiplos clientes em simultâneo e capaz de restabelecer ligações TCP sem qualquer perda de dados. No caso do browser, a ideia será garantir que, depois duma falha, tanto o browser como o servidor consigam retomar a transmissão de dados, a partir do ponto em que estavam, sem envolvimento do utilizador. Esta abordagem será particularmente útil para as tags de streaming

Plano de Trabalhos - Semestre 1

Estudo do estado da arte e familiarização com a design pattern atualmente existente (meses 1-2)

Implementação da design pattern no browser (meses 3-4)

Escrita do relatório intermédio (mês 5)

Plano de Trabalhos - Semestre 2

Inclusão de características adicionais, como segurança ou multi-threading (meses 6-7)

Avaliação experimental (meses 8-9)

Escrita do relatório final (mês 10)

Condições

Estágio não remunerado.

Orientador

Filipe Araújo & Fernando Barros
filipius@uc.pt 📩