基于服务网格的信息传输方法和系统技术方案

技术编号:33251703 阅读:34 留言:0更新日期:2022-04-30 22:50
本公开提供一种基于服务网格的信息传输方法和系统。信息传输方法包括:第一微服务组中的第一服务容器将报文写入第一DPDK共享内存池中,并通过第一微服务组中的第一服务代理及第二微服务组中的第二服务代理将第一mbuf指针发送给第二微服务组中的第二服务容器,第二服务容器根据第一mbuf指针从第一DPDK共享内存池获取报文。在服务网格构建过程中,从镜像仓库中下载微服务容器镜像到DPDK增强微服务构建环境中,并从容器镜像中获取服务源协议库根文件;从源协议库根文件开始进行DPDK使能,若当前源协议库节点DPDK使能成功,以继续对其它兄弟节点进行DPDK使能;通过微服务部署引擎解析微服务部署配置文件以进行DPDK使能微服务部署。本公开有效减小服务网格的通信延迟。迟。迟。

【技术实现步骤摘要】
基于服务网格的信息传输方法和系统


[0001]本公开涉及云计算领域,特别涉及一种基于服务网格的信息传输方法和系统。

技术介绍

[0002]服务网格通过一系列分布式互联的服务代理接管所有微服务容器的流量,实现灵活、精细的微服务流量管控。在服务网格中,微服务容器的所有进出流量都要经过服务代理转发,服务容器与服务代理之间以及服务代理之间均通过4/7层协议栈通信,通信时延较大,难以满足时延敏感的微服务通信需求。
[0003]服务网格通常涉及两类网络通信协议,一类是服务通信协议,主要承载微服务本身对外提供的数据流量、微服务与服务代理之间的数据流量以及服务代理之间的数据流量,另一类是服务控制协议,主要承载服务控制器与服务代理之间的策略控制下发和性能指标/监控日志采集上报流量。目前服务通信协议和服务控制协议大多使用基于HTTP(HyperText Transfer Protocol,超文本传输协议)的通信协议,如RestfulAPI、GRPC、JSON-RPC,也有部分微服务使用基于TCP(Transmission Control Protocol,本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种基于服务网格的信息传输方法,包括:第一服务容器创建用于发送给第二服务容器的服务请求报文,并将服务请求报文写入第一DPDK共享内存池中;第一服务容器将服务请求报文的第一mbuf指针写入自身的发送队列;第一DPDK控制器将第一mbuf指针从第一服务容器的发送队列移到第一服务代理的接收队列中,其中第一服务容器和第一服务代理均位于第一微服务组中;第一服务代理从自身的接收队列中读取第一mbuf指针,以进行相应的协议栈和路由处理,并将第一mbuf指针写入自身的发送队列中;第一DPDK控制器在第一微服务组和包括第二服务容器的第二微服务组均位于第一主机的情况下,将第一mbuf指针从第一服务代理的发送队列移到第二微服务组中的第二服务代理的接收队列中;第二服务代理从自身的接收队列中读取第一mbuf指针,以进行相应的协议栈和路由处理,并将第一mbuf指针写入自身的发送队列中;第一DPDK控制器将第一mbuf指针从第二服务代理的发送队列移到第二服务容器的接收队列中;第二服务容器从自身的接收队列中获取第一mbuf指针,根据第一mbuf指针从第一DPDK共享内存池获取服务请求报文。2.根据权利要求1所述的方法,还包括:第二服务容器在获取到服务请求报文后,创建用于发送给第一服务容器的服务应答报文,并将服务应答报文写入第一DPDK共享内存池中;第二服务容器将服务应答报文的第二mbuf指针写入自身的发送队列;第一DPDK控制器将第二mbuf指针从第二服务容器的发送队列移到第二服务代理的接收队列中;第二服务代理从自身的接收队列中读取第二mbuf指针,以进行相应的协议栈和路由处理,并将第二mbuf指针写入自身的发送队列中;第一DPDK控制器将第二mbuf指针从第二服务代理的发送队列移到第一服务代理的接收队列中;第一服务代理从自身的接收队列中读取第二mbuf指针,以进行相应的协议栈和路由处理,并将第二mbuf指针写入自身的发送队列中;第一DPDK控制器将第二mbuf指针从第一服务代理的发送队列移到第一服务容器的接收队列中;第一服务容器从自身的接收队列中获取第二mbuf指针,根据第二mbuf指针从第一DPDK共享内存池获取服务应答报文。3.根据权利要求2所述的方法,其中:第一DPDK共享内存池能够被位于第一主机上的任一微服务组访问。4.根据权利要求1所述的方法,还包括:第一DPDK控制器在第一微服务组位于第一主机、第二微服务组位于第二主机的情况下,利用第一服务代理的发送队列中的第一mbuf指针从第一DPDK共享内存池获取服务请求报文并写入到第一网卡缓存区;
第一网卡将服务请求报文发送给第二主机中的第二网卡;第二DPDK控制器将第二网卡接收到的服务请求报文写入第二主机中的第二DPDK共享内存池中,并将相应的第三mbuf指针写入第二服务代理的接收队列;第二服务代理从自身的接收队列中读取第三mbuf指针,以进行相应的协议栈和路由处理,并将第三mbuf指针写入自身的发送队列中;第二DPDK控制器将第三mbuf指针从第二服务代理的发送队列移到第二服务容器的接收队列中;第二服务容器从自身的接收队列中获取第三mbuf指针,根据第三mbuf指针从第二DPDK共享内存池获取服务请求报文。5.根据权利要求4所述的方法,还包括:第二服务容器在获取到服务请求报文后,创建用于发送给第一服务容器的服务应答报文,并将服务应答报文写入第二DPDK共享内存池中;第二服务容器将服务应答报文的第四mbuf指针写入自身的发送队列;第二DPDK控制器将第四mbuf指针从第二服务容器的发送队列移到第二服务代理的接收队列中;第二服务代理从自身的接收队列中读取第四mbuf指针,以进行相应的协议栈和路由处理,并将第四mbuf指针写入自身的发送队列中;第二DPDK控制器利用第二服务代理的发送队列中的第四mbuf指针从第二DPDK共享内存池获取服务应答报文并写入到第二网卡缓存区;第二网卡将服务应答报文发送给第一主机中的第一网卡;第一DPDK控制器将第一网卡接收到的服务应答报文写入第一主机中的第一DPDK共享内存池中,并将相应的第五mbuf指针写入第一服务代理的接收队列;第一服务代理从自身的接收队列中读取第五mbuf指针,以进行相应的协议栈和路由处理,并将第五mbuf指针写入自身的发送队列中;第一DPDK控制器将第五mbuf指针从第一服务代理的发送队列移到第一服务容器的接收队列中;第一服务容器从自身的接收队列中获取第五mbuf指针,根据第五mbuf指针从第一DPDK共享内存池获取服务应答报文。6.根据权利要求5所述的方法,其中:第二DPDK共享内存池能够被位于第二主机上的任一微服务组访问。7.一种基于服务网格的信息传输系统,包括:第一服务容器,被配置为创建用于发送给第二服务容器的服务请求报文,将服务请求报文写入第一DPDK共享内存池中,并将服务请求报文的第一mbuf指针写入自身的发送队列;第一DPDK控制器,被配置为将第一mbuf指针从第一服务容器的发送队列移到第一服务代理的接收队列中,其中第一服务容器和第一服务代理均位于第一微服务组中;还被配置为在第一微服务组和包括第二服务容器的第二微服务组均位于第一主机的情况下,将第一mbuf指针从第一服务代理的发送队列移到第二微服务组中的第二服务代理的接收队列中;还被配置为将第一mbuf指针从第二服务代理的发送队列移到第二服务容器的接收队列中;
第一服务代理,被配置为从自身的接收队列中读取第一mbuf指针,以进行相应的协议栈和路由处理,并将第一mbuf指针写入自身的发送队列中;第二服务代理,被配置为从自身的接收队列中读取第一mbuf指针,以进行相应的协议栈和路由处理,并将第一mbuf指针写入自身的发送队列中;第二服务容器,被配置为从自身的接收队列中获取第一mbuf指针,根据第一mbuf指针从第一DPDK共享内存池获取服务请求报文。8.根据权利要求7所述的系统,其中:第二服务容器还被配置为在获取到服务请求报文后,创建用于发送给第一服务容器的服务应答报文,将服务应答报文写入第一DPDK共享内存池中,并将服务应答报文的第二mbuf指针写入自身的发送队列;第一DPDK控制器还被配置为将第二mbuf指针从第二服务容器的发送队列移到第二服务代理的接收队列中;还被配置为将第二mbuf指针从第二服务代理的发送队列移到第一服务代理的接收队列中;还被配置为将第二mbuf指针从第一服务代理的发送队列移到第一服务容器的接收队列中;第二服务代理还被配置为从自身的接收队列中读取第二mbuf指针,以进行相应的协议栈和路由处理,并将第二mbuf指针写入自身的发送队列中;第一服务代理还被配置为从自身的接收队列中读取第二mbuf指针,以进行相应的协议栈和路由处理,并将第二mbuf指针写入自身的发送队列中;第一服务容器还被配置为从自身的接收队列中获取第二mbuf指针,根据第二mbuf指针从第一DPDK共享内存池获取服务应答报文。9.根据权利要求8所述的系统,其中:第一DPDK共享内存池能够被位于第一主机上的任一微服务组访问。10.根据权利要求7所述的系统,其中:第一DPDK控制器还被配置为在第一微服务组位于第一主机、第二微服务组位于第二主机的情况下,利用第一服务代理的发送队列中的第一mbuf指针从第一DPDK共享内存池获取服务请求报文并写入到第一网卡缓存区;第一网卡,被配置为将服务请求报文发送给第二主机中的第二网卡;第二网卡,被配置为接收第一网卡发送的服务请求报文;第二DPDK...

【专利技术属性】
技术研发人员:何震苇杨新章严丽云黄丹池林园致
申请(专利权)人:中国电信股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1