1.三次握手四次挥手
2.TCP与UDP的区别
UDP | TCP | |
---|---|---|
是否连接 | 无连接 | 面向连接 |
是否可靠 | 不可靠 | 可靠传输,使用流量控制和拥塞控制 |
传输方式 | 面向报文 | 面向字节流 |
首部开销 | 首部开销小,仅8字节 | 首部最小20字节,最大60字节 |
通信方式 | 全双工 | |
支持单播、多播和广播 | 仅支持单播 |
3.TCP的流量控制和拥塞控制
流量控制
流量控制:防止发送方发的太快,耗尽接收方的资源,从而使接受方来不及处理。
利用滑动窗口实现流量控制:
- 接受端将自己可以接受的缓冲区大小放入TCP首部中的“窗口大小”字段,通过ACK来通知发送端
- 窗口大小字段越大说明网络吞吐量越高
- 窗口大小指的是无需等待确认应答而可以继续发送数据的最大值
- 操作系统内核为了维护滑动窗口,需要开辟发送缓冲区,来记录当前还有那些数据没有应答,只有确认应答过的数据,才能从缓冲区删掉。
- 接受端一旦发现自己的缓冲区快满了,就会将窗口大小设置成一个更小的值通知给发送端,发送端收到这个值后,就会减慢自己的发送速度。
- 如果