RewardNet [04/09/23 Testnet] [Offline]

Is that something I can provide?


This one should still be valid :-

export SAFE_PEERS="/ip4/"

Last time I started 50 nodes I used it as the peer_id.

It’s a single node on an Instance so shouldn’t run out of RAM.

Ttrying to keep one of these testnets running is interesting but ultimately an exercise in frustration and of dubious benefit.

But have at it!


Yes, I have killed all mine and am ready with my finger on the trigger, if history is anything to go by nextnet is ready to pounce.

(Just to prove me wrong it will be a week now :slight_smile: )


It was a very good testnet and will go down in history so thanks!

If it had run through the weekend I’d have tried some more things with my terrible scripting ability:-

  • testing downloads of the 1MB files I’d uploaded
  • writing a script for automatically validating files I’d uploaded
  • writing a script that will track the cost of an upload of a single record over time
  • automating my node provisioning and startup process
  • looking at Josh’s script because it looks cool!
  • having another go at getting a home based node able to receive records

But maybe it’s for the best because I can get back to some gaming this weekend!


@Josh has just pointed out an error in a PR I have raised for his script. I just want a running network to test the workaround against for a few hours yet.
Looks like we are going to need sudo after all :frowning:
Not a biggie, I’d just prefer to avoid it if possible.


Well, it’s running! But how useful it is I don’t know because it seems you can’t upload anything. I’m getting:-

time safe files upload testfile
Built with git version: 8faf662 / main / 8faf662
Instantiating a SAFE client...
🔗 Connected to the Network                                                                         Preparing (chunking) files at 'testfile'...
Making payment for 1 Chunks that belong to 1 file/s.
Transfers applied locally
Error: Failed to send tokens due to Network Error Could not retrieve the record after storing it: 1544fa81c7913406837574fc73d47db32938779f3dcce551c73c86917dc7c953.


real    4m9.259s
user    1m13.268s
sys     0m0.945s

So it looks like sending the tokens is failing because that counts as being a record in itself!

But if what you are testing is just to do with node functionality or connectivity I suppose it might do the job.

I won’t shut my nodes down until everyone else has!


I’ll leave mine as well lol see what happens although last time I checked in a few were dieing die to running out of memory


My node has 2015 records and is seems it’s not getting any more. I’ll leave it running anyway, at least until tomorrow.

Timestamp: ti syys 12 14:26:31 EDT 2023
Number: 3
Node: 12D3KooWCXJYagGXfHcv3jcxZmq8k8CLUDZ6qaQyreV5JkuQnAvC
PID: 7036
Memory used: 200.113MB
CPU usage: 5.2%
File descriptors: 1513
Records: 2015
Disk usage: 658MB
Rewards balance: 0.000003392


Thank you to all the team who made this RewardNet possible, thank you to all who kept their nodes running (alamoNet) when all seemed lost.

I have made a fix in one place and found a problem in another but I no longer need a running network to continue.
So thanks again to you all, I can hopefully sort it from here.

the setup script reports pandas was installed OK but when you actually need to use it, there is a problem - likely due to me not using venv correctly, I think.

safe@alamoNet:~/Rewards_plotting$ python3 
Traceback (most recent call last):
  File "/home/safe/Rewards_plotting/", line 1, in <module>
    import pandas as pd
ModuleNotFoundError: No module named 'pandas'

@Josh kindly sent me a Dell/Wyse miniPC so I will use that to try to install the Rewards_plotting package on and test with a saved resources.log

Which is what I should have done all along instead of asking you lot to keep nodes running – sorry…



There a lot of potential ways to do it. Both with or without a queue as you suggest. However, the simplest way to approximate Mitchell’s Best Candidate Algorithm (see below) may be to use a queue and select the node that is farthest in xor from the close group. This is also referred to as “blue noise” sampling instead of purely random “white noise” sampling.


Hope to get it on the next testnet, as this one seems to be winding down :smiley: .

Definitely read through all the posts and updates on this RewardNet test run!

Loving the overall progress, and feedback between Maidsafe and the community!

Keep up the good work everyone!


Haha, it is going to be a few days as we get in a wee bit more work that we’ll be testing out.

@Toivo @storage_guy @Southside et al! Thanks for trying to carry the torch! :fire: I was wondering when we’d see that :smiley: .

(It probably is very unlikely to survive though when maidsafe has such a high percentage of nodes… down the line we’ll have a look at a smoother wind down, I suspect. That’ll be easier once we have some more of the metrics work in).


Though if we shrink it in a controlled way down to…hmm… 10 nodes, and accept the data loss, maybe we can re-grow it back up, and start uploading again.


I’ll be able to add quite a few nodes once they get hole punching worked in. Probably several hundred, at least.


Adding to @dirvine’s response, so the attack described by Vitalik isn’t relevant for the current safe network implementation but sybil remains a relevant threat and how can that be defended against? Well, the sybil issue relevant to safe network actually affects ethereum and ipfs too. And there’s a lot of work being advanced to guard against it, some already being implemented into libp2p (which ethereum, ipfs, filecoin, etc. all rely on). Here’s an example: So through libp2p, safe network inherits / will inherit those sybil defense mechanisms being evolved by the field.


Nice find @Bogard I have been working on the side with a few more ideas, but this paper is really encouraging and avoids us having to persuade libp2p to take on our sybil defence mechanisms. Best of all, we all get to share the anti sybil attack work here. Great news all round


My node shut down in the morning by accident :unamused:

Are anyone else still connected?

iv still got some nodes trying to do something this one is still alive from my nodes log but isent one of mine

export SAFE_PEERS="/ip4/"

uploading failed though :frowning:

root@sp1:~# export SAFE_PEERS="/ip4/"
root@sp1:~# safe files upload node.txt
Built with git version: 8faf662 / main / 8faf662
Instantiating a SAFE client...
🔗 Connected to the Network                                                                                                                                                                                                                  Preparing (chunking) files at 'node.txt'...
Making payment for 4 Chunks that belong to 1 file/s.
Transfers applied locally
Error: Failed to send tokens due to Network Error Could not retrieve the record after storing it: 674b65fd6245f2cb57510d0231b42e03f012c4770fbe04d45b503d4d08933873.


just tried a download and got some gets from one of my nodes

got all exited but

root@sp1:~# safe files download bb.mp4 f199f60f102a715aa9cedd4102c1de45886233a02cdf16e710009165b9926e19
Built with git version: 8faf662 / main / 8faf662
Instantiating a SAFE client...
🔗 Connected to the Network                                                                                                                                          Downloading file "bb.mp4" with address f199f60f102a715aa9cedd4102c1de45886233a02cdf16e710009165b9926e19
Client download progress 29/44
Did not get file "bb.mp4" from the network! Chunks error Not all chunks were retrieved, expected 44, retrieved 29, missing [5f8776(01011111).., d9f084(11011001).., 218c18(00100001).., 320188(00110010).., 945d07(10010100).., 075444(00000111).., 1d7988(00011101).., c59ce5(11000101).., 0f10dd(00001111).., 10da21(00010000).., 3f2ebf(00111111).., 055580(00000101).., 195fc3(00011001).., 04468f(00000100).., c470a5(11000100)..]..


the wreck of the Medusa comes to mind :slight_smile: