Many believe if normal users run full nodes it helps the network but why would normal users want to do that?
Only big users, businesses and those paranoid should and are running full nodes aside from miners of course.
its nt about getting all 5million+ users to be full nodes.. but certainly not about trying to pretend that nodes are meaningless to hope people turn off nodes to then give pools majority node count to make it easy for pools..
but yes merchants and those that do care about security and protection of the network should run a full node.
there is always has been and should always be a symbiotic relationship. to ensure no one has overall control.
Even if normal users start running them they can't change or effect any thing because a miner can out number them if the miner wants his data to be validated it will only makes it harder for them as the numbers of full nodes by individuals increases even then not every normal user knows how to or wants to black list or ban a specific set of nodes/IPs if they start to misbehave.
there are MANY mechanisms in a node that protect the network.. bitcoin is nothing like the banking system.. nodes are not just duplicate copies of a database.
the consensus/orphan mechanism, to name just one feature... does not need users to do anything manually apart from run the node. the node knows the rules and will throw out any block that doesnt meet the rules. and then the whole network consensus syncing/relay mechanism sorts out the weak from the strong, leaving behind the weak..
What would be the result if a miner broadcasts a block of 2MB right now and all other miners accept it but only %50 of nodes accept it as well and just get rejected by other %50 of non-mining nodes?
well to take one example from history (BU's 1.000250 block mistake)
non mining nodes response
2017-01-29 06:59:12 Requesting block 000000000000000000cf208f521de0424677f7a87f2f278a1042f38d159565f5
2017-01-29 06:59:15 ERROR: AcceptBlock: bad-blk-length, size limits failed (code 16)
drama over in 3 seconds.
.. then if the 50% of pools accepted it when the pool makes a new block where by the previous hash was
^000000000000000000cf208f521de0424677f7a87f2f278a1042f38d159565f5
the non mining nodes would reject that next block too..
the non mining nodes would only accept a block where all the previous hashes of blocks followed the rules.
in short over 50% of pools end up making/wasting time making blocks ontop of a block that merchants and users wont see/accept. and those pools wont get to spend their rewards with those merchants/users in 16 hours time..
pools know this!! and for years have been following this knowledge..
which is why when they see its rejected they dont build ontop. instead they go back and find a blockheight that was accepted by the majority and only build ontop of that block. to ensure they are building on the most acceptable chain that will allow them to spend their rewards
this is why NODE+pool consensus events should happen.. and where core went wrong thinking only pools should have the vote
and where core fanboys went wrong thinking the non-core proposals would actually act just on mining flags. when the reality is that things will only happen if there was a combined node and pool consensus
What is plan B of Core devs?
cores plan B is if the community say no, dont back track and listen to the community and make something different.. but continue on and press even harder my making it mandatory, with another year delay
UASF quote: mandatory by late 2018
Can all the Core miners start rejecting every block generated with BU clients?
How much does it cost to run a full node if we were to buy everything in bulk, lets say if you were to deploy 5000 full nodes.
cost is about under $100 for a raspberry pi and a microsd..
what you are talking about is a sybil attack.. also traditionally called a invasion / corporate take over..