Bitcoin Forum

Other => Beginners & Help => Topic started by: czekczek on December 02, 2012, 01:40:07 AM



Title: I'd like to help
Post by: czekczek on December 02, 2012, 01:40:07 AM
I read this: "Average people can help simply by running a full node that accepts incoming connections from the Internet.  Just download the client and run it, 24/7 -- ideally with an empty wallet for maximum security." by jgarzik

In work I've got a full access to many dedicated servers - a lot of cpu power and  all the bandwidth one can eat. I'd like to help by running those full nodes. On Mon I will compile and install bitcoind at those machines. Now I'd like someone to provide me a correct parameter list that I can run bitcoind with. I will not have time to figure it out it myself (especially things like -blocknotify=<cmd>)). I also rather use parameter list over config file; in case I've got to change jobs and get rid of my illicit doings quickly.

My servers are standard debian setup with outside IP address on eth0 interface.


Title: Re: I'd like to help
Post by: casascius on December 02, 2012, 01:43:29 AM
I don't imagine you should need anything on the command line, as by default, it will start up, acquire data from the p2p network, and start being a node.

If you're running multiple nodes with lots of bandwidth between them, you ought to bootstrap them by letting 1 node download the blockchain from the internet (a few gigs) and let the other nodes download it from that node, and you'll save lots of inbound bandwidth from the internet.  Simply -connect=xx.xx.xx.xx to specify where the node should connect.

Once up to speed, let it connect to the internet, and importantly, make sure it accepts inbound connections (an otherwise depletable resource on the p2p network).


Title: Re: I'd like to help
Post by: czekczek on December 02, 2012, 01:53:36 AM
Servers are in separate data centers so connecting to a last node won't speed things up. If I understood you correctly all I need to do is simply run ./bitcoind with no parameters and that should be enough to help the network, is that right? I believe bitcoind doesn't require root privileges?


Title: Re: I'd like to help
Post by: Jaylez on December 02, 2012, 02:16:12 AM
I don't think this is really necessary. I mean, tons of people already run the client. What you should do is mine with all that equipment.


Title: Re: I'd like to help
Post by: jwzguy on December 02, 2012, 02:27:49 AM
I read this: "Average people can help simply by running a full node that accepts incoming connections from the Internet.  Just download the client and run it, 24/7 -- ideally with an empty wallet for maximum security." by jgarzik

In work I've got a full access to many dedicated servers - a lot of cpu power and  all the bandwidth one can eat. I'd like to help by running those full nodes. On Mon I will compile and install bitcoind at those machines. Now I'd like someone to provide me a correct parameter list that I can run bitcoind with. I will not have time to figure it out it myself (especially things like -blocknotify=<cmd>)). I also rather use parameter list over config file; in case I've got to change jobs and get rid of my illicit doings quickly.

My servers are standard debian setup with outside IP address on eth0 interface.

Thanks! We need as many people running full nodes around the world as possible.



Title: Re: I'd like to help
Post by: rini17 on December 02, 2012, 02:37:21 AM
I read this: "Average people can help simply by running a full node that accepts incoming connections from the Internet.  Just download the client and run it, 24/7 -- ideally with an empty wallet for maximum security." by jgarzik

In work I've got a full access to many dedicated servers - a lot of cpu power and  all the bandwidth one can eat. I'd like to help by running those full nodes. On Mon I will compile and install bitcoind at those machines. Now I'd like someone to provide me a correct parameter list that I can run bitcoind with. I will not have time to figure it out it myself (especially things like -blocknotify=<cmd>)). I also rather use parameter list over config file; in case I've got to change jobs and get rid of my illicit doings quickly.

My servers are standard debian setup with outside IP address on eth0 interface.
If you plan to host anything else important on the metal, keep close eye on disk I/O. Upcoming bitcoind version solves this, but the stable 0.7.1 is really a disk hog and can cause inconvenient delays elsewhere. Even on decent 7200rpm disk, I can't play FLACs and run bitcoind at once, ionice nor libeatmydata doesn't help much.

Yes bitcoind runs fine without parameters, or package for your distro with ready to use initscript can be found (check version though, 0.6.2 from debian repo is very old).

As for mining, I doubt the servers have OpenCL capable graphics.


Title: Re: I'd like to help
Post by: casascius on December 02, 2012, 02:46:58 AM
Servers are in separate data centers so connecting to a last node won't speed things up. If I understood you correctly all I need to do is simply run ./bitcoind with no parameters and that should be enough to help the network, is that right? I believe bitcoind doesn't require root privileges?

No root privileges needed.

Make sure to open the port for incoming connections if you have a firewall that requires it.

If bitcoind can be given a very low priority, it still helps the network.

I disagree with the poster who says that mining is necessary.  It's not, and unless you have lots of GPUs and cheap power (not premium power like you'd expect in a datacenter), it's a total waste.


Title: Re: I'd like to help
Post by: czekczek on December 02, 2012, 09:10:48 AM
Thanks for warning me abut bitcoind being heavy on IO; fortunately this won't be a problem as the servers are of decent specs and all they do is host websites with 2 visitors a month (on a good month); good to know for the future anyway.

Mining on the servers is out of the question. I run this experiment the other week when I was CPU mining with cgminer on 40 desktop stations in the office - I will let you guess how much I made after a week. I rather help in a meaningful way. Having said that I've got some spare money and I have heard of ASICs so this is an option but first things first. On Mon bitcoin network will be reacher for at least 3 full nodes that accept incoming connections.

Thanks


Title: Re: I'd like to help
Post by: jgarzik on December 03, 2012, 12:43:28 AM
Thanks.  I think most of these have been covered by posters in another thread.

The only other thing I would point out is that, if you have N dedicated servers, it won't help as much if they are all on the same IP network.

Bitcoin is programmed to find and connect to nodes on separate networks, to prevent someone from maliciously starting up 1000 nodes in a single data center (and then having everyone connect to those nodes by virtue of raw server count).

So, it helps if you run bitcoind on various different IP networks.


Title: Re: I'd like to help
Post by: colindean on December 03, 2012, 03:49:49 AM
I kinda wonder in this case if some kind of control panel for managing a large farm of
Code:
bitcoind
s would be useful. They're largely just set and forget, but I'm sure there's some need for management.


Title: Re: I'd like to help
Post by: czekczek on December 03, 2012, 12:40:52 PM
As I promised two of my servers are now running bitcoin full nodes. The boxes are in separate data centers; would be more but as jgarzik said this won't help. And I love the fact that those machines are now doing something for a change: load average: 2.97, 3.78, 3.72

Thanks!


Title: Re: I'd like to help
Post by: RodeoX on December 03, 2012, 03:42:55 PM
Thank you peer!


Title: Re: I'd like to help
Post by: rini17 on December 03, 2012, 10:01:03 PM
As I promised two of my servers are now running bitcoin full nodes. The boxes are in separate data centers; would be more but as jgarzik said this won't help. And I love the fact that those machines are now doing something for a change: load average: 2.97, 3.78, 3.72

Thanks!
If you have so much unused capacity, you can support other projects, too. For example litecoin comes to mind, as it will be easy for you since it's basically a bitcoin fork and is being used in the same way. Maybe even Tor or Freenet, but they are more risky (depending on local law enforcement).


Title: Re: I'd like to help
Post by: czekczek on December 06, 2012, 10:29:46 AM
After two days of disk trashing and high load bitcoind stabilized and now is now only occupying 35% of available memory and induces almost no load. getconnectioncount returns number 37 whop whop :)


Title: Re: I'd like to help
Post by: pistolslapper on December 06, 2012, 11:14:10 AM
I don't think this is really necessary. I mean, tons of people already run the client. What you should do is mine with all that equipment.

Hi,

So by running a node your supporting the network but not actually making anything from the node? I thought that people that ran nodes got some small fee from a transaction they facilitated.



Title: Re: I'd like to help
Post by: Giftsforcoins on December 06, 2012, 11:38:22 AM
I don't think this is really necessary. I mean, tons of people already run the client. What you should do is mine with all that equipment.

Hi,

So by running a node your supporting the network but not actually making anything from the node? I thought that people that ran nodes got some small fee from a transaction they facilitated.



I would like to know this as well! Also, how does more nodes help the network?


Title: Re: I'd like to help
Post by: Raoul Duke on December 06, 2012, 12:07:05 PM
After two days of disk trashing and high load bitcoind stabilized and now is now only occupying 35% of available memory and induces almost no load. getconnectioncount returns number 37 whop whop :)

35%  :o
bitcoin-qt uses 216MB of RAM on a laptop with 4GB, so, that's little more than 5%
Didn't you say those were powerful servers?


Title: Re: I'd like to help
Post by: czekczek on December 06, 2012, 12:57:06 PM
35%  :o
bitcoin-qt uses 216MB of RAM on a laptop with 4GB, so, that's little more than 5%
Didn't you say those were powerful servers?

I take that back; they were powerful at the time of purchase years ago. For some reason I thought they still are.

Code:
$ free -m
             total       used       free     shared    buffers     cached
Mem:          2015       1953         61          0         66        826

Code:
  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                  
 3752 xxxxxxxx  20   0  939m 744m 3664 S    4 36.9 515:59.39 bitcoind                                 


Title: Re: I'd like to help
Post by: Raoul Duke on December 06, 2012, 01:04:13 PM
Even so, 744 MB is quite a lot for bitcoind only.
Is it still syncing?


Title: Re: I'd like to help
Post by: czekczek on December 06, 2012, 01:06:25 PM
Finished syncing it's just cruising now :)


Title: Re: I'd like to help
Post by: Graet on December 06, 2012, 01:37:49 PM
Finished syncing it's just cruising now :)
Good work man :D

to try answer a couple of questions from posts above :)

There has recently been discussion among the dev group regarding the number of "light" wallets in the future due to ease of use and a possible diminishing number of "full nodes"

A "light client" does not need the blockchain and thus cannot pass it to other peers
A "full node" downloads the full blockchain and helps to relay the information through the network telling other full nodes and light clients about new blocks and transactions ( we all wait to see our txns confirmed - these nodes spread the news)

The concern comes in when the number of Full nodes diminishes to the point where some single entity "could" control a majority of full nodes and having that control "could" introduce incorrect data into the network possibly even a whole new blockchain. Bad bad stuff.

So full nodes relay information on the network and do help and support the Bitcoin network. Also the resources required to run a full node are negligible compared to mining, though as always I would encourage people to check with their employers before installing any 3rd party software or opening ports in corporate firewalls :)

The people that get "transaction fees" are the miners that include transactions in blocks, part of "including" is verifying transactions, this can be either solo or pooled miners.
hope that is a help  :)
Graet


Title: Re: I'd like to help
Post by: Foxpup on December 06, 2012, 02:09:38 PM
So by running a node your supporting the network but not actually making anything from the node?
Yes.

I thought that people that ran nodes got some small fee from a transaction they facilitated.
No. Only miners collect transaction fees. It would be nice if we could pay nodes for their services, however there is unfortunately no way to verify their work (unlike miners, where being able to verify their work is the whole point), and therefore no way to fairly compensate them.

Also, how does more nodes help the network?
Nodes relay transactions and blocks between miners and other nodes. If all miners were connected to all other miners and everyone had a direct connection to a miner, there would be no need for relay nodes, however this is obviously not feasible. The more nodes there are, the more resilient the network is against network disruption, by having more paths to route around any damage.


Title: Re: I'd like to help
Post by: rini17 on December 06, 2012, 02:19:43 PM
I don't think this is really necessary. I mean, tons of people already run the client. What you should do is mine with all that equipment.
Hi,

So by running a node your supporting the network but not actually making anything from the node? I thought that people that ran nodes got some small fee from a transaction they facilitated.

I would like to know this as well! Also, how does more nodes help the network?
Running nodes does not make anything itself. You just get the advantage that your transactions propagate faster the more connections you have (helpful if you play satoshidice, for example) and it also helps with verification and propagation of all transactions in the network.


Title: Re: I'd like to help
Post by: jgarzik on December 06, 2012, 05:10:52 PM
So by running a node your supporting the network but not actually making anything from the node? I thought that people that ran nodes got some small fee from a transaction they facilitated.

No, you do not receive any fees or compensation for simply running a node (besides the satisfaction of knowing you are helping keep the bitcoin network running).



Title: Re: I'd like to help
Post by: jgarzik on December 06, 2012, 05:14:22 PM
Also, how does more nodes help the network?

Each bitcoin node performs the important task of verifying transaction and block chain data.

For example, if a powerful miner, one day, decided to produce a block that gave himself 100BTC, all the other nodes on the network would ignore that block, because the block reward is currently 25BTC.

Further, running a node helps the network by providing users access to bitcoin data.  If we do not have nodes on the network that accept incoming connections, it would be nearly impossible for anybody to send or receive bitcoins.

Each additional node on the network helps strengthen bitcoin.  Each node is a "vote" for good data.  If we have too few network nodes, an attacker could potentially control the data we see.


Title: Re: I'd like to help
Post by: Giftsforcoins on December 06, 2012, 08:49:51 PM
Also, how does more nodes help the network?

Each bitcoin node performs the important task of verifying transaction and block chain data.

For example, if a powerful miner, one day, decided to produce a block that gave himself 100BTC, all the other nodes on the network would ignore that block, because the block reward is currently 25BTC.

Further, running a node helps the network by providing users access to bitcoin data.  If we do not have nodes on the network that accept incoming connections, it would be nearly impossible for anybody to send or receive bitcoins.

Each additional node on the network helps strengthen bitcoin.  Each node is a "vote" for good data.  If we have too few network nodes, an attacker could potentially control the data we see.


Ah I get it now. Maybe I'll set up a laptop as a node. Is it difficult? I have a few year old laptop just sitting around.


Title: Re: I'd like to help
Post by: Mainess on December 07, 2012, 04:35:18 AM
Also, how does more nodes help the network?

Each bitcoin node performs the important task of verifying transaction and block chain data.

For example, if a powerful miner, one day, decided to produce a block that gave himself 100BTC, all the other nodes on the network would ignore that block, because the block reward is currently 25BTC.

Further, running a node helps the network by providing users access to bitcoin data.  If we do not have nodes on the network that accept incoming connections, it would be nearly impossible for anybody to send or receive bitcoins.

Each additional node on the network helps strengthen bitcoin.  Each node is a "vote" for good data.  If we have too few network nodes, an attacker could potentially control the data we see.


Ahh, getting somewhere.

Please exsplain more!!