欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 科技 > 能源 > tcp、http和rpc

tcp、http和rpc

2025/11/4 2:15:48 来源:https://blog.csdn.net/m0_51866860/article/details/142149474  浏览:    关键词:tcp、http和rpc
  1. tcp是传输层协议,http和rpc是应用层协议。
  2. http和rpc的底层都是tcp。
  3. tcp三大特点:面向连接、可靠、基于字节流。
  4. 纯tcp发送的消息是基于字节流,无边界的,接收方不知道哪些字节是一条完整的消息。所以,tcp不能直接使用。可以制定一些规则(消息格式)用于区分消息边界,根据规则把每条发送的数据都包装一下。根据这些规则的不同,衍生出各种协议,例如http和rpc。
  5. 既然tcp无边界,那直接将一个消息设置为一个数据包发送不行吗?不行。为了提高数据包传输效率,网络设备会将数据包进行合并和拆分,也就是粘包和拆包。粘包是将多个小数据包合并成一个,拆包是将一个大数据包拆分成多个。例如,在路由器中使用MTU定义一个数据包的大小。
  6. 区别消息边界的规则有3种:
    • 定长消息,消息的长度固定
    • 特殊分隔符分割消息
    • TLV:在消息头部存储消息长度
  7. 服务发现:要获取某个服务,首先需要知道该服务的ip地址和端口。在http中,知道服务的域名,就可以使用dns解析域名得到ip和端口,所以dns是服务发现的一种。在rpc中,一般有专门的中间服务保存服务名和ip,例如etcd。

参考视频:
https://www.bilibili.com/video/BV1Qv4y127B4
https://www.bilibili.com/video/BV1jh4y1D7Gh

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com