Networks are groups of distinguished computers joined by (possibly heterogeneous) links which exchange messages according to common protocols.