Java网络通信高频面试题及详细答案(实战版).docxVIP

  • 1
  • 0
  • 约5.02千字
  • 约 7页
  • 2026-10-13 发布于河北
  • 举报

Java网络通信高频面试题及详细答案(实战版).docx

Java网络通信高频面试题及详细答案(实战版)

一、网络基础核心面试题(必考)

1.TCP和UDP的核心区别?项目中分别用在什么场景?

详细答案:

TCP是面向连接的可靠传输协议,UDP是无连接的不可靠传输协议,两者核心差异和实战场景如下:

1.连接特性:TCP需要三次握手建立连接、四次挥手断开连接;UDP无需建立连接,直接发包,开销极小。

2.可靠性:TCP有确认应答、超时重传、拥塞控制、流量控制机制,保证数据不丢、不乱、不重复;UDP无任何校验机制,数据可能丢失、乱序、重复。

3.传输效率:TCP机制繁琐,传输速度慢、开销大;UDP头部开销小,传输延迟极低、吞吐量高。

4.有序性:TCP保证数据按序到达;UDP不保证有序。

实战场景:

TCP:文件传输、接口调用、数据库连接、HTTP/HTTPS、登录注册等对数据完整性要求高的场景。

UDP:直播推流、视频通话、游戏对战、心跳检测、日志上报等允许少量丢包、追求低延迟的场景。

2.详细说下TCP三次握手、四次挥手,为什么不能两次握手?

详细答案:

三次握手(建立连接):核心目的是双向确认双方收发能力正常。

1.第一次握手:客户端向服务端发送SYN报文,请求建立连接,客户端进入同步发送状态。(客户端证明自己能发数据)

2.第二次握手:服务端收到SYN报文,回复SYN+ACK报文,确认客户端请求并向客户端发起连接请求

文档评论(0)

1亿VIP精品文档

相关文档