Implementation of gossip protocols for information dissemination in a network with different kinds of topologies.
If available in Hex, the package can be installed
by adding proj2
to your list of dependencies in mix.exs
:
def deps do
[
{:proj2, "~> 0.1.0"}
]
end
Documentation can be generated with ExDoc and published on HexDocs. Once published, the docs can be found at https://hexdocs.pm/proj2.
Team Members-
How to run-
- Go inside directory using: cd proj2
- Now, to compile write: mix compile
- To run, use: mix run my_program arg1 arg2 arg3
What is working-
Convergence of Gossip algorithm for all topologies - Full, Line, Imperfect Line, Random 2D, 3D, Sphere Convergence of Push Sum algorithm for all topologies - Full, Line, Imperfect Line, Random 2D, 3D, Sphere
Largest Network -
Gossip Algorithm:
Line topology - 1000 Nodes Imperfect Line topology- 2000 nodes Random2D topology- 3000 nodes Sphere topology- 2000 nodes 3D topology- 2000 nodes Full topology- 1000 nodes
Push Sum Algorithm:
Line topology - 1000 Nodes Imperfect Line topology- 5000 nodes Random2D topology- 3000 nodes Sphere topology- 2000 nodes 3D topology- 3000 nodes Full topology- 2000 nodes
Sometimes convergence of full topology takes more time than line, because in line all nodes could not converge but in full network most of the nodes gets information so they run until everyone has heard information 10 times. So,full takes more time to converge sometimes.