校招时公司要求熟悉TCP/IP协议,面的是java开发,但对该协议掌握的不够牢固,也就可以应对考试的水平,请问在java工程师实际开发中涉及该协议的知识量多吗?
没接触过,都是直接url或http框架直接调用。但是握手挥手什么的要理解
其实不多,会写javaweb就行
看公司做什么业务了,如果和硬件交互经常用到,如果是web开发,通常都是http协议,但是也有部分业务可能会用到socket
TCP/IP协议在实际Java开发中应用的知识量较大,以下是一些实例和提示:
基础知识:需要了解TCP/IP的基础知识,如四层模型、IP地址、端口、协议等。可以根据《TCP/IP协议族(第四版)》前三章学习。
Socket编程:Java中实现TCP/IP协议的方式是通过Socket编程,需要了解Socket相关的类和方法,如Socket、ServerSocket、InputStream、OutputStream等。可以根据《TCP/IP协议族(第四版)》第2、4、5、6章学习。
TCP连接建立与关闭:需要了解TCP连接的建立与关闭过程,三次握手和四次分手的流程,并掌握Java中Socket的相关方法实现。可以参考太牛了!阿里P8Java架构师居然把TCP/IP三次握手、四次分手讲得这么透彻!。
UDP协议:UDP是TCP/IP协议族中的另一个重要协议,需要了解其特点以及Java中如何实现UDP通信。可以参考《TCP/IP协议族(第四版)》第14章。
网络层:需要了解IPv4的相关知识,包括地址分配、子网划分、路由选择等。还需要了解IPv6的相关知识。可以参考《TCP/IP协议族(第四版)》第4、5、26、27、28章。
应用层协议:需要了解常见的应用层协议,如HTTP、FTP、DNS等,并学习Java中如何使用相关API实现。可以参考《TCP/IP协议族(第四版)》第17、18~24章。
多播和多播路由选择协议:需要了解多播的相关概念和应用场景,以及Java中如何实现。可以参考《TCP/IP协议族(第四版)》第12章。
综上所述,学习TCP/IP协议在实际Java开发中应用的知识需要从基础知识开始学习,然后逐步深入学习各个方面的知识点。建议先阅读《TCP/IP协议族(第四版)》前三章,然后结合具体场景逐步学习相关知识点。