TCP/IP、Http、Socket的区别?

TCP/IP、Http、Socket的区别     经常在笔试、面试或者工作的时候听到这些协议,虽然以前没怎么涉及过,但至少知道这些是和网络编程密不可分的知识,作为一个客户端开发程序员,如果可以懂得网络编程的话,他的作用和能力肯定会提升一个档次,很简单,这是个信息化时代,由于网络的存在使得人与人、人与网络的联系及其地紧密,游戏联网了才好玩,音视频在线了才更好看。而且,对于一个程序员来说,懂得网络编程将使得自己的能力和价值得到更大的提升,从很多高级软件开发职位的招聘信息就可以看得出来:熟悉http,socket等网络连接编程,了解TCP/IP协议... 阅读详情
作者:渣硕
链接:https://www.zhihu.com/question/39541968/answer/87821283
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

http连接=以http协议为通信协议的tcp连接


顺便说说长连接和短连接的问题

tcp连接本身属性是不分长短的,是根据使用方式来决定的,举个例子:

有一把不会损坏的刀(tcp连接),你砍一个人(请求一次)就扔了(断开连接)就叫一次性砍刀(短连接),砍多个人(请求多次)扔了就叫多次性砍刀(长连接),这把刀本身的属性并不包含长短,只是根据使用方法产生了不同的叫法


总结:

http连接=以http协议为通信协议的tcp连接

http短连接=以http协议为通信协议的,请求一次就断开的tcp连接

http长连接=以http协议为通信协议的,请求多次才断开的tcp连接(这个是为了通过减少建立tcp连接的次数达到节省两端资源的目的)

@dreamer

-----------------------------------原答案-------------------------------------

tcpip和http都是协议是约定好的规范,他们位于网络5层模型的传输层(tcp)和应用层(http),tcpip表示的是一系列协议,不过与本题没有太大关系。规定好的协议总要操作系统实现了才能使用,而socket就是操作系统实现的,tcpip协议族的接口,用于创建一个套接字,可以理解为,通过网络读写的文件描述符,socket、bind、listen、accept、connect一系列都是操作系统提供的接口用于实现tcp协议相关的功能。tcp协议可以让两个进程通过三次握手建立稳定的通信信道,发送字节流,而http协议建立在tcp协议之上,也就是说tcp协议可以让两个程序说话,而http协议定义了说话的规则。
例如:
A想要B左边口袋的糖,A和B通过tcp连接后,A发送给B:我想要你左边口袋的糖,这时进程B如果没和A做过任何约定,理解这句话是很困难的,想要理解就要和A提前做约定,比如:你发给我的话我会按以下格式理解:“动作:位置/资源”,那么约定好了后,A就必须发送“获取:左边口袋/糖”,B就可以理解这句话,返回给A糖了,但是互联网上数以亿计的节点,是不可能互相都两两约定好的,为了让大家都能顺畅的交流、http协议出世,他说:发送方都按我规定的格式说话,接收方都按我规定的格式理解,就互相都明白了不是?

【银河麒麟服务器操作系统】安装英伟达4090D显卡驱动操作指南 本文详细介绍了在银河麒麟高级服务器操作系统V10SP3-2403-X86版本上安装NVIDIA RTX4090D显卡驱动的完整流程。主要内容包括:准备工作检查、开源驱动禁用、运行级别切换、依赖包安装以及交互式安装过程中的关键选项选择(32位库选Yes、X配置选No)。通过禁用nouveau驱动、重建内核引导等步骤确保驱动安装成功,最后通过nvidia-smi命令验证驱动安装情况。文档提供了操作检查表和安装流程图,帮助用户在银河麒麟系统上顺利完成显卡驱动部署。 阅读详情

相关推荐

Python实战:用pdfplumber从PDF中精准提取表格数据(附完整代码)

本文详细介绍了如何使用Python库pdfplumber从PDF中精准提取表格数据,包括环境配置、标准与复杂表格处理策略、数据清洗与验证等实战技巧。通过完整代码示例,帮助数据分析师和财务专业人士实现PDF数据提取的自动化,提升工作效率。

weixin_29061821的博客 400

每个程序员必看的TCP/IP,socket通信

协议”是一种约定。计算机之间传输媒介是光信号和电信号,通过“频率“和”“强弱”来表示0、1这样的信息,想要传递不同的信息,需要约定好双方的数据格式。网络协议是一个共同标准,大家都来遵守。为了让两台主机通信,需要协议和标准的数据格式才能进行通信。通过协议分层便于封装。

weixin_44810982的博客 2601

MinerU与Docling:智能文档处理框架对比

本文对比分析了MinerU和Docling两大智能文档处理框架。MinerU专注于高精度PDF解析,采用多模态AI技术,在学术文献、金融报表等复杂文档处理上表现优异;Docling则定位企业级多格式文档处理平台,支持10+格式转换,更适合文档管理系统等场景。技术层面,MinerU基于VLM模型实现端到端处理,Docling采用插件化多后端架构。性能测试显示MinerU精度更高(95%+),但资源消耗较大;Docling处理速度更快(1-3秒/页),部署更灵活。

轩哥的个人研究和成长记录 1911

2020/09/21HTTP 和 SOCKET的区别

HTTP 协议:超文本传输协议,对应于应用层,用于如何封装数据. TCP/UDP协议:传输控制协议,对应于传输层,主要解决数据在网络中的传输。 IP 协议:对应于网络层,同样解决数据在网络中的传输。 一、HTTP 协议 http 为短连接:客户端发送请求都需要服务器端回送响应.请求结束后,主动释放链接,因此为短连接。通常的做法是,不需要任何数据,也要保持每隔一段时间向服务器发送"保持连接"的请求。这样可以保证客户端在服务器端是"上线"状态。 HTTP连接使用的是"请求-响应"方式,不仅在请求时建.

tayloramanda的博客 601

ILI9488 TFT屏驱动与触摸协同开发指南

TFT-LCD显示模块是嵌入式人机交互系统的核心外设,其工作原理依赖于专用显示控制器(如ILI9488)对GRAM显存的精确读写,并通过SPI等串行总线接收指令与图像数据。理解RGB接口时序、寄存器初始化流程及DC/CS信号控制逻辑,是实现稳定显示的基础技术前提;而四线电阻式触摸功能则需配合XPT2046类ADC控制器,通过独立SPI或模拟时序完成坐标采集。该方案兼顾低功耗、高集成与工程可移植性,广泛应用于工业HMI、仪器仪表及STM32F407等MCU平台的教学与产品开发。本文围绕3.5英寸320×480

weixin_33814090的博客 149

QTableView实现表格加载百万条数据

本文介绍用QTableView实现加载100万条数据显示到表格。 1.创建工程 用Qt Creator创建Qt Widgets Application项目,基类选择QWidget,创建好了,如图: 2.添加QTableView控件 在widget.ui中添加QTableView控件,和QPushButton,采用栅格布局,如图: 3.添加函数 头文件 QT_BEGIN_NAMESPACE namespace Ui { class Widget; } QT_END_NAMESPACE class Wid

丁爸的博客 8271

Socket和Http通信原理

Socket是对TCP/IP协议的封装,Socket本身并不是协议,而是一个调用接口(API),通过Socket,我们才能使用TCP/IP协议,主要利用三元组【ip地址,协议,端口】。Http协议即超文本传输协议,是Web联网的基础,也是手机联网常用的协议之一,http协议是建立在TCP协议之上的一种应用。socket连接:socket连接即是所谓的长连接,理论上客户端和服务端一旦建立连接,则不会主动断掉;

2301_76766616的博客 2199

【MATLAB代码】TDOA+TOA融合算法,高精度定位。通过多边定位解算4个锚点、平面目标的位置,附代码

二维平面下的TOA、TDOA及混合定位算法,通过4个锚节点对目标点进行定位。

985工科博士毕业,专攻定位、导航和滤波等算法研究。从业10年,主要使用MATLAB 211

HTTP、TCP和Socket的概念和原理及其区别

①HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送协议。②HTTP是一个基于TCP/IP通信协议来传递数据(HTML 文件, 图片文件, 查询结果等)。③HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展。

You can walk as far as you want. 2499

【图像超分】论文复现:经典超分 | SAN的Pytorch源码复现,跑通源码,适配高版本的python/pytorch/cuda,使用EDSR-PyTorch进行训练和测试

本文介绍了单幅图像超分辨率重建方法SAN(二阶注意网络)的代码实现。文章详细说明了在高版本Python/Pytorch环境下适配SAN源码的方法,并提供了修改后的完整代码和预训练模型下载链接。 主要亮点包括: 将SAN模型实现整合到EDSR-Pytorch框架中,解决了高版本环境下的兼容性问题 提供了完整的数据集准备指南(DIV2K训练集和5个测试集) 给出了详细的测试命令,涵盖x2、x3、x4不同放大倍率 公开了预训练模型和可视化结果的下载资源 提供了修改后的适配高版本环境的代码。

主要更新底层视觉(去噪、超分等)相关的科研内容,形式为【论文精读】+【论文复现】 1412

万字长文带你由浅入深夯实ARM汇编基础——汇编指令及寻址方式最全梳理(附示例)!

见到汇编就害怕?读完这篇,扫除汇编拦路虎!!(示例丰富,可做手册,随手查阅!)

车载系统攻城狮 1万+

计算机网络——SOCKET、TCP、HTTP之间的区别与联系

计算机网络——SOCKET、TCP、HTTP之间的区别与联系

NRWHF的博客 7622

十八万字《python从零到精通教程》第二版,贴心保姆教你从零变大神,学不会找我

文章目录一.pycharm下载安装二.python下载安装三.pycharm上配置python四.配置镜像源让你下载嗖嗖的快4.1pycharm内部配置4.2手动添加镜像源4.3永久配置镜像源五.插件安装(比如汉化?)5.1自动补码神器第一款5.2 自动补码神器第二款5.2汉化pycharm5.3其它插件六.美女背景七.自定义脚本开头八、这个前言一定要看九、python入门十、python缩进十一、Python注释1.单行注释2.多行注释十二、Python 变量1.变量定义理解2. 变量名命名3. 分配多个

全栈川川 7万+

TCP/IP,Http,Socket,XMPP的区别

网络由下往上分为   物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。   通过初步的了解,我知道IP协议对应于网络层,TCP协议对应于传输层,而HTTP协议对应于应用层,   三者从本质上来说没有可比性,   socket则是对TCP/IP协议的封装和应用(程序员层面上)。   也可以说,TPC/IP协议是传输层协议,主要解决数据如何在网络中传输,   而HTTP是应用层

Hepburn_的博客 2481

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

http、TCP/IP协议与socket之间的区别

http、TCP/IP协议与socket之间的区别 网络由下往上分为: www.2cto.com 物理层-- 数据链路层-- 网络层-- IP协议 传输层-- TCP协议 会话层-- 表示层和应用层-- HTTP协议...

wyqwilliam的博客 909

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

TCP/IP 、HTTP、Socket的区别与联系

1、Socket和http的区别 http: 如何封装数据;基于TCP协议,简单的对象访问协议,对应于应用层;(货物) tcp协议:数据在网络中的传输;对应于传输层;(卡车) IP协议:对应网络层;数据在网络中的传输(高速公路) TCP/IP:解决数据如何在网络中传输,HTTP:如何包装数据 Socket是对TCP/IP协议的封装,Socket本身并不是协议,而是一个调用接口(API),通过Socket,我们才能使用TCP/IP协议。 Http连接:http连接就是所谓的短连接,及客户端向服务器

热爱是把一件事做到极致 2252

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

TCP/IP,HTTP,Socket的区别

网络由下往上分为   物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。   通过初步的了解,我知道IP协议对应于网络层,TCP协议对应于传输层,而HTTP协议对应于应用层,   三者从本质上来说没有可比性,   socket则是对TCP/IP协议的封装和应用(程序员层面上)。   也可以说,TPC/IP协议是传输层协议,主要解决数据如何在网络中传输,

Small_dong_的博客 540

HTTP、TCP/IP、SOCKET的区别

网络基础比较重要,尤其对于Android程序员来说,网络更是离不开的一个关键部分。我总结了很多前辈的文章和自己的一些学习心得,如下:TCP HTTP UDP:它们都是通信协议,也就是通信时所遵守的规则,只有双方按照这个规则沟通,对方才能理解。TCP/IP是个协议组,它对应osi参考模型三层及以上层,可分为四个层次:网络接口层、网络层、传输层和应用层。在网络层有IP协议、ICMP协议、ARP协

DerWeltraum 653

TCP/IP、HTTP、HTPPS、socket的原理及区别

https://www.cnblogs.com/cb521413/p/8655862.html 网络由下往上分为物理层、数据链路层、网络层( IP协议)、传输层( TCP协议)、会话层、表示层和应用层(HTTP协议) 接下来我来说说个人理解其中的TCP/IP、Http、Socket的区别 TCP/IP连接: 手机能够使用联网功能是因为手机底层实现了TCP/IP协议,可以使手机终端通过无线网络建立TCP连接,TCP协议可以对上层网络提供接口,使上层网络数据的传输建立在“无差别”的网络之上。 ..

zhuchenchangk163的博客 1328
上一篇: Java对象的概念
下一篇: Android需要用户手动赋予的权限( Dangerous Permissions)
JianfeiMa
博客等级 码龄10年 61粉丝 131原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值