30 lines
647 B
Kotlin
30 lines
647 B
Kotlin
package drills.drill09.gossip
|
|
|
|
import util.network.epidemic.packet.EpidemicPacket
|
|
import util.network.epidemic.packet.FeedbackEpidemicPacket
|
|
import util.network.simulator.Address
|
|
import util.network.simulator.Network
|
|
|
|
fun main() {
|
|
val network = Network()
|
|
|
|
repeat(20) {
|
|
QueryNode(Address(it), network, it * 2)
|
|
}
|
|
|
|
val alpha = network.getRandomNode() as QueryNode<Int>
|
|
val beta = network.getRandomNode() as QueryNode<Int>
|
|
|
|
val packet = FeedbackEpidemicPacket(
|
|
alpha.address,
|
|
beta.address,
|
|
24,
|
|
EpidemicPacket.Type.PUSH,
|
|
false
|
|
)
|
|
|
|
alpha.send(packet)
|
|
|
|
network.start()
|
|
}
|