题
我的理解的基础知识网络,例如局域网之类的东西。我知道很多协议和如何建立一个客户/服务器插程序。但我真正想要的是一个很好的理解的网络如何实际工作。不仅仅是从编程方面,而且从程序方面。我在寻找一些材料(最好是一本书),这将给我一个很好的基础,去掉。我在中间的希望是一个程序员或一个UNIX管理员,所以我真的应该学习和知道如何适用于联网的基础。
是否有任何这样的简明资源的存在吗?它将更好地将更多的学术路线,通过购买网络的书(例如那些从Tanenbaum或Kurose),或是它最好走这条路线可能找到网络的管理文字或认证书。
谢谢你有这么多。
解决方案
已故的理查德史蒂文斯的书籍是一部杰作 - 更加实用,立即适用于Tanenbaum(尚未研究过Kurose)。顺便说一句,同一位作者,我同样热烈地推荐“TCP / IP Illustrated”中的书籍。系列和 Unix环境中的高级编程 - 很少有书籍对于想成为“程序员或Unix管理员”,或许可以 ESR !
其他提示
我不清楚你究竟在寻找什么,所以我只想把它扔出去:
开始将自己的东西联网。创建一个局域网。了解如何创建和管理Linux防火墙而不是消费者防火墙。安装Active Directory只是为了咧嘴笑。在该Active Directory服务器上运行您自己的DHCP和DNS服务器。
一旦你走得那么远,如果你仍然感兴趣,那么如果你有500台计算机,就开始考虑如何规划你的局域网。了解虚拟LAN(VLAN)。
我认为特别是网络是一个开始修补的好地方,因为A)没有人受伤,B)它大部分是免费的。
哇..网络是一个非常重要的领域。要真正理解一切都需要PHD或几个PHD。
以下是我认为您需要学习的一些方面。
1)您需要了解网络的历史。协议中的许多策略都是由于时间的限制而制定的。了解协议的历史,以了解“为什么”它是如何工作的。
2)编程是关于网络如何在最低级别工作的极好知识来源。学习用C编写一些套接字代码.BSD套接字是一个很好的起点。您可以在Internet上找到很多BSD套接字的引用。
3)* nix命令提供有关配置和管理网络的丰富知识。优秀的网络管理员知道如何使用最基本的网络工具构建复杂的网络操作的许多技巧。 GNU网络工具是一个很好的起点。
4)如果你做到了,有几个证书,如MCSE和CCNA,它们有网络模块。这些论文可用于获取特定类型网络的知识。我从坐在MCSE论文中学到了很多关于Windows NT领域模型的知识,尽管我从来没有真正玩过很多领域。
还有更多方面。问问自己,你更喜欢哪一个?
一点个人经历。 我作为软件开发人员工作了10年。我也是“无偿”的网络大师在我的办公室。不知何故,我不得不戴上超过1顶帽子作为开发人员,因为网络是我工作的软件的一部分。
对于基础知识,您可能希望获得 W. Richard Stevens Classic,TCP / IP Illustrated ,也可能是他的其他书籍。也不会成为他们中的任何一个。
听起来你正在寻找的是那种只能通过经验才能真正达到的理解。每个人都会有不同的看待事物的方式,取决于对他们有意义的东西 - 解释可以帮助,但实际上解决问题无法替代学习。