ELI5 Proposals and Attestations

I understand that proposals and attestations happen automatically when running an eth2 client, but what is actually happening? What does it mean to propose a block? how does the validator decide what to propose?
On the flip side, how does the validator know what it is attesting to?
submitted by /u/minsguy
[link] [comments]