Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Conversation

@micdoug
Copy link

@micdoug micdoug commented Jan 9, 2017

Hi all,

I created a pull request some time ago adding the support for message drop policies, but, I closed it because I had decided to make more tests at that time.

With this modifications I have added the support for message drop policies. There are 4 basic policies available: EDrop, FIFO, MOFO and SHLI. When specified in the configuration file an instance of a drop policy is created and called by the ActiveRouter class instead of the original makeRoomForMessage method when a message is received. It's easy to understand the code and there are some basic unit tests. If you want to implement your own drop policy, all you need to do is create a new class in the buffermanagement package extending from DropPolicy.
I also have created a configuration example file in the examples folder.

I have also implemented the BubbleRap routing protocol. My implementation is based on this https://github.com/knightcode/the-one-pitt , but using the methods available in the ActiveRouter class to do the message exchange process, so it is more integrated to the simulator in general. I have used this implementation in my research. There are some limitations in this implementation, for example, it considers that each node have only one community. But this can be improved.

The BubbleRapRouter use an implementation of CommunityDetection and Centrality to detect the communities and compute the local and global centrality values for each node, respectively. There are two implementations of CommunityDetection interface available: DistributedKCliqueCommunityDetection and ExternalCommunityDetection. The first is based on the algorithm with the same name and the second loads the communities from an external file. There are two implementations of the Centrality interface: CWindowCentrality that implements the algorithm CWindow and the ExternalCentrality that loads the centrality values from an external file.

There are some unit tests for the BubbleRap implementation.

I hope these modifications help someone.

SaltyHash123 added a commit to stg-tud/thesis-2022-regev-code that referenced this pull request Nov 7, 2022
Added (yet untested) DropPolicy Integration of (currently open) Pull Request 43 akeranen/the-one#43
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

Successfully merging this pull request may close these issues.

2 participants