Mis favoritos personales son
Para aprender los conceptos:
1) Redes de computadoras – Enfoque de arriba hacia abajo – Kurose, Ross (Lo mejor para un principiante. Una vez que lo adquiera, se enamorará de este libro: P. No se requieren requisitos previos. Está escrito de manera maravillosa para que todos se interesen en las redes )
2) Redes de computadoras – Tanenbaum (Bueno pero seco. Contenidos bien formados, deben tener algún conocimiento básico de las comunicaciones de datos antes de leer este libro)
3) TCP / IP ilustrado: Richard Stevens Vol. 1 (Es una joya) Le sugeriría que leyera primero o segundo inicialmente, luego, comience a leer el tercer libro. Este es el mejor para comprender los protocolos y sus escenarios de trabajo. Está escrito por Stevens, que es considerado un gurú de las redes.
Para la programación:
Programación de red Unix Vol. 1 Sockets API – Richard Stevens
Unix Network Programming Vol 2 Inter process Communication – Richard Stevens
(Esto es útil si desea programar en un entorno UNIX utilizando C. Le sugeriría encarecidamente a cualquiera que aprenda la programación en red en UNIX utilizando C sobre el aprendizaje en idiomas como Python)