func (g *Gossiper) GetNodes() []string VS func (g *Gossiper) GetDirectNodes() []string

func (g *Gossiper) GetNodes() []string VS func (g *Gossiper) GetDirectNodes() []string

par Bastien Wermeille,
Nombre de réponses : 2

Hello,

I was wondering, what is the difference between those two functions:

// GetNodes implements gossip.BaseGossiper. It returns the list of nodes this gossiper knows currently in the network.

func (g *Gossiper) GetNodes() []string

// GetDirectNodes implements gossip.BaseGossiper. It returns the list of nodes whose routes are known to this node

func (g *Gossiper) GetDirectNodes() []string

Best regards,

Bastien

En réponse à Bastien Wermeille

Re: func (g *Gossiper) GetNodes() []string VS func (g *Gossiper) GetDirectNodes() []string

par Peter Krcmar,

The way I understood it is GetNodes returns the addresses of known peers i.e. strings of format IP:PORT and GetDirectNodes returns the identifiers/names of nodes it has heard of thanks to rumors (basically all nodes it has a NextHop to).

En réponse à Bastien Wermeille

Re: func (g *Gossiper) GetNodes() []string VS func (g *Gossiper) GetDirectNodes() []string

par Pasindu Nivanthaka Tennage,

Hello

Thank you for the question.

func (g *Gossiper) GetNodes() []string has the same definition we have in HW0; so I assume it is clear.

func (g *Gossiper) GetDirectNodes() []string should return the set of nodes whose routes are known; for example if node A knows that it can send a private message to C via B, then C should be returned in this method.

Regards