Closed synctext closed 5 days ago
Project
VPS configuratie kiezen via evolutie
VPS kopen
VPS instantieren
Reputatie minen
Reputatie verkopen
Tests
Unit tests
Ansible testen
Markt simulatie
Integratie/regressie test
Main repository https://github.com/rjwvandenberg/PlebNet
The priority is to get the end-to-end system architecture operational instead of putting intelligence in each or every module.
docker as run everywhere execution model, from-the-source, other ?
https://www.reddit.com/r/Bitcoin/comments/50zapi/whats_the_best_vps_hosting_service_that_accepts/ https://www.google.nl/search?q=vps+bitcoin+review Perhaps include pricing info within the pip package API http://www.2sync.co/vps/taiwan/ ? Enabling computers to reason about computing power and bandwidth.
Sprint 2 will focus on creating the robust open compute api, aptly named Cloudomate. Initial System Architecture Agent Creation VPS Registration & Payment
Agents may communicate with each other through decentralized mailing systems. We implemented a sophisticated mailing system, with agents from Delft, Singapore and New York sending each other greet messages: Agents sending greetings Messages arrived within seconds after joining the network. Further work may fall outside the project requirements, so this project will be put on notice. Dispersy_communication branch
We performed a data transfer test between VPS s hosted by DigitalOcean. Data rates around the globe varied between 8.2MB/s and 44MB/s. A 1TB bandwidth cap may be consumed within days. This may cause problems if the agent gets shutdown without being able to instantiate new agents. We must take care to review hoster policies and select suitable hosters.
In sprint 1 we reviewed the previous BEP project on autonomous self-replicating code and applied their methods. Especially selenium may be too resource heavy to run on a cheap VPS. Other problems included too tightly coupled modules. A detailed report will follow.
Using docker will mean one standard project configuration and a docker install install script for each major os (this probably already exists). If configured properly this would come at a negligible cost http://domino.research.ibm.com/library/cyberdig.nsf/papers/0929052195DD819C85257D2300681E7B/$File/rc25482.pdf
ToDo:
Amazing! 👍
very impressive!
Expand chapter 1, also add picture of, for instance, 1) buy server 2) buy cloud server 3) buy VPS with Bitcoin.
Experiment with GIT based timing of 3 providers. Start till (Github URL) first success with real Bitcoin transaction (blockchain-browser). Table with VPS provider, minutes of development, LoC, code coverage, etc?
Performance analysis. Please add timing (time-to-buy-and-Hello-world) and performance graphs (speedtest, etc.).
Measure: Trustchain record creation over time.
Tribler exitnode including decentralized market is now available as a docker image. Built directly from the master branch of plebnet. https://hub.docker.com/r/plebnet/tribler_market/ Exitnode not enabled by default, and still being tested.
Please focus on report writing. For instance, chapter 6, Actual money trials
ToDo: prepare for 100-500 Euro exit node capacity buying trial. Understanding DMCA impact.
new report ?
report.pdf Report now on our own issue.
The first time we're seeing our decentralized autonomous entity (DAE) reproduce and trying to earn money on our market to fork more children.
In the end the server selection for cloudomate proved insufficient. Operating autonomously will require a very strict cherrypicking based on DMCA policies and registration procedures. Even then the internal setup of servers was shown to differ from what may be expected, requiring additional step after server activation. Out of the current 8 providers none have been reliable enough for an autonomous system.
In the final test we encountered some very specific errors, to correctly handle these additional code improvements to cloudomate and PlebNet are required. Especially the interaction between the two programs will have to be more rigid.
For tribler integration, the plebnet_plugin used by twisted did not incorporate the tunnel_helper instance directly, this will have to be done to avoid running a seperate twistd instance for market and tunnel_helper.
PlebMail was succesfully used to monitor the status of the Plebs:
A final graph of the upload of some of the servers at this moment. (only a few remain running)
PlebNet repository Cloudomate repository tribler fork for PlebNet
For the next month plebnet will run as exitnodes on the following servers that remain: linevast, pulseservers, abelohost, hidemyhost, underground, aminserve, flokinet and offshorededi These last 6 were bought without making use of cloudomate and if they stay online for the next month, they may be suitable for use with plebnet. Near real time updates on the status may be seen on the following site: plebnet live status
impressive !
Was adding a VPN layer for VPSs with incompatible DMCA policies considered? http://compare.wikia.com/wiki/Vpn_Provider
@Dmole actually, we considered that a few weeks ago and it's on our wishlist to implement that in one of the coming releases 👍
Next: going live in Tribler We are ready for the next steps this year with the maturing of our token economy and self-replicating code. The initial step is to provide advanced CloudOmate to ordinary users of Tribler, who are not experience traders, market makers, or command-line Linux experts. With the integration of the Bitcoin wallet we can expose buying servers to our users. Target the following for a new V7.3 or V7.4 version. It is a killer feature for press attention.
"buy mining hardware" button in Tribler. Next screen showing Earn tokens automatically. Use your Bitcoin or Ethereum wallet to buy the following (step 1 of 3):
@thijmensjf @codesalad @vwigmore this ticket is all yours for the coming ten weeks! 👍
Literature to start with:
Overall goal: Setup, deploy and optionally evaluate an end-to-end Botnet with self-replicating servers. Use the existing Cloudomate software to buy (and monitor) new servers, use PlebNet to install Tribler and deploy an exit node (optionally with VPN protection). Finally, sell earned bandwidth tokens on our decentralized market.
First sprint:
Initial long-term plan (plan van aanpak): week 1 - 2 (see first sprint):
week 3 - 4:
week 5 - 6 (depends on progress):
week 7 - 8:
week 9 - 10:
Current progress:
Next sprint:
Idea:
Current progress
The current version of the report: Bachelor_Project_2018_BotNet.pdf
Added coverage report building for plebnet on jenkins
Status at the beginning of week 6:
TODO next sprint:
Our Sprint 3:
Report: Bachelor_Project_2018_BotNet.pdf
We mainly focussed on preparing for SIG, Jenkins and proxmox end-to-end testing this sprint. We'll add more to the report this week as proxmox integration is done and jenkins, marketplace are prioritized in sprint 4.
First upload to SIG complete with a total coverage of 76%
The current version of the report: Bachelor_Project_2018_BotNet (4).pdf
Proxmox
Listing options with Cloudomate
Purchasing container with Cloudomate We're using testnet bitcoins here, along with the Bitpay testnet API.
An invoice is created using the Bitpay API
Accessing server
You can also create and destroy the container through the /manage
"API". Containers are created and destroyed with ansible scripts (we don't use snapshots because the proxmox machine's filesystem doesn't allow that). This allows us to test things such as installing the server and monitoring on a clean container, making sure the install scripts are not missing anything.
Most of the items were finished, installing VPN is going to be a task for this sprint (5)
Sprint 5 is finished. Report of this sprint will be posted on this ticket today.
Issues:
What's working right now:
Sprint 6 goals:
Sprint 5 is completed and for the next sprint we will focus on end-to-end testing by buying multiple servers and installing plebnet and make a full cycle. The report should get a higher priority and will be expanded in Sprint 6 as well.
The current version of the report can be found here
Naive bidding bot created
The bot looks for http://localhost:8085/market/asks
items and places a bid against these (works for both TBTC and BTC, depending on Tribler setup).
Currently, sometimes transactions show up as a failed transaction (but price and quantity are transferred). Because asks
are not removed when transactions are not complete, the bot may place multiple bids. A lower timeout for asks could be set to relieve this.
12/06/2018 18:25:20:Coin type is: TBTC
12/06/2018 18:25:20:Starting new HTTP connection (1): localhost
12/06/2018 18:25:20:http://localhost:8085 "GET /market/asks HTTP/1.1" 200 1528
12/06/2018 18:25:20:[Ask]: 0.0001131 TBTC 500.0 MB
12/06/2018 18:25:20:[Making a bid]: 0.0001131 TBTC 500.0 MB
12/06/2018 18:25:20:Starting new HTTP connection (1): localhost
12/06/2018 18:25:20:http://localhost:8085 "PUT /market/bids HTTP/1.1" 200 None
12/06/2018 18:25:20:{u'created': True}
12/06/2018 18:25:30:[Ask]: 0.0001131 TBTC 500.0 MB
12/06/2018 18:25:30:[Making a bid]: 0.0001131 TBTC 500.0 MB
12/06/2018 18:25:30:Starting new HTTP connection (1): localhost
12/06/2018 18:25:31:http://localhost:8085 "PUT /market/bids HTTP/1.1" 200 None
12/06/2018 18:25:31:{u'created': True}
The current version of our report can be found here
Currently (re)writing our report, as it has to be handed over comming Saturday.
Implemented some features regarding data collection to expand the monitoring options. Every ten minutes the data (uploaded and downloaded MBs, MB/BTC/TBTC balance etc.) from the agents is stored and this used to automatically create graphs.
For now these figures do not tell that much, as the time span is short (~24 hours), but during the demo we will have collected data for 2 weeks. This should be usable to gain an insight in the effectiveness of PlebNet.
And we have created a logo for PlebNet, as it was lacking one:
Your promo slides presented here upcoming Friday?
Final version of the report as send per email Bachelor_Project_BotNet.pdf
@synctext This is one of the gifs we've prepared. A "real-time" network viewing tool for PlebNet
I will send you the rest via e-mail.
As requested, I'm uploading the slides/images/videos for presentation here as well.
If possible on the server, a VPN will also be purchased and installed for maximum protection.
Graphs show the exit node's performance over time.
Goal: creating healthy exit-node network through cybercurrency.
Previously a TUDelft thesis project created an initial implementation of the autonomous self-replicating code concept.
next step: go live
Key features:
Planning:
Include in the report a detailed analysis of why the previous code could not be re-used and why clean-slate implementation was started.