Each distributed system typically includes: