Redes de Computadores

Objetivos

Conhecimentos

  • Redes de computadores: terminologia, organização, serviços, componentes e princípios estruturantes
  • Interface de programação baseada em sockets
  • Protocolos de aplicação, com ênfase nos associados à WWW
  • Redes TCP/IP – princípios e protocolos
  • Noções fundamentais sobre o funcionamento dos canais em geral e as redes Ethernet comutadas
  • Fundamentos da segurança das redes de computadores

Aptidões e competências

  • Perceber a arquitetura e como funciona uma rede de computadores
  • Indicadores de desempenho da rede e sua estimativa e medida
  • Perceber o impacto dos níveis transporte e rede sobre o desempenho das aplicações distribuídas
  • Perceber como é que a informação é difundida
  • Conhecer e saber utilizar interfaces de transporte
  • Analisar, estruturar e desenvolver protocolos e aplicações distribuídas
  • Conhecer as tecnologias usadas para assegurar a confidencialidade, integridade e autenticidade das comunicações efetuadas através de redes de computadores

Caracterização geral

Código

8149

Créditos

6.0

Professor responsável

Pedro Abílio Duarte de Medeiros

Horas

Semanais - 5

Totais - 70

Idioma de ensino

Português

Pré-requisitos

Competências de programação e sistemas de operação.

Bibliografia

José Legatheaux Martins, "Fundamentos de Redes de Computadores - Ilustrado com base na Internet e nos Protocolos TCP/IP," FCT-NOVA, 2018

J. Kurose, K. Ross, "Computer Networking - A Top-Down Approach 8th Ed", Pearson, 2021

Método de ensino

Nas aulas teóricas expõe-se e discute-se o programa da cadeira. Em algumas aulas teóricas resolvem-se e discutem-se problemas tipo que envolvem a modelização e a análise de um protocolo ou de uma situação.

Nas aulas práticas são desenvolvidos diversos trabalhos cujo objectivo é levar o aluno a realizar trabalhos experimentais sobre os tópicos mais importantes da matéria. Para além de cumprirem os objectivos dos trabalhos, os alunos devem depois relacionar os resultados obtidos com os tópicos da matéria que são relevantes. Em várias aulas procede-se à resolução de problemas tipo e também à análise de protocolos.

Método de avaliação

A avaliação tem dois componentes: componente teórica e componente prática. Todas as notas intermédias são arredondadas às décimas. As questões de plágio e fraude serão tratadas de acordo com o indicado no regulamento de avaliação da FCT.

Componente teórica

A nota desta componente (NT) é obtida em dois testes teórico / práticos presenciais sem consulta sobre a matéria das aulas teóricas, ou exame de recurso (também presencial).

NT = (nota teste 1 + nota teste2 ) / 2. ou

NT = nota exane de recurso

Para ter sucesso na unidade curricular, um estudante tem de ter pelo menos 9,5 valores nesta componente.

Componente laboratorial

A nota desta componente (NL) é obtida em quatro trabalhos práticos de média dimensão (EP1, EP2, EP3, EP4)  elaborados em grupos de até 2 estudantes. Para ter sucesso na unidade curricular, um estudante tem também de ter pelo menos 6 valores nesta componente. A obtenção de uma nota NL maior ou igual a 6,0 permite obter frequência à UC no corrente ano letivo.

Os trabalhos têm notas NEP1, NEP2, NEP3, NEP4.  

NL = (NEP1 + NEP2 + NEP3 + NEP4) / 4.

A nota NEPi é obtida através de duas componentes:

  • Avaliação do grupo, NGi, relacionada com a funcionalidade e correção do código entregue. 
  • Avaliação individual de cada membro do grupo NTPi, que é obtida através das respostas a perguntas sobre os trabalhos práticos nos dois testes (sobre o EP1 e EP2 no 1º teste, sobre o EP3 e EP4 no 2º teste). Essas perguntas não contribuem para a nota do teste. As perguntas sobre o EPi são classificadas com uma nota NTPi entre 0 e 100 e a nota final  NEPi será dada pelas regras seguintes:
    • Se NTPi >= 70,  NEPi = minimo( 20 , NGi )
    • senão se NTPi >= 50,  NEPi = minimo( 15 , NGi )
    • senão se NTPi >= 25,  NEPi = mínimo( 12, NGi )
    • senão NEPi = 0;

               Se um estudante faltar ao teste em que é obtido NTPi com justificação, a componente NTPi será obtida num teste prático em data a combinar, aplicando-se as regras acima para obter NEPi

Nota final (NF)  

NF = 0,75*NT + 0,25*NL

Frequência de anos anteriores

Todos os estudantes que obtiveram frequência nos dois anos anteriores já têm a nota NL definida que entrará com o peso 0,25. Os estudantes podem optar por obter uma nova nota NL em 2022/23, devendo nesse caso inscrever-se num turno prático e entregar os trabalhos nas datas especificadas e responder às perguntas sobre os exercícios nos testes. Caso se inscrevam em turnos práticos mas desistam da avaliação, ficam na mesma situação que aquela em que tivessem logo optado pela frequência anterior.

Conteúdo

Redes de computadores: terminologia, organização, serviços, componentes e princípios estruturantes (o que é uma rede, estruturação de aplicações e protocolos aplicacionais: requisitos das aplicações e transporte). Nomes simbólicos e endereços, DNS. Interface de programação usando sockets

Protocolos de aplicação: FTP, SMTP, telnet. A Web: protocolo HTTP. Introdução à programação de aplicações Web: o lado servidor e o lado cliente.  Redes de distribuição de conteúdos e vídeo sobre HTTP.

Camada "data link": tecnologias para ligações ponto a ponto e para  rede local (com e sem fios). Acesso a meios partilhados. Deteção de erros.

Camada Rede: princípios, endereçamento e algoritmos de encaminhamento.Protocolos da Internet: DHCP, ARP, NAT, IP, encaminhamento em IP.

Camada de transporte: Transmissão fiável de informação: requisitos e técnicas específicas (Stop & Wait, Janela Deslizante). Protocolo TCP: controlo de fluxo e de saturação.

Segurança de redes de computadores: tecnologias de base para assegurar a confidencialidade, integridade e autenticidade das comunições. Segurança a nível da camada de transporte (TLS). VPN.

Cursos

Cursos onde a unidade curricular é leccionada: