@streamr/dht 100.0.0-testnet-three.3 → 100.0.0-testnet-three.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +90 -8
- package/dist/package.json +5 -5
- package/dist/src/connection/ConnectionManager.js +10 -2
- package/dist/src/connection/ConnectionManager.js.map +1 -1
- package/dist/src/connection/connectivityRequestHandler.d.ts +1 -0
- package/dist/src/connection/connectivityRequestHandler.js +15 -2
- package/dist/src/connection/connectivityRequestHandler.js.map +1 -1
- package/dist/src/connection/websocket/WebsocketConnector.js +32 -37
- package/dist/src/connection/websocket/WebsocketConnector.js.map +1 -1
- package/package.json +5 -5
- package/src/connection/ConnectionManager.ts +9 -2
- package/src/connection/connectivityRequestHandler.ts +14 -1
- package/src/connection/websocket/WebsocketConnector.ts +33 -37
- package/test/end-to-end/Layer0Webrtc-Layer1.test.ts +8 -4
- package/test/end-to-end/memory-leak.test.ts +3 -3
- package/test/integration/RouteMessage.test.ts +5 -5
- package/test/unit/LocalDataStore.test.ts +2 -2
- package/test/unit/PeerManager.test.ts +1 -1
- package/test/unit/connectivityRequestHandler.test.ts +39 -6
package/README.md
CHANGED
|
@@ -1,17 +1,99 @@
|
|
|
1
|
-
# @streamr/dht
|
|
1
|
+
# @streamr/dht
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
A connectionful Kademlia based P2P distributed hash table (DHT). Implements an in-memory key-value data store where multiple creators of data store values behind a single key. The library is entirely browser compatible.
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
All communication between peers utilizes [protobuf](https://protobuf.dev/), transported with the help of the custom `@streamr/proto-rpc` library.
|
|
6
6
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
7
|
+
Connections in the DHT are established using WebSocket or WebRTC connections. The nodes will decide internally based on peers' connectivity information which connection types to use.
|
|
8
|
+
|
|
9
|
+
The DHT also provides an interface for sending messages from peer to peer with the `DhtNode#send` function. The sent message is routed over the network to the target node.
|
|
10
|
+
|
|
11
|
+
## Running a node
|
|
12
|
+
|
|
13
|
+
Running a bare DhtNode in the Streamr Network is heavily discouraged as it requires advanced configuration. However, if you do wish to run a node here are some recommended configurations.
|
|
14
|
+
|
|
15
|
+
(the following values are examples. For working production or test values check the streamr-client's default network configuration)
|
|
16
|
+
|
|
17
|
+
```js
|
|
18
|
+
const DhtNode = new DhtNode({
|
|
19
|
+
// Add a list of known entry points to the network
|
|
20
|
+
entryPoints: [{
|
|
21
|
+
kademliaId: new Uint8Array([1, 2, 3])
|
|
22
|
+
}],
|
|
23
|
+
// a list of STUN and TURN servers. Critically important when opening webrtc conenctions behind NATs.
|
|
24
|
+
iceServers: [{
|
|
25
|
+
url: "stun.l.google.com",
|
|
26
|
+
port: 19302
|
|
27
|
+
}],
|
|
28
|
+
// A range of ports that the node will attempt to start a WebSocket server in. If you wish to use an exact port give equal values to min and max. If left unspecified the node will start without a server.
|
|
29
|
+
websocketPortRange: {
|
|
30
|
+
min: 30000,
|
|
31
|
+
max: 30500
|
|
32
|
+
},
|
|
33
|
+
...
|
|
34
|
+
})
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
## WebSocket Server TLS configuration
|
|
38
|
+
|
|
39
|
+
Setting up TLS is important if you wish to allow nodes running in the browser to connect to your node over websocket. If left unconfigured webrtc connections will be used in such cases.
|
|
40
|
+
|
|
41
|
+
There two ways to configure TLS for a DhtNode's WS server.
|
|
42
|
+
|
|
43
|
+
### Auto-certification
|
|
44
|
+
|
|
45
|
+
When starting a node configure it to automatically fetch TLS certificates for a randomly generated domain name as such:
|
|
46
|
+
|
|
47
|
+
```js
|
|
48
|
+
const DhtNode = new DhtNode({
|
|
49
|
+
...
|
|
50
|
+
websocketServerEnableTls: true,
|
|
51
|
+
autoCertifierUrl: 'http://example-autocertifier-url:30000/',
|
|
52
|
+
autoCertifierConfigFile: '~/.streamr/certificate.json'
|
|
53
|
+
...
|
|
54
|
+
})
|
|
10
55
|
```
|
|
11
56
|
|
|
12
|
-
|
|
57
|
+
### Custom TLS configuration
|
|
58
|
+
|
|
59
|
+
If you have your own domain name and/or TLS certificates you can configure the node to use them as follows:
|
|
60
|
+
|
|
61
|
+
```js
|
|
62
|
+
const DhtNode = new DhtNode({
|
|
63
|
+
tlsCertificate: {
|
|
64
|
+
certFileName: 'path/to/file'
|
|
65
|
+
privateKeyFileName: 'path/to/file'
|
|
66
|
+
},
|
|
67
|
+
websocketHost: 'custom-domain.com' // If using a custom domain name give it here to ensure that connectivity checking is correctly pointed to the server
|
|
68
|
+
})
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
### Setting up a custom DHT network
|
|
72
|
+
|
|
73
|
+
To setup a custom DHT network outside the Streamr Networks Mumbai or Polygon environments, you simply need to set up one or multiple entry point DhtNodes to the network and point all newly joining DhtNodes to them. It is also a good idea to configure the entry points to know each other. This makes it possible to restart them without causing network partitioning.
|
|
74
|
+
|
|
75
|
+
## Development
|
|
76
|
+
|
|
77
|
+
### local testing and develpment setup
|
|
78
|
+
|
|
79
|
+
When running a node for testing or develpment a few configurations are important.
|
|
80
|
+
|
|
81
|
+
```js
|
|
82
|
+
const DhtNode = new DhtNode({
|
|
83
|
+
entryPoints: [], // Point this to your local dev entry point!
|
|
84
|
+
iceServers: [], // Keep empty to ensure webrtc connections are local
|
|
85
|
+
webrtcAllowPrivateAddresses: true, // Make sure that the value is true in local develpment
|
|
86
|
+
websocketServerEnableTls: false, // Keep as false to ensure that auto-certification is not attempted
|
|
87
|
+
websocketHost: '127.0.0.1', // Use 127.0.0.1 instead of localhost during develpment!
|
|
88
|
+
})
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
### Generating Protobuf code
|
|
92
|
+
|
|
93
|
+
After making changes to the protobuf definitions you should regenerate the protobuf code with the following command.
|
|
94
|
+
|
|
13
95
|
```bash
|
|
14
|
-
npm run
|
|
96
|
+
npm run generate-protoc-code
|
|
15
97
|
# Or
|
|
16
98
|
./proto.sh
|
|
17
99
|
```
|
package/dist/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@streamr/dht",
|
|
3
|
-
"version": "100.0.0-testnet-three.
|
|
3
|
+
"version": "100.0.0-testnet-three.5",
|
|
4
4
|
"description": "Streamr Network DHT",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -30,9 +30,9 @@
|
|
|
30
30
|
"dependencies": {
|
|
31
31
|
"@protobuf-ts/runtime": "^2.8.2",
|
|
32
32
|
"@protobuf-ts/runtime-rpc": "^2.8.2",
|
|
33
|
-
"@streamr/autocertifier-client": "100.0.0-testnet-three.
|
|
34
|
-
"@streamr/proto-rpc": "100.0.0-testnet-three.
|
|
35
|
-
"@streamr/utils": "100.0.0-testnet-three.
|
|
33
|
+
"@streamr/autocertifier-client": "100.0.0-testnet-three.5",
|
|
34
|
+
"@streamr/proto-rpc": "100.0.0-testnet-three.5",
|
|
35
|
+
"@streamr/utils": "100.0.0-testnet-three.5",
|
|
36
36
|
"eventemitter3": "^5.0.0",
|
|
37
37
|
"heap": "^0.2.6",
|
|
38
38
|
"ipaddr.js": "^2.0.1",
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
},
|
|
45
45
|
"devDependencies": {
|
|
46
46
|
"@streamr/browser-test-runner": "^0.0.1",
|
|
47
|
-
"@streamr/test-utils": "100.0.0-testnet-three.
|
|
47
|
+
"@streamr/test-utils": "100.0.0-testnet-three.5",
|
|
48
48
|
"@types/express": "^4.17.21",
|
|
49
49
|
"@types/heap": "^0.2.34",
|
|
50
50
|
"@types/k-bucket": "^5.0.1",
|
|
@@ -127,8 +127,16 @@ class ConnectionManager extends eventemitter3_1.EventEmitter {
|
|
|
127
127
|
allowToContainReferenceId: false,
|
|
128
128
|
emitEvents: false
|
|
129
129
|
});
|
|
130
|
-
this.connections.forEach((connection) => {
|
|
131
|
-
|
|
130
|
+
this.connections.forEach((connection, key) => {
|
|
131
|
+
// TODO: Investigate why multiple invalid WS client connections to the same
|
|
132
|
+
// server with a different nodeId can remain in the this.connections map.
|
|
133
|
+
// Seems to only happen if the ConnectionManager acting as client is not running a WS server itself.
|
|
134
|
+
if (connection.getPeerDescriptor() !== undefined && !this.hasConnection((0, identifiers_1.getNodeIdFromPeerDescriptor)(connection.getPeerDescriptor()))) {
|
|
135
|
+
logger.trace(`Attempting to disconnect a hanging connection to ${(0, identifiers_1.getNodeIdFromPeerDescriptor)(connection.getPeerDescriptor())}`);
|
|
136
|
+
connection.close(false).catch(() => { });
|
|
137
|
+
this.connections.delete(key);
|
|
138
|
+
}
|
|
139
|
+
else if (!this.locks.isLocked(connection.getNodeId()) && Date.now() - connection.getLastUsed() > lastUsedLimit) {
|
|
132
140
|
logger.trace('disconnecting in timeout interval: ' + (0, exports.getNodeIdOrUnknownFromPeerDescriptor)(connection.getPeerDescriptor()));
|
|
133
141
|
disconnectionCandidates.addContact(connection);
|
|
134
142
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConnectionManager.js","sourceRoot":"","sources":["../../../src/connection/ConnectionManager.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ConnectionManager.js","sourceRoot":"","sources":["../../../src/connection/ConnectionManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.attachConnectivityRequestHandler = void 0;
|
|
3
|
+
exports.attachConnectivityRequestHandler = exports.DISABLE_CONNECTIVITY_PROBE = void 0;
|
|
4
4
|
const utils_1 = require("@streamr/utils");
|
|
5
5
|
const uuid_1 = require("uuid");
|
|
6
6
|
const DhtRpc_1 = require("../proto/packages/dht/protos/DhtRpc");
|
|
@@ -8,6 +8,7 @@ const ConnectionManager_1 = require("./ConnectionManager");
|
|
|
8
8
|
const connectivityChecker_1 = require("./connectivityChecker");
|
|
9
9
|
const WebsocketConnector_1 = require("./websocket/WebsocketConnector");
|
|
10
10
|
const package_json_1 = require("../../package.json");
|
|
11
|
+
exports.DISABLE_CONNECTIVITY_PROBE = 0;
|
|
11
12
|
const logger = new utils_1.Logger(module);
|
|
12
13
|
const attachConnectivityRequestHandler = (connectionToListenTo) => {
|
|
13
14
|
connectionToListenTo.on('data', async (data) => {
|
|
@@ -34,7 +35,19 @@ exports.attachConnectivityRequestHandler = attachConnectivityRequestHandler;
|
|
|
34
35
|
const handleIncomingConnectivityRequest = async (connection, connectivityRequest) => {
|
|
35
36
|
const host = connectivityRequest.host ?? connection.getRemoteAddress();
|
|
36
37
|
const ipAddress = connection.getRemoteIp();
|
|
37
|
-
|
|
38
|
+
let connectivityResponse;
|
|
39
|
+
if (connectivityRequest.port !== exports.DISABLE_CONNECTIVITY_PROBE) {
|
|
40
|
+
connectivityResponse = await connectivityProbe(connectivityRequest, ipAddress, host);
|
|
41
|
+
}
|
|
42
|
+
else {
|
|
43
|
+
logger.trace('ConnectivityRequest port is 0, replying without connectivityProbe');
|
|
44
|
+
connectivityResponse = {
|
|
45
|
+
host,
|
|
46
|
+
natType: ConnectionManager_1.NatType.UNKNOWN,
|
|
47
|
+
ipAddress: (0, utils_1.ipv4ToNumber)(ipAddress),
|
|
48
|
+
version: package_json_1.version
|
|
49
|
+
};
|
|
50
|
+
}
|
|
38
51
|
const msg = {
|
|
39
52
|
serviceId: connectivityChecker_1.CONNECTIVITY_CHECKER_SERVICE_ID,
|
|
40
53
|
messageType: DhtRpc_1.MessageType.CONNECTIVITY_RESPONSE,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connectivityRequestHandler.js","sourceRoot":"","sources":["../../../src/connection/connectivityRequestHandler.ts"],"names":[],"mappings":";;;AAAA,0CAAqD;AACrD,+BAAyB;AACzB,gEAG4C;AAC5C,2DAA6C;AAC7C,+DAAqF;AAGrF,uEAAiF;AACjF,qDAA4D;
|
|
1
|
+
{"version":3,"file":"connectivityRequestHandler.js","sourceRoot":"","sources":["../../../src/connection/connectivityRequestHandler.ts"],"names":[],"mappings":"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"}
|
|
@@ -157,50 +157,45 @@ class WebsocketConnector {
|
|
|
157
157
|
}
|
|
158
158
|
}
|
|
159
159
|
async checkConnectivity(selfSigned) {
|
|
160
|
-
// TODO: this could throw
|
|
161
|
-
const noServerConnectivityResponse = {
|
|
162
|
-
host: '127.0.0.1',
|
|
163
|
-
natType: ConnectionManager_1.NatType.UNKNOWN,
|
|
164
|
-
ipAddress: (0, utils_1.ipv4ToNumber)('127.0.0.1'),
|
|
165
|
-
version: package_json_1.version
|
|
166
|
-
};
|
|
160
|
+
// TODO: this could throw?
|
|
167
161
|
if (this.abortController.signal.aborted) {
|
|
168
|
-
return
|
|
162
|
+
return {
|
|
163
|
+
host: '127.0.0.1',
|
|
164
|
+
natType: ConnectionManager_1.NatType.UNKNOWN,
|
|
165
|
+
ipAddress: (0, utils_1.ipv4ToNumber)('127.0.0.1'),
|
|
166
|
+
version: package_json_1.version
|
|
167
|
+
};
|
|
168
|
+
}
|
|
169
|
+
if (!this.config.entrypoints || this.config.entrypoints.length === 0) {
|
|
170
|
+
// return connectivity info given in config
|
|
171
|
+
return {
|
|
172
|
+
host: this.host,
|
|
173
|
+
natType: ConnectionManager_1.NatType.OPEN_INTERNET,
|
|
174
|
+
websocket: {
|
|
175
|
+
host: this.host,
|
|
176
|
+
port: this.selectedPort,
|
|
177
|
+
tls: this.config.tlsCertificate !== undefined
|
|
178
|
+
},
|
|
179
|
+
// TODO: Resolve the given host name or or use as is if IP was given.
|
|
180
|
+
ipAddress: (0, utils_1.ipv4ToNumber)('127.0.0.1'),
|
|
181
|
+
version: package_json_1.version
|
|
182
|
+
};
|
|
169
183
|
}
|
|
170
184
|
for (const reattempt of (0, lodash_1.range)(ENTRY_POINT_CONNECTION_ATTEMPTS)) {
|
|
171
185
|
const entryPoint = (0, lodash_1.sample)(this.config.entrypoints);
|
|
172
186
|
try {
|
|
173
|
-
|
|
174
|
-
|
|
187
|
+
// Do real connectivity checking
|
|
188
|
+
const connectivityRequest = {
|
|
189
|
+
port: this.selectedPort ?? connectivityRequestHandler_1.DISABLE_CONNECTIVITY_PROBE,
|
|
190
|
+
host: this.host,
|
|
191
|
+
tls: this.websocketServer ? this.config.serverEnableTls : false,
|
|
192
|
+
selfSigned
|
|
193
|
+
};
|
|
194
|
+
if (!this.abortController.signal.aborted) {
|
|
195
|
+
return await (0, connectivityChecker_1.sendConnectivityRequest)(connectivityRequest, entryPoint, package_json_1.version);
|
|
175
196
|
}
|
|
176
197
|
else {
|
|
177
|
-
|
|
178
|
-
// return connectivity info given in config
|
|
179
|
-
const preconfiguredConnectivityResponse = {
|
|
180
|
-
host: this.host,
|
|
181
|
-
natType: ConnectionManager_1.NatType.OPEN_INTERNET,
|
|
182
|
-
websocket: { host: this.host, port: this.selectedPort, tls: this.config.tlsCertificate !== undefined },
|
|
183
|
-
// TODO: maybe do a DNS lookup here?
|
|
184
|
-
ipAddress: (0, utils_1.ipv4ToNumber)('127.0.0.1'),
|
|
185
|
-
version: package_json_1.version
|
|
186
|
-
};
|
|
187
|
-
return preconfiguredConnectivityResponse;
|
|
188
|
-
}
|
|
189
|
-
else {
|
|
190
|
-
// Do real connectivity checking
|
|
191
|
-
const connectivityRequest = {
|
|
192
|
-
port: this.selectedPort,
|
|
193
|
-
host: this.host,
|
|
194
|
-
tls: this.config.serverEnableTls,
|
|
195
|
-
selfSigned
|
|
196
|
-
};
|
|
197
|
-
if (!this.abortController.signal.aborted) {
|
|
198
|
-
return await (0, connectivityChecker_1.sendConnectivityRequest)(connectivityRequest, entryPoint, package_json_1.version);
|
|
199
|
-
}
|
|
200
|
-
else {
|
|
201
|
-
throw new Err.ConnectionFailed('ConnectivityChecker is destroyed');
|
|
202
|
-
}
|
|
203
|
-
}
|
|
198
|
+
throw new Err.ConnectionFailed('ConnectivityChecker is destroyed');
|
|
204
199
|
}
|
|
205
200
|
}
|
|
206
201
|
catch (err) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WebsocketConnector.js","sourceRoot":"","sources":["../../../../src/connection/websocket/WebsocketConnector.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"WebsocketConnector.js","sourceRoot":"","sources":["../../../../src/connection/websocket/WebsocketConnector.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@streamr/dht",
|
|
3
|
-
"version": "100.0.0-testnet-three.
|
|
3
|
+
"version": "100.0.0-testnet-three.5",
|
|
4
4
|
"description": "Streamr Network DHT",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -30,9 +30,9 @@
|
|
|
30
30
|
"dependencies": {
|
|
31
31
|
"@protobuf-ts/runtime": "^2.8.2",
|
|
32
32
|
"@protobuf-ts/runtime-rpc": "^2.8.2",
|
|
33
|
-
"@streamr/autocertifier-client": "100.0.0-testnet-three.
|
|
34
|
-
"@streamr/proto-rpc": "100.0.0-testnet-three.
|
|
35
|
-
"@streamr/utils": "100.0.0-testnet-three.
|
|
33
|
+
"@streamr/autocertifier-client": "100.0.0-testnet-three.5",
|
|
34
|
+
"@streamr/proto-rpc": "100.0.0-testnet-three.5",
|
|
35
|
+
"@streamr/utils": "100.0.0-testnet-three.5",
|
|
36
36
|
"eventemitter3": "^5.0.0",
|
|
37
37
|
"heap": "^0.2.6",
|
|
38
38
|
"ipaddr.js": "^2.0.1",
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
},
|
|
45
45
|
"devDependencies": {
|
|
46
46
|
"@streamr/browser-test-runner": "^0.0.1",
|
|
47
|
-
"@streamr/test-utils": "100.0.0-testnet-three.
|
|
47
|
+
"@streamr/test-utils": "100.0.0-testnet-three.5",
|
|
48
48
|
"@types/express": "^4.17.21",
|
|
49
49
|
"@types/heap": "^0.2.34",
|
|
50
50
|
"@types/k-bucket": "^5.0.1",
|
|
@@ -153,8 +153,15 @@ export class ConnectionManager extends EventEmitter<TransportEvents> implements
|
|
|
153
153
|
allowToContainReferenceId: false,
|
|
154
154
|
emitEvents: false
|
|
155
155
|
})
|
|
156
|
-
this.connections.forEach((connection) => {
|
|
157
|
-
|
|
156
|
+
this.connections.forEach((connection, key) => {
|
|
157
|
+
// TODO: Investigate why multiple invalid WS client connections to the same
|
|
158
|
+
// server with a different nodeId can remain in the this.connections map.
|
|
159
|
+
// Seems to only happen if the ConnectionManager acting as client is not running a WS server itself.
|
|
160
|
+
if (connection.getPeerDescriptor() !== undefined && !this.hasConnection(getNodeIdFromPeerDescriptor(connection.getPeerDescriptor()!))) {
|
|
161
|
+
logger.trace(`Attempting to disconnect a hanging connection to ${getNodeIdFromPeerDescriptor(connection.getPeerDescriptor()!)}`)
|
|
162
|
+
connection.close(false).catch(() => {})
|
|
163
|
+
this.connections.delete(key)
|
|
164
|
+
} else if (!this.locks.isLocked(connection.getNodeId()) && Date.now() - connection.getLastUsed() > lastUsedLimit) {
|
|
158
165
|
logger.trace('disconnecting in timeout interval: ' + getNodeIdOrUnknownFromPeerDescriptor(connection.getPeerDescriptor()))
|
|
159
166
|
disconnectionCandidates.addContact(connection)
|
|
160
167
|
}
|
|
@@ -11,6 +11,8 @@ import { ServerWebsocket } from './websocket/ServerWebsocket'
|
|
|
11
11
|
import { connectivityMethodToWebsocketUrl } from './websocket/WebsocketConnector'
|
|
12
12
|
import { version as localVersion } from '../../package.json'
|
|
13
13
|
|
|
14
|
+
export const DISABLE_CONNECTIVITY_PROBE = 0
|
|
15
|
+
|
|
14
16
|
const logger = new Logger(module)
|
|
15
17
|
|
|
16
18
|
export const attachConnectivityRequestHandler = (connectionToListenTo: ServerWebsocket): void => {
|
|
@@ -36,7 +38,18 @@ export const attachConnectivityRequestHandler = (connectionToListenTo: ServerWeb
|
|
|
36
38
|
const handleIncomingConnectivityRequest = async (connection: ServerWebsocket, connectivityRequest: ConnectivityRequest): Promise<void> => {
|
|
37
39
|
const host = connectivityRequest.host ?? connection.getRemoteAddress()
|
|
38
40
|
const ipAddress = connection.getRemoteIp()
|
|
39
|
-
|
|
41
|
+
let connectivityResponse: ConnectivityResponse
|
|
42
|
+
if (connectivityRequest.port !== DISABLE_CONNECTIVITY_PROBE) {
|
|
43
|
+
connectivityResponse = await connectivityProbe(connectivityRequest, ipAddress, host)
|
|
44
|
+
} else {
|
|
45
|
+
logger.trace('ConnectivityRequest port is 0, replying without connectivityProbe')
|
|
46
|
+
connectivityResponse = {
|
|
47
|
+
host,
|
|
48
|
+
natType: NatType.UNKNOWN,
|
|
49
|
+
ipAddress: ipv4ToNumber(ipAddress),
|
|
50
|
+
version: localVersion
|
|
51
|
+
}
|
|
52
|
+
}
|
|
40
53
|
const msg: Message = {
|
|
41
54
|
serviceId: CONNECTIVITY_CHECKER_SERVICE_ID,
|
|
42
55
|
messageType: MessageType.CONNECTIVITY_RESPONSE,
|
|
@@ -25,7 +25,7 @@ import { ServerCallContext } from '@protobuf-ts/runtime-rpc'
|
|
|
25
25
|
import { expectedConnectionType } from '../../helpers/Connectivity'
|
|
26
26
|
import { WebsocketServerStartError } from '../../helpers/errors'
|
|
27
27
|
import { AutoCertifierClientFacade } from './AutoCertifierClientFacade'
|
|
28
|
-
import { attachConnectivityRequestHandler } from '../connectivityRequestHandler'
|
|
28
|
+
import { DISABLE_CONNECTIVITY_PROBE, attachConnectivityRequestHandler } from '../connectivityRequestHandler'
|
|
29
29
|
import * as Err from '../../helpers/errors'
|
|
30
30
|
import { Empty } from '../../proto/google/protobuf/empty'
|
|
31
31
|
import { DhtAddress, areEqualPeerDescriptors, getNodeIdFromPeerDescriptor } from '../../identifiers'
|
|
@@ -41,7 +41,6 @@ export const connectivityMethodToWebsocketUrl = (ws: ConnectivityMethod, action?
|
|
|
41
41
|
}
|
|
42
42
|
|
|
43
43
|
const ENTRY_POINT_CONNECTION_ATTEMPTS = 5
|
|
44
|
-
|
|
45
44
|
export interface WebsocketConnectorConfig {
|
|
46
45
|
transport: ITransport
|
|
47
46
|
onNewConnection: (connection: ManagedConnection) => boolean
|
|
@@ -170,47 +169,44 @@ export class WebsocketConnector {
|
|
|
170
169
|
}
|
|
171
170
|
|
|
172
171
|
public async checkConnectivity(selfSigned: boolean): Promise<ConnectivityResponse> {
|
|
173
|
-
// TODO: this could throw
|
|
174
|
-
const noServerConnectivityResponse: ConnectivityResponse = {
|
|
175
|
-
host: '127.0.0.1',
|
|
176
|
-
natType: NatType.UNKNOWN,
|
|
177
|
-
ipAddress: ipv4ToNumber('127.0.0.1'),
|
|
178
|
-
version: localVersion
|
|
179
|
-
}
|
|
172
|
+
// TODO: this could throw?
|
|
180
173
|
if (this.abortController.signal.aborted) {
|
|
181
|
-
return
|
|
174
|
+
return {
|
|
175
|
+
host: '127.0.0.1',
|
|
176
|
+
natType: NatType.UNKNOWN,
|
|
177
|
+
ipAddress: ipv4ToNumber('127.0.0.1'),
|
|
178
|
+
version: localVersion
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
if (!this.config.entrypoints || this.config.entrypoints.length === 0) {
|
|
182
|
+
// return connectivity info given in config
|
|
183
|
+
return {
|
|
184
|
+
host: this.host!,
|
|
185
|
+
natType: NatType.OPEN_INTERNET,
|
|
186
|
+
websocket: {
|
|
187
|
+
host: this.host!,
|
|
188
|
+
port: this.selectedPort!,
|
|
189
|
+
tls: this.config.tlsCertificate !== undefined
|
|
190
|
+
},
|
|
191
|
+
// TODO: Resolve the given host name or or use as is if IP was given.
|
|
192
|
+
ipAddress: ipv4ToNumber('127.0.0.1'),
|
|
193
|
+
version: localVersion
|
|
194
|
+
}
|
|
182
195
|
}
|
|
183
196
|
for (const reattempt of range(ENTRY_POINT_CONNECTION_ATTEMPTS)) {
|
|
184
197
|
const entryPoint = sample(this.config.entrypoints)!
|
|
185
198
|
try {
|
|
186
|
-
|
|
187
|
-
|
|
199
|
+
// Do real connectivity checking
|
|
200
|
+
const connectivityRequest = {
|
|
201
|
+
port: this.selectedPort ?? DISABLE_CONNECTIVITY_PROBE,
|
|
202
|
+
host: this.host,
|
|
203
|
+
tls: this.websocketServer ? this.config.serverEnableTls : false,
|
|
204
|
+
selfSigned
|
|
205
|
+
}
|
|
206
|
+
if (!this.abortController.signal.aborted) {
|
|
207
|
+
return await sendConnectivityRequest(connectivityRequest, entryPoint, localVersion)
|
|
188
208
|
} else {
|
|
189
|
-
|
|
190
|
-
// return connectivity info given in config
|
|
191
|
-
const preconfiguredConnectivityResponse: ConnectivityResponse = {
|
|
192
|
-
host: this.host!,
|
|
193
|
-
natType: NatType.OPEN_INTERNET,
|
|
194
|
-
websocket: { host: this.host!, port: this.selectedPort!, tls: this.config.tlsCertificate !== undefined },
|
|
195
|
-
// TODO: maybe do a DNS lookup here?
|
|
196
|
-
ipAddress: ipv4ToNumber('127.0.0.1'),
|
|
197
|
-
version: localVersion
|
|
198
|
-
}
|
|
199
|
-
return preconfiguredConnectivityResponse
|
|
200
|
-
} else {
|
|
201
|
-
// Do real connectivity checking
|
|
202
|
-
const connectivityRequest = {
|
|
203
|
-
port: this.selectedPort!,
|
|
204
|
-
host: this.host,
|
|
205
|
-
tls: this.config.serverEnableTls,
|
|
206
|
-
selfSigned
|
|
207
|
-
}
|
|
208
|
-
if (!this.abortController.signal.aborted) {
|
|
209
|
-
return await sendConnectivityRequest(connectivityRequest, entryPoint, localVersion)
|
|
210
|
-
} else {
|
|
211
|
-
throw new Err.ConnectionFailed('ConnectivityChecker is destroyed')
|
|
212
|
-
}
|
|
213
|
-
}
|
|
209
|
+
throw new Err.ConnectionFailed('ConnectivityChecker is destroyed')
|
|
214
210
|
}
|
|
215
211
|
} catch (err) {
|
|
216
212
|
if (reattempt < ENTRY_POINT_CONNECTION_ATTEMPTS) {
|
|
@@ -28,22 +28,26 @@ describe('Layer 1 on Layer 0 with mocked connections', () => {
|
|
|
28
28
|
|
|
29
29
|
const layer0Node1Id = createRandomDhtAddress()
|
|
30
30
|
layer0Node1 = new DhtNode({
|
|
31
|
-
nodeId: layer0Node1Id
|
|
31
|
+
nodeId: layer0Node1Id,
|
|
32
|
+
entryPoints: [entrypointDescriptor]
|
|
32
33
|
})
|
|
33
34
|
|
|
34
35
|
const layer0Node2Id = createRandomDhtAddress()
|
|
35
36
|
layer0Node2 = new DhtNode({
|
|
36
|
-
nodeId: layer0Node2Id
|
|
37
|
+
nodeId: layer0Node2Id,
|
|
38
|
+
entryPoints: [entrypointDescriptor]
|
|
37
39
|
})
|
|
38
40
|
|
|
39
41
|
const layer0Node3Id = createRandomDhtAddress()
|
|
40
42
|
layer0Node3 = new DhtNode({
|
|
41
|
-
nodeId: layer0Node3Id
|
|
43
|
+
nodeId: layer0Node3Id,
|
|
44
|
+
entryPoints: [entrypointDescriptor]
|
|
42
45
|
})
|
|
43
46
|
|
|
44
47
|
const layer0Node4Id = createRandomDhtAddress()
|
|
45
48
|
layer0Node4 = new DhtNode({
|
|
46
|
-
nodeId: layer0Node4Id
|
|
49
|
+
nodeId: layer0Node4Id,
|
|
50
|
+
entryPoints: [entrypointDescriptor]
|
|
47
51
|
})
|
|
48
52
|
|
|
49
53
|
layer1EntryPoint = new DhtNode({
|
|
@@ -30,8 +30,8 @@ describe('memory leak', () => {
|
|
|
30
30
|
})
|
|
31
31
|
await entryPoint.start()
|
|
32
32
|
await entryPoint.joinDht([entryPointDescriptor])
|
|
33
|
-
let sender: DhtNode | undefined = new DhtNode({})
|
|
34
|
-
let receiver: DhtNode | undefined = new DhtNode({})
|
|
33
|
+
let sender: DhtNode | undefined = new DhtNode({ entryPoints: [entryPointDescriptor] })
|
|
34
|
+
let receiver: DhtNode | undefined = new DhtNode({ entryPoints: [entryPointDescriptor] })
|
|
35
35
|
await Promise.all([
|
|
36
36
|
(async () => {
|
|
37
37
|
await sender.start()
|
|
@@ -77,5 +77,5 @@ describe('memory leak', () => {
|
|
|
77
77
|
const detector3 = new LeakDetector(receiver)
|
|
78
78
|
receiver = undefined
|
|
79
79
|
expect(await detector3.isLeaking()).toBe(false)
|
|
80
|
-
})
|
|
80
|
+
}, 10000)
|
|
81
81
|
})
|
|
@@ -176,8 +176,8 @@ describe('Route Message With Mock Connections', () => {
|
|
|
176
176
|
oneofKind: 'rpcMessage',
|
|
177
177
|
rpcMessage: closestPeersRequest
|
|
178
178
|
},
|
|
179
|
-
sourceDescriptor: sourceNode.getLocalPeerDescriptor()
|
|
180
|
-
targetDescriptor: destinationNode.getLocalPeerDescriptor()
|
|
179
|
+
sourceDescriptor: sourceNode.getLocalPeerDescriptor(),
|
|
180
|
+
targetDescriptor: destinationNode.getLocalPeerDescriptor()
|
|
181
181
|
}
|
|
182
182
|
|
|
183
183
|
const routeMessageWrapper: RouteMessageWrapper = {
|
|
@@ -207,15 +207,15 @@ describe('Route Message With Mock Connections', () => {
|
|
|
207
207
|
oneofKind: 'rpcMessage',
|
|
208
208
|
rpcMessage
|
|
209
209
|
},
|
|
210
|
-
sourceDescriptor: sourceNode.getLocalPeerDescriptor()
|
|
211
|
-
targetDescriptor: entryPoint.getLocalPeerDescriptor()
|
|
210
|
+
sourceDescriptor: sourceNode.getLocalPeerDescriptor(),
|
|
211
|
+
targetDescriptor: entryPoint.getLocalPeerDescriptor()
|
|
212
212
|
}
|
|
213
213
|
|
|
214
214
|
const forwardedMessage: RouteMessageWrapper = {
|
|
215
215
|
message: requestMessage,
|
|
216
216
|
requestId: v4(),
|
|
217
217
|
sourcePeer: sourceNode.getLocalPeerDescriptor(),
|
|
218
|
-
target: entryPoint.getLocalPeerDescriptor()
|
|
218
|
+
target: entryPoint.getLocalPeerDescriptor().nodeId,
|
|
219
219
|
reachableThrough: [],
|
|
220
220
|
routingPath: [],
|
|
221
221
|
parallelRootNodeIds: []
|
|
@@ -76,14 +76,14 @@ describe('LocalDataStore', () => {
|
|
|
76
76
|
const storedEntry = createMockDataEntry({ creator: creator1 })
|
|
77
77
|
localDataStore.storeEntry(storedEntry)
|
|
78
78
|
const notDeletedData = Array.from(localDataStore.values(getDhtAddressFromRaw(storedEntry.key)))
|
|
79
|
-
expect(notDeletedData[0]
|
|
79
|
+
expect(notDeletedData[0].deleted).toBeFalse()
|
|
80
80
|
const returnValue = localDataStore.markAsDeleted(
|
|
81
81
|
getDhtAddressFromRaw(storedEntry.key),
|
|
82
82
|
creator1
|
|
83
83
|
)
|
|
84
84
|
expect(returnValue).toBe(true)
|
|
85
85
|
const deletedData = Array.from(localDataStore.values(getDhtAddressFromRaw(storedEntry.key)))
|
|
86
|
-
expect(deletedData[0]
|
|
86
|
+
expect(deletedData[0].deleted).toBeTrue()
|
|
87
87
|
})
|
|
88
88
|
|
|
89
89
|
it('data not stored', () => {
|
|
@@ -18,7 +18,7 @@ describe('PeerManager', () => {
|
|
|
18
18
|
manager.addContact(nodeIds.map((n) => ({ nodeId: getRawFromDhtAddress(n), type: NodeType.NODEJS })))
|
|
19
19
|
|
|
20
20
|
const referenceId = createRandomDhtAddress()
|
|
21
|
-
const excluded = new Set<DhtAddress>(sampleSize(nodeIds, 2)
|
|
21
|
+
const excluded = new Set<DhtAddress>(sampleSize(nodeIds, 2))
|
|
22
22
|
const actual = manager.getClosestContactsTo(referenceId, 5, excluded)
|
|
23
23
|
|
|
24
24
|
const expected = sortBy(
|
|
@@ -15,8 +15,9 @@ describe('connectivityRequestHandler', () => {
|
|
|
15
15
|
|
|
16
16
|
let httpServer: HttpServer
|
|
17
17
|
let wsServer: WsServer
|
|
18
|
+
let connection: any
|
|
18
19
|
|
|
19
|
-
|
|
20
|
+
beforeEach(async () => {
|
|
20
21
|
httpServer = createHttpServer()
|
|
21
22
|
wsServer = new WsServer({
|
|
22
23
|
httpServer,
|
|
@@ -24,19 +25,18 @@ describe('connectivityRequestHandler', () => {
|
|
|
24
25
|
})
|
|
25
26
|
httpServer.listen(PORT)
|
|
26
27
|
await once(httpServer, 'listening')
|
|
28
|
+
connection = new EventEmitter()
|
|
29
|
+
connection.send = jest.fn()
|
|
30
|
+
connection.getRemoteIp = () => HOST
|
|
27
31
|
})
|
|
28
32
|
|
|
29
|
-
|
|
33
|
+
afterEach(async () => {
|
|
30
34
|
wsServer.shutDown()
|
|
31
35
|
httpServer.close()
|
|
32
36
|
await once(httpServer, 'close')
|
|
33
37
|
})
|
|
34
38
|
|
|
35
39
|
it('happy path', async () => {
|
|
36
|
-
const connection: any = new EventEmitter()
|
|
37
|
-
connection.send = jest.fn()
|
|
38
|
-
connection.getRemoteIp = () => HOST
|
|
39
|
-
|
|
40
40
|
attachConnectivityRequestHandler(connection)
|
|
41
41
|
const request: Message = {
|
|
42
42
|
serviceId: CONNECTIVITY_CHECKER_SERVICE_ID,
|
|
@@ -72,4 +72,37 @@ describe('connectivityRequestHandler', () => {
|
|
|
72
72
|
serviceId: 'system/connectivity-checker'
|
|
73
73
|
})
|
|
74
74
|
})
|
|
75
|
+
|
|
76
|
+
it('disabled connectivity probing', async () => {
|
|
77
|
+
attachConnectivityRequestHandler(connection)
|
|
78
|
+
const request: Message = {
|
|
79
|
+
serviceId: CONNECTIVITY_CHECKER_SERVICE_ID,
|
|
80
|
+
messageType: MessageType.CONNECTIVITY_REQUEST,
|
|
81
|
+
messageId: 'mock-message-id',
|
|
82
|
+
body: {
|
|
83
|
+
oneofKind: 'connectivityRequest',
|
|
84
|
+
connectivityRequest: { port: 0, host: HOST, tls: false, selfSigned: false }
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
connection.emit('data', Message.toBinary(request))
|
|
88
|
+
|
|
89
|
+
await waitForCondition(() => connection.send.mock.calls.length > 0)
|
|
90
|
+
|
|
91
|
+
const receivedMessage = Message.fromBinary(connection.send.mock.calls[0][0])
|
|
92
|
+
expect(receivedMessage).toEqual({
|
|
93
|
+
body: {
|
|
94
|
+
connectivityResponse: {
|
|
95
|
+
host: HOST,
|
|
96
|
+
natType: 'unknown',
|
|
97
|
+
ipAddress: ipv4ToNumber(HOST),
|
|
98
|
+
version
|
|
99
|
+
},
|
|
100
|
+
oneofKind: 'connectivityResponse'
|
|
101
|
+
},
|
|
102
|
+
messageId: expect.any(String),
|
|
103
|
+
messageType: MessageType.CONNECTIVITY_RESPONSE,
|
|
104
|
+
serviceId: 'system/connectivity-checker'
|
|
105
|
+
})
|
|
106
|
+
})
|
|
107
|
+
|
|
75
108
|
})
|