本质区别
- IP:网络层协议;
- TCP和UDP:传输层协议;
- HTTP:应用层协议;
- SOCKET:不是协议,TCP/IP网络的API。
TCP/IP代表传输控制协议/网际协议,指的是一系列协议集。
TCP和UDP是HTTP、FTP、SMTP等协议使用的传输层协议。 TCP和UDP使用IP协议从一个网络传送数据包到另一个网络。把IP想像成一种高速公路,它允许其它协议在上面行驶并找到到其它电脑的出口。TCP和UDP是高速公路上的“卡车”,它们携带的货物就是像HTTP,FTP这样的协议等。
HTTP是利用TCP在两台电脑(通常是Web服务器和客户端)之间传输信息的协议。客户端使用Web浏览器发起HTTP请求给Web服务器,Web服务器发送被请求的信息给客户端。
Socket 接口是TCP/IP网络的API,Socket接口定义了许多函数或例程,用以开发TCP/IP网络上的应用程序。
- HTTP:超文本传输协议,是基于【TCP/IP】协议基础上的【应用层】协议。TCP/IP协议是【传输层】协议,主要解决数据如何在网络中传输,HTTP是应用层协议,主要解决如何包装数据。HTTP协议详细规定了浏览器与服务器之间相互通信的规则,是万维网交换信息的基础。HTTP是基于【请求-响应】形式并且是【短连接】,并且是【无状态】的协议。针对其无状态特性,在实际应用中又需要有状态的形式,因此一般会通过session/cookie技术来解决此问题。
- Socket:Socket不属于协议范畴,而是一个调用接口(API),Socket是对【TCP/IP】协议的封装,通过调用Socket,才能使用TCP/IP协议。Socket连接是【长连接】,理论上客户端和服务器端一旦建立连接将不会主动断开此连接。
时间: 2025-01-04 13:24:42