TCP/IP 协议族
2019-04-23 本文已影响1人
深度码农患者
TCP/IP
TCP/IP 是个协议族,可以分为三个层次:网络层、传输层和应用层
在网络层有:IP协议、ICMP协议、ARP协议、RARP协议和BOOTP协议
在传输层有:TCP协议和UDP协议
在应用层有:FTP、HTTP、TELNET、SMTP、DNS等协议
因此,HTTP 本身是就是一个协议,是从Web服务器传输超文本到本地浏览器的传送协议。
TCP和UDP是FTP、HTTP和SMTP之类使用的传输层协议。虽然TCP和UDP都是用来传输其他协议的,但是它们却有一个显著的不同:TCP提供有保证的数据传输,而UDP不提供。这意味着TCP有一个特殊的机制来确保数据安全的不出错的从一个端点传到另一个端点,而UDP不提供任何这样的保证。
HTTP协议
HTTP的全称是超文本传输协议,原理是利用TCP在两台电脑(通常是Web服务器和客户端)之间传输信息的洗衣。客户端使用Web浏览器发起HTTP请求给Web服务器,Web服务器发送被请求的信息给客户端。

HTTP 是短连接:客户端发送请求都需要服务器端回送响应。请求结束后,主动释放连接,因此为短连接。通常的做法是,不需要任何数据,也要每隔一段时间向服务器发送“保持连接”的请求。这样可以保证客户端在服务器端是“上线”状态。
HTTP 连接使用的是“请求-响应”方式,不仅在请求时建立连接,而且客户端向服务器请求后,服务器才返回数据
Socket协议
网络上的两个程序通过一个双向的通信连接实现数据的胡欢,这个连接的一端称为一个socket

建立网络通信连接至少需要一对端口号(socket),socket本质是API对TCP/IP的封装,TCP/IP也要提供可供程序员做网络开发所用的接口,这就是Socket编程接口;HTTP 是轿车,提供了封装或者显示数据的具体形式;Socket是发动机,提供了网络通信的能力。