1)熟悉TCP/IP协议族的基本原理
IP地址的分类,定义,获得,大概的管理方法
TCP、UDP等主要协议的特点,主要格式,以及重要字段在协议交互中起到的作用。
2)对于简单的TCP/IP协议导致的问题,有基本的判断
熟悉网络问题的解决方法,一个问题,应该是由上而下(top-button),还是由下而上(button-top)来分析?
3)基本的编程知识。
在系统内,构建简单通信。
在系统间,构建简单的通信。
熟悉系统内的API,知道在什么时候,改使用哪些API协调工作。
能够熟练使用这些API,在系统间传递信息,文件。
能够熟练使用这些API,实现自己的简单的私有协议。
4)进阶编程知识
知道一两个已经封装好的框架(framwork),它们之间的差别。
使用一个框架,写过能正常工作的程序。
知道网络协议处理也是要讲究性能的,知道性能的瓶颈会在什么地方产生。
能有较好的设计技巧,将私有协议设计得更加具有弹性,优雅。
熟悉系统间协议处理的细微的差异,以及将会对业务造成的影响,时延、状态不一致、自定义字段、、、、、
5)熟练阶段的知识
针对业务的需求,快速选型,定框架。
不再认为多线程是万能的。
知道稳定性比性能更加重要。
数据包去了哪儿,不用看代码,也能预估出来。
6)源代码是最好的老师,永远都是。
以上,差不多或者已经达到4)的时候,就是“熟悉”了。