计算机可以抽象出生活原型之一 ---- 计算机网络: Socket 和 HTTP 那些事

Socket 和 HTTP 是在网络通信的应用中经常提到呢,那么这两位大侠到底是什么呢?
其实Socket 和 HTTP 没有放在一起说的道理,一个是基于传输层开发的接口,一个是应用层协议。
Socket 是基于网络模型的传输层TCP协议开发出来的接口,Socket运输员只负责把最基本的数据流传送到目的地(主机ip地址和Port端口号),至于你的数据是用来做什么的Socket不管。
HTTP 是应用层的协议,由于在传输层的传送员(Socket或者其他协议如UDP的接口)只是负责传送基本的数据,而对方如果想要恰当的使用这些数据,通信数据的双方必须事先说明,数据的第一个字段是用来做什么的,第二个字段是用来做什么的等等。这个事先说明的动作就是协议,其实你也可以管这个协议叫做HTTP,可惜了,已经名花有主了。

用一个生活中的例子来理解应用层协议:
将整个计算机网络通信比拟成邮局系统。
应用层协议就像邮局系统开设的几个服务,邮件(HTTP),快递EMS(Telnet),包裹(FTP)等等。

猜你喜欢

转载自wcq20071334.iteye.com/blog/1975329
今日推荐