一 TCP
1. 简介
首先,TCP是一个传输层协议,提供进程到进程之间的可靠性数据传输服务,还提供流量控制和差错控制等机制。
其次,TCP是面向连接的,其通信模式是全双工的;面向连接是指:
- 在发送数据之前必须建立连接;
- 连接状态只在两端维护,沿途节点不维护;
连接建立需要进行三次握手,关闭连接需要进行四次挥手;
接下来面试官会问可靠性数据传输的原理、流量控制、差错控制、三次握手和四次挥手等;
二 TCP的可靠性传输
1. TCP的可靠性传输原理
- 流水线机制;
- 累计确认;
- TCP使用单一重传定时器,当超时或收到重复的ACK会触发重传事件;
- 其它的还有使用序列号对TCP报文段进行排序和丢掉重复的报文段;使用校验和检查错误的报文段;
2. 流水线机制
流水线机制,允许发送方在收到ACK之前,可以连续的发送多个分组,发送方和接收方需要更大的存储空间以缓存分组。
3. 累计确认
接收方收到序列号1、2、3、4和5的包,不必每个都确认,只需确认第5个就行,当发送方收到接收方对5的确认ACK后&#x