TCP/IP&HTTP&RPC

本文深入探讨了网络协议的不同层次划分,包括七层、五层和四层模型,并详细对比了TCP、HTTP和RPC的功能与用途。阐述了HTTP作为应用层协议如何依赖于TCP进行数据传输,以及RPC作为一种高效的服务调用技术,在服务器间交互中的优势。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

七层划分为:应用层、表示层、会话层、传输层、网络层、数据链路层、物理层。

五层划分为:应用层、传输层(表示层、会话层)、网络层、数据链路层、物理层。

四层划分为:应用层、传输层、网络层、网络接口层(数据链路层、物理层)。

TCP是底层通讯协议,定义的是数据传输和连接方式的规范
HTTP是应用层协议,定义的是传输数据的内容的规范
HTTP协议中的数据是利用TCP协议传输的,所以支持HTTP也就一定支持TCP
Tcp/IP属于传输层,而http是应用层,Tcp/IP更多的是建立连接,保证端到端的传输,而具体的传输,是靠HTTP。

RPC从概念上讲,不是一种协议,也不属于通信的范畴;而是一种编程技术,一种代码封装方式,目的是提高代码构建和维护效率,
而这种技术,更多的体现在公司内部的复杂的服务调用中,他不关心像HTTP的请求头等的信息,连接建立的方式,
只需要内部定义好接口,去调用即可,效率相比HTTP极高。

http协议其实是属于面向桌面浏览器的一个通信协议,对于缓存,幂等或者Cookies相关的方面做了很多的事情。
但是对于服务器之间直接的交互,Rpc就能够体现出来他的优势了。
自定义协议,减少数据传输:我们大概看一下http协议。
请求行,请求头部,请求数据,空行。很明显对于远程调用场景,我们对于请求行的依赖不是特别的强,
那么这一部分在我们应用场景下,将会成为负担,但是http协议又是固定的,我们也不可能随便修改协议的格式。
所以,通过rpc协议我们可以精简请求的数据,来尽可能少的传输我们的数据。当前,rpc也可以通过http协议来进行传输。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值