Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Understand blockchain, docker, containernet, SDN, etc concepts
  • Setup and get familiar with the development environment - run tests, read logs, etc
  • Get high level understanding of the current umbra code - advanced Python ramp-up
  • From above learnings, improve umbra docs, setup scripts, etc if needed
  • Outcome: setup dev environment and run the project. Familiarized with the code, run the sample fabric configs, understand the output.

Week 4 - 6 (June 22 - July 10)

  • Pathfinding: ability to save and replay packet. E.g. each peer saves each packet sends so umbra-broker can instruct all the nodes to replay the packet
    • Outcome: current maintainer has the sample implementation (umbra/umbra-agent, umbra/umbra-monitor) that will be integrated to umbra-broker. Need to study and understand how it works
      • umbra/umbra-agent: Uses third-party tools like Linux `tcpreplay` and `tcpdump` to save and replay packet
      • umbra/umbra-monitor: Monitor host platform (via `platform` Python standard lib), Linux processes (via `psutil` thirdy-party library), and Docker container (via Docker Python API)

      • Learned a lot about python asyncio which is used extensively to schedule commands in both umbra-agent/monitor to simulate the environment
  • Implement the ability to remove container(s), remove/update link behavior (bandwidth, delay, loss, etc), and change node resources (cpu/mem) in umbra-scenario component
    • Test feature -  refer umbra/examples/fabric/build_configs.py
    • Outcome: pending, moved to next quarter. But learned a lot about the internals design and how the umbra-scenario <--> umbra-broker works together.

Week 7 - 9 (July 13 - July 31)

  • Continue working on packet save/restore replay feature
  • Add events to umbra-broker based on previous quarter link/node behavior changes in umbra-scenario
  • Review implementation details with Umbra maintainer

...