快捷搜索: 王者荣耀 脱发

Java面试题(三)TCP/IP协议

一、TCP/IP是一个四层协议系统。

(1)链路层,有时也称作数据链路层或网络接口层,通常包括操作系统中的设备驱动程序和计算机中对应的网络接口卡。

(2)网络层,有时也称作互联网层,处理分组在网络中的活动。网络层协议包括IP协议(网际协议),ICMP协议(internet互联网控制报文协议),以及IGMP协议(Internet组管理协议)

(3)运输层,包含协议TCP(传输控制协议)和UDP(用户数据报协议)。TCP把数据分成小块,交给网络层。UDP则为应用层提供服务,把数据报的分组从一台主机发送到另一台主机,但并不保证发送到另一台主机。

(4)应用层负责处理特定的应用程序细节。Telnet远程登录,FTP文件传输协议,SMTP简单邮件传送协议,SNMP简单网络管理协议。

二、建立TCP的三次握手:

(1)客户(请求端)发送一个SYN段指明客户打算连接的服务器端口,以及初始序号(ISN)这个SYN称为报文段I

(2)服务器发回包含服务器的初始序号的SYN报文段作为应答。同时,将确认序号设置为客户的ISN加1以对客户的SYN报文段进行确认。

(3)客户必须将确认序号设置为服务器的ISN加1以对服务器的SYN报文段进行确认。

三、连接终止协议四次握手:

(1)终止命令收到后,导致TCP客户端发送一个FIN,用来关闭从客户到服务器的数据传送。

(2)服务器收到FIN,发回ACK,确认序号为收到的序号加1

(3)同时服务器向应用程序传送一个文件结束符。接着这个服务器程序就关闭它的链接,发送一个FIN

(4)客户必须发回一个 你,并将确认序号设置为收到序号+1

经验分享 程序员 微信小程序 职场和发展