computer networking - a top-down approach by Kurose/Ross has quite a heavy java leaning, and there are loads of companion java projects on the companion website.
chapters:
- Computer Networks and the Internet
- Application Layer (HTTP, FTP, SMTP)
- Transport Layer (TCP, UDP)
- The Network Layer (Routers, IP)
- The Link Layer and Local Area Networks
- Wireless and Mobile Networks
- Multimedia Networking
- Security in Computer Networks
- Network Management