这是我面试遇到的问题,整理下来了,希望对大家有帮助!
首先:
TCP是传输控制协议,他在传输层
HTTP是超文本传输协议,在应用层
应用层的协议通常需要借助传输层的协议来实现网络通信从而访问网页等资源。
而这个时候HTTP就会选择TCP
因为
TCP为HTTP提供了可靠连接,当我们在请求网页的时候,需要先通过TCP三次握手建立连接,这样就能确保网页、图片、文件等资源能够准确无误地从服务器传输到客户端。而且没有丢失;
其次
TCP 具有流量控制和拥塞控制机制,
流量控制可以确保发送方不会发送过多的数据导致接收方无法处理;
拥塞控制则可以避免网络拥塞,保证数据的稳定传输。