From: Jonathan L. <jon...@no...> - 2008-10-30 09:59:03
|
Eric, Glad to hear it. Let Peter and me know if you publish anything using Pyxida and we can put it on the web page. "Gossip" nodes are for learning about the network. "Neighbors" are for constructing the coordinate. So, IIRC, the gossip process learns about nodes that may or may not be applied to the neighbor list. That is, we may eventually learn about a large portion of the network, via gossiping, but should only be using MAX_NEIGHBORS at any given time for coordinate computation. The reason we don't want to use a fixed set of neighbors for coordinate computation is because nodes may come and go from the system. However, it should not be the case that we just rotate through everybody, because then, as you note, we'd be computing against everyone's coordinate/latency, and this is counter to the point of network coordinates. With this gradual transience as a desirable quality in mind, I am pretty sure we maintain neighbors in a fairly fixed manner. Does this not seem to be the case to you? -jonathan On Oct 29, 2008, at 9:20 PM, Eric Chan-Tin wrote: > Hi Jonathan and Peter, > > First of all, just wanted to say that Pyxida has been working great on > Planetlab for the past 4 months or so. Getting good data and > experiments > going well. > > However, I do have one question/comment. > > Every Pyxida node contains a list of Neighbors (in NCClient) and a > list > of Gossip nodes (they are called neighbors in NCManager but I will > call > them gossip for now so as not to confuse with the 'real' neighbors in > NCClient). Every 10 seconds, Pyxida will pick a random node (call it > A) > from Gossip and send a gossip request (basically asking for rtt, > coordinate, error). But Gossip contains all the nodes in the network. > The comment in the code said that was to avoid Pyxida becoming lonely > and no-one to gossip with, which makes sense. > > Once A responds, Pyxida will add A to its Neighbors (if Neighbors does > not contain A) and remove the first element from the Neighbors list. > This seems a little bit odd. Was there any particular reasoning behind > this? Because it would seem like you're getting the coordinate from > every node in the network eventually. > > Thanks a lot, > > -Eric > > Jonathan Ledlie wrote: >> >> Your inclination is correct. See forwarded message. >> >> -jonathan >> >> On Apr 9, 2008, at 1:53 PM, ext Eric Chan-Tin wrote: >> >>> Thank you for the clarification. >>> >>> I've been reading through your published papers and code and I must >>> say I learned a lot about how Pyxida works :) >>> >>> I still have a quick and easy (hopefully) question. Each Pyxida node >>> has a small amount of neighbors and learn about other nodes through >>> other nodes. I am running on about 200 machines, and it seems like >>> all >>> the Pyxida nodes are adding each other to their upNeighbors set. >>> NCClient.java has the MAX_NEIGHBORS set to 512. >>> >>> I wanted to make sure that I am not misreading the code, but >>> shouldn't >>> each Pyxida node keep a small number of neighbors in its upNeighbors >>> set. Else, it will be a lot of updates to send a gossipMessage to >>> all >>> 200 neighbors, and it also means that a Pyxida node has the whole >>> network in its upNeighbors set - that seems wrong. I am inclined to >>> change the value of MAX_NEIGHBORS but wanted to make sure that my >>> understanding is correct first. >>> >>> Thank you, >>> >>> Eric >>> > > ------------------------------------------------------------------------- > This SF.Net email is sponsored by the Moblin Your Move Developer's > challenge > Build the coolest Linux based applications with Moblin SDK & win > great prizes > Grand prize is a trip for two to an Open Source event anywhere in > the world > http://moblin-contest.org/redirect.php?banner_id=100&url=/ > _______________________________________________ > Pyxida-users mailing list > Pyx...@li... > https://lists.sourceforge.net/lists/listinfo/pyxida-users |