20 MB blocks means you need 41 Mbps upload. Most people don't have that even available.
Please share your calculations.
20 MB = 160 Mbit.
8 peers minimum.
30 seconds maximum to upload new blocks in a timely manner.
160 Mbit * 8 peers / 30 seconds = 42.67 Mbps.
If we assume that each transaction received is sent to 2 other nodes, then a full 20 MB block over 10 minutes would mean that you would have needed to send approximately 40 MB during that time.
40 MB X 8 bits per byte = 320 Mbit
There are 600 seconds in 10 minutes.
320 Mbit / 600 seconds = 533,333 kbps
That's only a bit more than half of 1 Mbps.
But you can't spend 10 minutes uploading the block to each peer.
Nor will things propagate reasonably if each peer only uploads to one other peer - consider that SPV/light nodes
only download.
The network will just break down entirely...