Author: toad
Date: 2008-09-02 17:47:07 +0000 (Tue, 02 Sep 2008)
New Revision: 22357
Modified:
trunk/freenet/src/freenet/node/NodeStarter.java
trunk/freenet/src/freenet/node/simulator/BootstrapPullTest.java
trunk/freenet/src/freenet/node/simulator/BootstrapPushPullTest.java
trunk/freenet/src/freenet/node/simulator/BootstrapSeedTest.java
trunk/freenet/src/freenet/node/simulator/RealNodeBusyNetworkTest.java
trunk/freenet/src/freenet/node/simulator/RealNodeNetworkColoringTest.java
trunk/freenet/src/freenet/node/simulator/RealNodePingTest.java
trunk/freenet/src/freenet/node/simulator/RealNodeRequestInsertTest.java
trunk/freenet/src/freenet/node/simulator/RealNodeRoutingTest.java
trunk/freenet/src/freenet/node/simulator/RealNodeSecretPingTest.java
trunk/freenet/src/freenet/node/simulator/RealNodeULPRTest.java
trunk/freenet/src/freenet/node/simulator/SeednodePingTest.java
Log:
Allow the user of the seednodes testers to pass in their IP address as a
command line parameter.
This is essential if the node doesn't know it:
Even if the node is DMZed, it will not be able to talk to any announcement
result nodes which are themselves NATed if it can't include its correct IP
address!
Note that this has significantly biased the bootstrapping results up to this
point!
Modified: trunk/freenet/src/freenet/node/NodeStarter.java
===================================================================
--- trunk/freenet/src/freenet/node/NodeStarter.java 2008-09-02 17:44:41 UTC
(rev 22356)
+++ trunk/freenet/src/freenet/node/NodeStarter.java 2008-09-02 17:47:07 UTC
(rev 22357)
@@ -337,7 +337,7 @@
long storeSize, boolean ramStore, boolean enableSwapping,
boolean enableARKs,
boolean enableULPRs, boolean enablePerNodeFailureTables,
boolean enableSwapQueueing, boolean enablePacketCoalescing,
- int outputBandwidthLimit, boolean enableFOAF, boolean
connectToSeednodes) throws NodeInitException {
+ int outputBandwidthLimit, boolean enableFOAF, boolean
connectToSeednodes, String ipAddressOverride) throws NodeInitException {
File baseDir = new File(testName);
File portDir = new File(baseDir, Integer.toString(port));
@@ -395,6 +395,8 @@
configFS.put("node.opennet.connectToSeednodes",
connectToSeednodes);
configFS.put("node.encryptTempBuckets", false);
configFS.put("node.encryptPersistentTempBuckets", false);
+ if(ipAddressOverride != null)
+ configFS.putSingle("node.ipAddressOverride",
ipAddressOverride);
PersistentConfig config = new PersistentConfig(configFS);
Modified: trunk/freenet/src/freenet/node/simulator/BootstrapPullTest.java
===================================================================
--- trunk/freenet/src/freenet/node/simulator/BootstrapPullTest.java
2008-09-02 17:44:41 UTC (rev 22356)
+++ trunk/freenet/src/freenet/node/simulator/BootstrapPullTest.java
2008-09-02 17:47:07 UTC (rev 22357)
@@ -54,6 +54,9 @@
* @throws InterruptedException
*/
public static void main(String[] args) throws
InvalidThresholdException, IOException, NodeInitException, InterruptedException
{
+ String ipOverride = null;
+ if(args.length > 0)
+ ipOverride = args[0];
File dir = new File("bootstrap-pull-test");
FileUtil.removeAll(dir);
RandomSource random = NodeStarter.globalTestInit(dir.getPath(), false,
Logger.ERROR, "");
@@ -94,7 +97,7 @@
FileUtil.writeTo(fis, new File(secondInnerDir, "seednodes.fref"));
fis.close();
PooledExecutor executor = new PooledExecutor();
- Node secondNode = NodeStarter.createTestNode(DARKNET_PORT,
OPENNET_PORT, dir.getPath(), true, false, false, Node.DEFAULT_MAX_HTL, 0,
random, executor, 1000, 5*1024*1024, true, true, true, true, true, true, true,
12*1024, false, true);
+ Node secondNode = NodeStarter.createTestNode(DARKNET_PORT,
OPENNET_PORT, dir.getPath(), true, false, false, Node.DEFAULT_MAX_HTL, 0,
random, executor, 1000, 5*1024*1024, true, true, true, true, true, true, true,
12*1024, false, true, ipOverride);
secondNode.start(true);
waitForTenNodes(secondNode);
Modified: trunk/freenet/src/freenet/node/simulator/BootstrapPushPullTest.java
===================================================================
--- trunk/freenet/src/freenet/node/simulator/BootstrapPushPullTest.java
2008-09-02 17:44:41 UTC (rev 22356)
+++ trunk/freenet/src/freenet/node/simulator/BootstrapPushPullTest.java
2008-09-02 17:47:07 UTC (rev 22357)
@@ -34,6 +34,9 @@
public static int EXIT_FETCH_FAILED = 260;
public static void main(String[] args) throws
InvalidThresholdException, IOException, NodeInitException, InterruptedException
{
+ String ipOverride = null;
+ if(args.length > 0)
+ ipOverride = args[0];
File dir = new File("bootstrap-push-pull-test");
FileUtil.removeAll(dir);
RandomSource random = NodeStarter.globalTestInit(dir.getPath(), false,
Logger.ERROR, "");
@@ -49,7 +52,7 @@
fis.close();
// Create one node
Executor executor = new PooledExecutor();
- Node node = NodeStarter.createTestNode(5000, 5001, dir.getPath(),
true, false, false, Node.DEFAULT_MAX_HTL, 0, random, executor, 1000,
5*1024*1024, true, true, true, true, true, true, true, 12*1024, false, true);
+ Node node = NodeStarter.createTestNode(5000, 5001, dir.getPath(),
true, false, false, Node.DEFAULT_MAX_HTL, 0, random, executor, 1000,
5*1024*1024, true, true, true, true, true, true, true, 12*1024, false, true,
ipOverride);
//NodeCrypto.DISABLE_GROUP_STRIP = true;
//Logger.setupStdoutLogging(Logger.MINOR,
"freenet:NORMAL,freenet.node.NodeDispatcher:MINOR,freenet.node.FNPPacketMangler:MINOR");
Logger.getChain().setThreshold(Logger.ERROR); // kill logging
@@ -91,7 +94,7 @@
FileUtil.writeTo(fis, new File(secondInnerDir, "seednodes.fref"));
fis.close();
executor = new PooledExecutor();
- Node secondNode = NodeStarter.createTestNode(5002, 5003,
dir.getPath(), true, false, false, Node.DEFAULT_MAX_HTL, 0, random, executor,
1000, 5*1024*1024, true, true, true, true, true, true, true, 12*1024, false,
true);
+ Node secondNode = NodeStarter.createTestNode(5002, 5003,
dir.getPath(), true, false, false, Node.DEFAULT_MAX_HTL, 0, random, executor,
1000, 5*1024*1024, true, true, true, true, true, true, true, 12*1024, false,
true, ipOverride);
secondNode.start(true);
waitForTenNodes(secondNode);
Modified: trunk/freenet/src/freenet/node/simulator/BootstrapSeedTest.java
===================================================================
--- trunk/freenet/src/freenet/node/simulator/BootstrapSeedTest.java
2008-09-02 17:44:41 UTC (rev 22356)
+++ trunk/freenet/src/freenet/node/simulator/BootstrapSeedTest.java
2008-09-02 17:47:07 UTC (rev 22357)
@@ -29,6 +29,9 @@
* @throws IOException
*/
public static void main(String[] args) throws
InvalidThresholdException, NodeInitException, InterruptedException, IOException
{
+ String ipOverride = null;
+ if(args.length > 0)
+ ipOverride = args[0];
File dir = new File("bootstrap-test");
FileUtil.removeAll(dir);
RandomSource random = NodeStarter.globalTestInit(dir.getPath(), false,
Logger.ERROR, "");
@@ -44,7 +47,7 @@
fis.close();
// Create one node
Executor executor = new PooledExecutor();
- Node node = NodeStarter.createTestNode(5000, 5001, "bootstrap-test",
true, false, false, Node.DEFAULT_MAX_HTL, 0, random, executor, 1000,
5*1024*1024, true, true, true, true, true, true, true, 12*1024, false, true);
+ Node node = NodeStarter.createTestNode(5000, 5001, "bootstrap-test",
true, false, false, Node.DEFAULT_MAX_HTL, 0, random, executor, 1000,
5*1024*1024, true, true, true, true, true, true, true, 12*1024, false, true,
ipOverride);
//NodeCrypto.DISABLE_GROUP_STRIP = true;
//Logger.setupStdoutLogging(Logger.MINOR,
"freenet:NORMAL,freenet.node.NodeDispatcher:MINOR,freenet.node.FNPPacketMangler:MINOR");
Logger.getChain().setThreshold(Logger.ERROR); // kill logging
Modified: trunk/freenet/src/freenet/node/simulator/RealNodeBusyNetworkTest.java
===================================================================
--- trunk/freenet/src/freenet/node/simulator/RealNodeBusyNetworkTest.java
2008-09-02 17:44:41 UTC (rev 22356)
+++ trunk/freenet/src/freenet/node/simulator/RealNodeBusyNetworkTest.java
2008-09-02 17:47:07 UTC (rev 22357)
@@ -75,7 +75,7 @@
Executor executor = new PooledExecutor();
for(int i=0;i<NUMBER_OF_NODES;i++) {
nodes[i] =
- NodeStarter.createTestNode(5001+i, 0, name, false, true, false,
MAX_HTL, 20 /* 5% */, random, executor, 500*NUMBER_OF_NODES,
(CHKBlock.DATA_LENGTH+CHKBlock.TOTAL_HEADERS_LENGTH)*100, true,
ENABLE_SWAPPING, false, ENABLE_ULPRS, ENABLE_PER_NODE_FAILURE_TABLES,
ENABLE_SWAP_QUEUEING, ENABLE_PACKET_COALESCING, 8000, ENABLE_FOAF, false);
+ NodeStarter.createTestNode(5001+i, 0, name, false, true, false,
MAX_HTL, 20 /* 5% */, random, executor, 500*NUMBER_OF_NODES,
(CHKBlock.DATA_LENGTH+CHKBlock.TOTAL_HEADERS_LENGTH)*100, true,
ENABLE_SWAPPING, false, ENABLE_ULPRS, ENABLE_PER_NODE_FAILURE_TABLES,
ENABLE_SWAP_QUEUEING, ENABLE_PACKET_COALESCING, 8000, ENABLE_FOAF, false, null);
Logger.normal(RealNodeRoutingTest.class, "Created node "+i);
}
Modified:
trunk/freenet/src/freenet/node/simulator/RealNodeNetworkColoringTest.java
===================================================================
--- trunk/freenet/src/freenet/node/simulator/RealNodeNetworkColoringTest.java
2008-09-02 17:44:41 UTC (rev 22356)
+++ trunk/freenet/src/freenet/node/simulator/RealNodeNetworkColoringTest.java
2008-09-02 17:47:07 UTC (rev 22357)
@@ -79,21 +79,21 @@
for(int i=0;i<NUMBER_OF_NODES;i++) {
allNodes[totalNodes] =
subnetA[i] =
- NodeStarter.createTestNode(5001+totalNodes, 0, wd, false, true,
true, MAX_HTL, 0 /* no dropped packets */, random, executor,
500*NUMBER_OF_NODES, storeSize, true, true, false, false, false, false, true,
0, ENABLE_FOAF, false);
+ NodeStarter.createTestNode(5001+totalNodes, 0, wd, false, true,
true, MAX_HTL, 0 /* no dropped packets */, random, executor,
500*NUMBER_OF_NODES, storeSize, true, true, false, false, false, false, true,
0, ENABLE_FOAF, false, null);
totalNodes++;
Logger.normal(RealNodeRoutingTest.class, "Created 'A' node
"+totalNodes);
}
for(int i=0;i<NUMBER_OF_NODES;i++) {
allNodes[totalNodes] =
subnetB[i] =
- NodeStarter.createTestNode(5001+totalNodes, 0, wd,
false, true, true, MAX_HTL, 0 /* no dropped packets */, random, executor,
500*NUMBER_OF_NODES, storeSize, true, true, false, false, false, false, true,
0, ENABLE_FOAF, false);
+ NodeStarter.createTestNode(5001+totalNodes, 0, wd,
false, true, true, MAX_HTL, 0 /* no dropped packets */, random, executor,
500*NUMBER_OF_NODES, storeSize, true, true, false, false, false, false, true,
0, ENABLE_FOAF, false, null);
totalNodes++;
Logger.normal(RealNodeRoutingTest.class, "Created 'B' node
"+totalNodes);
}
for(int i=0;i<BRIDGES;i++) {
allNodes[totalNodes] =
bridges[i] =
- NodeStarter.createTestNode(5001+totalNodes, 0, wd,
false, true, true, MAX_HTL, 0 /* no dropped packets */, random, executor,
500*NUMBER_OF_NODES, storeSize, true, true, false, false, false, false, true,
0,ENABLE_FOAF, false);
+ NodeStarter.createTestNode(5001+totalNodes, 0, wd,
false, true, true, MAX_HTL, 0 /* no dropped packets */, random, executor,
500*NUMBER_OF_NODES, storeSize, true, true, false, false, false, false, true,
0,ENABLE_FOAF, false, null);
totalNodes++;
Logger.normal(RealNodeRoutingTest.class, "Created bridge node
"+totalNodes);
}
Modified: trunk/freenet/src/freenet/node/simulator/RealNodePingTest.java
===================================================================
--- trunk/freenet/src/freenet/node/simulator/RealNodePingTest.java
2008-09-02 17:44:41 UTC (rev 22356)
+++ trunk/freenet/src/freenet/node/simulator/RealNodePingTest.java
2008-09-02 17:47:07 UTC (rev 22357)
@@ -33,8 +33,8 @@
RandomSource random = NodeStarter.globalTestInit("pingtest", false,
Logger.ERROR, "");
// Create 2 nodes
Executor executor = new PooledExecutor();
- Node node1 = NodeStarter.createTestNode(5001, 0, "pingtest", false,
false, true, Node.DEFAULT_MAX_HTL, 0, random, executor, 1000, 65536, true,
false, false, false, false, false, true, 0, false, false);
- Node node2 = NodeStarter.createTestNode(5002, 0, "pingtest", false,
false, true, Node.DEFAULT_MAX_HTL, 0, random, executor, 1000, 65536, true,
false, false, false, false, false, true, 0, false, false);
+ Node node1 = NodeStarter.createTestNode(5001, 0, "pingtest", false,
false, true, Node.DEFAULT_MAX_HTL, 0, random, executor, 1000, 65536, true,
false, false, false, false, false, true, 0, false, false, null);
+ Node node2 = NodeStarter.createTestNode(5002, 0, "pingtest", false,
false, true, Node.DEFAULT_MAX_HTL, 0, random, executor, 1000, 65536, true,
false, false, false, false, false, true, 0, false, false, null);
// Connect
node1.connect(node2);
node2.connect(node1);
Modified:
trunk/freenet/src/freenet/node/simulator/RealNodeRequestInsertTest.java
===================================================================
--- trunk/freenet/src/freenet/node/simulator/RealNodeRequestInsertTest.java
2008-09-02 17:44:41 UTC (rev 22356)
+++ trunk/freenet/src/freenet/node/simulator/RealNodeRequestInsertTest.java
2008-09-02 17:47:07 UTC (rev 22357)
@@ -74,7 +74,7 @@
Executor executor = new PooledExecutor();
for(int i=0;i<NUMBER_OF_NODES;i++) {
nodes[i] =
- NodeStarter.createTestNode(5001+i, 0, name, false, true, false,
MAX_HTL, 20 /* 5% */, random, executor, 500*NUMBER_OF_NODES, 256*1024, true,
ENABLE_SWAPPING, false, ENABLE_ULPRS, ENABLE_PER_NODE_FAILURE_TABLES,
ENABLE_SWAP_QUEUEING, ENABLE_PACKET_COALESCING, 12000, ENABLE_FOAF, false);
+ NodeStarter.createTestNode(5001+i, 0, name, false, true, false,
MAX_HTL, 20 /* 5% */, random, executor, 500*NUMBER_OF_NODES, 256*1024, true,
ENABLE_SWAPPING, false, ENABLE_ULPRS, ENABLE_PER_NODE_FAILURE_TABLES,
ENABLE_SWAP_QUEUEING, ENABLE_PACKET_COALESCING, 12000, ENABLE_FOAF, false,
null);
Logger.normal(RealNodeRoutingTest.class, "Created node "+i);
}
Modified: trunk/freenet/src/freenet/node/simulator/RealNodeRoutingTest.java
===================================================================
--- trunk/freenet/src/freenet/node/simulator/RealNodeRoutingTest.java
2008-09-02 17:44:41 UTC (rev 22356)
+++ trunk/freenet/src/freenet/node/simulator/RealNodeRoutingTest.java
2008-09-02 17:47:07 UTC (rev 22357)
@@ -56,7 +56,7 @@
Executor executor = new PooledExecutor();
for(int i = 0; i < NUMBER_OF_NODES; i++) {
System.err.println("Creating node " + i);
- nodes[i] = NodeStarter.createTestNode(5001 + i, 0, dir,
false, true, true, MAX_HTL, 0 /* no dropped packets */, random, executor, 500 *
NUMBER_OF_NODES, 65536, true, ENABLE_SWAPPING, false, false, false,
ENABLE_SWAP_QUEUEING, true, 0, ENABLE_FOAF, false);
+ nodes[i] = NodeStarter.createTestNode(5001 + i, 0, dir,
false, true, true, MAX_HTL, 0 /* no dropped packets */, random, executor, 500 *
NUMBER_OF_NODES, 65536, true, ENABLE_SWAPPING, false, false, false,
ENABLE_SWAP_QUEUEING, true, 0, ENABLE_FOAF, false, null);
Logger.normal(RealNodeRoutingTest.class, "Created node
" + i);
}
Logger.normal(RealNodeRoutingTest.class, "Created " +
NUMBER_OF_NODES + " nodes");
Modified: trunk/freenet/src/freenet/node/simulator/RealNodeSecretPingTest.java
===================================================================
--- trunk/freenet/src/freenet/node/simulator/RealNodeSecretPingTest.java
2008-09-02 17:44:41 UTC (rev 22356)
+++ trunk/freenet/src/freenet/node/simulator/RealNodeSecretPingTest.java
2008-09-02 17:47:07 UTC (rev 22357)
@@ -66,7 +66,7 @@
for(int i=0;i<NUMBER_OF_NODES;i++) {
nodes[i] =
- NodeStarter.createTestNode(5001+i, 0, wd, false, true, true,
MAX_HTL, 0 /* no dropped packets */, random, executor, 500*NUMBER_OF_NODES,
storeSize, true, true, false, false, false, true, true, 0, true, false);
+ NodeStarter.createTestNode(5001+i, 0, wd, false, true, true,
MAX_HTL, 0 /* no dropped packets */, random, executor, 500*NUMBER_OF_NODES,
storeSize, true, true, false, false, false, true, true, 0, true, false, null);
Logger.normal(RealNodeRoutingTest.class, "Created node "+i);
}
Logger.normal(RealNodeRoutingTest.class, "Created "+NUMBER_OF_NODES+"
nodes");
Modified: trunk/freenet/src/freenet/node/simulator/RealNodeULPRTest.java
===================================================================
--- trunk/freenet/src/freenet/node/simulator/RealNodeULPRTest.java
2008-09-02 17:44:41 UTC (rev 22356)
+++ trunk/freenet/src/freenet/node/simulator/RealNodeULPRTest.java
2008-09-02 17:47:07 UTC (rev 22357)
@@ -93,7 +93,7 @@
Executor executor = new PooledExecutor();
for(int i=0;i<NUMBER_OF_NODES;i++) {
nodes[i] =
- NodeStarter.createTestNode(5000+i, 0, testName, false, true,
true, MAX_HTL, 20 /* 5% */, random, executor, 500*NUMBER_OF_NODES, 1024*1024,
true, ENABLE_SWAPPING, false, ENABLE_ULPRS, ENABLE_PER_NODE_FAILURE_TABLES,
true, true, 0, ENABLE_FOAF, false);
+ NodeStarter.createTestNode(5000+i, 0, testName, false, true,
true, MAX_HTL, 20 /* 5% */, random, executor, 500*NUMBER_OF_NODES, 1024*1024,
true, ENABLE_SWAPPING, false, ENABLE_ULPRS, ENABLE_PER_NODE_FAILURE_TABLES,
true, true, 0, ENABLE_FOAF, false, null);
Logger.normal(RealNodeRoutingTest.class, "Created node "+i);
}
SimpleFieldSet refs[] = new SimpleFieldSet[NUMBER_OF_NODES];
Modified: trunk/freenet/src/freenet/node/simulator/SeednodePingTest.java
===================================================================
--- trunk/freenet/src/freenet/node/simulator/SeednodePingTest.java
2008-09-02 17:44:41 UTC (rev 22356)
+++ trunk/freenet/src/freenet/node/simulator/SeednodePingTest.java
2008-09-02 17:47:07 UTC (rev 22357)
@@ -48,7 +48,7 @@
RandomSource random = NodeStarter.globalTestInit("seednode-pingtest",
false, Logger.ERROR, "");
// Create one node
Executor executor = new PooledExecutor();
- Node node = NodeStarter.createTestNode(5000, 5001, "seednode-pingtest",
true, false, false, Node.DEFAULT_MAX_HTL, 0, random, executor, 1000,
5*1024*1024, true, false, false, false, false, false, false, 0, false, false);
+ Node node = NodeStarter.createTestNode(5000, 5001, "seednode-pingtest",
true, false, false, Node.DEFAULT_MAX_HTL, 0, random, executor, 1000,
5*1024*1024, true, false, false, false, false, false, false, 0, false, false,
null);
// Connect & ping
Vector<SeedServerTestPeerNode> seedNodes = new
Vector<SeedServerTestPeerNode>();
Vector<SimpleFieldSet> seedNodesAsSFS = Announcer.readSeednodes(new
File("/tmp/"));