You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Next »

Goal

Hyperledger Umbra (https://github.com/hyperledger-labs/umbra) is a project created during the 2019 mentorship period as a network simulation tool to run the blockchain environment. The plan for this year is to add network fuzzing capabilities such as packet drops, delay, loss, etc.

Proposed Timeline

Week 1 - 3 (June 1 - June 19)

  • 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

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
  • 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

Week 7 - 9 (July 13 - July 31)

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

Week 10 - 12 (Aug 3 - Aug 21)

  • Add the ability in broker to parse events from config (e.g., event with “category” field set to “scenario”), containing the proper params to call the scenario modifications (e.g., node: name, operation: delete, etc)
  • Generate a report for this fuzzing activity - list out all the events, status, etc
  • Document and wrap-up work (scripts to automate stuff, etc)

Process

  • Weekly meeting with mentor and other mentees that use Umbra. Other meetings scheduled as required
  • Chat via Signal
  • No labels