Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Connection Topology #76

Open
travisperson opened this issue Sep 6, 2018 · 2 comments
Open

Connection Topology #76

travisperson opened this issue Sep 6, 2018 · 2 comments

Comments

@travisperson
Copy link
Member

See #65 for complete history


Original comment by @davinci26

Hey y'all,

Thanks for the project it helped me a lot!

As discussed in IPFS issue board IPFS Performance #5226, I made some changes to the IPTB framework to generate measure the performance of IPFS and generate performance graphs. In detail I added the following functions in the framework:

  • iptb make-topology: This creates a connection graph between the nodes (e.g. star topology, barbell topology). In the topology files empty lines and lines starting with # are disregarded. For non empty line the syntax is origin:connection 1, connection 2 ... where origin and connections are specified with their node ID.
  • iptb dist -hash: The simulation here distributes a single file from node 0 to every other node in the network. Then it calculates the average time required to download the file, the standard deviation of the time, the maximum time, the minimum time, the duplicate blocks. The results are saved in a generated file called results.json.

I also added a Python3 script to plot the results that adds an additional optional dependency in the project, Matplotlib.

Finally I created a readme file, simulation.md, that explains the logic of the simulation. I also added there the response of @whyrusleeping to the issue Simulate bad network #50 so people would know that there is support for bad network.

I would appreciate your feedback and any improvements suggestions :)

@travisperson
Copy link
Member Author

I want to talk about the topology file a bit further. Currently I think this can be handled pretty simply through other means through another script for easy of use on behalf of the user.

Each line in the topology file basic expands out to iptb connect origin [connection 1, connection 2].

I'm wondering if we should really go forward with the topology at the moment.

@davinci26
Copy link

I left my comment on the subject on #75 . I can see why it should not be added, imho its not the most important feature, but I think #75 is moving the code into the right direction. Scripting directly on top of IPTB instead of using shell scripts is something I would want to see.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants