Tópicos em Redes de Computadores (Pós)
Gerenciamento de Redes de Computadores (BCC)

Disciplina da Pós-Graduação (PPGInf/UFPR) & Optativa do Bacharelado em Ciência da Computação (BCC/UFPR)

Prof. Elias P. Duarte Jr.     Departamento de Informática     UFPR

  DISCIPLINA INFO7065: TÓPICOS EM REDES DE COMPUTADORES/CI1366: GERENCIAMENTO DE REDES
  2023-1: o Prof. Elias está ministrando esta disciplina para o PPGInf & BCC

Pessoal, resultado divulgado! Preciso destacar os ótimos videos e relatórios dos trabalhos, abraços a todos e até a próxima!

Atenção pessoal: a prova vai ser na sala PA-09 (dia 15/06/2023, às 19:30hs)

Atenção pessoal: a aula virtual do dia 1o de junho de 2023 (quinta-feira) vai ser às 20:30hs na sala https://bbb.c3sl.ufpr.br/b/eli-bn1-jfy-svc

Atenção pessoal: não haverá aula nos dias 18, 23 e 25 de maio, aproveitem para completar o Trabalho Prático. A prova será provavelmente dia 15 de junho de 2023, as apresentações da Pós serão 6/junho/23 e 13/junho/23.

Atenção pessoal: não haverá aula na quinta-feira, 13/04/23, aproveite para iniciar a avaliação do módulo 1!

Atenção pessoal: confirmado, conseguimos o Auditório do DInf para nossas aulas, tanto terças, como quintas. É o Auditório que fica em frente à Secretaria do DInf.

Sala: atenção pessoal, a sala será divulgada aqui antes da 1a aula, na terça-feira dia 21/03/2023

Todos os AVISOS serão postados aqui.

Dias e horários das aulas neste semestre: terças e quintas-feiras, das 19:30 às 21hs

Sala: Auditório do DInf (o que fica em frente da Secretaria do DInf)

Avaliação: cada um dos 4 módulos terá sua avaliação, prova, lista de exercícios e/ou trabalho prático.

Calendário:

Prova: (quinta-feira, na hora da aula, na sala de aula)

Prova Final: 4/7/23 (terça-feira, na hora da aula na sala de aula)

Atenção: Alunos reprovados por faltas infelizmente não poderão fazer a final - fique de olho!


  AULAS (SLIDES)

Sistemas Tolerantes a Intrusão
Aula 1
Aula 2
Aula 3
Aula 4 (até slide 36)

Segurança
Aula 1
Aula 2
Aula 3
Aula 4
Aula 5 (Atualizada!)
Aula 6

Blockchain
Aula Blockchain

Redes Celulares
Aula 1 (Atualizada!)
Aula 2
Aula 3 (Atualizada!)
Aula 4
Aula 5
Aula 6

  PROGRAMA e AVALIAÇÕES

Esta é uma disciplina optativa de Tópicos Avançados em Redes, neste semestre ela vai consistir de 4 pilares:

  1. Redes Celulares, do 1G ao 5G e perspectivas 6G

    Avaliação: Nestas aulas vimos vários conceitos das redes celulares, mas agora chegou a hora de você sintezar o que aprendeu. Prepare um relatório descrevendo as 5 gerações das redes celulares, e perspectivas para a 6a. Capriche na sua pesquisa e descrição.

    O relatório deve ser manuscrito, e entregue até 2/maio/2023, será devolvido aos alunos!

  2. Segurança & Blockchain (antes de estudar blockchain teremos aulas para esclarecer todos os conceitos básicos de segurança computacional, necessários para compreensão de blockchain)
  3. Sistemas Tolerantes a Intrusão: Sistemas Distribuídos Tolerantes a Falhas Bizantinas
  4. Redes Basedas em Software e Funções Virtualizadas de Redes (SDN e NFV): possivelmente apenas a última aula, finalizando com este tema essencial nas redes atuais; havendo tempo, mais aulas
  A bibliografia vai sendo divulgada na medida em que os tópicos forem avançando.

    Redes 5G:

  • Larry Peterson, Oguz Sunay, Bruce Davie, Private 5G: A Systems Approach, Disponível On-Line

    Segurança (conceitos básicos e tem um bom material introdutório sobre redes celulares até 5G):

  • A. Tanenbaum, N. Feamster, D. Wetherall, Computer Networks, 6th Ed., Pearson, 2021.

    Avaliação: Trabalho Prático (Pós - individual, Graduação: em dupla): A segunda avaliação da disciplina vai ser a construção de um sistema cliente/servidor seguro com TLS.

    A dupla vai fazer uma aplicação cliente/servidor simples baseada em KVS (Key-Value Store). O servidor mantém uma base de dados, que o cliente pode consultar, alterar... A comunicação cliente/servidor é segura: garantindo sigilo, autenticidade e integridade. Cada uma destas propriedades deve ser demonstrada:

    • Sigilo: mostre os dados criptografados transmitidos (imprimindo junto a versão original)
    • Autenticidade: um invasor tenta comunicar com o servidor ou com o cliente, mostre que não consegue
    • Integridade: troque o valor de alguns bits da mensagem e mostre que não descriptografa corretamente

    Cada dupla/pós-graduando pode escolher a linguagem que quiser para implementar o trabalho. Sugestão: Python, podem usar C, C++, Java, outras linguagens são bem vindas.

    Desta vez o relatório vai ser especial: explique como programar um sistema cliente-servidor seguro usando TLS na linguagem da sua escolha. Formato sugerido: vídeo! Se não quiser: apresentação; se não quiser: página Web com relatório em texto. Divulgue na Internet, nas redes sociais, no YouTube, faça deste uma contribuição do seu currículo!

    Cada dupla deve fazer uma página Web contendo:

    • O relatório: por exemplo link para o vídeo no YouTube Ou a apresentação, ou o relatório em texto mesmo
    • Logs de execução: se no vídeo você estiver confiante que demonstrou seu sistema bem – não precisa de logs na página!
    • Código comentado, pense no usuário que viu seu vídeo e vai acessar o código para aprender

    O relatório deve ser manuscrito, e enviado por email até 3/junho/2023 para eliasufpr@gmail.com com o assunto: "TopRedes 2023: KVS Seguro"

    Blockchain:

    Recomendo o Capítulo da Profa. Fabíola Greve da UFBA:

  • Fabíola Greve, Leobino Sampaio, Jauberth Weyll Abijaude, Antonio Augusto Ribeiro Coutinho, Ítalo Valcy, Sílvio Queiroz, "Blockchain e a Revolução do Consenso sob Demanda," Minicurso do SBRC, 2018.

  • Uma visão bem "pé-no-chão" de blockchain é esta implementação em Java por Kumar Chandrakant.

    Sistemas Tolerantes a Intrusão

    As referências para este módulo da nossa disciplina incluem:

  • Noções básicas de Sistemas Distribuídos

  • Noções básicas de Tolerância a Falhas (Dependability) podem ser encontradas no seguinte capítulo:

  • Noções básicas de Dependabilidade

  • O problema original dos Generais Bizantinos foi proposto no seguinte artigo:

    Leslie Lamport, Robert Shostak, Marshall Pease, "The Byzantine Generals Problem," ACM Transactions on Programming Languages and Systems, Vol. 4, No. 3, pp. 382-401, 1982.

  • O PBFT foi proposto no seguinte artigo:

    Miguel Castro, Barbara Liskov, "Practical Byzantine Fault Tolerance," OSDI, pp. 173-186, 1999.


UFPR   Departamento de Informática   Prof. Elias P. Duarte Jr.