学习网络编程的建议是:
1.写代码,了解API,但是不要在此阶段停留太久;
2.阅读RFC,了解原理,这个步骤一定要细致;
3.写代码,侧重原理的确认,确认你所在RFC中看到的事情是真的,这个阶段要花费些时间;
4.闲暇时可以看看《TCP/IP详解》,《Unix网络编程》之类的书,没时间就算了;
4.1.如果你就是想完成工作,养家糊口,那么到这一步就为止了,否则接着往下看。
5.看Linux的TCP/IP协议栈实现,必要时候Hack之,如果你真的想理解TCP/IP并且搞点大动作,这个阶段花点时间是值得的;
6.找一个网卡驱动看看,看看网卡为何这么设计,主要的是看看文档的说明,并且hack驱动,反证文档的正确性;
7.写代码,利用学到的知识不断提升性能,这个阶段就是完全自主的阶段了,你应该抛开一切的文档资料,自己实现一个优化的协议;
1.写代码,了解API,但是不要在此阶段停留太久;
2.阅读RFC,了解原理,这个步骤一定要细致;
3.写代码,侧重原理的确认,确认你所在RFC中看到的事情是真的,这个阶段要花费些时间;
4.闲暇时可以看看《TCP/IP详解》,《Unix网络编程》之类的书,没时间就算了;
4.1.如果你就是想完成工作,养家糊口,那么到这一步就为止了,否则接着往下看。
5.看Linux的TCP/IP协议栈实现,必要时候Hack之,如果你真的想理解TCP/IP并且搞点大动作,这个阶段花点时间是值得的;
6.找一个网卡驱动看看,看看网卡为何这么设计,主要的是看看文档的说明,并且hack驱动,反证文档的正确性;
7.写代码,利用学到的知识不断提升性能,这个阶段就是完全自主的阶段了,你应该抛开一切的文档资料,自己实现一个优化的协议;
8.写代码,还是写代码,这个阶段,可能你要和国际大牛接触了,主要通过Maillist...
出处:http://blog.youkuaiyun.com/dog250/article/details/6648623