Simple module of the DHT
Author: Gregoire Menuel, Ingmar Baumgart
The following diagram shows usage relationships between types. Unresolved types are missing from the diagram. Click here to see the full picture.
The following diagram shows inheritance relationships for this type. Unresolved types are missing from the diagram. Click here to see the full picture.
Name | Type | Description |
---|---|---|
BaseApp | simple module |
Base class for application implementations |
Name | Type | Description |
---|---|---|
DHTModules | compound module |
Compound module for a simple DHT using the KBR interface |
Name | Type | Default value | Description |
---|---|---|---|
rpcUdpTimeout | double |
default timeout value for direct RPCs |
|
rpcKeyTimeout | double |
default timeout value for routed RPCs |
|
optimizeTimeouts | bool |
calculate timeouts from measured RTTs and network coordinates |
|
rpcExponentialBackoff | bool |
if true, doubles the timeout for every retransmission |
|
debugOutput | bool |
enable debug output |
|
numReplica | int |
number of replica for stored data records |
|
numGetRequests | int |
number of queried replica for get requests |
|
ratioIdentical | double |
ratio of identical replica needed for a valid result |
|
secureMaintenance | bool |
use a secure maintenance algorithm based on majority decisions |
|
invalidDataAttack | bool |
if node is malicious, it tries a invalidData attack |
|
maintenanceAttack | bool |
if node is malicious, it tries a maintenance attack |
Name | Value | Description |
---|---|---|
class | DHT | |
display | i=block/app |
Name | Direction | Size | Description |
---|---|---|---|
udpIn | input |
gate from the UDP layer |
|
from_lowerTier | input |
gate from the lower tier |
|
from_upperTier | input |
gate from the upper tier |
|
direct_in | input |
gate for sendDirect |
|
trace_in | input |
gate for trace file commands |
|
tcpIn | input |
gate from the TCP layer |
|
tcpOut | output |
gate to the TCP layer |
|
udpOut | output |
gate to the UDP layer |
|
to_lowerTier | output |
gate to the lower tier |
|
to_upperTier | output |
gate to the upper tier |
// // Simple module of the DHT // // @author Gregoire Menuel, Ingmar Baumgart // simple DHT extends BaseApp { parameters: @class(DHT); int numReplica; // number of replica for stored data records int numGetRequests; // number of queried replica for get requests double ratioIdentical; // ratio of identical replica needed for a valid result bool secureMaintenance; // use a secure maintenance algorithm based on majority decisions bool invalidDataAttack; // if node is malicious, it tries a invalidData attack bool maintenanceAttack; // if node is malicious, it tries a maintenance attack }