全发国际

铸数基 · 智运维 丨 乐享智能运维智汇老友专场直播
预约直播
铸数基 · 智运维 丨 全发国际乐享3.0智能运维解决规划颁布会
预约直播
全发国际(中国)有限公司官网
产品
< 返回主菜单
产品中心
产品
解决规划
< 返回主菜单
解决规划中心
行业
合作同伴
返回主菜单
选择区域/说话
全发国际(中国)有限公司官网

您订阅的产品有更新 , ,,,,请实时查阅

查看详情
全发国际(中国)有限公司官网 全发国际(中国)有限公司官网

相识gRPC技术 , ,,,,这一篇就够了

【gRPC技术】本文将从gRPC布景及业务流程、gRPC简介等对gRPC的框架进行具体的探求。。。。。。。

  • 全发国际(中国)有限公司官网

    颁布功夫:2019-05-13

  • 全发国际(中国)有限公司官网

    点击量:

  • 全发国际(中国)有限公司官网

    点赞:

分享至

全发国际(中国)有限公司官网
全发国际(中国)有限公司官网
全发国际(中国)有限公司官网

我想评论

将来的数据中心根基都是软件界说 , ,,,,利用云推算、大数据、人为智能等创新技术 , ,,,,实现传统网络资源、服务器资源及存储资源的整合; ;;;;同时 , ,,,,越来越多的GPU、HPC业务在数据中心网络中进行传输 , ,,,,对网络的带宽和时延提出更高的要求。。。。。。。从运维角度 , ,,,,能够通过自动化平台网络信息 , ,,,,急剧对网络进行适配 , ,,,,提升运维效能 , ,,,,从而打造越发可用、靠得住、可控的网络来服务好业务。。。。。。。

在上一期《技术盛宴》(数据中心网络运维的"巨人之剑")中 , ,,,,对传统运维技术和gRPC(Google Remote Procedure Call , ,,,,Google远程过程挪用)做了单一的介绍和对比 , ,,,,各人对gRPC技术有了或许的相识 , ,,,,本文将对gRPC的框架进行具体的探求。。。。。。。

gRPC布景及业务流程

前面提到由于GPU、HPC等这类业务容易出现微突发的景象 , ,,,,运维人员必要急剧检测到微突发的情况并且进行定位、调整。。。。。。。而传统的CLI、SNMP等网管伎俩不能很好满足自动化运维需要 , ,,,,这时必要有一种技术在不影响设备的机能和职能的情况下实现更高精度的数据监控。。。。。。。

在往期的《技术盛宴》中有文章提到通过INT(In-band Network Telemetry)技术能够实现流量端到端转发蹊径的可视化 , ,,,,如图1 , ,,,,但是无法对互换机的Buffer进行全面的治理 , ,,,,蕴含出、入端口/队列缓存等实时监控 , ,,,,显得有些无力 , ,,,,若是选取基于gRPC + Protocol Buffers的运维接口设计 , ,,,,能够很好地满足运维对单个网络网元全面的可视化和实时性要求。。。。。。。

全发国际(中国)有限公司官网

▲图1:INT交互过程

我们都知路对于设备侧:Telemetry=原始数据+数据模型+编码体式+传输和谈 , ,,,,如图2。。。。。。。这里用到的传输和谈就是gRPC , ,,,,下面将对gRPC进行一个单一的分析。。。。。。。

全发国际(中国)有限公司官网

▲图2:Telemetry分层模型

gRPC简介

gRPC是Google颁布的基于HTTP 2.0传输层和谈承载的高机能开源软件框架 , ,,,,提供了支持多种编程说话的、对网络设备进行配置和纳管的步骤。。。。。。。由因而开源框架 , ,,,,通讯的双方能够进行二次开发 , ,,,,所以客户端和服务器端之间的通讯会越发专一于业务层面的内容 , ,,,,削减了对由gRPC框架实现的底层通讯的关注。。。。。。。如图3 , ,,,,DATA部门即业务层面内容 , ,,,,下面所有的信息都由gRPC进行封装。。。。。。。

全发国际(中国)有限公司官网

▲图3:gRPC分层框架

关于具体gRPC报文的结构 , ,,,,能够参考图4:

全发国际(中国)有限公司官网

▲图4:gRPC报文的结构

下面展示一下gRPC的交互过程 , ,,,,如图5

全发国际(中国)有限公司官网

▲图5:gRPC交互过程

●互换机在开启gRPC职能后充任gRPC客户端的角色 , ,,,,采集服务器充任gRPC服务器角色; ;;;;

●互换机遇凭据订阅的事务构建对应数据的体式(GPB/JSON) , ,,,,通过Protocol Buffers进行编写proto文件 , ,,,,互换机与服务器成立gRPC通路 , ,,,,通过gRPC和谈向服务器发送要求新闻; ;;;;

●服务器收到要求新闻后 , ,,,,服务器会通过Protocol Buffers解译proto文件 , ,,,,还原出最先界说好体式的数据结构 , ,,,,进行业务处置; ;;;;

●数据梳理完后 , ,,,,服务器必要使用Protocol Buffers沉编译应答数据 , ,,,,通过gRPC和谈向互换机发送应答新闻; ;;;;

●互换机收到应答新闻后 , ,,,,实现本次的gRPC交互。。。。。。。

上图展示的是gRPC交互过程的具体流程 , ,,,,这也是Telemetry触发方式其中之一 , ,,,,称为Dial-out模式。。。。。。。单一地说 , ,,,,gRPC就是在客户端和服务器端开启gRPC职能后成立衔接 , ,,,,将设备上配置的订阅数据推送给服务器端。。。。。。。我们能够看到整个过程是必要用到Protocol Buffers将所必要处置数据的结构化数据在proto文件中进行界说。。。。。。。

什么是Protocol Buffers?????

你能够理解Protocol Buffers是一种越发矫捷、高效的数据体式 , ,,,,与XML、JSON类似 , ,,,,在一些高机能且对响应速杜仔要求的数据传输场景极度合用。。。。。。。

Protoco Buffers在gRPC的框架中重要有三个作用:

界说数据结构

全发国际(中国)有限公司官网

界说服务接口

全发国际(中国)有限公司官网

通过序列化和反序列化 , ,,,,提升传输效能

更快的传输速度——序列化的成就

我们知路使用XML、JSON进行数据编译时 , ,,,,数据文本体式更容易阅读 , ,,,,但进行数据互换时 , ,,,,设备就必要耗费大量的CPU在I/O作为上 , ,,,,天然会影响整个传输速度。。。。。。。Protocol Buffers不像前者 , ,,,,它会将字符串进行序列化后再进行传输 , ,,,,即二进造数据。。。。。。。

全发国际(中国)有限公司官网

▲表1:ProtocolBuffers和对应的JSON编码体式

能够看到其实两者内容相差不大 , ,,,,并且内容极度直观 , ,,,,但是Protocol Buffers编码的内容只是提供给操作者阅读的 , ,,,,现实上传输的并不会以这种文本大局 , ,,,,而是序列化后的二进造数据。。。。。。。字节数会比JSON、XML的字节数少好多 , ,,,,速度更快。。。。。。。

在目前或者说将来信息数据爆炸的时期 , ,,,,由于Protocol Buffers是以二进造的大局进行传输的 , ,,,,传输效能相比XML、JSON是有天然的优势 , ,,,,而数据采集效能必然是架构设计、运维建设思考的沉点之一。。。。。。。

跨平台多说话

Protocol Buffers自带一个编译器也是一个优势点。。。。。。。前面提到的proto文件就是通过编译器进行编译的 , ,,,,proto文件必要编译天生一个类似库文件 , ,,,,基于库文件能力真正开发数据利用。。。。。。。具体用什么编程说话编译天生这个库文件呢?????由于现网中掌管网络设备和服务器设备的运维人员往往不是统一组人 , ,,,,运维人员可能会习惯使用分歧的编程说话进走运维开发 , ,,,,那么Protocol Buffers其中一个优势就能阐扬出来——跨说话。。。。。。。

例如在数据中心网络中 , ,,,,服务器端会使用Python说话 , ,,,,而客户端 , ,,,,即互换机侧更多是使用C++ , ,,,,但这些绝不影响两者之间的交互。。。。。。。如图6。。。。。。。

全发国际(中国)有限公司官网

▲图6:跨平台多说话传输

从上面的介绍 , ,,,,我们得出在编码方面Protocol Buffers对比JSON、XML的利益:

●单一 , ,,,,体积幼 , ,,,,数据描述文件大幼只有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模型 , ,,,,这个还必要进一步索求。。。。。。。

本期作者:李宇炫

全发国际网络互联网系统部行业征询

全发国际(中国)有限公司官网

往期杰出回首

• 【第二期】若何通过网络遥测(Network Telemetry)技术实现精密化网络运维?????

• 【第三期】畅谈数据中心网络运维自动化

• 【第五期】流量可视化之ERSPAN的前世今生

• 【第七期】运维可视化之INT职能详解

• 【第八期】浅析RDMA网络下MMU水线设置

• 【第十期】数据中心自动化运维技术索求之互换机零配置上线

 【第十一期】浅谈数据中心100G光模????

• 【第十五期】数据中心自动化运维技术索求之NETCONF

• 【第三十期】数据中心网络运维的"巨人之剑"

有关推荐:

 

更多技术博文

任何必要 , ,,,,请联系全发国际

全发国际(中国)有限公司官网

返回顶部

收起
全发国际(中国)有限公司官网 文档AI副手
全发国际(中国)有限公司官网 文档评价
资料内容是否对您有援手?????
您对当前页面的中意度若何?????
不咋滴
极度好
您中意的原因是(多选!!!。。。????
您对文档是否还有其它的问题或建议?????
为尽快解决问题 , ,,,,请您留下联系方式以便回复
邮箱
手机号
感激您的反馈!!!。。。
全发国际(中国)有限公司官网
全发国际(中国)有限公司官网
全发国际(中国)有限公司官网
请选择服务项目
关关征询页
售前征询 售前征询
售前征询
售后服务 售后服务
售后服务
定见反馈 定见反馈
定见反馈
更多联系方式
【网站地图】【sitemap】