Computer Networks by Andrew Tanenbaum (2002, Hardcover, Revised)