[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
[freehaven-cvs] Add a kazillion new tests
Update of /home/freehaven/cvsroot/doc/e2e-traffic/src
In directory moria.mit.edu:/tmp/cvs-serv19209
Modified Files:
PLAN.3 analyze.py simmain.cpp trials.cpp
Log Message:
Add a kazillion new tests
Index: PLAN.3
===================================================================
RCS file: /home/freehaven/cvsroot/doc/e2e-traffic/src/PLAN.3,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -d -r1.5 -r1.6
--- PLAN.3 18 Jan 2004 07:26:00 -0000 1.5
+++ PLAN.3 19 Jan 2004 01:00:13 -0000 1.6
@@ -1,20 +1,3 @@
-Running: Totoro, Opus, Zermelo, Moria
-
-MIA, returning Sunday: Cassandra
-
-
-case3: have
- HAVE
- AF PD BGVol
- .1: .1 (320,3200') {esox}
- .3: .1 (320,3200) {esox}
- .6: .1 320,3200,32000 {cass}
- .3 320,3200,32000 {cass}
- .6 320,3200 {cass}
- .9: .1 (320,3200,32000) {opus}
- .3 (320,3200,32000) {opus}
- .6 (320,3200) {opus}
- ,3200
A: 10 Jan, 15:10
B: 13 Jan, 13:34
@@ -24,6 +7,78 @@
F: 17 Jan, 12:29
G: 17 Jan, 18:00 -- 6 begun.
H: 18 Jan, 02:12
+I: 18 Jan, 12:15
+J: 18 Jan, 16:34
+
+TO DO:
+ - Implement improved summary measure.
+ - Finish 6
+ - Finish filling gaps in 3,4
+ - Redo clipped cases in 1-2.
+ - Start 5
+
+=====case1 clipped.
+
+ b:5 {1u.1}
+ N:32 m:8 1 [59]
+ N:256 m:16 1 <----->
+ N:2048 m:1..16 5
+ N:4096 m:1..16 5
+ N:16384 m:1..16 5
+ N:65536 m:1..16 5
+ N:131072 m:1..16 5
+ N:1048576 m:1..16 5
+
+ b:25 {1u.1}
+ N:2048 m:1..8 4
+ N:4096 m:1..4 3
+ N:16384 m:1..16 5
+ N:65536 m:1..16 5
+ N:131072 m:1..16 5
+ N:1048576 m:1..16 5
+
+ b:125 {1u.2}
+ N:2048 m:1..4 3 [46]
+ N:4096 m:1..4 3 <----->
+ N:16384 m:1..8 4
+ N:65536 m:1..4 3
+ N:131072 m:1..16 5
+ N:1048576 m:1..16 5
+ b:1000 {1u.2}
+ N:2048 m:1..2 2
+ N:4096 m:1..4 3
+ N:8192 m:1..4 3
+ N:16384 m:1..4 3
+ N:32768 m:1..8 4
+ N:65536 m:1..8 4
+ N:131072 m:1..8 4
+
+======case 2 clipped.
+
+ SG,UG:
+ b:5
+ N:2048 m=1..8, pm:60,90 2*2*4
+ N:4096 m=1..16, pm:60,90 2*2*5
+ N:8192 m=1..16, pm:60,90 2*2*5
+ N:16384 m=1..16, pm:60,90 2*2*5
+ N:65536 m:1..64 pM:90 2*2*7
+ b:25
+ N:2048 m:1..32 pm:90 2*6
+ N:4096 m:1,4,16 pm:90 2*3
+ N:16384 m:1..32 pm:90 2*6
+ N:65536 m:1,4,16 pm:90 2*3
+ N:131072 m:1,2 pm:90 2*2
+ b:125
+ N:4096 m:1,4 pm:90 2*2
+ N:65536 m:1,4,16 pm:90 2*3
+
+ SGW:
+ b:5
+ N:64 m:4 pM:60% 1
+ N:2048 m:1 pM:60,90 1
+ N:4096 m:1,2 pM:60,90 2
+ N:8192 m:1,2 pM:60,90 2
+ N:16384 m:1,2 pM:60,90 2
===case 3.2: timed dyn-pool mix. (esox)
@@ -77,20 +132,26 @@
.6 (320') {opus}
NEED:
AF
- * * (25) 16 (case 3r.1) <cassandra> E:3.82 *4
- F:????
- .1,p.3 * (125) 16 (case 3r.2) <dhcp-14-49>
-
- .1: .3,.6,.9 (320,3200) 6 (case 3r.3) <moria>
- .3: .3,.6,.9 (320,3200) 6 (case 3r.4) <sekrit>
- .6: .9 (320,3200) 2 (case 3r.5) <ariddoch>
+ * * (25) 16 (case 3r.1)
+ .1,p.3 * (125) 16 (case 3r.2)
+ .1: .3,.6,.9 (320,3200) 6 (case 3r.3)
+ .3: .3,.6,.9 (320,3200) 6 (case 3r.4)
+ .6: .9 (320,3200) 2 (case 3r.5)
.9: .9 (320,3200) 2 (case 3r.5)
ADDED (E):
.6,.9: * (25) 8 (case 3r.1.1) <opus> F: 7.09
H: 7.27
- .3,.6,.9: * (125) 12 (case 3r.2.1) <zermelo> F: 7.47
- H:11.04
+ I: 7.39
+ J:
+ .3,.6,.9: * (125) 12 (case 3r.2.1)
+ .3: .9 (25) 1 (case 3r.1.2) <cassandra>I:0 J:0.19
+ (done about 11:00Mon)
+ MORE:
+ .4,.5,.7, .1,.3,.6,.9 125 12 (case 3r.6) <zermelo> I:0 J:1.61
+ (done > 21:30Mon)
+ .4,.5,.7, .1,.3,.6,.9 25 12 (case 3r.7) <ariddoch> I:0 J:1.47
+ (done > 23:30Mon)
===case 4: mixnet
Fix N=65536, m=32, strategy=SG
@@ -109,18 +170,26 @@
2: .1,.6,.9 .1,.6 6 (case4r.1) <totoro> {E:2.77} *2
{F:4.21}
{H:4.27}
- 4: .1,.6,.9 .1,.6 6 (case4r.2) <cannabis>
- 8: .1,.6,.9 .1 3 (case4r.3.1) <esox2?> <ARGH>
- 8: .1,.6,.9 .6 3 (case4r.3.2) <zermello>
+ {I:4.31}
+ J:4.33
+ (Done about...um...next sunday. NG. Stop on Monday, use samples)
+ 4: .1,.6,.9 .1,.6 6 (case4r.2)
+ 8: .1,.6,.9 .1 3 (case4r.3.1)
+ 8: .1,.6,.9 .6 3 (case4r.3.2)
ADDED (E):
- 8: .9 .1 1 (case4r.3.1.1) <esox1 covers esox2>
- 4: .9 .1,.6 2 (case4r.2.1) <novalis covers cannabis>
+ 8: .9 .1 1 (case4r.3.1.1)
+ 4: .9 .1,.6 2 (case4r.2.1)
- ADDED (F):
- 8, .1,.6 .1 2 (case4r.3.1.2) <moria> H:0
+ ADDED (H):
+ 8: .1,.6 .1 2 (case4r.3.1.2) <dhcp14-49> H:0 I:0.46 J:0.68
+ (done about 18:00,mon?)
-===case 5: impact of dummies
+ 2,4,8 .4 .1,.6 6 (case4r.4) <novalis> Sn17:17->0
+ 2,4,8 .5 .1,.6 6 (case4r.5) <esox1> Sn19:16->0
+ 2,4,8 .7 .1,.6 6 (case4r.6) <cannabis>Sn20:00->0
+
+===case 5b: impact of dummies
Fix N,m,strategy as above.
Fix mix alg pDelay, path length, bg vol based on 4.
@@ -137,6 +206,7 @@
pD, pad pOnline
+
===case 6: impact of partial
@@ -150,18 +220,19 @@
pObserve=1.00{done},.99,.95,.90,.85,.80,.70,.60,.50
pD PO
- .6 .99,.95,.90,.85 (case6.1) cannabis G:0 H:1.21
- .1 .99,.95,.90,.85 (case6.2) ariddoch G:0 H:3.10
- .6 .80,.70 (case6.3) novalis G:0 H:DONE
- .1 .80,.60 (case6.4) sekrit G:0 H:DONE
- .6 .60,.50 (case6.5) esox1 G:0 H:1.15
- .1 .60,.50 (case6.6) dhcp14-49 G:0 H:DONE
- .6 .40,.30,.20 (case6.7)
- .1 .40,.30,.20 (case6.8)
- .6 .10,.05 (case6.9)
- .1 .10,.05 (case6.10)
-
-
- unused: esox2, cassandra (!!)
+ .6 .99,.95,.90,.85 (case6.1)
+ .1 .99,.95,.90,.85 (case6.2)
+ .6 .80,.70 (case6.3)
+ .1 .80,.60 (case6.4)
+ .6 .60,.50 (case6.5)
+ .1 .60,.50 (case6.6)
+ .6 .40,.30,.20 (case6.7) moria H:0 I:0.48 J:.68<stop at 1.0>
+ (done about 0:00Mon)
+ .6 .30,.20 (case6.7.1)sekrit I:0 J:0.37
+ (done about 11:00Mon)
+ .1 .40,.30,.20 (case6.8) novalis
+ .6 .10,.05 (case6.9) sekrit
+ .1 .10,.05 (case6.10) esox2 H:0 I:0.02 J:0.03
+ (done about 3:00Mon)
===case 7: pseudonymity
\ No newline at end of file
Index: analyze.py
===================================================================
RCS file: /home/freehaven/cvsroot/doc/e2e-traffic/src/analyze.py,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- analyze.py 17 Jan 2004 22:21:19 -0000 1.2
+++ analyze.py 19 Jan 2004 01:00:13 -0000 1.3
@@ -52,7 +52,6 @@
def getPMsg(self):
return self.p[3]/100.0
-
class MixTrialParams(Params):
def __init__(self,**test):
self.p = (test['N'],
@@ -60,11 +59,12 @@
test['l'],
int(test['pMessage']*100),
int(test['pDelay']*100),
- test['bgVolume'])
+ test['bgVolume'],
+ int(test['pObserve']*100))
def disp(self):
- N,m,l,pA,pD,bgV=self.p
- return ("N:%5d m:%3d l:%1d pA:%2s%% pD:%2s%% bg:%5d"
- %(N,m,l,pA,pD,bgV))
+ N,m,l,pA,pD,bgV,pO=self.p
+ return ("N:%5d m:%3d l:%1d pA:%2s%% pD:%2s%% bg:%5d pO:%2d%%"
+ %(N,m,l,pA,pD,bgV,pO))
def getM(self):
return self.p[1]
def getPMsg(self):
Index: simmain.cpp
===================================================================
RCS file: /home/freehaven/cvsroot/doc/e2e-traffic/src/simmain.cpp,v
retrieving revision 1.23
retrieving revision 1.24
diff -u -d -r1.23 -r1.24
--- simmain.cpp 18 Jan 2004 07:26:00 -0000 1.23
+++ simmain.cpp 19 Jan 2004 01:00:13 -0000 1.24
@@ -133,6 +133,76 @@
}
}
+
+void trial1u_base(int batchSize, int nRecips, int nAMin, int nAMax)
+{
+ // unclip 1.1u
+
+ for (int nAR = nAMin; nAR <= nAMax; nAR *= 4) {
+ SDTrialSpec s;
+ s.setNRecipients(nRecips);
+ s.setAliceRecipients(nAR);
+ s.setBatchSize(batchSize);
+ s.setCutoff(5000);
+ s.setGranularity(5);
+ int nBad = 0;
+ int nGood = 0;
+ for (int i = 1; i <= 100; ++i) {
+ s.write(std::cout);
+ std::cout << "\"" << i << "/" << 100 << "\"" << std::endl;
+ SDTrial trial(s);
+ TrialResult res = trial.attempt();
+ std::cout << res << std::endl << std::endl;
+ if (res.failed)
+ ++nBad;
+ else
+ ++nGood;
+ if (nBad >= 5 && nGood < nBad/2) {
+ break;
+ }
+ }
+ }
+}
+
+void trial1u_1()
+{
+ trial1u_base(5,32,8,8);
+ trial1u_base(5,256,16,16);
+ trial1u_base(5,2048,1,16);
+ trial1u_base(5,4096,1,16);
+ trial1u_base(5,8192,1,16);
+ trial1u_base(5,16384,1,16);
+ trial1u_base(5,65536,1,16);
+ trial1u_base(5,131072,1,16);
+ trial1u_base(5,1048576,1,16);
+
+ trial1u_base(25,2048,1,8);
+ trial1u_base(25,4096,1,4);
+ trial1u_base(25,8192,1,16);
+ trial1u_base(25,16384,1,16);
+ trial1u_base(25,65536,1,16);
+ trial1u_base(25,131072,1,16);
+ trial1u_base(25,1048576,1,16);
+}
+
+void trial1u_2()
+{
+ trial1u_base(125,2048,1,4);
+ trial1u_base(125,4096,1,4);
+ trial1u_base(125,16384,1,8);
+ trial1u_base(125,65536,1,4);
+ trial1u_base(125,131072,1,16);
+ trial1u_base(125,1048576,1,16);
+
+ trial1u_base(1000,2048,1,2);
+ trial1u_base(1000,4096,1,4);
+ trial1u_base(1000,8192,1,4);
+ trial1u_base(1000,16384,1,4);
+ trial1u_base(1000,65536,1,8);
+ trial1u_base(1000,131072,1,8);
+ trial1u_base(1000,1048576,1,8);
+}
+
void trial2()
{
const double pMsgAlice[] = { 0.6, 0.9, 0.99 };
@@ -383,6 +453,9 @@
}
}
}
+void trial3r_1_2() {
+ trial3_base(.3, .9, 25);
+}
void trial3r_2() {
const double pAlice[] = { .1, .3, .6, .9 };
const double pDelay[] = { .1, .3, .6, .9 };
@@ -448,6 +521,36 @@
trial3_base(.9, .9, 3200);
}
+void trial3r_6() {
+ trial3_base(.4, .1, 125);
+ trial3_base(.5, .1, 125);
+ trial3_base(.7, .1, 125);
+ trial3_base(.4, .3, 125);
+ trial3_base(.5, .3, 125);
+ trial3_base(.7, .3, 125);
+ trial3_base(.4, .6, 125);
+ trial3_base(.5, .6, 125);
+ trial3_base(.7, .6, 125);
+ trial3_base(.4, .9, 125);
+ trial3_base(.5, .9, 125);
+ trial3_base(.7, .9, 125);
+}
+
+void trial3r_7() {
+ trial3_base(.4, .1, 25);
+ trial3_base(.5, .1, 25);
+ trial3_base(.7, .1, 25);
+ trial3_base(.4, .3, 25);
+ trial3_base(.5, .3, 25);
+ trial3_base(.7, .3, 25);
+ trial3_base(.4, .6, 25);
+ trial3_base(.5, .6, 25);
+ trial3_base(.7, .6, 25);
+ trial3_base(.4, .9, 25);
+ trial3_base(.5, .9, 25);
+ trial3_base(.7, .9, 25);
+}
+
void trial4_base(double pMsgA, double pDel, int pathlen, int bgVol=320)
{
MixTrialSpec s;
@@ -463,7 +566,7 @@
.setPObserve(1.0)
.setPDummy(0.0);
- s.setGranularity(50);
+ s.setGranularity(25);
s.setCutoff(1500000);
int nBad = 0;
@@ -553,6 +656,35 @@
trial4_base(.9, .6, 8, 125);
}
+void trial4r_4()
+{
+ trial4_base(.4, .1, 2, 125);
+ trial4_base(.4, .1, 4, 125);
+ trial4_base(.4, .1, 8, 125);
+ trial4_base(.4, .6, 2, 125);
+ trial4_base(.4, .6, 4, 125);
+ trial4_base(.4, .6, 8, 125);
+}
+void trial4r_5()
+{
+ trial4_base(.5, .1, 2, 125);
+ trial4_base(.5, .1, 4, 125);
+ trial4_base(.5, .1, 8, 125);
+ trial4_base(.5, .6, 2, 125);
+ trial4_base(.5, .6, 4, 125);
+ trial4_base(.5, .6, 8, 125);
+}
+void trial4r_6()
+{
+ trial4_base(.7, .1, 2, 125);
+ trial4_base(.7, .1, 4, 125);
+ trial4_base(.7, .1, 8, 125);
+ trial4_base(.7, .6, 2, 125);
+ trial4_base(.7, .6, 4, 125);
+ trial4_base(.7, .6, 8, 125);
+}
+
+
void trial5b_base(double pMsgA, double pDelay, int nPad, double pOnline)
{
MixTrialSpec s;
@@ -665,6 +797,13 @@
trial6_base(.6,.30);
trial6_base(.6,.20);
}
+
+void trial6_7_1(void) {
+ trial6_base(.6,.30);
+ trial6_base(.6,.20);
+}
+
+
void trial6_8(void) {
trial6_base(.1,.40);
trial6_base(.1,.30);
@@ -689,6 +828,9 @@
{ "1", trial1 },
{ "1.1", trial1_1 },
{ "1.1.1", trial1_1_1 },
+ { "1u.1", trial1u_1 },
+ { "1u.2", trial1u_2 },
+
{ "2", trial2 },
{ "2.1", trial2_1 },
{ "2.1.1", trial2_1_1 },
@@ -704,11 +846,15 @@
{ "4.2", trial4_2 },
{ "3r.1", trial3r_1 },
{ "3r.1.1", trial3r_1_1 },
+ { "3r.1.2", trial3r_1_2 },
{ "3r.2", trial3r_2 },
{ "3r.2.1", trial3r_2_1 },
{ "3r.3", trial3r_3 },
{ "3r.4", trial3r_4 },
{ "3r.5", trial3r_5 },
+ { "3r.6", trial3r_6 },
+ { "3r.7", trial3r_7 },
+
{ "4r.1", trial4r_1 },
{ "4r.2", trial4r_2 },
{ "4r.2.1", trial4r_2_1 },
@@ -716,6 +862,9 @@
{ "4r.3.1.1", trial4r_3_1_1 },
{ "4r.3.1.2", trial4r_3_1_2 },
{ "4r.3.2", trial4r_3_2 },
+ { "4r.4", trial4r_4 },
+ { "4r.5", trial4r_5 },
+ { "4r.6", trial4r_6 },
{ "6.1", trial6_1 },
{ "6.2", trial6_2 },
@@ -724,6 +873,7 @@
{ "6.5", trial6_5 },
{ "6.6", trial6_6 },
{ "6.7", trial6_7 },
+ { "6.7.1", trial6_7_1 },
{ "6.8", trial6_8 },
{ "6.9", trial6_9 },
{ "6.10", trial6_10 },
Index: trials.cpp
===================================================================
RCS file: /home/freehaven/cvsroot/doc/e2e-traffic/src/trials.cpp,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -d -r1.12 -r1.13
--- trials.cpp 8 Jan 2004 03:57:30 -0000 1.12
+++ trials.cpp 19 Jan 2004 01:00:13 -0000 1.13
@@ -34,6 +34,7 @@
{
TrialResult res;
unsigned int nGuessed = 0;
+ int gran = granularity;
res.roundsToGuessN.reserve(truth.size()+1);
res.roundsToGuessN.push_back(0);
@@ -58,7 +59,9 @@
//std::cout << n << " "<< aTraffic << std::endl;
mixnet->addRound(trafficIn, nAlice, nBatch-nAlice, attacker);
++n;
- if (!(n % granularity)) {
+ if (!(n % gran)) {
+ if (n>=(gran*20) && gran <= granularity*128)
+ gran *= 2;
if (n>cutoff) {
res.failed = true;
res.nRounds = n;
@@ -98,7 +101,9 @@
SDTrialSpec::write(std::ostream &o) const
{
o << "SDTrial(b=" << batchSize << ",m="<< nAliceRecipients
- << ",N=" << nRecipients << ")" << std::endl;
+ << ",N=" << nRecipients <<
+ << ",granularity=" <<granularity
+ << ")" << std::endl;
}
Trial *
@@ -149,7 +154,9 @@
else
o << "\"";
o << ",pMessage=" << pMsgAlice << ",pDummy=" << pDummyAlice
- << ",paddingLevel="<< paddingLevel << ")" << std::endl;
+ << ",paddingLevel="<< paddingLevel <<
+ << ",granularity="<<granularity
+ ")" << std::endl;
// XXX paddingLevel is wrong, so include it when it's right.
}
@@ -287,7 +294,9 @@
<< ",bgVolume=" << bgVolMean << ",bgVolumeStdDev=" << bgVolDev
<< ",pObserve=" << pObserve << ",pading="<<padding
<< ",pOnline=" << pOnline << ",pMessage="<<pMessage
- << ",pDummy=" << pDummy << ")" << std::endl;
+ << ",pDummy=" << pDummy <<
+ << ",granularity=" << granularity
+ << ")" << std::endl;
// padding XXX all other vars.
}
***********************************************************************
To unsubscribe, send an e-mail to majordomo@seul.org with
unsubscribe freehaven-cvs in the body. http://freehaven.net/