78 |
system while the test is running. |
system while the test is running. |
79 |
|
|
80 |
We expect that GISP is able to route some queries to their destination peers eventually, |
We expect that GISP is able to route some queries to their destination peers eventually, |
81 |
altough the performance of a lookup is expected to decrease. Also, we except that |
altough the performance of a lookup is expected to decrease (Chord's fault tolerant |
82 |
some of the queries are lost. With this test case, we wish to get more information |
properties). Also, we except that some of the queries are lost. With this test case, we wish |
83 |
how big the lost rate is. |
to get more information how big the lost rate is (Chord's fault tolerant properties). |
84 |
|
|
85 |
Simulation Process: |
Simulation Process: |
86 |
- Create 90 normal peers in the network (ID is in the format "peer1 -peer90") |
- Create 90 normal peers in the network (ID is in the format "peer1 -peer90") |
87 |
- Create 10 "dumb" peers in the network (ID is in the format "dumb1-dumb10") |
- Create 10 "dumb" peers in the network (ID is in the format "dumb1-dumb10") |
88 |
- If necessary, the number of "dumb" peers can be changed (for more "clearer" |
- If necessary, the number of total peers and "dumb" peers can be increased/decreased |
89 |
analysic etc) |
(for "clearer" analysic etc) |
90 |
- Create 100 data items in the network (the format is "key1-100", "value1-100") |
- Create 5000 key/value items in the network (the format is "key1-100", "value1-100") |
91 |
- Perform 100 queries randomly (random peer selection (1-100) and random query |
- Perform 2500 queries randomly with *normal* peers (random peer selection (peer1-100) |
92 |
selection (1-100)) with *normal* peers |
and random query selection (key1-100)) |
93 |
- Try to use same code as in GISP's implementation/simulation base |
- Try to use same code as in GISP's implementation/simulation base |
94 |
- However, for "dumb" peers perhaps we have to create own class |
- For "dumb" peers we have to create own class |
95 |
(extends GISPXML-class) which has "dumb" methods for query |
(extends GISPXML-class) which has "dumb" methods for query |
96 |
forward and processing |
forward and processing |
97 |
- Test case is performed with loop (e.g., while(true) etc) |
- Test case is performed with loop (e.g., while(true) etc) |
98 |
- Update all peers' routing information every loop pass |
- Update all peers' routing information every loop pass |
99 |
- We use org.apache.log4j package for logging information |
- "distributed" peermap is based on Java's HashMap data structure (synchronized) |
100 |
|
- Use org.apache.log4j package for logging information |
101 |
|
|
102 |
Scenario #2 (dynamic "dumb"): |
Scenario #2 (dynamic "dumb"): |
103 |
- Same except that peers join and leave the system dynamically |
- Same except that peers join and leave the system dynamically |