4 ms·
Why add TCP to IP or HTTP to TCP? It's sound engineering. Like in other systems by composing layers you can achieve the advantages of each component while addr
by nullc 7y ago
Why add TCP to IP or HTTP to TCP?
It's sound engineering. Like in other systems by composing layers you can achieve the advantages of each component while addressing their costs, without creating insurmountable complexity... "have your cake and eat it too".
Particularly, the central Bitcoin system is a global broadcast medium-- necessarily for its security. Global broadcast is inherently somewhat limited in its scalability (though less than some assume). Other layers effectively add "transaction switching" to Bitcoin, radically improving scalablity and performance with their own costs which are good trade-offs for their applications.
As far as the status quo of traditional finance... If you're happy with the status quo! Use it!
(I'm going to assume you don't mean the status quo of Bitcoin--because 28kb/sec isn't something only large entities can keep up with, it adds up over time-- but even cumulatively its managable)
You could recreate the status quo of centralized finance with Bitcoin, but it wouldn't be obviously better: at least systems like visa and paypal are purpose build to do what they do. Bitcoin takes on a lot of costs and tradeoffs to achieve decenteralization.
Bitcoin was created to be money that existed above and outside of the vulgarities of immediate human politics, just like how strong encryption made it effectively impossible for some sysadmin to just read your files based on some excuse.
I think having that option in the world is extraordinarily valuable.
- phillipsjk 7y agoScaling with second layers instead of on-chain is NOT "sound engineering" The Engineering discipline relies on empirical studies. With constantly full blocks, you have no way to measure transaction demand. Fees are only a weak indicator of transaction demand because of substitute goods.
- marcinjachymiak 7y agoA great empirical study you should pursue is initial blockchain download time with (full) 2000 MB blocks and low-grade consumer hardware.
- freeAgent 7y agoPeople have already done this and it is quite fast! https://www.reddit.com/r/btc/comments/ek0614/current_node_implementation_regular_quadcore_vps/ https://www.reddit.com/r/btc/comments/ek0614/current_node_im... Flowee the Hub (Bitcoin Cash full node implementation) can sync the equivalent of 4GB blocks using just a cheap quad-core VPS.
- nullc 7y agoAmusingly enough ... The rates there are, in fact, significantly slower than what plain old Bitcoin developers. Bitcoin dev's probably should make the syncing status print the number of inputs per second being processed. But being able to barely keep up means that if you fall behind for even a moment (say, if your connection drops... or if miners get lucky and mine a bunch of extra blocks) then you will _never_ catch up. Operating anywhere near the limit of your processing rate is non-viable for that reason. You need to be able to process many times the network's capacity so that you can catch up in a reasonable amount of time.
- freeAgent 7y agoSure, but OP said 2GB. A node able to process 4GB blocks would be able to sync at 2x realtime. Most people who run nodes will probably bootstrap new ones in the future anyway and most people don't need to run full nodes in the first place (the majority don't do so today and haven't since light wallets became available). To get back to reality, I don't think any sane person has advocated for anything close to a 2GB blocksize cap at any point in the near future. Bitcoin Core uses a maximum 4MB block weight and Bitcoin Cash uses a 32MB cap currently. This cheap VPS could sync the entire Bitcoin (Core) blockchain from 2009 to present in less than 12 hours. The biggest block size cap (not full blocks, the cap) being tested seriously is 1GB. I'm sure you know all this, though.
- lawn 7y agoIt's laughably bad engineering to try to solve the scaling issue of the base layer by adding another layer on top. It's like you'd try to solve a throughput problem of IP by layering TCP or HTTP on top. But this is the logic of one of the main devs who championed the "fee market" idea of Bitcoin[0], that high fees are required for Bitcoin to function. And who in 2017 celebrated when fees were around $50.[1] [1]: https://medium.com/@johnblocke/the-fee-market-myth-b9d189e45096 https://medium.com/@johnblocke/the-fee-market-myth-b9d189e45... [0]: https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2017-December/015455.html https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2017...
- __s 7y ago2nd layer avoids bloating the ledger. Once limits of 2nd layer are being explored, you can make adjustments to 1st layer with information about how that'll improve 2nd layer throughput. This is like arguing that we shouldn't have in-memory caches, we should just have faster disks Fees prevent spam
- lawn 7y agoOnce limits of 1st layer are explored (the Bitcoin developers have never even bothered to research where the limits are) you can augment it with 2nd layer solutions. Both should of course be done simultaneously, and never focus on one to the exclusion of the other. Even the Lightning Network whitepaper states it needs much larger blocks, and for it to work well you need to be able to settle quickly and cheaply on-chain, which is not the case with full blocks.
- vegarde 7y agoLet me get this clear: You want to WAIT until it's evident that we can't scale anymore, and then add 2nd layers? And this, you want to do after significant adoption? So, you are basically going to tell the Starbuckses and other large corporations that have built a large infrastructure around onchain transactions that they need to stop that, wait a few years until 2nd layers are adopted, and then start using that?
- kain_niak 7y agoThis is hackernews dude, you don't control this one.
- shilch 7y agoTCP wasn't build on IP because it wasn't scalable. It was build on it because it was. But that aside, calling Lightning on BTC a second-layer is a bit misleading: Lightning data is not encapsulated in BTC data, more like the other way around; so Lightning is more like layer 0 and BTC layer 1 in that model. (That's also not entirely correct either but much closer)
- im3w1l 7y ago> At the start, TCP handled both datagram transmission and routing, but as the protocol expanded, other researchers started to recommend that these two functions be split into layers. > One of these researchers, Jonathan Postel of the University of California’s Information Sciences Institute and an editor for the Request of[sic] Comments (RFCs) which is a document series capturing the development of the Internet. > Postel has stated: > “We are screwing up in our design of Internet protocols by violating the principle of layering” > Basically, the monolithic design of TCP would soon become inflexible and unable to scale efficiently. Therefore TCP was split into two protocols, TCP & the Internet Protocol (IP). https://www.colocationamerica.com/blog/history-of-ip-address-part-2-tcp-ip https://www.colocationamerica.com/blog/history-of-ip-address...
- shilch 7y agoI'm not all too familiar with the history of IP and TCP but my point still stands. Protocols aren't build because the underlying protocol doesn't scale in term of throughput, it's for the opposite reason that they scale very well. I could also have used HTTP and TCP.
- nullc 7y agoBitcoin has very strong properties for _security_ which is the inherent property that makes it possible to build other automated trustless systems on top of it. The comparison with TCP and IP is limit in that TCP data all goes inside IP packets. With second layer transaction systems the relationship is different: the security and stability comes from the underlying blockchain. The higher part adds capacity. Bitcoin forms a trustworthy robotic court system upon which the wheels of automated commerce can ride.
- intabli 7y agoIt’s not sound engineering whatsoever, it actually is horrible engineering especially when the base layer is congested - Engineers and developers who are far more proficient than you have already chimed in on this, including Vitalik the creator of Ethereum, who also firmly supports the path to scale Bitcoin Cash is taking: https://vitalik.ca/general/2019/12/26/mvb.html https://vitalik.ca/general/2019/12/26/mvb.html