You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When the Neighborhood has the GossipProducer make a package of Gossip, it packs it up into an IncipientCoresPackage and sends it to the Hopper.
This seems like a smart thing to do, but the IncipientCoresPackage has only a public key, not an IP address, so somewhere along the way the process has to contact the Neighborhood again to translate that public key into an IP address for routing purposes.
However, at the moment the Neighborhood creates the IncipientCoresPackage, it already knows the IP address of the neighbor it's sending to, because Gossip only goes to immediate neighbors, and the IP addresses of immediate neighbors are known. Therefore, a number of actor messages could be eliminated if the Neighborhood would just pass along the IP address with the IncipientCoresPackage.
There's another time when a CORES package has to be one-hop routed without getting the target IP from the Neighborhood: when the Node is just starting up, and is contacting its first neighbor. At that time, the neighbor isn't in the Neighborhood database at all, so the IP address has to be included in the instructions to the Hopper.
That's done by sending the Hopper a NoLookupIncipientCoresPackage, which includes a NodeAddr (which includes an IP address) rather than a plain `IncipientCoresPackage'.
Task:
Modify the Neighborhood so that after the GossipProducer makes a package of Gossip, it sends a NoLookupIncipientCoresPackage to the Hopper rather than an IncipientCoresPackage. This may be a very easy change, or you might have to make minor changes to the way NoLookupIncipientCoresPackage works.
The text was updated successfully, but these errors were encountered:
When the
Neighborhood
has theGossipProducer
make a package of Gossip, it packs it up into anIncipientCoresPackage
and sends it to theHopper
.This seems like a smart thing to do, but the
IncipientCoresPackage
has only a public key, not an IP address, so somewhere along the way the process has to contact theNeighborhood
again to translate that public key into an IP address for routing purposes.However, at the moment the
Neighborhood
creates theIncipientCoresPackage
, it already knows the IP address of the neighbor it's sending to, because Gossip only goes to immediate neighbors, and the IP addresses of immediate neighbors are known. Therefore, a number of actor messages could be eliminated if theNeighborhood
would just pass along the IP address with theIncipientCoresPackage
.There's another time when a CORES package has to be one-hop routed without getting the target IP from the
Neighborhood
: when the Node is just starting up, and is contacting its first neighbor. At that time, the neighbor isn't in theNeighborhood
database at all, so the IP address has to be included in the instructions to theHopper
.That's done by sending the
Hopper
aNoLookupIncipientCoresPackage
, which includes aNodeAddr
(which includes an IP address) rather than a plain `IncipientCoresPackage'.Task:
Modify the
Neighborhood
so that after theGossipProducer
makes a package of Gossip, it sends aNoLookupIncipientCoresPackage
to theHopper
rather than anIncipientCoresPackage
. This may be a very easy change, or you might have to make minor changes to the wayNoLookupIncipientCoresPackage
works.The text was updated successfully, but these errors were encountered: