Computer networks and distributed processing Software techniques and architecture - Martin, James (PHI, 1988)