码迷,mamicode.com
首页 > Web开发 > 详细

socket连接和HTTP连接的区别

时间:2015-07-30 00:34:22      阅读:123      评论:0      收藏:0      [点我收藏+]

标签:

 

简单说, 你浏览的网页(网址以HTTP:// 开头) 都是HTTP协议传输到你的浏览器的, 而HTTP是基于socket之上的, socket是一套完成TCP, UDP协议的接口.

HTTP协议: 简单对象访问协议, 对应于应用层, HTTP协议是基于TCP连接的.

TCP协议: 对应于传输层

IP协议: 对应于网络层

TCP/IP是传输层协议, 主要解决数据如何在网络中传输: 而HTTP是应用层协议, 主要解决如何包装数据.

socket是对TCP/IP协议的封装, socket本身并不是协议 , 而是一个调用接口(API), 通过socket, 我们才能使用TCP/IP协议.

HTTP连接: HTTP连接就是所谓的短连接, 即客户端向服务器端发送一次请求, 服务器端响应后连接即会断掉.

socket连接: socket连接就是所谓的长连接, 理论上客户端和服务器端一旦建立起连接将不会主动断掉, 但是由于各种环境因素可能会使连接断开, 比如说: 服务器端或者客户端主机down了, 网络故障, 或者两者之间长时间没有数据传输, 网络防火墙可能会断开该连接以释放网络资源, 所以当一个socket连接中没有数据传输, 那么为了维持连接需要发送心跳消息, 具体心跳消息是开发者自己定义的.

 

socket连接和HTTP连接的区别

标签:

原文地址:http://www.cnblogs.com/Cheetah-yang/p/4687734.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!