好文档 - 专业文书写作范文服务资料分享网站

技术盛宴丨了解gRPC技术,这一篇就够了

天下 分享 时间: 加入收藏 我要投稿 点赞

●简单,体积小,数据描述文件大小只有1/10至1/3;

●传输和解析的速率快,相比XML等,解析速度提升20倍甚至更高; ●可编译性强。

除了Protocol Buffers之外,从交互图中和分层框架可以看到, gRPC还有另外一个优势——它是基于HTTP 2.0协议的。

基于HTTP 2.0标准设计

由于gRPC基于HTTP 2.0标准设计,带来了更多强大功能,如多路复用、二进制帧、头部压缩、推送机制。这些功能给设备带来重大益处,如节省带宽、降低TCP连接次数、节省CPU使用等。gRPC既能够在客户端应用,也能够在服务器端应用,从而以透明的方式实现两端的通信和简化通信系统的构建。

HTTP 版本分为HTTP 1.X、 HTTP 2.0,其中HTTP 1.X是当前使用最广泛的HTTP协议,HTTP 2.0称为超文本传输协议第二代。HTTP 1.X定义了四种与服务器交互的方式,分别为:GET、POST、PUT、DELETE,这些在HTTP 2.0中均保留。我们再来看看HTTP 2.0的新特性:

双向流、多路复用

在HTTP 1.X协议中,客户端在同一时间访问同一域名的请求数量是有限制的,当超过阈值时请求会被阻断,但是这种情况在HTTP 2.0中将被忽略。由于HTTP 1.X传输的是纯文本数据,传输体积较大,而HTTP 2.0传输的基本单元为帧,每个帧都包含消息,并且由于HTTP 2.0允许同时通过一条连接发起多个“请求-响应”消息,无需建立多个TCP链接的同时实现多条流并行,提高吞吐性能,并且在一个连接内对多个消息进行优先级的管理和流控。如图7。

▲图7:双向流、多路复用特性

二进制帧

相对于HTTP 1.X的纯文本传输来,HTTP 2.0传输的是二进制数据,与Protocol Buffers相辅相成。使得传输数据体积小、负载低,保持更加紧凑和高效。

头部压缩

因为HTTP是无状态协议,对于业务的处理没有记忆能力,每一次请求都需要携带设备的所有细节,特别是在头部都会包含大量的重复数据,对于设备来说就是在不断地做无意义的重复性工作。HTTP 2.0中使用“头表”来跟踪之前发送的数据,对于相同的数据将不再使用重复请求和发送,进而减少数据的体积。

总结

随着AI、HPC等高性能业务对网络的依赖度逐渐增强,那么网络从设计开始就需要考虑到后期运维时如何能够快速、精准地掌握全网设备、链路的实时状态,用于支撑业务的平稳运行。目前gRPC在数据中心交换机上已经实现了部分的应用,并且在一些互联网公司的部分场景中得到了部署,并探索全面替代SNMP协议,作为唯一的南向运维接口。

基于gRPC的通信,客户端和服务端肯定要定义proto文件,需要通过proto文件定义服务接口,具体就是一些原子操作,比如Get、Set、Notification、Subscribe等,但是具体的数据模型,到底是基于JSON模型还是YANG模型,从简单维护和易扩展的角度,更加推荐YANG模型,但关键的难点,如之前文章描述,如何统一YANG模型,这个还需要进一步探索。

技术盛宴丨了解gRPC技术,这一篇就够了

●简单,体积小,数据描述文件大小只有1/10至1/3;●传输和解析的速率快,相比XML等,解析速度提升20倍甚至更高;●可编译性强。除了ProtocolBuffers之外,从交互图中和分层框架可以看到,gRPC还有另外一个优势——它是基于HTTP2.0协议的。基于HTTP2.0标准设计由于gRPC基于H
推荐度:
点击下载文档文档为doc格式
713ez4iryh3fre38hic91cf865brly010lu
领取福利

微信扫码领取福利

微信扫码分享