
1) 【一句话结论】TCP通过三次握手建立连接、四次挥手关闭连接,Azure中可通过ExpressRoute(专用网络)、VNet对等连接(跨VNet通信)、CDN(内容分发)优化客户端与服务器间的网络延迟。
2) 【原理/概念讲解】TCP是面向连接的传输层协议,核心是通过握手确保通信可靠性。
SYN(同步序列号,初始序列号设为x);SYN-ACK(确认序列号x+1,自身序列号设为y);ACK(确认序列号y+1)。FIN(终止序列号设为x);ACK(确认序列号x+1);FIN(终止序列号设为y);ACK(确认序列号y+1)。3) 【对比与适用场景】
三次握手 vs 四次挥手(表格):
| 特性 | 三次握手(建立连接) | 四次挥手(关闭连接) |
|--------------|---------------------------|---------------------------|
| 目的 | 确保初始序列号一致 | 确保双方完成数据传输后断开 |
| 步骤 | SYN → SYN-ACK → ACK | FIN → ACK → FIN → ACK |
| 关键报文 | SYN, SYN-ACK, ACK | FIN, ACK, FIN, ACK |
| 注意点 | 避免旧连接重传数据 | 处理半开连接(如服务器先关闭) |
Azure网络优化手段(表格):
| 优化方式 | 作用 | 适用场景 | 注意点 |
|----------------|--------------------------|------------------------------|----------------------------|
| ExpressRoute | 专用网络连接(如专线) | 需要低延迟、高带宽的跨区域通信 | 需配置BGP路由,成本较高 |
| VNet对等连接 | 跨VNet通信(无需网关) | 同一订阅内不同VNet间的通信 | 需VNet间有公共子网或路由 |
| CDN(如Azure CDN) | 内容缓存(边缘节点) | 静态内容分发,减少源站压力 | 需配置缓存策略,可能存在缓存失效 |
4) 【示例】
三次握手:
客户端 → 服务器:SYN, seq=100
服务器 → 客户端:SYN-ACK, ack=101, seq=200
客户端 → 服务器:ACK, ack=201
四次挥手:
客户端 → 服务器:FIN, seq=300
服务器 → 客户端:ACK, ack=301
服务器 → 客户端:FIN, seq=400
客户端 → 服务器:ACK, ack=401
5) 【面试口播版答案】(约80秒)
“TCP三次握手是建立连接的三个步骤:客户端先发SYN(同步序列号),服务器回SYN-ACK(确认序列号+1,自身序列号),客户端再发ACK(确认序列号+1),确保双方就初始序列号一致。四次挥手是关闭连接的四个步骤,比如客户端先发FIN(终止序列号),服务器回ACK,然后服务器发FIN,客户端回ACK,完成断开。在Azure中,优化网络延迟的话,比如用ExpressRoute做专用网络连接,能降低跨区域延迟;用VNet对等连接让不同VNet直接通信,减少跳数;或者用CDN(如Azure CDN),把内容缓存到边缘节点,用户请求从离得近的节点获取,减少响应时间。这些方法都能有效优化客户端和服务器间的网络延迟。”
6) 【追问清单】
7) 【常见坑/雷区】