How do miners communicate in Bitcoin/ Decentralized Network? 1.)If there is no central authority maintaining database how miners differentiate among other miners.

2.)Do they have there own database which have details(Mac/IP address) of neighbouring miners .

3.)Decentralized system feels absurd when i was trying to create blueprint where i was thinking to create a downloadable executable program ( socket programming for intercommunication) but i got struck how would communication take place b/w miners,user.

4.)Can you give me a little insight that if i want to run any consensus program on 10 computers connected to internet how would it work .
Bitcoin is a gossiping network. There is no hierarchy among the nodes, each node operates at equal privilege level. Bitcoin has an established protocol defining how nodes communicate with each other, and some stepping stones to find the first peers (although they could easily be replaced by other on-boarding mechanisms). 

Whenever a node learns new data on the Bitcoin network, it gossips to its peers about that data. As every node connects to multiple peers, the information will generally reach every participant eventually. 

Block data has special propagation guarantees: the blockchain ensures that the whole network converges on a shared ground-truth regarding the network state and new blocks are relayed with priority. 
Some nodes that are otherwise indistinguishable from other participants use the transaction data they collected from the gossip network to author new blocks. Some of the so-called "miners" run additional communication protocols to expedite communication between each other, but this is not required.