Return-Path: william@bourbon.usc.edu Delivery-Date: Sun Oct 12 08:40:05 2008 X-Spam-Checker-Version: SpamAssassin 3.2.3 (2007-08-08) on merlot.usc.edu X-Spam-Level: X-Spam-Status: No, score=-2.3 required=5.0 tests=AWL,BAYES_00 autolearn=ham version=3.2.3 Received: from bourbon.usc.edu (bourbon.usc.edu [128.125.9.75]) by merlot.usc.edu (8.14.1/8.14.1) with ESMTP id m9CFe5wi021654 for ; Sun, 12 Oct 2008 08:40:05 -0700 Received: from bourbon.usc.edu (localhost.localdomain [127.0.0.1]) by bourbon.usc.edu (8.14.2/8.14.1) with ESMTP id m9CFlK1M014514 for ; Sun, 12 Oct 2008 08:47:20 -0700 Message-Id: <200810121547.m9CFlK1M014514@bourbon.usc.edu> To: cs551@merlot.usc.edu Subject: Re: CS551 - Final1 Date: Sun, 12 Oct 2008 08:47:20 -0700 From: Bill Cheng Someone worte: > > > Scenario: 3 non-beacon nodes [with no init_neighbor file] starting up. > > > 1 beacon-node already up and blocked on accept(). > > > > > > When the 3 non-beacon nodes send join request messages, the beacon node > > > responds to the 3 nodes. Does this beacon node also forward the join > > > request to the non-beacon nodes ? > > > > Yes. The JOIN request gets *flooded* to the whole network > > (if TTL is large enough). > > ---- A node is NOT considerd to be a part of the SERVANT network until > it completes JOIN and HELLO. In this case how can it receive any > JOIN_REQ before HELLO. I think, when we have to flood a message it is > only to those nodes that are a part of the network. Since the other > two nodes will only be having a temporary connection to beacon node it > should not receive any flooded messages until it is a part of SERVANT > network. Ah! I think I misunderstood your senario. I thought the 3 non-beacon nodes are already part of the network and you were asking about the 4th non-beacon node. I was talking about the 4th non-beacon node. Sorry! Since the whole network at this point consists of only the beacon node, the JOIN requests will not be forwarded to the JOINing non-beacon nodes. Regarding what to do if MinNeighbor is greater than 1, please see the FAQ: http://merlot.usc.edu/cs551-f08/projects/final-faq.html#no-enough-join Finally, you ask: > How does a non-beacon node make another non-beacon node its neigbor if it > doesn't send a Join request to the non-beacon nodes ? Over time. The first non-beacon node that ever joins the network can only have beacon node as its init neighbors. If you start another non-beacon node after the first non-beacon has exchanged HELLO messages with its init neighbors, then it is possible for the 2nd non-beacon node to have the first non-beacon node as one of its init neighbors. -- Bill Cheng // bill.cheng@usc.edu