面试真题

网络 · 简单 · 美团

TCP连接中,接收方不调用recv,会发生什么情况?

简单 网络 🎤 美团
参考答案
接收方不调用recv会导致数据积压在接收缓冲区;TCP具备流量控制,接收方通过窗口字段通告剩余空间,应用不读则缓冲区满,窗口降为0;发送方收到零窗口通知后停止发送,启动持续计时器探测;若长期不读,发送方因无法发送数据而阻塞,可能触发超时或连接僵死;极端情况接收方缓冲区溢出丢包但TCP会重传直到窗口打开。接收方TCP协议栈仍正常确认,但通告窗口为0;发送方进入零窗口探测状态,周期性发探测报文;若应用始终不读,连接资源被长期占用,可能由保活机制或应用层超时断开。
题目整理自公开面经,答案由校招宝自研生成,仅供参考